飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
+ I& D# l9 @2 a尾翼:+ O3 o" q  N) h7 p1 u, X

9 }& x2 ~9 J5 ?* ]代码:
9 [9 p6 @& B1 Z' V. k: L( V' r( ~CWndAutoFood::CWndAutoFood()  S. C9 v9 M' L0 `5 Z' z( z
{/ p' s  [, `  x$ w& }  h( a
        m_pItemElem = NULL;+ X1 r3 a3 d6 ~2 f" Y9 t* s
        m_pTexture = NULL;
; f& O- `: w2 A$ }4 T& V8 W1 O2 B        bStart = FALSE;  Q4 ~+ ?0 R# I3 ]( V6 k6 Z
}2 J& H) A2 O! P- K

6 l5 u3 d" R) Q, D* T* h& I' N/ OCWndAutoFood::~CWndAutoFood()
0 |0 Y' f% \5 C5 i5 \{
/ R7 E4 m6 J7 k7 w9 `        AfxMessageBox( "AutoFood ist gestorben " );
3 R# r2 A, |0 P( h/ J# F}
; i$ A  b2 T1 ]+ p. T: E  BBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )& k2 W8 n) Z7 J+ t! T
{
5 ?. M5 ~" l8 @1 ~8 V& J- I$ B        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
% ?6 e. d. f5 D- b  d+ T}( w' C$ }: h, y. V5 E1 K! ?8 K& y

# M, s: D1 _& sBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
4 y9 J$ \& o6 s{
8 S; l6 X' Z- R2 P        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );( k1 E! m2 C; ]: e9 ^. ]" W
        CRect rect = pWndCtrl->rect;. d1 V) K8 n* L: r
        if( rect && rect.PtInRect( point ) )% Y6 P! P$ D% j% T0 @! B
        {
6 v. J2 v+ `& n, N! Y3 u, [                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
% W- N- \2 k6 I9 m; k" C' G  R                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
+ y) k8 f+ C; R8 x+ s                {
) m2 o0 `  d5 |3 r0 m( |8 W8 e                        if( m_pItemElem )# z5 ~" T. ]8 @( \6 c) ^8 [
                        {
% x; O3 e# r$ T- e# P4 I# x$ z! n" c                                m_pItemElem = NULL;8 z+ O8 u6 T0 ^( F  O* y
                        }# E. `3 J% @1 F& b
                        m_pItemElem = pItemElem;3 c. R! R8 z" S5 U/ W/ {
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );! c, ~2 p, \& b' J" I
                }else{
9 f/ [  v' R# y# y                        SetForbid( TRUE );
% a) \/ a: ~* C" W+ T                }
( f4 w1 \: M6 v        }else{! p: a5 R$ A* K$ Z
                SetForbid( TRUE );' d( r+ Z; B; j  \9 F9 F2 m
        }
+ H1 {1 ^" S+ Z. P        return TRUE;
: S8 P  S9 b4 g}9 U+ P: \, k2 A% h

4 I1 A- V. g/ [( w4 z. n$ \8 s, qBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
: J/ @- e7 a# ]- J3 G' n{
0 h/ B# p4 L& \8 h( t        switch( nID )
6 U2 c% y: P1 c1 {7 r        {- s8 J, Y' e  j  @: R0 w5 d' N
        case WIDC_BUTTON3:2 c2 L% k9 n  C3 I# r2 Z
                {4 A  F8 ]7 N6 `: ]% C0 D) H5 j5 t
                        bStart = TRUE;
( z. D7 D* K/ l# P                        break;
/ Z0 T/ `6 V  z. [                }
$ ~* \* ?) _! \# I' c) s! e        case WIDC_BUTTON4:
2 U! @! g$ Y% b/ }9 v5 d                {: x$ w5 Y2 \: N7 Z
                        bStart = FALSE;+ k9 Z! A3 a  Q+ A; v
                        break;
. ~/ L, l+ t) ]3 `$ Z. ]( l                }7 S+ D" K5 `7 ^- `, k& n% h
        }
3 q/ k1 {6 _0 l/ d6 w  K. w/ l        return CWndNeuz::OnChildNotify( message, nID, pLResult );
8 c" g4 b" j$ g/ p. a}       
" L) O1 `/ t# K2 `& P1 z+ lvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )" |+ p/ J0 b1 k8 P- N3 d  _
{+ E* h4 o: o8 J
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
+ ~; Z% d" D5 Q6 `. ?        if( bStart || !m_pItemElem )# C1 z+ q! S  M6 U. y
        {
7 \+ n3 U' [" E                pBtn->EnableWindow( FALSE );  _9 A/ D1 v1 G6 P
        }else1 G2 X7 v/ @, J8 w0 M, b3 o
                pBtn->EnableWindow( TRUE );, Z, Z& O$ v! c# A$ @
        if( m_pTexture )
: Q: I6 g. I" R3 z5 A( u* n        {( }3 U' n. y$ ]( U: ~# h2 I; b
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
( ~/ I; v2 \7 {) E* X. \                if( wndCtrl && wndCtrl->rect )8 _4 y% \8 C* b6 I/ H/ h
                {
9 X2 m; U* x, B+ ]3 V7 }+ o                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );0 \- l9 G, |# I. c
                }' H1 R6 |+ z+ q% L
        }  B5 H/ a0 E7 m  |$ c# |5 L
}
: ]2 q$ {4 m) L0 b5 B  E& O
0 \8 e+ J. ~0 ~BOOL CWndAutoFood:rocess()
( t- ]0 D4 B  D& f! N{, `8 I- l1 T) e& D, S5 S( Q0 A
        if( bStart )* T$ Z$ }6 G& ~* Z  G+ l
        {( r' h3 c$ C6 x# Y  M' O3 t! C
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )  _7 f, v  w! L0 [0 K" m8 [- U- C
                {
- K: p( U/ R  m. H) y                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
; ~  M' }7 o5 u! A" b7 E) {# U                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );# V* L  E2 b, G
                }else{2 Y! v- ]% P3 w4 h% n! K
                        bStart = FALSE;
* ]( |' v5 [# {, @' A" t% i                        m_pItemElem = NULL;
$ E& W- {4 z: v3 H* d2 |                }% X3 T: `- a; \' J) m
        }
, j5 B2 N0 {4 [        return TRUE;
1 F$ Y7 K/ ?2 @4 o2 a: D}# O6 s) V6 P9 j5 m$ n, _

" M3 J  A. s$ \  v- @* s登录视频废话:9 i4 c& _; n! r2 `  D! N
尾翼:- I: @! t: H6 k! j( @

4 k& J- L- i( i9 _8 g代码:
: _9 s* F9 y: |) ^, m
3 V& z7 }5 b, O; q% Vvoid CWorld::SetLight( BOOL bLight )1 T8 J8 ?" H$ L$ H
durch* ~: q: p7 k6 m  N7 `
Code:
: y% J4 J$ H, ^% i' S# Gvoid CWorld::SetLight( BOOL bLight )6 c5 g: z" L/ V! p* E& r5 t1 ~1 c
{9 Y: ?" f4 y8 P% e% h
        //ACE("SetLight %d \n", bLight);8 d' E/ p  b8 }6 W0 Z* r
       
2 a/ A* @: A* v- G: t/ N' Y#ifndef  __WORLDSERVER , ]+ l' i% r9 H! G9 F3 g
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
( a" l7 W+ \5 j6 D        CLight* pLight = NULL;
; [' L5 d" K+ V% @; V9 y8 u
0 G: w' _# e7 W2 |6 G        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
! g+ K' C: M: {+ L# R  F' S
1 ~# A! `4 I" I: ~        pLight = GetLight( "direction" );
6 r' B/ D) D3 m% N3 _8 R+ _9 j$ O3 E, l! q# L- l# g3 C
#if __VER >= 15 // __BS_CHANGING_ENVIR
* h0 H4 [+ A) a: F: x0 n3 Z        if( g_pPlayer ){# R! x- ?' L- \& F! l5 u
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
+ y7 c! b7 m7 ?4 h/ f1 h                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
/ \# E! ~" F- q! A$ e                {
: w- A3 w  v- O) H4 Q  h                        if( pLight )
6 U. L- I& P: w0 |' F  y                        {
. z& G7 U9 p+ x9 e" @, T- Z                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
: _3 S; Q6 n. v; D: Q                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
$ F; y( H( v5 y                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];  Z. |8 N: A6 v( b( [
- c8 F) C+ E$ r
                                pLight->Specular.r = 2.0f;
5 H, s- O6 `; ^0 x& }5 {' [2 L6 {" T0 n                                pLight->Specular.g = 2.0f;
' M% i) s' X& q# f: x1 D                                pLight->Specular.b = 2.0f;0 I; v; y  S$ b& D8 N% m+ R5 L1 f% R* T
        1 a' \' @+ b- K. M1 o
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];* G( Q% a' X/ {; Y, B* o! w
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
' X& @7 b) o- j8 `, x+ z                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
+ x4 W, H, Z4 Q/ `; }) I       
3 M# q- e+ \7 q# \                                HookUpdateLight( pLight ); 5 H# \" Y) K* |' H" X

$ h+ I! s. r8 g) @                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );( P; o, q# s* \1 ~$ V
               
4 _6 s6 {& B) r  u% c1 B) ^                                pLight->Diffuse.r *= 1.2f;1 h' N0 ?4 v  @7 ~; ?
                                pLight->Diffuse.g *= 1.2f;5 y. ]  Y* \9 F1 t
                                pLight->Diffuse.b *= 1.2f;
5 Y8 O: k) w! S. E' b* M  A1 o% H8 W/ f" v9 c
                                pLight->Ambient.r *= 0.8f;
) e; u/ o/ U/ @4 k9 {3 O                                pLight->Ambient.g *= 0.8f;
  ^9 s  N5 @' s7 }; w" l                                pLight->Ambient.b *= 0.8f;. h% P' P; o6 z$ e
       
: W3 B! c; ~" J: C$ e. n: h  N                                memcpy( &m_light, pLight, sizeof( m_light ) );
5 z0 m, U$ O' @7 q3 P
: r( a& h5 ]# ?5 ^6 z                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);) ~* T% L4 L3 o4 e" k2 m
                                D3DXVec3Normalize(&(vecSun),&(vecSun));2 @. D9 B/ ^4 {6 j
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# I: U5 K$ Q) h6 C/ l                                 pLight->Appear( m_pd3dDevice, TRUE );$ f: m, `6 V. I/ Z0 `0 y& X
               
7 s3 q+ l; u" R: f                                DWORD dwR, dwG, dwB;, h( M0 V! [- b6 u1 i9 B% l& [$ ?7 e
                                dwR = (DWORD)( pLight->Ambient.r * 255 );0 |" B8 h$ |* z2 |$ S
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
% ?5 h# v, @/ u5 r/ M% c. O                                dwB = (DWORD)( pLight->Ambient.b * 255 );, m9 D9 t( c+ e) S, V
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: K3 S& h/ L6 R* Z                        }
( h7 U/ M0 G8 L                }
. c% r5 r$ D  K9 m% m" R8 g+ D        }; z" L* d9 E: E2 x3 N; C$ g  x
        else
' K5 z/ O. g* E. E$ I* O, \#endif : B' u( E7 B/ @- ?' f% S* R6 E

) M$ t5 [7 I* \/ B# h! g9 G        if( m_bIsIndoor ), g; L4 h  U+ A8 {& y# ?) C+ y9 @
        {
+ v( Z  X; G; z, U                if( pLight )6 D* d* E, l* c  y& Z' q. W4 F7 y+ H
                {                & _) k4 c) P% T4 A4 o+ K- T* o
                        // à??μ oˉè*
2 E* K% m" \$ W6 Z                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;$ v" r5 C& x/ v
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
/ W. W1 @' _* |) f# ~/ l                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;, ^) I. J9 D9 R
* |- T+ |1 y1 a# m& }8 ]; \
                        // oˉè* ??à?
# j$ M& C& }, q; Y                        pLight->Specular.r = 1.0f;
5 Q1 m/ C# r5 R! K9 L& J                        pLight->Specular.g = 1.0f;. k: V7 f) b4 o7 [8 P" k
                        pLight->Specular.b = 1.0f;
- i7 E6 R- w* n                        // àü?? oˉè*
9 S* _5 t  G/ B+ s                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
% c, O- d9 V' N6 U% a( m                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
& q% u5 P) z+ ]4 {% O                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
. d0 ~' J( i7 e+ o2 @  P9 G7 v( Y( H$ b
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.! o3 U/ f8 G' O* X0 [$ h% B  b
                        {
8 W' A& I, P0 O3 S) @4 {                                pLight->Diffuse.r *= 0.6f;/ T+ M$ Z( G6 o9 a
                                pLight->Diffuse.g *= 0.6f;1 E& }( u) L% T
                                pLight->Diffuse.b *= 0.6f;4 ?* k1 i8 i4 R# A3 q% I* y3 ^7 f+ ~0 K
                                pLight->Ambient.r *= 0.7f;8 |  d( q8 ]$ j4 N/ q' t
                                pLight->Ambient.g *= 0.7f;' [9 l4 \  T7 A8 S& _
                                pLight->Ambient.b *= 0.7f;; u% R3 f9 G( }- s1 p5 d- ^
                        }
6 F0 z% F& x( W, I$ M# f
0 ~- {8 j7 j$ d- B#if __VER >= 15 // __BS_CHANGING_ENVIR5 @% N( j6 \& D9 y' D' D
                        if( g_pPlayer )# B/ U7 H! I  P6 p0 S
                                HookUpdateLight( pLight );
/ R* X* G4 T; R& B0 G6 Z& I0 z' F#endif5 ?- a0 ]+ |3 n: `: {
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% [2 ]7 ?& O+ Y2 C
6 u0 `0 A& n3 R# q  V9 X                        pLight->Diffuse.r  += 0.1f;2 k$ C) [5 m0 C; _$ O1 b
                        pLight->Diffuse.g  += 0.1f;
! g- b. w5 G, d! z+ m                        pLight->Diffuse.b  += 0.1f;
0 n$ M0 L8 a& Q2 ]                        // oˉè* ??à? ) m" |4 M+ b  w: v
                        pLight->Specular.r = 2.0f;! G1 n+ y+ O4 }
                        pLight->Specular.g = 2.0f;
$ K; O2 E  ^. h' C                        pLight->Specular.b = 2.0f;. `7 S; R# e4 O. n4 G, h4 N
                        // á?oˉ
# x; m7 {$ H* {4 P; I$ t/ b! p                        pLight->Ambient.r  *= 0.9f;
) f: v6 V0 D( E  }  @                        pLight->Ambient.g  *= 0.9f;
, ^! W3 T* [, S! t# n# F3 S7 X                        pLight->Ambient.b  *= 0.9f;- Z$ b, v+ K0 f3 `; c7 r
( u" ?3 ~  C7 b: ]# M+ T7 B
                        memcpy( &m_light, pLight, sizeof( m_light ) );
* s; K( ~3 I0 U. Z! \; M; ^4 b                          N: H/ v3 e$ ^; u2 b5 k
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );' Y; _1 \+ P& s
                        pLight->Appear( m_pd3dDevice, TRUE );
, S- Q. |% E. b' r, S       
# {& G/ G- }. u4 S0 [1 O                        DWORD dwR, dwG, dwB;
& V. V! Q' |( H; h& I5 L- v% ]) R. v                        dwR = (DWORD)( pLight->Ambient.r * 255 );
  Q4 e& ^( W8 O! `6 O, _" r                        dwG = (DWORD)( pLight->Ambient.g * 255 );/ J9 s1 [3 d+ x* _" f' k4 \
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
( O# _9 V1 t- U# ^& z' C: F1 p                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );1 t7 M- M7 t. y2 ]  q: A) e; J
                }5 }1 e( E; |8 ~% u. A1 p; O% ^
        }
- f5 B$ J2 W( r5 g6 h& p3 }        else
+ l0 V$ W2 P5 S9 r& J/ A' f        {. z6 x* @& y' h9 ^7 u: {: q$ ^
                if( pLight )
) V  X* m" W; L! |                {, C; Z" M4 F; E! k5 n! `8 \
                3 |- L6 K8 ?: P: ?" N$ G5 _6 u
                        int nHour = 8, nMin = 0;  `- a9 ?' e* Z  I
        #ifdef __CLIENT
$ U) r/ @0 k) C' }+ J9 |                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. " C- K6 ~+ @% G4 N& c
                        nHour = g_GameTimer.m_nHour;
! u! p( m' |/ o, A( W! G0 f- x/ K                        nMin  = g_GameTimer.m_nMin ;3 ~; g, f' U  k; L3 F6 `( b* A- U
        #else7 U) t; o* ]0 R8 h1 j) W% N& p
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
0 S3 q/ l& w- Q( D                        if( m_nLightType == 1 )( b8 s5 a  c1 }2 r3 ~
                                nHour = m_nLightHour;7 C) n7 c. B' ?+ |# v5 L/ E/ }
        #endif
  c. o3 ], _( P. T; ^% ^                        nHour--;# x, o, a* ^- h" Z5 y, e) ^5 J; w& t
                        if( nHour < 0 ) nHour = 0;+ @0 E3 O' J- B0 L
                        if( nHour > 23 ) nHour = 23;4 h) ]7 I3 Q# K7 C( Y
  d+ N  c7 f+ g* d. b3 ~5 M: w* L
                        //if( m_bFixedHour )
( M, N0 K4 V( S7 `                        //        nHour = m_nFixedHour, nMin = 0;
2 S! A5 r' L2 D) e$ f5 c                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];9 C, Z5 W) h: y
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];. J+ h- M6 a" V! P2 W  e, f
/ R5 r( n& ]# _  `; x# V+ N  _
                        //m_lightColor = lightColorPrv;
% z, U) j( r7 `' z, N# K                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
6 R2 T/ C* J, ~+ t/ b                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
6 u3 X+ V9 c0 L                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) u9 W! l8 j# Q8 ?                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
& w6 f% w! C4 R1 }9 Q* L                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
9 b  z% I) Z* M                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;1 K- U2 A" v$ ~9 \
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
9 O0 w1 N/ D0 H% t; W& v& n: f1 H3 d4 `" g: d5 y% t
                        // à??μ oˉè* ! c6 R6 E# L; I" j% ^( }
                        pLight->Diffuse.r  = lightColorPrv.r1;
+ @  w, L* D* Z                        pLight->Diffuse.g  = lightColorPrv.g1;
( J! P7 h0 y  N$ v+ p5 Y# ?7 ~                        pLight->Diffuse.b  = lightColorPrv.b1;- b. n* h1 N) j
                        // oˉè* ??à?
, D9 C& s) u/ Y$ L" G( N                        pLight->Specular.r = 1.0f;6 h. Y; a0 I( D  K
                        pLight->Specular.g = 1.0f;5 z2 _# D; b9 b# o2 ^+ f3 R
                        pLight->Specular.b = 1.0f;  o$ N/ K- y7 s
                        // àü?? oˉè* + |& D( ~/ ?, H5 J: b
                        pLight->Ambient.r  = lightColorPrv.r2;% Y" y, l4 m; |6 b
                        pLight->Ambient.g  = lightColorPrv.g2;5 E; \; \+ Y" D& U9 R! x
                        pLight->Ambient.b  = lightColorPrv.b2;/ Q4 m, ~$ x5 W0 Q) G, y; l
; H( d$ {/ U5 a6 h/ M" I7 t
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 O1 s2 _) f7 M                        {( m0 n5 O5 @& t/ \& N7 G
                                pLight->Diffuse.r *= 0.6f;6 Y( H9 L0 b- N& [6 m
                                pLight->Diffuse.g *= 0.6f;
$ k' D8 K! ~0 O- n                                pLight->Diffuse.b *= 0.6f;+ C4 \  r9 S2 A& }4 I* g% E! j( i
                                pLight->Ambient.r *= 0.7f;% Q- I6 O  O9 N4 _
                                pLight->Ambient.g *= 0.7f;
. k7 A4 {! I: _; p; |$ J" ~0 {$ }8 w                                pLight->Ambient.b *= 0.7f;$ W5 X5 Q2 O9 e3 A
                        }, ?6 r  t3 }9 M% D/ x( p* e
                       
( r$ z$ W) Q# S7 u& T  r$ G6 n#if __VER >= 15 // __BS_CHANGING_ENVIR
+ M8 I9 H7 ^- s* O# i2 N                        if( g_pPlayer )
% Z% C' \! V2 _) B, W/ p                                HookUpdateLight( pLight ); 3 R( c2 h+ c( I0 H) I$ b: p
#endif% @$ W4 F! J, C# f8 i. Y
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );4 U9 M9 {/ i0 S
" g2 W9 Y+ z$ B6 `5 U
#ifdef __YENV
( A7 i% j8 A: F( @9 F                        pLight->Diffuse.r  *= 1.1f;
% R. l" d  r: F( t: l                        pLight->Diffuse.g  *= 1.1f;0 T1 r) r9 h7 A, z
                        pLight->Diffuse.b  *= 1.1f;8 e* q  G2 h1 J) b3 R
                        // oˉè* ??à?
) R6 C+ H8 a% v                        pLight->Specular.r = 2.0f;! |* e& a8 s3 z  M7 b4 o" C/ e
                        pLight->Specular.g = 2.0f;
) i% l1 r1 c: M" ?" C                        pLight->Specular.b = 2.0f;
! G' H, }9 F! z+ O: J1 c                        // á?oˉ
$ f# j3 x# s/ D$ L4 v% T                        pLight->Ambient.r  *= 1.0f;
3 m/ f2 p) v$ n% H: _  M                        pLight->Ambient.g  *= 1.0f;. |# T8 F: M+ c4 q& `# S3 W$ y+ R( X
                        pLight->Ambient.b  *= 1.0f;* M3 a4 O% c  Q' C. z/ V) ^( c
#else //__YENV
$ j- @. U3 q! D9 L1 E                        pLight->Diffuse.r  *= 1.1f;; j5 h" b' a  y1 \7 Z5 P6 o3 _0 m
                        pLight->Diffuse.g  *= 1.1f;
3 N# {0 Q! K+ f4 N  z                        pLight->Diffuse.b  *= 1.1f;
7 l: m4 [: f! p2 Z/ k" H                        // oˉè* ??à? $ h, b0 H! N4 f! U* ]& _
                        pLight->Specular.r = 2.0f;
2 U7 }, j8 o( E1 O3 L% a                        pLight->Specular.g = 2.0f;
9 P! u+ I3 w- K5 X                        pLight->Specular.b = 2.0f;1 w+ S+ C1 ^! w+ O. ?7 x2 M$ r
                        // á?oˉ ! K! {1 ~# q. o! x' ?8 y
                        pLight->Ambient.r  *= 0.9f;
, M: w2 e1 T7 [; _# q                        pLight->Ambient.g  *= 0.9f;
' T1 L+ ]- Y/ d, o% a2 d                        pLight->Ambient.b  *= 0.9f;, X; U, c6 I6 _, V
#endif //__YENV + n- P( T# d  M3 t
                        5 {( o( O$ g3 P5 y& n5 @
                        memcpy( &m_light, pLight, sizeof( m_light ) );$ S. e8 E0 S& G: X
                        , y5 ]; ]' ~9 D. r6 T
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);, {* Y& N& w) L4 a* _' A7 x
                        D3DXMATRIX  matTemp;# c  S  C3 k% ^
                        static const float CONS_VAL = 3.1415926f / 180.f;
6 O0 \) f! R: b+ m5 P5 }# F9 z) T8 F1 ]1 c4 _
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
2 c- n' ~$ g, X& k# T                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);5 i! I* E% {8 o2 n& |5 k
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
* Y4 ^! _7 w# w* F0 |                        pLight->Appear( m_pd3dDevice, TRUE );
+ A* y" S" }" z1 L
# N$ ^/ l4 O: R$ Y8 M/ C                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' D4 L0 p' a: i4 g! i6 M9 C! Y; r                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
, y- N2 J5 u; ]0 G  X                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) D: T# {( n5 W# K1 U$ G7 S# W# I
                        DWORD dwR, dwG, dwB;
: H' v" G( T3 M0 ?) {                        dwR = (DWORD)( pLight->Ambient.r * 255 );
5 Z5 l3 u: X  A: t0 Z                        dwG = (DWORD)( pLight->Ambient.g * 255 );
; k9 M3 n3 F- Z& z/ e( A                        dwB = (DWORD)( pLight->Ambient.b * 255 );1 D% |4 Q+ K& l2 s
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
; L5 N+ g+ }* t+ P6 m) T                }
8 l% C* g9 q- _& R1 H        }
2 z+ a, ?# v1 I) a" t8 L7 ~, e! C
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );$ z* G2 g' l5 z+ S5 s
        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) );
! k' M4 ?" X4 r, x3 K5 I        ::SetLight( bLight );: k2 J5 t% I- F; n) K8 b0 A
5 G8 ^- y& c4 }' u# }
        // ±ao? ?D?í???ó á¤à?
9 ?# {. }- C! M7 b) L9 C        m_pd3dDevice->SetMaterial( &m_baseMaterial );" E# l9 U* j9 H/ d
       
/ i( t# X/ s1 Y* `9 [#endif // not WORLDSERVER3 U6 `- L9 z& N7 |9 d3 {" F
}
0 [3 e# ]( m. g- S, O- O并更换
9 W+ w* b0 z9 {0 \  O! k" J0 XCode:
) w. r0 K: [- W- [__FLYFF_INITPAGE_EXT; a, j+ y! [/ B6 B! v/ A" I
定义( Z5 {+ x( g* b( z3 M( F- ]

2 A4 g2 H( M2 I- F8 Q' ^
9 r7 B1 f% P+ b  `+ z" b6 y* m! W1 d- S; s6 ?: O, j
* Y, p8 R: J$ o+ T4 |
现在终于删除我的狗屁加速...
2 h2 G$ K3 |7 a- \8 }: t3 D* s
) Z2 |8 N, F$ h4 K8 t1 h+ g, w. I5 ^8 l- Z" w& e4 j

! W( L- Q' q; j! V) |9 y' @




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