飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
/ r2 ~% ^4 y3 b4 N2 L* \9 H9 E尾翼:; l; Q( \# s3 D9 q
) i: ]& S* z. S/ u
代码:
' W$ [: X$ [' c+ m( b: eCWndAutoFood::CWndAutoFood()
2 d  h: F7 u4 G{8 b& c. K- {, y/ i5 g# C& p9 S
        m_pItemElem = NULL;
( s) i2 A! x) n# u+ f        m_pTexture = NULL;
2 \% c% X4 N' g  X( ?( L/ o        bStart = FALSE;1 h, g. H" ?. I: d; `! ~6 B
}
, g/ r. h  S+ r1 p+ w$ ?$ W
' w9 K4 f6 ~1 ~( ^0 r$ B3 aCWndAutoFood::~CWndAutoFood()
) B0 L  N) l4 T7 C* F5 R{0 h: G7 f, L; Z& k6 y9 ?; d4 B) O
        AfxMessageBox( "AutoFood ist gestorben " );8 q" F; `, u, ^
}
4 J6 b# b; @1 U, j1 A* NBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
8 v4 D% I6 ^. r+ H1 N( k{$ [- k0 E* \& L; Q
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
1 c, l3 N/ a5 `7 N" V/ g}
9 p9 `) X' n4 R- b1 h6 K5 u' F
& q) `# P/ F6 Y/ w8 }BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
4 \5 g# o* o" t/ q{' ~" c) |* d; f$ _5 m
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& {: B+ f/ G0 Y3 t; z        CRect rect = pWndCtrl->rect;
$ J& r. G. m$ n+ p  C+ p+ x        if( rect && rect.PtInRect( point ) )
, G8 I6 ]  Q. j" B% ^- X/ e+ D        {
5 Z2 w0 t# Q/ `6 @                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
' y7 l- s9 _6 ^                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )8 w. I* W  |( {. t8 j
                {$ ?" D  {  m; ]2 ?
                        if( m_pItemElem )" o7 y0 d/ i( I9 p1 \
                        {
) s( p6 @8 v/ t- F% p                                m_pItemElem = NULL;+ F  W, U3 S. V9 v3 a+ }
                        }5 t, f. u( D4 f. a0 l
                        m_pItemElem = pItemElem;
5 e/ e' _9 q9 s- T5 Y) g! M                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );6 b, I) V1 D2 c, Y! M2 v
                }else{
" c) C! ]6 m' }/ k                        SetForbid( TRUE );
' p) R- U" q& e* H+ A                }
6 M5 C% q( q3 w- D2 h        }else{
8 S' h3 g  C3 w5 U. F3 Z( E                SetForbid( TRUE );
# K5 b0 s+ c, l3 z/ ]7 t2 v. J; s% J        }  ]. n& U$ [2 X+ Q, k! D
        return TRUE;2 F: l  H: Z- y/ Q. @9 v
}2 r, I; [1 h7 K/ ~: O$ f
1 o: T: `# L! K7 `1 E8 D* f/ i
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )! Y9 J& \* H  W- q$ d# H) K$ m
{6 h9 C6 k# o, T3 g' w( m2 P% o# }& V
        switch( nID )0 P+ j& h' J2 L
        {
: t, N. k; k8 {; b, ^        case WIDC_BUTTON3:% k" L& F3 o* h1 L' w
                {; A* K2 J) N/ h7 s4 j7 W# _
                        bStart = TRUE;
3 u4 g: i9 o7 o6 _7 i* V5 S1 m                        break;
$ w" v5 d- Y2 o$ u4 W7 S& w" y                }# a6 T# G) M$ z& K' s# h7 Q
        case WIDC_BUTTON4:( s0 O% L/ s" g& ]
                {  o3 {% c# V% ?3 Q6 z: h
                        bStart = FALSE;
- p1 w* {5 \4 p& d' D                        break;7 Y0 W) T! E% M: E* N! }/ y
                }7 Y6 I) g, s$ z% p/ g# G: T
        }
  g1 }! i$ |3 x) P3 I" N4 M        return CWndNeuz::OnChildNotify( message, nID, pLResult );
$ Y5 Z6 \: Z6 u1 j+ [}        # D& K/ u; ?1 S, c3 r
void CWndAutoFood::OnDraw( C2DRender* p2DRender )) f  D% q9 a1 _5 }$ G
{
6 {. }/ n; y- Z8 I        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
2 L  F* _; K; D        if( bStart || !m_pItemElem )8 L  t+ z, ]0 {' P& F
        {1 o: p* u* P+ g. q, Z. d" r2 j5 V
                pBtn->EnableWindow( FALSE );
9 V& ~5 Q( |; ^$ Y' I% a        }else2 R6 e4 ?6 y3 Q+ O3 }: n0 h
                pBtn->EnableWindow( TRUE );1 O9 w# A# K0 d' e  r; R
        if( m_pTexture )
  Y1 ]& {( c+ Q! q        {0 H+ c0 \+ i6 N( m
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* o$ p8 [$ m0 o% k8 a                if( wndCtrl && wndCtrl->rect )8 T5 w9 r4 Y2 ?# b& _+ n
                {
6 [( C6 p8 x( \" N7 t! I$ Z- @; t                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
* R  Y& ~5 K/ y5 C% p7 n5 Q: N% h* u) y                }
+ e& x  L* o, G% k& o5 |) a        }& F' n! f. T; e8 D5 w
}& }1 D! b! Q3 o# H+ I. T) i

; {* `( _6 Z$ b) _  G8 l- \BOOL CWndAutoFood:rocess()
' J  _4 G3 h7 E9 @, }{
: H' |+ I& @2 f3 F/ }; \2 ]        if( bStart )* |6 q! e+ Y1 ]9 s+ y
        {
9 U) h; `$ `6 o, L9 |5 V+ V                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 ). ~0 J8 n4 p' \' F
                {$ f/ C, ~) i! H0 n  e8 _+ _: L
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() ); x1 j0 I/ ]+ I6 k
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
5 p9 W- r6 z! }                }else{
7 A$ I$ h0 m7 q$ u0 M                        bStart = FALSE;
) M8 S! l% \( B  q* M, O) Y                        m_pItemElem = NULL;
# l) g2 x4 t' T                }; f  w% d9 v) ^8 U3 s$ B
        }
# }- a6 l. \5 V; `3 Z  n: |: I        return TRUE;9 Z7 n) i2 B( r
}4 `: k. T7 F/ r9 o3 z4 Z. i+ W
$ z4 _- `0 J7 Z. ?  K
登录视频废话:
3 Y  t8 Y* k3 i尾翼:
: K, b3 P/ ~1 I4 u$ E1 ?/ `0 j
# n4 L- S" N. N; Z1 F: S代码:
/ ~0 U, W0 c$ G# E  _8 F! f3 d/ k, ~* y- ?: T( y; K
void CWorld::SetLight( BOOL bLight )4 k) V# ?. e; q% {* Z/ U0 {( K# r9 D
durch8 [$ k. w& h2 b  N. z
Code:
6 u2 C% o% l( d4 M: ^, f. {void CWorld::SetLight( BOOL bLight )
$ U8 f* W) |8 x: w* u{7 C! i- L: T( @0 J( O
        //ACE("SetLight %d \n", bLight);& ]/ Z+ m* z  W3 x2 P2 J( F
        1 K" V# J) B: e% v
#ifndef  __WORLDSERVER
; I( \: G) ~$ R  ~* _        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);& l9 W2 J  b7 w7 G4 e
        CLight* pLight = NULL;
" O6 p; N4 M' [' P" _1 @/ ]/ W: S- b" ^/ ]5 S, D& O, ]3 k$ K: E
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );$ V9 ]7 a/ Z6 k( F$ k5 Q; R
# \) p$ A( r: s5 {1 z, e
        pLight = GetLight( "direction" );
+ m/ t. }' ~) {) v
9 W/ n4 M# B7 U5 _#if __VER >= 15 // __BS_CHANGING_ENVIR
# j( z3 A0 l; O& \        if( g_pPlayer ){
2 O$ e( O+ A  Z" L# m" z                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
! i( c/ U6 N' Q" B, ^" F9 {  F/ @                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
$ |- R+ ^4 w  C: x0 Z. w" b                {+ U; r: I/ A+ m4 u
                        if( pLight )
1 B0 R& Y8 h7 S% X% w: X4 r9 d                        {# `# I% S8 ]' K0 X  J# C) C; i' {
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
" k; \0 [, K! ?& d                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
, e3 k0 y& E9 A/ j6 }2 @7 @                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];; x% B7 I/ |  t! K+ D

2 b/ R$ T% R- i2 u0 C' H                                pLight->Specular.r = 2.0f;& _& T0 K& i) F1 O- _$ w# i
                                pLight->Specular.g = 2.0f;8 f2 ^% ?1 ^- A& ^" p' f
                                pLight->Specular.b = 2.0f;
" F7 C8 M% ~1 c% ^" H  g$ l       
3 ]+ f% d" X6 T: h/ ~9 v                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
$ J' c8 k& P/ X* H                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
& ]7 p( ]" N: e' @7 h  X+ \) b                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];9 d2 p9 v, x- `2 x' F3 w; r
       
; J+ r; }' `" R- _) ?% C                                HookUpdateLight( pLight ); + t7 w! d+ A/ Z+ I/ E  Q3 `

( i( N& }' Y6 W  q* L3 q                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% Q# P/ [5 e+ o; B               
) k" r2 c9 Z! h, o- y% h( G1 J                                pLight->Diffuse.r *= 1.2f;  C" N+ }( O- i* Y4 _
                                pLight->Diffuse.g *= 1.2f;
9 o1 H' D6 u8 r' z7 {1 }  d" _4 h                                pLight->Diffuse.b *= 1.2f;
' f' Q, D* H, S  e7 g9 `+ [. B2 x7 N" I  n0 y, Q( M+ B3 a$ d
                                pLight->Ambient.r *= 0.8f;  x9 ?, P3 t; M: _) T
                                pLight->Ambient.g *= 0.8f;
7 ^9 }. {9 ?4 r& o0 p% f                                pLight->Ambient.b *= 0.8f;! ~) M# o/ V$ R4 w0 K
       
6 R9 N2 d) S- Q4 s& f                                memcpy( &m_light, pLight, sizeof( m_light ) );" \. P, g/ U5 M- c& K

4 P& g. @4 K9 k" Q8 ^9 N                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# \% @' A& F$ I5 g                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
& ^. a1 l6 r' S+ _1 q                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ _0 Q0 E% }- U                                 pLight->Appear( m_pd3dDevice, TRUE );# d* D6 i. s7 m' ]7 J7 s
               
/ g+ c1 t1 f- g# }1 O7 b                                DWORD dwR, dwG, dwB;3 J/ Q9 s" G/ _
                                dwR = (DWORD)( pLight->Ambient.r * 255 );+ p5 Q) I0 F, Z0 K1 }- l
                                dwG = (DWORD)( pLight->Ambient.g * 255 );& u, h$ R0 P9 t" R7 u1 }$ i
                                dwB = (DWORD)( pLight->Ambient.b * 255 );7 u# t1 ]8 M( K% z; R9 w3 ]( x! ^' b
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );5 ?7 \- S0 z1 B+ [( l( q/ Y
                        }/ j! y4 p  G$ W0 E1 y
                }1 f. R; S; W0 m$ E5 o
        }
8 C' S9 [/ Y# M        else
: P$ m$ [4 r4 S5 i9 z#endif
% C$ p! v- l- T$ D2 r
$ M; u7 C% H6 `7 U  R7 h& C! y        if( m_bIsIndoor )! E  X& C) ]( L2 C
        {3 N* J3 ~1 }+ h) [) F
                if( pLight )* ]' ?7 M0 C1 `9 p! p0 z: c
                {                - s7 D) A2 j, v$ h! X  z' c; B
                        // à??μ oˉè* - b' n% X3 f3 Y% ?4 \. }! q
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;/ v* V9 s1 f0 p7 c" @! I% g& h9 K
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;( V  M& |, `* x; w; j+ s6 c/ i
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;1 t+ Y) Q' x0 m( f
3 [  |. ^0 E5 B5 t
                        // oˉè* ??à?
, L' O8 b1 @4 [8 U" a                        pLight->Specular.r = 1.0f;
& o; z  d+ k( E7 L9 Z                        pLight->Specular.g = 1.0f;
3 L) a, l1 Y/ q4 s7 t) h                        pLight->Specular.b = 1.0f;5 ?/ e/ t* O# {3 H
                        // àü?? oˉè* ; t. u  k5 x/ A0 @
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
# V1 }# n2 C3 ~3 e$ j                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
! l$ E$ y' s& p+ ]0 F$ {, [                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
1 [! f! v/ x6 t, {3 J
) t3 x4 N/ Q, y% `& x1 ]" t                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.1 j. I6 w& I3 V/ X6 T: s
                        {/ W& s- m* U0 X
                                pLight->Diffuse.r *= 0.6f;
8 q2 {7 b- Y0 H                                pLight->Diffuse.g *= 0.6f;9 F, x) K9 @; B' z
                                pLight->Diffuse.b *= 0.6f;6 Y: J+ B' {( X5 }$ ^( v
                                pLight->Ambient.r *= 0.7f;3 I  s, _, {* u# w) Q+ v- E" w$ ]1 g
                                pLight->Ambient.g *= 0.7f;7 C% `$ j( j& D! E
                                pLight->Ambient.b *= 0.7f;
: @3 r; |" T3 c8 `& t- c" V                        }2 W% U5 V$ J, c' s: b

; v; D0 C7 j+ N* z#if __VER >= 15 // __BS_CHANGING_ENVIR. X! P! ]: _& y, ?
                        if( g_pPlayer )" Y/ z% c0 ]0 o5 |
                                HookUpdateLight( pLight );! q+ {$ x0 g, _* ~
#endif- \  D; h2 ]" D$ v
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );8 s" |2 r# \) A: A8 Y
* H& c/ N* R' O$ A8 ]" Z
                        pLight->Diffuse.r  += 0.1f;
$ Y* }1 [; R9 g7 E+ V: ~                        pLight->Diffuse.g  += 0.1f;
* L% M3 Y8 U, y9 {6 j                        pLight->Diffuse.b  += 0.1f;
+ k1 b" T3 U$ p8 O/ `+ t                        // oˉè* ??à? % r4 ~/ `; Q$ U3 i
                        pLight->Specular.r = 2.0f;, ^# \% r0 Y, I; @. R! R" p
                        pLight->Specular.g = 2.0f;& ]9 N1 w, U7 v8 m7 Q  Y
                        pLight->Specular.b = 2.0f;
; E5 G1 y1 }# F                        // á?oˉ 4 a% `/ r  z4 q1 T
                        pLight->Ambient.r  *= 0.9f;1 c- ^( m5 d( C
                        pLight->Ambient.g  *= 0.9f;
4 |1 w6 ?4 n4 y- c. e1 \3 O                        pLight->Ambient.b  *= 0.9f;5 P- y1 e- D% e  Z0 V9 m, O

$ e( \* |& {; `5 @                        memcpy( &m_light, pLight, sizeof( m_light ) );
) v* }1 @% y, K* }                        ! X: f9 \$ m8 m# V! }$ b* G
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );# Y7 M4 p+ a) N' S
                        pLight->Appear( m_pd3dDevice, TRUE );
, s9 G3 e1 o$ Q( A& _" z5 E5 X# W        2 A9 _9 O. S7 i5 ]
                        DWORD dwR, dwG, dwB;) n3 v" K1 u/ O, ~. C9 ^  i
                        dwR = (DWORD)( pLight->Ambient.r * 255 );" |& K. f( ^2 c% f6 e5 I
                        dwG = (DWORD)( pLight->Ambient.g * 255 );8 z. @  t8 ]+ U, w
                        dwB = (DWORD)( pLight->Ambient.b * 255 );# E5 ]. r0 j6 Y( O8 Q6 F
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );" Z9 Z% B7 d3 M4 E+ D
                }
! x. g9 i8 A4 S3 x/ }  J* R! {- \        }
6 C( M7 z% t# e& i0 `) b8 P8 V        else
2 g) p+ g4 f7 U+ F6 f3 y/ R        {( J! T6 P6 {; ?7 _+ A
                if( pLight )" M( s, t2 {, K$ [% n
                {. Q4 H$ p8 L% g' Z6 P. _0 b0 _' X
               
2 a& W; D* |, X$ s                        int nHour = 8, nMin = 0;
0 o+ B6 U" O. v+ x        #ifdef __CLIENT
& o! K- \- u7 {7 Y# j                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
2 Q8 w6 W4 ^/ [" X& z6 H                        nHour = g_GameTimer.m_nHour;
: Z" W& b- R& Z# F  h                        nMin  = g_GameTimer.m_nMin ;6 n, U/ F! Y7 ^6 k9 ^" ?
        #else6 \1 x9 }$ F3 d8 f1 X
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
/ H: J) L) \/ W% \' P                        if( m_nLightType == 1 )
* g0 H; f/ W4 {5 g* R                                nHour = m_nLightHour;* S5 w3 L/ M+ N" ?# _7 l: @. }
        #endif
; Y' w. Q9 K$ c# c7 k                        nHour--;4 S1 z& e9 k6 [9 b. Y' |$ X3 S* d) {! s% b
                        if( nHour < 0 ) nHour = 0;" }% t$ Z( U0 S& E8 r  h  p
                        if( nHour > 23 ) nHour = 23;* t3 `9 K5 E! y

7 Z9 W, x( O5 n& }+ c: f& J                        //if( m_bFixedHour )) t  f- H6 ?4 _: @( Y( u: Z
                        //        nHour = m_nFixedHour, nMin = 0;
* ]( D. A8 F2 z: {) X% C# h& ~                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
% p4 `) l* b% A- Y                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];+ _( Y# U5 M0 b$ e# f$ F1 T& N: B

. N: X7 c0 j  J. B* \                        //m_lightColor = lightColorPrv;
1 d+ C/ a! D+ a  b2 Q: [                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;) n+ U3 B  |: }3 ^% q
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
2 c) y6 V. w) Z2 J# w" C                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
' ?9 g0 u/ ?0 l  E. p: U/ u3 E. o) [                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
" k& w8 E9 ^, d' L                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
  ^4 y& Q- ]# y2 V& @: l, @5 |6 e! G                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
: E2 |- l; p7 B1 N; m6 Z( j: p                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)( U( B0 H3 M( z8 |- G0 \5 V/ ]

8 k/ j& T% k- O9 `% D/ c1 [6 X6 v# I                        // à??μ oˉè*
2 k7 U. M) d( G& y$ }" P$ H1 k' `; ~                        pLight->Diffuse.r  = lightColorPrv.r1;* U4 p8 B) W- b8 z! \" G
                        pLight->Diffuse.g  = lightColorPrv.g1;
. X2 X6 H% e* x3 @# i                        pLight->Diffuse.b  = lightColorPrv.b1;
& V3 U. @# ?; B5 [$ @/ G: a                        // oˉè* ??à?
6 B3 Q/ N+ w; |+ |9 u' T( @                        pLight->Specular.r = 1.0f;6 }" @+ a" y  m) o% R7 i7 m4 j. O
                        pLight->Specular.g = 1.0f;" L3 T7 u% G2 }- X
                        pLight->Specular.b = 1.0f;( v8 Z; B5 C8 D2 _' m8 \
                        // àü?? oˉè*
! l/ U5 c8 q/ T2 v/ s5 f! n                        pLight->Ambient.r  = lightColorPrv.r2;
, g9 R. n- Q2 G- k. Z                        pLight->Ambient.g  = lightColorPrv.g2;
& Z+ D6 f$ X8 d, A; m, l0 w/ I                        pLight->Ambient.b  = lightColorPrv.b2;
% M. Q' Q& N1 N8 X7 f. \" V, A: w
# y/ C, }, }2 N: v- w! ~                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
1 p! L) ?) }2 u0 Y) r: `& A' f                        {1 O! |) c, n6 C
                                pLight->Diffuse.r *= 0.6f;
/ s. T7 R. J% b/ m* g3 d3 q2 r                                pLight->Diffuse.g *= 0.6f;% w1 J9 F& N# f- {( H
                                pLight->Diffuse.b *= 0.6f;5 \% u+ M( `! v+ J1 X* b" V/ v
                                pLight->Ambient.r *= 0.7f;% [8 i( B9 g$ |) O( y. d' o" j
                                pLight->Ambient.g *= 0.7f;
+ P) o# d' X9 @: ~! a, [, q                                pLight->Ambient.b *= 0.7f;
/ _! p  ~! `3 \8 r0 Y, C; I( M                        }" U" V3 J" S5 [" Y% r- b, `
                        9 ~1 N0 N* p3 r
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 `# C: w( ]! \9 N- T, \0 l1 u                        if( g_pPlayer )* X4 T! Y: ~, ]$ j, T5 F
                                HookUpdateLight( pLight );
; d  \) g5 i  ], E8 b, C#endif; \# b# Z! T# e1 m1 w* X/ e
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: {5 L. r$ y7 Y7 q$ a" y; y8 p' Q' ^1 k8 w; W
#ifdef __YENV
1 D7 s$ G6 S& x6 r0 l) u  {" T                        pLight->Diffuse.r  *= 1.1f;
" d0 e) L% C' R% o( J/ {                        pLight->Diffuse.g  *= 1.1f;
/ D; C; Z; T4 \/ T1 \                        pLight->Diffuse.b  *= 1.1f;
  l1 H- j8 C6 k                        // oˉè* ??à? $ X! v' @& l' s. j% q" O$ _
                        pLight->Specular.r = 2.0f;" l5 W5 P9 V# _5 S* \
                        pLight->Specular.g = 2.0f;
$ W+ X5 t7 N# H                        pLight->Specular.b = 2.0f;) ]8 S  M7 _3 a( t3 t3 h/ a6 v
                        // á?oˉ
0 A, a( a- e" F4 W- H9 x                        pLight->Ambient.r  *= 1.0f;  u* \4 M# G% S+ O9 |$ C- @8 a9 O
                        pLight->Ambient.g  *= 1.0f;; G, i; v2 o0 }6 N0 W- {% I
                        pLight->Ambient.b  *= 1.0f;
# Q# l. U+ W7 n0 S#else //__YENV
7 [# s( ?+ g- C* y* H! f6 r. Q                        pLight->Diffuse.r  *= 1.1f;4 }! F8 s- y# i/ O
                        pLight->Diffuse.g  *= 1.1f;
0 B* a) A) a" E8 q2 C; a                        pLight->Diffuse.b  *= 1.1f;
) H2 U) R8 U; M% t                        // oˉè* ??à?
. m2 s6 C+ a  Y. i% E4 ~                        pLight->Specular.r = 2.0f;
1 D+ e# h* U9 H- Q4 o                        pLight->Specular.g = 2.0f;
4 a" D( M6 S" A# Z$ n                        pLight->Specular.b = 2.0f;8 ]" d0 ~6 V, c' N+ G2 m
                        // á?oˉ
! s  \5 a  K4 N0 |. S                        pLight->Ambient.r  *= 0.9f;
6 j0 F0 y  g' \% g                        pLight->Ambient.g  *= 0.9f;% V+ r& K) K6 g( p0 @
                        pLight->Ambient.b  *= 0.9f;
6 B% h. {* a$ r7 [3 u#endif //__YENV
9 [7 _, l% l. Q6 Q/ V$ |7 @( O. Z) ]                       
/ F0 I" s2 U& h2 ^* Z                        memcpy( &m_light, pLight, sizeof( m_light ) );
: B6 u) h0 k1 w4 I( g& m                       
" v) M0 K8 _! Q+ C9 a  s                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
1 J; L: D8 Q. l# H& `& \+ Z, |                        D3DXMATRIX  matTemp;
- e  \% R0 i- \3 f4 `* u7 F                        static const float CONS_VAL = 3.1415926f / 180.f;' R2 g$ G1 C; d! w. [' Z) J
3 k. `% \+ B- Y& k
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
$ O( k; q) l9 {5 D/ K1 z" N                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
( U) e. y+ j' m& T9 y                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); " W7 E. A6 |' O% {
                        pLight->Appear( m_pd3dDevice, TRUE );5 U+ c5 D, `6 g3 O/ t

1 t" E1 m* s4 V5 w& o# W                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);8 q* Z1 `$ M1 R0 b
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));- \& Z% T" s5 {4 i! [( [, ~
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 3 I9 ?! l; v" P1 h/ J, d
( \5 y+ c) O' |2 {& K7 c8 z
                        DWORD dwR, dwG, dwB;
2 S- t' n( D1 ?) I& z# `' ~- L                        dwR = (DWORD)( pLight->Ambient.r * 255 );# D% o( j  O1 V6 @+ [; c' p# O
                        dwG = (DWORD)( pLight->Ambient.g * 255 );6 f( {& ^8 \% [
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
' @) e  V) x. R8 j- y                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        # u. W1 t9 p  o6 F
                }. k4 C; c8 p) D/ w
        }
, S9 Q- o' f+ i4 q1 }+ d5 r' p, Z/ z" g2 }' T2 Y  B% e
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );: a+ J8 b" O3 k+ R
        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) );
+ T" O) l/ o- L  |" \3 ]( e        ::SetLight( bLight );0 N+ ?) Q; o9 Y3 S: r- r

( Q7 a) F( m/ Z; m. O- V& i        // ±ao? ?D?í???ó á¤à? 9 `8 S5 y! o# Z
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
/ x- W! W; E7 K: n( d       
7 w9 P* K3 H, e1 {. ?; _1 R#endif // not WORLDSERVER! Z/ y% E0 O9 z) I( G! }3 j* P
}
! j/ X4 l. [! p: j" b并更换
* l/ e3 t1 N, I; e3 t6 `Code:
( [  V& `% w6 s* W6 P9 D  Q__FLYFF_INITPAGE_EXT
3 r3 h( o: U5 {2 I8 W定义+ `3 U, T8 D( b4 W7 y' E1 D( O

) ~+ `  ~/ V. x) _
& `! N( z% Q# V2 s; ^" ]2 ?4 G
" D  E* y1 e4 L" o3 t' }
$ D9 P1 R$ u2 l: F现在终于删除我的狗屁加速...
& a4 k% B, l: O  G. y
; o% I" D" v- W/ \3 p4 E# R( H/ L% `' E
- e7 k: h! o4 |) T% p3 I





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