飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:! s) I2 ^; ~. i) l( n
尾翼:$ `" j6 R( b+ S0 \

! n+ s5 {) O2 ^/ i  C1 i代码:! Z4 y! I5 B0 k3 @
CWndAutoFood::CWndAutoFood()
1 u& `1 v+ X0 K6 V4 V{) x: C$ ~. B) Z% Y
        m_pItemElem = NULL;
/ n5 l1 c$ a7 i2 ~4 Z        m_pTexture = NULL;
  h1 H$ ]2 _$ B, C' \4 n; ?        bStart = FALSE;+ {* D6 `5 _/ G! |  y. |0 C
}- t% ]9 c2 w/ B
5 V) n, u7 n9 w
CWndAutoFood::~CWndAutoFood()5 N% u8 o: q, `7 w. }* S+ a9 B
{6 j7 h$ ~0 D; e' _& f8 j' z7 j$ k
        AfxMessageBox( "AutoFood ist gestorben " );
9 f% d& S9 @; ^7 T* R; J* Z, I% _+ R}8 E) B% Q% Q. z6 ^7 B
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
9 B$ b$ o- I% A  s* s7 P{
2 j0 d. Y- R& c9 `6 }        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
  W9 W# C% T9 Z/ c}
0 W$ h1 t& Z- ?1 Z1 c  H8 M8 p5 g0 w7 ]( j: P$ I; |6 k5 z/ B
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )! n  x& \& N) ?! k
{" R; q# j/ p2 @* l/ \# N
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. ^9 X( E0 q7 A        CRect rect = pWndCtrl->rect;
/ p# J: X3 ^5 Z1 A" |, u, ^. t2 f        if( rect && rect.PtInRect( point ) )2 T, x5 }( ^4 t2 ^
        {
% _( f# m" H3 j; y                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );4 j- K1 D  O! R" q6 _4 {
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD ); h3 X5 c1 i  D3 w* q, V
                {+ H8 [9 y/ o3 b7 I: _
                        if( m_pItemElem )/ N, W' ~: |- o$ @0 R7 `
                        {0 f+ b: [& ]+ j% z
                                m_pItemElem = NULL;
/ O4 ]9 @3 ]% [5 }                        }1 p5 j2 v) u6 q4 n
                        m_pItemElem = pItemElem;
2 e; Y2 L/ g& Y. M9 ?! }0 f                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );. B+ f0 Y+ m% l5 ^1 k) J5 `
                }else{7 ]' T4 z+ d9 p2 R/ ^
                        SetForbid( TRUE );) @9 {% \( ~* Y' o9 s' S* v
                }
4 L, ~' s# d' L  W$ j        }else{& l% \+ u% z! R% a
                SetForbid( TRUE );6 a' f( I, L3 d
        }8 F! m0 U, I$ \% Z: w3 k
        return TRUE;
- h8 V3 p1 R2 w. K}$ m0 B; c! L& B6 c; Z1 V

; B( `" L2 @! [BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )! R$ `! W" F( q/ R  }
{
( A8 G% n+ M% z        switch( nID )2 x2 {" h1 m& E  b5 D
        {* r' B5 r9 q9 n" f* C0 J
        case WIDC_BUTTON3:
+ }" D0 s3 q7 y6 S  D7 N                {+ D/ S1 o% k4 [( ^" Z& ]7 f
                        bStart = TRUE;
* V" Q& l" \  p1 w                        break;
/ w# ]+ J' W' V7 w                }
. u  r1 v- Z4 W" L' b        case WIDC_BUTTON4:, F# k" Y7 S$ {) @( r
                {" O- v4 u9 C! O8 W+ l0 n1 d
                        bStart = FALSE;( @+ y; C# K( L; n
                        break;: @# w5 |& ~" d' W
                }' B2 n9 q7 C8 v, q$ F3 S/ z
        }
" L3 B6 t5 q% q* X) S" N8 {        return CWndNeuz::OnChildNotify( message, nID, pLResult );
" H4 p) i% ?3 B- p& `# K  p' Y1 _}       
% H8 l. W# ^9 B  L2 \4 ovoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
2 N0 c" d1 c; `" w% l1 z{( \- ?* r! `4 G
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );! b0 p) s# o2 U6 v% B% [+ F
        if( bStart || !m_pItemElem )
: u: F" x3 c) h4 z; f        {# a& @3 O7 w" v/ H$ b9 k0 f  }. b
                pBtn->EnableWindow( FALSE );
7 T; g% M" }" b/ W. h% Y8 {* X  j        }else
, k* i  U/ k7 o  y- g9 j! _8 H$ _                pBtn->EnableWindow( TRUE );5 k3 a- c  {  t1 U# ~$ Z
        if( m_pTexture )/ K& L8 M3 K6 s" z7 Z( k/ |8 q
        {
2 b9 M8 _' I, H, z! j; ~; n/ r0 k                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" [" _# F) k1 @# i                if( wndCtrl && wndCtrl->rect )
: V2 f- H5 a9 i9 L# l0 @, ~# E                {2 s9 A4 n' @6 h2 E
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );5 [& j+ b, @5 \8 \
                }
* L, d4 z7 V: c, N9 x# K7 p& F        }
" O8 q3 L+ `8 c0 {* F! c' ^}
2 ?' {) V9 C' Y3 E7 w* {$ _6 b6 _+ S5 u4 O
BOOL CWndAutoFood:rocess()/ }5 [: S7 Z# E- l# N( J
{
; z2 e$ P# J- x0 S) r  P4 w3 v        if( bStart )8 T# n+ e: @3 x
        {
! o2 c. Z: u! ~, \                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )7 j& h; j4 j/ k0 m
                {
& {1 T" k6 |; Y4 x$ ?7 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() )
- ^% @: L& Y0 u' w& E. _5 `8 B- ^                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
# m# [$ b9 S. o0 @" {* H( Z                }else{
; ^9 m" `# f) ~* d! _+ n# }3 l/ K                        bStart = FALSE;
5 n; Q4 y, a. u" n0 k+ X                        m_pItemElem = NULL;1 b) q8 T' N- i' }/ J) V) V; [
                }9 L2 `6 d  J) H) a$ ^1 \* \' e
        }
3 L% i9 z: n/ R% }) n( y% _        return TRUE;$ U6 Q5 |0 `# x* x: s
}
# v: b/ t$ m- ^
: B6 j$ r9 ?: ^  B登录视频废话:9 l- Q: U; f6 E0 S
尾翼:
% ~/ H8 k8 h4 {$ r. F) u& d/ i% ]5 r" r' }
代码:1 x/ T. `0 `. r2 t

: H. |) W3 ^3 U" c$ ~* t' Gvoid CWorld::SetLight( BOOL bLight )* s5 i- P& S( M0 b  x0 R+ S
durch
: G) k1 ?/ h3 K4 u& TCode:
; U9 u. r7 n9 N$ Zvoid CWorld::SetLight( BOOL bLight )
* p( r5 n* p; w" e, X6 }{- e6 q. ~, ~, Q0 {4 Z! \1 j
        //ACE("SetLight %d \n", bLight);
% j$ L* X7 H& `' o! D, b       
6 y+ B9 U0 P. V#ifndef  __WORLDSERVER * f7 m6 A" o9 C2 `$ W$ o" E
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
: U8 P: z9 {  s" z        CLight* pLight = NULL;
& f/ l, ?) M2 Q4 L: F1 w3 Q5 h. o+ ^3 C( c! g, f' e
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );8 a4 S& j+ C3 @0 F8 [& y7 Y
: |) Y, ?' Q! j- Y
        pLight = GetLight( "direction" );% z9 l7 ^; O, K: @

2 u4 z. p. A5 i! L. C( q) E4 p0 L% B#if __VER >= 15 // __BS_CHANGING_ENVIR
2 _/ t8 N; k' _: v# Q- Y& T3 L        if( g_pPlayer ){7 r. N/ n5 r8 h; P( \6 O. [
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );, l7 B8 B, a( h& |
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!" M) r3 j' i# Z. [) H6 v6 X/ I
                {
6 ?0 L$ i8 b+ t4 L                        if( pLight )
' F% D3 l8 g/ r! _                        {
4 {5 I; G9 A7 X; ]0 `9 X3 {" t                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];0 N) C& E; r3 ]' o# K% u- {
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
: M# y" s# c2 ~                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];) j! l5 k# c- q3 ]

0 }5 I: L: G( Q9 w: u                                pLight->Specular.r = 2.0f;% ?! ]6 N! X  [  I3 C" U- Z9 g$ N
                                pLight->Specular.g = 2.0f;
2 @" K! y0 ~* \' K  w' T                                pLight->Specular.b = 2.0f;) @2 q" Y. M5 z+ [& c! e  r
        8 w4 ]0 F! H- G, |' |% V/ D
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];3 `* y# J+ L& R1 V4 s8 h
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
- v! [/ P2 v4 M2 e4 m8 P" l7 t                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];" N4 Q  B; P/ K
        2 c, [6 f  V8 n8 L" {0 O6 K: u6 g
                                HookUpdateLight( pLight ); # A3 s; h. U/ j

8 f( h0 ?! m# a4 V5 j" |                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );4 v# X7 Z5 T* p+ k5 z( s
                / F# Z9 S, P. ]1 b7 P' I! H2 X
                                pLight->Diffuse.r *= 1.2f;( l+ b0 \. {  K! y/ W' P; P% n
                                pLight->Diffuse.g *= 1.2f;1 x# d( n  `9 |0 G
                                pLight->Diffuse.b *= 1.2f;7 }; j, _; G. F8 Y6 n5 h2 O
7 {, O* `; H- ^
                                pLight->Ambient.r *= 0.8f;' k( u6 i+ a. Y9 J$ Y% U
                                pLight->Ambient.g *= 0.8f;
0 I2 D- h  @$ e2 j                                pLight->Ambient.b *= 0.8f;* @, k! t& r& [  o" X  P
       
0 Y3 `0 l" a' b: z% X* o                                memcpy( &m_light, pLight, sizeof( m_light ) );! {4 p4 ?2 K. n7 I+ g

' q+ L+ m5 {' d; S4 V/ p4 d                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);) \0 ?" o4 M  G2 K: W+ l
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
& m7 ]8 @1 m" F                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 5 i( r( x1 @6 x. o( M7 Y- x0 I
                                pLight->Appear( m_pd3dDevice, TRUE );
. B# H6 x* }0 W5 a5 \9 E               
. W/ X) B6 G3 Q4 C                                DWORD dwR, dwG, dwB;
# |! o8 M  [+ {7 u2 A, I* K                                dwR = (DWORD)( pLight->Ambient.r * 255 );, Z0 I3 \+ v$ t* ]& t
                                dwG = (DWORD)( pLight->Ambient.g * 255 );! s( Z) N0 ]+ c  c4 @/ K6 n
                                dwB = (DWORD)( pLight->Ambient.b * 255 );- ~# l0 B+ _1 \6 i
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );0 r$ r0 u% K- @# v3 Z. Z% r8 ^3 F
                        }
9 T( ?5 P$ x7 u* D" g6 x                }# V: V1 n" k. f4 T0 N& K: A
        }
4 ], K3 H& E0 U- C4 l+ ]  ?        else5 |1 K$ P  r7 u; ]  l: Z
#endif
4 j, |& u6 W; m) ]* Q6 S* J
: Z6 s3 e9 v) f4 i        if( m_bIsIndoor )
5 m2 Y, B& F  R7 ~8 m        {
$ R9 r0 B' f* W1 c. R- v5 O, [$ f                if( pLight ), n+ q3 t6 M" o/ O- {
                {                $ ?3 j7 m$ D" Z/ G2 d, ]
                        // à??μ oˉè* & r: ^+ d3 }* ]* D
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
& e+ u; k7 a% z- n. N! V5 y                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;1 N. j3 ~2 a8 g- U5 c& T& f( X
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
$ [7 ]7 @6 k, R5 O
, M" q6 g& f9 h; ?, Y                        // oˉè* ??à?
+ U' r) N# r8 P* C" e1 T1 T: C                        pLight->Specular.r = 1.0f;+ k4 v. C+ U$ g% Q
                        pLight->Specular.g = 1.0f;
! T! m6 N* d4 Q3 E$ x+ S8 `                        pLight->Specular.b = 1.0f;
- `# p& H* N/ W                        // àü?? oˉè*
# _9 Y% q, K5 x# Z' \                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
7 o2 Y) T& x/ F. j# ^; t8 u/ o3 P9 ]                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
& {4 @2 O% }: d. m                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;8 v2 _, E+ Y+ |3 c" M! U

; Z, D; x0 P3 Y                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
( k' X0 U* H, d/ Z# n  |; N2 |                        {* n1 S5 L, I; f% X- S
                                pLight->Diffuse.r *= 0.6f;
+ \- L$ q8 X& f& N! ?9 K                                pLight->Diffuse.g *= 0.6f;9 v* l4 C2 x" w" ~- ?
                                pLight->Diffuse.b *= 0.6f;$ S) r3 n! K" y8 A( M
                                pLight->Ambient.r *= 0.7f;
# A! Q* A8 s2 b1 `8 ^7 w( \# F0 j                                pLight->Ambient.g *= 0.7f;( c& X$ \# p* }& M6 d* [$ B1 p
                                pLight->Ambient.b *= 0.7f;
8 \( o2 `' D+ {; E3 e                        }
3 s( u8 H! s5 l& S$ u
' o5 }/ \; Q4 `2 V#if __VER >= 15 // __BS_CHANGING_ENVIR
) D0 U8 t; I% K8 T- E# J7 S                        if( g_pPlayer )
% L9 F$ \$ |" P- n* y# B! N7 T& v6 G                                HookUpdateLight( pLight );
7 d1 k$ q8 M4 u: R$ E#endif
* ]! o) [: a& z  e3 h0 J/ v                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );2 ^1 |& S9 W3 G7 Y) z2 O; E# ?
+ v; o' b& f* ]- r  u
                        pLight->Diffuse.r  += 0.1f;; _+ a5 }, }6 C  J4 W% g; q) K' A
                        pLight->Diffuse.g  += 0.1f;* R( P+ m: N8 j
                        pLight->Diffuse.b  += 0.1f;5 h3 u  D. `: i4 r: C! V
                        // oˉè* ??à?
  b+ A/ \$ ^& T" ?                        pLight->Specular.r = 2.0f;
  @* M! S" J* ^- T% D0 ~                        pLight->Specular.g = 2.0f;
) {  w% ^+ Z0 ?                        pLight->Specular.b = 2.0f;
" x) `( c* i+ y; f                        // á?oˉ
' @" M) f& Z9 Q                        pLight->Ambient.r  *= 0.9f;. K! Q$ l# S1 b5 ?/ e8 \( C' l
                        pLight->Ambient.g  *= 0.9f;
. j' ^+ ~& K* J' O( J5 d5 Q                        pLight->Ambient.b  *= 0.9f;
3 T# Q4 `4 Z/ {4 p8 l
' \" k5 R# f- C1 X( B% u: ?% u                        memcpy( &m_light, pLight, sizeof( m_light ) );- w3 F0 D8 k8 E6 L8 L# o
                       
* G- }. u1 |: E% v                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
( L& e% O2 x, m4 z1 C                        pLight->Appear( m_pd3dDevice, TRUE );
  A+ @( p0 G2 B  G        2 w1 y; b: {2 M  |
                        DWORD dwR, dwG, dwB;- d( {5 `# N  i+ d8 l, X
                        dwR = (DWORD)( pLight->Ambient.r * 255 );9 j# E7 ?9 D' k7 z+ {4 W# ?8 ^
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
* q% e+ s2 s) h( k' b                        dwB = (DWORD)( pLight->Ambient.b * 255 );
& y9 L6 d# ]" _! d* R  z; f                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 h" P6 p$ T- f" _* f6 j5 q                }
9 b5 j+ ?0 J' M& Z+ C0 D1 Y        }! |: v) X  b& G( |" J
        else
+ Y* v+ N/ r6 U8 [        {8 Y' L4 g! w) M7 y
                if( pLight )
$ x+ l5 |  i5 S- }                {
. U$ i) T9 b- \% P/ T& r2 M2 G               
& w* U+ y3 i' k$ L' e                        int nHour = 8, nMin = 0;: \7 o6 P) @& M7 j: ?# @( T+ S
        #ifdef __CLIENT8 Z  M  q! d5 F6 O2 l. V" p
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
- w1 l' H( [! ]# ^7 i3 _                        nHour = g_GameTimer.m_nHour;
  Q/ f! Y5 n5 ]                        nMin  = g_GameTimer.m_nMin ;
  x! }0 g4 j! z5 ^, R5 ]  O        #else/ b4 E$ Y( T- ]7 T
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
* V4 g" x* V+ I) k: n) v: m- v                        if( m_nLightType == 1 ): A$ s6 M, N6 j
                                nHour = m_nLightHour;+ n  Z( r1 z* W& o5 _1 I
        #endif. I6 X: [; b7 I& W
                        nHour--;
6 e; K% s  o/ r0 K) Q  U9 X4 [0 N8 g                        if( nHour < 0 ) nHour = 0;
& C3 v( M9 y" D  D4 y                        if( nHour > 23 ) nHour = 23;
5 K4 q& U; @' U- |7 R+ _; [: m1 S7 ^, F. g+ J" C) X
                        //if( m_bFixedHour )
5 ^* I9 e4 V: x, d% |( x9 e                        //        nHour = m_nFixedHour, nMin = 0;
- y: S2 m( ^( G                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
4 B. H2 p3 ?6 U/ }) x                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];/ n( r) }9 K$ m8 c- L
* z8 `1 P7 i( [/ {4 d1 t
                        //m_lightColor = lightColorPrv;4 ^! l! ]! R3 x# H
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;: p2 {& K! t- B6 @/ k
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;% @( `$ ]- q# [; ]* v
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;& c! y( O/ W4 z, ^$ x/ R
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;9 E& ~7 i; }! W7 q: C0 \' }- E
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
) A; Z/ L: ~1 i" h                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
8 P/ q! P) E' b                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)' k$ I! F" W# A2 Z. `

  x9 B& y9 |) J2 I) Q                        // à??μ oˉè*
; A# v/ B7 b& ?1 ^$ o& I                        pLight->Diffuse.r  = lightColorPrv.r1;
  G3 w) W) \5 O' Z                        pLight->Diffuse.g  = lightColorPrv.g1;
( V" P1 s, Y3 B% w2 E                        pLight->Diffuse.b  = lightColorPrv.b1;. S9 r9 e7 u( F5 B6 D
                        // oˉè* ??à? 1 A7 M( h& l; J  V) a& O/ B6 k
                        pLight->Specular.r = 1.0f;
& y) Q. l& u) m                        pLight->Specular.g = 1.0f;
* d- I$ m, H' L: m! N; D                        pLight->Specular.b = 1.0f;8 W6 q) Q" `1 d: i, @6 J
                        // àü?? oˉè*
! j& a: E* U9 }+ u4 s% N1 O  h" g                        pLight->Ambient.r  = lightColorPrv.r2;  u% @) }# d- T2 `" O
                        pLight->Ambient.g  = lightColorPrv.g2;1 h7 j# H0 t5 z  i
                        pLight->Ambient.b  = lightColorPrv.b2;9 l& K2 u9 T& Q& c" h4 e0 O
% Y. O2 b  H# @& D. d! `! }$ ]
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! Y. K/ Q. f0 |. K+ C% y                        {
% Z+ J; n0 V: ^- Q3 Y                                pLight->Diffuse.r *= 0.6f;7 C9 z; g+ N! t( B5 a) O
                                pLight->Diffuse.g *= 0.6f;0 k3 M  V3 R% a& [3 j) |& H: U
                                pLight->Diffuse.b *= 0.6f;
& z' ]  \5 L: h% K& o/ l5 d                                pLight->Ambient.r *= 0.7f;
* {5 K" ]6 A8 m, w7 M                                pLight->Ambient.g *= 0.7f;
6 ?% d4 A- x2 u; d6 K                                pLight->Ambient.b *= 0.7f;) d% [2 [( R% b7 J% O! G4 C
                        }
! y- S, f5 r0 N0 w                        8 P: l& {- H6 F/ `
#if __VER >= 15 // __BS_CHANGING_ENVIR+ P6 j; R' w+ |& U9 P" o
                        if( g_pPlayer )3 [* N& M$ p- y# X) I7 I3 w% t+ R
                                HookUpdateLight( pLight ); & v2 j* E& x) A0 F
#endif2 g. o$ X6 X! C. W& {/ C
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );- e5 R3 W3 |8 d2 q

/ R3 |7 O0 L# ]; ?/ _- \#ifdef __YENV$ f6 T& l6 e! x: _" q. u3 r: F2 u
                        pLight->Diffuse.r  *= 1.1f;
4 ^3 ~  ]) Q: j0 @, m                        pLight->Diffuse.g  *= 1.1f;
6 a* P# J: }3 Z$ U1 g/ b                        pLight->Diffuse.b  *= 1.1f;* @6 O3 g& Y1 X8 v: G
                        // oˉè* ??à? 3 I8 O5 {7 F. ~% @, x; c
                        pLight->Specular.r = 2.0f;
. W# D  H* U. V1 E% b9 @- L                        pLight->Specular.g = 2.0f;
0 r  \  j2 W' p$ Y                        pLight->Specular.b = 2.0f;. ?' J' v; }) v% S; j+ N; \
                        // á?oˉ 8 t  J; F* t* |2 y& l
                        pLight->Ambient.r  *= 1.0f;4 M  k$ c. V1 Q/ |- U- i6 _
                        pLight->Ambient.g  *= 1.0f;9 U8 I- p' c- m
                        pLight->Ambient.b  *= 1.0f;
& a. E) ^3 [, m9 S' _" w0 u! T#else //__YENV
. w8 e8 g$ T0 m" @9 @                        pLight->Diffuse.r  *= 1.1f;
& f; O- M4 `# Y) @2 ^                        pLight->Diffuse.g  *= 1.1f;2 K; S. t& o+ P: E$ F& Q, d
                        pLight->Diffuse.b  *= 1.1f;& p; @# D2 D, h1 h# k! G
                        // oˉè* ??à? + R* Y! g5 V& ~0 E& ?$ m
                        pLight->Specular.r = 2.0f;6 b/ W! f3 C" A! G4 z
                        pLight->Specular.g = 2.0f;
, _, \' @- D* A* v                        pLight->Specular.b = 2.0f;
- e& ]; L/ P# Y2 g3 i) q                        // á?oˉ
. X  l- Y/ q# j" d                        pLight->Ambient.r  *= 0.9f;7 v* E  |4 X6 s" a# K, l  t
                        pLight->Ambient.g  *= 0.9f;3 G1 X9 x2 h  ]8 c4 l: v9 k5 E
                        pLight->Ambient.b  *= 0.9f;; S) b/ R5 a* [# l
#endif //__YENV 4 h& d6 B' @# d9 |/ g0 y
                        * @) m& _& j6 w: s  e3 g
                        memcpy( &m_light, pLight, sizeof( m_light ) );
! n& V) H. M8 e0 G! \; v# Y4 c                        ( @; ]! ?& n' ^7 w. ~* e7 N
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);, p# F9 j4 q( i$ x/ {" m9 K' D
                        D3DXMATRIX  matTemp;8 L. m2 n, l( _5 T' _
                        static const float CONS_VAL = 3.1415926f / 180.f;2 k1 R5 g2 v# g
, x% {4 Z1 D" w$ B
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);9 C4 c# Y! s/ w/ ^( _: r5 _
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
! S  O+ l1 E2 j; J( e6 q, }                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 8 E  P. m, ?% H& P) f0 m, K
                        pLight->Appear( m_pd3dDevice, TRUE );
( J( c% h3 X# n+ O+ u* s' L& ]3 i3 u8 T& e, y( e
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) `0 c( o' K. t* [                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));2 W8 K# c1 j5 t
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 0 D0 G4 N0 y) c2 n& g" }
0 A8 Q1 z" `. k# a5 @% ]
                        DWORD dwR, dwG, dwB;0 g" K) b' g9 r" Z- x$ @) m
                        dwR = (DWORD)( pLight->Ambient.r * 255 );& F* ]- @) V8 y3 @* T% F
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
' e2 b' a! [, G$ ?2 V9 R                        dwB = (DWORD)( pLight->Ambient.b * 255 );
4 ~9 h; a+ v* f                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
6 t# U' B( ]5 m/ @                }
( q  i: \# E+ K- S9 b        }
% e" d5 ]+ O8 i& ?+ @0 W1 ~& K# w
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );1 N, l5 a& b/ [7 ?( V* l* }+ j0 g/ 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) );8 K+ i' X" Y" F" V
        ::SetLight( bLight );. `6 K! c) e1 \3 J7 n

4 q& h' s4 a: N+ Q# m% V/ T6 y        // ±ao? ?D?í???ó á¤à?
5 O! [2 c) w5 {        m_pd3dDevice->SetMaterial( &m_baseMaterial );
3 L/ S0 D+ ]2 ?       
; ~1 z& H# E: j/ e' Z#endif // not WORLDSERVER  F- C% k2 K$ _, s  ~: o. _2 C9 b
}
0 d; W0 Y, _+ f并更换
6 K* L# L) E9 P% \! W/ r5 xCode:! G% Z2 a# m" J" P" I! o
__FLYFF_INITPAGE_EXT8 N6 U, o3 I% R& A& P7 ~
定义
' s% `9 Y; O% {/ t
3 n) g8 B8 @' m) j1 |2 h( u: A4 E' F# Y0 t
, R, ]& ~5 y$ G
- @- T$ P# n$ Z) ]1 N
现在终于删除我的狗屁加速...
$ ]: U+ g7 K1 X7 Z' H4 y7 B' Z( t$ y2 Z9 @& N0 \0 ?. o
. K0 G& y1 U9 V0 x) k
  N: Q7 O* f+ @3 v





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