飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:: S1 X1 p: Z3 B2 _7 ]
尾翼:* g( \! |2 @- l2 A( H5 d$ Y7 t

% I. Q9 C/ c- K  U6 k. z5 H代码:3 p2 v+ J% G3 k' w) |0 Z
CWndAutoFood::CWndAutoFood()
! a& x4 w; _. e" r, Q1 k( \( K9 O{
% ^  G+ }- U2 N1 k5 Y/ U        m_pItemElem = NULL;
5 f  K/ u% d8 f0 b/ I2 @, y        m_pTexture = NULL;$ i8 _' [7 J0 g
        bStart = FALSE;( Q6 {! b: K3 ~1 `
}
$ b, k5 G, c: T5 ]: G! P, `9 s1 \: E0 c: X1 d% c
CWndAutoFood::~CWndAutoFood()7 z5 c- z" d& U5 ^$ o
{  z/ e3 `2 T& F
        AfxMessageBox( "AutoFood ist gestorben " );
( s: Z+ w  ?% @6 d; V}
/ s1 t" j4 x5 q# l( L4 HBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
; K! E/ N7 X; ?) {6 u- ]' f; }{
+ o! w+ D& x* F; f        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
% k. ~# s) }( E& i# A}
! H: n; n) _$ {( o
' h- w5 s& x: w( @) g$ Y/ U/ PBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
9 n) S) k& A! _- }{
! W, w8 o+ q& m) t        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 ?' X; Z  U# q/ f3 ~; n        CRect rect = pWndCtrl->rect;0 t  H* t0 y* j7 H" T2 v# E4 u
        if( rect && rect.PtInRect( point ) )
- n/ u+ J! r* i, m( [/ L        {
" s- F# k* P, O! a: ]                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
$ |9 q; ^* U3 m4 h                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )$ B1 A1 r- Y: B2 Y9 J1 f
                {
$ V0 d; @: v' J. R8 ?+ A5 O                        if( m_pItemElem )
3 Q7 H/ \" |: M7 l                        {, P9 V* F) C5 c. E) v# P2 d" C; x
                                m_pItemElem = NULL;. \( i  J" K# _* g8 F
                        }" i* g! G! w" W  t2 D
                        m_pItemElem = pItemElem;& O7 ^( v2 d# ~
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
. s' v7 w' o! m                }else{6 h+ V, T5 H4 v  n& i
                        SetForbid( TRUE );
/ q& L: J- o' X- ~2 R% s                }
* s5 @. O7 `! H8 {4 P5 P        }else{6 }' J. g$ K5 m
                SetForbid( TRUE );
4 Q! t5 S/ w+ Z, G8 L. a' e" v        }0 u& ?% `& z0 g( q( P$ X
        return TRUE;: e( K4 F: E& C+ l3 O1 b
}/ o8 ~" S4 |0 [2 r6 L$ `6 j

/ d" N: Y/ p; F% NBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )' v3 e, C4 X$ n' i, n
{
2 b+ ~3 \  c* b- Q, f4 Q        switch( nID )4 k- R& \8 g; m# d" x% d
        {
) x  s* P. V+ ^$ y$ K" `        case WIDC_BUTTON3:; D; ^* Q8 `$ {$ K) M
                {
8 d7 C6 b4 K+ |2 E' \3 P0 w                        bStart = TRUE;
! E! @) d5 s+ D" ~$ `2 l& e9 [                        break;( E3 I  V* [: C# \2 U! c
                }
7 N* i( o; K" s# f        case WIDC_BUTTON4:
& a- u2 A  o( y                {
2 }- l( _0 \! t" L8 ^8 v- U                        bStart = FALSE;2 f' u5 T' S( m" e6 \
                        break;6 L' w- V  D( y% g& ?! Q6 n6 Q3 f
                }
4 i3 O+ p8 o: W, t; f7 {/ r; E6 C        }8 a" z9 I, u& f2 S7 O* |# Y
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
4 [% T2 t4 B6 B3 p6 O2 O; m$ z}       
, d# P( c/ V1 k7 i, N$ P" Kvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
5 r4 x1 ?$ K5 X/ m9 I{  o6 |  [5 u, @' y) b( g& [. S
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
! j8 L) |; O. v) f, p6 ]2 Q. F        if( bStart || !m_pItemElem )
. J) Z# b. n6 N* |) ^        {
) b& Y( u" ^# {  M! f                pBtn->EnableWindow( FALSE );* n+ y4 ^/ K, x; N+ T  c
        }else; l  D8 C! J9 ~6 j# y
                pBtn->EnableWindow( TRUE );/ |8 J' e! N/ Z$ p, N+ h
        if( m_pTexture )
3 g. k$ I' f( O1 B6 R0 w        {9 _5 d/ Z: V) p3 q' e1 W5 J
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
% R3 ]; u( a+ C  q                if( wndCtrl && wndCtrl->rect )
2 X7 N% e0 x0 d( z9 `9 f+ p                {
3 b9 [7 y' O% z+ [# u# m                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
6 E+ h  c4 K$ |2 q9 Y& B                }: d" q4 j3 I( s, J: S
        }+ a$ z, F4 G8 K4 N! M: T! X
}
1 B' H- O' j& m6 E7 p- |1 ?5 l7 r; [
BOOL CWndAutoFood:rocess()
5 X$ b: ~2 z4 q  e9 H{7 Y- A- n- C# N; U' S" d" W
        if( bStart )( U5 q6 l2 [, |- W. L2 @8 M) O
        {
% r" C' v. _& X                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
5 |8 K& m$ ?! }- t1 E5 `; y- U+ r                {' r. _( G8 n4 p* ?( 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() )( J0 M4 ^% k/ x* W, G( O
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
, X) B0 p: r; P* X                }else{: W# s% p' A8 @9 ^8 G
                        bStart = FALSE;
6 Z+ k% D: z# R! r4 A; L                        m_pItemElem = NULL;' j7 m3 L3 v5 C6 t) B: _$ f* l  r
                }: f3 f3 I% x. P7 ?) N+ V: ~# |
        }
$ Y. j! ]4 P% X8 E3 J9 d! X        return TRUE;
  r1 T. B+ X" g, R/ m}
$ @9 h: q" r' Q, Q
+ ^+ R9 E' j+ Y# A! H( x登录视频废话:
, I6 K( u  K9 e& |) z尾翼:
5 _2 h2 d5 W8 h$ H0 a' X: P0 x, b, k2 y9 N2 H
代码:" M& G" g9 b, m  R
. R; y/ S* T( @* `' \
void CWorld::SetLight( BOOL bLight )
; ~. C% E! r# j& M9 L& U9 t# p( ddurch
) m( n% M; X" C0 I9 FCode:( b9 k& `0 O4 _- A* A3 ^* j# ]: ~
void CWorld::SetLight( BOOL bLight )& W$ r: l; A$ ~6 V
{8 g; |) ^: J) u6 p9 ?( E+ t
        //ACE("SetLight %d \n", bLight);, R0 g8 S# t- c* B" l
       
, m" r2 D+ c  K2 c9 c#ifndef  __WORLDSERVER 2 ]9 P& ?/ ]$ c! N) ^* C7 L
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
$ ~" R' S9 P# D        CLight* pLight = NULL;
" k2 Z9 I7 }! S7 e( A& R$ {. H
* S2 }& p; ^7 n& @. w2 Q        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );) G! p( M$ a8 ^" @4 X# ?
" v6 c* O5 V: R5 U; i* F9 b$ j
        pLight = GetLight( "direction" );# f# g5 i! u! W* i
* c% w1 V8 n: A4 _2 d
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 K- I9 L! ]6 `" [) K+ q9 _$ _        if( g_pPlayer ){
) d( q% O/ f) b7 s9 \9 _                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
" n$ v% ?0 w1 I                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!8 z& B+ G* y6 D8 O  R2 t
                {
+ P0 ~1 k& M  b/ b- j& N                        if( pLight )
- O/ o' n& _+ P                        {+ q+ d$ p1 f0 h& V7 J* d, O' L
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
: A3 X4 q. q' {$ x                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
) Y8 J  o# E2 O                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
, f( F& l5 \" f5 D$ X; g9 \, E0 J5 |
                                pLight->Specular.r = 2.0f;
2 i5 h/ S* }8 A* v9 M' ^                                pLight->Specular.g = 2.0f;
1 g1 ?+ v, X' G9 b0 o/ A0 j7 v, ^                                pLight->Specular.b = 2.0f;
0 E  b0 j( E0 `1 a3 }5 b        $ T# y7 Z8 O# e0 x
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
6 `1 z0 v. c3 i4 K  k                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];: z" [. W; }; b2 p& F, M0 F( a
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];7 D8 M& o% {: _) U# b% t$ F
        " M# X* }/ \$ c6 d0 v5 n# V% e
                                HookUpdateLight( pLight );
6 Z7 j. }: k6 V' b* S% U
8 `3 o% _7 y2 Q: M5 l9 n$ b                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: E% ^8 B5 @" i, d               
! o# q, M  X5 R& T                                pLight->Diffuse.r *= 1.2f;
) z& s# y. I) u                                pLight->Diffuse.g *= 1.2f;/ Z$ R7 {% ]3 a) m4 h: W
                                pLight->Diffuse.b *= 1.2f;
& P; C/ b  u: N, }
: z+ ?  |  a5 z                                pLight->Ambient.r *= 0.8f;0 B/ u8 o( |/ y/ q
                                pLight->Ambient.g *= 0.8f;
; R3 \# b! K4 C; r% K+ A5 d                                pLight->Ambient.b *= 0.8f;" c- g, g+ d4 P
       
6 n# f6 f" }* D& Y$ ^                                memcpy( &m_light, pLight, sizeof( m_light ) );
& u* |. w6 [5 ?3 [4 w& U/ T1 S  E- _* n
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);* o, t0 N) S% {6 o+ J& }6 o
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
$ h# n# ~4 P5 j5 \: s, Y: i, W                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 4 y; @. p  `+ A, k% t
                                pLight->Appear( m_pd3dDevice, TRUE );, v; ?) V% V3 C; v/ j
                6 E6 n0 c7 d$ P0 U/ L+ B) v
                                DWORD dwR, dwG, dwB;6 Z2 q( ~; q  Q7 l: q, r( x
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
& S  Q' X( U8 J3 B+ o                                dwG = (DWORD)( pLight->Ambient.g * 255 );
! E& L5 ~# s/ S4 Y8 T8 C                                dwB = (DWORD)( pLight->Ambient.b * 255 );
$ O( j- ?& d0 u4 f; Q                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );$ ]1 _1 V& ^- V8 l* _2 h8 Y
                        }
$ I8 R# }+ G7 B3 }9 M% x' [/ s                }% r* z1 i7 K- J4 t' z% l3 E% ]
        }* j. q5 O0 Z+ n+ T+ k
        else& p* m: H7 A5 O
#endif
) Z8 J! I  ?+ J9 h7 x! Z  R* v: B+ b4 W. y6 G+ A! G
        if( m_bIsIndoor )# Z7 |# ~+ v  J
        {
' E. [4 H' ]* L9 {) \) Y# H) U                if( pLight )# g5 S. E8 @. n( x' Z
                {                3 L' r; v3 h) m% A0 L
                        // à??μ oˉè* 2 a/ Z' j: J: L% q) e% D
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
3 V; G; h/ t+ h6 \) B& w& t9 {8 o                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
8 ], o, {9 P: J& t6 R5 s                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;5 [5 y* m! |  A
& W4 t: k2 L; w  P3 C
                        // oˉè* ??à?
- i3 G" k/ w: V* ^                        pLight->Specular.r = 1.0f;
( ?7 U5 C+ [( A; ^7 H' b1 V                        pLight->Specular.g = 1.0f;
: I- I9 @' Q1 R" d1 Z                        pLight->Specular.b = 1.0f;
+ P; {# X, e5 b9 `; S8 O                        // àü?? oˉè*
# X  m# l. k% \  E& Q1 k                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
% e8 x- P$ Y; ~: K& _/ G                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
# B! A( G  Y0 C/ r! Y# {" p. p                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;1 W2 \/ B8 ]9 b! s: N

2 {0 @. V3 L& J( c; P2 r3 t; x                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??., @5 b$ F* H/ `! r2 ^
                        {
% n1 b- p6 @" B9 t  j- H                                pLight->Diffuse.r *= 0.6f;" N3 x) l  G5 J( _! a
                                pLight->Diffuse.g *= 0.6f;. C) x5 i7 w! N0 N( D8 H+ b
                                pLight->Diffuse.b *= 0.6f;
( ^6 V8 |5 {. ^                                pLight->Ambient.r *= 0.7f;" P/ q$ H7 M3 }" ?  V
                                pLight->Ambient.g *= 0.7f;
2 `) @) [* g. ^                                pLight->Ambient.b *= 0.7f;
  A# N7 S9 ~# f5 M. ?  X: o" S                        }5 m' c" w$ ^: X7 g
0 v% t) M. B9 f  I1 J3 {
#if __VER >= 15 // __BS_CHANGING_ENVIR
. ?' P$ S& C5 Q3 H                        if( g_pPlayer )% ^8 D# Q5 y' C( q3 d
                                HookUpdateLight( pLight );& j* p& x" r% V  v  b8 O$ |
#endif+ r* b6 J: ?5 q8 s+ Q
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );2 X5 _4 T$ T1 m4 {
( S- ~0 Q: h0 l1 [" u5 ~5 y1 V) x
                        pLight->Diffuse.r  += 0.1f;
8 ]5 n/ F4 {4 x                        pLight->Diffuse.g  += 0.1f;: D9 m) ^- b: T& E* n! A' {& W& |
                        pLight->Diffuse.b  += 0.1f;0 G. j8 U: m# K" m4 O& N9 C2 B) ^0 \
                        // oˉè* ??à? ' Q8 i  D, f; m; J) m/ h5 V
                        pLight->Specular.r = 2.0f;
7 L# h/ h1 E3 z% R0 M( s1 t                        pLight->Specular.g = 2.0f;
$ q4 h7 |& s" @: f6 v                        pLight->Specular.b = 2.0f;& O9 ]1 @! r  a8 a
                        // á?oˉ
6 c& {- p! E7 `4 P/ V6 j$ {                        pLight->Ambient.r  *= 0.9f;
7 u! c2 i$ _5 i. I                        pLight->Ambient.g  *= 0.9f;0 F- J" I) S8 o
                        pLight->Ambient.b  *= 0.9f;
  Z( q, A( F; B9 E
0 L6 ?) M. ~9 I2 t" a                        memcpy( &m_light, pLight, sizeof( m_light ) );0 c2 j9 P! u! V- S
                       
. v; h+ g# t# n" u                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );; B1 T/ d* V0 e( b" K+ @1 S% ]# p' @
                        pLight->Appear( m_pd3dDevice, TRUE );1 p' d- j; N* Q# O9 `
       
' \  `4 Q" y/ _. K1 o                        DWORD dwR, dwG, dwB;
. E, d# l6 t3 M$ M; _; t                        dwR = (DWORD)( pLight->Ambient.r * 255 );
- D' |+ w- v) E                        dwG = (DWORD)( pLight->Ambient.g * 255 );
5 z" n8 x4 w1 h. v                        dwB = (DWORD)( pLight->Ambient.b * 255 );
1 |( l' Z9 z, W$ R  N                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ a* E( U1 w  \, b* j9 N                }
) I6 Z6 e1 R$ x8 S  m        }
+ `5 ^6 s: ]9 g# D# D! V        else
9 M0 a8 Y/ a4 g) m        {( L/ V; F# X/ o$ u1 k8 \& p. c
                if( pLight ). N5 I+ p# c5 t/ a) v
                {
3 T2 w, B, ?( y; I2 `               
% J+ h. _9 R" k! a- ]. S% F                        int nHour = 8, nMin = 0;
1 L+ D% l  |/ y# N8 \0 M        #ifdef __CLIENT
/ \2 `3 i/ Z) U! c* C/ o4 x                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. + C, X* O+ z/ D* ~" \* f
                        nHour = g_GameTimer.m_nHour;6 B6 K6 w) E  T& Y
                        nMin  = g_GameTimer.m_nMin ;
9 x3 y" `; E$ Q9 V# Z& ^$ V        #else/ K& G$ C& j6 _: b1 A# M* Z1 S! F# q
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
; Q* }- h& R8 f% S/ U& [! C5 V                        if( m_nLightType == 1 )
1 q! M6 m( B7 [  S2 h' f4 u6 d! S                                nHour = m_nLightHour;
. ?! x! o, c6 x5 W4 X7 ?        #endif: w" [8 u6 g2 U+ R1 G% Z4 h) d
                        nHour--;# b9 d; k! v% `9 x2 S
                        if( nHour < 0 ) nHour = 0;
5 b; g# |( n$ h- X3 R                        if( nHour > 23 ) nHour = 23;  B; ~7 `' N% ^* e% D: J6 i6 ]: c3 W

2 o" z, C' T0 Z$ `                        //if( m_bFixedHour )+ A* ?6 q3 B5 j5 ?  ?
                        //        nHour = m_nFixedHour, nMin = 0;
" x! E; k8 o, Z                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
2 Z  ~2 {; d! A  j3 K+ [                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
; g& E5 ?" o! E5 m6 O% x  r9 U' I4 V
                        //m_lightColor = lightColorPrv;
* _: s2 ~4 G# b# y' h" N3 g' S                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
$ h; S. u3 m1 ]* O$ e! P7 {                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
) U+ I4 Q0 |7 m) O  _                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;- K1 r& n  f  |! x  z/ v  K
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
- Z- w) W1 e( @8 v1 S/ k                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
, |0 }/ C. z' k                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;# J' v( `# m* C) O
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)  l4 T- X, [0 T, ^
- k; n( o/ D& w# d3 j
                        // à??μ oˉè* 4 p5 z2 ^$ K' i& {6 d7 J
                        pLight->Diffuse.r  = lightColorPrv.r1;- y; }$ Q( |% r0 y. y5 S7 ?5 t1 b: a
                        pLight->Diffuse.g  = lightColorPrv.g1;
8 S& [  ?: E! M' A; e: `" \                        pLight->Diffuse.b  = lightColorPrv.b1;
1 A$ w3 l' \# u  z- ~                        // oˉè* ??à?
: b' Y' h+ I/ e- h                        pLight->Specular.r = 1.0f;0 B- R8 y! ^) U5 N( a/ o
                        pLight->Specular.g = 1.0f;
6 u% z4 c1 w" w                        pLight->Specular.b = 1.0f;
3 _6 A$ p0 ~9 m! X# f/ ]                        // àü?? oˉè* 5 ~, H1 f$ S( M4 }" ~
                        pLight->Ambient.r  = lightColorPrv.r2;2 I1 l# @- M5 S. K* ?% K: N/ W
                        pLight->Ambient.g  = lightColorPrv.g2;. q/ M) T  k: v9 w+ ]8 t* S+ Y
                        pLight->Ambient.b  = lightColorPrv.b2;
& G5 X, B7 V3 U2 e: \0 P
. v9 E3 b+ O: ]8 i# Z) @                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* n* b( ~$ e+ p, H, W                        {
, \! i* ~2 M" b                                pLight->Diffuse.r *= 0.6f;
* M0 L6 G3 `4 j! p/ M  P                                pLight->Diffuse.g *= 0.6f;
4 i; Z; b( z( I+ H- h                                pLight->Diffuse.b *= 0.6f;
1 e# t" i7 J/ a1 M! }' _6 _* z& _7 V                                pLight->Ambient.r *= 0.7f;' q: g" E! K8 h& I
                                pLight->Ambient.g *= 0.7f;
" Z9 r- V# C3 N7 K                                pLight->Ambient.b *= 0.7f;
4 A: I6 S% n1 k$ W4 }& m- l' f                        }
9 i' H% ~9 D/ ^% f+ ^                       
5 i' b1 Y, _7 I#if __VER >= 15 // __BS_CHANGING_ENVIR% A: L) a0 i0 d8 M! I5 T4 |
                        if( g_pPlayer )
4 j6 i! w& S0 {/ {' P/ B                                HookUpdateLight( pLight ); $ D1 H' p7 U: b& `5 _! k
#endif  X) D( P7 |$ }
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );" U4 o0 `: e: R

& x- Y) a+ _8 _5 j# v. C#ifdef __YENV- P$ f6 ]% `- M) y' v' n2 F* q
                        pLight->Diffuse.r  *= 1.1f;
' x+ J) |: \* `9 {# j. A                        pLight->Diffuse.g  *= 1.1f;
/ {& P  A; ?3 y+ v8 l1 q                        pLight->Diffuse.b  *= 1.1f;. r8 b4 M( j5 q1 e
                        // oˉè* ??à? & P, k% }9 x( N! w( N/ g( M8 Y7 J
                        pLight->Specular.r = 2.0f;/ c, {+ D" [* h4 [0 ]( }6 M
                        pLight->Specular.g = 2.0f;1 S+ f. o% C/ B3 O" p( h& y3 q! V/ m
                        pLight->Specular.b = 2.0f;
7 K1 _4 |6 Z/ F! ]                        // á?oˉ
% |: D5 a  W8 i" X                        pLight->Ambient.r  *= 1.0f;
% F) L2 k7 K2 `. F1 ^3 L* F                        pLight->Ambient.g  *= 1.0f;8 y$ c( c. y' q3 l4 V
                        pLight->Ambient.b  *= 1.0f;0 i/ x. M2 m) n9 h" C& G2 @: c  l* ^
#else //__YENV8 ]7 G3 Y! B( w' k" W/ P, \
                        pLight->Diffuse.r  *= 1.1f;
9 S+ T- t, x0 B# y0 k' J" ^                        pLight->Diffuse.g  *= 1.1f;
% R* j! G2 f% c. v8 P' J. S                        pLight->Diffuse.b  *= 1.1f;
& F( [3 b" H9 P) r                        // oˉè* ??à? * i( M8 ?" C! P( }; p
                        pLight->Specular.r = 2.0f;
  B! ?# G/ E. p, r; P1 t) y                        pLight->Specular.g = 2.0f;
' K; ?6 H( R; n5 o7 n                        pLight->Specular.b = 2.0f;! e+ [0 r  d6 @. g* G
                        // á?oˉ
! d+ l5 T9 y* |, t                        pLight->Ambient.r  *= 0.9f;- ~; Z6 Q! w" I% v! ]$ f- |
                        pLight->Ambient.g  *= 0.9f;
( s6 ~- T5 @% R% g# n' }* D% V                        pLight->Ambient.b  *= 0.9f;
4 J; u. u# X" W1 F9 l8 H#endif //__YENV % d& H- g: ^+ }+ P
                       
5 F) f7 F& B, ~( C                        memcpy( &m_light, pLight, sizeof( m_light ) );
. i5 @3 c: S' `2 A! B7 _; W, U                        & j3 K+ ]5 \' U& v7 [
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
  V* b' v' @- h/ L& C# ]& W" s% [                        D3DXMATRIX  matTemp;! y- W: X; Y+ g" |
                        static const float CONS_VAL = 3.1415926f / 180.f;
- e( W( F/ h8 Q. S. u8 m
& J! T4 T+ l. A6 m$ }! r& g2 r3 B' E                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);1 L) \0 X' v7 N" j) }  H$ Q  ?
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
3 i, F1 Q: i. V2 U                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); ) G$ u1 u& E1 y$ S' I4 t6 D" ^
                        pLight->Appear( m_pd3dDevice, TRUE );& R8 G: b  ?  l4 }; Q! A) {
2 B. [1 L3 m5 @% _
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# W$ J7 s$ y! P                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
& r) q; M; \# o) \) ]                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, Q6 P) ]( ^( Q: O3 V! A9 P1 P: \7 r* s5 S- p# f. Z
                        DWORD dwR, dwG, dwB;
7 T9 H7 Y  @# t                        dwR = (DWORD)( pLight->Ambient.r * 255 );% Q- ~; Z/ P& j, K8 \  _6 U, Y
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
% e0 u# D' a9 s% Y5 N6 d                        dwB = (DWORD)( pLight->Ambient.b * 255 );
8 b* u* @$ v9 T2 c, s                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
: n5 X% ?- b( N9 ~                }
8 D0 h5 T+ o" M& J: L' r, U        }
' C/ o3 J2 K0 a! [& f3 h2 k; f1 m% q7 k& U6 C. _
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
4 Q6 J# h* P! D, \: h        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) );
/ G  [, v* S4 T3 G8 ?6 {        ::SetLight( bLight );+ B; I# Z6 w) _- H6 r) {4 c" S

5 [" \  k2 o. L7 S3 q$ M: u        // ±ao? ?D?í???ó á¤à?
7 U% d4 h7 H7 G        m_pd3dDevice->SetMaterial( &m_baseMaterial );
: E" y+ d5 P3 F        - k# s) U7 T4 @* w' J. G+ m3 Z! @
#endif // not WORLDSERVER
. Y4 v" L6 i, K}
/ @& z, A2 z( \& [; @! M% P并更换& b" ~! K  I5 N2 R
Code:
3 m) C2 H, N- ~" }# j9 \! M, D% v__FLYFF_INITPAGE_EXT
, U( i5 z) f! A$ R/ c1 g# y4 m定义
; j2 H  u# d8 M# N
  B' d- @1 v  ^* P$ u" f: Q
. T5 f/ P- W+ r; G9 u3 c( ]
, }0 b( D- M6 h) a0 F- S. ?9 [& W/ z$ `+ I( @
现在终于删除我的狗屁加速...
7 G( A: \. w$ I" X$ ~" n' j& ], H1 E5 m5 a! y
; d, b4 ?6 F) ^3 I8 Z
$ E2 u5 W6 a9 p" f0 e





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