飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
3 ? W/ G. g( j0 Z6 p9 e
尾翼:
- g! J6 v+ s* e
6 Q. ^6 T: ?: o2 K
代码:
1 \, K$ T/ {4 X7 W) n
CWndAutoFood::CWndAutoFood()
; f% k6 m6 S, e8 p- e+ B
{
5 t; O$ k" }& P: m& n3 ]$ f5 b
m_pItemElem = NULL;
/ x8 Z" R9 r7 a" O
m_pTexture = NULL;
A4 `+ g) w+ J& s; G7 A0 c
bStart = FALSE;
5 X1 ?; Z& H: P; K" k
}
; A4 h% `5 t9 v1 y9 W! H# ?
5 a+ C2 ?& }5 R. p
CWndAutoFood::~CWndAutoFood()
1 |# b1 m; B# u5 b$ V5 g
{
% t& Y' R/ `5 L9 P7 i( \' e7 I% {
AfxMessageBox( "AutoFood ist gestorben
" );
. y* L, d0 ^. n/ L, A, ?
}
5 s8 B" w0 n4 ]6 @2 C
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
+ p& ?0 u9 X/ S' \) O8 l7 p! E4 G% C
{
3 E: n* R+ [! e7 E6 x0 K3 e1 A
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
9 W' P! Z: `+ [
}
( r' L: a$ i/ ~$ I4 b
' [4 Q' l, ^: e' M
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
: j; h3 B8 ]3 K' @( f, ]
{
( B9 _4 W/ I) Q% F: Q8 H
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ ?7 Z3 j# X" U& g4 ]& `
CRect rect = pWndCtrl->rect;
" B1 x2 L% t+ \
if( rect && rect.PtInRect( point ) )
1 D, ?' h. B% D7 ~! ^
{
2 Z! K% T( Q% p$ E( j
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
4 | M8 t% c, L1 o9 S' ?
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
x3 f. Z0 s$ Z8 @' x" D1 {
{
" C& J* W, y5 Z! ^; g" Q8 R5 ?$ N* y
if( m_pItemElem )
7 Z* \- Q) D% p; b) @4 r
{
/ f" G3 g x/ n; D) i
m_pItemElem = NULL;
0 D4 G* H$ \" _2 Z7 B+ S
}
' W( |( f. [. b; O9 t
m_pItemElem = pItemElem;
( c [, X6 I, G, x& [& G* a" ~
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
! @( R2 D: M6 [0 t5 `
}else{
0 J3 f- m6 c8 f# G* j
SetForbid( TRUE );
/ B. U0 u4 {9 ^ s( e& C5 \" C) o
}
; G; k s4 h4 U
}else{
( d5 Z, F2 B7 K- s# a
SetForbid( TRUE );
$ Y$ P& W" v" w: p1 o( h# [$ k
}
: M7 d) f( j3 E8 G5 l: J
return TRUE;
" J# F3 I8 C, |5 J* ?+ n
}
8 B4 f7 H/ V: G' Y l4 p
: Z P; t! x2 U& w( n; V; i
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
" S+ P! k% V5 A5 c/ w) X
{
) n: d+ w' Q/ W/ p! j5 }. z, z
switch( nID )
9 Y9 [+ P8 _# m, Y0 k* n
{
4 L1 X4 @- W/ G+ s& ?# W1 ]
case WIDC_BUTTON3:
6 {- s/ `3 ?0 s% i- H& F
{
: c* W3 r- a# U3 [/ ^+ L4 ]) T$ D
bStart = TRUE;
- U" h- c* C( h4 h+ z
break;
) O/ V; \6 N; [: R2 C! j. n8 M+ M
}
2 k8 J" J! ?) P( G* h2 {
case WIDC_BUTTON4:
2 ^( u l! q' \0 e4 E% p7 L
{
1 }+ b, ~0 k7 z7 d! m0 Y& ~$ c
bStart = FALSE;
7 o- a% n' }# t
break;
r$ e; s. C" c- |# L4 j" J
}
. \/ P3 M1 f/ W( \1 o q* Q% [
}
( `- x" I3 K- V( ?' w& r1 F
return CWndNeuz::OnChildNotify( message, nID, pLResult );
! r( X+ `* s. L0 L6 c- z
}
/ q. s+ y, Z( ]8 {9 f" y. U- j
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
" y) x# [' G! \: V! `" u
{
$ l' k% B8 Q( U. |2 S8 L* _
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
+ I5 ^) Z/ d" s( @
if( bStart || !m_pItemElem )
6 J0 r1 ^ Z2 |- A
{
4 I0 ]# |1 C7 l8 q$ V
pBtn->EnableWindow( FALSE );
- Z! N* H5 d! n
}else
! R' m* `9 o1 j# Y# D0 ^/ o
pBtn->EnableWindow( TRUE );
/ T6 A9 H& N! q7 @. }4 l1 ^% N F ]
if( m_pTexture )
+ j* u2 f( H! V4 s
{
; S; v$ B+ j+ X0 m3 K x
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 w# q" `1 v2 |4 i- S7 _
if( wndCtrl && wndCtrl->rect )
5 o+ V7 w: w1 U- p* B/ G1 K a4 \3 z
{
1 F6 m( {9 }- k; D4 B
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
2 q% d# g7 V7 K, W
}
% I: t, `3 F2 c8 T. i0 ^) J) j
}
! a7 h3 n3 Y+ r7 @7 p1 s
}
( f1 R+ S" A w# X; I/ R
3 M4 |. }/ o6 V! {
BOOL CWndAutoFood:
rocess()
/ I- D. X% y. J( M
{
( P, U& f$ I- y+ {: [
if( bStart )
" W. y, D* z6 }
{
) E' u$ k5 f& G8 @2 M0 R
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
( S9 f! x* P# H/ S% X4 D# T1 n
{
- S, b% B# }9 q1 a/ T. }
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
! U+ c n- ~) n- ^7 M* P0 t
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
. _$ k o) P! @# O" U1 G% x: T- V
}else{
) }( k$ n ~0 y8 L
bStart = FALSE;
" ?+ ]+ F4 D; c( v- Y
m_pItemElem = NULL;
4 o+ a' N% {$ L5 M1 Z/ @! B. Q
}
8 L( `+ W& S( p. v- @) m' A; b
}
% w- {( J( q9 E0 I' g% D
return TRUE;
- O4 T% U) E; |* D" z9 p) [
}
: I. G. D7 P( C; w0 @
& w! m$ `6 y0 S# Q* N4 S
登录视频废话:
7 s7 N- u4 E8 e$ `
尾翼:
+ I" K5 Y; \6 l6 t ^
$ f' g9 G( }4 m2 j5 Q! l
代码:
/ x. j0 t4 p0 \& w9 k
! Q( F2 t# P, D2 _- O% q* a. j9 b
void CWorld::SetLight( BOOL bLight )
& b( t6 w7 {4 Y# a7 v l
durch
0 _6 N9 C/ _% J- X6 K) h
Code:
7 R, T4 v# [$ d# e
void CWorld::SetLight( BOOL bLight )
5 h0 u: s$ ~% r; B* T
{
; z( \6 [3 F; t* u0 n7 b, m
//ACE("SetLight %d \n", bLight);
[! J- x9 W/ Z& R$ [: Q6 q
K+ D- H- T+ ]) b
#ifndef __WORLDSERVER
6 v7 X2 y) U% Z$ {8 [
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
+ H/ M2 h0 r9 N3 n% X: W' _
CLight* pLight = NULL;
! a. M9 X' e% B7 F3 d( {; D2 q
3 _) X8 o/ l. ?
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
' h" j- i# P/ f
+ c0 x0 ?2 |4 t
pLight = GetLight( "direction" );
$ X; e+ R& @: J! X
5 n4 }- m. R, ^
#if __VER >= 15 // __BS_CHANGING_ENVIR
; e, b7 H4 u$ s7 k3 m' d' I
if( g_pPlayer ){
0 c; F; s: U$ p# n$ p4 u
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
, X- c3 v# z2 H
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
! m3 d' q- f* t- Y# a$ e/ T2 T* D
{
* \- l4 m8 x" p, L! `
if( pLight )
/ e/ r/ `9 k' N# U3 n0 y) W
{
5 d4 z' D0 x @
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
. z7 M9 E: s' @2 Q7 ]
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
x" H; Q9 D) G! m8 O! N% Q9 I
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
7 |% u. J: X& i
! ?( ^1 M2 H6 L
pLight->Specular.r = 2.0f;
8 ?/ b- N! x$ P8 L
pLight->Specular.g = 2.0f;
& p: ^% z3 T! R) H6 O
pLight->Specular.b = 2.0f;
' u; P |" P l. `. u2 \
8 z9 I! V+ }3 N
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
3 V- g8 S2 c1 H& h% B. ^$ E
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
8 E9 T% W# u+ z. w5 U& \3 ?# B7 u
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
5 B0 N% ?. g! _) l9 F+ \: @/ Q% \& M
$ V" W. ^) D$ E7 {
HookUpdateLight( pLight );
8 T. n0 ?# s# m/ Q% \8 [! J
) F0 V& Y. N3 t
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ F" ]- |, T* v. [3 L$ k
- Z4 E# n& q; O+ P A2 u/ i
pLight->Diffuse.r *= 1.2f;
% v6 W1 A" U$ J0 F% n
pLight->Diffuse.g *= 1.2f;
9 e; B. t6 U: x0 ?1 N6 P6 l
pLight->Diffuse.b *= 1.2f;
/ Y% Q: S- q9 e) S
# {1 F, W# _- n
pLight->Ambient.r *= 0.8f;
$ z# P) V: x, k) W5 A) u# h, t
pLight->Ambient.g *= 0.8f;
: y+ q) A& Z8 W1 I. \. [( u# \5 f
pLight->Ambient.b *= 0.8f;
6 S; E- ~& O: |$ F" G; e( b, `" a
5 @# }& W$ q; h' Z
memcpy( &m_light, pLight, sizeof( m_light ) );
0 Y* Z! ^ z- Y2 L( O6 u
* _' D6 A- R4 \6 Y1 r3 L% j
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
+ I3 l- I, \) F+ y0 C2 ^/ B
D3DXVec3Normalize(&(vecSun),&(vecSun));
M/ j; a2 Z' R$ Z& q7 \, c
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
5 | h: {- b7 q- E/ I* I
pLight->Appear( m_pd3dDevice, TRUE );
9 O0 p. M( \8 {! i/ Q, J r7 ^
/ ^9 B" `# o4 o: B% O& A' c2 [
DWORD dwR, dwG, dwB;
0 K% W7 ^& C8 L/ u% v' P: f
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 h" a3 o0 I/ N- \3 W( x3 t& V6 L
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 v. L) f/ u1 x; {5 L+ ^6 i4 V
dwB = (DWORD)( pLight->Ambient.b * 255 );
0 r& D8 n' _7 U4 ^
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
+ G; S3 |9 W5 v/ I+ }; Y
}
$ H- Y* z1 T# C% H6 q" _
}
! g* u( ]4 O1 w, o: @4 p
}
: V! {# @( `# h9 Z* u: _* y
else
5 Q5 P, g- I; F k8 T1 i) c# Q7 s6 y
#endif
5 q+ o& q5 \, `; V
5 i5 y8 u: {% J4 b3 Y
if( m_bIsIndoor )
4 x6 k' ?3 D4 D+ y# s& K h) B+ Y
{
' F$ d% h6 ~: g* @3 S
if( pLight )
1 W" d# I0 r# l+ }% @. ?& z2 Y% m# i
{
. ^9 h8 Q# x1 a
// à??μ oˉè*
; p* y0 N" t1 H
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
9 d5 R/ }( ^7 y/ ?
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
# X2 A/ X( t5 h* a, b: |( H+ v
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
/ I: M* C' l4 V6 s/ ~; k
" p* b2 N; v6 O! a# `$ W
// oˉè* ??à?
$ m; I" H n( n2 R2 H! r6 N
pLight->Specular.r = 1.0f;
/ V G. c) k7 ^( a) h
pLight->Specular.g = 1.0f;
/ [4 g6 W+ y% `0 w' v
pLight->Specular.b = 1.0f;
7 J$ N/ j( q3 ~
// àü?? oˉè*
/ M5 M8 Q9 W, Z9 J6 T: [
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
9 v2 ] _ p5 L1 ?& }' R
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
' |6 A' _! K/ u- O g( e y1 E" i
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
+ _ Z$ \0 C9 h- t. E0 m
0 V/ f4 w* D5 J- M# {# f7 N" e' p
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% h0 f9 V$ R; ^4 [1 m1 [
{
$ A# k/ r/ a! ], B
pLight->Diffuse.r *= 0.6f;
1 o- {8 t3 ]0 {3 o7 y; e
pLight->Diffuse.g *= 0.6f;
& F. g9 {$ O+ C' q8 I" |
pLight->Diffuse.b *= 0.6f;
: \- m) X# K1 ~
pLight->Ambient.r *= 0.7f;
' N7 ]! A( q' F+ t# F2 y+ v2 T
pLight->Ambient.g *= 0.7f;
" [# d, @. D: T- o* k+ i/ a
pLight->Ambient.b *= 0.7f;
, `) C4 f) v/ e" ]! z3 L
}
) ^( [* l6 Q$ G2 H4 X
1 I7 | J4 W/ z5 r) W
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 \- f6 v* S7 i; N
if( g_pPlayer )
- s3 ?5 I% X. r" @# [
HookUpdateLight( pLight );
, Q- B Z w9 d, H. x* K2 }2 v
#endif
" p/ C1 e5 V+ q
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; g8 g% U3 G# I5 d' W: K
' x) Q( q& g ?& I& L/ {0 |" p) a
pLight->Diffuse.r += 0.1f;
- E7 B8 K; B& C7 ^5 o
pLight->Diffuse.g += 0.1f;
+ f9 K) t% T W+ j* L( M4 S
pLight->Diffuse.b += 0.1f;
; _: ^5 n8 D# K/ P
// oˉè* ??à?
7 A+ p; F) `; q' |! [! U
pLight->Specular.r = 2.0f;
- N* I) X0 S- I6 r% ?) w- h* V. J$ f
pLight->Specular.g = 2.0f;
$ L7 {) r8 Z2 }3 h
pLight->Specular.b = 2.0f;
, l2 W+ `" G) h- u5 o. m
// á?oˉ
4 Y3 ?7 R3 w+ l, d% R
pLight->Ambient.r *= 0.9f;
+ S- o/ {* u3 I* C) O* q4 ]9 }/ \
pLight->Ambient.g *= 0.9f;
. f4 P8 v9 h% c W" ?
pLight->Ambient.b *= 0.9f;
( v- F6 r- C' Y9 u0 d6 r$ P1 Z+ H
7 |' Y0 M3 L% b) t* u4 V+ x
memcpy( &m_light, pLight, sizeof( m_light ) );
m/ ~. ~, i3 O: t, ^
! ~ ?/ _$ h1 W7 z; o, H. U; }+ }8 m
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
# c, G0 E( D% C0 E8 g3 J7 z
pLight->Appear( m_pd3dDevice, TRUE );
1 ?" q! a/ R5 Z- B9 U+ D2 B
+ z) j; O! K) [" A& ?" g0 V ` @6 M) l
DWORD dwR, dwG, dwB;
}2 d) I9 @" P# x0 c( m" c
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 N, B: e$ X) k8 p9 v* g+ u" i
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 A; [2 S3 \7 v
dwB = (DWORD)( pLight->Ambient.b * 255 );
: G3 O+ b/ O) I
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 n) o; h4 u3 `+ }+ N. X7 c
}
6 h( D) p2 ~5 _" x0 E* L
}
+ N6 H4 M2 } f/ H B7 @
else
: R4 u& K8 [1 q, f) ]
{
# ~$ }$ M" T( A* P3 a$ d3 G7 Q
if( pLight )
, D# z) B) J/ B4 m! r
{
) l7 v& h. ~! z( g
0 f5 b, \2 @; g6 Q& M
int nHour = 8, nMin = 0;
- F% d2 x" e7 A4 Z6 Z" ?
#ifdef __CLIENT
( r2 e9 [4 D0 {
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
: |/ |' Y1 Z- h( a" T
nHour = g_GameTimer.m_nHour;
Z. n0 S# L' U9 c }
nMin = g_GameTimer.m_nMin ;
" O6 e+ g% g# s9 F! x* \9 _1 V
#else
7 }, v' I K0 {' q/ J& q. ~9 }
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
5 ^, i3 ^6 {) V
if( m_nLightType == 1 )
8 y- V2 d) u$ Y( w' Z
nHour = m_nLightHour;
! v' i- ~( x) t* X- N
#endif
$ h. C. f8 Z: `
nHour--;
' y% U1 t6 H3 L
if( nHour < 0 ) nHour = 0;
2 p- X! o1 u" Q. C& _; u
if( nHour > 23 ) nHour = 23;
* Q/ S" e' `3 d$ q
0 @/ B8 q+ ~( ]4 n6 c( l: H5 L
//if( m_bFixedHour )
- M: `& k) \& d9 X1 c
// nHour = m_nFixedHour, nMin = 0;
5 p: A! d- V$ C& Q! t% s. ]9 E! N
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
: w/ ]( Z$ ]/ d
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
8 p" V# \& e2 t- F+ [
1 u4 x" t- y1 | ~, B, B
//m_lightColor = lightColorPrv;
7 s+ K4 d- e5 \0 H
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
7 j7 V! ?$ m; d
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
2 ]* c) q3 D0 |2 w0 ]. S' Q3 N
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
" G% X3 H; b" l% f+ B7 R
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
; v b; \! V( y( p+ d. g
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
& G B4 o8 E7 l
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
4 d% ?4 y5 t0 A* ?, T( P
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
6 {. t9 F6 k& I+ E( j, D s: U
$ f! r- l& G$ z% s$ \
// à??μ oˉè*
V7 Q2 x2 y. M! _& N. G
pLight->Diffuse.r = lightColorPrv.r1;
* T7 w: t" f! B' {! y/ E
pLight->Diffuse.g = lightColorPrv.g1;
- ~1 M# \) J5 {& p' {3 Y2 c" A- j
pLight->Diffuse.b = lightColorPrv.b1;
8 M0 G6 u. C% z( U3 [
// oˉè* ??à?
# m( a; J% R! J" H6 Q+ _
pLight->Specular.r = 1.0f;
; ^$ h" @4 |5 H
pLight->Specular.g = 1.0f;
7 C* s% D3 T8 _ u; O
pLight->Specular.b = 1.0f;
8 f# [* y! H {6 v" {7 C
// àü?? oˉè*
( t2 H9 o. ^% C5 Z2 f
pLight->Ambient.r = lightColorPrv.r2;
5 n% w, N2 T( c( ]" U0 f' w' S* Y
pLight->Ambient.g = lightColorPrv.g2;
4 C1 Y) J6 N/ X. E+ b% }" c, b. h; P
pLight->Ambient.b = lightColorPrv.b2;
/ E" ?4 I7 i; x; Q
6 q* g- X( X/ f6 i# e) T
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% \* A: u: z+ Y0 G4 F4 S* N
{
' |9 D5 R. [( i# z
pLight->Diffuse.r *= 0.6f;
; _0 L& c. E! n
pLight->Diffuse.g *= 0.6f;
8 F, k& y4 k) k0 a( M/ @! A6 s: u$ h5 M
pLight->Diffuse.b *= 0.6f;
6 s5 ?! o6 ~5 d8 e8 Z3 G
pLight->Ambient.r *= 0.7f;
4 L6 S3 R& N! {2 m
pLight->Ambient.g *= 0.7f;
4 k5 ?" I: \6 f* X
pLight->Ambient.b *= 0.7f;
" m/ ~1 }0 F* q6 K9 u) s
}
; ]' u3 f2 E/ y! I: M
4 e+ [3 [$ q7 q) _
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 ?7 r) `' b0 ^/ v0 Z: U2 J {, J
if( g_pPlayer )
& i; E V* u# Q5 ~, p. c( h
HookUpdateLight( pLight );
0 I8 ]4 O* m+ l0 M# h2 D
#endif
2 K; u4 o0 T" _+ F8 G" B
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ R9 X% ^+ [# ~9 C6 _( T
* q# q0 d( t7 s8 j8 H9 N/ j
#ifdef __YENV
9 |1 n/ n: U" ]) ]8 f, ]: Z6 I
pLight->Diffuse.r *= 1.1f;
l4 M5 k& _4 d- P$ h# g
pLight->Diffuse.g *= 1.1f;
5 `. r: q$ L+ Y; L# @3 O, u1 V
pLight->Diffuse.b *= 1.1f;
7 v( N6 K8 S6 M7 c+ G. A: Q
// oˉè* ??à?
% e, v) P! V8 T, D
pLight->Specular.r = 2.0f;
: e1 n7 i) e7 t' q% l7 ?* t% U5 C
pLight->Specular.g = 2.0f;
% N( R5 s& f4 N6 H4 y& d c5 r
pLight->Specular.b = 2.0f;
7 ]7 e9 j1 h: ^) G. p5 R
// á?oˉ
8 W* C. X7 z9 {0 U$ v
pLight->Ambient.r *= 1.0f;
" j( E& h* W ^/ _' z' _* `1 t+ u" E
pLight->Ambient.g *= 1.0f;
/ t( {2 d( x# z
pLight->Ambient.b *= 1.0f;
+ o. d N, i) j& l. W0 @
#else //__YENV
# z: |% t) B8 o4 i4 b
pLight->Diffuse.r *= 1.1f;
. Y; [7 N- I5 e, _ Q1 x6 s
pLight->Diffuse.g *= 1.1f;
/ Q! M9 z4 N1 J* K' i6 w& @* y
pLight->Diffuse.b *= 1.1f;
* T& p# |! ^ R* J# ~" v
// oˉè* ??à?
. m1 W/ E8 [% a! k
pLight->Specular.r = 2.0f;
+ {9 Q8 `4 h; S) G& j" q/ ~
pLight->Specular.g = 2.0f;
$ c, Q4 b, D! D7 c2 o8 Z$ R8 M
pLight->Specular.b = 2.0f;
* l) u e, @3 E) g2 _0 ]
// á?oˉ
6 d8 Z6 M! d- z6 r1 S$ i: @
pLight->Ambient.r *= 0.9f;
6 D* `1 n' e' v# H: P( X) P
pLight->Ambient.g *= 0.9f;
; E; u2 ^* w/ i$ y) Z$ Q* C# n
pLight->Ambient.b *= 0.9f;
' [5 a4 U; ~5 H' Y
#endif //__YENV
. u4 U; ]" U7 U; I8 r
: v) Q8 T$ f. r8 j) {+ M
memcpy( &m_light, pLight, sizeof( m_light ) );
! F, z+ m2 Q. R7 C6 h/ f
; v# ?8 y( M4 t/ i
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
5 A- P3 ?0 O# w
D3DXMATRIX matTemp;
- _* T2 T7 |) x' U& a
static const float CONS_VAL = 3.1415926f / 180.f;
9 }( Q+ F9 Q) G" w6 j+ O: ?7 @
7 ^& [1 K: A0 c2 x9 `3 q. }
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# t' M, q" ^4 ^9 K5 q$ \# h5 e% @
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
9 m$ v% l: Q3 p% U0 t- y
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
+ q- o- u4 M5 q- M8 ? g$ B
pLight->Appear( m_pd3dDevice, TRUE );
6 W+ U' m! c: U r0 z
9 X- g8 n+ y& t/ y: t# W
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
& Z* N. a+ M3 y |, r
// D3DXVec3Normalize(&(vecSun),&(vecSun));
; y( Q, h5 M% j+ r6 T0 e
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
5 y* ]% P- T; u( @: L8 w6 s
/ d2 r2 O+ I* \
DWORD dwR, dwG, dwB;
9 n- Q. V" W2 R2 v3 S4 f/ W
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 d0 W; A) J ~2 W7 _) }& j
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 d( }9 t- b, E9 i4 O8 d
dwB = (DWORD)( pLight->Ambient.b * 255 );
. k8 R0 ~* J% I1 s+ d- d
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. }+ N( a# V5 K& ]0 x1 W; U- A
}
0 \0 L% i4 f/ K7 V$ S
}
/ K/ G1 W7 ?- O
9 N2 ^3 S s/ J9 ]- @ Y
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
0 y$ c. D8 P, b2 F
m_pd3dDevice->SetRenderState( D3DRS_AMBIENT, dwAmbient );//D3DCOLOR_ARGB( 0,0,0,0) ); //m_dwAmbient );//D3DCOLOR_ARGB( 255,128,128,128) );//D3DCOLOR_ARGB( 255,50,50,70) );
( I7 Z' g0 R4 D8 m [! b
::SetLight( bLight );
% S4 _- a5 u* j' s
$ T' N. C, @( f7 B5 g; n
// ±ao? ?D?í???ó á¤à?
7 n t, X3 o' Q6 @2 @; Z
m_pd3dDevice->SetMaterial( &m_baseMaterial );
) K$ l0 t( I0 q5 l( |, \
1 J" L( C$ U. ^( e6 N
#endif // not WORLDSERVER
1 `! h b9 _& d" s+ ]3 b! i; t
}
% q8 U# C' s# p9 U" j. i
并更换
: l4 u) G7 M- D) t
Code:
' ]+ x4 F$ D2 E0 S) d
__FLYFF_INITPAGE_EXT
, X( A' K9 I. G g7 z( u
定义
: y$ r m% W- p5 @" Z
; i1 w% }8 ^3 i3 _+ E6 t$ ]$ g1 v
+ U4 \# R4 b" w4 V
! D& M/ y4 R/ q3 k# G6 z0 U
4 g, q+ s) \0 H
现在终于删除我的狗屁加速...
+ q7 B' h1 P( L: Z
/ E8 r2 }' e. o2 N$ Q
: M' C" X( `% s# M4 y9 @
: C1 `& b% r( g1 ]# E! C
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2