飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:' P' K6 c* r4 G9 K
尾翼:+ Y# K: V' i) e1 w/ J
/ U( M4 m  `* y9 m
代码:
0 S- z! a' g1 s0 E4 q, OCWndAutoFood::CWndAutoFood()
1 u  H6 j- D% t* S5 M) Q{
7 c2 q) [9 a" `; b        m_pItemElem = NULL;& s0 u$ j. P, r  C( b  y
        m_pTexture = NULL;/ z- J& O1 O3 z$ V0 ~& I
        bStart = FALSE;. |  y/ o3 s: h' e/ W8 Q
}
5 ^. |# O5 k8 J) c6 P
- N* X" S# A- {8 L# iCWndAutoFood::~CWndAutoFood()
2 v4 @' I" i6 ~2 [) ^{
, v0 f1 r( n& {        AfxMessageBox( "AutoFood ist gestorben " );
" U# N9 c7 V2 g, D}
4 w% d. ?. v, g; r2 |' S' iBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
3 S) M: X; a% P0 G  t$ x( t{
% Y: J  R3 s* d8 ^7 ^8 _# V        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
5 \6 e# Q8 T3 z& |3 ~}+ X. K! _; U0 H/ n1 x

) D0 J8 T5 F  `0 VBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )$ A& H8 i6 e/ A& L
{
: y+ F* K1 H5 C) i- R+ D9 o- H3 G        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );! g( _, N3 T4 r: b; H1 S
        CRect rect = pWndCtrl->rect;
, E3 _, [2 v4 n+ ?7 F; z        if( rect && rect.PtInRect( point ) )
$ A  i1 a: t1 E+ b        {
5 W6 D2 G7 k) _5 I                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );) i5 a; m/ e3 ?  x! J. ]( i
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )- P; G3 a/ Y3 \( P& |9 V
                {
) E0 K9 r4 q  n/ g* ^                        if( m_pItemElem )- V  ~: W2 n! `& a9 M8 o
                        {3 h, a$ [9 x% E) n
                                m_pItemElem = NULL;8 x; k1 k$ U3 u. z- s7 C
                        }+ x& n. S* q6 g1 _) W
                        m_pItemElem = pItemElem;
' q) G1 j# B4 r0 V+ r1 T! r" U                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
! u. j% D5 f) b# ~: w                }else{4 g( G* n' i8 Y
                        SetForbid( TRUE );1 o8 [. e9 ^, L3 P3 {
                }& f' M$ U; Y1 h5 e
        }else{& z/ S+ b2 R  X" V: x9 \' `( o! S/ R
                SetForbid( TRUE );
/ m" j2 C9 n/ R! k# `+ E# Z        }, X) P4 t' k8 V2 i( w9 F
        return TRUE;0 E* H% L; P* B
}
# G" u1 h9 {, ?  y5 Y( L' b" Y) J& ?. T& ?0 @
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
2 Z. B7 h" d1 w2 D{
7 p+ l4 n+ |5 ~" ~: ^" z' }- K, H        switch( nID )3 ~1 q$ a% ^# v) H) V/ q
        {
5 w4 C: }' I& }/ Q/ H% |        case WIDC_BUTTON3:
8 G* Q% ]4 Y+ {! y; y( d                {
( c  O# s* l# {                        bStart = TRUE;# t" k" y) z& U6 X4 N+ z1 u
                        break;- Q+ ^7 |3 l/ v0 |: Z
                }
* t& E/ C# H5 L( ]+ `; h' V        case WIDC_BUTTON4:! E4 }* |* n+ ~  F) N2 P7 p
                {
+ u" _  T3 l7 n9 R  t5 [                        bStart = FALSE;
% w  G3 a5 d4 C7 l                        break;: R7 q  O, T; J- x. C. S
                }
. b2 g  h+ Y5 M* s        }
* }0 \2 p9 r% B  \$ d        return CWndNeuz::OnChildNotify( message, nID, pLResult );# ^; g5 ]- H# ^$ v- M/ O6 r& v
}       
/ j. a9 e3 I1 M" l/ C, x  Avoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
- j' l: L4 r# r0 c4 v$ I2 D( X{
  {5 O# @, _. |) ^3 N3 Z        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
3 j$ P0 T: X1 m/ J& e& |+ F) k. n1 l# a        if( bStart || !m_pItemElem )5 `) q7 }! W6 z; p- g4 q
        {
8 |" ^, G6 [" ?: C                pBtn->EnableWindow( FALSE );: S. h  @# S% S3 z5 `
        }else
: e; a5 e1 X0 L, P$ B- X: {                pBtn->EnableWindow( TRUE );9 K) H8 F2 s' j
        if( m_pTexture )
7 \3 L% {; v8 Z/ [* S2 J        {
+ s/ q4 s; U2 f# b                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- C; Z* F2 r! s4 Z1 V% V0 d2 }                if( wndCtrl && wndCtrl->rect )# m6 j# I8 X+ f$ _( s4 J' b% U  ?
                {
  N& D0 J0 {, l9 Z% n! q                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
6 V3 m( |9 ?& `1 f2 I+ n* x' I                }3 f4 S" `3 H: g
        }
0 u  c! |4 Z' f& ~% s}% k9 B7 q/ G3 _3 M, ^
& k3 W7 x" f: a& g  F! h% G
BOOL CWndAutoFood:rocess()
1 s  k& ?4 c% S5 N9 {, n$ W{
5 \, L/ ^; q) l- {4 m6 M        if( bStart )/ y5 L4 C* n6 ]* N7 G1 M! E
        {
" f  W2 ?& A3 T) Q3 t                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )2 t" ^0 c$ R2 V8 r- U9 F
                {. q0 j, j2 @( w+ e* u% 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() )6 V" X" ^, z0 \4 M" }3 ]" {1 e
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );7 ~% D$ [4 {# C) B. o
                }else{
- f8 ~8 @- C6 k/ k                        bStart = FALSE;! ]8 ?' x8 h' w. q( h  e
                        m_pItemElem = NULL;
9 e# G0 o* l# ~1 {4 d                }4 P1 F0 y+ \* C8 S: k  ]
        }
* l" U. D6 e& T* j$ J3 P/ s. s        return TRUE;
8 B$ S$ T2 m" d& |}
! ~' C! j" y7 q! f, E* j3 a5 p3 x3 H3 H0 j+ t7 V2 f$ |
登录视频废话:
) a1 Y$ o, |8 j7 p. m, a3 d* a尾翼:
/ W0 h% N; |% l+ p5 n
0 o- q1 T+ Y( y/ |# k2 ]. o: L代码:
. Y3 Z+ t9 H, `  g
5 q% n  v2 E! p. ^void CWorld::SetLight( BOOL bLight )
% |- l' C3 B3 W- N4 h, _durch7 h- Y- i$ {1 |" E+ u% V
Code:8 c: F9 F1 }; a( |" _
void CWorld::SetLight( BOOL bLight )
, w/ b5 f" \: Q- U0 M, s{
2 P; a' W% n4 T' e        //ACE("SetLight %d \n", bLight);
7 W- W1 u: U& J0 `$ |  d+ B       
+ x2 a% {6 n, A  s2 I# `: y#ifndef  __WORLDSERVER
/ l2 w+ t2 Y/ A6 l# b' v        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);: ]. \9 z' ]6 u
        CLight* pLight = NULL;0 G0 ^4 b" a- l/ x8 c

0 n- w! ]% \2 |8 E" ]# ^. Y        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
9 B- V* q$ c& S( @1 n
, s* s+ q+ ]* \: u) u4 [        pLight = GetLight( "direction" );) a* w, h; @# X8 y- W6 }
7 }, `1 Q* }' W  S- w
#if __VER >= 15 // __BS_CHANGING_ENVIR  }) T: Z) q( K. D3 H5 i
        if( g_pPlayer ){; n3 c- J, V. {! |3 p/ B, r
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
- U9 }" U* U& y2 |$ v4 x  @7 @                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!: Q" _. K0 @9 a1 J0 l  \, {( C% W
                {8 s% s! P0 Z% [" ]3 E+ _! \; B& ^* i* n) ?
                        if( pLight )
3 C# ~+ a: O# _. e! w/ C                        {
9 A! L' V9 u9 I! _0 G                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
4 R: x4 Y2 q- F                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
7 V+ C) o4 k6 x" K                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];8 {# I. H; r+ N- q/ p9 s8 A
5 n+ s4 j, w; i  R. f
                                pLight->Specular.r = 2.0f;$ G. {+ c5 Q7 E8 S
                                pLight->Specular.g = 2.0f;
( v" Q0 j5 P1 y% }                                pLight->Specular.b = 2.0f;
; D% i" H5 U6 u; p       
* s' u* r; [" u# w                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
8 x5 o7 n! u2 p7 N8 }, I# e                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];# S4 E1 U) `' r% C, U
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
1 H- N$ j, N! a$ H4 z" C       
; j( G: R" K( X2 C. L3 O( p6 j- P                                HookUpdateLight( pLight );
3 f: k6 b. Q, j0 |  U8 A$ ?) \
& y# I; M( k7 A. M8 W& U2 L                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; ]( s5 h2 s, S" T0 Q) M2 l               
, a* ]0 _) R4 S2 {% s5 y+ z' e) f                                pLight->Diffuse.r *= 1.2f;- r1 z1 o0 T! D$ T
                                pLight->Diffuse.g *= 1.2f;* C) @1 t* n8 `  V$ d/ ]0 k0 D
                                pLight->Diffuse.b *= 1.2f;# u$ ?: j1 a7 T4 Z8 m: }

, g9 T* [. d0 L% x                                pLight->Ambient.r *= 0.8f;
% Y* t  Z$ x* _, J! O2 z, [                                pLight->Ambient.g *= 0.8f;! o% s: R# a. r; U; F0 ~
                                pLight->Ambient.b *= 0.8f;
5 C0 q. Q7 o; W. U        $ x5 p9 I9 Z( Z) N; H3 n$ _% d6 e
                                memcpy( &m_light, pLight, sizeof( m_light ) );- S" ~, F8 m2 @% k- |' Y

/ }+ N/ |7 O) N                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);( G. b& d- X. k$ i9 Z
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
/ J& n) ]5 z) V) A% F6 w. e. i/ j                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 ~# W: ?% N- P# T; \1 u7 y                                 pLight->Appear( m_pd3dDevice, TRUE );: X9 c7 o5 A, ?
               
8 O, @3 B, K  N, h: S, H1 g" t                                DWORD dwR, dwG, dwB;+ Y- D+ I" Y1 t4 W4 V$ F
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
8 W% p/ P1 j- ?( x/ {                                dwG = (DWORD)( pLight->Ambient.g * 255 );
  l5 }3 C0 h  Z+ l7 `$ P                                dwB = (DWORD)( pLight->Ambient.b * 255 );
* t' i, k' x+ \& Y8 w                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 Z& l; h! c; U/ h  W                        }
/ O. d5 ~- N5 Z1 E/ s                }4 Z! R" Z! F; j; x6 F9 B9 ~
        }
3 y# X6 A$ ?9 y% _$ h) z6 N        else9 P! ~* _# R! |5 \" L+ \
#endif
9 m3 \* W% n, z/ W) y$ u* T$ E; @1 Y8 r+ t! G! J0 @8 p
        if( m_bIsIndoor )
: D0 `; _+ U# i" X* l        {
; i- ~. ~3 l, X7 g) M                if( pLight )
: V+ o6 V( k& \+ E                {                ; ~# m0 ]6 V4 [
                        // à??μ oˉè* 8 Y) c/ [+ ]( h- V
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;1 a8 i8 R3 o! t
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
: t7 \' i, Z; r; J                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
& k/ o1 |. {1 s9 M& q& L
  f. G; j& c/ E) Y                        // oˉè* ??à? ; Z* v7 H# M  y. l. e4 o$ F
                        pLight->Specular.r = 1.0f;
6 E. x8 M* d1 z* m                        pLight->Specular.g = 1.0f;
2 e( N$ W+ _( b8 O                        pLight->Specular.b = 1.0f;
3 }* a+ p% [) o6 o4 T# ^  Y3 H                        // àü?? oˉè* 5 M1 |( ~" H' Z  H, H
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
% Q5 N7 a1 @7 M+ m* g* R. ], c                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
! t4 Y9 s: \5 ~5 q; I                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;- W# V6 Z0 ^! K4 X3 _
. z; S  U5 G2 a- P+ y) V7 X
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.' A5 s3 I9 X  ?5 C+ C
                        {
+ u* b1 Q& F$ I( u, g                                pLight->Diffuse.r *= 0.6f;5 M! G: }: l% D  g7 [6 b0 B
                                pLight->Diffuse.g *= 0.6f;
2 g% ^7 `8 d$ A( m9 }) u, F) {                                pLight->Diffuse.b *= 0.6f;! o# o- K) ~* h8 P
                                pLight->Ambient.r *= 0.7f;
/ V. ~, i9 `$ G' f1 n8 M                                pLight->Ambient.g *= 0.7f;5 y" _4 F3 M( o5 Y+ P
                                pLight->Ambient.b *= 0.7f;3 _3 D+ P1 T0 e7 A/ v
                        }
3 v/ B6 v  @/ i9 U7 }4 ~
; @7 S4 f1 a8 W3 N#if __VER >= 15 // __BS_CHANGING_ENVIR! A8 |# h: d' R; ~5 X* E, r# Y
                        if( g_pPlayer )) c8 [) }+ K' R! ]8 T
                                HookUpdateLight( pLight );
' u9 p( X8 O8 K: c5 B#endif& G6 O' f5 k! W. }5 q- G
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );* V+ {, L) t& K- h" d
" A! B8 I$ n. x! j' F
                        pLight->Diffuse.r  += 0.1f;
9 O$ j6 f8 `8 s- k. p& {                        pLight->Diffuse.g  += 0.1f;/ L3 H3 n2 a5 {; T% I( T' l9 P
                        pLight->Diffuse.b  += 0.1f;2 ^& ^1 G( A: G
                        // oˉè* ??à?
9 n/ C* x% h/ E, L5 K                        pLight->Specular.r = 2.0f;
7 h. T4 y: b4 D, n# ]; b                        pLight->Specular.g = 2.0f;
7 Z7 s. h: ^" R: h                        pLight->Specular.b = 2.0f;
, u3 c# B4 l) B                        // á?oˉ + e+ v/ _' N( U7 e$ G
                        pLight->Ambient.r  *= 0.9f;/ p% }1 j% |/ N. a' F- f
                        pLight->Ambient.g  *= 0.9f;* @2 C  @, P& M/ \
                        pLight->Ambient.b  *= 0.9f;. |8 r# {) R; }1 @% g+ L+ f( A
$ m* z" P$ a$ t' F& L
                        memcpy( &m_light, pLight, sizeof( m_light ) );. K( z& g9 v$ ~6 S5 V
                       
" K3 B* d3 Y; q) B+ u/ W                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );8 P# `+ C6 a* x% [" \2 P
                        pLight->Appear( m_pd3dDevice, TRUE );# l9 i! a2 Y( e0 t9 H
          m1 n- [* i* @# a* J
                        DWORD dwR, dwG, dwB;
! ?' ~! W$ ?4 c: ^, ?                        dwR = (DWORD)( pLight->Ambient.r * 255 );% B; d' {, D5 E9 a8 S
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
0 d& J' F# I5 M- s                        dwB = (DWORD)( pLight->Ambient.b * 255 );
- K' b) {, n9 i! W& U. o                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );; u6 e  D/ A$ u
                }
$ k, C  a0 q2 j' g( L# `1 A7 F- b        }
* W4 q7 v: t, @        else
& `' s( W! o  l$ E, m$ G5 k4 E        {
' A6 @* c7 u; r3 k) z, |, g                if( pLight )
: H" z0 `6 a' g5 E& M) c                {6 ^/ |, Z+ F- `: W1 c5 c
                & ?9 K$ U0 w; ~. ~+ j1 o
                        int nHour = 8, nMin = 0;  I& Y4 |  V7 y# b
        #ifdef __CLIENT
7 J- L" ?8 s! ]+ c( Q, e& L                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
. P: T9 |  c+ O0 U, }! N7 ?2 B                        nHour = g_GameTimer.m_nHour;- o* ]+ Z- y0 o7 m! j6 L5 u
                        nMin  = g_GameTimer.m_nMin ;* x& w0 v' m+ D
        #else
" n6 n0 a/ y: ~3 t4 B8 x0 C% n                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
3 K* l6 W3 A& k- }' D; w                        if( m_nLightType == 1 )' O, {: h; z4 r8 f5 v
                                nHour = m_nLightHour;
9 K" U) M6 q4 z* C        #endif9 f% O# g2 l5 @% J- D  P! O: {9 ~+ l
                        nHour--;
, U4 w$ y" J: @$ v; I( `' x! w                        if( nHour < 0 ) nHour = 0;
) h  E$ W9 ]3 \. `: J' N2 ?                        if( nHour > 23 ) nHour = 23;
" l$ S% U5 E& }- E; D! Q$ s7 D( F' @
                        //if( m_bFixedHour )
9 ~) d3 X1 K5 h( c0 N" m8 d                        //        nHour = m_nFixedHour, nMin = 0;
7 J3 q7 {  [$ ?3 M. [  D+ Z                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];* D5 l, i* Y& G. T5 J
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
( ?2 {& p8 ~- G! f- a- I: z; j  ~: W" c! k" Y2 E" u* ]! }' J: |% M5 S
                        //m_lightColor = lightColorPrv;1 W5 r' V0 F7 u( \/ [2 Z
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
0 q# s2 ~0 F$ E: J5 {                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
# L7 w* s& l2 O9 v                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;* w: G( R3 m2 B* N
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;. V- L4 p7 V* s; s! P2 d; O7 s
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;( W# _: L3 Q  P5 C# D
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;  s0 X# ~! Q( {0 x: a- O
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)5 b4 E2 ?1 d$ X* u: F* J5 d

0 o2 T  J$ R/ s" \( U7 L: ^: z                        // à??μ oˉè*
' j, L) z! L9 ~* {: f. I2 X; r                        pLight->Diffuse.r  = lightColorPrv.r1;
4 O, w1 V9 B0 w& M! E                        pLight->Diffuse.g  = lightColorPrv.g1;
& H$ G0 t# B; ^* P                        pLight->Diffuse.b  = lightColorPrv.b1;
& O/ ?1 e, `: K2 ~8 p6 u                        // oˉè* ??à?
$ w0 z6 R1 O9 D( G2 Q- A                        pLight->Specular.r = 1.0f;7 T( o6 `7 _; Q
                        pLight->Specular.g = 1.0f;
. Q1 g/ Q& p. Y+ h5 i                        pLight->Specular.b = 1.0f;3 s. T0 B7 @8 Z  m( s9 q
                        // àü?? oˉè*
, [  w" J9 G  d' X. [7 y( R                        pLight->Ambient.r  = lightColorPrv.r2;4 q) G4 \4 `* j1 S' m
                        pLight->Ambient.g  = lightColorPrv.g2;! B' S* l) s+ }( l5 E
                        pLight->Ambient.b  = lightColorPrv.b2;
& N- k8 R  k1 ?  b4 o9 }5 {
5 G+ T9 s9 S) e$ Z2 W/ G" ^4 y# h                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.8 g$ x* B/ R2 C* a
                        {2 b; i/ M; @+ P7 l
                                pLight->Diffuse.r *= 0.6f;; _3 D0 P* A1 @8 X, ^7 O9 L
                                pLight->Diffuse.g *= 0.6f;& J9 M" |" f/ R8 w; S3 g% m
                                pLight->Diffuse.b *= 0.6f;
. k. T3 S1 H3 p5 e( Z                                pLight->Ambient.r *= 0.7f;
/ J+ @! U! M8 x! c* Z) J                                pLight->Ambient.g *= 0.7f;% E3 `1 o8 e) f0 X
                                pLight->Ambient.b *= 0.7f;5 J" N. N$ C0 y4 z
                        }
) H' T) G- z. w9 }2 Q                        ! U8 N4 e& [$ B: i$ w
#if __VER >= 15 // __BS_CHANGING_ENVIR8 X6 N- _/ O# l/ o# ]' o
                        if( g_pPlayer )9 G- ]5 J% l4 u) K2 M
                                HookUpdateLight( pLight ); " I! E7 w: e5 ~3 A, \9 p2 K
#endif2 r: J8 A& D, A, D
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
  E: S  c9 e9 Z/ B
; B9 ^" R# L% G9 e#ifdef __YENV
3 V0 X( z8 r: V% T                        pLight->Diffuse.r  *= 1.1f;& v9 E4 Z0 o5 M! W& P2 Q3 e- w
                        pLight->Diffuse.g  *= 1.1f;
, b+ r) Y1 h/ n: l) g3 h) x                        pLight->Diffuse.b  *= 1.1f;0 i' c* x  H* D" v# _
                        // oˉè* ??à? 2 J1 ?5 J' h7 _! J3 R( I% P
                        pLight->Specular.r = 2.0f;8 T# i7 M! b9 i8 m/ b6 U& b( w% x
                        pLight->Specular.g = 2.0f;3 n% H1 `$ Q. w- h3 x
                        pLight->Specular.b = 2.0f;0 j$ F0 {1 z0 I
                        // á?oˉ / |+ V$ z% G5 K3 H2 q( o* x9 Q
                        pLight->Ambient.r  *= 1.0f;2 X# ~4 ?, j' T0 [, _
                        pLight->Ambient.g  *= 1.0f;
# F& e' ~# [( D+ m8 J; Y. T; C                        pLight->Ambient.b  *= 1.0f;, U  }8 t% @$ J/ n
#else //__YENV! P% d, O& T  |
                        pLight->Diffuse.r  *= 1.1f;
% b. }$ E2 x' Z. U1 m) L                        pLight->Diffuse.g  *= 1.1f;( U; M- j7 W$ ^+ H8 B
                        pLight->Diffuse.b  *= 1.1f;1 {3 K2 ?; v& B" P
                        // oˉè* ??à? 3 v9 A4 S3 K- J- r8 O7 \
                        pLight->Specular.r = 2.0f;* y* [! z" L( D* g& _1 H1 G0 N
                        pLight->Specular.g = 2.0f;  l9 K/ i( {( n; E- ^5 q- h  @
                        pLight->Specular.b = 2.0f;" S1 O  j# x  ~* j& x* d4 m
                        // á?oˉ 0 `% q" X+ I# o& J$ G1 ?
                        pLight->Ambient.r  *= 0.9f;
0 g8 V; J; I5 }; C; B                        pLight->Ambient.g  *= 0.9f;
3 ^" R$ c$ p5 W+ K# s                        pLight->Ambient.b  *= 0.9f;0 I  \4 |0 z6 \  f2 Q
#endif //__YENV
5 \$ }/ x! P3 G; _2 W1 t5 M! j                       
  R  F9 ~/ f0 s8 F/ [) b                        memcpy( &m_light, pLight, sizeof( m_light ) );* Q0 e1 N% P0 G# ~
                       
7 U1 r4 P5 J1 d                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);8 Z( {5 j6 f; n4 Z) E
                        D3DXMATRIX  matTemp;8 ?( n: q, M: t# [
                        static const float CONS_VAL = 3.1415926f / 180.f;
& x; f/ V% S9 Q, @) l
2 B1 n6 V, G$ Q4 H: |                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
9 P3 z# F$ n3 V8 A3 O4 |                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
% j! ]% U( m$ n: @' y3 g                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); / _6 |! u4 ]) q$ g- g. d( `
                        pLight->Appear( m_pd3dDevice, TRUE );
( ^& a9 e( B8 \( k1 d2 r3 v) B( e
. {( _( p$ c* k6 x5 q                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
+ L; e$ B8 `! R$ m) d: w3 z6 U                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));2 k! Z& o* f' z2 X' @- S9 p
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
; ^0 H% p) ^- f; ~$ o1 l. M* {! ^6 T) W: F6 Z( ?1 U
                        DWORD dwR, dwG, dwB;
6 n2 |+ M3 T# _0 [  E* N                        dwR = (DWORD)( pLight->Ambient.r * 255 );
) Z  A4 c% h; T+ ]- i                        dwG = (DWORD)( pLight->Ambient.g * 255 );
1 m6 G* m( {2 C5 W9 p# v$ H                        dwB = (DWORD)( pLight->Ambient.b * 255 );3 m( r) ~5 H& |6 `# I4 ~8 a
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        , ~5 W/ L# {) M& C. s
                }
& \2 o+ @* |4 i. Y! A$ N9 w        }
& u( o5 U- Z: @+ p. e
) C/ }3 `5 k% `, R9 c4 l( [        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );5 L( ~3 n6 p" X/ g4 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) );
9 p" h5 W* s+ V7 ^: Q1 v1 q        ::SetLight( bLight );  M/ D$ W6 y- M1 s- |
5 S+ g) k" \( q! o+ a! o
        // ±ao? ?D?í???ó á¤à? 8 p6 r( a8 X" z/ S3 N" A- q2 h
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
* d' L! l* a# u       
' o6 F" [$ \1 q0 \# X, c1 j#endif // not WORLDSERVER
. \: R$ p2 n- J+ p% [}
; \$ Z" x, v5 Y) ]3 b* s* f并更换
9 E! C/ _! G- e/ b4 o0 n$ N) V# vCode:
5 o$ T' x( j- W__FLYFF_INITPAGE_EXT# y$ u2 k2 X4 E8 `, U+ z
定义
! H+ C' V6 A/ B# T6 U9 d0 b1 S+ n& o
5 G6 m& u  c9 M: ?; A
" m2 w! R  H1 t8 L$ T0 t8 W; D

1 L2 o5 r8 x% E; V; G现在终于删除我的狗屁加速..." d% D) X/ O: S' ?1 x

" [" Q: m, K  ~$ p( o' B1 x# t

* w1 W& M9 J! V3 M




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