飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
# K; s4 g0 V" J+ R. |尾翼:
. o" n! V+ r7 m8 U/ J) t
- j  Y8 {/ J* D, a代码:
- w, M: K" q5 d6 a" @1 SCWndAutoFood::CWndAutoFood()
1 v% D  ^/ f% D' f{- ?1 T- l& g2 j3 l3 N
        m_pItemElem = NULL;
5 E- ]% a* K' b        m_pTexture = NULL;! k2 ^9 u% A7 {2 c8 J0 h
        bStart = FALSE;
. O9 ?' U- d% m}
3 Z" K: B4 r. J8 w) I, L' y* @6 m, G# c
CWndAutoFood::~CWndAutoFood()
9 [; ]( D6 n3 y9 l' D{+ Z( |$ s7 P1 k
        AfxMessageBox( "AutoFood ist gestorben " );
; M" f) S6 U% k1 g$ U! x6 C1 Z. o* g6 g}
% x4 T. M) u# j* y) a. D5 Y7 lBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
- u+ B' ^; ~( d- R3 v; h{
& ^1 v3 d6 J/ ]; O& k# t+ c' l        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
9 P2 F+ h7 [% j7 v}4 z8 F$ T7 V( M/ }+ b9 |

. C8 R+ l# v+ D. C. I5 \BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
$ T* P8 o8 o: g5 O7 h{; p8 n! g% k" D7 s) S
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
% A, i: h% h( \2 E) c        CRect rect = pWndCtrl->rect;
& y+ M1 O, e& n0 t/ U# h& }! ^        if( rect && rect.PtInRect( point ) )6 w. ?6 m) j& ]" J0 m
        {
2 D2 _* J/ l: V- K# z# h                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );/ z6 z" M  ]) C. _
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
* A* t+ e9 ]7 [# ~$ |& D) l6 u' W                {
7 b1 K, u9 A( b                        if( m_pItemElem )
9 H$ P8 u' x. r* Z0 Z) g" r5 j                        {; D2 X$ |% k; _, Q4 E' P
                                m_pItemElem = NULL;
- D! T, O- I& Z& r3 A0 R                        }7 r6 G" \8 ^" R9 W2 X$ O# R
                        m_pItemElem = pItemElem;
! Y, U; m7 P! y" \/ u                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );' ]6 j- g) f. w4 p! d5 K
                }else{7 t! T6 O* C  `+ d0 I! K1 p
                        SetForbid( TRUE );9 T% n7 F2 E; F+ H+ E
                }  U, W& k5 X* U
        }else{3 o! L4 x. B& P7 {
                SetForbid( TRUE );* c2 f! K. {5 a( i; l* x
        }2 L' P  P+ H# h2 ]1 D0 M  L6 B
        return TRUE;' Z  x* r8 d* ^& m
}
5 s( J/ n- ?  a
6 _" y. y8 g# X" j$ nBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )! V2 a. a/ ~  F- Y- _6 T  m2 f
{
' k/ A% o2 G6 }5 u3 ~6 O* X9 @: m& w        switch( nID )) x* Q; F! z/ d; N* j* J6 p
        {9 \+ I, ^( E9 A4 e. T+ i* w
        case WIDC_BUTTON3:# j0 e& u8 D" Q
                {
& x5 d# l2 m8 ^# s                        bStart = TRUE;, S1 {& Q" t% R% M' P* Q* a
                        break;( J+ r) d0 _) a% H8 m+ S
                }' C* H. F7 z/ q3 C
        case WIDC_BUTTON4:0 l$ X+ Z+ E3 _  P; l
                {+ c( _; ^/ J4 p% j5 x
                        bStart = FALSE;
- f, U& A2 e* c! [1 E- N                        break;! Q" r1 i* Z, T7 j( C& `
                }& O# V/ ?& K+ @$ E. D; \
        }
) q2 I8 S. ?8 L* H3 i) q        return CWndNeuz::OnChildNotify( message, nID, pLResult );) B2 N3 U8 K7 ]$ t( J6 w
}       
/ c4 b4 S' u9 P* G5 l1 r' |void CWndAutoFood::OnDraw( C2DRender* p2DRender )* j: O" ~. X0 \% h8 e
{* a1 [1 z; z( T3 F
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );( ~1 j: y. ^2 S( f8 W1 N
        if( bStart || !m_pItemElem )* q7 z* s* u% x$ n$ ~0 J" K" H
        {
3 D' s3 Q9 [" f* U0 T# ]                pBtn->EnableWindow( FALSE );
2 V6 ?" }5 B, ]0 A        }else
% Q+ W' c/ j9 I( u9 @! e' V                pBtn->EnableWindow( TRUE );
: J- s- {! k% w0 u        if( m_pTexture )
( E9 j  z6 q: C: h+ p        {
. ]2 N' Q  e- i) M2 w4 ]9 \                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
7 i0 B( `& d1 z- c; r! [- N5 Q                if( wndCtrl && wndCtrl->rect ), z" ^% u5 l5 _+ R
                {) ?$ i( `5 {) J1 y& V
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
. ?! |8 O6 M% ~% S( f) ~$ K                }2 Q  o; U% E" r
        }+ p1 Z3 a8 ~5 t
}' a# J7 _& `5 D" p  C9 Q; c* E

7 J/ @1 V2 {' P' F" b! i# F# k! vBOOL CWndAutoFood:rocess()! H6 F2 B* [1 y' e$ w( i# E- ~
{
" d# C: `9 W; d! M9 }        if( bStart )
; p% P2 G: q; i2 ?$ I7 k: D        {
$ M/ s. ]5 d: E                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )0 U- t; f1 G: V; A' t3 }5 N
                {
; I& }2 H! M) ^7 @5 B$ z  N                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() ). n" B  e7 p7 z3 g* t
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
7 h  V3 v8 k5 h) x$ u' E1 f                }else{7 Q/ l' B9 ~' ^; J9 \
                        bStart = FALSE;) i* |1 E$ j% G8 ^( _
                        m_pItemElem = NULL;
2 ^9 ~- C- t# ]4 N                }0 T+ A# V) G8 S2 s$ W/ E
        }8 N# \9 y5 R7 g
        return TRUE;
3 d: V2 m0 L# _- x$ C' X, H! T8 k}$ D. Y6 R9 }$ b9 D# t9 I
7 x; [1 i: f! g: {; l) |
登录视频废话:7 [# l7 [/ x) D6 k) ?4 L
尾翼:
) S4 T& D1 X0 B, Z: ^5 G  @8 q5 `  w! {4 D
代码:
" c; F! ?3 A# l7 W% l! e- K. n4 O- s* `1 Q
void CWorld::SetLight( BOOL bLight ): ^: _  d: c8 A
durch
! B/ E2 c/ i9 m* ]5 r- N$ C. Y) v4 rCode:& }1 B9 M% v; F/ r, |9 ]+ D
void CWorld::SetLight( BOOL bLight ): B( [7 d* P8 Q+ \& r$ Q/ n1 V; K
{
0 Y% t, v8 x3 w1 F        //ACE("SetLight %d \n", bLight);! M, X9 w. O: O) L) G
       
6 u6 _* t" X( ~) ~! I( u#ifndef  __WORLDSERVER
1 A  v" |$ t0 V5 J. q3 p( F  u        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
; S8 C$ b7 W& P6 c        CLight* pLight = NULL;
/ W, W1 ^- ^6 S# f' ^6 G/ y# P5 q0 @# q0 c& u3 Y2 @8 x: S( g
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
& b7 h# g; I. S0 A+ Y1 i; d) e6 B8 p; J2 B; |& ^9 }" e& O
        pLight = GetLight( "direction" );4 ?" |' d2 n# Q" S* ~" q9 c

- C8 m& {9 S. f8 X% V& [' ?#if __VER >= 15 // __BS_CHANGING_ENVIR6 K3 R2 k% `' B7 @7 A6 U3 I
        if( g_pPlayer ){
0 C! w+ U- L7 [& |! p& o. o                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
, V0 e! l5 \& ^: N                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!0 C+ C$ o5 ?% f, d
                {1 B1 O/ S, J$ ~: ~* h/ Z1 D2 c
                        if( pLight )
# J2 z1 O7 O5 Z1 j% d4 H0 r                        {$ @. y7 q* N9 Q7 I0 w
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
) }, `/ f7 H7 p) P  `  O                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
3 K9 D$ w: {( Y4 n) _& a. w                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];. K& ]$ h, q& r& s4 x, l: ~( y

5 g, r2 H# m6 A                                pLight->Specular.r = 2.0f;' s# _; _4 t! I# G* y% G5 T( `
                                pLight->Specular.g = 2.0f;
# c) d/ O' j6 W9 P                                pLight->Specular.b = 2.0f;
8 O' \& k0 o% q4 q( E. g       
7 \2 f- c) Y0 _% r2 J; x                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
" U1 P: H7 e3 V( Q                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
1 {6 ?4 C) q4 r$ n3 f" [/ O                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
6 i1 |$ h  r- D/ c! ^6 v! _        4 K( K, p( V! H! W. f& z
                                HookUpdateLight( pLight ); / x$ C4 c6 a2 s) {, n
- M! g! t: u+ i, l# W
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );1 ^0 s2 y+ i/ \+ I
                9 p- O7 C* Q4 D
                                pLight->Diffuse.r *= 1.2f;
8 x# o: d2 E' W9 `/ _( W4 y- P" j                                pLight->Diffuse.g *= 1.2f;
: W" e! B) c0 J  e- k6 `                                pLight->Diffuse.b *= 1.2f;
/ `7 R3 K# \5 I8 H
1 t+ }0 {& Q6 y                                pLight->Ambient.r *= 0.8f;- K/ l8 X& t- X, |5 a
                                pLight->Ambient.g *= 0.8f;
; [: s& {" P$ f  F" e+ F. J9 k9 z                                pLight->Ambient.b *= 0.8f;# q4 R* L5 l% k* F4 j$ y2 W
        , b2 r8 `* S1 Z- X
                                memcpy( &m_light, pLight, sizeof( m_light ) );
. j/ I' L: E6 Z( A$ Z9 Z; H5 I# h+ x! o9 p
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);; j$ Q- }3 i8 J- A
                                D3DXVec3Normalize(&(vecSun),&(vecSun));3 N/ |( ^$ w2 A2 S+ W" e( x
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 6 X" P7 k0 `6 F/ f' o
                                pLight->Appear( m_pd3dDevice, TRUE );
; C% B! _5 d5 ]               
, @/ Y. S; M8 m                                DWORD dwR, dwG, dwB;. p( s1 a# }4 k$ n4 x) M, t
                                dwR = (DWORD)( pLight->Ambient.r * 255 );. C; j0 \3 u& e( G6 i1 c8 Q4 F7 M9 q
                                dwG = (DWORD)( pLight->Ambient.g * 255 );' L+ G! h8 M; @5 W- L; x3 Z# r% z7 W
                                dwB = (DWORD)( pLight->Ambient.b * 255 );$ U8 S. Z) p( g0 |' {9 z" i6 t
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
+ }; |% L* O' N3 }& j. D% n5 X                        }1 v# x! a/ c; i" E6 i& }
                }
* b* M  \' ?! I% M$ v        }
3 w/ G* C' R  Z  I- o        else
) V( p7 o0 R( {7 A, O#endif
, Y7 q! J* q0 u6 L1 C  p' G4 s- f$ f5 q% d1 S$ _6 k/ A; W' V6 H
        if( m_bIsIndoor )
! c" ]& S8 S  C2 ^        {0 c. y3 ~. |5 t: N! G
                if( pLight )  F9 R$ `/ w4 l+ ^: J3 G
                {               
2 u2 R, H, j  i" q: A4 o2 ^                        // à??μ oˉè*
, c( M0 F. w8 N: C) z                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
5 @" h, b1 t& z* @% q/ d/ T8 L3 M: X                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;2 x: }. `/ }/ T* V
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
' }( t) H: P; m5 x5 m4 [4 u
! p/ o! R- `9 F" d                        // oˉè* ??à?
  l$ Z) L8 M# n& O' b3 z# U1 G) r7 g                        pLight->Specular.r = 1.0f;
2 w; x& o; y/ j5 a/ M                        pLight->Specular.g = 1.0f;% q- R/ v$ l2 s* _0 |- O1 R
                        pLight->Specular.b = 1.0f;8 z( l2 s6 M+ j" m0 P
                        // àü?? oˉè* 7 z- a# w# q9 \6 v7 I
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
( L3 O2 J$ _4 `5 u                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;0 Z- K5 I* h9 C2 b0 _& E% Q
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
0 X' A+ x) A# }- Y! x: {5 E) i: g+ Y  Q, v  D) i; _. i
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.- ^- c% h( b5 f1 P8 i' ]
                        {# R: D" q: Q- K1 t' ?
                                pLight->Diffuse.r *= 0.6f;
& y! w$ t9 P4 `7 T  b* O  ?                                pLight->Diffuse.g *= 0.6f;: z# b: s$ X6 o. m
                                pLight->Diffuse.b *= 0.6f;/ d" k' j" a2 q4 X" n  p3 w
                                pLight->Ambient.r *= 0.7f;
8 u" T* d+ m+ s9 h4 x                                pLight->Ambient.g *= 0.7f;$ f' h) |( Z2 z4 s& {  ^* A
                                pLight->Ambient.b *= 0.7f;
* s  S% ?0 ]+ V7 g& ?6 A. p. H  h                        }
9 X  w5 {( l/ ~- C" _
& d$ ^- B% I! L, ?#if __VER >= 15 // __BS_CHANGING_ENVIR) U. H8 w6 C* s! K: D3 G0 J, V) U
                        if( g_pPlayer ), ?  `' I, Y$ h. d( \
                                HookUpdateLight( pLight );( X, s+ |% ?$ Z
#endif
+ c. y, ?/ p% M0 e# w$ B. J                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );7 C' y5 P# s* |4 }7 d
6 W, `* C& j/ _& o
                        pLight->Diffuse.r  += 0.1f;
4 ~$ X8 W: Z0 e                        pLight->Diffuse.g  += 0.1f;
- j) ?6 Y5 f; M  w  ~, q3 W                        pLight->Diffuse.b  += 0.1f;
. Y; o) f% k0 b6 O3 Y" b                        // oˉè* ??à?
4 Q8 |; ]  ^) [                        pLight->Specular.r = 2.0f;5 g. S+ ]+ B$ z3 p" y
                        pLight->Specular.g = 2.0f;
& T1 t( T3 Y2 p# A; O, `& }                        pLight->Specular.b = 2.0f;
& ]$ H0 Y& V" c8 {                        // á?oˉ
2 F: P$ n6 O* ?! b' z5 r( F                        pLight->Ambient.r  *= 0.9f;
  J. H+ y4 q2 d. W- y8 H) \                        pLight->Ambient.g  *= 0.9f;6 w7 p: m0 U  |# t8 ^) p
                        pLight->Ambient.b  *= 0.9f;5 k2 V" t* w* ^9 O* U( m5 _" d
6 ~2 @% H7 _8 b# B2 `2 D
                        memcpy( &m_light, pLight, sizeof( m_light ) );
* d6 _* x4 X4 u" ]                       
/ s8 e9 S7 ?% Q/ n* R# v3 T                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
# R" G$ h) g& y3 N( }" h! t' @2 Y                        pLight->Appear( m_pd3dDevice, TRUE );  m: C/ B1 [2 I9 ?" r! G8 t0 B
       
& ]$ J) \1 q3 k  p, ]' J1 w' T                        DWORD dwR, dwG, dwB;
0 L. j& b3 v& u/ l, |, o. L" `* I                        dwR = (DWORD)( pLight->Ambient.r * 255 );
& p0 S3 m) C, f  \                        dwG = (DWORD)( pLight->Ambient.g * 255 );1 C% [% ?0 z& E" ~4 H: Q
                        dwB = (DWORD)( pLight->Ambient.b * 255 );: s' p% q( @& |# Z4 W) E7 o  f5 [0 `
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );; |" N( P0 Y1 |7 t: J- ^- {: F1 _9 U1 f
                }
& {+ x4 n4 [( M- O; f        }
3 H: @$ G% W1 Q, W        else
9 D/ L/ Q/ Z5 `4 l1 w1 |        {
8 F& Z9 Z2 x+ R                if( pLight )! l( E/ ]0 w" G: d; B
                {$ f( G* Q% i  H: W5 b  `3 i
               
2 }7 ]- Z& S/ P                        int nHour = 8, nMin = 0;
! r3 z8 u; S' y& N- c+ H$ ]        #ifdef __CLIENT
/ M9 C; O; h6 C# a4 E9 |                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. # R" y7 M& n; z: J! j" U
                        nHour = g_GameTimer.m_nHour;
# V$ w4 G* H; c                        nMin  = g_GameTimer.m_nMin ;
8 \* T  y: s- z, _5 J        #else
* f- v: k; i  R5 i0 w# U                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù." S7 j* V! ?6 x) p3 K  d7 k+ b
                        if( m_nLightType == 1 )
# T5 l( C1 k7 x) K; b                                nHour = m_nLightHour;' j  R( W) |! z9 y  ]8 G
        #endif
$ g* b  P+ f: l$ y3 _6 R$ \. n( j                        nHour--;
1 u$ L. |# a4 X' K                        if( nHour < 0 ) nHour = 0;1 ^; K( K, x  y) x
                        if( nHour > 23 ) nHour = 23;
/ h0 m( n2 z' [% C. _6 C' N$ M/ C3 c7 d3 \2 d$ t* z
                        //if( m_bFixedHour )7 ]* X0 A* {3 n' \8 o
                        //        nHour = m_nFixedHour, nMin = 0;( v9 h" a( ~! E
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];- |4 _  n/ ]8 C
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
) `: ]! n' [2 _; n# _
3 F: l# x! ^4 p                        //m_lightColor = lightColorPrv;
" V! H  x/ O9 _9 ]5 N8 i                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;* R7 Y* [& _5 c) C2 z* p
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;5 q5 g5 D6 I0 z! a& d  e5 q
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) O1 Z+ T1 k5 e                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* z' k( h4 n3 F9 R0 A- P' ~                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;- C+ r3 T0 l  |. ~8 V7 z
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;- D: [* f) W4 L7 |1 k
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
6 N* F. m- |/ w6 b$ `3 ?/ B3 T" `; E- r7 c
                        // à??μ oˉè* - I; T7 L6 J) S' i  |$ e
                        pLight->Diffuse.r  = lightColorPrv.r1;
" ], R/ \! w2 G% q# ~# \' @                        pLight->Diffuse.g  = lightColorPrv.g1;* k* E* k( n* i$ w
                        pLight->Diffuse.b  = lightColorPrv.b1;
! G; H1 V5 n: n  d4 P                        // oˉè* ??à?
+ `6 {8 F9 C$ @" @; v+ Z                        pLight->Specular.r = 1.0f;% F! r) a5 h! d# ]8 M9 V& t5 |
                        pLight->Specular.g = 1.0f;7 Y( a4 N. A) ~4 J* u$ ~$ o
                        pLight->Specular.b = 1.0f;- c) [6 p4 |* U' _: h5 }' z7 y
                        // àü?? oˉè* : t; M8 j& {, L: q: U! @
                        pLight->Ambient.r  = lightColorPrv.r2;# E6 {) b% O1 ^2 F3 \4 c
                        pLight->Ambient.g  = lightColorPrv.g2;
5 P$ t! ~7 ^$ q                        pLight->Ambient.b  = lightColorPrv.b2;% z1 w9 M3 d3 l- \

! C8 Q! z9 f) z3 h, c$ C                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.7 e6 ^4 T( W' q8 S( E9 n
                        {
) ?1 w, K5 t6 g, C                                pLight->Diffuse.r *= 0.6f;
& }" H: Y( I* X% U5 w9 Q6 E                                pLight->Diffuse.g *= 0.6f;
- ]! _1 o7 ]+ }2 o5 T* Z7 u$ R- y' }                                pLight->Diffuse.b *= 0.6f;
, j; ^: O/ N1 ^% C                                pLight->Ambient.r *= 0.7f;. u/ a4 @: V/ \
                                pLight->Ambient.g *= 0.7f;
& O3 v( T) {2 z' C                                pLight->Ambient.b *= 0.7f;4 ?+ w) T9 ?7 `& B2 S
                        }
& k( f9 X* m+ z' R7 R) ~& _                        2 o0 w7 X9 A+ ^( t
#if __VER >= 15 // __BS_CHANGING_ENVIR# z7 D% k: _0 K% v3 b; s3 i
                        if( g_pPlayer )
2 _  M6 H3 O2 I% u8 p& ]! J                                HookUpdateLight( pLight ); 9 A) _1 d' d1 W8 o# z
#endif+ _1 }6 K  Q8 \9 g
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );0 Q! h. z( e5 p6 N' c, L* [

: [' O$ |6 u; \" d+ \8 k% J! q#ifdef __YENV
7 E3 S0 U1 ]0 k  }- X                        pLight->Diffuse.r  *= 1.1f;1 k( ?9 z' C4 b' E
                        pLight->Diffuse.g  *= 1.1f;! G, k, p% E# l2 x6 k
                        pLight->Diffuse.b  *= 1.1f;$ U$ O; ~, a( h& y0 A
                        // oˉè* ??à? " v! X' I) w- L
                        pLight->Specular.r = 2.0f;9 M& K# k+ X2 ]1 U$ A
                        pLight->Specular.g = 2.0f;) \; i9 i/ z9 S+ z' e: n
                        pLight->Specular.b = 2.0f;3 j5 ~  |. f6 E& P1 ~7 u1 X
                        // á?oˉ
3 }6 d( t. A/ A                        pLight->Ambient.r  *= 1.0f;; e1 _2 h" J" o" m$ k4 J
                        pLight->Ambient.g  *= 1.0f;* L; S( n) r. S" M( N  G1 f
                        pLight->Ambient.b  *= 1.0f;/ M6 P3 i0 z9 a# n
#else //__YENV/ V9 C# x) V4 R( J$ E  s. [  u# `* ?
                        pLight->Diffuse.r  *= 1.1f;/ ]+ Z. D. T1 a# x
                        pLight->Diffuse.g  *= 1.1f;& K( M1 g! `: h
                        pLight->Diffuse.b  *= 1.1f;6 [2 q; Z) |% i- X
                        // oˉè* ??à? : \4 T4 i- M/ m' R, R
                        pLight->Specular.r = 2.0f;
( M+ `3 S; X/ U& c7 e) r                        pLight->Specular.g = 2.0f;
! J+ i' ]; N( S* P                        pLight->Specular.b = 2.0f;
/ z  M3 ^9 K( a* _                        // á?oˉ % T1 U3 v5 X1 S) }# }$ d
                        pLight->Ambient.r  *= 0.9f;3 ^: l. V! g  g4 l/ R
                        pLight->Ambient.g  *= 0.9f;& B' Y; b% \- h3 O5 e
                        pLight->Ambient.b  *= 0.9f;- P1 h# k' Z( Q/ I/ n. ~
#endif //__YENV
1 h9 b$ h( [/ t; e1 O% ^- c# s8 L                        ! i' b9 k' {  v9 Y
                        memcpy( &m_light, pLight, sizeof( m_light ) );
1 x  a( {  r/ b  a                        - w( X1 E+ F8 O3 M/ m
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);. }2 Y& e3 n$ M
                        D3DXMATRIX  matTemp;- o' T1 n0 h( i
                        static const float CONS_VAL = 3.1415926f / 180.f;
6 k9 k$ x2 G+ b1 w; [
9 m9 ?8 U1 A0 q. o. B                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
; I6 g+ i+ q. C5 Z6 V                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);0 ~6 D1 g0 \  Q
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); ( i4 x) v7 D( S
                        pLight->Appear( m_pd3dDevice, TRUE );1 m8 a$ k- Z! r% S4 }1 T
! ]- X, O  A& k7 a1 ?& f
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);  ?/ b5 a( u9 ]! H. p" o
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));% \* u- d: F; \( r
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); * y# I; v$ B6 c5 T: [# X, i! o

# O: K9 s% v2 F6 H* }7 j% Z" J                        DWORD dwR, dwG, dwB;. B1 C% k/ R, W4 `* e; I8 {/ Z6 t
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
4 S) V7 K# h* T! I                        dwG = (DWORD)( pLight->Ambient.g * 255 );
; L* v; p: J5 k2 S, s6 Y# h                        dwB = (DWORD)( pLight->Ambient.b * 255 );
% |$ J- H: a+ v1 L                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        1 Z, A) o$ h1 t
                }% |' n- Q# i# x+ }3 H2 J
        }% l0 I" S8 I6 l% B7 Q
+ T7 ~7 c. i5 t* Y' R
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );# f# F( B" F, n. Q* }
        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 M% P$ M  b3 W2 a% x. w        ::SetLight( bLight );
# Y  X( j+ k0 k6 S- w" \
: g, X" d& z+ ^$ C/ R/ ~8 z        // ±ao? ?D?í???ó á¤à?
: [. J" p# H, o- h! N3 I9 W        m_pd3dDevice->SetMaterial( &m_baseMaterial );
" n8 ^4 z! N" f! E- o& f        6 g/ C8 c! H/ {
#endif // not WORLDSERVER6 H2 Y: {, n- v6 z) t& Z7 t0 l
}
9 p# V6 p9 Q% U  H% _; J并更换- r; |$ I" i2 v- c( e
Code:
# q6 h2 o4 i5 p6 n- \* c2 T1 y, i# Y6 p' [__FLYFF_INITPAGE_EXT/ h/ J6 f7 E+ t# B: H7 Y
定义' P0 @  W+ d6 B; J
+ c8 H4 h$ N( A: U' @
# q* ?0 c( V$ {

& C' O1 J0 \# C8 d& _4 N; H6 u6 v; I: C) M
现在终于删除我的狗屁加速...( E% h2 t/ t3 `  r' b5 ^

8 [) {+ }; i7 M# _
9 p+ ^, @, S/ V2 Z0 @3 C
4 T0 k% \" S3 P6 r: t




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