飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
6 R  \4 U! i& Y. Q$ h尾翼:
5 m7 Y+ T# B5 U' u  Z$ B. A" A% g7 S! v5 t! C8 M- D! z
代码:8 t+ [+ A, b) T# j+ _1 _
CWndAutoFood::CWndAutoFood()
- b, o1 a9 }. K- ~( ]+ ]1 I. V  p{, @9 ~8 N3 Y) Y% b6 k7 s8 F4 \+ h
        m_pItemElem = NULL;& A2 V2 K, h' `: [2 S
        m_pTexture = NULL;
; W4 j6 ?7 a6 Q" d. t1 D        bStart = FALSE;% G$ [( c; B  b4 N& P5 e1 G
}
$ @  K9 E& t2 h; T. _+ v# t+ W" T' i3 q8 r8 O( N7 R" I. C# m8 o
CWndAutoFood::~CWndAutoFood()
6 n: l* b0 z. }( |( M. c5 \{7 I4 r# f/ v) E% Q% Y
        AfxMessageBox( "AutoFood ist gestorben " );
7 o1 F2 k9 ]9 D. f' n}, e) k1 t0 h/ U$ @
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )* [$ @' X1 |5 P+ Q! b1 H. B
{
% C1 c7 V+ `3 v9 Q        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );  u: s- A( i3 [& K$ b6 W+ T1 Z; l1 ^( o
}
& f9 ~3 F( t8 c1 N( G# _; V6 u
; C( b! T, @$ PBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )  ]$ U( H* \" i
{* R: R' X/ H1 a
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );7 J# m) b$ e# t
        CRect rect = pWndCtrl->rect;
# I, J# Q: J1 {9 b        if( rect && rect.PtInRect( point ) )8 m. V' @9 t6 {1 [* @. Y$ A% Z
        {- R* |1 x3 M& Q3 r
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );$ I" r3 S% [2 q# R; O4 ~
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )- k0 C# r& p0 p. h7 I
                {3 `) i+ p9 r/ W3 w2 H2 F* O
                        if( m_pItemElem )
3 [% P9 I3 b# r8 e$ m2 e+ a1 I                        {+ Q: D! k1 [' F$ t+ O% n
                                m_pItemElem = NULL;
3 M# @" f7 E& @1 f                        }# @$ p4 _$ q; @; n3 \
                        m_pItemElem = pItemElem;7 z% `, [' S: K( d! q$ h
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );8 v' a- @# H! ]( a$ t/ y% x
                }else{* m) z8 H) B7 P! F) _
                        SetForbid( TRUE );0 d; s7 L& Z  O; E- S: j! g
                }
; c  S- g0 z. T; P7 t. _( ~        }else{* c7 ~& @) X" k1 J6 v0 W- N/ ?, j6 B
                SetForbid( TRUE );
* [9 T% w% \5 [1 m+ G        }  F5 r2 `; p7 z( {
        return TRUE;" z+ y6 j2 W3 x# L' n
}
( ^4 A$ D2 R1 v- F% ]2 {7 P* I" Q& {6 t, G3 ^
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )& U. ^: q7 n7 R" G* \; l5 m
{' `+ l1 F0 V$ L: [8 L
        switch( nID ); k: r% D. O+ X  o! C8 k) t5 U
        {" g$ m3 d% n9 T) K; L  F6 }/ V
        case WIDC_BUTTON3:. u, O6 L/ X! d% Q9 }. c3 L
                {
2 U& R6 i! B/ D9 a2 d2 _- ^                        bStart = TRUE;
+ V1 c: C; X( |8 K8 |, Z) _                        break;. x# v9 i9 f2 h% `( X) W
                }4 ^9 K8 t- H1 E/ o: A& }
        case WIDC_BUTTON4:
2 W3 e& O6 O: T/ }- q  j4 a                {; Q) l( _* |1 q: O1 T5 Q
                        bStart = FALSE;
- K9 E# O" w# s  X                        break;) b5 ?0 Q( b  n( Y4 D4 S  r
                }) l" f5 H  e2 h9 X+ h' a/ G4 ?
        }
& B8 a7 e) Q: i1 E        return CWndNeuz::OnChildNotify( message, nID, pLResult );! T! r* H7 {- X/ ~
}        1 B% R) ^5 y: i$ a- g7 m
void CWndAutoFood::OnDraw( C2DRender* p2DRender )& }$ B6 k4 [# S
{: d: E9 x7 j3 W  L
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
; ]4 R3 j  i! k& H        if( bStart || !m_pItemElem )
2 |0 L" A6 f' A0 r  q0 Z2 t! ?2 }        {
$ h- b( R3 I4 V                pBtn->EnableWindow( FALSE );) `! c% H7 h8 C# P+ t0 c1 K
        }else0 G% }* H) E8 G" M+ z' @
                pBtn->EnableWindow( TRUE );3 V9 h& [: A  n' u+ W( m+ H9 ]# m
        if( m_pTexture )9 s# d. `1 [( |9 y
        {0 Q9 N( T" }  Q$ ]! u% l4 h% P( {
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# L1 X7 T& r; q$ h7 l                if( wndCtrl && wndCtrl->rect )8 S; \2 P' p7 @$ g9 A; Z
                {4 U, g5 [7 p. s/ i' O# H0 @% T* M
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );; {7 _$ J6 ?& {' j# y( a6 ^; {& D
                }" d: A5 M5 ~3 Z8 w. p, G( s
        }  j6 A) r( E- h+ T2 q; F* I  e
}+ u. @6 H" T9 Y
$ _8 W( e! X* T* M, t2 G2 y7 v4 P
BOOL CWndAutoFood:rocess()
7 Z. K/ n7 y" c0 K0 T9 g$ \  S{2 A* q" F) E& l5 q6 j
        if( bStart )/ m4 D& W% j6 Y* @1 U
        {0 d9 F; ?2 P! o4 h; k
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )/ O7 \; O- |& [5 ]: H" @8 I% d
                {
& i0 N% J+ ^& \, I$ G/ \                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
  X) \8 R) [& g4 d0 W5 p2 ]6 Y                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
4 {1 `+ k5 K# k% m. z                }else{
0 e3 @$ }. p5 `' I( i* b                        bStart = FALSE;
) z: ]3 d5 D; T& _1 S( g+ F                        m_pItemElem = NULL;4 E" g) }- ~9 Y9 l7 ]
                }  d/ x% D- T" ~4 [& M2 \+ k# ^6 ]3 G
        }
+ A0 f6 }/ g6 s+ T6 F/ c8 n' f        return TRUE;
  A& f+ d7 ^6 z, q% E; P& k}& e% _; C, ]: W0 h- k

/ j5 c  F, a& |# A, v6 m7 V登录视频废话:& |) a* E0 `) U5 n
尾翼:& O. f% R1 r. K( T
; p- B/ ?* f8 r3 b/ z
代码:
. l4 @/ ^* c* I, @. ?* }6 A  B7 G9 A+ }) ^; W- [  h$ G9 B
void CWorld::SetLight( BOOL bLight )/ t) A7 q$ w& B5 N" L
durch
# V! R2 x& m9 ~2 y( |9 n; V* GCode:
2 D! k" _6 _  z7 B6 n% Kvoid CWorld::SetLight( BOOL bLight )3 D. ^( d2 @1 A
{
6 T" ?7 P: D% b0 \& W3 B        //ACE("SetLight %d \n", bLight);
2 m3 t& _# x2 i0 L; z; d: Y' w0 K        4 d% s$ f% ~/ e" m! x
#ifndef  __WORLDSERVER
: O! p* P/ f. r        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);" `2 f) z2 ]2 B; u; M/ H1 ]3 V! [
        CLight* pLight = NULL;5 _' e2 m: c% f4 l/ p6 [

" R5 |/ S5 U! v) t/ [0 w        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
; ]2 O! @3 U* Q; f- x4 D: l2 q! D4 C# Z) P
        pLight = GetLight( "direction" );
+ X0 Z( j2 Q/ }0 s' Y: V" o5 e
0 T" W( T. a7 i" l: G+ d#if __VER >= 15 // __BS_CHANGING_ENVIR
- E" K* x1 ?" c3 ^' g8 U9 z        if( g_pPlayer ){
; k% x: J9 X0 l4 Z2 }5 T                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );7 I- {6 z8 i' C6 f
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
% W/ |4 E& L# j3 I: Q& g                {) Z$ D/ O$ O5 Q! j
                        if( pLight )
, [# A6 m5 {( c" |/ o) i% i                        {
  [' b* M7 n5 c2 r7 t7 O$ W                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];# z/ {* L& Y; f9 A; k  @- Y, P8 H0 [
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];4 M: M6 C' U- j8 e3 A
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
* q; L2 ^) @& @/ Q5 ]' a, M
3 P5 ^) Y) W  ~, ?2 S& f                                pLight->Specular.r = 2.0f;9 R  C# J  B- l) m$ t+ @  }
                                pLight->Specular.g = 2.0f;/ E3 u) Z7 e2 a) L5 j
                                pLight->Specular.b = 2.0f;1 I' y9 o8 z# d( p
        1 j( W+ s% x* C5 a4 P8 f  O
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
3 r4 N( w' r$ F4 V  n( Z/ n" y. M                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
6 I1 \, C( h# Z' {5 q: Y5 [8 {( Z                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 v4 V6 }% t# s2 z       
; I6 l- Q: `% m6 Y% R: t* w- ?+ A4 x                                HookUpdateLight( pLight ); / F+ o5 z* R! X& Q; j9 X
( m" t9 U& ~9 v4 c6 f- m" X7 t
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );, w! E' r. p- Q, A! h' e
               
9 G8 N8 l6 Z( j. j: e9 m                                pLight->Diffuse.r *= 1.2f;+ s- n9 m) ~, F5 N' v6 R4 O- X
                                pLight->Diffuse.g *= 1.2f;
& H. j; F. ~  o! o                                pLight->Diffuse.b *= 1.2f;
1 E% w8 Z2 ~$ K3 q: T" y* a/ y& U5 l6 X/ j4 s
                                pLight->Ambient.r *= 0.8f;
; ^) S2 ]+ [9 O: V( q- h                                pLight->Ambient.g *= 0.8f;
) g( X' D8 H6 S5 C% x0 P) Z                                pLight->Ambient.b *= 0.8f;" Q) Y* w0 d; J; ?) q' {/ \
       
" g8 B1 s) B! A                                memcpy( &m_light, pLight, sizeof( m_light ) );* M4 B7 p8 v3 w* S; [
8 X; Z& a% n1 E
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
( ^( [) Z4 s4 Y! ]& B                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
2 P  E+ `# D8 T6 A5 ~9 C7 N                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); * \% m1 r6 z% i8 [, [
                                pLight->Appear( m_pd3dDevice, TRUE );4 u) k! h' L9 f6 {
               
* U- a9 V5 g/ o+ _7 Q0 j                                DWORD dwR, dwG, dwB;
) b. N6 Z+ C% G                                dwR = (DWORD)( pLight->Ambient.r * 255 );9 D0 t) C  H* D( C+ c
                                dwG = (DWORD)( pLight->Ambient.g * 255 );# R, T" {  ^8 n1 T7 q
                                dwB = (DWORD)( pLight->Ambient.b * 255 );, G8 I( p+ X+ y" M
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );" z0 l+ A& ~* t- f" m
                        }: o; M2 M$ i; S7 h3 f9 a
                }
( m! j! M7 D2 \        }
; _7 d* \& L% O0 o        else& A8 Q! c! q" X; c
#endif
8 u9 n$ n- }3 n2 o, G: i" @1 c: p2 g% ~* C. N$ u: F5 l# L
        if( m_bIsIndoor )" l! @& u: v6 `+ }1 }( L
        {4 N4 I* L1 f" l1 z- v* [
                if( pLight )8 D. Q+ R; N6 |* `5 B  e+ r4 p2 i  F
                {                1 M3 Q7 g- h# ~# L
                        // à??μ oˉè* 5 u1 ?+ E1 U* H
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
# i$ V& b$ Z0 m# [4 v                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
" C: ~/ U8 x$ b' k4 d  j                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;! n" S. |; W' C  c
" j5 I2 Q; w# S1 i$ f, A
                        // oˉè* ??à?
9 b  D! u8 y- H. Y/ `" C                        pLight->Specular.r = 1.0f;% y2 [8 L5 L" r" @- t$ j
                        pLight->Specular.g = 1.0f;  t7 [5 X/ I3 p& ?
                        pLight->Specular.b = 1.0f;
3 n) H( m) [+ D& x                        // àü?? oˉè*
9 ^6 Y+ q! k) z2 h3 e                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;$ J4 y4 d  f% s: B
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;* X; ~3 O5 i) U7 K8 }
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;/ j" Q) I/ x8 U* M. `% j
' N/ ~0 \( ], ^4 Q8 X3 g
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??., b% r$ r+ [4 x* o
                        {
! q' d+ i; D/ P8 X) ~- I                                pLight->Diffuse.r *= 0.6f;
' n0 _; P- d" D: x2 o' i& k                                pLight->Diffuse.g *= 0.6f;
+ W! {+ |: g* @( H8 Y0 h                                pLight->Diffuse.b *= 0.6f;6 w" I" W  `- Q2 a% {# d
                                pLight->Ambient.r *= 0.7f;9 Y3 y4 e  N3 ^
                                pLight->Ambient.g *= 0.7f;/ Q8 B$ O2 A! M0 k$ c6 h; e0 B) W
                                pLight->Ambient.b *= 0.7f;
' j# P; {$ O6 o  w" j$ Y- I                        }& o5 [7 O5 d- B

7 s0 E( P  y3 h9 b% y8 J+ @#if __VER >= 15 // __BS_CHANGING_ENVIR
% W8 o- t$ y/ u  {                        if( g_pPlayer ); Y) b6 g' ], E3 R9 b: s& u4 e" a
                                HookUpdateLight( pLight );. g) l6 Y- U7 |9 L/ a
#endif  ]0 C0 |* ?: @6 ]! A! ?' }: z% r
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );3 h9 x& `" K# f" P9 [
) T$ t1 y$ L! j5 W) D; x
                        pLight->Diffuse.r  += 0.1f;
8 i+ S& |4 ^0 ^3 ?4 n& k9 }                        pLight->Diffuse.g  += 0.1f;- Z* s/ K$ A- Q3 {7 P2 h
                        pLight->Diffuse.b  += 0.1f;
5 z: V, o" w' f                        // oˉè* ??à?
0 F% ]2 p+ h' V/ v% ?                        pLight->Specular.r = 2.0f;
- ^; [4 }# V* [                        pLight->Specular.g = 2.0f;
- i! Z5 x) _9 z; H                        pLight->Specular.b = 2.0f;# N, f* ^. A5 X# {- \
                        // á?oˉ
, r$ @5 ?# J: C5 ~3 v% Z, W                        pLight->Ambient.r  *= 0.9f;
* x% ]* m2 Z# T0 `/ O3 w; v                        pLight->Ambient.g  *= 0.9f;
. p1 N% v1 x9 A% @, j                        pLight->Ambient.b  *= 0.9f;9 x  _2 s$ z) g6 d
4 q& {. V. k- C( ~( J" ^
                        memcpy( &m_light, pLight, sizeof( m_light ) );
* L' q: j) X) s* W. X                        7 q/ n  k; ^) [: j/ |
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );% J. N* H. o) _+ L- s
                        pLight->Appear( m_pd3dDevice, TRUE );' r9 B8 O* V5 F. a8 F
       
3 M7 G0 e* a. F" u4 d- i# s) X                        DWORD dwR, dwG, dwB;8 l9 N, m# g) c/ T3 y
                        dwR = (DWORD)( pLight->Ambient.r * 255 );* C8 l$ ~( L+ O
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
5 y8 h/ _; |6 ~7 ]$ V; D1 \                        dwB = (DWORD)( pLight->Ambient.b * 255 );
2 V4 A) S+ s- [% ]; P                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );/ z* z5 ]( @+ r( U8 p# a0 y8 Q
                }
9 D0 V( G3 b# @  V+ a' K  Z+ ^        }2 h) K7 Q, \" w) }. w
        else
: L: V8 x; u& [/ \" A9 [        {9 f; a) q% _# ]% v" v/ @  y
                if( pLight )
- I$ F! j+ D/ N: L' ^                {
" w' N) V9 a# N* R/ l               
2 S4 @0 @7 L9 \6 ~8 \2 G                        int nHour = 8, nMin = 0;
4 b8 I4 T* o* h; a0 v% b# Q# r, s        #ifdef __CLIENT
1 {1 ^0 _5 {0 N9 ?; H                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
: G- S) A# g) O+ s/ Z; n                        nHour = g_GameTimer.m_nHour;; ~- M0 \1 W# l
                        nMin  = g_GameTimer.m_nMin ;
6 Q* ~8 ?$ A+ V        #else7 F  p1 x. `3 Y* f( }8 y& K
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
6 S3 j( n0 H1 D; G1 B                        if( m_nLightType == 1 )
$ l0 E& }7 s+ g5 h, s                                nHour = m_nLightHour;
; m2 @: y" i, u+ ]( A        #endif, P+ e' q0 m1 z; C0 {
                        nHour--;
# n( a2 a2 [+ B% m+ ^5 {2 |                        if( nHour < 0 ) nHour = 0;
3 q+ N# |0 G' n& P                        if( nHour > 23 ) nHour = 23;$ s" F' b$ V" y' P8 K

5 I3 u$ b( {+ G3 ^: n                        //if( m_bFixedHour )% O, R, C/ n% V) _; Z
                        //        nHour = m_nFixedHour, nMin = 0;
" L8 x% [* `/ @; e- j- a                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
! c$ d8 B8 [& \9 Q3 d                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
6 `  G0 j' D6 I0 _; n' l5 c( o% x
: u( o# a$ X8 u; g                        //m_lightColor = lightColorPrv;
* i% N1 i# L) d, z6 k) Y# f% r9 m                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;! T2 C$ u+ `! ~2 t5 ^
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;: {. N6 Z6 W7 f/ u+ H- y$ M  n; T
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
2 Q; U0 \% S& `                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;" [- Y- P: \9 U, E7 j  s
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
3 k6 P. Z9 G6 j1 k                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
" S# v$ W/ t* g$ l( c                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ D5 m/ V7 e/ N, ]$ w9 T: p! J# {2 ^. E1 \+ @
                        // à??μ oˉè*
0 ~/ l; T5 Z2 J. W                        pLight->Diffuse.r  = lightColorPrv.r1;0 Q7 Z8 f* S, f+ G$ K# k2 `8 b
                        pLight->Diffuse.g  = lightColorPrv.g1;* X$ b0 b: \! k: d9 z
                        pLight->Diffuse.b  = lightColorPrv.b1;
* g) X3 J1 G- F5 Z- m                        // oˉè* ??à? , K2 l/ t. q) W) S. Q, d- R
                        pLight->Specular.r = 1.0f;+ r. J5 R- d; g# `  h1 c
                        pLight->Specular.g = 1.0f;( S+ T+ h% r' X2 W( i
                        pLight->Specular.b = 1.0f;+ G& w) d/ I# s2 A+ p% N- y
                        // àü?? oˉè* - x2 M/ j* k  Z3 W( c
                        pLight->Ambient.r  = lightColorPrv.r2;
9 q- T1 {; n8 j% ^$ ]) K                        pLight->Ambient.g  = lightColorPrv.g2;( q) A. I6 w) |' t( M) y
                        pLight->Ambient.b  = lightColorPrv.b2;
" Y( s: j4 C, b+ L) w* [
$ U. s/ L2 \& H! R                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
) E6 O* ~( F8 K) o% H& q                        {
8 H8 L' ?, I: t9 _( \                                pLight->Diffuse.r *= 0.6f;' w2 v. K6 d& X) b( G
                                pLight->Diffuse.g *= 0.6f;1 ~8 r/ Z+ L& s9 X# U! l7 q; F( i7 E( `
                                pLight->Diffuse.b *= 0.6f;
% v; d4 z5 X( j( Y7 Q# t                                pLight->Ambient.r *= 0.7f;/ O1 A( A5 a% \
                                pLight->Ambient.g *= 0.7f;
( v& m; L5 \. ?8 e                                pLight->Ambient.b *= 0.7f;
/ F/ w3 v0 W3 m7 h: P) S4 z                        }
+ @; p5 ~4 t6 S: ~( P! m                       
0 c9 A+ H+ v/ z#if __VER >= 15 // __BS_CHANGING_ENVIR
* L9 B) ?0 @8 [                        if( g_pPlayer )
/ D3 V% M9 B! r, F& f+ J+ ]8 y                                HookUpdateLight( pLight ); , @! W; O1 T( \2 c- K
#endif+ `- T& U9 @; Q$ N$ u# j+ \. a
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 L8 X* r0 U' O7 ^9 l; P" _! t2 G) j4 L: \' i. X" ^# O5 ?
#ifdef __YENV! ^0 G/ A6 p1 z2 M. O; }
                        pLight->Diffuse.r  *= 1.1f;
" C' f; Q1 v0 a( V                        pLight->Diffuse.g  *= 1.1f;
+ ^1 \: y% z) i) D% \, p2 K                        pLight->Diffuse.b  *= 1.1f;7 w3 b+ O2 m$ e& O+ U
                        // oˉè* ??à?
, Y! K& _8 I7 s+ ]' d, p                        pLight->Specular.r = 2.0f;- W+ P* P! x3 x6 R: P$ d' a
                        pLight->Specular.g = 2.0f;
  ]! R5 O: z8 q) r                        pLight->Specular.b = 2.0f;
" [, x& |/ ?. }- \5 D0 s" L2 r                        // á?oˉ
6 k+ g& d: z1 d# i; D                        pLight->Ambient.r  *= 1.0f;
3 Q) J% C7 z; t- w) J                        pLight->Ambient.g  *= 1.0f;
6 V# ~; k2 r) @2 R5 d6 ^7 Z                        pLight->Ambient.b  *= 1.0f;
, F; b: w; s1 Y/ p! x% v3 `#else //__YENV- g. Q3 r6 t/ I9 z
                        pLight->Diffuse.r  *= 1.1f;, v) j1 N( i6 L) |' B/ s
                        pLight->Diffuse.g  *= 1.1f;
- e3 c* ]. {6 ^% S; a9 L1 j                        pLight->Diffuse.b  *= 1.1f;4 H* g: j  v+ @2 W
                        // oˉè* ??à?
5 z% x, n7 Y- u8 e                        pLight->Specular.r = 2.0f;, l* ]9 W% }0 n5 p
                        pLight->Specular.g = 2.0f;% ^: G* `- e0 H( f% `6 D; d
                        pLight->Specular.b = 2.0f;
0 R, K; ^& J, _7 Q3 C$ s7 C                        // á?oˉ
- u4 Y/ |9 Q6 r2 L                        pLight->Ambient.r  *= 0.9f;' I  [# S* G! ]
                        pLight->Ambient.g  *= 0.9f;- |5 f" A$ }6 M, f8 ^9 f/ a
                        pLight->Ambient.b  *= 0.9f;
, D  |( u  ~- u. m: \  N#endif //__YENV
. t7 {$ Q$ A6 k& h  y/ G) s; ^                          w/ V0 w5 t  N0 ?
                        memcpy( &m_light, pLight, sizeof( m_light ) );' [  _1 O& s/ a; Z
                        : \# d, z8 p' R( f5 j; V
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);4 S% ~$ _0 J) ~2 r! G
                        D3DXMATRIX  matTemp;
0 B1 S' S7 ]( {8 O% k$ \+ E                        static const float CONS_VAL = 3.1415926f / 180.f;
8 ?* l. c7 J8 r0 f7 Z* S8 w' w' q  i" A$ J
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
" W7 `$ T( T9 E( X' |) B7 _+ e0 G" r                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);/ O, `7 I3 Z" f: `
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
& f7 j$ c- \& v" y6 M                        pLight->Appear( m_pd3dDevice, TRUE );( r9 M9 w' y$ q2 A- n

4 t# O! M) U* N, ?# C4 Y: O6 F                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);2 {5 I! E7 @' m7 {
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
2 x, _) z& U6 p, S6 P1 @% V" U                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 U* {+ Q& k$ s; W& {' S% x3 ]; @& S5 a1 |- p! U' ?
                        DWORD dwR, dwG, dwB;  x7 w2 c4 m6 v& j  _! a. }) u
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
( B$ q- _' Y8 k! V! e& y, N                        dwG = (DWORD)( pLight->Ambient.g * 255 );* a2 F; g" F4 _
                        dwB = (DWORD)( pLight->Ambient.b * 255 );. D. C$ m5 E. y# X* m9 R
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
" e  N. h0 Y/ R5 e; e9 B                }7 K* d: n! o. O
        }
4 D( w8 r+ h5 z9 t# W; q5 N1 U, J% U; I* `
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
/ e8 O) I2 e3 |6 T7 `        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) );& M, t! x- h) h3 h5 @
        ::SetLight( bLight );2 c4 u- o& K2 C0 K
4 c, D0 E& e- K" g
        // ±ao? ?D?í???ó á¤à? 8 ~; ^; U$ \" Y3 n0 Z- e! e
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
* f/ L1 x* L9 x4 o& ]        2 j+ c. ?# {/ c  m; n( D% g
#endif // not WORLDSERVER  Z9 l) G! i! ]0 O1 `' Y) X
}
) T0 O8 U- `$ t* v. {并更换0 G( d3 J" e( Z7 i4 \8 R2 C2 t
Code:
! Y, l' m9 A% h5 g' A% i% [% [' o! z__FLYFF_INITPAGE_EXT8 m' v3 _- b+ D. V0 L
定义! F  O  g7 F: U; [2 e' V0 v1 Q

4 f5 ]# n( w2 W% O3 r5 K
$ }8 x3 o  i9 u# U2 }+ C: E" B; @8 z+ b# {" }

2 g# k5 A$ a% L5 {) B7 o+ ^现在终于删除我的狗屁加速...8 @, F; ?5 L# C6 f/ R
9 A/ G- l7 T3 R
- s( D. @4 K: B: V6 i; N
1 L% P1 T$ y3 n" c6 f& r  T8 t2 ~





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