飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
/ g% ^; \% [% o: z# J尾翼:
6 T5 ^8 }" U. n& T; f
! {- f9 |1 a% x代码:* h' [0 U0 c. ~1 Q! @7 E5 o" K3 \
CWndAutoFood::CWndAutoFood()) O# K: |) h: H* u, T% g4 S
{! f5 n( w: o( C
        m_pItemElem = NULL;
9 o! O+ u. o) {' `        m_pTexture = NULL;: C* |0 n% W& J2 H9 V
        bStart = FALSE;
$ {. r: a7 L6 x% p}
( b: E+ U' Y5 I  h  @5 `4 e  z  w5 L7 i/ e' }5 J. [4 o- A
CWndAutoFood::~CWndAutoFood(), y* Y4 ]& F- O
{( c; J! ]8 g/ x
        AfxMessageBox( "AutoFood ist gestorben " );
: x1 C- z* b+ h3 Y}
, @8 [  `; m1 B! a7 j' T( EBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
7 a" D( S$ E' H1 h: b{
. X$ P: G/ S& R& N+ \2 b8 V        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );0 z9 k0 H" `7 m" k
}
; [4 P+ o' b& F  ~
; h9 Y3 I" d$ q. q* M) w1 S8 Y+ |BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
# r6 s1 d$ G! p' ^5 g& q) A) o{
2 \* ^; j5 l+ f, s; l- D9 m        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );4 t/ K, f& n& k# i/ C1 a" S
        CRect rect = pWndCtrl->rect;6 ?  i4 f, @+ B  c& H
        if( rect && rect.PtInRect( point ) )
: U! a+ k3 K! E$ z0 c        {0 A$ T9 x9 M1 v3 t$ v
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
$ L" F9 B4 B4 ^1 z' A( |' ~                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
+ l0 |, w; o$ {7 F/ I+ t' ^                {) [# H; B3 \6 T7 w
                        if( m_pItemElem )
$ U( w2 V. B- R) R1 M" k* k' N                        {/ I& x) T) ~) s# `' Y( I
                                m_pItemElem = NULL;  \" I. T5 k' S$ }5 A- ?' U
                        }
6 w0 Y- H# S8 g                        m_pItemElem = pItemElem;
, g6 g1 u9 k. b. j: x                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
* {: m3 o4 z$ Y" e0 H  `/ m" W, L! t                }else{
' [% G( [4 n; D8 y* C" G& J                        SetForbid( TRUE );' n+ |0 P5 {7 @; q, a1 L
                }7 w( z* K0 M8 D% l
        }else{" @/ Q/ K, A  m* c
                SetForbid( TRUE );
: P  _$ Y5 o5 B4 l        }- g3 i0 A# b9 n8 y/ L) S4 k! x
        return TRUE;
" v, U" C# `7 S; c}( k+ w0 k) k0 L9 ~% i

; m7 {7 V4 R4 _BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult ). e; E; D' A" K' K+ ?5 f; {
{
7 k; P/ r- s# T4 W( v3 {        switch( nID )9 k/ D% f9 Q) L1 E7 X
        {0 `' T& B6 C" K
        case WIDC_BUTTON3:
8 d1 ^0 S8 W- n% d& {4 \- X( H                {' m, G2 Y. E3 u/ ~$ ?5 \/ K# {
                        bStart = TRUE;
& f1 ?6 T& n, n                        break;
* `" F0 H' f$ `2 V4 U: F6 ^% N                }
( T% b$ G! ~+ M        case WIDC_BUTTON4:
! l# Q2 B3 g( @: @+ [2 W                {
' s, K! T$ C1 s$ M- F4 @" B! B                        bStart = FALSE;
5 @! M) W# R4 L# e* K; s                        break;' s* W/ P% r) u7 s+ j
                }
. i  t, ~) v  f. Q0 [5 L        }
$ N) K$ k9 S9 c, b' M        return CWndNeuz::OnChildNotify( message, nID, pLResult );
: w, d) l1 F$ J6 I2 }}        8 U$ ~# V1 {) k9 _5 [+ n# }4 \
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
+ L! v7 u7 v% M$ k5 z8 Z{1 N: }# W, Q& U$ c* H. g
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
( R) z4 b4 Z1 A+ n: |2 ?        if( bStart || !m_pItemElem )8 x4 p& G0 o0 A. N2 U
        {: H& P8 N& G$ Z
                pBtn->EnableWindow( FALSE );# }4 \, f- N4 A# r4 U7 O/ [
        }else# J9 e, @5 H( `" x5 w' F* l
                pBtn->EnableWindow( TRUE );) e7 O9 A' z: A
        if( m_pTexture )% [, z+ a" i1 s3 `7 w! n( w+ R$ P
        {
2 |8 R0 q9 U& j& t, l- u9 L/ n                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );4 f: j2 V# @0 A
                if( wndCtrl && wndCtrl->rect ). S2 X& O3 f# g; l7 X
                {4 F2 r- a0 A3 c" h+ D* j& W
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );; ^: N# D) c9 W
                }2 [; ]: P- @8 w+ i1 k
        }
. ^; O4 i8 l" v" Y; O}3 A; _7 R8 S2 @- e
' n" k( |9 S# K( p' L
BOOL CWndAutoFood:rocess()
, J8 k: U$ N9 ]; d{: z8 s  [+ E: N0 A% a
        if( bStart )
& v8 N8 x2 p" _2 c# r9 b        {4 e* _8 q( }, P- x
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )- E/ v" t: \0 M9 G/ h
                {
* C; _& m1 [& l5 p0 X3 I                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
; g$ `: k) q$ `) a' |7 M/ C                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
* A8 ?; P3 c- B: Y                }else{) R5 u: j5 R+ V5 ^7 q2 m6 ~
                        bStart = FALSE;% x0 b+ n4 {, i  @6 s1 \: v
                        m_pItemElem = NULL;
& F2 d0 T; f1 ~& }% Y                }  Q$ {3 Y) @- E+ e% U- v
        }/ k8 Q) m" h3 z5 o# J
        return TRUE;4 e2 c& D9 G1 F7 c& T; m
}* @) a- N- J  f. @6 @2 j
7 T* ?0 D7 C$ M$ E  ?; d, r
登录视频废话:- r  }- `" N; V' i: j" N
尾翼:
. Q3 O! B6 [0 V$ B& S8 D
- L/ b2 U$ y6 Z' `8 E  @代码:
& |' k  q3 Z: D: Z6 K
' Z6 Z6 F$ |2 C7 W/ R. Nvoid CWorld::SetLight( BOOL bLight )
1 i5 l2 O" |1 |: Z6 kdurch$ Z/ E( e) D1 e  A" u
Code:
9 R6 j" T! j8 C1 r6 N$ b9 C& ~+ Pvoid CWorld::SetLight( BOOL bLight )
) [- ]2 p! i1 `+ m+ O& @+ t{- e: K4 S+ L; r& D0 X
        //ACE("SetLight %d \n", bLight);* x) {3 N' \+ D' m$ N: `
        # i* U" ?8 Q' o* J8 T4 M) {
#ifndef  __WORLDSERVER $ G3 l4 Q. x+ X1 K) Y
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);' T, j6 t$ ?' b- o! |( X
        CLight* pLight = NULL;+ v) L9 e4 J5 a  R2 `% O3 }
: b' [8 a6 @+ e' J9 C  |% J
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );8 l+ d; i& N+ g7 t* J7 K
5 y7 o/ g# b2 @" O0 ~" q
        pLight = GetLight( "direction" );
3 y4 @( L' ~) {* C+ {2 b% q# U0 ^2 c  H6 V' d2 V% {
#if __VER >= 15 // __BS_CHANGING_ENVIR
; u: w& j& @% V( d* H- Q        if( g_pPlayer ){, k" G1 _  z' r, Z; Z
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );: P3 k. |: B# h: x1 D8 J$ S! Q
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
0 y7 L& n- V9 B& D$ d  I                {& J& q$ |: A  W+ y! F8 h2 |% W
                        if( pLight )
9 ?  X! v$ J3 E8 `                        {) g6 q5 A5 }( B7 v
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];5 U( y. i' P6 ~7 x" K2 i
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
- k9 @* e+ v$ r                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
- q4 V, ~. ^! B0 o$ R; S
. d+ j" g9 `+ A* [2 |' a                                pLight->Specular.r = 2.0f;6 R1 N6 h- u4 e$ R+ b2 ~
                                pLight->Specular.g = 2.0f;. L: b7 o6 |. k* D. F: G8 \6 |% m
                                pLight->Specular.b = 2.0f;! M& D% N* @$ e; P
       
6 C: V5 i) s9 J5 K3 B; c% z                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];  ]5 u3 u3 {) @5 B
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];& r# G* C! a$ N
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
4 X2 w/ o5 @$ v, u  h        7 G3 j) g* D" r. a/ G
                                HookUpdateLight( pLight ); 7 ]" E/ p( }6 l

: s- q8 k6 x' u& a6 c. m, n7 m7 m  P                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );* I5 q: W4 o4 `, Y
                ' }# d% J0 a0 u9 {( g  \) B
                                pLight->Diffuse.r *= 1.2f;
  ?! l) d5 i! U/ |( G0 Q                                pLight->Diffuse.g *= 1.2f;
) g; |% M3 \8 ?5 z                                pLight->Diffuse.b *= 1.2f;' ^1 O2 C! B. z- c

; Z" s6 ?5 X3 G8 c4 M/ T. ]) y                                pLight->Ambient.r *= 0.8f;
9 D/ C* a' ^0 I/ [& @. D, Z1 W                                pLight->Ambient.g *= 0.8f;
% Z1 j% m$ [9 K1 L* m& `; T' }6 f                                pLight->Ambient.b *= 0.8f;
9 U6 u7 U0 `" V0 g7 d! ~% V       
% a- ]% P, [7 C3 t                                memcpy( &m_light, pLight, sizeof( m_light ) );+ y5 j/ X  Y. b
3 f' t( S9 r9 C! x
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 V/ s( v( Z( U" M1 X( |7 ^& ]                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
- O; Q/ E. W$ w# }# g( Z( ?                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 C( B% E  A" z7 G, O7 z. U  r0 z                                 pLight->Appear( m_pd3dDevice, TRUE );
, F" p7 L2 ?5 y4 B               
6 B2 E' D+ M+ w, m, S" f                                DWORD dwR, dwG, dwB;' ]  t9 y; w+ y7 i* q. z, Z3 D% `
                                dwR = (DWORD)( pLight->Ambient.r * 255 );1 \$ d) f0 S/ t+ T) S" c
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
3 d% n: {5 T% o, }3 I                                dwB = (DWORD)( pLight->Ambient.b * 255 );
$ ^. s+ C0 n. g  ?) A4 C                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );! r' w3 A5 K1 {6 ~  i
                        }, Y% q8 D6 a6 m9 `' W8 k% ?+ r% M
                }
3 o- A0 W3 ?5 d2 i        }' c6 @1 h2 e; c- X5 G0 a& q
        else
) t% h) T# L5 _' B: Q2 @7 F7 d#endif
& t' @" Y- e  c
1 S" M6 G* G+ a+ j( M        if( m_bIsIndoor )" n: \4 d% k1 \5 A1 {
        {) |! j7 A0 Q; I3 d# [, m9 ~
                if( pLight )
  C& |' P: R5 F4 D                {                " P! ?* C+ ]) j% l- }* [
                        // à??μ oˉè* * N6 n+ _3 T* Z
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
" W% |' Q" _3 k# m+ A) j                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
+ T2 s0 G: U. U/ [# ]) Z' ^                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
1 c. }7 M! p" ^1 h) U4 [. O; A/ y& M
                        // oˉè* ??à? $ t: [) p, P. v
                        pLight->Specular.r = 1.0f;3 S4 |% g4 ]! t: G' H+ Y
                        pLight->Specular.g = 1.0f;$ l# {0 H7 I, M, [; m' C4 @6 o
                        pLight->Specular.b = 1.0f;
5 t# ]- |; z2 k                        // àü?? oˉè*
5 U1 w7 m( L& l, l                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
/ r' E5 @( E$ A3 C2 b                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
+ R- ]2 S) c6 W; G" R                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
( v9 W* t; l6 s, g( o1 c: H4 f# F/ y9 T; F
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??./ X" ^4 V$ n  K$ w6 k( b
                        {
$ i9 M- S4 v- N1 A                                pLight->Diffuse.r *= 0.6f;: ~6 L: e: s$ t# J- x
                                pLight->Diffuse.g *= 0.6f;
' K" k* J$ g  b( e1 }                                pLight->Diffuse.b *= 0.6f;- i6 Y$ U$ s" ]3 K* F' U5 b7 w
                                pLight->Ambient.r *= 0.7f;
% u$ n4 F& t8 w- {& l; F                                pLight->Ambient.g *= 0.7f;- @, l. w  K6 n1 @4 n
                                pLight->Ambient.b *= 0.7f;4 Z5 P* ?6 U' M4 G" r7 e6 u* |
                        }6 _  N8 P; I& f$ z
6 i8 r$ S% ]) x, ^
#if __VER >= 15 // __BS_CHANGING_ENVIR( _' z! [* X4 b  u5 ]9 c- B
                        if( g_pPlayer )9 |8 f$ f' W, g/ D7 K
                                HookUpdateLight( pLight );
) s2 o4 c* {$ }9 H! B6 ~1 _#endif
4 B5 Z9 m+ J/ o- U( w                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );5 y- p# }# D1 D& ~3 F

0 d$ R, ]6 d7 [; P* d                        pLight->Diffuse.r  += 0.1f;  G, s8 [& p% e6 Q" _4 Q  N. U$ U
                        pLight->Diffuse.g  += 0.1f;2 T( l3 X- E9 ~
                        pLight->Diffuse.b  += 0.1f;
. D% d6 v' t+ [                        // oˉè* ??à?
, L" @9 I- O' G; F. j5 k                        pLight->Specular.r = 2.0f;
# a$ I0 e; K! n8 K& B. n' y7 o                        pLight->Specular.g = 2.0f;* `# y6 \2 x9 ?" H. k: t
                        pLight->Specular.b = 2.0f;
* y; [) D, u  P3 l3 z- O4 B                        // á?oˉ
% d7 `% @0 s& `: o* L: O3 k- j                        pLight->Ambient.r  *= 0.9f;
3 M/ [8 ^2 h( h5 ?* L/ `                        pLight->Ambient.g  *= 0.9f;
/ Y5 A" m$ u0 M, P  ?                        pLight->Ambient.b  *= 0.9f;$ o( L" j8 H/ W5 k8 U' e
3 `3 W( u. |2 T6 S  q# B. w8 z
                        memcpy( &m_light, pLight, sizeof( m_light ) );5 Z7 n5 r( {3 ?9 U
                        ) a0 K2 o: P2 M/ i# b8 O# S( C
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
+ }. @+ u9 l( W9 r5 j; x                        pLight->Appear( m_pd3dDevice, TRUE );7 C' Q" h" w# h& \% b
       
& a5 O6 {) k0 q' g; J                        DWORD dwR, dwG, dwB;* B1 }' v( S! [, c, P9 V
                        dwR = (DWORD)( pLight->Ambient.r * 255 );$ J, N# }( D% q! T( }" o; w
                        dwG = (DWORD)( pLight->Ambient.g * 255 );+ u2 u- C  t8 O
                        dwB = (DWORD)( pLight->Ambient.b * 255 );: M  b: G# l0 o+ b& q5 f
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );' e3 _* x5 X3 B$ q5 D; _' d1 m
                }
' _9 E/ U( d' N. P0 a- j+ F        }; P% `" D! ~2 N/ F* `
        else
0 b0 A1 {, m1 D8 g# F0 r, r5 f9 h        {
- ?% l- Y( b% P6 G$ K9 J+ {, Y                if( pLight )' \' o7 k+ z1 }- u
                {. C) @/ U$ s, p0 K4 ?
               
( D5 w, @# A; N                        int nHour = 8, nMin = 0;
4 D+ P5 Q5 r5 f( T) C        #ifdef __CLIENT7 @( P+ _2 B$ ?- Z+ o
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
/ n( u2 @& d9 P6 X! B/ J                        nHour = g_GameTimer.m_nHour;" F8 I# y! |5 V* @7 M, V
                        nMin  = g_GameTimer.m_nMin ;, n. A. Z7 w1 y* n- u6 k% R6 p- P9 P
        #else( o1 _# q/ [3 r! j7 j( d- {
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.+ ^# C; N1 G( D" ?" s( ]  s9 A
                        if( m_nLightType == 1 )
' P) L3 s. e; E3 j( r/ m2 h3 T) N                                nHour = m_nLightHour;* _9 F4 G- d: ~7 d1 N9 n
        #endif
$ r* o8 U, Z7 n. v2 J                        nHour--;
4 Y" Z- t$ a& [2 ~/ H# a                        if( nHour < 0 ) nHour = 0;/ i" ^. w; F3 n2 C
                        if( nHour > 23 ) nHour = 23;
7 `# S* M- t/ Y. {/ K/ ^5 Z  P6 I" b
9 _8 R; a/ W# B+ O) C                        //if( m_bFixedHour )
* v( M* W# {6 r$ X                        //        nHour = m_nFixedHour, nMin = 0;
( G# Q+ `1 S0 |) E' ]/ t                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];$ H/ O0 k! X$ @' j8 b, g) _
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
" G/ w& }$ b: ^' v8 R/ O
/ j5 D) V7 v+ \! a7 S                        //m_lightColor = lightColorPrv;
9 _! ^' f9 G) |" H4 y- h                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
4 c7 Z! C  A, Q& a+ J1 o                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;- A- Y; g9 ~  n/ C) }
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;& Y& M$ k- W8 V: w5 i+ Z$ Y$ ]
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
9 p1 |  x( ^+ s' u! f                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
5 ^  E4 M3 g: o. t8 ~                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
2 s4 I# M! O! G                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
. n$ W5 T! Q, ]+ [% s3 S& B+ g+ \* a
                        // à??μ oˉè* 3 Z; U& a4 z& a/ k2 E
                        pLight->Diffuse.r  = lightColorPrv.r1;6 W- P0 s  A* p1 z* Q9 E9 X
                        pLight->Diffuse.g  = lightColorPrv.g1;
$ Y% C* A" N1 V9 w: @& y                        pLight->Diffuse.b  = lightColorPrv.b1;, L& g3 O8 e  T" u0 j& |: e
                        // oˉè* ??à?
  |9 |: s2 Y" q% m                        pLight->Specular.r = 1.0f;
. Z, x& S# K' A, L6 ~+ j                        pLight->Specular.g = 1.0f;
( c  w3 L, T0 E3 S. Y* R' e2 r; P                        pLight->Specular.b = 1.0f;/ G- \$ g9 Z+ ?: d
                        // àü?? oˉè*
: h' O% x: o2 R                        pLight->Ambient.r  = lightColorPrv.r2;
) y  A7 a/ V* X( E* }+ d" l                        pLight->Ambient.g  = lightColorPrv.g2;" a% i  B% ]2 o# K+ t% @; Q
                        pLight->Ambient.b  = lightColorPrv.b2;, O7 ~5 E* Y! H' W# ]
( F3 M  K% h# \0 J$ M
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.& g" ^# a" Z# u8 N
                        {
. Y' s3 p$ Z8 X% u                                pLight->Diffuse.r *= 0.6f;- c6 C0 |% y1 B+ ~, t
                                pLight->Diffuse.g *= 0.6f;% w9 L1 d6 o1 {+ w, q8 Y* c
                                pLight->Diffuse.b *= 0.6f;
* \6 g5 _# a- h7 R) l  W) N* {6 N                                pLight->Ambient.r *= 0.7f;7 j1 P4 w: B; E: z
                                pLight->Ambient.g *= 0.7f;6 M3 ]& y4 K' Q. R( \
                                pLight->Ambient.b *= 0.7f;2 w( m& y5 y( S2 E; ]' Q
                        }
4 L. v  j8 w; n' i# }7 k- {1 f                        5 e1 X" }% X9 A( @9 Q
#if __VER >= 15 // __BS_CHANGING_ENVIR1 ~: C+ i+ p) V1 f' g
                        if( g_pPlayer )* ]! y. V- ~1 ]! J5 U8 ^0 M
                                HookUpdateLight( pLight ); 0 T6 b* G2 O; p" T" j
#endif
0 R0 w. k8 R9 d2 ~# w- Z                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );! x. G4 e% [2 E; j; R

) a% e6 C- q2 T  p- n( U#ifdef __YENV
  e" o# t4 a& C' P, S* S                        pLight->Diffuse.r  *= 1.1f;
# l% U4 |' }' A! ?3 n8 j3 b                        pLight->Diffuse.g  *= 1.1f;5 X) @, I0 G! u5 I$ B- A/ t5 Q) k4 d
                        pLight->Diffuse.b  *= 1.1f;! K/ s( m5 D  J/ Z; }6 b) x
                        // oˉè* ??à? $ Q- x! l6 v* y
                        pLight->Specular.r = 2.0f;
: j  p) j" c+ y' a7 O0 \                        pLight->Specular.g = 2.0f;
6 s. g0 b! |6 X% u: c( [                        pLight->Specular.b = 2.0f;) g  n4 `, h3 n, l
                        // á?oˉ + t  c2 R8 _9 P  u' j% W% I
                        pLight->Ambient.r  *= 1.0f;5 t% @  G' g6 x1 F5 v/ D
                        pLight->Ambient.g  *= 1.0f;
3 T! B7 O$ ?2 |2 G                        pLight->Ambient.b  *= 1.0f;
( Q, I- J5 C0 x#else //__YENV/ o' U$ P* ~+ e/ _: F5 w5 b5 \
                        pLight->Diffuse.r  *= 1.1f;$ e" T( D& W& \) h4 K; M' y
                        pLight->Diffuse.g  *= 1.1f;# b% C1 ]7 h- K
                        pLight->Diffuse.b  *= 1.1f;6 t: y& W( \# ]# Q
                        // oˉè* ??à?
& D4 m' v2 O- w! J- ]                        pLight->Specular.r = 2.0f;& P* G% m$ d9 b, _2 F4 u" s) ]5 g
                        pLight->Specular.g = 2.0f;9 Q5 V1 A8 W, c( p9 T' P8 ^
                        pLight->Specular.b = 2.0f;
8 D, e5 T- T2 ]7 }8 Y$ H                        // á?oˉ 8 z" z0 L0 u# n" _5 o# r
                        pLight->Ambient.r  *= 0.9f;
, W- [5 u% l! g: J; r# ]3 v                        pLight->Ambient.g  *= 0.9f;! s0 \2 J) K( u* Y
                        pLight->Ambient.b  *= 0.9f;8 J' ?8 V% b0 ]$ e7 u- J) e
#endif //__YENV : w# y3 H$ X4 F( f! L/ R% Z/ T2 Y5 _3 Z
                        1 m  z4 q( ~) Q' C$ Q/ T
                        memcpy( &m_light, pLight, sizeof( m_light ) );
# b# B+ G6 k7 n0 }1 T, R                        . x. w- }7 ^; G, Z: @9 t8 z- A: I
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);2 \7 L1 ^1 s2 _) ]1 Z( B
                        D3DXMATRIX  matTemp;* d1 h- ?1 S4 w  B0 r/ T
                        static const float CONS_VAL = 3.1415926f / 180.f;9 g/ s+ M- P$ `, l0 j6 w
3 y5 x  y# t+ x3 b$ k  e: J9 m7 m
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
: u6 q7 I( B0 [  |0 E+ }                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);; a8 w! `+ a! E" h  `& `2 B( M
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
) D/ U' n* m' V+ L5 ^                        pLight->Appear( m_pd3dDevice, TRUE );
2 O7 p' o# [; _2 d3 E+ C: O: j& I$ b0 `" k( b9 |! H
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);4 u+ h2 c! e' G
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));1 q2 A! Z* _' y( V' Z. g6 W: x
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); # R! B5 k" {) l- n9 p5 k  Y

6 Z0 F' F* v2 c' g; m& P: z                        DWORD dwR, dwG, dwB;
+ u) s0 Q  J; y                        dwR = (DWORD)( pLight->Ambient.r * 255 );
; {2 V6 _- P+ r$ C: X1 S                        dwG = (DWORD)( pLight->Ambient.g * 255 );
3 e+ {7 \" |4 c# K                        dwB = (DWORD)( pLight->Ambient.b * 255 );: x3 {. x9 M6 ~; O! \$ q8 t0 `" p
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        " V, I) g% D. {! A
                }7 n' b+ e: j0 |
        }( P4 O  I3 y3 H1 B1 r
" e' Y, ]5 ^" a7 h. e
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );- z- H! e/ b8 n2 c, l' [
        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) );
/ H. m7 X$ }  h, G) U/ J        ::SetLight( bLight );
# [$ v% Y: z+ n# p! i' p7 n& R
' t: l* q6 B. Q# n        // ±ao? ?D?í???ó á¤à? - U5 L/ j0 P3 x7 F6 M% G
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
* N0 n0 a! _1 Y- B5 n' G  J+ E        ; P1 c" l5 Y0 A0 F
#endif // not WORLDSERVER
: b# e/ J" I0 b, b* k( u; C: x}2 r* c2 q1 e6 e" a$ ~- M
并更换! @* }; X0 @" p# U
Code:
3 }; m% W0 @, c. O: J: r__FLYFF_INITPAGE_EXT
& B2 p: F  ?1 n2 u( k定义
' \9 i. g( ^/ Y! e, s0 g) R: t! R; x% S: A$ }5 p
1 A; O9 A( r* a7 \* N! G
4 w; J; }5 X6 X( x" W- @
3 |8 y% b9 }' E0 c# R+ y
现在终于删除我的狗屁加速...
* a, G0 z0 @+ p! t2 w" `
' z, u) U' G8 G9 ~/ F& O
- F0 H$ d: j5 m" W: C
; w9 t6 @: u5 h3 [2 E: Q; Y




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