飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:1 F  F2 D! u% E5 S$ X: F
尾翼:4 @5 A& y: E! L. {+ g
/ E  X- I1 {+ O  ~
代码:4 I% p9 G3 j: c6 o2 O
CWndAutoFood::CWndAutoFood()9 T4 [3 W- T, x4 M
{' l; i( u7 l, `/ a4 l
        m_pItemElem = NULL;9 Z$ K  N; U$ I0 d  z: y
        m_pTexture = NULL;
3 e  a# ~8 D0 l" Q# W3 B        bStart = FALSE;0 L, ~+ S+ e7 s; F
}
* `7 i! E9 A) U) k6 K' S, C; z5 ]: }* t
CWndAutoFood::~CWndAutoFood()
% |: w. p5 y# Z; X6 `8 G; v- P{& v0 z3 w. J6 B2 ?4 R  H
        AfxMessageBox( "AutoFood ist gestorben " );* G, z9 b2 }; @8 p( o3 }
}) E9 e( N3 W% @/ i2 Z; w7 x+ s: w6 I
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )0 y) o/ p" j* Y8 U) a2 F
{
' u! o" k. n8 Y$ I        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );6 L! B! w, U% N' U! e8 h' e
}
4 D8 ]7 u/ u$ a/ U, b* X
  F6 _" Y. r6 v( RBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )4 U# q* J# u" \3 h3 {
{
+ S* ~2 e+ ?) z6 V. C7 P        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. g  Q5 S! c; d- T        CRect rect = pWndCtrl->rect;
% u1 A! @- c, d) v9 t* f        if( rect && rect.PtInRect( point ) ), P( H" x& u7 M
        {3 R8 }& n: M2 e- d+ b/ v
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
4 I) D. E" x' G1 k! h9 n                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )7 S. V) B' k3 W1 Q% r4 k
                {; X$ q9 i- e$ _  I  e! o3 j& y
                        if( m_pItemElem ), F* @. E) F" e( H. P
                        {
/ F  l3 ~0 w/ l) A9 B                                m_pItemElem = NULL;) O1 o# Y0 U% e! [( P0 _$ h) A
                        }
% i) Z% C( Q1 f                        m_pItemElem = pItemElem;
) U" t! g, q- ^0 H                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );7 \: L" S3 z8 \; P. u1 h' Q
                }else{3 T6 t: ?, a, q$ {3 n/ U
                        SetForbid( TRUE );/ D' A, F' E9 y
                }
4 l, o6 v7 s/ h- ]6 H; |7 O        }else{
/ m9 I8 R; `- {8 J0 m5 d  }                SetForbid( TRUE );
4 W# }. y) D' I1 u* d. F        }
0 j9 p4 ^& V, O- y3 F        return TRUE;0 e7 U) M& {2 ?+ `' [7 w4 [; X
}* k6 z' b# p' A/ [' o7 o
! v) ?) G7 R- N2 N) w3 E
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
9 r* T; c8 ^+ s/ `* T{! F- w' w6 Z2 r: e
        switch( nID )% i2 |. v/ t$ x1 |
        {
/ i5 T' P. @0 E        case WIDC_BUTTON3:+ }1 h( I1 O- |' Y) Z+ ~
                {, ~0 n4 w, g8 @1 Z: l- g  y$ A- [: p
                        bStart = TRUE;- m2 V" Y! o6 R: p. H) {
                        break;) j! W. z# M: V( j: j
                }, F& r. S7 L3 p; F
        case WIDC_BUTTON4:( G( u  U# X# X5 a* L* j
                {
- Q% `4 X: E; ?& T, y. z$ x  `+ G                        bStart = FALSE;
1 Y  {" [1 i2 A+ U- ~9 }                        break;# v" n$ Q; \8 _) J5 ^0 B! o
                }
3 ]4 G5 g  I) x' T- h        }
* \8 @% i9 L1 L4 O        return CWndNeuz::OnChildNotify( message, nID, pLResult );
1 v2 z$ [7 _5 s, `; m; x; }}       
9 b8 g6 Y8 \$ P2 k- P, ?, ]" _3 Uvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )5 q7 [  @8 A' l& N' D
{
/ i, \$ z# j5 V3 d, b3 l8 y# n" |        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );. E: L2 x* |  n( x& j
        if( bStart || !m_pItemElem )
& k2 A9 {$ h5 C$ g: R  x. l/ Q% Y8 C        {7 l$ r" P% s; s6 n9 T/ V0 m
                pBtn->EnableWindow( FALSE );8 S# u2 v) ^' h7 Z5 k
        }else( D; \, X2 K9 A1 z
                pBtn->EnableWindow( TRUE );
5 C0 b, {, J# U& B; Z0 v        if( m_pTexture )0 I5 _+ ]8 f# ~% ~
        {- v  K- E- v7 ~9 d
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );" s/ K8 [5 c; |" O' j
                if( wndCtrl && wndCtrl->rect )
! F. H9 k$ M9 y& D4 X& j) X                {
2 O: D# L* v  T1 F                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );4 }0 g! N3 w8 k; N* ~% ?, l
                }
- u5 G) e. a7 C9 y* U" k& f; i7 f        }
0 ]/ P2 o, e+ }2 \" Z}+ m! p# k; w2 p( p# K2 I% V

. Q8 E, ^8 W, h) n) ABOOL CWndAutoFood:rocess()) }, [  V6 P0 B3 k1 d
{
; ]- C; i4 X' c1 U( o5 T        if( bStart )" @1 l- W% [: n# s0 l% p
        {. n0 J! e1 p3 _1 f  v2 x
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
. E  f2 C5 Y" P! `                {" D; e. l9 p6 {& c- q
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )7 a( \0 t2 T5 J/ p
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );& h( V' z- R8 d2 I+ Y
                }else{  R! F8 {; u! f! j9 j6 ?
                        bStart = FALSE;
' B* \( F, W' J2 s' U6 W                        m_pItemElem = NULL;
  g* K9 ^, w' n7 l0 S                }, ?& K& u3 i9 I
        }
$ f" u5 i7 n9 h        return TRUE;
7 I  a0 W. [' m! L8 x- q! O7 ~}% O' T5 N; w9 q  }+ c2 g# D3 H% o

2 ?% p; U8 [9 B, j登录视频废话:
1 \* a. |/ \. U6 B尾翼:( _  e. F5 ?! R% i( _: T  p: P

* j3 o) F; a1 b1 E7 p) {- d代码:
. `& h0 W# ~" e8 Z! ]" }
+ X3 v+ }$ {0 L. E8 F; o2 a6 Cvoid CWorld::SetLight( BOOL bLight )
, Z, i) h- T6 |durch
0 C' g* c" o, S# x) _Code:
) W  u  i" ]+ t( v" z7 K+ Cvoid CWorld::SetLight( BOOL bLight )4 c! [" o7 p, z9 t% M* {7 h6 d* S
{
) i4 y! ?% ]. Y+ L        //ACE("SetLight %d \n", bLight);
3 ?' q  o8 k, w1 C5 |          s- d0 @- S8 x& a( J5 s' V$ i
#ifndef  __WORLDSERVER
* D; Y& f3 ~3 o1 V        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
) L( H) f% Q4 W7 r, f        CLight* pLight = NULL;
0 x0 Y, b) v$ _; \8 u" M
9 Z2 e- |6 S5 p1 X$ T$ o$ w        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
- o4 M9 D2 _, s) L6 J
( s% h# R. q* G3 J/ p        pLight = GetLight( "direction" );
& Y) F4 C3 K% s  U6 j0 ^4 f/ f6 C7 k; r
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ ~4 m* P1 Z. n/ i/ E5 ]5 A0 J        if( g_pPlayer ){
3 G% a+ _; m7 M1 u& H                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );' t7 E; R0 _( N; I) T
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
$ [1 }" H, F& V) d+ f0 W/ a$ q                {' |# ~4 h# {. x2 g9 R6 e6 E
                        if( pLight )
# Y- s# u6 E; Z                        {
( J; V/ O( n4 b/ k! R- ?" S9 ^1 N                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];8 T% K2 Q  N3 |1 p
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];7 s7 W2 k% y5 v) R
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
7 H/ M* d* ]( }9 f2 ^4 p. a* k; ~! E8 n0 q' c+ O
                                pLight->Specular.r = 2.0f;
. t9 J) p, d: {  }                                pLight->Specular.g = 2.0f;
+ W# i' z. x+ C* D                                pLight->Specular.b = 2.0f;
& H) r2 t5 P5 E/ n/ g& X+ m       
2 B7 w. H' ~$ }+ ^  L3 X9 ?" g                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
- x1 g& v3 P' a2 H8 O; e; S                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
! L* P  c' Z2 U3 l  Y+ U# {" m- ^                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 ?1 _! u4 D4 Y5 v4 g4 M        6 M- d% e2 b: ?" C) q0 n4 @
                                HookUpdateLight( pLight ); , O) Z% y' a. z5 L0 C$ H
7 m8 C$ m2 Z7 N, M) Z
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );7 `# p1 x- ~, z* @$ X4 i
               
5 H" @5 `: R+ q# A2 U# M                                pLight->Diffuse.r *= 1.2f;' P/ i2 a9 `' J* R7 P
                                pLight->Diffuse.g *= 1.2f;- c# U% @4 o8 s  |* Y) B
                                pLight->Diffuse.b *= 1.2f;
$ a, Y- q2 A/ X( j, H9 \  T, p* v4 o/ L5 \, s
                                pLight->Ambient.r *= 0.8f;7 W4 d  ~' @/ k8 \& A2 u, P3 H
                                pLight->Ambient.g *= 0.8f;, ^0 U+ W- v' f  u
                                pLight->Ambient.b *= 0.8f;
* O- b' j& C5 N, y/ O7 Z       
: Q  c' ?1 S2 J! l9 R3 V# m                                memcpy( &m_light, pLight, sizeof( m_light ) );4 J4 L8 L) k( ]( g! d
1 j. m- ^$ A" \) @9 s
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);2 @2 m" u: d* Z# }, f+ w6 E
                                D3DXVec3Normalize(&(vecSun),&(vecSun));8 f) }% A6 J0 l+ \, Y
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); " v: W. _3 l' g; }3 U- z
                                pLight->Appear( m_pd3dDevice, TRUE );( x5 ]! {2 e+ k2 U" j* \9 m
               
  q- G+ u$ G, r% b* b                                DWORD dwR, dwG, dwB;, k" k4 q! ^9 ?2 Y! S
                                dwR = (DWORD)( pLight->Ambient.r * 255 );( K. f( y0 Z3 t8 Q5 v1 m
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
5 G* T) h5 B9 w7 b& B' a                                dwB = (DWORD)( pLight->Ambient.b * 255 );
6 j* r+ U3 I, x+ o' C) h  o2 B5 U                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );% W- U7 h- r* A9 i7 r; d
                        }' A, F+ ]( T5 ?$ ]- q
                }% S( F; u4 r& R+ h) q/ B
        }$ |/ Q8 Z2 ]7 D
        else4 d$ `6 z& s8 E* q
#endif
  ~0 N$ G+ }) ?5 t6 ^4 A9 L
9 s0 X1 Z1 T  d: E5 p        if( m_bIsIndoor )# l) I6 W. ?- r& z
        {: ~# K, k* y& N
                if( pLight )2 `# ^/ f. m. J8 |& W2 \8 j: W
                {               
! n# c- j( e0 U- K7 O* _                        // à??μ oˉè* % r; Q' h# o& V. M7 ^/ T! t
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
3 Y; |& u& b# A! ?                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;4 C3 ^. u* q: G: \: T; J
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
3 g7 W/ _1 z* S; `$ D4 P; v' |: j7 O: N0 b& P9 m2 F$ J
                        // oˉè* ??à? ) J( a3 f* i) a1 n; c% x
                        pLight->Specular.r = 1.0f;
; z' z- ?2 V) M- a                        pLight->Specular.g = 1.0f;
4 p5 ]* b+ E) O                        pLight->Specular.b = 1.0f;. e- G) V# X3 h6 W
                        // àü?? oˉè*
1 f) j+ Q) e: F8 D; G- Z' T                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;& m7 E) ~8 |; L4 N3 O8 E
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
: f5 U' ?# v0 ]& j" J- o1 @                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
( f4 B: Q$ s' _; @8 @* g8 l- R& N8 V& X% S
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??." U* }5 G4 X" a' g: e
                        {! U8 E/ g/ E# Q- v" ~* u
                                pLight->Diffuse.r *= 0.6f;
+ H$ c/ ?. V/ f! z8 a; e4 y0 O                                pLight->Diffuse.g *= 0.6f;
9 P  U) I  s8 h' U                                pLight->Diffuse.b *= 0.6f;
( [) I. G0 J6 W6 o                                pLight->Ambient.r *= 0.7f;
# d3 k' j. m+ n0 ~  A9 Z                                pLight->Ambient.g *= 0.7f;6 i- n* S. V! W3 i
                                pLight->Ambient.b *= 0.7f;
: l; X% v$ G8 _% a9 b* z+ U                        }
, L/ g7 H' ^$ J% F% N3 Y5 k
2 ^2 E  E3 q" g4 ~1 V#if __VER >= 15 // __BS_CHANGING_ENVIR
0 x7 O; S' n. i( g. j7 I0 d$ E- ^                        if( g_pPlayer )
. s/ N0 k! p2 k* l5 G                                HookUpdateLight( pLight );; C( V5 u( g; [& g/ d
#endif
! ~' `6 S# ~3 A0 d* E! @# L                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" w: _7 Q/ }6 f8 V" x7 y: C
5 A. f3 \% q$ R5 a9 d, ?4 H' \5 L                        pLight->Diffuse.r  += 0.1f;! i1 k, I, s) i% @
                        pLight->Diffuse.g  += 0.1f;' t9 z: W" N6 h+ L% t
                        pLight->Diffuse.b  += 0.1f;
+ ?  U* X5 {  X, R0 Q. G% T                        // oˉè* ??à? & X3 h7 n: {) J5 f0 B8 ^* z
                        pLight->Specular.r = 2.0f;$ P! ^9 t3 _' D: h" j: ?
                        pLight->Specular.g = 2.0f;3 _6 r5 \( c( i
                        pLight->Specular.b = 2.0f;
+ q/ S1 ?  |  s% n                        // á?oˉ 3 p* u1 Y5 o* y4 s9 c; B
                        pLight->Ambient.r  *= 0.9f;
  B3 Z, |) r7 |3 G! n+ c& E+ E                        pLight->Ambient.g  *= 0.9f;3 L7 L8 W, L  y* ?
                        pLight->Ambient.b  *= 0.9f;
8 @% Z+ g8 t; K9 Z
2 I5 t) ?3 t& Q! V! N+ s  M' d! {                        memcpy( &m_light, pLight, sizeof( m_light ) );5 u1 @  H5 K4 b+ [5 m
                       
- G& V  E1 ^5 a                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );$ w1 \, L6 e4 e! W
                        pLight->Appear( m_pd3dDevice, TRUE );# C8 \9 x7 S, R; s! Z& c6 r
       
  T2 e: O+ m! `/ [' g                        DWORD dwR, dwG, dwB;- b# i" V, s' r3 T( M- G" u
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
5 Q; ]4 u9 c; F$ K1 \! [                        dwG = (DWORD)( pLight->Ambient.g * 255 );: z2 k# ^+ I, D/ G4 y
                        dwB = (DWORD)( pLight->Ambient.b * 255 );/ r; U. O; F- T/ g/ x! ]
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" g/ S$ F  [: Z2 a: ~9 \/ D( R- V0 ~                }/ R, T7 d+ s- R* z
        }% ?0 O: |' A8 z4 w" ^; @
        else8 B0 B% x# C+ X2 K* R9 T
        {
( n+ o; M% }, T                if( pLight )
, n9 H' G! A! @+ Z/ {9 k                {
' B8 M5 H/ c9 a# ~               
( Q+ @8 z9 ]- T+ I                        int nHour = 8, nMin = 0;
* `8 T) y% m4 A( L        #ifdef __CLIENT; A& V3 W1 H% A) n5 W# Y
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
- B+ b* B6 H& q0 S( a' D                        nHour = g_GameTimer.m_nHour;
' {) ~$ t) N8 U+ b' \" |1 y                        nMin  = g_GameTimer.m_nMin ;
9 x% X$ e  b+ j6 w. W% `- V' f        #else
1 ^3 q. C# B6 t                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.  ^/ v4 [9 Q! k+ @# v" d! V
                        if( m_nLightType == 1 )
2 c+ M# Y( r! v1 `6 W& f# w8 h/ W                                nHour = m_nLightHour;" g4 `4 G  Y, }& l# U' Y
        #endif( M) h# ]! o  e. \: j+ a5 w
                        nHour--;5 F* z' U' s! @8 I5 J0 [
                        if( nHour < 0 ) nHour = 0;
7 h/ D' [% i. N0 C) R                        if( nHour > 23 ) nHour = 23;
; @" \: @. q: {4 I! \- y, r1 V! W8 i+ W
                        //if( m_bFixedHour )- j! v- G5 \7 j. |* M+ |3 W% Z
                        //        nHour = m_nFixedHour, nMin = 0;
% e/ S, R& {$ [                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
/ R% W1 F- E# @                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];( G8 o! E; T. F; ^9 ~$ M

+ L+ \/ u& O( @' f) S: O                        //m_lightColor = lightColorPrv;
9 `% X0 w1 N& b% v. R                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;" H1 M  X) [- q- w4 s* x" ^
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
/ g- [; d7 ?0 B# i! q& I& L' w: f                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
/ D3 ~3 a" C4 E. z6 X; G) d7 E                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
" n" Y3 W: j' r5 V' r3 L+ D0 _                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
" S: K5 d* W  J  B  N% z                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
  c2 @. p* r8 O$ P; y& x6 E                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
8 ~/ ~8 {$ q( C2 @
$ ^5 a6 H  z1 g2 E9 j. O9 E8 W) d                        // à??μ oˉè*
3 ~6 g! P1 k- m: x9 {: f3 z; B                        pLight->Diffuse.r  = lightColorPrv.r1;6 P  j- `: w. d5 m
                        pLight->Diffuse.g  = lightColorPrv.g1;
* T% p) z" R. D4 h# u  P+ I                        pLight->Diffuse.b  = lightColorPrv.b1;
# s# b# \) Y7 t7 R                        // oˉè* ??à?
! M9 v* y0 u( g- k                        pLight->Specular.r = 1.0f;5 B' e* I! R* i2 R/ q; Z
                        pLight->Specular.g = 1.0f;
  b  [9 a0 b( |& E4 ^0 r/ e7 l' x                        pLight->Specular.b = 1.0f;5 G8 d! d% N3 ?$ K3 l+ ~( r8 c
                        // àü?? oˉè*
$ L* Y6 u0 W+ V# I                        pLight->Ambient.r  = lightColorPrv.r2;7 k+ F+ ]) A' t1 g+ F, R! k7 G
                        pLight->Ambient.g  = lightColorPrv.g2;1 B8 S; E# ~( J% L9 M0 p, N/ e: D; ~% z
                        pLight->Ambient.b  = lightColorPrv.b2;
4 \( Y' @5 [6 x1 o7 t- E9 R7 [9 q/ |# Y1 d" b# j0 d! u1 w7 \
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.# ^5 R* r" T6 M1 k% s( y1 Q% H
                        {
1 J' Y, U. Z* u% I/ g* W                                pLight->Diffuse.r *= 0.6f;4 K2 x* c# k$ S8 i  M
                                pLight->Diffuse.g *= 0.6f;1 G. m* d7 D# g3 p# X3 A1 m
                                pLight->Diffuse.b *= 0.6f;- W! K& C& Y- @+ v
                                pLight->Ambient.r *= 0.7f;
. q% O% h% z: U% y" e4 C                                pLight->Ambient.g *= 0.7f;
) F) [: @1 K0 }9 {+ l& h                                pLight->Ambient.b *= 0.7f;
9 P0 N) E; L( ~8 q/ @* i6 p8 k2 K                        }
: E4 [$ H$ }) S3 n# l                       
; q9 f6 k3 p# V) [#if __VER >= 15 // __BS_CHANGING_ENVIR9 D1 Z( ~& M2 x' d6 y
                        if( g_pPlayer )) D" o% k6 x  c5 y/ M
                                HookUpdateLight( pLight );
; b' P7 i; @' P' S, e$ c, i5 _#endif$ f" M% r5 r8 U" q& [* N
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );4 X& }* ~" i, L- Z( m4 v5 ^
8 C8 I% L- x/ e' t4 H5 K, D
#ifdef __YENV
( `8 [8 d; d7 u; g! o                        pLight->Diffuse.r  *= 1.1f;) z7 y- Q$ n! {; m; w
                        pLight->Diffuse.g  *= 1.1f;
# K$ H% R  d3 @4 Y+ y                        pLight->Diffuse.b  *= 1.1f;- r) T9 o+ q9 `4 _1 A: Y
                        // oˉè* ??à?
5 g" F  h4 v( b' Q; i                        pLight->Specular.r = 2.0f;2 U2 L! v! h4 D5 b  |0 `; h, C
                        pLight->Specular.g = 2.0f;. o3 |" N7 y8 @
                        pLight->Specular.b = 2.0f;, {# e  M8 J& v4 n5 D( T
                        // á?oˉ 3 U) x1 ?6 S) D6 N  d& N
                        pLight->Ambient.r  *= 1.0f;
, P; G' E3 I' q2 s/ B                        pLight->Ambient.g  *= 1.0f;9 I5 G- {5 X5 h, P- V9 \2 E
                        pLight->Ambient.b  *= 1.0f;8 |$ o3 w. O3 J! O! T/ l8 n5 @
#else //__YENV! [4 r8 L; b  r
                        pLight->Diffuse.r  *= 1.1f;4 l4 V) [8 h5 a' U' w
                        pLight->Diffuse.g  *= 1.1f;
1 b; n7 f( D, \                        pLight->Diffuse.b  *= 1.1f;
3 z5 ~$ ~9 ?; Y" K                        // oˉè* ??à?
2 z  Y% u+ h9 I* N6 G                        pLight->Specular.r = 2.0f;' |; d* e3 Z" V4 y  ^0 |0 r/ s
                        pLight->Specular.g = 2.0f;
6 I+ c6 R  `0 M1 {7 C: I9 y                        pLight->Specular.b = 2.0f;+ r. I' b5 d+ l1 `$ p, T
                        // á?oˉ
! U" h' y( n9 U9 I$ \) r                        pLight->Ambient.r  *= 0.9f;
0 A1 s' a) z7 r- u, f5 |& X+ z                        pLight->Ambient.g  *= 0.9f;
1 _. b. s/ W) R* m4 h3 C4 H0 A                        pLight->Ambient.b  *= 0.9f;' k7 f9 N, _$ p  z. q
#endif //__YENV 9 R5 [: ~4 S8 S( g8 i! d2 x. D
                       
% E7 n2 B; t+ M                        memcpy( &m_light, pLight, sizeof( m_light ) );
# t! x/ ]1 E' F/ L                       
. V2 G+ T. n4 F2 [- u                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
, c, I. W; p6 `  r& f) k                        D3DXMATRIX  matTemp;% h. @8 I8 J* I8 Y- n8 c
                        static const float CONS_VAL = 3.1415926f / 180.f;# q- L, B* ~$ L

7 m; O- a" Y. I0 @2 \6 Q/ ]. L                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);6 @5 ]6 T* }' M! l0 N6 x: l
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
9 v5 L$ L; n4 F5 O5 ]; c; p* I                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
, @5 R; E' M% a( g( {: a: v) C                        pLight->Appear( m_pd3dDevice, TRUE );' i( \* a, H  b/ m6 f

3 U+ r. U* |6 [/ W7 ~                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ l1 @2 x8 q# Z7 T1 g8 a                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
- j0 P% H+ ]5 V! y$ M5 _                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
- Y  X; @" O! A+ t6 P3 G2 S$ v3 k
                        DWORD dwR, dwG, dwB;
, i: @, y  E" j. C$ D                        dwR = (DWORD)( pLight->Ambient.r * 255 );  b% b. E: X( ~( ?( z
                        dwG = (DWORD)( pLight->Ambient.g * 255 );+ ]% p, v5 `* X. I4 X" v2 P! V6 ?. h
                        dwB = (DWORD)( pLight->Ambient.b * 255 );; ]5 H- P0 j) j- {- D
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
# ]- H1 U) n- j! C  Z* }6 q                }! u* r/ s9 R& F$ C8 c% ^
        }
0 B1 x) g  @3 G
) G" Z1 o& A, h* e        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
1 |% _4 f7 A# M( ~/ D        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) );
. v: I, p5 H/ ]2 \$ I+ |        ::SetLight( bLight );
7 G4 z& E2 A( m6 \; a' f+ Y0 E& d9 w) m6 z$ B* N
        // ±ao? ?D?í???ó á¤à? - `6 Z) G8 E  C4 [# w  Z
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
+ f4 }* w8 h; \! x6 {& X          P7 P; q; F5 O6 O( ?
#endif // not WORLDSERVER
1 y8 V7 m: @/ L  O/ L}
( s7 x) U* _) @$ L5 B并更换0 O9 ?% T5 O. C) y) v5 n
Code:. U; [% q: P! J, j! H3 l) y5 s1 k0 B
__FLYFF_INITPAGE_EXT: E2 E6 u1 N* T: E/ S
定义  n9 p  k1 s. @6 m3 [, @- x

6 d& U# X* R9 I2 D4 ?, h* \. T/ @* D' X" J6 F
2 Z- k" J8 A. F! ^! W; @4 Z/ R

, E# X" Q4 M. v! t现在终于删除我的狗屁加速..., Y- o! z# S# Z- {+ `# \

4 z, k: r: q7 f- u
* l* g  Y$ k, U( `& T) V
! \+ ~5 X; D+ X. Y! \* n




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