飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:7 k, T0 o0 C5 _, V$ v$ E
尾翼:; r/ B& N) Z2 R' G
; L# l3 f: e% }* G
代码:6 b8 T. `! h0 I( m
CWndAutoFood::CWndAutoFood()7 Y0 n2 G) c, Y; C+ [$ T
{
& m6 e% K; ~( i% `4 }/ p; o& a9 `8 ]        m_pItemElem = NULL;
( U8 K: M, k" _% k( a4 h7 `9 m        m_pTexture = NULL;
/ t/ h- _$ c' X+ X/ S$ Z2 l        bStart = FALSE;
5 f6 `6 d0 @2 t$ n! W9 d; V2 U}% k7 k. a; r4 e9 D9 g; K
& d' q' A7 w' q5 T5 b) F
CWndAutoFood::~CWndAutoFood()
7 |# @" r$ ]  E{! K/ ~3 w5 x& R" K' J1 W- u
        AfxMessageBox( "AutoFood ist gestorben " );
. p% ?: D! I+ x4 X; k. Z) J) I7 }}
( o  [; [, B) Y( @BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
2 V3 a3 R# x( ]4 y5 K4 @, k7 o' u  X{; j' Q0 n1 V/ B' q5 A( N6 J( h
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );1 _3 ]) N; ?; e% M5 P6 b5 D
}0 b7 M7 z: l0 K# p, h8 E7 ?0 Y

7 F3 y- \+ w4 V4 S7 JBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
& _% t6 C( n8 \& P+ }6 D{
! F# \7 ~0 T% e. l1 X        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );% K4 f! O0 m. _5 O7 N8 ]& Z
        CRect rect = pWndCtrl->rect;" H1 F3 g. h% ^0 Q$ ?( M0 R) s% E
        if( rect && rect.PtInRect( point ) )# |% x$ S  B2 h7 j
        {
* h- M% I4 _  O7 d/ t                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
% I4 @, ]( b' r. k0 G                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
- w$ t* p/ r3 G( h8 j) K6 D5 C$ v                {
9 i9 X4 E1 z/ A$ k' Q                        if( m_pItemElem )6 d9 ]. h9 e8 i4 W- J; e7 l9 Z! s- i
                        {. Y0 R* _9 ]( V* X0 X
                                m_pItemElem = NULL;
9 _2 k+ Q& v. m4 G" z$ `+ u( Y                        }0 d" y0 ^1 Z( T2 B% X
                        m_pItemElem = pItemElem;+ r& X* w. K/ n. r
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );6 J: B; }) z7 B' {7 n
                }else{
5 m; u5 u3 ]* A# }7 n; ^$ e6 m/ y3 S                        SetForbid( TRUE );
8 g% Q! p3 z* v0 c6 K8 E( m3 H: I                }1 `$ f/ i& D: y/ h$ d
        }else{! p4 v! i/ a& s  X  Z0 v
                SetForbid( TRUE );6 X2 l! C+ A1 C$ U
        }
, b7 H- P8 Q5 p: o1 f        return TRUE;% c8 W7 F7 i* b) @9 f  X. N
}, f# K8 L0 W9 B  C" i

1 Q) u- b+ c# K% E* Q' A% T# TBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
) c& i9 D% z, a{
" D- y) h& D* I        switch( nID )$ d8 S) W( k% K, B: }
        {
8 j5 Z* h; V2 [4 y6 p2 x) |: A% y        case WIDC_BUTTON3:+ p' ^3 ^* {, L
                {. T8 g4 R, B- T0 r% H6 T7 _6 w5 m
                        bStart = TRUE;; ~3 V" X! j; D& W( u
                        break;4 W- x  f1 c7 O4 w# ~4 Z
                }
: i# z& e; e. |3 Z+ P9 p& n  O        case WIDC_BUTTON4:
% g; v- y6 o2 i4 Z8 H5 B& ^0 Y9 P1 s                {
7 J& M  W; c; d" [- g" v% C) E                        bStart = FALSE;7 H2 h! c) \% t  f( K* B3 o
                        break;
5 f! w  P7 w6 Q: ]* I                }
. _* r. H) F! ]/ P        }- z; S# v/ o2 K2 |1 B
        return CWndNeuz::OnChildNotify( message, nID, pLResult );9 V( S% H- l3 w4 M: u& j
}        1 c: ^6 F+ e, q9 j1 A; }
void CWndAutoFood::OnDraw( C2DRender* p2DRender ), e! V& `2 k8 v+ s) f2 |+ y# {# S
{7 Y) B% F) g% Q! o0 R! A0 N
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );  {4 ]2 B0 \3 D2 b1 E, f( T
        if( bStart || !m_pItemElem )
: q+ |3 {( g4 B- ]; h6 F9 l        {+ Q2 p$ w1 a# r; c2 ^
                pBtn->EnableWindow( FALSE );
) I- h$ e! n5 H- I; t# p        }else( S0 v# B9 ?/ ^- P: P' e% ?
                pBtn->EnableWindow( TRUE );5 M, W; l, G8 W8 [, Z
        if( m_pTexture )9 d& j5 _, Y5 c$ N
        {
8 ~: M( }8 O7 y5 X9 a                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );" i6 y8 J9 K+ Y
                if( wndCtrl && wndCtrl->rect )4 e, @' Z- M$ ?2 V% l
                {; t0 U1 Y  U( L/ V
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
9 g$ S+ k5 p6 j4 g) p                }
. P. y  Y; E+ P/ K  k0 [        }
4 @" D* N3 T4 L8 D}# k* @6 i+ {1 c  K$ o- R+ Q
7 B0 B6 |1 w7 A
BOOL CWndAutoFood:rocess()" `- c; j8 V$ H2 O! _6 |+ r
{  i) z. J+ Q# w  ?+ D6 D& W
        if( bStart )
( ^: C" I& j+ Z5 s        {
" o9 c! t, [6 M9 {7 Y. i8 @# g! x                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )4 J$ R8 M( a7 v+ Z
                {
8 u. u8 K" ^: ^4 f7 i' S                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )$ |. k# P. H0 B& S
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
9 H5 Z2 `& B: X# f                }else{
! y6 L, B3 u3 M$ J& {                        bStart = FALSE;
& b& h/ x5 k$ ~$ m9 j) o8 h& S. q. D1 O                        m_pItemElem = NULL;
) p) A1 S# q4 S! W' ~) H9 s& k                }
( {  F; s1 _' d5 V0 q2 H        }
% n1 ?* s' l. U" Q( ]0 w5 c" z        return TRUE;
9 G4 B8 D7 F9 X: q}, w. S! l: z" P
; e$ B2 n% m+ \0 z$ x7 g' [
登录视频废话:
: S# B9 E7 b7 O) y4 S2 q" Y尾翼:/ }, s+ h$ q' \3 ]6 e2 z0 W

+ Y& Z9 ^* V8 i2 q代码:
$ U, _+ G+ s9 G5 b4 A9 {  Z' l& c, P
void CWorld::SetLight( BOOL bLight )
  W& X* S9 P) mdurch, b0 Q# \* L* w" z5 H! X
Code:' I, v& O+ i+ g6 t" r3 G, }
void CWorld::SetLight( BOOL bLight )
; N- m# `* ?) c* D) c9 C{
1 V( i. V) k) }1 z$ }5 E. X0 \        //ACE("SetLight %d \n", bLight);
+ W9 j  @0 Y! ?  j; D5 p" \          z- p9 r& C( {3 V& t
#ifndef  __WORLDSERVER
% i4 s8 Q  B/ b! Y2 y" v& p( B  z        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);5 l. a/ z$ t) x# P. H, ]+ `1 s
        CLight* pLight = NULL;
9 q; `5 K1 a7 J
5 y5 \3 d& V' ?- M! m8 g0 u        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
3 M' L$ `& Z( @2 I6 a; t6 g0 n6 A; u. y
        pLight = GetLight( "direction" );
, j: U9 {1 @9 b2 N2 {/ U. N4 x3 w- g1 w
#if __VER >= 15 // __BS_CHANGING_ENVIR
& D2 m7 j3 e# D7 ^( f        if( g_pPlayer ){; f4 [- d( N4 B
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
2 K; ?/ Y( ~4 J5 @6 w                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
- ^: K( z" m2 p: ], Q                {
( B9 i" v6 _+ g, Q: n7 U: m                        if( pLight ), g, z5 n8 X7 |1 D/ Z( H" \( y
                        {
; o( e! ~+ `5 q: N" S# e  R3 g) P9 r                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
2 D' z8 a( k: I/ b. @                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];/ e% }8 y  V" a& Q
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
" Z$ _6 ~* Z, x) H+ \0 \3 c/ A+ }( ]; l! D$ a
                                pLight->Specular.r = 2.0f;/ H3 Y3 ?9 k  d. ~( M
                                pLight->Specular.g = 2.0f;
, i0 _& W) m" o& {                                pLight->Specular.b = 2.0f;
4 F1 _  P6 H6 j& f2 I/ o$ H        9 ?4 X) r1 V; h9 t+ t0 u2 t9 A
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];$ T1 b! j: Y1 |8 N! ?: u9 R* l3 A
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];& g, s( D( G" \+ h4 z' Z
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];( P2 k  e" w( e* q8 O, R' r7 k
        1 y; u- Z5 B$ J  j
                                HookUpdateLight( pLight );
; v) h& U. R4 ~: M( z, B2 F+ H9 \$ {$ O
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );' R9 G$ G3 A- B1 u/ ~6 R
                2 d6 K& S! t* z8 d2 y' \# ?/ i  x
                                pLight->Diffuse.r *= 1.2f;
5 S. T  f" `- q4 f( O) Q- m5 d                                pLight->Diffuse.g *= 1.2f;
7 z6 c" S, V5 b                                pLight->Diffuse.b *= 1.2f;
' K- A* W# h2 Q+ `3 i# [/ h" q/ O3 c: |' \# T# m1 X
                                pLight->Ambient.r *= 0.8f;
# d4 j5 S: ?3 L                                pLight->Ambient.g *= 0.8f;
6 H" @" V% I6 E; P. @+ A* z                                pLight->Ambient.b *= 0.8f;8 d; ?) }% ]  I) i' K' S& Z& E; `
        1 A* ~) ^- \' t0 d/ x5 @9 o
                                memcpy( &m_light, pLight, sizeof( m_light ) );
5 d: ~6 D5 n- ^. L
' K( M  D1 f% y1 Q                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);7 q* q  O+ G. l- M7 ~+ c3 s
                                D3DXVec3Normalize(&(vecSun),&(vecSun));1 F- b  x! z4 i$ [# ~
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 o7 c5 z  h) j! [, Z7 ~                                 pLight->Appear( m_pd3dDevice, TRUE );
, t8 [7 t6 Y. D                1 F' q% j  g( m  v' Z/ V
                                DWORD dwR, dwG, dwB;8 s. v% f! G: p7 |. ]! r8 r
                                dwR = (DWORD)( pLight->Ambient.r * 255 );+ i4 ~  q7 `) ]4 S' l1 K' ]3 G
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
+ R) u% F( M/ |1 `* v- C! D9 f; S                                dwB = (DWORD)( pLight->Ambient.b * 255 );
" H  W& @3 O( ]. ?                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 n( a5 p0 `7 h+ f                        }
8 b, t9 u. x( j3 u1 z                }! L5 i* @' U3 z  V
        }( S" g* U- R. T$ N9 ?- ~0 ]2 ~
        else2 z7 X) m) w/ c6 G9 O
#endif + {# a! k* v9 n5 m: c( e

6 j* q9 T- S2 n% \2 z( O        if( m_bIsIndoor )
+ `: C. T. R4 D: X5 O        {/ Z% s1 Z7 M2 {
                if( pLight )! s% B! |. z# }, C) e
                {                $ I7 T5 N: g- d, z1 _
                        // à??μ oˉè*
) _( f5 X$ B  j9 @8 D8 i                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;* z8 ~( ?/ o- w7 u# ]" `
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
# c+ I! j+ t! ^                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
! M; [( l* d3 F& G: v8 P8 d* s8 w
( h% _  g! Q7 p/ k, [$ x3 r, V                        // oˉè* ??à? * W3 X8 p: d! j8 }( h
                        pLight->Specular.r = 1.0f;
* w1 w! j# Y3 Y1 e. w                        pLight->Specular.g = 1.0f;
! N: d) N" H' x$ a                        pLight->Specular.b = 1.0f;- ~/ q2 p0 u( A1 {  `' @& }3 {
                        // àü?? oˉè* 5 {8 w# a0 R: K& l1 T$ i+ d
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;- K  s: V+ b+ [# G' s" V
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
% ~+ G  X0 a, G0 m4 T6 k- z& X                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
. X  n$ b  r. I0 n% [) s1 p' q
1 w' `5 L- u% R, U8 X( [5 j                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 Q1 W. O) Q3 w  [. ^                        {) [7 [0 l$ s: s% `. R
                                pLight->Diffuse.r *= 0.6f;0 R9 `8 q$ I9 H0 X" D
                                pLight->Diffuse.g *= 0.6f;! {: \1 T" h/ ~9 a/ g
                                pLight->Diffuse.b *= 0.6f;1 N2 x- F. G- N9 L1 i1 J/ R9 F" ]
                                pLight->Ambient.r *= 0.7f;5 \& `2 p* w8 d9 S
                                pLight->Ambient.g *= 0.7f;
- c, O& [/ q( U; d* a1 F                                pLight->Ambient.b *= 0.7f;
4 z9 M0 z4 z4 q" T2 o0 `' n                        }' U" i, o# @  t2 W0 V3 H7 v( {
8 ]0 L, [1 E* T" O% \7 `
#if __VER >= 15 // __BS_CHANGING_ENVIR# ?4 b" E9 S$ W! Y1 t9 p
                        if( g_pPlayer )
$ a' |4 @# w$ K" ]* l4 s: ^                                HookUpdateLight( pLight );  V) A3 I: h9 u! l/ q2 B
#endif8 V: G- A2 i0 s( _* \
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );: n" a4 @# O5 B1 u) O0 B4 r3 {
2 E  n% F5 ?8 c: u+ y$ \% y2 @
                        pLight->Diffuse.r  += 0.1f;+ w. a  f! j) S1 L/ Q: t
                        pLight->Diffuse.g  += 0.1f;( j# Q; u( J& b4 b, D6 D
                        pLight->Diffuse.b  += 0.1f;
- C2 z- a- j) E+ g* L& C                        // oˉè* ??à? 4 V% |/ R# {  D' ^
                        pLight->Specular.r = 2.0f;
! o: S3 ?' ]' _& K! h" ]# a% Q                        pLight->Specular.g = 2.0f;' R; y* c3 V* W4 d0 T* H) d
                        pLight->Specular.b = 2.0f;
3 T3 R. N0 [% y1 X4 A' {                        // á?oˉ
- w/ f5 a; W& e" W& N# m                        pLight->Ambient.r  *= 0.9f;
$ a9 H5 p# y) g1 I' Q                        pLight->Ambient.g  *= 0.9f;# {( B$ |2 l. \6 m! H2 j
                        pLight->Ambient.b  *= 0.9f;
$ f0 K( M6 {" J3 |) o" l! F+ |8 w3 q: F# r
                        memcpy( &m_light, pLight, sizeof( m_light ) );. C. u+ |7 z0 f# Q& ~& C
                       
% f, K5 `& i6 N9 [8 d+ i* m                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );" w9 f# p$ o, }+ C4 e
                        pLight->Appear( m_pd3dDevice, TRUE );
3 P9 O& I: }. T0 m0 i2 O0 m# d        * x0 [( x) A: J0 @
                        DWORD dwR, dwG, dwB;6 I& n  g/ a6 ?# A  C
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
  S; _5 _8 z- c: j6 n' Q; _6 X                        dwG = (DWORD)( pLight->Ambient.g * 255 );1 C( W, ]( [! t( p
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
. g2 A/ L  F1 E7 B: u                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );* {* G5 l. v/ _% ~
                }3 I& d  F' u3 N" v5 i! W8 b
        }
" n* I1 d' H7 m: Y4 V# i) ^        else6 q" g+ l" P( v5 |  H& i
        {
4 Z: j% W/ M3 X; r% D                if( pLight )
; m2 }0 L* C8 m% ^* V/ h" z                {& i, y6 r3 @6 s% y
                ' @! O. Q  {8 h4 C
                        int nHour = 8, nMin = 0;& W1 ]. X; l2 @% T' L% x
        #ifdef __CLIENT8 _6 W5 j8 N& D; E- |. B: V; P
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. # O" \  ^3 z+ W9 q1 r' \7 G* @! X
                        nHour = g_GameTimer.m_nHour;
9 {9 M: g& P# p) M/ r) e                        nMin  = g_GameTimer.m_nMin ;! Z3 }8 q" z" s! H
        #else
% e' q' o5 Q: a                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
& ~- ?* |) K+ O2 @. V! {                        if( m_nLightType == 1 )2 U5 j1 f. L$ |4 R8 T/ _& ]
                                nHour = m_nLightHour;' f& ~$ x) V" H* W+ m( ?) i4 ]
        #endif6 H$ B; \7 ?8 X$ j& b
                        nHour--;
# }- i. c$ P/ ~1 n/ j                        if( nHour < 0 ) nHour = 0;( w) \* I. K8 r8 }2 z' h
                        if( nHour > 23 ) nHour = 23;
; B0 _6 U2 }: P2 v6 X. _8 Q* K9 s# h$ B- j% t5 j1 u! W
                        //if( m_bFixedHour )3 }6 n5 q$ F+ e! e2 L3 d8 C- V
                        //        nHour = m_nFixedHour, nMin = 0;+ E. O. N2 d. F" j. T- X) M
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
3 Y7 M1 C% p- s- e% Y8 n, I- m, A2 y                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
9 @6 E4 B( U, l/ U' n# S0 E( ~- `7 V: e# }
                        //m_lightColor = lightColorPrv;! s2 U/ m# Q  Y  Q
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;+ q3 R2 K7 v2 n9 _: y! h- {+ D0 ^
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;4 z7 r+ ~: M: [
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;) x; Z+ \% e& |9 j1 v, ^
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;) |( K: f+ `# q, O4 `' c+ j
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
0 q$ M$ {' B2 K                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
1 t$ I' S0 j9 y: h, S) @( @) W                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ a4 @  N, s- c2 T, ^/ y) A' R
( e' ]* F: d3 ?8 n                        // à??μ oˉè* ' B+ E9 i+ y3 P- @
                        pLight->Diffuse.r  = lightColorPrv.r1;' W5 |- q  _2 k" ~& L/ p. R4 `7 m8 Z& A
                        pLight->Diffuse.g  = lightColorPrv.g1;
+ ?6 E  d3 [0 `* n& T6 j, @: z                        pLight->Diffuse.b  = lightColorPrv.b1;/ a  Y+ s3 ]; q6 w2 T1 n5 W2 V
                        // oˉè* ??à?
& y2 J, i5 q' ]+ X: h4 g                        pLight->Specular.r = 1.0f;8 C, c: {5 x6 d+ b+ L- S, J
                        pLight->Specular.g = 1.0f;- }4 ?: C0 Q# p' g" Y5 z' F1 V
                        pLight->Specular.b = 1.0f;# Y$ x/ R! V8 {) D: v; x
                        // àü?? oˉè* ! P, T" k4 h( ^8 s+ w8 X
                        pLight->Ambient.r  = lightColorPrv.r2;" L+ y& F# w4 G+ q1 J
                        pLight->Ambient.g  = lightColorPrv.g2;* t4 w: [+ L) W) ], \  A2 ?/ P$ f
                        pLight->Ambient.b  = lightColorPrv.b2;
% f0 r( u- H0 A) Q. Y6 k* f, b$ |, D* x! ?' U4 t6 p
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 u) j- v  Q. o7 p- [/ Z                        {) ~( ~' d  L: g1 w# g) }' t9 b& Y
                                pLight->Diffuse.r *= 0.6f;) t# }1 k" R* U4 ^! R( X
                                pLight->Diffuse.g *= 0.6f;/ b0 p% q* v1 }0 P2 E! Z
                                pLight->Diffuse.b *= 0.6f;( a  _9 I5 Z( t, z- W5 _" I4 X
                                pLight->Ambient.r *= 0.7f;: c/ s4 l+ x; y) P
                                pLight->Ambient.g *= 0.7f;
; t7 S4 b* [5 P: @) `3 S                                pLight->Ambient.b *= 0.7f;
6 A! H4 A% y" K8 B- ~                        }- G+ x2 d( z' `% w) ~6 O$ l
                       
8 b" D6 k; f+ G) H, g0 x#if __VER >= 15 // __BS_CHANGING_ENVIR
  y, C4 `; r8 G8 g                        if( g_pPlayer )
8 _# i& q6 ?4 C$ ^2 b                                HookUpdateLight( pLight );
2 W* V. p3 K& Z0 X#endif6 J+ C  J* g" K6 N. k3 x
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 O, Y& ]* y2 u! E+ x
* f- o* H! w9 O& }#ifdef __YENV2 Y* R  q8 Q( v* U, @
                        pLight->Diffuse.r  *= 1.1f;- e+ z7 q8 |" r/ b8 `3 t; \1 }
                        pLight->Diffuse.g  *= 1.1f;
5 N, l( \0 g  q* |5 j7 v                        pLight->Diffuse.b  *= 1.1f;
) s! H/ L$ }  m$ N9 t                        // oˉè* ??à? : @' M4 y. {6 f$ C  [6 e: L
                        pLight->Specular.r = 2.0f;
) ^3 X& e$ E8 N& u8 Z9 o                        pLight->Specular.g = 2.0f;
. M0 a' ?' J/ w                        pLight->Specular.b = 2.0f;
6 i# Z4 v$ x( n4 ]                        // á?oˉ
6 I! w( A) A5 L' d                        pLight->Ambient.r  *= 1.0f;
" ]0 i' U9 V1 z                        pLight->Ambient.g  *= 1.0f;6 i  F; o$ D- ~7 B- J
                        pLight->Ambient.b  *= 1.0f;
' |0 Q' Y" Y# N& S# ?( i" k#else //__YENV! Y1 v0 {- c2 N, K
                        pLight->Diffuse.r  *= 1.1f;
* k& f( N# m+ y- P* @* f# i+ X                        pLight->Diffuse.g  *= 1.1f;" F2 Z  K* c( F* i7 N3 }% b/ Y/ z  P
                        pLight->Diffuse.b  *= 1.1f;
/ Y' l& {- o! U# b                        // oˉè* ??à? & {; Q' h8 `- r% W* R" f4 x+ f
                        pLight->Specular.r = 2.0f;6 ~& e! N* ?/ m) s
                        pLight->Specular.g = 2.0f;1 ^6 n& \5 Q/ ]6 g
                        pLight->Specular.b = 2.0f;# g0 `5 G* o1 I" g; o1 r9 p
                        // á?oˉ ) g7 Y+ E/ q2 h
                        pLight->Ambient.r  *= 0.9f;3 q7 s3 h/ r, d' Y( G/ z7 s
                        pLight->Ambient.g  *= 0.9f;
3 L4 Y: O4 S& ^% N$ G8 x                        pLight->Ambient.b  *= 0.9f;2 W2 }, D0 ?6 \% w% J- H& i
#endif //__YENV
2 O, Y( x; r2 l( @                       
' [8 X8 z; _0 m9 v$ B" b& ]                        memcpy( &m_light, pLight, sizeof( m_light ) );+ C! t( V- W( n% d4 Y& f
                       
" E. y( m* O0 n" x- O: U+ f                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);( m4 z3 `3 a$ N6 J
                        D3DXMATRIX  matTemp;
# ~5 N. h# V. G                        static const float CONS_VAL = 3.1415926f / 180.f;
: K' z  Q* I& V$ H4 S5 q
; @* d% v8 u# ^* L& g- A" `                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# [# q4 e9 _" H0 l9 Y6 E8 R                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
& y0 U  E! ^  T$ _' f                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 0 n0 Q% H) D! X
                        pLight->Appear( m_pd3dDevice, TRUE );, D% v1 a) N9 o

' v( c& y! d' [( `, T' r                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);! j& l+ s1 w6 \# }
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
- M7 q  G: B* h* C3 z& M. Y                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); : R/ ?! Z/ a" I. G7 X: T
+ p; S; F+ D8 G8 H) G% c2 `
                        DWORD dwR, dwG, dwB;7 T9 z9 [  l8 V& d) Z
                        dwR = (DWORD)( pLight->Ambient.r * 255 );# S: X0 s+ ~, J! t# p8 Y
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
. b! k+ K; n; x) q- [  {                        dwB = (DWORD)( pLight->Ambient.b * 255 );; h3 Y; T1 `" r6 g7 d
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        : b  R* H, Y* p7 u4 n
                }
7 x  f8 j5 ?% H        }
9 x0 k/ V$ G* m: |/ C8 ]
: y5 C! Q' c& B7 ~& C4 U        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
9 i: e6 j$ _8 R$ T        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 c4 z3 h! b( I7 c        ::SetLight( bLight );
) V1 |3 K  N" S! G) f% G' k+ U7 C" M' a
        // ±ao? ?D?í???ó á¤à?
* y; V$ ~, H  C6 L( q        m_pd3dDevice->SetMaterial( &m_baseMaterial );
/ V/ H/ [, r6 k       
7 L; q4 E# C1 Z8 B, E* D#endif // not WORLDSERVER
$ t  [3 t  d# w. U. _5 ~}4 r' k! R& Q' ~& C. H5 V
并更换& G. `3 k  x$ R# Q% \9 L9 R0 [, k
Code:
' o# T2 b! g* V6 e8 i% e__FLYFF_INITPAGE_EXT
! x( {, q& U/ }( _& H定义
* A) Q- O# E3 u; ?1 h
8 Z( C* E9 q( n2 Q/ y# s( O- D: j9 \! R0 B& Z# l; D) S6 r$ O& u; R3 z

1 A' p# S9 p( g% o4 j) t- K% P( r6 W6 B7 ?  s& a
现在终于删除我的狗屁加速...) ]  w( D$ |: K/ T6 D; {
: s  R! \% T. V' l' i* c8 s

' r- Y9 |5 W* j. K4 x
9 ~% M* t; ]. d5 u- |" _: {




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