飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
, \) d0 M/ S/ d; n* k0 k& M# u尾翼:
) U$ u% ?5 Z) r$ d$ x$ N: V6 R; ]' `6 h6 J' |6 X
代码:/ b: I- |5 V. W' l
CWndAutoFood::CWndAutoFood()
1 `4 W& B4 }  x0 E' x- t7 k$ o{+ r* K/ y1 I3 X. `4 Q4 H4 I
        m_pItemElem = NULL;7 D' |& }- l# U0 e: g
        m_pTexture = NULL;
/ J- p. ?! `# I5 m. c! I- r        bStart = FALSE;: Q4 A' G8 V1 M
}
" ^4 R: e! u5 s) ]1 P7 F; v
& b; x; }+ B6 A: T" S( N6 Z* PCWndAutoFood::~CWndAutoFood()
8 N; f( I' ]) C, T& g  P/ d4 l. S{7 q. V. r* W8 J: w9 f3 Z
        AfxMessageBox( "AutoFood ist gestorben " );
# y- w" i: j, ?* p6 f9 H}6 r9 w* f3 l9 x- c& T% g- l% }
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )5 O$ p6 w( P5 I! @
{; D  a, a' }8 B- H
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );% O. i  A* Z' ?: ~, a" K
}6 Z+ f% Z4 ?6 h* |! G- P# K) Q
. L4 R8 E' ]+ D  i% j6 h+ \, ?
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
6 k9 P0 U" j! l: i4 p{
  Z; j$ J* |* [' C1 J* K; K" }2 U        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# `, T( C6 M9 N5 ~& P        CRect rect = pWndCtrl->rect;, a2 |" Q2 c' N" d! z5 N
        if( rect && rect.PtInRect( point ) )# S! v. k8 s' i
        {
0 b  F3 q$ k2 j0 D" W3 D0 n# k  v                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
3 W+ Q2 X% a* ^                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ M, i" g  A9 ]* E$ x& a! @) \  r                {+ t% {8 l. {# q9 O, m' ^/ {$ h( P
                        if( m_pItemElem )
+ _. ^# N) e# ]7 I% A2 g) Q                        {0 g" A5 _4 s3 D
                                m_pItemElem = NULL;
; U% X7 {7 N/ W  g7 t3 e- E                        }
, x, \" l# ~+ ^0 ]                        m_pItemElem = pItemElem;
& c8 {8 L6 i5 I. ^/ j' X                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );9 Y" ^6 D5 N8 s+ k% v# P- X
                }else{
+ ~6 l+ v9 N& F0 u8 l5 c& A9 F( G                        SetForbid( TRUE );
! g% f5 a7 D1 y! V! g( R7 E/ X                }
/ Z! ]8 z0 K- E        }else{9 P7 ]  k: G6 ]9 c8 g4 }. c0 e: V
                SetForbid( TRUE );
3 t& b0 M7 s; L" l6 S        }& |5 ]9 K5 O  z* Z% m
        return TRUE;
: R! h5 B6 T! {- [* r}
' r! x$ m' d; e  o% U7 f2 `
$ v$ x5 m8 a  \1 EBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )2 x5 i6 s$ @8 ^- G! Z# g5 J
{- R; g" s5 N; @# @. t6 ^
        switch( nID ); ]/ F2 j  ^3 H" m
        {
2 j! ~" C& T  e        case WIDC_BUTTON3:
  X* L) D2 d& I, |. M$ F                {
& O9 I) P! h+ k* s* n, C8 y' |) G) c2 X                        bStart = TRUE;
1 `; Y1 O* Y4 S8 }+ O                        break;: J/ h# |! e2 W3 f7 l: K2 r
                }
' D" T6 ~8 x% @( Y3 v" f$ ~: [        case WIDC_BUTTON4:/ N  n3 |5 l) y
                {
9 }, l, w+ m3 |) e3 z+ ^1 L                        bStart = FALSE;
0 A8 }( x# j' z7 k2 ~5 C) r% I6 U                        break;
! n6 N4 Z* F( q4 y3 _9 V                }7 V4 X/ U/ J' M. P
        }& P  E+ z  x* N
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
+ U: o5 V. p6 Q% x4 ?# R. c: l9 ^8 z* W}        * u6 v# k: P: K: m! D5 z
void CWndAutoFood::OnDraw( C2DRender* p2DRender )$ R5 \  S( G( I$ `
{! j- z% K5 z) ^4 C/ E; Y
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
2 {9 s3 F8 Y: w7 L# @        if( bStart || !m_pItemElem )
' K0 b# r4 x0 D( M        {; [' b2 P& Y! r3 [5 u
                pBtn->EnableWindow( FALSE );
: T- `+ `' F4 \1 g: w: P$ s        }else
" K2 r/ s% ^4 a$ M6 s                pBtn->EnableWindow( TRUE );
2 V1 Q6 j) k- J9 T        if( m_pTexture )' k. N5 V3 E4 }. u3 U, E6 i, I
        {
9 \- P1 X& b; `! Z' H8 M6 Q$ @( F                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# ^9 ^+ l- k% h# n                if( wndCtrl && wndCtrl->rect )
, G3 g1 i; b0 u& x, p9 a7 q% I! E                {
& f! l/ O# `% q0 ?' E                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
9 d$ W# b# n% [* P6 `                }
& D, \: H  v8 h- U% n$ X: o# ~5 q        }' o' N* D# f- R) a
}
6 X: O2 a2 g6 F# j0 j$ W
; s# [$ E* j( N- Z7 O- w+ e( DBOOL CWndAutoFood:rocess()* A8 K% u: Z8 A+ X0 r9 v
{5 u! N, M5 O6 n
        if( bStart )6 Y  A% p( E1 g' T) n
        {
% m  {+ p( _0 n- @8 l& D% ~; T3 l                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 ), b; R3 J' L. w6 d! ], n
                {
8 R2 b2 K& [4 E" V' e4 L1 P                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
5 q  y! B# ^' ^; N5 w                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
" y9 d" H) H# r                }else{. k. k6 B( h/ u- C) R! W/ J
                        bStart = FALSE;9 r( g: U/ F0 o9 T$ I
                        m_pItemElem = NULL;7 F1 g2 |3 R( t1 w0 ~( W3 P
                }
- m9 o5 w) J' @; a0 e! a        }
5 m0 {; q; G; @: H/ |( i        return TRUE;
7 K! c+ ?+ O$ S: x- q0 c3 q}
, _% o% n+ _: h/ j9 Q! i* w
! t* D, h7 Q* H' ~登录视频废话:% C( S: a7 g7 q1 Z9 Q: N6 Q
尾翼:% i7 s- E+ J. `" v& U3 p- y0 T. P
5 n6 i1 c9 x* _  k1 O- `
代码:
1 `5 J9 q' j- U) H0 @" y8 X! Y
# X7 b; j" L/ q, s1 @! F6 J' M* N: W0 rvoid CWorld::SetLight( BOOL bLight )
! [) u& B: V9 j  ^% y7 V9 x7 ~0 @durch# n* j* k- I/ r3 j1 F
Code:" X# P% e8 r6 F) O  l. w' F
void CWorld::SetLight( BOOL bLight )
1 @/ O! k+ q6 w{: e6 i4 ~( S+ i" Z' D9 G5 j7 e
        //ACE("SetLight %d \n", bLight);
3 T# ~* s  B* |6 z  j' j1 Q+ `% o        , ]1 i4 w% U( j# ~
#ifndef  __WORLDSERVER + ~  P- h5 n7 p1 r( T
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
2 q0 A5 O, r" |1 q, {9 A, b" L1 ?- `        CLight* pLight = NULL;
2 Q# y; \2 G: l) O' G) [1 y( M# ]3 a- O( f
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
4 L9 i6 g" z3 o  ]0 N# Y8 N1 g* C
% s! a) d6 p; }8 d4 U, o6 O        pLight = GetLight( "direction" );- ]( u0 r- {/ \2 E1 ]3 V& M* e

- c1 U: t4 b* g, M  `6 I#if __VER >= 15 // __BS_CHANGING_ENVIR( K" z4 q, y7 j7 N
        if( g_pPlayer ){
0 k* A, }" k$ m! [9 u. }9 Z                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
5 n. z9 w2 u! R" X9 F                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!" Q* l4 c5 }# D' t
                {
3 h" e1 P0 w+ F7 |6 U9 H+ W                        if( pLight )
7 F: Z7 p3 W) n                        {9 G, Z8 F6 [  k/ L! }
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];+ B+ M5 T8 v- V( k2 K  N* Y
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];/ ]7 O: {6 I# ^% A
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];4 D  q+ y! @2 _
4 [) D, }) T) v9 N% Z  {: Q, v: M
                                pLight->Specular.r = 2.0f;+ N+ `$ b: I, D+ L8 U
                                pLight->Specular.g = 2.0f;5 E0 j# @4 Q* i- v2 @4 U7 |
                                pLight->Specular.b = 2.0f;
" E; C) s5 |! w( c6 D8 O' [, G. @        6 G" X2 {/ W2 Q- h
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
; Y0 P7 g$ l& \/ c2 k3 v1 g                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
; O' B8 J! a' e2 }5 G                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
# `4 F7 N" G" f, H; s% u+ X/ x5 @       
- e7 O0 ]: A0 K                                HookUpdateLight( pLight );
& U- }; Z4 W3 `4 d9 M, m% s( z- W3 j7 H6 m
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 J  Z* L) `( k" `; j               
! ]7 V! a; E; G3 s  i* B/ N                                pLight->Diffuse.r *= 1.2f;6 e  S9 N& ?6 S
                                pLight->Diffuse.g *= 1.2f;
! ~. j3 a$ ]$ V+ u' Y6 p6 S                                pLight->Diffuse.b *= 1.2f;3 R+ ^6 V. i% I' C

. e5 h9 Y* R) N  ^                                pLight->Ambient.r *= 0.8f;
! D7 @& O! @( A! i                                pLight->Ambient.g *= 0.8f;" J& a/ U! ^. s5 \
                                pLight->Ambient.b *= 0.8f;) M# w8 \  N5 c; Y* l
       
" W+ R4 W5 S& i, c6 Q; E4 t6 l$ w                                memcpy( &m_light, pLight, sizeof( m_light ) );
! K' ^* k* `" w% o, e# b$ s% e) p& U+ N
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; |+ V# Y2 j" S5 Y* B- [3 i                                 D3DXVec3Normalize(&(vecSun),&(vecSun));7 ~# R, v! t* M0 m$ n
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); % S9 a* z, B# M* w% S
                                pLight->Appear( m_pd3dDevice, TRUE );- O! E- d) m: [( {4 P
               
  t/ ^5 A# l; Y3 i9 c) D$ G                                DWORD dwR, dwG, dwB;
$ F1 P; |6 A6 s. J3 a                                dwR = (DWORD)( pLight->Ambient.r * 255 );
4 [& o# f* f) o+ F3 ]/ b  u3 m$ R                                dwG = (DWORD)( pLight->Ambient.g * 255 );# j9 h. Z+ \+ o' }! O! g/ m  M
                                dwB = (DWORD)( pLight->Ambient.b * 255 );% O: S; z4 ?) W  l' ~
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );/ j6 q7 |( a: f$ }1 b4 c: h: W% C. u
                        }0 p. }/ A2 c0 f6 X
                }! O# ?: s! y/ K; p
        }
. }" c& S- ]+ s9 O/ @5 Z        else6 I* X- T& F4 `" @* W
#endif
; \% A, }7 R% ~- E8 _. [0 M' E" f5 D' U# Q2 ~, n& h1 _
        if( m_bIsIndoor ); S6 K* z" g- K/ T: q* B, U# B3 Q1 t# T
        {/ r+ z- V9 V: O9 x4 N5 T/ C& }
                if( pLight ): t+ h* Z" d- [: _( B
                {               
3 B( J" c* a6 w$ r  v                        // à??μ oˉè*
" a1 j) X& E4 F, [                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;8 F7 I* I% p# f* [* ^' F' x! ]
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
4 f6 C8 I& ~$ V* k                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
+ w% T* S" A8 G/ p; [$ W2 s/ V; S- {9 r1 B: X* T6 ^* O. N  b
                        // oˉè* ??à? 5 Q* O7 I3 s  M! D6 H, T
                        pLight->Specular.r = 1.0f;- |, R; @2 ?* P: N* `; h
                        pLight->Specular.g = 1.0f;
+ I4 e: l! D- x+ J& R                        pLight->Specular.b = 1.0f;
+ S+ V, F+ W# T/ T# Y                        // àü?? oˉè*
( c& F2 H3 ]! J' |! B                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;5 Q1 z& ]+ R; L
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
( H' f; Y$ O/ u# A* z                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;! k) h9 l, W+ ]

) L: F- p( F0 C/ ~- G( a                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.- ^  z3 [5 {/ k; v' g: s# ~" i; [# E
                        {
" m. h: B5 Q) D1 `: ~1 X: ?                                pLight->Diffuse.r *= 0.6f;
+ R  J! h6 ]' v$ ~- W; T, B                                pLight->Diffuse.g *= 0.6f;5 }0 a4 j0 V$ C+ [. t
                                pLight->Diffuse.b *= 0.6f;3 w; J' {6 a# e& S8 ]2 s
                                pLight->Ambient.r *= 0.7f;
& X3 Z- F; i4 `1 C* |5 g% b                                pLight->Ambient.g *= 0.7f;+ x: \- ^  R0 t) a5 f6 O
                                pLight->Ambient.b *= 0.7f;; T* G: ?6 B2 P6 p* A
                        }$ r( M7 F4 v$ q$ }4 c' Z, P7 T: U) s

. N& q: B  F2 ]7 _) h#if __VER >= 15 // __BS_CHANGING_ENVIR
$ j( [. I. W0 q& s$ @                        if( g_pPlayer )
6 ?! J# C: L& ?5 w                                HookUpdateLight( pLight );
3 U' K+ m8 l3 ~#endif
9 O8 }- e2 o5 b, H9 ~+ F; M$ y                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 R0 r/ C9 z" j& W! y2 C" N5 u6 X$ q# l- H& Y
                        pLight->Diffuse.r  += 0.1f;
0 h9 `, e4 T% _- C1 {/ q0 k3 }                        pLight->Diffuse.g  += 0.1f;
; E9 r+ g5 _; `                        pLight->Diffuse.b  += 0.1f;
! W! ^8 ^* h) \# k. J% A                        // oˉè* ??à?
; @3 P/ M3 H' t( n                        pLight->Specular.r = 2.0f;2 D5 K1 A2 N1 ~  G6 f, o
                        pLight->Specular.g = 2.0f;6 z; l% y" m0 X2 F: \; Y/ D# A
                        pLight->Specular.b = 2.0f;$ `& A7 u+ t8 S; h
                        // á?oˉ
# U* b1 g8 E2 P! c                        pLight->Ambient.r  *= 0.9f;
( }: T( A7 M# I, E8 r4 `' O2 W$ ?                        pLight->Ambient.g  *= 0.9f;
  Z$ M' `4 D6 }! A" z) D                        pLight->Ambient.b  *= 0.9f;9 s( ~$ f2 d6 y) V5 q# `& s
. J  g8 e  ^" c' v4 {. F
                        memcpy( &m_light, pLight, sizeof( m_light ) );5 |% @& s- z  Y9 O  m
                       
: v8 m2 J; b7 J7 w" F                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
% d: s$ |8 J) O) W                        pLight->Appear( m_pd3dDevice, TRUE );
' x( l7 K2 L' ]! C2 W7 b3 Z        + K- x8 r9 z0 t. D) d
                        DWORD dwR, dwG, dwB;
0 C4 u* I& b$ j9 @) r2 B; N                        dwR = (DWORD)( pLight->Ambient.r * 255 );% V' {4 e. o6 U+ z2 A% K: O
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
% j. k* `% d, K/ d5 Z: E; X- K: S& v, v                        dwB = (DWORD)( pLight->Ambient.b * 255 );
$ c- t- O0 H2 n/ k6 U; D. {                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );/ y0 y' j5 h+ G, u2 ?
                }4 [2 {# R/ G/ w3 m7 c5 J* g
        }
" z, T' N2 d9 F        else
. W0 H* k* q( N0 `        {3 b; \5 Q. r$ [& }( q9 v
                if( pLight )! @" h8 k  K2 z8 G
                {
8 Y* p6 X0 `/ R/ K6 U: `* X               
7 I& k1 t, u% n2 v9 w# v: D3 m                        int nHour = 8, nMin = 0;
: B& k( v( m, ?" b. H# R' `1 n        #ifdef __CLIENT
  V" g# `9 `$ h& K/ H. x: H                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. ( o( f' @& F% P- }6 R5 L
                        nHour = g_GameTimer.m_nHour;3 h2 v! n5 `- V  D1 Y
                        nMin  = g_GameTimer.m_nMin ;
6 x1 M+ L! O7 b0 N5 D        #else; B; U8 j: c" f
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.$ V' T% H& m6 V5 m
                        if( m_nLightType == 1 )5 w5 x% M: h- z
                                nHour = m_nLightHour;
! G* C( A4 J. b6 Z; G        #endif" \$ J0 }. u# w& m
                        nHour--;
5 l9 v* n/ y4 B; D                        if( nHour < 0 ) nHour = 0;
! E* K+ }% [: Z: W  M                        if( nHour > 23 ) nHour = 23;
& r6 [1 F3 Q+ Y/ n( H
! B# {( d* z% ~8 j% |9 b' ]( \' m                        //if( m_bFixedHour )
0 L) s* Q- w: N. R5 x                        //        nHour = m_nFixedHour, nMin = 0;
8 |3 e, R! y4 X; F                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
5 U) U: a+ X7 ^4 W3 ?! L( G                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
: u7 X9 Q4 I5 @6 |' H$ P7 L1 Y/ }% G! H% @" b. j9 Z$ D; i
                        //m_lightColor = lightColorPrv;$ ~) B9 C- h$ ?; y& y
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
) J" A$ N6 ?% ~" `  B$ V7 a                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;& R& \9 T' v: B) N8 j  K
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;$ O! T5 w, D( X' W2 f( Z& S# e
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
1 G( G4 S7 q# n5 {; P# d: s3 O                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;- Y8 s# Y- X! W1 N
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;7 B$ ~) M: x, J1 n2 C
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)* G5 @; @- l' ^8 H! u4 c6 x7 Z

3 e0 m) H* u, e+ z3 s3 f                        // à??μ oˉè*
( u3 }; h$ r* w; S* [                        pLight->Diffuse.r  = lightColorPrv.r1;4 L* N: o0 Z5 v! j9 c$ Z+ C6 z9 D" V# @
                        pLight->Diffuse.g  = lightColorPrv.g1;+ R; `6 S7 t* q( D+ b- V; H
                        pLight->Diffuse.b  = lightColorPrv.b1;
! ~) Y9 G. ]1 m, Z8 ^8 Q* `% G                        // oˉè* ??à? ) n. {2 r" x! q  i; V0 t
                        pLight->Specular.r = 1.0f;2 c( q# c9 |4 f
                        pLight->Specular.g = 1.0f;
" ]% W9 W! t- X+ r, u: q# m                        pLight->Specular.b = 1.0f;! O, n+ i2 F7 i
                        // àü?? oˉè*
* ^2 ~* O; [  g6 B* y& B) _+ V) [                        pLight->Ambient.r  = lightColorPrv.r2;+ h! x1 m4 L6 h5 c" N# i
                        pLight->Ambient.g  = lightColorPrv.g2;7 k/ `. O( |# S( Y, K+ ^; x
                        pLight->Ambient.b  = lightColorPrv.b2;
/ X' H0 N+ E- h' B  U7 I
" D3 L( M% i* @& X$ J! h: p                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
$ }4 [' g  g' X- n- q- b                        {. Y8 l$ k* z5 ?2 L6 s/ G* I1 r1 Y' \
                                pLight->Diffuse.r *= 0.6f;
' c# @; p) C, D( a# |3 c$ K9 r3 B                                pLight->Diffuse.g *= 0.6f;
/ p, |: L) q( P3 ?% u& q                                pLight->Diffuse.b *= 0.6f;
5 m: P' v! o9 B" K: _                                pLight->Ambient.r *= 0.7f;: d9 m5 t2 Z9 Z3 [* b
                                pLight->Ambient.g *= 0.7f;
( c  S' f$ K! p! v# l                                pLight->Ambient.b *= 0.7f;# z* B5 \/ _2 L2 {
                        }
8 ~- L9 z8 t/ x' y! ^; g9 \2 J                       
. g' v# }4 V# H- w#if __VER >= 15 // __BS_CHANGING_ENVIR! C' C5 _$ ?$ _+ ^2 o
                        if( g_pPlayer )& w& Q, V& A7 X
                                HookUpdateLight( pLight ); ( N0 a8 g6 f+ g! ?. i* l3 j
#endif' Q8 x+ ?) \; m  i) W( ~
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );, `8 i# x. p) A4 \% [' E
5 |4 u5 O$ w- w  }6 _
#ifdef __YENV
; Y$ H. R; t, ?                        pLight->Diffuse.r  *= 1.1f;% Z8 k0 y3 |! |! p1 B" B9 t; F( }8 j- F
                        pLight->Diffuse.g  *= 1.1f;
, N8 R& Y: t) s! d) @/ M1 d                        pLight->Diffuse.b  *= 1.1f;$ ~- ?; _" R1 H1 t7 p# V. v& a
                        // oˉè* ??à? 0 l% s* m7 @2 \3 }' W
                        pLight->Specular.r = 2.0f;
6 h- S# |8 g0 W2 ~' @                        pLight->Specular.g = 2.0f;
+ g/ {3 I1 h1 z  i0 T8 {                        pLight->Specular.b = 2.0f;$ K5 `- l' U; H1 x7 L1 `
                        // á?oˉ
& r6 t7 A/ B  l- L                        pLight->Ambient.r  *= 1.0f;
& h- P% t4 @8 |" K# j: V( F6 h; A2 L$ x                        pLight->Ambient.g  *= 1.0f;
! G9 [* S$ p3 H- y/ K) r                        pLight->Ambient.b  *= 1.0f;+ f* @7 C: z- j% D, c
#else //__YENV
" }1 G, Q  ~2 H5 e8 L                        pLight->Diffuse.r  *= 1.1f;: A, X# }( j" F9 ?+ o7 _& W6 l
                        pLight->Diffuse.g  *= 1.1f;+ |+ e7 K: @2 q2 f0 a
                        pLight->Diffuse.b  *= 1.1f;+ e+ Z) g0 @1 v" ~
                        // oˉè* ??à? 9 Z8 e& s- e: |5 t4 d9 @% |
                        pLight->Specular.r = 2.0f;% @+ s1 B5 I) M* ^' {9 J9 @: P: V
                        pLight->Specular.g = 2.0f;
8 Y  r& }# E3 M1 l  m" f                        pLight->Specular.b = 2.0f;: y  l3 O0 Z; R( l
                        // á?oˉ 5 C* |" I; A! g9 O3 C9 `& j1 {
                        pLight->Ambient.r  *= 0.9f;
& _' |' A2 [# f2 i% \                        pLight->Ambient.g  *= 0.9f;
9 f' X9 S* J5 D' u5 ~                        pLight->Ambient.b  *= 0.9f;* w; e, _! A( M# L" i
#endif //__YENV 1 c7 Z" C$ S' _& a' n% W
                       
- [6 z$ M! d7 w                        memcpy( &m_light, pLight, sizeof( m_light ) );3 K# |! t$ T- |( k, u
                       
3 ^/ b+ @% i/ B                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
! U3 [0 @1 P: N  ~, O9 }# M                        D3DXMATRIX  matTemp;
0 J3 o5 V: e4 Q1 N- ?8 N                        static const float CONS_VAL = 3.1415926f / 180.f;+ i7 D% |. L0 _' ^% W- h
" L! L: k& C3 T' O( D9 b" p. Q
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
) V/ ^! W4 }7 U: q" H& h: v) y                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
. p8 n6 i, W( a* D+ P8 v, R                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
  D2 Q: |! P/ P+ z5 k                        pLight->Appear( m_pd3dDevice, TRUE );) o! ]( @- I+ d) e( ?' T( O; a; x
) _% g; o( z1 [, }1 V' D
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
! P9 ]. g; v0 k. R! _% \                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));$ `" U  ?1 o( d" c& b5 C5 e
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: r) u) c5 T! B2 t/ E3 D' X5 \2 o9 F8 M, y% ~4 |
                        DWORD dwR, dwG, dwB;
  B  k! i: G7 [/ l8 n) p7 \) P' j: X                        dwR = (DWORD)( pLight->Ambient.r * 255 );, l( _# x7 I/ d! p, `; V
                        dwG = (DWORD)( pLight->Ambient.g * 255 );% v: i* O  T9 l& a4 H/ u9 w
                        dwB = (DWORD)( pLight->Ambient.b * 255 );: {7 E7 R" c0 l8 |
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
! k) ~! P# o8 t                }3 ^) X7 Z1 q* W* {  Z& h# m. ~+ p
        }
! h7 T# W) y' {! J, A4 Z* a
5 l) R. w$ s  k1 ]9 H! y2 a9 B" G        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
# }' I- s# T) N7 E7 S        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) );
0 z% O+ A: I8 k7 H% |2 ?% }4 Q        ::SetLight( bLight );
% Q* p7 o7 r2 K; j* B- w. `& U0 W; ]+ m* k3 l4 Q2 K* n
        // ±ao? ?D?í???ó á¤à? 1 O: G# S/ H  V) M
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
8 e. h, C( j, J& z4 ~        ) S, \0 D: S5 K
#endif // not WORLDSERVER
3 Q1 w/ ~9 T4 v) G}2 N+ H2 |5 _( y# Y. L
并更换$ e/ }$ Y1 k  ~! ]# o5 ]3 b
Code:9 b7 h0 h# E4 l7 z6 j) X# d# H; s
__FLYFF_INITPAGE_EXT/ |, U. F4 r3 t9 H; u  f+ v
定义% l3 Q- \$ I: k6 x# Z5 b

* _- U, u; |) `: P) |
# j) x" O+ E4 u. z$ x5 {+ u* c
0 m' s  A& A6 f& P
: S. B$ U" j- _) |现在终于删除我的狗屁加速...8 d- k. E0 v* y  U

+ N2 \3 ~3 I  B
1 a% a3 s- l2 z& n- M
9 q) M: z; T4 A# R  D$ K




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