飞飞世界论坛

标题: 自动饮血和登录视频 [打印本页]

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:) X2 t  U/ S1 L, ]
尾翼:
) M4 w1 ^1 F: q  o' h5 s$ F: V, C6 E; G7 l1 Z) N- I0 V. x! @+ ^
代码:
$ y( }1 `, D5 W- t9 ]* TCWndAutoFood::CWndAutoFood()
+ y2 u# E* N9 W. Q# d{
) ^  Y! N2 v5 f" q9 H& y        m_pItemElem = NULL;2 [1 ^" |9 z- F( G; y
        m_pTexture = NULL;# X; I% w' z3 V3 B. K& b7 s+ C; [
        bStart = FALSE;' G  ]2 e: |0 J: p( Q7 J; ?2 d* d
}  O, U$ e+ d- h, w1 y

1 u, B" b3 n( QCWndAutoFood::~CWndAutoFood()% b' m; i' g% z1 }8 J. d
{/ r3 |5 X7 ^0 o. E5 Y- b) ~& ?
        AfxMessageBox( "AutoFood ist gestorben " );( Q/ F( \2 C& d0 t! V
}# R. n7 v6 E5 f5 B
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
; C7 I- H: q7 _4 u, ^4 V{
$ k' L/ S' x( m/ b: S        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );; [! _- e- k6 p6 Z# ]
}+ v: `' s. e# K. e& Q

; [  ^2 u9 t2 XBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )( g: n5 ~% O1 g5 A( [
{) V2 `$ J# k  H* y5 ~
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );1 t) E+ q0 B1 M" J4 {
        CRect rect = pWndCtrl->rect;
0 b  e, k6 @, a! S        if( rect && rect.PtInRect( point ) )
+ Q$ T, r. h7 }5 f        {+ @, E, i+ l8 M  @+ r
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
: f9 D: M1 p3 _# P- |0 u                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )9 y$ X* z# J' U, d5 `& k; ]; H
                {& N6 J1 w0 X4 `# u& W2 M! |
                        if( m_pItemElem )
2 n4 O3 B2 L3 g3 C0 j. H                        {' O# V. ]. C: J
                                m_pItemElem = NULL;
8 ?9 J4 M$ q9 h$ d- ~                        }
  T; p* S6 f! b4 Y                        m_pItemElem = pItemElem;
  c+ F$ [/ |: D4 f! s                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
$ y/ f4 l) t- e1 p$ D7 j8 ?' |9 Y7 G                }else{# _% i" I$ r$ _; [* r) H
                        SetForbid( TRUE );, j9 P# C- E0 r* Z7 O* [$ E
                }# {0 r: F. D3 D' q, F) }# s' m8 b
        }else{# e$ [& G) n& v' h& y
                SetForbid( TRUE );. k* T, O9 h8 k9 b, ~4 F6 N. c
        }. i- I" o1 M+ a* a0 J: ]: }
        return TRUE;
4 i% K' J+ L$ Z4 Y, V}0 t9 m% T4 `. m

. I' A( z/ L3 F, m& B- KBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )1 H3 w2 U4 u0 T) A5 P% Z, a. L& R
{  p2 \) {- }, v; C) Y, e( K
        switch( nID )3 u, @7 i* g6 \2 \; }
        {! Q6 S" i+ r3 u% h
        case WIDC_BUTTON3:* L" j+ u  t9 |; ~3 d$ R' Q* b# M
                {9 z& V6 H1 [# W# C4 U( Y
                        bStart = TRUE;
5 M. Q% R9 v# ^+ C2 C0 E7 \4 G                        break;
3 V6 y# w% h! q, @+ O                }, I- Z! @/ y/ T+ m  s# t" }
        case WIDC_BUTTON4:( \& o2 t) I! k6 R/ y, Z
                {
7 @. L% W/ B' H5 p5 Y/ C+ F0 l) E: @' `                        bStart = FALSE;) \1 |$ j/ r/ }" C( v1 w8 j' h1 w
                        break;
3 v9 v# P. R; _/ k5 s) m. ~                }
3 N7 r6 h9 n* @' O        }2 Z' _0 b+ Z: E. }4 _0 d; |
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
) S% R- n; w; f5 W}          J2 B! ^) J1 m3 ?9 F
void CWndAutoFood::OnDraw( C2DRender* p2DRender )+ {( r8 A# F* @7 Z
{
" c: z; M0 r/ U        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
2 y; v/ B6 D3 r        if( bStart || !m_pItemElem )
, [9 I) D) }5 J) H# }        {1 I- r: G. ?; l) t9 f0 l2 V& \
                pBtn->EnableWindow( FALSE );
; W8 p( p' ~8 {+ r0 ?  y8 k        }else6 `% x6 O! g5 g% H- q/ N6 R
                pBtn->EnableWindow( TRUE );
0 }$ [7 `3 c4 H6 A+ {4 i        if( m_pTexture )
6 q4 o* @9 U& l        {1 R% x, |; a6 o8 r" k/ \' Z
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );6 |  l8 T6 U* f
                if( wndCtrl && wndCtrl->rect )( s' y6 R4 J: Q: N* k
                {
2 |" {2 j9 y# m' k' O; |& ]- {: u1 K                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
8 w0 z1 Q0 P* m& _- l                }4 Q) _" y+ v* h- G5 m5 @/ D6 l
        }* `; ]  {( d# j! f7 ^" ^( b" J
}
6 Y4 S/ t' R* r% e& e8 p# e8 x" f8 r% z7 J$ V# m: Z. }$ e/ X" U
BOOL CWndAutoFood:rocess()
4 G5 x5 h; k/ A8 b6 a1 C{$ v5 s7 @9 R/ G+ b7 S* f. a7 d
        if( bStart )7 t! }# j. J- V. ~1 o( b+ X
        {
) H/ w- r, C0 v/ b; H                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )5 D9 r2 C* A" \
                {; z9 k$ D) [* K4 M: |; |
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )& O$ t+ S5 I/ q1 j' ~1 [+ Z
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );3 e( ]0 M" D  C6 f" W
                }else{
4 @' t6 u3 a2 [: ^0 p6 I7 Q; q                        bStart = FALSE;' S; @4 [- k  {' p# V9 H
                        m_pItemElem = NULL;7 ?. Q6 y8 n* ?( v* G* d' b
                }5 m3 P3 n- e3 T! k0 D/ R% b+ o
        }; D9 Z% J) X# |7 _9 s4 A- I) r% f' D3 S0 l
        return TRUE;5 g, W1 `/ O' Y* b5 b4 _% i
}9 r, C1 M6 F- c% d8 F
2 @4 V% Y& P$ x1 N7 f8 V
登录视频废话:
4 y! M1 A5 s; j尾翼:
9 d$ Q2 u3 K, ]6 T5 f4 V9 D9 x: V( b5 h% I! U: j: Q: z
代码:* i9 h& {4 S6 t4 h# Q/ {

! ?  J4 `0 Z* t, Qvoid CWorld::SetLight( BOOL bLight )$ b% c3 o' F/ a. k+ r/ z+ h
durch* l! F! P5 U% K) K
Code:
0 H/ ]' t- w$ Zvoid CWorld::SetLight( BOOL bLight )
4 k# S% n$ u& O0 Q% ?{
8 y) M" r$ J! t8 l% f. ]        //ACE("SetLight %d \n", bLight);/ u) K& M& n3 Z$ y
        * q" J; b; j5 @7 E& Z8 h3 l
#ifndef  __WORLDSERVER ! t8 C, _/ W8 t8 L* |$ U# P
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
2 Z2 p0 b8 Q4 Q2 y% ^! o  P        CLight* pLight = NULL;2 \0 M# C  m8 X6 x' s
2 z! `* j( O5 }2 n
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );3 m! h1 `0 i5 n; L
# ?6 l1 P9 B, {$ N3 T
        pLight = GetLight( "direction" );
( Z9 z/ N. u3 ~0 I) b  d) Z9 T1 _4 |
" P: b, I* U. v- r' L#if __VER >= 15 // __BS_CHANGING_ENVIR$ N( y3 W# c4 }) }' t
        if( g_pPlayer ){
! F3 L/ j. ?% k& `7 o# Y                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );3 D( B. e9 r8 w& E+ h8 ~$ i6 m
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!4 i# }4 h8 y; t; K3 v' S
                {2 d. k" x5 k& O9 ?( F, Y% o7 k$ G
                        if( pLight )
& F9 x  ~- P( c$ u0 c: V' @                        {
: a6 y8 A* r# }. z# `8 ^5 e                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
/ f' E; l+ T$ H                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
5 a; B/ @* U& G0 M: t' u                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
! Q2 l8 T+ H' F7 c3 f) O7 M# C+ ]
2 u1 @$ Q6 V3 ^, I8 f8 {                                pLight->Specular.r = 2.0f;
6 n6 W; Y4 A, P  L7 r7 Z                                pLight->Specular.g = 2.0f;
# b7 m5 M: U% G                                pLight->Specular.b = 2.0f;. f- \) j; m) h; h" M- i' U1 D
       
# N' f# M$ O! Y% m. t  w1 M                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
8 u- B! @$ I) q, g) y                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];, T$ X9 Y& C8 A$ ^7 ?3 z
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
3 Q- \8 F0 ?0 [, d: y) u/ K        6 [, k1 R+ J9 h# U" y/ A' V& y
                                HookUpdateLight( pLight );
: }6 H- F3 M- [$ z
( C; c* I6 W& n3 }8 S                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 X- J$ V" I  ]0 B8 Q3 [# ~                ) N4 c, D# m% q* D1 {- y3 l
                                pLight->Diffuse.r *= 1.2f;( Y! ]8 `  H. `, n% `0 F( s
                                pLight->Diffuse.g *= 1.2f;( X4 d7 s3 L0 |8 b) E( S+ H  D
                                pLight->Diffuse.b *= 1.2f;
) V! W% \$ _  A0 Z) ^' ~
2 U! }0 G3 @4 ~7 u/ _+ W                                pLight->Ambient.r *= 0.8f;
# f7 L: d" \+ K; q% @* e. v" I                                pLight->Ambient.g *= 0.8f;
, P$ j! J2 X6 a( U* z4 r                                pLight->Ambient.b *= 0.8f;
+ Y7 s+ @  Z* q( Q        $ f3 |6 z0 Z, Y3 J/ w
                                memcpy( &m_light, pLight, sizeof( m_light ) );
# E6 |% \7 F1 i0 \* X" e0 A; @: Z- o- M+ C/ v7 N8 c& Q: j# \
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);* h4 Y5 j- D7 B5 C
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
" W9 f: E  m$ M0 z; C                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ; e# J- A$ k) }: u: {. ^
                                pLight->Appear( m_pd3dDevice, TRUE );  T! }& l$ z3 h4 t; j
               
; z0 r9 g, [! a! v) X, S( z                                DWORD dwR, dwG, dwB;
1 W; a' F! }. y# U                                dwR = (DWORD)( pLight->Ambient.r * 255 );
: E$ F) _9 R0 B! G0 c                                dwG = (DWORD)( pLight->Ambient.g * 255 );
0 [# d+ c# Y" ~* V1 O! e# j( T                                dwB = (DWORD)( pLight->Ambient.b * 255 );+ a" F' Z. }# R3 p% B
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( H( B" m1 ?: `; D' g1 Y                        }7 B+ J3 e4 y# \! |  Y  t. z
                }' x3 Q" K+ t% b. D- n
        }7 z9 @# I, c+ U# Z$ {, p
        else
9 E; W+ l  u3 o" `, x' T#endif 6 U8 w7 ^: F  ^  d9 G- q
, c+ Z5 w( a& \9 @3 i
        if( m_bIsIndoor )
5 _" p7 w# l+ _        {
1 o5 e+ ~5 F0 X; ]6 i  l                if( pLight )' T3 _/ D0 k! y7 m2 y% o& a/ q
                {               
* x, e8 B3 a- L5 F  `/ E+ i  ]7 Q                        // à??μ oˉè* 7 v! F0 }$ z; o3 p- M
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;+ x2 }$ J, k% G9 T, k- n& H
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
0 v) ]+ ^0 Q( r2 E7 s                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;3 Y2 \8 E3 T% Z" h# n8 Y/ D* d

1 S9 w" `9 ^9 c3 ]                        // oˉè* ??à?
3 Q- F+ B7 B: F; x+ J3 C( p                        pLight->Specular.r = 1.0f;
3 @8 E1 {# d) I4 B  W                        pLight->Specular.g = 1.0f;3 }. o. @6 |) Y" ^
                        pLight->Specular.b = 1.0f;
' |4 @$ U% }0 ]/ S6 `                        // àü?? oˉè*
- x: P6 k  ^3 t& O                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
) ^0 ?' s, ]- P, a9 u# u9 Y                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;, P) ~! p0 m6 m( S
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;- ]8 w% s, i4 R; E9 O3 y" @3 z6 [
! l- u. _) w$ W7 `
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
; G3 v& T5 q- P# c+ y8 b0 X                        {
3 Q" d4 Q1 q4 k+ p+ d                                pLight->Diffuse.r *= 0.6f;
; l% |8 h. v+ z; l6 s) A! z; G1 d- N                                pLight->Diffuse.g *= 0.6f;, K% a) y5 O% |, W) Y5 x; }5 C( w
                                pLight->Diffuse.b *= 0.6f;
8 X" a! Q8 e, L8 q7 K4 K                                pLight->Ambient.r *= 0.7f;- {! k' m) }& j6 \" K5 [* }6 @9 d
                                pLight->Ambient.g *= 0.7f;
- r9 ~$ k9 ~. n! ^0 J) M                                pLight->Ambient.b *= 0.7f;+ i: A" r  F- B2 K% X0 A
                        }
5 U) `5 M1 s" X, ?6 c2 R8 ^9 q/ g/ W  Q# A" T
#if __VER >= 15 // __BS_CHANGING_ENVIR
( n7 y" b4 v! L! o0 O, r4 X                        if( g_pPlayer )) p$ Y/ {$ p% {9 y0 j- G+ a
                                HookUpdateLight( pLight );3 [& a( s6 l4 ^% O& A6 O$ H2 Y
#endif0 P. O4 G) h# g! c! v. Z2 A1 `
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# O: X$ ]4 B4 p0 |
) X  \' \, b* h; P; E                        pLight->Diffuse.r  += 0.1f;
+ K+ L4 M- o. P+ Z                        pLight->Diffuse.g  += 0.1f;
' D) e4 C; [1 F1 h3 e$ B% r$ h                        pLight->Diffuse.b  += 0.1f;( S6 T5 Q4 A& g6 P0 H( ?. f( @
                        // oˉè* ??à?
2 V2 A3 H0 {, L2 @  U2 F                        pLight->Specular.r = 2.0f;
* J, ]0 |, v8 g3 D( t0 O                        pLight->Specular.g = 2.0f;
( ~, _/ D3 u+ c# {* Y5 _, ?8 A5 G                        pLight->Specular.b = 2.0f;' d- s1 n- B, h/ _$ r
                        // á?oˉ " r. X  T. I3 d5 g8 q4 a$ n
                        pLight->Ambient.r  *= 0.9f;) O. w( E' R% ?& u4 P6 o
                        pLight->Ambient.g  *= 0.9f;3 G/ C! G4 R  K! f1 x+ H
                        pLight->Ambient.b  *= 0.9f;% h* s5 U; w2 q* v* o+ @8 u
$ U9 B6 n* L) P+ a6 |
                        memcpy( &m_light, pLight, sizeof( m_light ) );4 q2 ^8 F" a  C! D+ y- f
                       
9 d- i8 Y: |7 q' c9 L: ^                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );5 g/ o2 |" I3 H
                        pLight->Appear( m_pd3dDevice, TRUE );
: J' o6 G1 O! w0 t% k/ x        ; a$ A) x( p; B. ]- d: R% D
                        DWORD dwR, dwG, dwB;5 _2 K4 Y8 O4 e6 [  K/ K: s$ o2 d
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
' F2 U. @0 Y6 X  i6 j                        dwG = (DWORD)( pLight->Ambient.g * 255 );
( l9 x; o; F6 {                        dwB = (DWORD)( pLight->Ambient.b * 255 );
  i; ?0 ^8 F( G% B: y2 V                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );  j& I0 Q# z5 W% }
                }* N2 e( ]/ Z) y6 N5 p, x
        }% U9 H! F7 H$ ?# b% w6 z% n
        else
) e1 ^8 A3 I% r        {
, h# O0 B: d0 M" P                if( pLight )
3 f# K2 n+ d- A5 p                {/ t+ E% h3 W+ g
               
- N# w' B8 j* _1 u' |& w8 F' C                        int nHour = 8, nMin = 0;: f, |" }7 _6 H5 f! ~1 h; Z0 o
        #ifdef __CLIENT1 \# g( z* k9 k: w5 m2 q6 A4 L
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
% _8 S0 s; t2 l: Z3 x( i' R                        nHour = g_GameTimer.m_nHour;2 x. H% Z( }% {) \6 b! }% _: Z* X
                        nMin  = g_GameTimer.m_nMin ;
) t# t" o  {9 G% f5 r        #else1 Q% D" F+ h: t8 |, `9 e1 n8 {
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
/ e" O* @. w- F2 q9 j( ?' ~% r& z. z' v                        if( m_nLightType == 1 )
0 n1 v  j1 ]# h3 N  V/ [5 a4 y- k. S                                nHour = m_nLightHour;/ i, d* w$ v8 G/ }5 ]9 u8 G
        #endif
) n; }9 Z# _1 }  J  s                        nHour--;
7 ?# B* D: U0 @                        if( nHour < 0 ) nHour = 0;3 l6 \! n! `1 `' v5 e
                        if( nHour > 23 ) nHour = 23;
7 x/ f$ v# C" J4 T: y
6 T5 D* V& P3 K. f: W, C: V% ^                        //if( m_bFixedHour )
% Q2 V; g3 a* m$ m  j' a) {, k                        //        nHour = m_nFixedHour, nMin = 0;6 T; R0 i9 m/ i3 ]/ r
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
; C, L# D: T2 }1 M                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
1 H% D. o: K+ E$ b- E
7 I& K/ b' S4 O; F# e: y                        //m_lightColor = lightColorPrv;
8 r$ Q& |6 `1 N                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
  {' k! B; p1 r                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;1 S6 _, \3 _& g
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
* ?/ I( r5 D0 h* L                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;* u3 }; c: G( B8 G, X8 Y
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;; m2 u1 C& [+ G
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;9 \9 J8 Z. z" }2 q( g3 [. z+ ~7 O7 y
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
% D& y. D/ X  ~$ I! Z: \6 s2 A# p  K0 m
                        // à??μ oˉè* 1 e6 o4 c. j% b* @$ O
                        pLight->Diffuse.r  = lightColorPrv.r1;
1 K& |5 Z7 Y( I  q& _# D                        pLight->Diffuse.g  = lightColorPrv.g1;
$ i( ], F% r+ B+ U# i! c- W1 A                        pLight->Diffuse.b  = lightColorPrv.b1;
" D6 f' P; H$ i                        // oˉè* ??à?
- P# c. r- D  V: k8 P                        pLight->Specular.r = 1.0f;
. q6 E" \+ u+ ?& ~                        pLight->Specular.g = 1.0f;# M. F" S0 B$ R  g
                        pLight->Specular.b = 1.0f;0 \& z& M% p% _) b1 M0 p# g0 `
                        // àü?? oˉè* + `* p& }3 x: n( c; y
                        pLight->Ambient.r  = lightColorPrv.r2;( n& m" r; W+ T  E$ z! h
                        pLight->Ambient.g  = lightColorPrv.g2;
* P( X; T* a+ z% d8 V/ j                        pLight->Ambient.b  = lightColorPrv.b2;; Q/ J: O5 W; v8 b9 y4 c8 m$ K
9 S, ]- `# X& a
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.8 J1 w; W5 L: ]3 z3 t
                        {
. g; c4 J6 ^3 @; G( ^1 a3 f                                pLight->Diffuse.r *= 0.6f;
( |) h9 B& {! K# l8 G                                pLight->Diffuse.g *= 0.6f;6 F1 e* I, g! F; s2 ~* {& C
                                pLight->Diffuse.b *= 0.6f;  q& |# B- R, v3 H. O
                                pLight->Ambient.r *= 0.7f;
0 W# ^: m$ H1 O                                pLight->Ambient.g *= 0.7f;  v4 m& j. N# P1 \
                                pLight->Ambient.b *= 0.7f;7 m3 c1 R( l8 r  I, J* r
                        }& L/ ~/ h" m( m* C3 T( u" s
                       
) j8 D% ]! Z' u+ g# q#if __VER >= 15 // __BS_CHANGING_ENVIR
+ ?3 \8 x; @, u9 g# l# o                        if( g_pPlayer ); u5 U; [2 U4 \- f
                                HookUpdateLight( pLight ); 2 x2 Z( ~! k; b: Q, ?% L
#endif/ R+ o' L1 _# R4 f0 R  L
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 E5 a4 \0 r! H: ]) ]5 [1 }4 ?4 _; O( M6 n
#ifdef __YENV
( y1 U" g* ?* q2 D8 p5 h0 L                        pLight->Diffuse.r  *= 1.1f;1 |$ V/ c  U. Z9 M" ]; o' ^
                        pLight->Diffuse.g  *= 1.1f;5 s) N3 b3 U- W; ~
                        pLight->Diffuse.b  *= 1.1f;' j; R/ K" s0 c+ Y3 _
                        // oˉè* ??à? 6 T. {, x3 w/ c7 o) \1 a" l  y
                        pLight->Specular.r = 2.0f;/ L& `7 s) g3 D, b4 M
                        pLight->Specular.g = 2.0f;: D5 S( |* }- }9 N
                        pLight->Specular.b = 2.0f;
% b4 h' c& g, u0 {. E                        // á?oˉ
" N, Y/ y+ G4 X; Y5 [                        pLight->Ambient.r  *= 1.0f;
2 c, e, u) W% f! {  ]% D* ?                        pLight->Ambient.g  *= 1.0f;4 u+ O' b3 E* `/ `
                        pLight->Ambient.b  *= 1.0f;
2 L2 S" c- V4 b" Q#else //__YENV
2 i3 X# h5 ^; K' S                        pLight->Diffuse.r  *= 1.1f;
3 [9 ~! n- n. p% l9 Z                        pLight->Diffuse.g  *= 1.1f;- z1 T/ |% @2 d; a. k
                        pLight->Diffuse.b  *= 1.1f;
. F. _$ m& g4 m% |                        // oˉè* ??à?
" V, m4 A* r6 o+ I/ w                        pLight->Specular.r = 2.0f;
7 z7 @6 e5 `- q- [( r0 a                        pLight->Specular.g = 2.0f;1 d/ z) ]; L& Q1 I' @
                        pLight->Specular.b = 2.0f;; |; C9 a8 ^# P' h! b
                        // á?oˉ 3 q: G1 ^; l0 |
                        pLight->Ambient.r  *= 0.9f;/ m  p+ P! _' d
                        pLight->Ambient.g  *= 0.9f;
, n3 x; a0 c2 J                        pLight->Ambient.b  *= 0.9f;
& m/ T5 u$ z- t/ l, L#endif //__YENV 4 g1 v5 s- D7 D' y1 @4 `( f
                        ) ~5 f' S1 b) ?7 Z4 T
                        memcpy( &m_light, pLight, sizeof( m_light ) );/ |( N# P) F1 e1 {  H0 G& o% V1 J
                        6 W  C6 L- l/ A* H/ a
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);. I+ K) D- T! U  h2 N% P: }
                        D3DXMATRIX  matTemp;
; Y/ N1 G+ D6 ~  M# W, [7 T                        static const float CONS_VAL = 3.1415926f / 180.f;6 j/ Z& F1 r8 c
& ^! s8 p+ z: _! L. t* y
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
7 Z# I9 F. L9 N$ D  b) j) u                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
( Z4 _, N; H; \6 P# E8 o                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 5 t! \: N  o/ p
                        pLight->Appear( m_pd3dDevice, TRUE );& \3 g5 O, o, x
' x5 _8 B' a) o; x' X4 |
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);/ A. R# p- d, Z9 C
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
7 ?( K0 K# G8 I* N' ^, A8 A                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 7 U& ~3 B& ?0 U7 t/ k
( p7 f3 H$ K8 L8 H0 D) l
                        DWORD dwR, dwG, dwB;- ?% S) k! s* Z' ~! @) V7 x' f# O
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
7 G" C+ u0 @$ q" q                        dwG = (DWORD)( pLight->Ambient.g * 255 );
4 e1 z; i/ b0 P! j8 f4 C2 K                        dwB = (DWORD)( pLight->Ambient.b * 255 );+ g# J, N7 s. k- N' X* z; K
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
% b, Y$ a4 i9 N                }
+ m6 f! P& W# ?. J  c        }
9 D. n/ D) k+ O: a) P4 s. W) n, |
8 {! Y" A& T! E; D1 _        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
2 g7 U8 ]: E6 r0 I- u5 a0 t0 k        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) );
3 f. ~$ w6 S/ G* L, |/ G        ::SetLight( bLight );
5 a% l3 p. C3 S6 O( Q5 l
! n  B" h! c  ?& O2 F        // ±ao? ?D?í???ó á¤à?
5 U6 A  b0 T! V4 p        m_pd3dDevice->SetMaterial( &m_baseMaterial );3 M! m9 K7 v. H& ]
        0 [6 {) o, u2 P+ x% L4 E' z% S  x
#endif // not WORLDSERVER
9 T  ?% m6 W- C4 R* w}
! W( a! f) u/ K, i并更换
- C; A: O  }/ e* i8 k1 v+ l- l/ YCode:3 q' ^- M) f! T0 s" R
__FLYFF_INITPAGE_EXT
7 L: h/ I" b$ `0 b) n% P/ `定义
+ l' X8 K* P8 ]( m# d, I2 s4 h3 A  Q( w

3 G3 O, k6 U4 n: A+ F3 n5 q" Q9 j% h
. K5 T7 ~: M1 _  C! J6 n8 O3 t6 K5 l7 _  ?( t/ U
现在终于删除我的狗屁加速...! A! D( P2 x$ k

& G, T  o" e5 N* s( X  p% P- u
- Q1 {3 R8 t4 P# m
( O  }; x: l2 ^- N; M




欢迎光临 飞飞世界论坛 (http://www.ffwold.com/) Powered by Discuz! X3.2