飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:* W! A! [( ]( x; g$ g$ e  s
尾翼:
( u- O5 ]9 W  _5 |
; h* t/ E% L( n5 R  w2 I代码:; J1 v, N, ?7 ^/ U  Y3 B, F
CWndAutoFood::CWndAutoFood()
, d$ N) L' }- m$ c{0 I$ W# _. ?- H. s
        m_pItemElem = NULL;9 B. r8 q2 b$ N1 N5 j. q0 T
        m_pTexture = NULL;
1 z/ G; H$ X6 C- s  l5 u& e) p        bStart = FALSE;
* U2 X6 l! W5 z& ^}* Z% x5 {4 n3 i* q0 ^0 [8 Y

+ J8 E- U$ n& j  C4 M, k# g$ P: p5 BCWndAutoFood::~CWndAutoFood()7 O; B# W# `- x- j" R
{
( y& W0 a; d8 w$ U        AfxMessageBox( "AutoFood ist gestorben " );
2 l5 ?! r* B6 O0 P& h& @8 M1 v$ C}7 i* P! {* Y+ x  d% S$ a+ _
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
+ g) n" F. E3 K{
( S' c/ w& K( T9 ^/ `        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );7 ?( P; i) R) Q4 M
}* r; c) p  o: i# M. H- j
6 b# }- x# |* Z) K5 ^# @
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
& X/ H; P; y1 w2 c+ k- }{
9 G: O. |9 S! C: x        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );5 p+ c2 `0 a/ s  b0 D
        CRect rect = pWndCtrl->rect;
) p- G* o2 z% J6 o9 V        if( rect && rect.PtInRect( point ) )
# j7 M  y5 |3 ?! ~# e+ [        {0 `$ w1 |; r7 g1 H, R
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );" X$ r: P% b: @/ K) H( |7 E
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
* d# i+ h9 i- @% `  t0 F1 w                {& v1 t: \" [+ Q/ e7 C0 ?. R
                        if( m_pItemElem )/ T% [# k. y% C5 s) C9 \  W8 l, ^
                        {
: \- R) \0 ^* |2 p3 O                                m_pItemElem = NULL;
+ K, o9 P& }2 \7 k                        }# |! W9 z* m; F1 v/ w+ ?7 o% P
                        m_pItemElem = pItemElem;: u' b, O+ @  ^: G  C7 z
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
, S  ?' ^; i5 D1 n0 m                }else{
% C# g. U/ D5 y0 a5 [# B1 a                        SetForbid( TRUE );- L/ d. l0 n! E. Y
                }
* I7 E$ o& n+ g4 W+ w* ~+ |        }else{3 J; k  P4 a! C- F! X" W
                SetForbid( TRUE );9 C" W$ _8 c5 J5 a' G# S: z& s" |. @
        }/ y' v$ a# Z% ~( E: C( G. ]
        return TRUE;! C0 f  J% I' X7 |, r! x. p
}% ]' L# i8 o( e1 A

/ \: H: g7 ]! @$ v' \+ `2 IBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )5 j# F9 \5 r4 v) n: \) A( N) p
{" H- }# h; [# H6 |
        switch( nID ); V- T8 Z* o" O& a
        {
9 s8 N/ m5 H8 S4 S  J6 z  }% s5 K        case WIDC_BUTTON3:
/ E5 A. V4 J5 |  O                {# g  m  m# ^! \2 a" {* v
                        bStart = TRUE;
* [' R% o: M$ q* M4 T* Y- j8 e                        break;
, G6 Q: m% H! l" P                }
9 }1 N# ^. D* {        case WIDC_BUTTON4:3 X( H9 ^& V3 X) ^
                {* G3 V9 u% r3 j- L
                        bStart = FALSE;- @8 t- E* n6 c% C
                        break;/ [% P. h2 c+ C' f8 a
                }
9 R2 w2 X  Q  I, C2 V: W6 [( @9 z        }
8 B7 I4 N, K( c3 x        return CWndNeuz::OnChildNotify( message, nID, pLResult );
& N  P. O7 Y7 G/ Z2 C0 a1 V5 S( @}        6 B' p' x- O' Y7 ]( P$ |
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
2 Y3 h( Z3 _# t/ N5 ]+ ~9 l{
* s4 a* m$ K# H6 X1 o5 [& S% w7 X        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );4 F" x2 A: H1 g3 H, a% L( w# G- }
        if( bStart || !m_pItemElem )
$ v/ O0 M$ ?" j        {5 y4 C, |1 s0 O' L, D
                pBtn->EnableWindow( FALSE );: W7 g: Z7 y) T5 L) @- W9 e% W
        }else8 X. {, G$ m, C- t5 @2 {: j
                pBtn->EnableWindow( TRUE );
, w9 R3 U$ T' j! g        if( m_pTexture )
, P0 c+ H( `* G" L/ v, `        {$ {  T3 X, H( A7 Z6 l! B& H$ a
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 l* h7 s% D0 D/ ^1 U                if( wndCtrl && wndCtrl->rect )
9 ^7 {# S7 ~6 \1 T                {& |& W* h. I, W9 M; g
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );  @$ k4 t4 z& i; [. a& e6 U- M
                }
+ T% B0 d+ y7 w        }
/ {$ k& x* s+ O}
9 K9 g2 W( F# O& w+ A' F% A3 a4 e6 T- N* D
BOOL CWndAutoFood:rocess()  g+ q4 `6 ]; ]: a3 F* {" r; ?
{1 c; {( |# L8 l* L
        if( bStart ): U; @1 u: _' D2 Y$ ]' S' X
        {
6 U  M; u/ z! \4 V8 ?9 r                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
3 x* v0 _* O* q! Y# v                {0 |  K4 T( G6 [8 H
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )7 S$ d% z' W) S* h
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
- c0 Z' v$ r3 T1 a: I: N$ \                }else{
( m& i& }$ W6 [                        bStart = FALSE;
4 p9 E3 V1 E/ E3 O+ k+ Y                        m_pItemElem = NULL;
# Q$ A& c# Y- Z7 o' ?% C                }
. F7 h, c: k$ w# W5 A        }
3 Z. w2 d$ l% T. O        return TRUE;
; G8 x6 z+ G; U$ E4 ^}  V# n* P9 b/ [# x6 v  {" t
: ^4 M3 K2 j& \0 K8 m" M
登录视频废话:1 S1 C( Q& p8 E( Y. }  R
尾翼:4 Q) n, o1 y( n: R9 W) p- T

0 L0 A1 E7 X& F& M: Z9 ]代码:
; B- @' h: s# P5 C+ u3 P
+ G* P. l: j! p, `6 Bvoid CWorld::SetLight( BOOL bLight )
1 e5 _6 l6 e  t- s* ?' z' g- }$ odurch
# j( T0 U9 y$ u$ l* H6 D3 Y: cCode:2 G/ W- g7 C5 h$ Q
void CWorld::SetLight( BOOL bLight )  u  \* e* g7 w: R( j6 N' N
{7 |( x& n) D% \& Q3 k" ?& i5 T) W
        //ACE("SetLight %d \n", bLight);
. r! x$ `/ q7 Z4 c9 p% O       
% {: T; e# i, F6 E1 Z( ~- p#ifndef  __WORLDSERVER - y% n3 g8 e2 F" \" n- A
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);' S3 b) D* X8 o
        CLight* pLight = NULL;6 r, @& M% L- g4 y, z* u& C

  V8 D; K7 C) O# P        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );' c5 J& w; C* Q: _% B1 D) [% V" H

, g8 S7 M$ f4 Z" Z3 d        pLight = GetLight( "direction" );# v2 P9 u# m. g4 t* E7 ?/ d; e. P
& J7 S2 L/ B, g- t/ }6 H* L
#if __VER >= 15 // __BS_CHANGING_ENVIR2 ^+ l; \; B* M
        if( g_pPlayer ){0 e) R0 M% f% ^4 b, X0 \
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
2 c: s" J# ]$ f- [: O  j                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!/ b* P' [- X, N; y3 x* k
                {
  x) ^4 Q# b9 W6 v: e  V. L                        if( pLight )
$ K3 f; a" z" q( U4 e: I) J) R                        {3 J; S& k7 i/ |- U3 C
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
4 f0 z' n1 z& A8 Q                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
  z  E; m$ f# r; V* C9 Z                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
$ T6 p; {7 B* u. O. ?6 j8 {: o, O* R
                                pLight->Specular.r = 2.0f;. [4 Y! g4 ~: J0 g$ K% H' Y
                                pLight->Specular.g = 2.0f;7 @3 G& c' P5 m: g# l0 n* p
                                pLight->Specular.b = 2.0f;7 _* a3 N! n4 B" X' k7 x
       
( R2 T2 K% y2 k5 s                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
8 I' i7 C: W: B0 U* P9 M                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
9 V0 e; a7 S& E' y) ?7 `  e                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ @6 |4 P) H8 n( s! s$ N; p* M% [        . h# h% O/ q9 C9 V
                                HookUpdateLight( pLight ); 6 v8 ?" Y; N! l$ h7 @# c
$ m5 a6 n' `1 x& E  n8 R" u9 ~
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 b+ k, Q% d, @                / u5 l0 B9 P; G# l% \, S
                                pLight->Diffuse.r *= 1.2f;5 X, T/ L9 d9 G. ~  t
                                pLight->Diffuse.g *= 1.2f;
9 h2 U$ y9 q! `: `& G6 w: A1 }" U                                pLight->Diffuse.b *= 1.2f;0 W" ~1 Y5 a( z3 [# l. y/ k3 D

0 C6 _) ]3 z7 r8 F! W- {, f                                pLight->Ambient.r *= 0.8f;+ \$ p. a; U% _& Y  |8 [: f
                                pLight->Ambient.g *= 0.8f;( U7 D6 q" R; A
                                pLight->Ambient.b *= 0.8f;& L7 n! E: F5 M. r
       
1 e' x% F! p; l# k. @$ Y                                memcpy( &m_light, pLight, sizeof( m_light ) );# U0 i8 K5 ?& o4 n: i

! ]; {! E# ]/ j& d& j" n                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);+ n: U- m) V% k; o
                                D3DXVec3Normalize(&(vecSun),&(vecSun));3 D4 O* x. u/ \5 J
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 U0 L! u; G" |2 b8 j. ]                                 pLight->Appear( m_pd3dDevice, TRUE );! J1 W. \: K7 d4 b# W4 G
               
) U  M4 N: X+ G, ^8 t0 J' Z+ D                                DWORD dwR, dwG, dwB;" G2 a& C  W" i
                                dwR = (DWORD)( pLight->Ambient.r * 255 );. s! K. n7 L% @- V7 ^8 n7 v: g
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
3 @( x: w, _3 L4 ?                                dwB = (DWORD)( pLight->Ambient.b * 255 );/ j& I7 ]0 @3 }' j; d2 Z. c! I# p4 B
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );3 c0 u1 P9 n8 d9 }* i& n+ H5 s
                        }
; p7 R' M0 r- _/ z  N1 W                }3 y% O- S/ i& ]3 A' o
        }9 c6 b% }4 t/ r$ i
        else
' N9 s% O1 R# Y3 `) b#endif
( j- X! f/ c. p. c% f& @% X- V6 c" H2 I& m
        if( m_bIsIndoor )
) x) m7 w* W9 B( y  S/ r        {. L  a! B( o. l* U; o# K  U; Y/ P
                if( pLight )4 T/ h) W- @% v5 x$ S8 y
                {               
2 q, ^. u8 K3 `                        // à??μ oˉè*
1 O3 C% q( T+ p  O3 d% v( A3 N' C  U' Z                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
# ?9 X! O/ y* G4 _3 c: J                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;2 C1 _' T' A. r
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;6 x4 }* o, v5 g+ @; }

& L" |( N( I- O# B                        // oˉè* ??à? : D6 ]  U4 Q- ]" Y. s; B7 I1 c
                        pLight->Specular.r = 1.0f;1 b* d2 H( A" d" R) E4 B8 O
                        pLight->Specular.g = 1.0f;% E' `" K9 W% j% z9 o" z% e2 H
                        pLight->Specular.b = 1.0f;: k# M; w0 B6 y4 K: G& L
                        // àü?? oˉè*
) b  A, i6 N4 V9 {                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
) j8 j' [1 N* s) @( M                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
. t+ }, B# Q1 `3 h0 J) E                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;4 [. S& J4 g, z! i% p, J
* \; L5 Z- _- C: F- Q3 _. a" \$ z
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
( b' f: m$ L) U, X                        {
7 }2 Y6 z( k- E: @                                pLight->Diffuse.r *= 0.6f;( K7 j- @9 M. T
                                pLight->Diffuse.g *= 0.6f;( k: _3 l% w$ F: e
                                pLight->Diffuse.b *= 0.6f;
& Q8 O, ?5 w5 k2 x' H. z1 s                                pLight->Ambient.r *= 0.7f;
' n" w7 `% K! y/ Q                                pLight->Ambient.g *= 0.7f;
) P1 t: v" S8 C3 k1 N( k3 M2 U# U                                pLight->Ambient.b *= 0.7f;, `. K* d% ~. ^" |/ Q
                        }( W) |4 `; l  `% _: w

. z2 J  A- q& P#if __VER >= 15 // __BS_CHANGING_ENVIR" ^% r2 I; L# M2 i0 z
                        if( g_pPlayer )0 S5 S& C, p8 i1 Q% ?" H% v1 N  j
                                HookUpdateLight( pLight );
+ D+ K) d" X! e8 M# y5 x3 {#endif3 n6 ^$ L- v- r5 a1 A( z$ J
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );* \+ g  F; z" x

( \6 m2 R: p* k                        pLight->Diffuse.r  += 0.1f;
5 o- b4 j2 |0 b: k                        pLight->Diffuse.g  += 0.1f;
+ x2 c' Z/ D4 B, E+ l; H                        pLight->Diffuse.b  += 0.1f;' C+ ]; x4 Y% @, s9 n* d# O
                        // oˉè* ??à?
- |8 _5 b: P' m+ G' R9 W2 p- c" a                        pLight->Specular.r = 2.0f;" _2 G. w7 d6 K5 S
                        pLight->Specular.g = 2.0f;- A+ J" }% d1 P$ f5 Q
                        pLight->Specular.b = 2.0f;
* e' Z  v6 C+ [/ T                        // á?oˉ , a+ ~# M; P! H- t* y3 I6 \8 d
                        pLight->Ambient.r  *= 0.9f;2 E- U0 {& d" m
                        pLight->Ambient.g  *= 0.9f;; p) C1 Y. h8 X, A
                        pLight->Ambient.b  *= 0.9f;
* K& U6 U& r5 O
, H( M* R" `! W                        memcpy( &m_light, pLight, sizeof( m_light ) );
) {. m% [0 R1 x- D2 V& D                       
' S" a$ Q; A; r2 I; l7 u                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
% E! J# \7 D1 Q; ~' T6 J                        pLight->Appear( m_pd3dDevice, TRUE );( E0 x0 {1 f3 v) O
        1 w9 n6 M; ^/ w* j8 _
                        DWORD dwR, dwG, dwB;* b3 `: G  J; _5 \8 V6 D0 J
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
1 o0 f- }5 |3 I. ]                        dwG = (DWORD)( pLight->Ambient.g * 255 );6 K+ ]: W3 t6 ?- X1 h
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
. D1 j: }2 O0 t+ Y6 a; L6 Z. M                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
& H! H+ Y3 d+ U+ ?8 G. V. W                }
8 S' s) ]; X3 H. x" s5 m        }
! C, e" g! a) S' |& V        else
9 b4 Z0 G/ }+ ~# a% `8 K& [# G! j        {0 }2 H3 v* }, |2 `: Y; {0 ]
                if( pLight )
( D" ?$ n! [& M, U! N5 z+ I                {$ P: Z$ G0 D* {# @  k  Z
                2 V% Y& n+ v* S, h
                        int nHour = 8, nMin = 0;
- ~& m) H# N. d, ?5 b! A        #ifdef __CLIENT
5 F/ S0 g5 u. P0 p; V. t                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 5 a( C( |2 m8 P; }$ |! S
                        nHour = g_GameTimer.m_nHour;
6 o3 {( z+ `& p2 L+ Q                        nMin  = g_GameTimer.m_nMin ;) V" q8 M  G, J* S
        #else
2 }$ z$ d1 _' a) r                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
: g" R/ D" M4 Z! m, B                        if( m_nLightType == 1 )
! ^1 k0 U# M4 y7 X% c6 K0 u                                nHour = m_nLightHour;, b( b5 c% j9 q
        #endif: I* i* d& h; v. n# d! a( ]
                        nHour--;
1 ^; e2 n9 E& ?! o7 {1 j. I                        if( nHour < 0 ) nHour = 0;
  y9 p5 E: T4 U+ W* t$ _                        if( nHour > 23 ) nHour = 23;
2 V5 q; O9 O6 u3 ]0 z8 X2 T
: k; X9 T* S* n6 P+ Q! z& E7 ^" k. f                        //if( m_bFixedHour )+ f% _$ F6 L" E* w
                        //        nHour = m_nFixedHour, nMin = 0;
3 P9 f3 j4 z% q3 p6 Y" r) y% T                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
* Y1 G! g( q) ?$ P! L" O                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
; V, |& D! L+ F$ A# m' U: H0 ^( _1 Q$ b" m- E) G) v
                        //m_lightColor = lightColorPrv;' y5 i3 k4 t" c- Y6 X9 A
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;6 [$ j! g6 G* x" q+ `$ g6 I
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;* X$ |; T# ]- N3 l* Q
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;) v1 Z, o3 |# M) O8 d6 E
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
9 e+ J+ ?; b: L6 ?                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;& q1 f2 P) [* g7 \' p6 y
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
$ t2 c0 l# X- ^2 y                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)7 y3 }: ]0 h2 ?* H

; `9 E* X5 d' A2 B* Z$ X: h                        // à??μ oˉè*
3 Q  w! `4 X( }/ @8 B2 M: g                        pLight->Diffuse.r  = lightColorPrv.r1;0 Y; D6 }4 N* P; {: e
                        pLight->Diffuse.g  = lightColorPrv.g1;
& W6 ^0 `3 s8 m" {2 I                        pLight->Diffuse.b  = lightColorPrv.b1;
, l6 W7 a5 J: p5 h4 [4 ]                        // oˉè* ??à?
: L" k/ d: ^" c! {                        pLight->Specular.r = 1.0f;
  o+ m! f1 d8 a2 t1 |. K9 O& E+ J8 p                        pLight->Specular.g = 1.0f;
2 m- y% O  n1 A. G  ~                        pLight->Specular.b = 1.0f;& O2 H4 |' K3 s
                        // àü?? oˉè* ! L& \: [; S% w8 z/ h/ q3 g
                        pLight->Ambient.r  = lightColorPrv.r2;( L8 i( m! [; o5 V& i1 B
                        pLight->Ambient.g  = lightColorPrv.g2;
# D% r( b) P$ D; m$ w' L3 e                        pLight->Ambient.b  = lightColorPrv.b2;. w( a5 a+ A2 Q! E3 \8 K# l! V' C
' h8 M- E, P3 z+ d6 v
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.+ I5 Y# y' Y% T2 P0 M; f" r: E
                        {
$ N% O0 ^9 [, ]& {) `  {+ N0 L                                pLight->Diffuse.r *= 0.6f;# t# I5 z2 g8 v2 ]) v7 i/ |
                                pLight->Diffuse.g *= 0.6f;4 ~3 x* {% I* f5 C+ P! g  z0 G
                                pLight->Diffuse.b *= 0.6f;
; D: j7 ^9 i# z                                pLight->Ambient.r *= 0.7f;7 e( t; _/ I" A* a$ Y
                                pLight->Ambient.g *= 0.7f;! D$ e% C6 _) Z+ ^) a: U" Y% o  _, u
                                pLight->Ambient.b *= 0.7f;; t( t9 Q' x3 _) ^+ n" C$ X7 K; _
                        }
0 _8 _% A/ `( I# Z                        1 ~' t7 P9 ?+ o  T3 p4 W
#if __VER >= 15 // __BS_CHANGING_ENVIR$ ?8 u/ [* L9 c2 H
                        if( g_pPlayer )+ f$ X' y* U; x( ~8 A& y! _
                                HookUpdateLight( pLight );
) u0 D& [3 [  E4 P#endif4 S, b! e7 @6 b& B* N
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );2 w& H- B+ B5 l9 W* |9 V( ?- c

1 v9 L7 ~# e/ l! \0 m/ P#ifdef __YENV
: `" V; G  X: N2 A# U* y% z                        pLight->Diffuse.r  *= 1.1f;
% [& [- _. b+ Y8 v+ _                        pLight->Diffuse.g  *= 1.1f;: b8 t- O( U' S  }& ^
                        pLight->Diffuse.b  *= 1.1f;+ k$ W' M$ z2 @7 r8 Y1 f
                        // oˉè* ??à? ' c0 D% }# j1 p/ p( c( \, F
                        pLight->Specular.r = 2.0f;1 P! y) u5 ]0 K, {9 c7 x$ |
                        pLight->Specular.g = 2.0f;
& ?+ Y6 Q- p- C/ i2 r3 ^                        pLight->Specular.b = 2.0f;9 o" [7 M, }; R. o
                        // á?oˉ
1 v4 |: R7 k' I& t                        pLight->Ambient.r  *= 1.0f;
& j1 L& D9 E: ^0 ^                        pLight->Ambient.g  *= 1.0f;% W; j/ I, d0 w2 e& n
                        pLight->Ambient.b  *= 1.0f;8 W( `/ Y  b% J) ]4 W
#else //__YENV! O( ?. n9 o5 [0 t) h" \# [( ~
                        pLight->Diffuse.r  *= 1.1f;
4 ~; g7 v+ R9 @! u- ^/ W% V                        pLight->Diffuse.g  *= 1.1f;# m& m/ V1 L) c5 g) p$ n
                        pLight->Diffuse.b  *= 1.1f;
+ ~& @. g! n2 u7 [2 \4 G+ i5 z2 o                        // oˉè* ??à? 3 T- K% k: y. {
                        pLight->Specular.r = 2.0f;# @! X1 V& g" l! G" }! i/ v
                        pLight->Specular.g = 2.0f;/ g0 r- ~/ Q: p/ ^  z
                        pLight->Specular.b = 2.0f;
: r- d  J0 ~! e9 }. T                        // á?oˉ
) q" `4 c& p, x5 d1 j+ M$ E1 f                        pLight->Ambient.r  *= 0.9f;; l* C" j" _: L; T3 ~
                        pLight->Ambient.g  *= 0.9f;, z( n1 p" U% f
                        pLight->Ambient.b  *= 0.9f;9 {! n& W2 V  \/ ?: F* V
#endif //__YENV , C& [" |; Y# S2 _# I; g
                       
; ~- \2 ~" p% Y1 T$ F                        memcpy( &m_light, pLight, sizeof( m_light ) );
/ T1 W' y6 y& e9 Y                        ' ]7 x+ E6 M. o
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);4 ^5 c" W- b/ K- w: v
                        D3DXMATRIX  matTemp;
( l& Q: i7 `! I                        static const float CONS_VAL = 3.1415926f / 180.f;
& p, u9 I6 _  g6 y) M. }
5 }5 b  [( t" o                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
( f* x/ V! r  l% z4 ^                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
% z" y3 V; h$ L# h8 S2 e* q, G                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); . ^( t' u% E, [
                        pLight->Appear( m_pd3dDevice, TRUE );4 B" C" }' w6 H$ m
2 j! A( c. D" d
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);8 r# l  N' F- I1 y* C( i4 z
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));8 Q( Y0 |8 X7 I% B" h
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 0 c/ H: u7 w. W  v6 h4 H4 Z

3 |. w, k6 c- O4 ?                        DWORD dwR, dwG, dwB;
% z; |* M) e; J, l2 ^9 y+ A. Q                        dwR = (DWORD)( pLight->Ambient.r * 255 );- y/ S6 y0 R4 g* O6 c/ ~$ J
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
! |4 u: N! o0 I0 G' C4 |                        dwB = (DWORD)( pLight->Ambient.b * 255 );& b: d7 G8 v1 o5 x
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        . b) m( D- x0 ~9 T+ U$ L
                }6 N! [: O0 w$ O2 ^; x
        }
5 _$ }; R+ _( N4 `3 r+ P
) z% T+ K2 j( o( X# Q9 M        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );' k+ t: w5 S/ n5 \. ?7 ?
        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) );
! d5 h* q6 s' g  z        ::SetLight( bLight );
& K+ ]! k0 Q7 p1 ^& k% c! T% y9 k
        // ±ao? ?D?í???ó á¤à?
. T3 _7 O8 P5 Z% M5 \4 E4 R        m_pd3dDevice->SetMaterial( &m_baseMaterial );
* ?- {" T2 m, W1 Q3 x5 m6 E          j8 ]2 g2 j6 Q. O( V+ L
#endif // not WORLDSERVER
( M9 Q  e, A9 d}
. ?' }. {% [9 b7 s5 f并更换
. L1 Z9 ?) _0 N1 r0 M# o( ]9 ZCode:
: n6 Q+ A  Y# h__FLYFF_INITPAGE_EXT
  T' ^1 t5 L9 N6 Z' Z定义, R- Z, O( a: ]' y# I, p

6 m. Z- V* X+ U* \' o5 H9 V) o- b* g. d- o& a; F" b
5 [2 U8 ]! C6 M3 N' T
+ E* o( h% A- O; B: D" G  B- }
现在终于删除我的狗屁加速...( b  A/ l$ \$ S! H; j% E
4 \5 \: M8 |, p

! R7 {; @0 c% C0 t; \/ m. U; W1 \& a# n/ o( l& i' s* B4 o





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