飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:, [& |& L" s7 |7 d
尾翼:
& O; M9 h$ u0 s9 j
% h* f' Z% ~0 L" i2 g$ [7 v+ k代码:! u0 e8 D2 l* T0 T6 i) Y
CWndAutoFood::CWndAutoFood()
* \- n9 Q1 D2 i; w+ n- x. B+ [{
. z* `- J/ P8 `% A" `! P; j& t        m_pItemElem = NULL;5 E# l" |7 `2 Y: [0 H
        m_pTexture = NULL;
6 n, J7 U7 i$ l0 x7 W5 E        bStart = FALSE;2 L' f6 R' j# r  ]. f
}" D2 Q, o% a( I9 z# W
+ ~, `2 o- Q* a1 X+ J, I1 K
CWndAutoFood::~CWndAutoFood()
4 H, I% E! f8 a% {% x7 U{4 B! H) O, g( ~; o
        AfxMessageBox( "AutoFood ist gestorben " );. c  j. s3 z. b  U9 h0 M; x7 H
}3 B+ m- w# ?- e, ]* G2 z
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
, ?/ s  t$ u2 i) l8 q9 [9 }{
% V- K3 ]& X% B( p- k, B0 D$ G& v! e        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );0 F- e% c" M8 n7 I" t
}
0 n" q/ m2 @9 I% [, C9 _- \5 k- V$ H  k! c
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )9 O% W6 ]+ Y3 H% C1 a3 ?; y
{
7 s/ c9 `1 j: u! Z        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
1 v  R0 v" T9 o' B+ l/ b7 t- a        CRect rect = pWndCtrl->rect;
, |8 N6 j) y$ l- u4 f) Y        if( rect && rect.PtInRect( point ) )
% C( c$ g# r% c2 z4 C/ I# p        {
' o- {$ o3 ~* G5 ~6 f! `& I% x8 t                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
4 f" Z2 G& S% w+ e; |- d( r                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )) [" U: a+ T& C! L
                {
, L  i  ?- m1 ]& n( i3 [                        if( m_pItemElem )8 c3 K2 E" R, X0 W0 c+ j
                        {1 H2 Q+ Z1 x7 M( P  g
                                m_pItemElem = NULL;* Y( o# }# z& a
                        }- h$ _: \4 V. v8 D
                        m_pItemElem = pItemElem;
9 |! s- I" @3 n3 C% K8 z( j                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );. |5 S: i7 p. e# A5 k0 l, i
                }else{, n" q5 _& b9 M! W
                        SetForbid( TRUE );* f- I- x6 T; X0 W) O" z
                }
: D; p, q+ I2 U. a        }else{
4 v. _+ C+ t8 r/ x7 w5 h, K9 b! B6 X( M                SetForbid( TRUE );
/ L; v! x/ |0 ~) F5 K1 b        }! `* L; Q. t( W. k! K5 X  H
        return TRUE;  }( M0 b4 q9 x; D* P7 L  V
}
: l& M, U2 r3 R1 I& a
  Z" [; S( Q* \BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )/ f$ h% i! K% |
{
" c) u3 h! i4 w; Q+ E* b        switch( nID )6 u9 w- _. s$ B. @
        {
4 b: Z* w' v% E8 V, D  p2 v        case WIDC_BUTTON3:3 T' _) B+ M3 N
                {
, ?- r. Y9 i5 u  v0 J* U                        bStart = TRUE;4 Q! G# h5 Y" h5 o$ Y
                        break;
' W9 i$ w9 u: X$ K' O1 p% Z                }
) j1 x. k) |( B9 _2 S5 v' I        case WIDC_BUTTON4:3 L0 u: F* Q! k  @6 V# A
                {& `* }1 p" D, K0 L' N& j
                        bStart = FALSE;
. j# P$ |7 |; E! o! Y. F4 n                        break;4 J' A/ f& D* I% i
                }% z( s) J$ G5 _8 W1 q3 `
        }" w# W8 E1 X2 S0 P, B% ]
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
* {& z8 k- v/ B8 w! b}        4 y1 c3 J! g0 ~  U6 F
void CWndAutoFood::OnDraw( C2DRender* p2DRender )3 H  {7 z$ C/ P5 k8 r* o9 i
{
! g# }; d0 _8 K2 G1 |5 T        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );8 D) f0 q: p" p
        if( bStart || !m_pItemElem ); _- {5 a" ?9 B7 J! R4 i0 ^
        {
3 g+ _; W% B& q  J1 k( Z                pBtn->EnableWindow( FALSE );
# H8 ]; I; v3 |  M' p1 ^        }else5 o$ [) o! ~7 M8 U5 I, l! e
                pBtn->EnableWindow( TRUE );
. [1 Z9 ?" S+ [3 [8 b        if( m_pTexture )" f% n' m9 G/ v: I0 q
        {; K  w& [, D1 f* l* c; r4 |
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );6 i$ a* s4 k9 l
                if( wndCtrl && wndCtrl->rect )
% m( Z6 N' f. H5 b                {, Q$ @, p9 Q5 `- J
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
" M" H0 y& X, U$ Z; b                }& g- t" o: l& ]4 A# B
        }
' O, J4 D  M! g" r  m# G% f}) c/ J) |8 m' G% L4 i' m# x

% U# I8 A4 I! K( Z" y! VBOOL CWndAutoFood:rocess()
3 _- T0 K, [7 v5 e. P# D+ J{8 O" K6 K8 D" g8 e, z: [& J
        if( bStart )1 C: s/ }' Y5 w! o! f+ P6 \4 f' ]
        {
- Z; q8 e7 T$ c, \                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
* q. @, _/ g) W                {
0 h5 w9 T) ]4 k- O$ v                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )" S: [& i, ~) V5 J8 z2 A  \
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );* d' j7 M- S7 I& B' N$ N
                }else{. x% H2 Y2 l, H7 t
                        bStart = FALSE;/ {2 C3 L+ O7 E: ]" d
                        m_pItemElem = NULL;
" B& n9 x" o5 W- ?. ~8 K                }
4 M. `: q. O/ M2 g8 s        }
) I: L/ {' q- s8 \        return TRUE;6 U" Y! J! i# b
}- @& o, \. _/ y: z! Z( J

' c: p/ [) r1 I; G登录视频废话:* C; [, p( j0 I6 j; D: i/ a
尾翼:0 _. @1 A7 y- W/ {. D: d5 W
3 r$ B8 ~; t& _( C5 [) n
代码:  V/ p. g5 \1 ]' H7 Q
2 x# s0 V6 _1 M" e& P
void CWorld::SetLight( BOOL bLight )2 u) p" S9 g* \. W( k
durch8 H; X3 u; v0 {' h% M+ H
Code:% Y2 V" D$ s" |
void CWorld::SetLight( BOOL bLight )
# l. n- f) Z3 F8 [4 G* _9 j{
6 t& l8 b/ z6 T" J' j8 t) M' P        //ACE("SetLight %d \n", bLight);0 v3 a0 ^) j$ E7 L5 a1 d
        " d; `) V$ G4 H0 `/ B% q
#ifndef  __WORLDSERVER & ]$ t0 v/ A! K: l
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
% |9 a4 F# t# ^- G3 n        CLight* pLight = NULL;
$ s2 w' r; [' s" j7 k* R1 c# P. o5 V, K9 p6 n, O
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
/ Z$ N' e1 ?4 D; Y! N/ N/ a) D
0 |9 s; j# }& a        pLight = GetLight( "direction" );
, n( M& c" o, }( `& x6 ?
% W5 K7 C! T6 p  B+ P#if __VER >= 15 // __BS_CHANGING_ENVIR
8 n% C/ G. c" ~1 ?( P! g: H        if( g_pPlayer ){
1 x9 P# P5 d6 Q2 T0 C4 `                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
8 D- M/ ]% t/ N                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!) G+ z& j" s$ ?
                {
: h9 n. K3 X9 T2 Q1 w                        if( pLight )
+ j; J: B4 r! k                        {; y: ]: q& S; b. N" [  W+ [
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];9 Q' b: G2 L) s. g0 t3 m
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];/ X! }6 L* z9 T2 U! {: z+ y* ?
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
# C  l0 M& M1 |7 n( u" }/ B5 G8 V2 E7 q: T9 Y9 K- R2 u
                                pLight->Specular.r = 2.0f;' w" h) N( m/ ^+ q$ s! g
                                pLight->Specular.g = 2.0f;+ p6 G2 H0 O* \+ n" J. A' ]% G' N
                                pLight->Specular.b = 2.0f;
( @; v* l9 H# c9 q       
: q$ \( u5 W# `* x' b! @                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
. C7 h0 T, F( x                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
( i! T& `3 T- r" u+ |                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];$ Q& I% ~- z* B, e
          Y, d! u) P) l) v* M
                                HookUpdateLight( pLight );
; \9 D/ m; b: c; V4 G6 M
& z, n5 l% y5 i: h) U2 t0 \: P" f                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );  D% V( [3 d  F
                2 m$ y4 a0 ~" T8 c6 B) x% I
                                pLight->Diffuse.r *= 1.2f;
1 O8 d. d/ g2 p6 w                                pLight->Diffuse.g *= 1.2f;
0 ]- K" L$ r% f5 Y6 s- E                                pLight->Diffuse.b *= 1.2f;; B# X% b" e# s8 Q3 ?1 R6 @
5 b6 n. E9 e9 B" n" E$ I
                                pLight->Ambient.r *= 0.8f;
$ @3 |% z# }8 z, e                                pLight->Ambient.g *= 0.8f;. M1 |$ b5 V2 n1 S% \* {: a
                                pLight->Ambient.b *= 0.8f;
" D* M" K: N* |3 m        ; W' M& V' N2 N. U: `
                                memcpy( &m_light, pLight, sizeof( m_light ) );
, i  T$ P1 _- y0 h' G% O  D* B" a- {2 g6 m! x/ i1 |- ~
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);; m) u$ e) J( M; G
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
; O& M+ q% f1 h' E% o7 w( ~( P" v                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% P$ B3 l9 |" D+ n                                 pLight->Appear( m_pd3dDevice, TRUE );
; M( N4 z( H% G4 }4 O3 H- @               
" F( F- C, h4 j. H4 |                                DWORD dwR, dwG, dwB;
1 D6 R+ {: w2 j5 d* o                                dwR = (DWORD)( pLight->Ambient.r * 255 );
+ ~& x4 k! q8 j- A, y9 @                                dwG = (DWORD)( pLight->Ambient.g * 255 );
9 Z% h% p0 k9 m* r" q' |. _                                dwB = (DWORD)( pLight->Ambient.b * 255 );
' m- s2 k1 y! \. u                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) S8 L1 x: u& h! L                        }5 K9 d! f8 _7 [5 a) }# Q+ f
                }
3 Z% [1 T4 G1 C        }
$ @+ C+ V( e$ C4 B. j        else
, A, I) B8 W. b; U3 F#endif 6 U& }5 R% P% }* A) i' V' y$ U
/ n& ?  i3 q; \5 \6 a5 @
        if( m_bIsIndoor )0 Q0 Z$ x2 U1 g. U5 t9 Z. k
        {
/ `. k7 G1 M) C: Y- s5 _$ R" v                if( pLight )
, k$ h- \( s. M- s$ b1 ^$ B$ O                {               
- \5 Y; `: ^( E$ ^5 g: G8 Q$ X                        // à??μ oˉè*
4 d2 V  V3 X& a3 x                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
2 l! C6 l6 F: Z) m                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
8 r5 U' C( q; x1 w7 J                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
( K' C* `. r& H$ j, D# A) I$ _$ d5 }5 |' r9 K+ U+ v
                        // oˉè* ??à?
" t8 R; l0 R5 z0 v) R& {                        pLight->Specular.r = 1.0f;* y6 T1 x1 v7 u# }5 V& ~
                        pLight->Specular.g = 1.0f;
- c; x2 i; q" j' L. D/ p5 E                        pLight->Specular.b = 1.0f;  [; q8 I. @' ~; q. T( S+ \
                        // àü?? oˉè*
8 W3 T1 A% G6 l! Z                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;. X2 }0 I8 B) A% N
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
  g; Z" v) s8 |+ Z; G# ?/ I                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;- ~2 N  _. x( B2 p+ H- e% o6 I
% t; ^: g( _0 ?
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.7 [/ o+ x7 `3 ?: v0 C/ ^4 k
                        {
  Y/ \) n6 M' k. y8 G                                pLight->Diffuse.r *= 0.6f;
7 _1 a) l' S5 w7 T- W2 o  I                                pLight->Diffuse.g *= 0.6f;
$ }( h# R2 ?- R2 W/ i) T( q" I                                pLight->Diffuse.b *= 0.6f;
. q$ c$ ^# R) X                                pLight->Ambient.r *= 0.7f;5 E' ?7 r, ]+ C0 f  b" ~
                                pLight->Ambient.g *= 0.7f;
2 y& x1 p/ R. _7 |/ K( L                                pLight->Ambient.b *= 0.7f;
+ X& D' E- @( w9 W                        }- Z  Y7 ?% g! f% r4 Z$ `! I. k$ J
9 X% p" L) k" Z
#if __VER >= 15 // __BS_CHANGING_ENVIR* i% D% F6 r1 @6 J
                        if( g_pPlayer )) ~2 }- i" }3 M* H  Q. t, S
                                HookUpdateLight( pLight );) s: _) `' r3 L* G7 e+ |7 {
#endif1 t/ R0 o5 T  b
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );2 b% Y5 ?, [; g$ g/ }5 H, p, \; ?$ q
' t- l0 ]( V2 Q6 P6 J
                        pLight->Diffuse.r  += 0.1f;
7 r5 a4 J- w- x. p+ a0 I                        pLight->Diffuse.g  += 0.1f;
5 \7 j1 Y7 l4 s3 E7 h% O                        pLight->Diffuse.b  += 0.1f;4 R( E) B: z- o$ ?% p- S9 w
                        // oˉè* ??à? ' M* E, s# u0 A( v9 D% m5 Q
                        pLight->Specular.r = 2.0f;: n9 _: h% Y# h1 B: }3 R3 o$ D
                        pLight->Specular.g = 2.0f;
3 ]% [: u: P$ u; W                        pLight->Specular.b = 2.0f;. j0 M& l$ F9 v$ V% W/ K
                        // á?oˉ ) v' B. B8 m. `- ~
                        pLight->Ambient.r  *= 0.9f;
- ^8 _% c7 K# B) E. K  i# }) q                        pLight->Ambient.g  *= 0.9f;
5 t; ]* S3 I) D5 y( I6 V5 [                        pLight->Ambient.b  *= 0.9f;
1 f, Y" N; w' g. G5 c5 F9 Z$ }' W, ]
                        memcpy( &m_light, pLight, sizeof( m_light ) );" L! L/ D  m5 t- W$ |
                        ' _5 Q/ R; |3 X& U
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );6 S, z/ E/ h* N' p% V! k
                        pLight->Appear( m_pd3dDevice, TRUE );
/ O7 c" G/ t* g       
$ \% S9 Z; ^" o6 @' Q                        DWORD dwR, dwG, dwB;; `8 P$ g! u: U4 ]' |
                        dwR = (DWORD)( pLight->Ambient.r * 255 );1 Q% a! ~. T, S. r
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
/ `; z' f- k6 y6 t- s                        dwB = (DWORD)( pLight->Ambient.b * 255 );# o  B* [. L7 j
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" `/ w5 @6 Z% D4 C( G                }9 M5 l2 k) J0 B% l3 @4 O
        }
" T# N2 L3 g$ p( M( ^7 D) w4 y% d        else- I/ ^+ d- r! `' t, p6 I7 b
        {
2 B+ J5 u8 a$ i' }                if( pLight )
  }) @+ W8 }8 ?. v                {
9 A0 J3 D8 M( O# D               
  ~$ ]1 m# ?) o% `5 u                        int nHour = 8, nMin = 0;
1 A$ ^! j7 a) |5 b! i: z        #ifdef __CLIENT
' \; v, f# \5 ]% j3 z$ h/ e- I$ `                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
0 B# y' M) Y! w  W: ]* D8 e  o                        nHour = g_GameTimer.m_nHour;
& t% l4 p: e1 }" s% V: J+ s/ g                        nMin  = g_GameTimer.m_nMin ;
& K0 J! j( d$ b5 {) z        #else" `. S( Y# T2 y, V. ^$ L
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.& e" s' Z0 P4 e1 @) k  _4 q* X
                        if( m_nLightType == 1 )
, U' d  D# |" {" o9 @$ P4 T7 y5 }* R                                nHour = m_nLightHour;: r& u& _' Z/ L
        #endif  S% j+ `7 @- L, ?: F" l
                        nHour--;: S2 `1 O9 v) i7 v, J9 J* {3 w- }
                        if( nHour < 0 ) nHour = 0;
7 D- t+ g7 }9 C+ w& W1 o: A7 w                        if( nHour > 23 ) nHour = 23;
# m. ]" E" Y$ {' @8 l, p9 b+ B2 q. Y. P( S6 Y
                        //if( m_bFixedHour )/ k% A6 s0 R9 ?) q& @9 y+ a
                        //        nHour = m_nFixedHour, nMin = 0;5 D0 e$ O4 N/ R/ ~
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];+ d# m; A/ k8 Z8 Z" _' B
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
2 D9 i. D( q8 ?: X8 G* T: d4 Y# a5 @) n# B% ]" M7 ]
                        //m_lightColor = lightColorPrv;1 @- P% N( {+ P. c9 v2 K
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;/ R2 n) I1 N: _- F
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
) l0 l- i# {; i( e2 P$ G1 }. q' K                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
& L, \# C4 ]( S$ D5 Y8 I+ F$ V                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
- Z0 X6 s2 a' k7 D8 E                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
, N: ]" G0 H9 j5 B. v$ |                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;5 t' F8 [0 W- }8 s% R
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
3 Y- I- C4 u4 ~, o! F* u# o
. H% Y% T, G! M                        // à??μ oˉè*
: B# i% ~4 x( I9 s5 N                        pLight->Diffuse.r  = lightColorPrv.r1;7 K' r. x- N7 o
                        pLight->Diffuse.g  = lightColorPrv.g1;/ q6 j8 o$ K1 _1 K. l
                        pLight->Diffuse.b  = lightColorPrv.b1;
5 n* A2 L( ~0 H                        // oˉè* ??à?
- O2 U2 A2 z3 o* w7 }& p* h9 |  R' I                        pLight->Specular.r = 1.0f;
  D) v. a4 l% V                        pLight->Specular.g = 1.0f;
% Y/ L. b: X8 V. r6 K& g# U                        pLight->Specular.b = 1.0f;$ I( @  ]# K# M$ z( W$ o" d7 w
                        // àü?? oˉè*
" ^; z  m; \8 a4 F0 \  |% ~                        pLight->Ambient.r  = lightColorPrv.r2;
- _& r4 Y4 ~2 m- o+ U  M9 a! d                        pLight->Ambient.g  = lightColorPrv.g2;1 _8 P! V% z7 j6 \
                        pLight->Ambient.b  = lightColorPrv.b2;
# g/ B& }( v; B+ k4 M' Z: y, Z9 i. P7 \" t
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 H* o% ]: p. \7 p                        {
8 o# }8 P, _# x. j8 R! T                                pLight->Diffuse.r *= 0.6f;9 \* f$ s: w5 i% `2 K
                                pLight->Diffuse.g *= 0.6f;4 u1 E% T" y% h
                                pLight->Diffuse.b *= 0.6f;  u# _" J& }! `+ ~* j
                                pLight->Ambient.r *= 0.7f;& g6 i) v7 Q: Z& C6 l
                                pLight->Ambient.g *= 0.7f;$ |( `. S: D0 w" u! j
                                pLight->Ambient.b *= 0.7f;- Z( a) ?" Z: E: @
                        }
; p, l  o, G& K2 i) b" f! L3 }                        - _* C- W* B  w0 q# h$ ^9 j0 G- Q( G
#if __VER >= 15 // __BS_CHANGING_ENVIR" F+ W' v/ l, O2 p2 @# b" f* c
                        if( g_pPlayer )
. U9 e! t) t# L6 k) f                                HookUpdateLight( pLight );
3 C: a; d: [3 ]9 [5 d' u/ ~4 N" m#endif
' z& N6 v5 a5 p( A# `! S' L                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );/ y7 G' d* g& p1 G) Z- ~* C+ B) F2 Z
1 M* m, o; p* m* \. V. q
#ifdef __YENV7 _. g: j8 a( B- F" {
                        pLight->Diffuse.r  *= 1.1f;7 h3 x5 Y9 C8 g1 s/ V
                        pLight->Diffuse.g  *= 1.1f;
/ S" q& _6 w6 z1 X                        pLight->Diffuse.b  *= 1.1f;
# f- _7 i  \. W6 G' |- ^                        // oˉè* ??à? 0 O. z" y% E* q3 Z* E# d7 A  Z
                        pLight->Specular.r = 2.0f;) a1 p7 K: G' v( n8 v
                        pLight->Specular.g = 2.0f;
3 d9 N( q5 h" `/ K6 e                        pLight->Specular.b = 2.0f;, w. E9 {# F4 s* E) e
                        // á?oˉ 5 f2 U) P! X( T5 b$ ?, a
                        pLight->Ambient.r  *= 1.0f;/ ?& b" \" E  h" J  ~6 m7 ^
                        pLight->Ambient.g  *= 1.0f;
8 b' B$ a* ~& H8 ^, \                        pLight->Ambient.b  *= 1.0f;0 `$ y( a" n' _8 O8 H8 l
#else //__YENV7 }( [. M" Z  }) n" F
                        pLight->Diffuse.r  *= 1.1f;
& E0 |% j# b7 V- Z, Q                        pLight->Diffuse.g  *= 1.1f;/ G/ h+ E7 ~; c" R  W
                        pLight->Diffuse.b  *= 1.1f;6 X9 H6 P, f' j/ f* F) K
                        // oˉè* ??à? 3 K- |7 A5 F  V" [' R' M) y
                        pLight->Specular.r = 2.0f;! P" n2 o* d  k7 Z5 T2 j$ m* C( {# R
                        pLight->Specular.g = 2.0f;0 f+ [- r4 l6 I$ B+ E
                        pLight->Specular.b = 2.0f;0 ]; h" i9 v  U! W6 i8 x
                        // á?oˉ 5 a% C% u4 ?/ U1 \- w* t
                        pLight->Ambient.r  *= 0.9f;+ _: `1 r" d' T* p
                        pLight->Ambient.g  *= 0.9f;. u) ~! d, t  Z, ]; I# c. d3 ]; _
                        pLight->Ambient.b  *= 0.9f;1 m! `: G, `" d7 @0 S2 `/ f- r# m
#endif //__YENV
& R4 v, e5 B& B! a/ ]                        5 W5 M( e3 m& D. d
                        memcpy( &m_light, pLight, sizeof( m_light ) );
, y) Y4 a+ b4 e& _0 b7 b                       
! G% q8 q% h7 R6 J. x- G% D                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
) A5 k% |5 q" I                        D3DXMATRIX  matTemp;
: O: r% k1 c# H5 k8 ?1 h                        static const float CONS_VAL = 3.1415926f / 180.f;
* K' g- f) A7 L7 `: D- V& R* F$ o$ i: C
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
9 B( F; {3 l" X' X                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
5 J9 r- @0 y1 W  Q5 H( |                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
. Z9 L! }# n7 C  |( L$ w5 w3 a& @+ M                        pLight->Appear( m_pd3dDevice, TRUE );
1 j/ G! j# C) \3 D- q7 c/ d
; `) Y' X, E0 \4 b* ]9 {                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 J: T, }; b4 d  U% B( z- E6 L' Q5 x                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
, ?+ o: E: p; t, A                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
& D# h# r8 E/ L9 i6 n4 b: V7 k- f" {# g
* E$ h2 B- G. G' ?! T                        DWORD dwR, dwG, dwB;# g5 D+ w6 z! c2 B
                        dwR = (DWORD)( pLight->Ambient.r * 255 );- x6 T% b3 x+ v' e
                        dwG = (DWORD)( pLight->Ambient.g * 255 );* v1 H! l8 M5 [+ }7 m/ W$ C& I$ W
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
, Z: j* ]) Z9 z% l6 f9 X                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
" j) k  t$ i* h/ A                }
* S1 N+ c% E, X) j; v; K5 U( ]        }
' T4 Z) l2 Y/ Z' Y- g, O/ s$ i. ], ?, a
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" R* I+ O+ [( i! R% f- G8 T7 S5 L# }# Y        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) );
$ v4 P2 f* T2 J& V5 \( k        ::SetLight( bLight );
6 n4 q* i& I1 P) X
+ g$ b: G7 L( F  J% a5 Y        // ±ao? ?D?í???ó á¤à?
: d% I4 h, n3 k( O( ?) t' `& l0 H        m_pd3dDevice->SetMaterial( &m_baseMaterial );* f6 Y2 {  \. s( h" i
        4 c8 {- z( ]1 U7 c3 O; G
#endif // not WORLDSERVER6 G9 @) e( l$ m8 K& e. b; q3 C0 F
}# F4 t% B8 J& D/ }9 d$ q4 @
并更换; k( I, c0 z8 D* T1 U8 v* G* l/ v  a; h( b
Code:2 L; d: _! C" U9 T
__FLYFF_INITPAGE_EXT
9 Y# ~" M3 P& U: O+ _定义; P) Y. r) V+ ?) Z2 g+ R2 m

2 R9 D/ e( E7 g2 |. V9 h/ r: a  B2 j# i. i7 ?) v

- J/ Y% s2 ?2 B8 c1 e* k5 W
3 G- I/ D* W5 d9 m: `/ s) d  Y8 F现在终于删除我的狗屁加速...& K& R# J7 x5 }3 p: x; l$ J4 J

, f. n6 k  ?  {; h4 ^( X. z1 t; ^; h2 e' i
6 w+ s; h, E- J* A





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