飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:7 W4 c4 e! [" f0 u  n1 I; Q
尾翼:
# W: c2 X4 `) b" U  g% d
$ U. i0 f1 T# p" a5 ^' Y代码:3 M3 p# M# j$ f
CWndAutoFood::CWndAutoFood()6 _9 A3 V( R7 d
{
& a7 V% |# O4 L; i5 D        m_pItemElem = NULL;( o, V8 u2 H) a7 L6 S0 Z
        m_pTexture = NULL;( _8 V, v+ f' R. i9 @
        bStart = FALSE;
) }2 [8 d, S5 w- U2 M: r}" }6 i  J" Q- w- z. u$ C
/ ~3 G1 q/ O" k4 ?  u
CWndAutoFood::~CWndAutoFood()
; _; L, l) s3 \, Z{3 [% O) i: i% \2 W4 z, y/ P( ?6 q
        AfxMessageBox( "AutoFood ist gestorben " );: _( H5 K- ~5 V  _5 N* V
}
. u* x0 N8 Q2 V. ]( ], h5 y( m+ oBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
4 C0 y& o; _6 a% f; ^* i% P{
( T! {, L1 _6 D% ?" g' k/ M        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );& P& t" m; e2 v2 e7 K& V, L0 K2 N
}
! ?5 c$ p& h- u6 p! L" J5 h/ w0 ^% [! H/ a: S" m
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
  q6 w6 R$ e4 Q8 ^; Z- ~{! j% a3 a8 {9 s$ `
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );  o- M4 e, K4 F1 P( B
        CRect rect = pWndCtrl->rect;
/ i& d: U2 U$ c% u# \        if( rect && rect.PtInRect( point ) )/ Z4 S& \7 C: ~+ `1 T
        {5 M. k! D- u/ ]" y" p
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
9 J& u9 q' l% q                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )6 p3 [- E. l" T
                {
6 K4 D  W7 W, a                        if( m_pItemElem )
7 v% N; J0 m2 T- z5 S- ~; E! W5 T                        {
! t4 }, r) k4 }- a4 e8 z" ]7 r                                m_pItemElem = NULL;% f, h  U4 v& z* n  Z5 j; U5 k
                        }0 v  g# |) h! h
                        m_pItemElem = pItemElem;; W1 W6 H3 j5 p: s" ~6 I% g8 n
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
- C) j# L$ u* U7 H  `* y  n# X                }else{
" \& M8 |" r$ q8 ]                        SetForbid( TRUE );
) f+ ?' x2 P/ Q4 c* h                }' ~1 d! a* ^! P/ U8 p
        }else{  N; M# ?# k- m
                SetForbid( TRUE );( E( a( f6 w+ G- \* h. w
        }
% u6 A* z5 @4 }$ y* A        return TRUE;
' e/ w' F; z7 S- f* v}& C5 G9 l# A* T6 W7 ~8 p/ |
- w. h/ ^- J! @" z4 E
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
* F4 s2 x' |3 J) q- F7 |$ y{
/ w* S( ?( {4 M4 I        switch( nID )
1 r! M: G0 V" p0 M3 G0 I8 A        {7 ]  B: G# O) X7 B0 t! t/ y
        case WIDC_BUTTON3:
4 O( u: b8 S, I0 A' Y+ n                {+ l4 g& p; J  r2 _) Z
                        bStart = TRUE;
( o9 O. e2 {/ _                        break;
9 X; U9 w4 f5 L0 ?$ P2 M                }/ I; Q. V$ V' K9 b( H
        case WIDC_BUTTON4:
9 W, q2 y( h( ?) K                {
1 K) p: r1 A; e6 J" a4 D4 F                        bStart = FALSE;
0 n2 Y0 A6 p1 z" n$ m' `                        break;
  w" |0 {1 K/ P$ U4 Z( D                }
" \% I% D$ q; Q$ R. V$ w        }
# V6 j' I1 U, g) e, ^1 d        return CWndNeuz::OnChildNotify( message, nID, pLResult );8 T+ p$ F9 E& _  t2 j
}        ; M9 e( i: @/ H1 K
void CWndAutoFood::OnDraw( C2DRender* p2DRender )9 p2 N7 Z4 [6 u* r: w1 V
{, E; M7 ^- s5 [4 K9 V7 g0 H3 u
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );8 Y* j1 G& _% e4 x& \
        if( bStart || !m_pItemElem )* V) g1 W, w* t. u
        {
9 s; n0 V5 _/ N, Q+ A                pBtn->EnableWindow( FALSE );/ D2 \, i: G' _/ B7 p8 ]5 Q) i
        }else7 N6 t+ R& P6 S* L9 D& ?" l/ |
                pBtn->EnableWindow( TRUE );
6 d3 S$ c' D, N# N8 R" |        if( m_pTexture )3 [" m# P$ @, m3 N: V' t
        {; x: e9 j% G) U& @* H, s( |, N/ O6 ^
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );' }. [! k; \5 ]3 x0 C* s. u( }
                if( wndCtrl && wndCtrl->rect )) r& J) M5 y( g& w. }
                {
+ t3 M! J  v% i6 u2 P" ?                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
4 D, X' T6 T/ Q6 I. _                }
* G5 \5 a) r/ e8 B        }( D  n' W1 b* M1 l2 Y+ B- I, T
}: t% X7 e. @8 G: l* o( v9 Z6 u; D

2 y* x: i/ l" q. h9 b% d5 VBOOL CWndAutoFood:rocess()9 P5 t/ e# k, L! |# p4 u) g
{: \. o. `; g- G! A
        if( bStart )6 S7 Q. t  C; d" y; e8 ]( ?' P
        {
  ?! |9 v; j& b6 z- D                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
8 |) Y6 |, W& F$ H                {& }' g6 d' J' ?4 D* y: O# b
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
! }% d6 z6 x6 K6 a                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
$ y- ?; p' H$ v$ T; Q" `. _                }else{9 g3 E3 h' }+ K
                        bStart = FALSE;; O" X- r" I4 u: t% {
                        m_pItemElem = NULL;
1 x: ^+ G) t' G" ?- N( j                }
0 s# p" S/ ]8 _  `" X        }
; n5 [! C3 k( Z        return TRUE;
- U3 A- o) D- k& Y7 D2 i* L}
. ]+ U  n4 z. q1 s
! U$ i* P" [/ Y  K" C8 m! ^8 Y登录视频废话:3 T2 }: H. I1 p1 I/ I
尾翼:
4 B8 M* _: n5 E5 ?" E3 l
+ l/ O! W" y" L& J代码:
+ }! H( e: D; t7 n0 T/ X+ q, m5 s# p1 _! r3 O% |0 P6 D# H- s4 O* K, j4 |
void CWorld::SetLight( BOOL bLight )
& ]/ W0 {4 g& H8 B, d) i) fdurch2 n6 f; F# v( h: s
Code:+ o; @& P& z3 C/ G7 L
void CWorld::SetLight( BOOL bLight )
- ]: f# J5 t1 ^& T& S{. M1 c" V% G1 U+ s( \9 y% d+ _
        //ACE("SetLight %d \n", bLight);$ a# ?: ?+ A1 ?9 r/ ]7 O
       
& G. j3 X( K  ?#ifndef  __WORLDSERVER
* m; o, S$ b7 |9 a        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
) s0 s& G/ r" |) A0 ]7 a8 Y        CLight* pLight = NULL;
% U% B+ J6 Y4 b" {. D: h( _; W5 J9 _( a7 A- v" f' r1 f
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
2 f& X. M" o) R' u2 x8 r: U% z. F8 g3 ?0 ]8 ^" k1 e
        pLight = GetLight( "direction" );
; {; k5 s9 i! Y  [% W
- f! t2 ]1 N$ _/ M" O#if __VER >= 15 // __BS_CHANGING_ENVIR" v9 k+ o  L) F: y! [4 v( \
        if( g_pPlayer ){0 }! \1 K* r2 k
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
- I& _/ K/ S8 D. e: P# N2 d                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
8 `1 @4 {, ^6 S% q  U4 C  f                {+ o) Q5 i' H* b  r0 b7 L6 T
                        if( pLight )
% V: N  |$ g* X5 C                        {: [% }) z, E$ u5 B4 o
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
. g  p% n' O3 T0 G+ J                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
; B  ?1 X7 Y! N) P                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];8 J7 i# z( Y2 ~" q/ s: A
, ^; b, {# {1 K
                                pLight->Specular.r = 2.0f;
" e8 n; ]6 Y& G% i8 T! g, Y5 Q                                pLight->Specular.g = 2.0f;
9 U- r: }& Z: u                                pLight->Specular.b = 2.0f;
$ O: D7 k; m- G4 x* A+ @. g0 x        + J/ o& s$ _5 q
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];' A; Q3 D$ b2 h6 e) g+ z0 q8 t
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];4 @% P  e5 E8 U/ b9 `3 D9 `
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 i0 ]/ P% ]: D4 R% v6 ?, B% v7 g        9 e% _5 V% ]* V0 `
                                HookUpdateLight( pLight );
/ a' O$ E- |* W, Y3 U* [; w/ N. d, J
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );$ v+ E9 X5 P: ~  B  F5 ?
               
" {! n3 r; e: G: t5 h; ^5 N' ]6 p                                pLight->Diffuse.r *= 1.2f;3 Q) C) y0 j5 w; m9 ~
                                pLight->Diffuse.g *= 1.2f;
: `& v" m: P' K7 T( w  c5 n                                pLight->Diffuse.b *= 1.2f;! E9 k- w0 [& d9 p

0 e% U* t) e6 g$ B                                pLight->Ambient.r *= 0.8f;. S, Q  P! ~2 x; M: r. b$ _9 X  p
                                pLight->Ambient.g *= 0.8f;" u8 k! }8 P" `( z' I1 N' K
                                pLight->Ambient.b *= 0.8f;
% b( b6 B8 y3 F7 i        9 D# P  v  J1 a# i! h6 b9 p+ Z4 H
                                memcpy( &m_light, pLight, sizeof( m_light ) );
# t# C/ D- d8 W" N) D! z+ F+ L9 ~. K) ]- i3 T& b  S
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);; t( V" S0 V3 H6 E1 z
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
5 ~( C6 o$ d* j' V                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) W' d4 l. Q% G6 M5 W0 Y                                 pLight->Appear( m_pd3dDevice, TRUE );
$ p6 u2 }, m( N/ n$ ?8 l               
6 A6 E$ J* X% O. Y* `                                DWORD dwR, dwG, dwB;
* U+ ^, Q: c9 D5 @6 O% f                                dwR = (DWORD)( pLight->Ambient.r * 255 );
8 z9 U5 Z! s8 s. H                                dwG = (DWORD)( pLight->Ambient.g * 255 );6 m( [" h& @' K  q) N
                                dwB = (DWORD)( pLight->Ambient.b * 255 );$ a% Z& b) X% b
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );: p. X* S1 ]+ C6 `: R
                        }
9 w2 v0 u7 r" L+ j( ?$ c                }: ^6 q" y3 ?9 f6 |. Z
        }3 f* n2 y# Q$ O0 |4 |- P" o
        else; C2 S( }9 f5 T! E9 l
#endif 1 |( Z; j9 t, n

5 o* H, y- y. i0 T# G8 w        if( m_bIsIndoor )! |8 d7 ^! H+ ~* [$ R0 _; j% C
        {' j2 O$ k) Q& M0 n- f) ^: o# n
                if( pLight )& g- m+ c' M( p* A3 Y; H8 y# d
                {               
& [, q3 @" g( D* b: W                        // à??μ oˉè* & R1 I" U/ x4 n% P) n
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
) q' l' |: E1 |' ~. V                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
, R) i. A6 @2 ~+ \3 V                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
/ ?, q, J0 X3 q! j) j+ @' ]3 t# ~& _
                        // oˉè* ??à? 5 f4 E- i5 [, N
                        pLight->Specular.r = 1.0f;
: Z6 K7 e9 D+ e; b& n, e                        pLight->Specular.g = 1.0f;# j. _$ r) J6 y1 A) }! F+ b2 }+ @) H+ t
                        pLight->Specular.b = 1.0f;
, q$ _4 r4 h/ m1 |; m9 z& s2 `( ~                        // àü?? oˉè* + T: \5 E( |2 F& W6 o
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;/ g3 h  g8 r2 g
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;6 b7 W  O# o9 o; g' ~9 @( |
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
+ S) q6 z  e* E) C
3 }( T+ t/ c7 s7 N0 h                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.7 k) ?% @, U, K. S5 L- O
                        {
5 x5 g) t5 S9 {  D                                pLight->Diffuse.r *= 0.6f;
9 W. M: e2 f$ r. j& ]' g                                pLight->Diffuse.g *= 0.6f;! f# k% v6 d1 t5 _5 B0 e
                                pLight->Diffuse.b *= 0.6f;
7 I7 u  ?3 f+ K! I7 x                                pLight->Ambient.r *= 0.7f;8 a2 `' b7 g% a
                                pLight->Ambient.g *= 0.7f;: g. m  A4 _2 A* u) B
                                pLight->Ambient.b *= 0.7f;2 v, I& }, M1 b9 e# A+ K
                        }1 C& v3 t1 I5 E1 k* p

. X+ k- x) p3 r& _0 V& l, b#if __VER >= 15 // __BS_CHANGING_ENVIR/ ?' s7 H$ f2 C# @
                        if( g_pPlayer )
3 J! H  E* U3 L% l& O5 n! K                                HookUpdateLight( pLight );
5 O# y  P  d! u; `" H. v#endif
/ Q! |  K( n7 v9 q" k+ w3 ]                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );9 R4 e  K" ^. R+ S8 ?8 n1 O

+ N7 O) \) [# z% E7 o                        pLight->Diffuse.r  += 0.1f;
# b4 e( {. u1 p' t0 z- |                        pLight->Diffuse.g  += 0.1f;8 `- R# q8 i& n4 O: ?4 {" L" P7 B
                        pLight->Diffuse.b  += 0.1f;
  k$ n, T) j# N5 f* l; w6 J6 r                        // oˉè* ??à?
9 w1 }. N% O. ~, s( B                        pLight->Specular.r = 2.0f;  [1 f& L6 D( Y, Y, V! c, x
                        pLight->Specular.g = 2.0f;
0 }, S" P2 W0 q1 u3 P                        pLight->Specular.b = 2.0f;2 q3 N& |4 J$ Q$ u
                        // á?oˉ , `, o7 e5 _6 }
                        pLight->Ambient.r  *= 0.9f;& x2 i9 {8 E6 H$ `4 U
                        pLight->Ambient.g  *= 0.9f;
/ x7 \, p0 a; N) ~! S7 f, L                        pLight->Ambient.b  *= 0.9f;
+ O7 L6 N. l" {" t5 L$ J; c
# o3 ?) F  p" m9 S; ?( E                        memcpy( &m_light, pLight, sizeof( m_light ) );  D4 Y; ~7 a* G1 H6 M
                       
# ?- w  ]& N) U4 x3 Z: w                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );& [' y2 X$ G) S; v# A4 R/ }. k
                        pLight->Appear( m_pd3dDevice, TRUE );
  i) J! y/ l1 [' z6 w2 B        $ R! \8 d, ~  q+ L8 b
                        DWORD dwR, dwG, dwB;
' t, [% i' L6 v, A5 x& k; K( M& u                        dwR = (DWORD)( pLight->Ambient.r * 255 );
5 X: C" H2 U& X1 O; H0 L! o                        dwG = (DWORD)( pLight->Ambient.g * 255 );3 z# r4 b3 h& ~
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
. d' z% s  S7 _                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
, U, O* w/ j  q  E# G) g* |                }
3 o- @& `2 H! Q        }$ L1 L, F& d8 [& |
        else+ k" j0 B. `7 b
        {2 p% }6 i4 K1 s, ~# s
                if( pLight )
2 E8 d% }4 }5 ~2 q0 Z0 p                {& ], v( T7 |6 p) R  l: Y+ H
               
' v! |4 q# B. F                        int nHour = 8, nMin = 0;
* ?: W3 |: H! y; \        #ifdef __CLIENT  L' X( X( z2 N4 x- o- w; E" A0 D
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
# W  Z! p! U0 J1 z                        nHour = g_GameTimer.m_nHour;
' @$ s: R5 S6 s* n1 a8 O2 j                        nMin  = g_GameTimer.m_nMin ;( W* V& T5 o3 c  ]
        #else! n- }# m3 g1 r9 m- O8 h+ E& C
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
; I9 l) K; F% Y; i' ~; r                        if( m_nLightType == 1 )  O+ c* @4 B4 Q# k
                                nHour = m_nLightHour;0 @& ?: _  t9 j9 K& k, B4 @' t7 h$ E
        #endif
  a2 E; }- X, X5 |4 h                        nHour--;
7 K, t6 S% j1 P4 @                        if( nHour < 0 ) nHour = 0;# |7 T% P2 u8 H5 C, S3 r: M
                        if( nHour > 23 ) nHour = 23;
7 }* H: c& v' y- t2 c' S
6 k' w, ]. m* v4 d                        //if( m_bFixedHour )
; a6 Z6 P& o+ z# A                        //        nHour = m_nFixedHour, nMin = 0;
# D+ h* I/ J* Z2 G/ q" q( ~( k. x$ `                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];  E7 t3 p0 n0 g9 t# W
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
* Q- K6 N( b4 O! g7 I. G' M- U9 a( A8 f1 H% G
                        //m_lightColor = lightColorPrv;/ E6 D- D1 A% f0 e
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
5 d) Q# v  R9 u. w  i3 s8 @+ j                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;2 [- p6 C; H# s& X
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;0 r" O0 u% O, f1 `, f8 I
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
# {& ?; E% p+ ^9 I                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;9 {& h- c6 l! ?" T+ e/ v! p  G" T
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;4 D+ ?9 p) t  m1 V( J1 _
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
# E8 c2 Y% D% z8 b2 y! @0 H( g
- W! O+ M, d6 e' i* i                        // à??μ oˉè* $ z- ~% o5 K. ~0 }7 n' u/ w
                        pLight->Diffuse.r  = lightColorPrv.r1;
& D& d$ o# W" p8 G' v7 F                        pLight->Diffuse.g  = lightColorPrv.g1;/ D! D" }6 X+ Y& X
                        pLight->Diffuse.b  = lightColorPrv.b1;$ }* B' e4 D* D' R) B6 N
                        // oˉè* ??à? 0 W4 I- T  K9 B! I, }- l
                        pLight->Specular.r = 1.0f;: I8 w3 t  g0 t: L6 V
                        pLight->Specular.g = 1.0f;9 y1 H/ K0 [9 t$ u) z8 ^& _- Z
                        pLight->Specular.b = 1.0f;
( l& u/ \3 c5 T( c0 K                        // àü?? oˉè* 6 ?2 l! p7 k; T
                        pLight->Ambient.r  = lightColorPrv.r2;( g5 C: M0 M$ C: ]/ @9 F: J
                        pLight->Ambient.g  = lightColorPrv.g2;8 p$ Z/ a/ z2 w# I  K; Q
                        pLight->Ambient.b  = lightColorPrv.b2;5 P+ R1 X6 v5 E  q% q
  w* g# G' l$ G$ {1 K# M* q# p
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
0 G( j, h, ?1 G6 ~/ H$ }* s                        {: L/ u8 m6 \* w! r" C4 L% E
                                pLight->Diffuse.r *= 0.6f;2 ]# R4 l- m2 A+ O, \4 N
                                pLight->Diffuse.g *= 0.6f;5 c0 X( [; k* H
                                pLight->Diffuse.b *= 0.6f;! _% d- {4 n0 W1 ^! B, f
                                pLight->Ambient.r *= 0.7f;3 o3 h9 [6 L4 \
                                pLight->Ambient.g *= 0.7f;' e. @; x0 g* a# B
                                pLight->Ambient.b *= 0.7f;
+ T  Y+ ^' D3 r1 V# q6 K                        }
  r+ D9 l5 p; Q! m! ^0 s, Q# I$ S                       
1 z0 b. z% k0 q2 ~5 @$ @* l#if __VER >= 15 // __BS_CHANGING_ENVIR, H/ D, W- \% J, @9 `
                        if( g_pPlayer )
" Z( \$ F% U7 l& ]                                HookUpdateLight( pLight );
8 T1 X1 P, N- n3 W% \/ e#endif& o0 `8 p# F7 ^6 B% M
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );8 R7 O9 }/ z1 e, v/ j' I% _

% J( F, \% P/ R5 s1 F0 f#ifdef __YENV
2 ]: w. s( h9 f. w0 B                        pLight->Diffuse.r  *= 1.1f;
" |5 V3 }- A) U5 T0 |                        pLight->Diffuse.g  *= 1.1f;6 [1 S/ B  k( D
                        pLight->Diffuse.b  *= 1.1f;
0 B  V2 i3 O/ m$ [                        // oˉè* ??à?
+ Y5 B6 P1 }6 m  f                        pLight->Specular.r = 2.0f;
' W3 `# `# f* ?# {                        pLight->Specular.g = 2.0f;; C% h) W) }) Z' Z, @
                        pLight->Specular.b = 2.0f;
1 _5 a& w" B: N                        // á?oˉ ! a  b* S5 x' Q
                        pLight->Ambient.r  *= 1.0f;
" S( G# e) u. u                        pLight->Ambient.g  *= 1.0f;
; j7 }7 W( F2 x                        pLight->Ambient.b  *= 1.0f;8 g* I3 c5 }4 }( M$ n( }/ ?3 J
#else //__YENV
  c% k8 O) t6 a/ J. R$ d                        pLight->Diffuse.r  *= 1.1f;% ~$ ^  |; D0 C* v& C* ]
                        pLight->Diffuse.g  *= 1.1f;% J9 a; B6 V6 e# @; y
                        pLight->Diffuse.b  *= 1.1f;
9 ?- o# u% z% t# }; i( S  k                        // oˉè* ??à?
3 W7 d$ p, E  `  e                        pLight->Specular.r = 2.0f;
, V% V8 {7 {1 z5 Q: Z$ K" W9 R  Y                        pLight->Specular.g = 2.0f;7 B0 d6 D! ?$ a
                        pLight->Specular.b = 2.0f;+ M6 F4 g  s: [' X
                        // á?oˉ 2 n4 q0 d; E( z
                        pLight->Ambient.r  *= 0.9f;" z  D6 l4 Z6 }) u! ?
                        pLight->Ambient.g  *= 0.9f;
/ w+ Y2 v+ K$ F                        pLight->Ambient.b  *= 0.9f;# F5 V4 K# S/ X0 L& P5 Z5 Z9 ^
#endif //__YENV 8 z- T- M3 B( ~; q; K
                        ' D+ y7 y2 s' K; u, ^
                        memcpy( &m_light, pLight, sizeof( m_light ) );
$ V1 h- L5 |' [# ]/ U& w                        / ~& e; D' C; B# ?
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);5 b+ N0 q1 X6 P+ E' k( w
                        D3DXMATRIX  matTemp;
* e. d! ]( s9 m; }! y2 w' _                        static const float CONS_VAL = 3.1415926f / 180.f;
/ C4 Z& l5 \( r
: x' l  }; H: m' m                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
) P# w$ Q; g' E; J                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
& I8 l3 J; T' L' M$ [                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
, S6 Q1 s1 t, R$ g  b: D9 u8 {6 d/ P                        pLight->Appear( m_pd3dDevice, TRUE );
2 R' v! v% ~; [$ F0 I. ]1 H- K' t6 c: w9 c2 b$ M/ ]
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# t$ j' ~* _( _: y                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));5 k& k4 G, U8 H3 I3 }- E
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 9 G: X7 m0 J* L* f9 n

% O8 e  A% g, y% O/ h7 _                        DWORD dwR, dwG, dwB;; n, v4 J# O* r( G
                        dwR = (DWORD)( pLight->Ambient.r * 255 );3 M5 Z; N$ o+ y9 S. Y% P! i
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
8 r. z) p  A3 |6 B7 S& u9 C                        dwB = (DWORD)( pLight->Ambient.b * 255 );& M) A- W/ ~' w$ _/ @0 Q0 p# q
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
/ N# U* k, d% U$ z7 O                }% p* ~; j; K- h  P1 \0 ]
        }
8 q/ M' J( }! r" S9 i! `" u' P; T% X* T
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
0 m' r& {) p" E- y" E6 w        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) );7 `/ Y; t% P, U- B  Z, |' f5 X
        ::SetLight( bLight );. x  P' F; k: r! F
  m: D) d9 x& K& l$ t7 R* X
        // ±ao? ?D?í???ó á¤à? 1 e7 ~; s' q, J* S
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
8 s) I( E1 s6 I9 O! ]1 G        . w! i' g; }0 i
#endif // not WORLDSERVER) }( n+ r: W$ k& r$ S  E  x
}
- ?2 v- C/ l# U4 Z1 s1 Q, B! L并更换& N; Q! X- K" ]9 w& ^% Z7 e' P1 ]
Code:  d* H' ^' c' A' r5 O
__FLYFF_INITPAGE_EXT
7 p8 u$ ^" d) r" P; L( h定义
( P' @* v3 b4 X+ @2 P! i# M+ H
7 W3 T3 i5 n2 \" E" {/ F1 g  ^* m7 v1 T9 q7 R3 q
2 ]4 R% U$ u- B$ b! p# p- d0 J. O
3 A8 o+ u' b) L9 J# H/ P- x: y
现在终于删除我的狗屁加速...
8 d6 M% u3 S) E+ i: x7 @+ z6 J: U2 S( X( m" u, D  e8 z1 O
% ~3 V9 ?) i7 y0 f* \5 a5 [

' V1 c+ C0 I: m* ]% V+ Y5 L




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