飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:$ }2 N% j9 l5 G7 {/ H  T
尾翼:
' F9 y; o$ i( p* R( }8 c. i# [. |. Z8 e0 u- C) k  w
代码:
8 }: b" E% L" ~8 r' X0 h" u9 H$ TCWndAutoFood::CWndAutoFood()
$ Y% g" G+ A: U1 S; S. o0 T{: Z  L  B% W" n) q" m3 ^# p& M
        m_pItemElem = NULL;
  m, {: G3 X/ ], D% }0 t0 O        m_pTexture = NULL;
( _' Y# ^! O( F& b3 E* u- X6 w( \4 U6 C        bStart = FALSE;
1 l. W% C8 [" O0 w. m1 y! J}
- O+ g( P* C1 s2 ]  Q# k' T0 e4 D. [" L
CWndAutoFood::~CWndAutoFood()
( Z1 l' T! S" _& b3 j6 I4 I0 w{1 \1 J" k. p: U" ^; h0 `+ W
        AfxMessageBox( "AutoFood ist gestorben " );
: ^  {2 w# v% }7 U# i. W7 f}; N" G% }( U7 c2 V; P) ^
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )/ d7 l. p( Q7 I+ R- Q- q
{
3 l5 J$ J( h4 Z1 f: M' q        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
; Q$ T5 ]$ D$ \}7 U) u, b4 ^4 [& g6 `! R
6 B8 p: D* w2 c" Z& V
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
* g1 H$ l: X4 j+ y& F7 a2 I{2 k9 V& g8 e% }+ y, q$ Q. n1 K' k2 j3 _; l
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );% P' X- x0 Z; o( D" m: U
        CRect rect = pWndCtrl->rect;
$ Z' V/ ~7 K: _        if( rect && rect.PtInRect( point ) )
3 I3 }/ \4 K8 H/ b$ {. o        {' @' E' L! n0 w! G
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );7 N, S0 U3 Q( ^: n& ^: i
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD ). q: O) t+ M& K. C( G3 V/ }
                {
5 o4 c! L. u( ^& s* ]                        if( m_pItemElem )
8 v1 m# z8 G; [. K1 @$ X                        {
2 ^- b( [( z& h2 \4 B: K  @                                m_pItemElem = NULL;
" Q8 S: I* N  [5 @                        }. H; `- Y- }& Z0 S* g- {* b
                        m_pItemElem = pItemElem;
+ {  o/ t; q- o, m                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
& U. I2 f7 ^$ W) b# B                }else{" A  c: W9 z/ e, r5 B
                        SetForbid( TRUE );4 m/ c/ ^, b- p. Z; Q0 _, @
                }( ~' g8 N1 \% a- K
        }else{
- V2 z0 X% `: ?/ b                SetForbid( TRUE );
" T" F: j! q' F- Z/ ?- S, L5 y$ O        }: k9 h9 X1 d2 p; y* X! X# D
        return TRUE;
/ m) v) E1 Q; D0 L% E* O4 o}5 Y% d& }( P! K/ q

: H! X. @: Q0 A/ VBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
, C" A, Z. g) |3 p7 w0 y3 Z{( r$ N; T# D" U% ], s
        switch( nID )
# c7 z2 Y0 Q: b! P8 O- A$ K9 [        {
$ O. ]4 Q; i2 Z$ p; M        case WIDC_BUTTON3:: f6 z, u) u. H" ?* V7 Y
                {5 Q! `% N8 F; ?, Q% O! h- J3 f9 q
                        bStart = TRUE;+ K- x  G& @# d' R9 ?2 ]: a: C$ T9 ~
                        break;
7 b, l6 h' c- }/ R# _$ i3 W1 ?/ A                }" \5 w. t" F! u
        case WIDC_BUTTON4:
4 z7 v- R, \' N" f: H1 j) k                {
! b1 X8 |5 @, L                        bStart = FALSE;3 M! [! P2 ]7 [
                        break;2 T, @4 P- U& _* m/ K
                }
3 G/ x. B2 G' b        }& y! I" J- d: D6 t8 }
        return CWndNeuz::OnChildNotify( message, nID, pLResult );, N( k  n  G) W" O4 X# N- O) E* A
}        / |. p& R9 Q9 D6 b7 [8 o& j# s
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
$ ~3 Y& }1 S1 R& [! M' F0 A{' a5 V0 k- _6 w; E# @
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
0 y& Q* M8 ~- w# c& C8 I- R        if( bStart || !m_pItemElem )
( Q% l8 [) N8 c! @4 a, G        {) K, X% R' V& d* a* @$ N
                pBtn->EnableWindow( FALSE );
2 S* m7 f7 U' I! T# R        }else' x0 K- y  Y2 v' E. h! O8 @! N! a
                pBtn->EnableWindow( TRUE );8 H: L2 z3 E9 @6 T6 l6 z
        if( m_pTexture )
( d+ P. G' }& H9 o8 y3 I        {& R& y8 q9 e6 T# X, B
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );! J& _: ~# h0 D" m5 ^/ A! n7 A
                if( wndCtrl && wndCtrl->rect )- q2 j7 E  L* p+ T7 |5 o
                {7 \: T+ d, J- e) M% v* B- ?
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
$ {! ?6 L, G5 T/ C* D                }
! V7 i& k* ~* i5 I        }
: D9 G4 a* ]3 g# Q6 A4 u/ R}& Y! y( v- ~/ q) [4 `5 B

: v7 a3 k( U" C! H4 w( wBOOL CWndAutoFood:rocess()
3 ?2 s; I2 W  o; L6 A( K{4 L+ O4 q2 \; b) t) q+ B% \
        if( bStart )
3 t' M& c5 u3 y& y6 B        {/ G" `' {. S* t$ V! Q- `3 X3 j4 y& t
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )* Q: N" ~( v! \8 U
                {
1 W2 j: Q2 O; R                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )2 w( i! |0 @% \. r+ N* N7 x7 U7 k5 ^
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );. L& f. [) d7 p8 w5 b. y0 Y
                }else{
# U& _& d, J' y5 t" @# ?( A                        bStart = FALSE;
5 \8 t7 d% k: L3 I                        m_pItemElem = NULL;
  v1 _, Z4 ~; s                }
2 L7 @7 ]- F+ O' |& I! t        }
' ]* J6 R; v8 q1 h/ R& a  c        return TRUE;
  f/ N& Y  @/ o8 D5 M( R}
# c# n/ P2 l) t+ W! ~( v; S/ v# H+ ^. M. m, M) I
登录视频废话:
% k, e5 N6 s" T% b# b& O& h6 x尾翼:  d, j1 u. g' J( O+ Y/ N+ b7 S
" a+ o* i' ^( D
代码:- V- V+ l# x( P' A  w( i" S( o$ ?# \4 j
8 v. X7 @) k; {# ?
void CWorld::SetLight( BOOL bLight )
% `4 X! X( u5 {* ?- wdurch* p) j2 @5 S% z3 d
Code:
, y4 W5 v4 r# W4 S2 c4 a2 nvoid CWorld::SetLight( BOOL bLight )! I) m" W6 U) F: \; F
{
( U! M" O% D. K, \. H        //ACE("SetLight %d \n", bLight);, f" {6 r9 Y- d6 }
       
' A4 I( t* ~9 S/ i#ifndef  __WORLDSERVER ' B. j, _8 M# x  |+ e9 q) v
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
+ ~8 t7 l0 I/ o* B/ v* i0 O        CLight* pLight = NULL;
2 ?/ V3 H2 W1 V# H( F" i) G
# p- L) u/ W  B- [& y8 w* ]4 c5 p        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );. G! s+ {/ X2 d% G( o( Q7 l
" j! B. d" ?2 q3 E6 U8 J
        pLight = GetLight( "direction" );
- m: i! p7 ^# l5 Z# a( a  c3 [8 g" `  M* a' x
#if __VER >= 15 // __BS_CHANGING_ENVIR
, u- Z# S* L* q) O  G& I        if( g_pPlayer ){
& L* C0 ], F' g% I5 A/ V. N                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );, p& j' b( }: w: F' J" O. U
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!. I' s7 R% w! A9 @+ o6 Q* d* N- {
                {
# I) ^/ T+ W+ |5 k: G                        if( pLight )
: E- t5 G/ Z- h7 P                        {
( y3 V2 Y+ }5 u9 H6 \6 Y6 c& S                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
# Y3 i3 |$ H/ X5 T7 n$ l                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];- \+ J" n% g- d" E4 O% x
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
7 E+ A5 E6 Y- i# T
" j; w4 \+ x) v" M4 i                                pLight->Specular.r = 2.0f;
7 N) z: {8 r2 B$ D5 U                                pLight->Specular.g = 2.0f;
& I/ G; H7 m( L$ I3 Z                                pLight->Specular.b = 2.0f;& \8 h2 \3 A% C: \& j
       
& L9 c4 K6 H$ p! R7 `% k7 L                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];2 P' z( i3 D. A' U
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];3 {. R6 r3 ?1 P) `1 j5 [
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];: }9 S4 ]; R9 F) j1 L, i9 A
        ' S( t5 A8 C6 _( _
                                HookUpdateLight( pLight ); $ z& u; U" x* U: w( `

+ C% Y: N" F' v# S                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 e! K# e$ I0 r3 C' K* p                4 Z$ M4 @5 t: O. I8 [
                                pLight->Diffuse.r *= 1.2f;! c2 w* w, L, X- X0 ~
                                pLight->Diffuse.g *= 1.2f;
9 C$ h6 ]5 U& L' \6 x7 U/ p6 x7 T! Z                                pLight->Diffuse.b *= 1.2f;  ]% A- k/ N9 o& E

8 l) }; l( Y# N6 O; M                                pLight->Ambient.r *= 0.8f;
& u4 ^% ]5 ]1 x* }% |$ t                                pLight->Ambient.g *= 0.8f;
7 u+ }. h$ @7 w* h                                pLight->Ambient.b *= 0.8f;, H( f( C3 N- O: r3 X
        : @* q& \; D- h
                                memcpy( &m_light, pLight, sizeof( m_light ) );
# O2 o9 [" e/ e; i* W) X
9 W  ~% B7 }3 ?$ u% ?; }                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);( M% a$ D6 t/ D! b$ K) D/ s
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
) v) ]* _3 I6 s% Y8 h1 l                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
- d0 N) j% E4 J5 W9 a                                 pLight->Appear( m_pd3dDevice, TRUE );" f2 I! k/ Q3 M# s/ e* Y6 ~! Y
                4 w8 w: H1 i# j* [9 s$ z. Y
                                DWORD dwR, dwG, dwB;& |+ z0 f5 c6 z/ V0 r' U0 E* s8 T
                                dwR = (DWORD)( pLight->Ambient.r * 255 );2 S3 L3 ~- w7 Q* I& W  b6 s) k
                                dwG = (DWORD)( pLight->Ambient.g * 255 );% Q  \0 ?- g( }8 I6 N
                                dwB = (DWORD)( pLight->Ambient.b * 255 );3 c( q! i( K! J2 M
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );6 u3 J& }# m0 f& u3 R7 w- u
                        }
; u) _& m6 J3 C9 F5 U                }$ N7 ]! f* E% d
        }  l. Q7 {) ~- r7 m  e
        else/ u! K" G0 [! ]  _6 R
#endif
' [+ Q' B0 A9 w6 o% R+ V" ^2 Y7 B4 M2 r, L1 }( ?1 A( H; l, I% t
        if( m_bIsIndoor )2 p  _( [. C1 s( p9 e
        {
& K6 {0 u+ n9 [( p  S0 A: q% X                if( pLight )# e2 v1 b3 f$ C) X- y3 w3 E# S" d  _& z
                {               
- x8 I& F5 w2 d, s                        // à??μ oˉè*
2 @! ^: ?; s# C' V; \& i$ R                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
* W% k: ^, B* u  n                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;6 e% s# ]3 E0 o6 f& n- k5 \9 N
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;$ f1 ]2 h* Q6 ?/ W' A+ K2 E
2 [2 [9 E( s, [. p2 g
                        // oˉè* ??à? # \8 A9 L5 j( _6 f2 C; |
                        pLight->Specular.r = 1.0f;, U& C. _7 w. X  }# L+ l- G* [
                        pLight->Specular.g = 1.0f;6 n  t  [. C1 D' P& @* e
                        pLight->Specular.b = 1.0f;9 p! A* k' s7 r3 q; M+ P9 X
                        // àü?? oˉè*
- S% x3 g; v1 M; x                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
6 f: {' X% \3 u                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
7 [& J5 ]/ M9 D6 c                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
. z, u! ^% J( \( H
5 y/ S; `" C, d% x5 g9 g1 u                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.3 T" x; g4 `1 }$ v+ l
                        {
5 l0 W' P1 {! }) [7 P                                pLight->Diffuse.r *= 0.6f;
' k) @, V2 ]+ O# R3 t                                pLight->Diffuse.g *= 0.6f;
! B/ @8 M; |/ D: r' A* \                                pLight->Diffuse.b *= 0.6f;
$ ?4 t3 i" S6 F, k                                pLight->Ambient.r *= 0.7f;
6 x8 `) ~# x( C2 Y/ a6 V$ E8 G7 k                                pLight->Ambient.g *= 0.7f;
5 `' g8 N; |& A# y  P  Y$ J* B% X                                pLight->Ambient.b *= 0.7f;
# ^9 w, v/ x( G                        }
) U/ B4 Z6 I0 Z1 T. N" W
; _' H& i/ B' y  B#if __VER >= 15 // __BS_CHANGING_ENVIR; r2 k: ]$ d% i% p
                        if( g_pPlayer )) {& N9 c: ~) B$ Y, U5 Y$ M
                                HookUpdateLight( pLight );0 H3 e" ^& m, s6 L+ k7 A
#endif2 x  u: Q7 V0 P! V# B
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );4 |8 I5 d- \& `

! Z4 G$ ]" j8 b* x                        pLight->Diffuse.r  += 0.1f;
% K: X3 b5 L! \, T3 `0 b, v                        pLight->Diffuse.g  += 0.1f;5 A/ `8 X2 L8 @0 m5 t9 M
                        pLight->Diffuse.b  += 0.1f;  v! Y: X; V6 v" v: \
                        // oˉè* ??à? % a1 \6 G; E3 v' m- T: ^# d
                        pLight->Specular.r = 2.0f;
: |" a2 X4 e, e$ f5 x                        pLight->Specular.g = 2.0f;) o1 J4 S9 V$ U
                        pLight->Specular.b = 2.0f;  d4 Y) K: p% l% j8 {$ J$ ~
                        // á?oˉ
- e1 W" V+ x9 X0 @' p                        pLight->Ambient.r  *= 0.9f;& b) z# z' U% \/ i. F% B
                        pLight->Ambient.g  *= 0.9f;) u2 ]' S  N- S8 k" X3 T2 |
                        pLight->Ambient.b  *= 0.9f;
2 c; }+ }$ M' @
9 H5 z. {- R: s: D" b6 y                        memcpy( &m_light, pLight, sizeof( m_light ) );3 r" t! q0 a' Q) {- d4 p9 }
                        , Z* Y" ~* t8 f2 c( S; o
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
0 T, T. M1 q& s) }" v                        pLight->Appear( m_pd3dDevice, TRUE );5 b0 i7 ~! X1 ~
       
; p4 K9 q2 P4 r9 m+ R; {2 B! m                        DWORD dwR, dwG, dwB;9 ^9 C5 f- {$ s: ~" a! X( i7 x2 W
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
% t$ j( t8 O2 e9 I2 M& X; h                        dwG = (DWORD)( pLight->Ambient.g * 255 );
  f& x9 x- d* a% K; \" s                        dwB = (DWORD)( pLight->Ambient.b * 255 );
5 f4 H* ]4 f, Q7 ]& m                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );6 J$ C1 j0 r6 \5 t7 J# b
                }
7 n6 Z/ Y7 R# Y) H        }0 p( H: |8 E. d5 [& c
        else% {& i: ?5 D* T9 r6 M, D
        {# i1 e9 d/ h% d8 Y9 J6 @, [
                if( pLight )3 B7 w! x' c! |- T
                {
8 e( p9 A0 @/ }) ?; T3 Z                3 W8 l/ p, I% e' `
                        int nHour = 8, nMin = 0;  @" Q2 u9 s5 U" ?
        #ifdef __CLIENT! I" m+ \0 C: ?9 {8 d' M- f- t+ f0 T
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. " [4 u2 W3 x6 N/ ^5 n5 M! ?
                        nHour = g_GameTimer.m_nHour;* \" X* e( {% _3 C, a2 R+ E
                        nMin  = g_GameTimer.m_nMin ;+ N1 T6 k( k( g1 u$ |
        #else- u7 X  F! s% a* ~
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.0 E+ L6 {# W3 Z" O& e* y# a7 C
                        if( m_nLightType == 1 )
0 V  x& Q/ o  \5 ]2 m                                nHour = m_nLightHour;/ N, h7 N# _% M* `) ^4 f5 Y
        #endif% R& h! o, X  W9 c( l* o6 v& [
                        nHour--;
2 o: e5 o! `+ k. W9 X( ?% V9 }0 X                        if( nHour < 0 ) nHour = 0;
( H& R/ }8 |0 ]                        if( nHour > 23 ) nHour = 23;
3 a" [. k, |1 m' _* X4 B8 K7 ?; ~8 i2 A/ P) R
                        //if( m_bFixedHour )' D+ C& a" f/ k% g. W) c+ j9 K
                        //        nHour = m_nFixedHour, nMin = 0;: N5 e+ }, `% l( ?: e
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
! C5 Q) k1 @* G! i! _1 g8 d4 v                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
" y8 d2 R  K+ Q% \1 d
( j+ Y  D. Y2 H0 S1 m9 s9 m                        //m_lightColor = lightColorPrv;
# o, J! G6 X8 A/ J                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
) \6 E: }! s, t  _; C+ P                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;% z2 w% y  |4 k2 p+ R
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;$ [0 i& q$ f3 P1 `$ w
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;2 @2 ]: n$ l/ i; o
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;. ^* e9 k9 C, A% z- G
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;5 `# H2 `( z/ q1 O0 ^5 C) T- `% x
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
+ j" n7 z& U4 F
( K0 Y. _8 M2 r                        // à??μ oˉè*
7 L) ]- _  U1 n3 o; r: w' N                        pLight->Diffuse.r  = lightColorPrv.r1;) |8 O8 q+ r& W7 V0 [9 U
                        pLight->Diffuse.g  = lightColorPrv.g1;
3 q9 F0 V; x2 S. g# T* b                        pLight->Diffuse.b  = lightColorPrv.b1;" @( {8 ], W! ]+ f
                        // oˉè* ??à? % T5 y8 ~) {8 Y& U4 \$ t: {6 f
                        pLight->Specular.r = 1.0f;
7 @" C1 ]6 k/ B/ w" K2 M                        pLight->Specular.g = 1.0f;; H8 @+ }8 a4 Z0 s& [0 @, O
                        pLight->Specular.b = 1.0f;
0 H: `) n- s# r$ C  b$ M                        // àü?? oˉè* 5 {* g  |3 P1 ]
                        pLight->Ambient.r  = lightColorPrv.r2;, |2 o5 X: `* j8 e3 s# a
                        pLight->Ambient.g  = lightColorPrv.g2;6 Y% ?- a( ~2 A* t4 p: @
                        pLight->Ambient.b  = lightColorPrv.b2;
. F4 W, V' i) E
( L  R- J+ J+ I                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 b+ |5 ?, T1 w; J6 u  w7 d                        {  F2 @0 u5 D2 D: `( Z  j
                                pLight->Diffuse.r *= 0.6f;4 d3 w" B/ g( I; i
                                pLight->Diffuse.g *= 0.6f;
2 W% x  V% i3 I' T: W8 h% X0 W                                pLight->Diffuse.b *= 0.6f;
" d' L. A4 t3 t                                pLight->Ambient.r *= 0.7f;
& F, C3 S2 V- X# X+ g, J                                pLight->Ambient.g *= 0.7f;, O9 m4 U. V5 D; ^+ K* c
                                pLight->Ambient.b *= 0.7f;
) G0 |, q  ~! t* c, R                        }$ `* {3 g9 {) |- t6 M" B: C
                        6 I$ Z) a/ N3 |1 ~* ~
#if __VER >= 15 // __BS_CHANGING_ENVIR
, U; V" @6 V. Z' f                        if( g_pPlayer )/ m" L: n0 r) ~' A9 X7 |
                                HookUpdateLight( pLight ); , u3 J3 }/ ]' [) a( @7 B* F
#endif2 Q9 W6 E6 J; b3 H
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. w! `3 n- T" C8 R$ r5 _1 Q5 M: D  x- t+ R- k2 K9 [9 h
#ifdef __YENV: F& b; Q3 G8 d: p9 o
                        pLight->Diffuse.r  *= 1.1f;3 z! b; H: |5 m% B# r. C
                        pLight->Diffuse.g  *= 1.1f;, J+ c7 S' ?. w. w
                        pLight->Diffuse.b  *= 1.1f;+ K! p( `) f' X% S+ ]
                        // oˉè* ??à?
- L5 J$ B5 x) V0 [  {                        pLight->Specular.r = 2.0f;
, q6 q) Y# X2 F8 @) e/ m                        pLight->Specular.g = 2.0f;
$ a5 ]' [$ t# L- V3 X" ~  f                        pLight->Specular.b = 2.0f;& O0 `. O! q& y! W/ a
                        // á?oˉ
* o9 I9 y2 k: C" c1 |+ W2 J) o. u                        pLight->Ambient.r  *= 1.0f;
% }. V5 Q) r2 h% f8 Y' I) Y$ @                        pLight->Ambient.g  *= 1.0f;. U( `( W5 W! a( {3 |+ H9 J
                        pLight->Ambient.b  *= 1.0f;
- g  c7 r; E+ O* s4 o#else //__YENV
8 b% Q' Y+ q6 `$ T3 ^8 f% l5 a                        pLight->Diffuse.r  *= 1.1f;
; Z; O5 q( g, E/ F                        pLight->Diffuse.g  *= 1.1f;) }  w6 u2 E, B& v4 {. o
                        pLight->Diffuse.b  *= 1.1f;: P: ^3 p6 Z/ ?3 d% x7 R
                        // oˉè* ??à?
( S9 B0 ^, B2 F. l: N! _                        pLight->Specular.r = 2.0f;) ?1 \, L. a6 d! u; ~7 I
                        pLight->Specular.g = 2.0f;
5 I$ }. o/ E7 J1 `& u- k                        pLight->Specular.b = 2.0f;; i9 Y% o" M& i$ Z) x
                        // á?oˉ
' n& H/ L" h4 e9 ]- L                        pLight->Ambient.r  *= 0.9f;
% ?8 ?" a3 W- ]( L. l                        pLight->Ambient.g  *= 0.9f;
5 ]# K  |3 x% B; U8 y                        pLight->Ambient.b  *= 0.9f;% f2 K" ]9 y* V# A0 x  V
#endif //__YENV : m+ _8 q5 L' b4 _5 Q% t
                       
/ x( g/ Y- H2 A6 A- V# s                        memcpy( &m_light, pLight, sizeof( m_light ) );9 Q9 v" m+ r& g% C# v9 K, r/ M' E7 _
                        : l8 |! f' T6 T2 s* u* v
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);" t+ ]3 R) G) l% q
                        D3DXMATRIX  matTemp;
" x' t9 a. [7 O4 d. s9 k                        static const float CONS_VAL = 3.1415926f / 180.f;
0 d, Y5 Z8 h7 @! H' H5 I$ e( V( m- q. {
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);" i& i, t( u% g
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
/ Q9 m, F0 Y$ U                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
* ^- y/ y& K- E8 w. P' }                        pLight->Appear( m_pd3dDevice, TRUE );" O4 U( d) ]# W' E& z3 N8 V& _& z9 K

. o& N+ }( ]5 X/ t4 U$ |                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);, I" g/ ]9 v! W# g, \5 i3 ~# R+ v
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));3 C# l( L" s" u  n. ^6 m9 ^% N' o
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
0 _+ F: D( h: }$ \1 _
7 @2 t6 G& E4 Y% c5 z2 \+ K                        DWORD dwR, dwG, dwB;" U0 O4 J3 J( f
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
9 X; L  h5 e3 V9 U" B                        dwG = (DWORD)( pLight->Ambient.g * 255 );1 E9 C9 ~' U6 q( U2 P/ h
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
2 w/ R  K& e- `- [/ \4 a                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        " k$ P% r+ s4 H2 {9 X9 v
                }
' q5 D/ y6 ?2 w: P, i        }
! Q' z$ Y$ Z% Z" t' N# J* W" u. W4 O. c# h- S/ ~
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );8 G) a, i* u9 n8 m  ?: M9 n% p
        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) );: u* K; ^, I* z' j, }8 c
        ::SetLight( bLight );
0 c, I) _& T8 c1 j
2 H( i3 d2 ~  z* G' f0 f        // ±ao? ?D?í???ó á¤à? , w! H) J+ o( v$ K# O
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
: q0 W: A% h! e3 @        ) l, A5 K" c9 A1 ^
#endif // not WORLDSERVER7 q  @: L. |. D' F7 w. \9 q0 J
}1 h" [% N, r4 x
并更换7 Q; p1 v- u+ y$ _$ W8 K
Code:
6 ]! i. M0 j. |% ?__FLYFF_INITPAGE_EXT
# i3 Z* }$ c) J" \8 X定义4 |* l7 t$ N1 }* k/ u. [
1 f( C) D5 F! B+ l# _

+ _0 n0 n5 h+ x- u9 v. `
. f5 K6 _: w; Z2 j$ W6 r
% J4 |# ]7 J; {( ~现在终于删除我的狗屁加速...
, u8 z0 @# d0 Q
2 R% N1 W5 S: k9 f7 M4 _  H  G2 K! Z$ q4 I
0 j" A8 g/ c2 f. |2 Z# x





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