飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:! B% Z5 s- f( ?7 A  z( z: t
尾翼:# [5 \7 ]9 h. N

' j5 _% N: l8 z; \( x/ i' q2 X, ?! T代码:
- D- K+ l$ e: P; @% TCWndAutoFood::CWndAutoFood()+ Y( U0 x' L- g% O4 E
{" j/ |2 ?0 k! Q6 _! b
        m_pItemElem = NULL;- T; ?5 |0 ~  T/ j; [( J0 V# n
        m_pTexture = NULL;
- c; _& I* _8 k3 ~0 t2 }        bStart = FALSE;
6 l2 p# f. E0 T  [}
, o! O7 s/ A/ F# M! F$ z& |3 N4 O2 ?; B) X% U
CWndAutoFood::~CWndAutoFood()
: r4 s# F8 ~* u! V' H' J. I{
( d7 I* \; v% ~( u2 W* ]0 c4 x9 {        AfxMessageBox( "AutoFood ist gestorben " );) w- L! }1 Z/ j1 i* o% F
}3 p- y: s1 B  A+ a; G: U
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
% a; y9 ^4 O. O. H7 N( Q* O{
; C) X& t$ \: \1 c        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
$ K( h, I& R1 k' ]+ ?6 O/ `; K! U& T, y}4 {7 t8 T: w3 W: _) S

0 F4 v2 q' Q. u: vBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
0 c) z7 Q9 p* x9 Z6 ~{
# x( O9 W2 J1 D9 k% m* V        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- ~# h& W% y" k/ ]! e3 G: {1 G        CRect rect = pWndCtrl->rect;
' ^! C- \+ _  @. N& n( u7 S; N        if( rect && rect.PtInRect( point ) )
' U# G! R  A- W' b% H. ]3 I. e        {
- b8 q' Z. \+ v* [' O                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
% f% e8 f- x/ f  T" @1 h/ h                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
% b6 T7 V: @+ J: Z, J' i$ s                {; p8 R' t' @$ @8 _
                        if( m_pItemElem )5 `* z- A; S5 h: e- t
                        {
2 Y) g- b1 s0 w2 U* ~8 S, C                                m_pItemElem = NULL;
& p: D/ a/ c" @% r. a                        }
5 V7 ^* `: G3 v, k1 z  T                        m_pItemElem = pItemElem;! s6 I! P* g$ l2 Y& a
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
& C( a; H% F+ ~: B                }else{
$ b5 W* A. a6 i0 k4 H- J3 h  R                        SetForbid( TRUE );
, w+ L8 T: P, [) M                }
. Y9 j' F2 D1 h4 q        }else{
9 r; _. w6 \$ b                SetForbid( TRUE );# l1 _3 x, c4 n* q1 Q
        }
9 H7 `, t2 M, e        return TRUE;& `. `6 O" B- E
}; O4 ~9 u$ O5 b+ c  f# [; Z9 T
3 f1 V; r$ ~# u
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
5 `2 [2 p: U1 ?8 P; u( f9 V$ z' F{
) a$ }+ x  I1 P1 w6 g        switch( nID )
0 _% }- d% J. N        {
9 v! B- B( s1 v4 v# P- Z- }0 J1 k        case WIDC_BUTTON3:
  ^$ N8 C2 N; g' _7 K6 j: u# f                {  l4 G7 I- q% V, h5 ~
                        bStart = TRUE;' V, p) A1 U8 y- s2 a3 z5 C% P
                        break;# P4 }( u4 ]& D1 Z7 _+ Z
                }
1 t9 r) Q" v' @1 e        case WIDC_BUTTON4:1 S2 j: R9 Z3 i
                {
( k, [8 T4 s: L$ \" V8 Q( U: z7 `                        bStart = FALSE;( `/ ~8 P( q- p; Z& I- r  P# [
                        break;. N1 N! H  I$ @$ o$ K
                }
$ z0 J& a4 l# E" D        }
: q% p3 P, m  Y        return CWndNeuz::OnChildNotify( message, nID, pLResult );
3 V$ e; N. Y4 W* C& L}       
' Q1 |2 o2 d- K8 ]0 x" Uvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
* r1 ?5 E/ S; B% _{( b) p6 p# d& C" j) w- C' y
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
! t1 @- ~$ W! \8 P, Y% U5 I) V        if( bStart || !m_pItemElem )
' u6 a9 l0 b( f6 }/ @        {
3 N8 T7 W7 U: x3 S$ v                pBtn->EnableWindow( FALSE );8 I) w) r, V" G" p+ `, C- B; a+ I
        }else
% R% J% f; t8 o* X- X- t                pBtn->EnableWindow( TRUE );: @7 l4 J5 o" |( j" `. u
        if( m_pTexture )
8 u' c- [0 _7 M6 @1 T        {! B/ z* W: Z4 V7 k4 ?+ |
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );+ }4 ]# W2 x8 z) f
                if( wndCtrl && wndCtrl->rect )) J! C9 D9 v2 ~: |& ]& T6 v
                {
9 K) V) e1 V) J, s2 ^! f                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
$ w4 J% Y; {+ a6 G0 H( h                }
) E! ?1 Y( n" N! C& D# n        }2 Q/ ?/ e" L3 \9 w
}
/ i, P5 P3 m% |$ R" e' Q
7 U* c! ]! Z, P. H3 _+ x" LBOOL CWndAutoFood:rocess()( B( q& _9 g0 M4 c' r4 J  |
{2 r1 v4 L9 r1 F0 z
        if( bStart )
! G& l8 q$ @5 x4 n5 u( ?        {( _9 b# \" |5 ?
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
& X# R5 z3 I0 F; X: Y: [) p3 k                {4 {* O* H/ A1 v  g8 D+ C9 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() )
& d7 l$ T+ c) ?  ^# b- d' u" D                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
# U) ~  W6 W9 M+ }8 }* v  n, [                }else{9 `9 e# X  U7 D, t
                        bStart = FALSE;
! d9 k' e+ y9 E) C+ \) u) y- d                        m_pItemElem = NULL;0 V& K& V# Z$ d% T4 l% N/ N: Y4 q
                }
3 u' ]# V8 y% x! D& j1 e! S        }
/ g: K6 ~; f& n! a4 {, L. p        return TRUE;
) T& m- A2 X( J" J7 `6 N}$ y! Y2 B# r, |, T  r
6 T+ S  R' W: A5 B8 z( \
登录视频废话:+ |( G8 g# j" H/ a0 b" _3 P& V3 D
尾翼:
! W9 w+ Q* M/ n; ]8 W+ P  P
5 q! {, l6 F- [6 x$ l$ V代码:& v! A. B8 Y4 i; A, R; |

, P% O3 \5 t7 K9 V3 O; W& gvoid CWorld::SetLight( BOOL bLight ): S% S7 ]& o/ }8 V2 X
durch
9 j% x& u, o: T5 I4 O4 z" |5 zCode:
- t; E7 G1 t( U7 d, [void CWorld::SetLight( BOOL bLight )' y: i: V/ ~7 r3 ]
{" g! m! J4 m+ j1 g
        //ACE("SetLight %d \n", bLight);7 O, v, |; J/ ^
       
( z$ ]" P" D! k& Y#ifndef  __WORLDSERVER
# C3 n; i, [/ b" i9 Z2 I        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);5 ~* g3 v3 V3 G
        CLight* pLight = NULL;
+ Z& q- F# d0 Z* {, P/ T4 z8 J
2 b" p8 ^9 D5 j4 v9 J6 Q        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
+ l- ^5 j, E7 p7 s7 s3 ?* n8 o" u3 y3 g( Y( d
        pLight = GetLight( "direction" );! `7 L7 Z9 B1 ?4 l. {

' z$ E4 R6 x. K# y#if __VER >= 15 // __BS_CHANGING_ENVIR
: {8 e2 `8 g/ H* @        if( g_pPlayer ){
8 Q  k& o0 O. c; h% T                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
* _) m1 Z; a2 I0 F; y- L& }+ G1 y+ _6 [                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!0 ~. \# ~, A; P
                {- q1 H9 h7 ^& Q% A+ y" N
                        if( pLight )( z7 }' K: f& b3 h7 b6 D4 ^; b
                        {" Q! S6 n, E  j( O5 L9 X! B6 O
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
, |) b$ s. `9 F% X0 ?% R" V                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
( [3 P/ H' ]; s2 s" c- H, v                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
' y+ G0 ?' b0 B6 W# B& z/ v& }6 G7 u, I
                                pLight->Specular.r = 2.0f;$ E. d6 }7 B! }6 o
                                pLight->Specular.g = 2.0f;" R- l( {- }; E2 q2 K% c
                                pLight->Specular.b = 2.0f;& [: s% S8 ^0 k
       
8 B0 X" i7 ^# A( Z" w                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
. g% E9 M8 {/ Z* k0 c5 T                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
8 I4 ~# {4 x% \9 I' J1 k                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
' Q) V5 q# C, t4 l        5 L/ I* J1 H; h5 U
                                HookUpdateLight( pLight );
. D( ^  @0 k( r
" U* W/ r2 L! I                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 M1 @* S/ P8 W0 j, r               
1 s) d0 h; ?" {" f9 ?: }                                pLight->Diffuse.r *= 1.2f;
- F6 ^+ d" I$ p! \( [2 T                                pLight->Diffuse.g *= 1.2f;' y7 @, x- l& j- f/ k) B) w
                                pLight->Diffuse.b *= 1.2f;# M6 V0 Q( N0 |5 {6 _- J

  h4 K8 q& W! L# q                                pLight->Ambient.r *= 0.8f;8 G& c; k: n. Q$ r
                                pLight->Ambient.g *= 0.8f;8 K7 l* K4 [3 s$ P$ W( {2 ^
                                pLight->Ambient.b *= 0.8f;5 u- D7 l1 e  x5 @3 t, W# V
        - x2 h6 C# S# e9 V) u) k* t
                                memcpy( &m_light, pLight, sizeof( m_light ) );
; U1 y/ S) e! E0 q, G5 b+ D  G# N# G: c% _: ]3 _" |- F7 e$ y) E2 O
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) }. g" F4 x& j                                 D3DXVec3Normalize(&(vecSun),&(vecSun));0 m$ K0 _! o5 }, |. u9 e
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! B3 N" W+ Q* k1 m7 B                                 pLight->Appear( m_pd3dDevice, TRUE );
( `; k  c( x6 L& r+ n- q, H               
+ v" q# \! V2 o/ v; L" I                                DWORD dwR, dwG, dwB;
- Q, B( d. k' I3 ~( j                                dwR = (DWORD)( pLight->Ambient.r * 255 );
  W! w7 m/ ~2 N! @. u$ N7 M- {                                dwG = (DWORD)( pLight->Ambient.g * 255 );( O/ W+ g0 @- h! N. u3 ]4 Z
                                dwB = (DWORD)( pLight->Ambient.b * 255 );  f% @* W9 x- Q" w; s
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ R9 M6 {9 q" i: x; t6 F3 b6 }6 q" {                        }8 {# [" t0 Q5 V8 ]) M4 k
                }' s" w$ H6 \0 a7 K
        }
1 K9 y" O( T7 i        else4 ?& y- g1 Q" p! z) J
#endif 4 [, K/ t; T: X+ ~& [+ q* l% f# g1 k

5 ?/ O& O5 p+ Q! A: y6 {8 d        if( m_bIsIndoor )- c; q& V: ]& I
        {
6 P  u6 b1 o% K( k                if( pLight )" W4 e. y$ S% t4 L, d/ u
                {               
8 r" x4 z& I  @6 A0 ~& x                        // à??μ oˉè*
. I$ |: L1 k$ U  p                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
: y, H) A: r5 ?% f                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;4 e" n! P  J7 U. y) x, I# ~
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
) _$ r" n* U. t; K# S2 S- w
+ a/ t" ?) T5 [0 Q" E" ]                        // oˉè* ??à? , h6 @5 `2 N* h9 l3 y
                        pLight->Specular.r = 1.0f;
$ K' Q/ x( Q" }                        pLight->Specular.g = 1.0f;
/ L" u+ k+ u* o% w                        pLight->Specular.b = 1.0f;$ l6 U; u3 r- q4 K5 U6 a) A
                        // àü?? oˉè*
! K  T1 y0 J; v) k0 C7 F0 @0 |                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;$ r* u* l8 m* c/ w" o
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;, q) w& Q9 r* x8 w! o/ i
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
# R8 Y" `" i  F0 ?' a! y/ \0 q. s8 k# H, S; S1 x$ z
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.' ?" ~! l' O3 Z/ m7 N6 @7 y
                        {
7 @% g2 ]  q6 y. L                                pLight->Diffuse.r *= 0.6f;
7 h" `3 |' _1 w+ R4 H) D9 I, _6 E$ F                                pLight->Diffuse.g *= 0.6f;
1 C  I! o3 l: x/ I, k                                pLight->Diffuse.b *= 0.6f;
0 P/ J* F) m" t) V# F+ b                                pLight->Ambient.r *= 0.7f;4 |+ X) ^1 A' e8 a- I
                                pLight->Ambient.g *= 0.7f;
7 ]' s* h2 g, J) K) K' c# Y1 W: R                                pLight->Ambient.b *= 0.7f;
$ Z3 J+ X8 Z3 p) R                        }) u) Y; ]$ U" T4 Y% V

0 J/ }# `6 ^# l# w9 D1 A#if __VER >= 15 // __BS_CHANGING_ENVIR6 A% e7 n! ~6 i& z5 [. F3 g2 H
                        if( g_pPlayer )$ P. |0 N: s% {( P( M0 g# Z
                                HookUpdateLight( pLight );9 L/ Y# R* |* M% O+ J1 T% X
#endif: L0 X# G& a# \1 w/ T
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );* l. l" q6 H$ f' D$ `" Z
3 [* }$ I: B) ]1 Y9 s6 `
                        pLight->Diffuse.r  += 0.1f;  L) {( T( Y2 W! G
                        pLight->Diffuse.g  += 0.1f;* l& v6 r  r/ _2 H: X
                        pLight->Diffuse.b  += 0.1f;. C* S& S- ~2 Z' G
                        // oˉè* ??à?
% V% A/ ]: Q3 a0 p                        pLight->Specular.r = 2.0f;5 _5 a( o+ N2 Q1 r3 E# ]
                        pLight->Specular.g = 2.0f;+ F/ u. }! ~5 t  d' g+ Z
                        pLight->Specular.b = 2.0f;" m* h! r$ \& j) ~8 U3 P
                        // á?oˉ
, ?6 n. [, {( v8 `( C# p& E. x8 C0 n' h                        pLight->Ambient.r  *= 0.9f;7 O, A1 P8 Q2 x3 P4 W" F
                        pLight->Ambient.g  *= 0.9f;
. t# m; ~- A% S5 K4 j0 I* r                        pLight->Ambient.b  *= 0.9f;8 ?: ~9 _  e8 `; k" r/ U: [0 p
. q- u% N( `$ w7 ~. W7 q  k+ e/ ?
                        memcpy( &m_light, pLight, sizeof( m_light ) );
8 _6 `" a" J% X3 }! P2 N% N2 z                        4 _3 N( L  `# q3 N$ ^/ L
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );1 U$ b# g% v8 {+ j& R
                        pLight->Appear( m_pd3dDevice, TRUE );$ {- \* m' q: C: A4 B# r- s* p
       
4 D/ Z" `. ~: g( y( U5 @                        DWORD dwR, dwG, dwB;& g7 R# ^/ ~3 o# {1 x
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
/ p0 a3 y3 \8 k" C* r1 T5 f: P! z# _                        dwG = (DWORD)( pLight->Ambient.g * 255 );
8 z8 \3 a7 P: F2 Y4 y" U9 u                        dwB = (DWORD)( pLight->Ambient.b * 255 );! g- I0 a1 p8 `7 L0 C
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; Q# ]0 d5 |( Q+ K) P/ ?' k                }
3 p+ l6 Q5 O, Z$ a. L        }
& ]% U* {+ {. L9 W/ o        else
9 p; G, r- R  H1 n' l        {
/ o: R/ T7 X* q. G) ^% F                if( pLight ), X. O- U9 B; u# T
                {2 a& q$ V5 d8 o' h
                3 a8 r6 Z* T+ G$ T2 m! E8 r* T* R
                        int nHour = 8, nMin = 0;
+ s- E6 s! a- T9 I# j        #ifdef __CLIENT
& v9 T5 S  E6 C* y5 `( Z                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 0 `" J& Q' T' Z' C7 N  s) K2 `
                        nHour = g_GameTimer.m_nHour;3 i& c% V+ q2 w1 P% y* b: t( W
                        nMin  = g_GameTimer.m_nMin ;- F/ P6 g# p2 V$ i: I( v
        #else
6 }1 s1 N( x9 \# q- R; w, n                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.: Y) o2 f" \4 w+ k) ^8 M: N
                        if( m_nLightType == 1 )
1 ~1 w" I) k0 s. s' e$ I                                nHour = m_nLightHour;* K6 W9 m2 S; N. ?' Z5 S& Z
        #endif
' k' C; p7 F( C# K2 I, F3 r                        nHour--;1 o+ Y0 @7 s1 P0 M7 m5 A
                        if( nHour < 0 ) nHour = 0;( M9 V  K% Z1 ?6 q- ?- V
                        if( nHour > 23 ) nHour = 23;. v1 F# s2 Z% \( v

' c* V: j: u7 j                        //if( m_bFixedHour )
. u8 E' r) i0 G  r- c3 M' I' O" o                        //        nHour = m_nFixedHour, nMin = 0;3 S0 h9 R( F% }
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];7 C5 b# [0 c: y' C: ^: Z
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];6 m( w# Y2 \9 ~8 e

7 r% t$ c, y$ N+ N7 X( B2 ~. ?% F                        //m_lightColor = lightColorPrv;# s5 Y( k# h+ N7 R  U- V
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;7 e' D$ h) ^' a/ G4 Y; h# w
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;0 j0 @& q' o8 N
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;1 @$ N) _7 {8 L5 U* `, _6 _
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
! s6 Q. i$ G8 y                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
( w, |/ K- Z$ k                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
* V. p: ^& O3 W/ a5 P# Z                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
( Q# \7 u8 y9 @8 e% I2 R9 @& }& A2 |' J) D3 s+ H7 \$ {1 Z2 l
                        // à??μ oˉè* + H! U; |( c8 g( t3 U0 }
                        pLight->Diffuse.r  = lightColorPrv.r1;
" q! V" \& s' h& Y1 X$ y                        pLight->Diffuse.g  = lightColorPrv.g1;
( S" D+ ?: l3 ^: [                        pLight->Diffuse.b  = lightColorPrv.b1;: z5 F7 U& ?4 j8 M$ R  P9 V! @
                        // oˉè* ??à?
1 y5 [1 r3 m( ~7 x( q* M7 G                        pLight->Specular.r = 1.0f;
) n5 |  L- K8 q4 M& H" ^                        pLight->Specular.g = 1.0f;" D6 v: q9 U3 m( T5 C6 B1 P: F
                        pLight->Specular.b = 1.0f;
; L7 J5 y) ?+ ^                        // àü?? oˉè* # l3 _8 d3 @* E5 T
                        pLight->Ambient.r  = lightColorPrv.r2;
8 I. K* B- D3 ]+ v3 u+ Z5 f0 E                        pLight->Ambient.g  = lightColorPrv.g2;$ D5 o! e5 [% E" G& ?7 P& J% B4 F8 {6 D
                        pLight->Ambient.b  = lightColorPrv.b2;) Z. Z% |% @. I2 p8 Z

3 w, p" s8 K9 M1 O                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 x. q' }. E# D. T" W4 c: A                        {* l, W( B! x! T7 d* B
                                pLight->Diffuse.r *= 0.6f;
/ C" Z( e1 Y  q                                pLight->Diffuse.g *= 0.6f;6 v; E$ d) w% ?0 I* O. J
                                pLight->Diffuse.b *= 0.6f;6 k# o- f( J2 j3 ~0 y7 x
                                pLight->Ambient.r *= 0.7f;9 [4 X) E1 e/ i( H# \+ Y. p' U4 [% r
                                pLight->Ambient.g *= 0.7f;. @. T7 L7 v) H8 E) I
                                pLight->Ambient.b *= 0.7f;4 o: `, V9 ?4 n: k4 O8 P. u! k9 k
                        }; ?3 t  E" Q1 e# j, x! [, l
                       
' c1 z3 e& ~/ S6 Q& c" Z#if __VER >= 15 // __BS_CHANGING_ENVIR
' ^0 v( T) M3 V$ V2 O) ]                        if( g_pPlayer ); H& l5 t( k% ^- w& O" ]6 M
                                HookUpdateLight( pLight );
3 f; k4 \2 V6 ?: ^* P#endif- U/ [! E( z1 j
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );* y6 R: N# e1 P9 l* ?

" ^3 N0 z+ O, ]#ifdef __YENV
( c. z0 E/ @; ?. R9 ]' e4 p) Q                        pLight->Diffuse.r  *= 1.1f;/ E- e; j- m/ |5 M3 r1 d
                        pLight->Diffuse.g  *= 1.1f;
& Q( Q/ F. [8 R- |                        pLight->Diffuse.b  *= 1.1f;
! @  l% {( X' m                        // oˉè* ??à? 8 }( A6 s& a# g; s  l
                        pLight->Specular.r = 2.0f;6 ?% b0 k$ c1 _/ M! x
                        pLight->Specular.g = 2.0f;
0 n' s, u, `' Q, `                        pLight->Specular.b = 2.0f;
( G4 E2 X  A" ?) b                        // á?oˉ 0 s) B1 z! J  S5 h4 U$ n
                        pLight->Ambient.r  *= 1.0f;! H) _" r  b4 l1 _; |
                        pLight->Ambient.g  *= 1.0f;
7 y: m2 o) v( P9 Z1 b3 `8 |                        pLight->Ambient.b  *= 1.0f;2 s# c/ y& `: w
#else //__YENV
9 W9 s5 T$ z7 G* @; ?                        pLight->Diffuse.r  *= 1.1f;
9 `0 I. o- e8 R* C5 L* z                        pLight->Diffuse.g  *= 1.1f;$ X9 a2 @# v5 I" b- @+ ~  U
                        pLight->Diffuse.b  *= 1.1f;- l" \+ Z) E( u) m! n7 ?0 Z% f
                        // oˉè* ??à? 2 i; a. d5 i) t4 `) }, o
                        pLight->Specular.r = 2.0f;4 b% k# k0 y0 P- F. w4 U
                        pLight->Specular.g = 2.0f;: d! ^8 Z7 H- |! M, l; J( }! ~
                        pLight->Specular.b = 2.0f;
) J9 C- X2 `) R7 i0 D8 [' c1 Y                        // á?oˉ
$ w" ^. z. n3 u                        pLight->Ambient.r  *= 0.9f;
' ?# \% v9 \+ Y4 B2 {( P' E! U                        pLight->Ambient.g  *= 0.9f;  w3 A) a- B+ l2 I+ E6 s! I8 P! }4 C5 U
                        pLight->Ambient.b  *= 0.9f;
$ k: [2 P( r1 h' I1 u% d$ A/ X#endif //__YENV ' i1 _# e3 J7 J
                       
; M5 _2 r+ T5 I& l+ ~3 \                        memcpy( &m_light, pLight, sizeof( m_light ) );2 |; i3 p+ ?3 B* t2 u: V* \
                       
7 u/ D4 m* v+ E- E4 `                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
) T) U/ @2 A( i5 X6 E. W+ |% Y) w                        D3DXMATRIX  matTemp;
% j3 h* A& u5 i* M; `# p                        static const float CONS_VAL = 3.1415926f / 180.f;
' d+ S! {$ `$ O8 _1 |' G
3 k7 K6 p  G& o1 D. j                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
; v6 O: q2 ^" {  u! g( X8 h4 b                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
) D, ~; c' T4 H1 S6 h& O" E                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 6 l/ V' j# u; K- Z
                        pLight->Appear( m_pd3dDevice, TRUE );! I6 {+ L- v+ t+ J4 Z& I' d1 @
, _" R* G& c! I, S# S" f
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);, I+ q) {9 h) D1 E* A/ m: w
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));, m( T. f# q% b+ p, U8 s
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 e) {8 K4 u- b. S9 b4 F. v' {, ~; }5 Z( h
                        DWORD dwR, dwG, dwB;) H) }: e$ J, h6 y: \* ^; X
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
% _7 }" c. T) R                        dwG = (DWORD)( pLight->Ambient.g * 255 );
5 o' n" X7 ^7 S& P                        dwB = (DWORD)( pLight->Ambient.b * 255 );
/ ~4 S/ _. ]# o, X4 y                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        , T2 ~, T  r) l. ]9 C
                }1 ]3 q8 J3 o; X
        }
& ~7 S  H& a+ g, Y- t2 D# }6 ]4 y- N
+ k4 S1 C% M2 c  t2 }# \9 h        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
: H+ _0 x; Q6 b2 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) );8 ^8 [6 k% M/ ?% |4 l9 t& E
        ::SetLight( bLight );
2 O# H. Y3 W& \
! ?: }1 T, Z6 f9 @8 g# h& K2 Y        // ±ao? ?D?í???ó á¤à? + E4 N& |- B5 x. c% w
        m_pd3dDevice->SetMaterial( &m_baseMaterial );/ D; y+ l$ c9 o
       
; m2 k( W$ P$ `4 n$ T1 x#endif // not WORLDSERVER* w. h& _5 c) e
}/ U' L  `! F4 W- y6 _" K# [
并更换
+ u/ l+ B1 |3 ~: X. o9 K. S% l, D7 uCode:% R: z0 S( f1 r& ^
__FLYFF_INITPAGE_EXT
. E# i3 k0 {5 X3 k) y定义8 x2 @* ]( E- ]) \: j
5 o) p1 ~1 \+ U$ U) n( f5 Y* \
0 s5 M9 @0 t: j! `
7 S8 D7 V6 h7 x3 c- V: o

# S- S8 F( d3 p4 R' d" T2 J现在终于删除我的狗屁加速...
( s& I' R: D* d7 j( `
  O& t3 d# |* q. H. I, |4 T9 s4 R' }. A1 r4 H3 j7 G5 ~8 O- n

3 J# Y) G; l" T




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