飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:/ V( m0 {9 H# L  n( o+ q( R7 a
尾翼:
' M) n- A! V2 _- a7 `# y% X6 a. P  ]- I, r
代码:+ n+ V; D, D$ |) k
CWndAutoFood::CWndAutoFood()
- x. A" c. t2 R/ ~) |# O% \{
0 ^& d  p: s4 q* f        m_pItemElem = NULL;
+ L, `& k/ W& ~, }, g$ R2 I$ C        m_pTexture = NULL;
- g4 A, v& [; x: [* g1 d        bStart = FALSE;
  S# J4 s: a2 y- C8 R; z}7 }* ]0 y! U& C( [4 I

; f) q5 K' t$ @; d- xCWndAutoFood::~CWndAutoFood()
8 Z7 Z8 h* n+ f/ Q3 V0 u# x; P{( b3 E2 b1 `; N+ `$ y% \& m, W
        AfxMessageBox( "AutoFood ist gestorben " );! t( K" V' b$ M) s+ l% Z# N
}
! g4 e2 d/ b0 gBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )$ ~1 x- q! }# O" ~+ N3 L7 s2 s
{
5 X& y3 M- b& ?- c; Q& z$ M. h        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );4 u: K! {- t9 c) F) L7 D
}. E! j/ f  L- Y- |

2 p/ q, I; Y$ `, ^9 T( A% N( {9 n; FBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )0 a3 N. K+ K' ^8 [0 B
{% b: ?5 `$ F, R8 E! w
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ t: ?( v* F' i& R, t        CRect rect = pWndCtrl->rect;
1 h- R6 M% f) l7 ~9 N3 f7 l        if( rect && rect.PtInRect( point ) )$ u  _* s% q0 Q7 I& {
        {% B0 j* m/ Y0 ^9 T6 P/ x
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
3 T- l- Q4 t  I2 K1 P                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )& T- Y. t# l4 v4 }6 E
                {
# N0 L8 I- X2 O/ J0 _$ |" F) U+ I( N' x                        if( m_pItemElem )
& W+ S2 ]# Y  C, [% g, J                        {7 T9 ~( U, p( E* S( Z+ _9 d
                                m_pItemElem = NULL;
6 D# M& J. K  ~: a* o0 w, J                        }7 H  E4 k  n: V8 a, m) ~
                        m_pItemElem = pItemElem;
5 c1 O8 |9 d/ Q4 `                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );3 ]; N& O# f; k) f" I' V- A) i# u
                }else{6 h- k' _! V  ]7 V  ^# {
                        SetForbid( TRUE );: d, v  A5 f( I* P, d) F
                }
# q+ i4 j$ |! n& g% f! C        }else{
8 `# ?: ^& X; A/ b; F# U                SetForbid( TRUE );4 ^3 v+ `3 q3 b+ Q
        }
7 ?! N" n6 |6 `        return TRUE;" z4 S1 i( v5 k0 o8 B( f8 r+ S, P4 z
}
; ?3 i& x. L0 }, u6 B! T4 F9 T! d2 P! P, ?7 a6 P
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )6 H, h& c6 _5 c
{9 H, H# c5 m3 A- L6 a3 x8 a1 p
        switch( nID )
* h  ~, \( k; }: R        {
. t' D3 v: p/ C3 I& T( }# A        case WIDC_BUTTON3:+ |# D7 u6 h, Z; c5 g7 j$ T/ i  z' n
                {" d8 W2 }1 c# f! Y( U
                        bStart = TRUE;
2 M* s" E3 p1 j* X7 p) _                        break;
3 t! ^8 p/ t- r. a8 S% V. f& b                }: ^/ r; \% [1 J# O. [" P5 r2 r
        case WIDC_BUTTON4:& Q. R. [5 J* N& M! m5 R% B9 J5 n
                {3 ?& s. K  }6 g" B
                        bStart = FALSE;
7 Y# A& S3 b2 `( N  S# S3 e- t, t, ?7 J) P                        break;
- E; [  I2 D5 x- m+ b5 [: @                }
7 ~( [# r0 x6 c9 v. `( m3 _        }* q# r9 f% F1 J1 p% O3 F1 V* Y1 p
        return CWndNeuz::OnChildNotify( message, nID, pLResult );/ u& I" r$ d) x
}       
* S* _$ h! s/ M5 }9 fvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
! L4 ?% |0 t( u, O; z8 e* A{1 M4 P" ^8 h* b2 h8 w
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
/ s$ {$ r! f0 R2 ^( H% X4 K8 t2 Y3 w        if( bStart || !m_pItemElem )0 q( o3 F8 i  m7 _1 q( U0 a  e
        {
9 y# Y: y, c6 h0 L: w1 H& ~6 s                pBtn->EnableWindow( FALSE );/ j& r2 n. P+ F% b: g  y
        }else" R9 r0 o  |& p+ {9 O6 n% ?5 e; `
                pBtn->EnableWindow( TRUE );2 ?2 @+ z# j4 a$ d$ A' w
        if( m_pTexture )
2 C/ u  O- x+ y7 d; i4 J* H        {
! p5 f1 t& z/ L; I) a( h2 o                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 A* q2 V4 j2 k+ i- E                if( wndCtrl && wndCtrl->rect ); N* `4 m8 A# b' s: `1 ~
                {( ]' r2 \8 m. `" t! C& A) k
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
/ R& A, F# a1 S1 J6 ~6 M: l+ [                }
% x! \  _  F/ L# ~        }
; t- H8 K3 i( y& R7 R, W" S}2 _" u% s7 X3 l
$ Q# }1 W6 n1 `5 t9 ~8 L3 t/ W! w6 U
BOOL CWndAutoFood:rocess()' k3 Z! N2 t+ W0 e* |! y
{
, g3 y0 k- {) p& R        if( bStart )
% S5 C$ m; Z- U7 t2 J* m3 v        {
' g. r3 ]9 b, |) V9 @( w                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 ); w% i: c7 D5 k
                {- j% D; ?, M9 K6 H# e/ q+ q$ J
                        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 \4 j2 }+ ]7 Q- p( U* P! N! e
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
; R. \9 J! P+ Y' W$ S                }else{
$ l' ~) c8 P1 p; l4 {                        bStart = FALSE;1 d$ T8 Q* P5 m7 O5 _0 {$ J0 e
                        m_pItemElem = NULL;4 Q. j5 r8 |/ k) k5 z
                }
. W9 d- {8 m" Z' _9 m! M! i        }2 K0 [. L2 g" ]' L# O
        return TRUE;
8 i( F' [" n8 f  R- ~$ F6 U}
* h! p: g& p! o4 |6 p8 y$ n; `& x/ W
登录视频废话:4 q: T6 Q9 T2 u; f+ W8 q2 o  C
尾翼:
' g( W, y+ v0 m! V  U
6 q/ W) ^; d; G  K. U" o代码:
, }& W  e( ?" v: o: K0 q( X5 A* i7 |$ I5 H* \0 C3 U( o* D- R
void CWorld::SetLight( BOOL bLight )
/ ^% i! k5 v# |durch
; r( ~3 t. E/ B: F) x7 ^& wCode:
0 l% j# ~6 r6 A! z# V5 D, Y. Nvoid CWorld::SetLight( BOOL bLight )# S6 I5 M% A0 g# v0 h2 a4 j
{- D) @3 i  g; t4 s; X9 H: U
        //ACE("SetLight %d \n", bLight);, k) U9 J! W  ~& i
       
4 E6 m& g; j. t; b8 v#ifndef  __WORLDSERVER ; n2 P* m6 @% R) M7 s+ X. i
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);( u0 q- T& A% X- P# [
        CLight* pLight = NULL;! G. u$ f9 Q% R3 i; T( X5 N+ i
( E: N/ J. Q4 f. V
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );% {7 c& k( O$ H+ c
* p: @) \3 @. U
        pLight = GetLight( "direction" );
6 F$ m4 q! ?" W+ {, m
! S. z. j4 J6 E+ o5 K#if __VER >= 15 // __BS_CHANGING_ENVIR
- S" Y, S; q4 v, l( f        if( g_pPlayer ){
! A# }2 Q1 c3 o# A6 `$ _                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
  @) Q, r5 B# k" g" d                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!# b0 S. t$ X; s  F, K- [
                {$ c% `6 {- Q( f" K3 C, r
                        if( pLight )
8 Q) I' E5 F- [0 z" A( M9 g& O                        {
6 z; }$ q; D6 |9 k7 Z9 e                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
1 S2 B* i# p# [# g1 e0 ^                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];3 j7 c  C! C8 A& _1 `1 _
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];- @8 F, B) E" x8 J+ X* }& V. ^) r
( U6 o  M- U: \& D/ N9 ?
                                pLight->Specular.r = 2.0f;
2 P5 k0 O% C8 C" m% \+ i& p$ L                                pLight->Specular.g = 2.0f;
4 f6 I/ s7 k5 |1 R& O7 ]                                pLight->Specular.b = 2.0f;& n5 r, T" X/ P
       
+ ?" [9 E, _- A1 ]* T                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];; O4 Z. T, `4 N- B& `$ e
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
# p. u) s& s  q                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
5 L5 s9 s0 f/ X/ U/ B: o6 h8 g        7 H3 Q. @2 ?+ ?- A2 o$ t. h- V
                                HookUpdateLight( pLight );
  D: b7 b; X7 X) g9 E
9 H; J: V9 V* M" O1 O- d6 j8 q                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% f2 _9 P% g1 E               
& [/ J( |# L& j+ D' d8 A! o                                pLight->Diffuse.r *= 1.2f;. }, F( i' D9 |/ f
                                pLight->Diffuse.g *= 1.2f;
4 S+ G2 R3 G4 N) b                                pLight->Diffuse.b *= 1.2f;
4 X: z* |* c+ R; B; g) y
$ f- M4 u+ K9 m3 J                                pLight->Ambient.r *= 0.8f;/ q5 X( }$ {7 c: \) `! \
                                pLight->Ambient.g *= 0.8f;
4 q, S4 K6 I1 o/ w+ O3 e* X- X  R                                pLight->Ambient.b *= 0.8f;# _. m- a% b4 ^, \
       
5 \, ^- `) E# k, b  q3 D                                memcpy( &m_light, pLight, sizeof( m_light ) );4 a  z; o; c; J3 i) c

" X, W" \. [7 Q5 t9 r5 o                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);, U* T7 O+ K9 y- D; C
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
9 y  G' P! y1 k. B+ B                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); . x7 f8 Y( O* y* A
                                pLight->Appear( m_pd3dDevice, TRUE );
+ ?' N6 D. m8 F* c: Y                & ~' b. ^9 s) w, p" [$ @
                                DWORD dwR, dwG, dwB;8 O. l6 E5 U- ], V, ^
                                dwR = (DWORD)( pLight->Ambient.r * 255 );8 a; w! b$ I. l" o  Z
                                dwG = (DWORD)( pLight->Ambient.g * 255 );0 P7 K) v5 D5 [* \, [* f2 h
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
9 U( f" d1 f) w5 T                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );5 s# M# a; f* ?4 F4 [
                        }
' ]& r+ M6 Y% R                }
! `0 _+ V- H# C  d# h  ?. w$ T        }" K0 Q' r: q2 R1 e% \: h
        else
1 X% F) f$ H" L& c#endif
) z/ p) x' s& Z/ H. q% A7 a( X1 ^; o$ X0 i
        if( m_bIsIndoor ): l9 [+ t' b* J) b/ q) h8 `! S' s1 x
        {
* E* X) j8 g; U: Q" _                if( pLight )
6 m2 ?/ m8 C$ R; g                {                $ J1 d/ A* L7 d3 S0 Y0 W! m2 d+ F* x5 k
                        // à??μ oˉè*
) h- P7 Y* A* _. z( ]; B& i                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;6 P. m# ]8 m* ?1 g& e" ]: q
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
3 g. P/ |, Z( c7 {8 W; u1 Q9 B8 R                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
8 E8 ~5 C: j! n8 i+ M2 _
8 m9 t& `* a  e0 v4 K' W                        // oˉè* ??à? & V3 }% g. {' l1 |. e9 a, N8 {# m3 n
                        pLight->Specular.r = 1.0f;* z4 _) T7 D, f) [$ T  ?; p  \3 {
                        pLight->Specular.g = 1.0f;
5 f- p$ L' R& W8 o, V7 @4 ]4 N                        pLight->Specular.b = 1.0f;, l) l0 x8 s- L8 d6 _$ ^
                        // àü?? oˉè* - m' b, D$ ]& h7 W! c, G. u  ?4 c3 y
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;8 }7 w0 r5 n- U; u
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;+ c4 O' D. @1 n* S1 d) g) s" j
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
8 {$ l8 |/ G; f- E1 C; o& }& z
* M: _0 k6 w) B8 J                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.: ]  D9 x4 M7 b, d' w& q2 v! s
                        {; P& j: {8 z1 {- H: ~, i8 j
                                pLight->Diffuse.r *= 0.6f;
' Y' r/ c$ n/ a  r& s                                pLight->Diffuse.g *= 0.6f;. j+ R* G7 d' M
                                pLight->Diffuse.b *= 0.6f;
4 ^/ T6 a$ o! k; V                                pLight->Ambient.r *= 0.7f;+ ]! q: J, m1 h' N4 l; }
                                pLight->Ambient.g *= 0.7f;; R$ @! F* l. `1 n: C
                                pLight->Ambient.b *= 0.7f;- ]8 r, w  b# n
                        }
3 F! t; }8 J* h/ S! G5 v$ O9 o4 U
#if __VER >= 15 // __BS_CHANGING_ENVIR: l/ t# O  T& a
                        if( g_pPlayer )9 H% S# L) V: L' z9 y/ M, s# M
                                HookUpdateLight( pLight );
9 p* i$ e6 D- t9 Y! {  K" L#endif
" }; |1 P4 o" B, D                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );+ G( q, @" h3 {' u* `5 a7 A
" M2 }5 w( W; k% B
                        pLight->Diffuse.r  += 0.1f;0 o. R- _% O, c; n
                        pLight->Diffuse.g  += 0.1f;5 r) t0 F' ~# G/ ]1 ~' K5 c) K# ^
                        pLight->Diffuse.b  += 0.1f;
' s9 t, t8 p" E) v                        // oˉè* ??à? , r1 b' o3 Q3 D1 J  L, a
                        pLight->Specular.r = 2.0f;
0 [+ Y5 a) W  n                        pLight->Specular.g = 2.0f;/ ~/ u0 j* N3 C  ^% {8 ]
                        pLight->Specular.b = 2.0f;# }3 A9 {$ R7 _: f) I
                        // á?oˉ
, P) b& {  d" z                        pLight->Ambient.r  *= 0.9f;
$ B' E! m: r( c' H3 d; r7 n                        pLight->Ambient.g  *= 0.9f;/ Q3 s5 [( v7 c# q4 B
                        pLight->Ambient.b  *= 0.9f;
  g) S8 Z/ v  C4 @3 q( z& V5 I
/ h" u1 M3 @/ d. r" ]/ M1 z                        memcpy( &m_light, pLight, sizeof( m_light ) );3 d) h+ V" d) C* [/ ^5 [  v
                       
/ B/ Q& s, W& n' L0 k                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
: w# M. u1 T% U5 T                        pLight->Appear( m_pd3dDevice, TRUE );
: i5 ]' h3 Q6 u* V        8 B* }- H3 m. \/ A6 s0 }' n* `
                        DWORD dwR, dwG, dwB;
& z2 B! t1 g# k/ |, B                        dwR = (DWORD)( pLight->Ambient.r * 255 );2 W) V- r* n6 w% I  P
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
: w0 p1 Y: P! u; R- L1 v9 X7 h, m                        dwB = (DWORD)( pLight->Ambient.b * 255 );
, s; T; n/ }# ]+ [+ e* p0 ?0 B: x/ p, ?                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );: ~0 O3 ?4 N. o! V  z9 Y$ t
                }0 t# @( [6 \( t8 t2 y! ?
        }
. s' ^2 `; M: u        else
5 p3 [' |9 v- e        {
* f4 t& ]8 F/ F- a" ~# [/ G8 {                if( pLight )+ A6 @& C! r9 c$ I( C
                {
; O9 A6 }: S& {  F                5 a9 X$ R1 w3 s( F2 V* B$ V
                        int nHour = 8, nMin = 0;
' s6 {# L' M( ~8 z" O: U# m8 m        #ifdef __CLIENT
4 T! D0 N8 Z+ |8 T; b, m0 ~; j) N                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. . e: w& \: |9 e: \, J0 P
                        nHour = g_GameTimer.m_nHour;7 h- D% s" h2 j& z. c
                        nMin  = g_GameTimer.m_nMin ;
* `$ K" X3 u0 S6 X: ?        #else, h9 d4 ~+ }% A, M* t
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
- U& G- D, k1 A, v2 i! c. R                        if( m_nLightType == 1 )$ h8 w. l, s% _7 {# y% Q
                                nHour = m_nLightHour;
4 k+ p3 C. Z+ ]* K        #endif
( _, i* k% G' @                        nHour--;: }* C/ Y" i( ]$ m! x* L) n
                        if( nHour < 0 ) nHour = 0;  N- D7 q# I; w" L1 o5 z2 |0 M2 W1 t
                        if( nHour > 23 ) nHour = 23;, V  W5 T$ W) |* r$ y; [
' y: t) I4 C2 J2 J( t4 `  h, |  `
                        //if( m_bFixedHour )
& _7 m- R, B& F' ~4 V                        //        nHour = m_nFixedHour, nMin = 0;
4 @- \- m5 v9 n1 {' G( K! b                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
: J2 n, q+ n" L' n# u. b                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
9 P! w- o5 K: a8 ~8 P0 K) u$ g
% U* P: y5 e% T) P1 ~                        //m_lightColor = lightColorPrv;4 x; h' M3 B4 ?/ k- ~6 B
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
7 ~! i2 i7 Z5 p) t+ V7 A                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;. V9 J$ `  P! n
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
+ @. v8 a6 A$ Z$ h3 @2 O$ y                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
" V) S  Q/ ?7 G0 J) L7 @, N/ [2 _                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;( w( l# k# M: x6 a
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;  n, B3 N" |6 O3 h/ ]3 j
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
4 f3 u+ D9 z) t  [# O* A9 ]/ M. |: {- I: I6 ?
                        // à??μ oˉè* 8 h: r9 T; j. e8 P% ^
                        pLight->Diffuse.r  = lightColorPrv.r1;
- m. S+ p* c8 x. y3 z                        pLight->Diffuse.g  = lightColorPrv.g1;
- O/ Q; K$ f- y0 J4 k6 x                        pLight->Diffuse.b  = lightColorPrv.b1;
, z! T, l# F) Z/ S                        // oˉè* ??à?
. _/ c7 X$ C1 ]                        pLight->Specular.r = 1.0f;- Z5 R  G# h+ o( [6 ?
                        pLight->Specular.g = 1.0f;
3 m+ a$ y# N8 I- S: K& e0 v" d2 ?                        pLight->Specular.b = 1.0f;
3 y# Z0 ^/ c7 c' M  U/ Z3 B                        // àü?? oˉè* $ t$ s9 O! X) P8 F) Z
                        pLight->Ambient.r  = lightColorPrv.r2;( [5 b- O- k& z5 T& i
                        pLight->Ambient.g  = lightColorPrv.g2;
5 @! ^& Z& h# [3 _8 G: V# d2 |                        pLight->Ambient.b  = lightColorPrv.b2;
& ~) `  ]" N' V5 O1 E: o8 @% \9 h' u' @5 _' b0 g- Z+ H1 [9 ]
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.+ {- R/ ~4 `' n
                        {
; B4 Y+ y5 H" p5 D% n                                pLight->Diffuse.r *= 0.6f;
1 ~/ R8 b0 r4 F" u5 o                                pLight->Diffuse.g *= 0.6f;
+ b" w4 ], L5 q/ H4 G; i- U5 t  u6 Y                                pLight->Diffuse.b *= 0.6f;
: K; q1 z0 ]' E( R9 ]                                pLight->Ambient.r *= 0.7f;1 P; d: a- c0 |! ]
                                pLight->Ambient.g *= 0.7f;
% {' ?/ x5 z& R/ ?: j( u! b5 p                                pLight->Ambient.b *= 0.7f;+ ~5 P7 Q% j8 c) ?
                        }
$ X* T8 Q+ m& ^6 Z                        - N- E( \2 Q) h5 |8 b
#if __VER >= 15 // __BS_CHANGING_ENVIR5 q3 t, j) S8 l5 ]7 g4 j4 _5 V, C
                        if( g_pPlayer )
% ?; @- U: Q2 G% Z/ |5 e                                HookUpdateLight( pLight );
: Q0 ?# t: M7 }& l#endif0 F; ]  X( D8 T0 Z$ D4 r- ^! P, u& t$ H
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );" H1 r8 F1 |) T

& N1 e# h& h7 C& m8 Y#ifdef __YENV
* O  Y0 k1 m% r  B                        pLight->Diffuse.r  *= 1.1f;
+ \8 I% W. ]: ]& t' f                        pLight->Diffuse.g  *= 1.1f;
# z# q, I+ I" G* R+ \+ k                        pLight->Diffuse.b  *= 1.1f;4 G. v% B7 ~! t1 n% W& x5 n6 o" v
                        // oˉè* ??à?
- A; l) s# n, }, Y2 U                        pLight->Specular.r = 2.0f;
3 O& P8 r6 _8 C) E                        pLight->Specular.g = 2.0f;
5 Y6 b7 {  I  ], N" G  j5 F                        pLight->Specular.b = 2.0f;  F* \& g. O/ J/ r9 ~
                        // á?oˉ
2 H! w3 k2 _; f  b' C; V1 \! T# ?                        pLight->Ambient.r  *= 1.0f;6 D4 [& g  t. e0 H$ X" Q8 m2 n, Q" T
                        pLight->Ambient.g  *= 1.0f;3 N  v& n) y5 I/ z' r2 p' B6 \
                        pLight->Ambient.b  *= 1.0f;
6 K( T% @5 x2 `+ D4 R0 \# g. h+ m#else //__YENV
$ ~0 n* u7 h' i                        pLight->Diffuse.r  *= 1.1f;, L6 J( c- F7 H& J; Q! o
                        pLight->Diffuse.g  *= 1.1f;
; N% Y$ K; f; D7 c8 h. J1 V. k                        pLight->Diffuse.b  *= 1.1f;; P. O' W$ g1 W- p( ]% R$ |
                        // oˉè* ??à? * N+ j, Y! l+ u1 H+ [$ {$ p6 e  h
                        pLight->Specular.r = 2.0f;
/ v) S9 I  `2 H' G+ b* Z                        pLight->Specular.g = 2.0f;/ K/ k2 U  S# n6 S8 S
                        pLight->Specular.b = 2.0f;
4 s$ @7 ]8 h8 r. k2 ~                        // á?oˉ 3 [* j: l$ M% p* e
                        pLight->Ambient.r  *= 0.9f;  k9 b: ^  V) R1 h
                        pLight->Ambient.g  *= 0.9f;6 e. s4 C, n1 m4 w+ O
                        pLight->Ambient.b  *= 0.9f;
1 A$ X. J: \" l, A/ b/ i0 z#endif //__YENV
, \# g- L: X8 N) A                        ' A) \. j/ ?6 y. y2 N  u0 {
                        memcpy( &m_light, pLight, sizeof( m_light ) );
* H  J; n3 _, G) L- [5 B                       
7 W3 b& f7 r4 Z/ W                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);! N- h6 Z5 C- B4 j
                        D3DXMATRIX  matTemp;+ ]3 S+ Z8 R, r& ?$ c3 N, C
                        static const float CONS_VAL = 3.1415926f / 180.f;
2 Z. P" L: E7 m3 d; z3 U
" {' z) T0 e. u6 a0 Y- m                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# b) z! K. n0 g  j  `; u                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);0 c& H: W# T0 B
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); . ~+ p- v# e2 z# |" w5 J
                        pLight->Appear( m_pd3dDevice, TRUE );; ]" s$ Y! g, {* \8 M

& b: P& i9 a" X                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; ^6 a! [9 L' \                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
0 F( [$ _8 w+ |: p; d                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); + m$ K, Z- J' x8 H, g6 C# X% Y
) a( J$ o: T8 F; j
                        DWORD dwR, dwG, dwB;: |- n5 A1 l2 }$ F4 N) N; s  P! u+ P" |
                        dwR = (DWORD)( pLight->Ambient.r * 255 );& I7 ~1 D- l, c
                        dwG = (DWORD)( pLight->Ambient.g * 255 );' g2 c3 j! x' u/ G: [3 _: Y
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
* f! R& G8 f$ g. L0 D3 t7 C                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        * D0 [& V+ q2 z7 J( H
                }. h! o: e5 Y8 }
        }8 ]) b" _  r( j# ]+ b

5 t/ f9 m- g& x$ ~6 Z/ x- g        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );1 R2 A8 V# ^) o& E0 i9 \
        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) );
1 T7 R$ A8 ^+ g7 Q! H        ::SetLight( bLight );
! V) m. t5 M6 x9 E
9 R3 ]: D& r( C        // ±ao? ?D?í???ó á¤à?
. ]4 L: ]- C  k. \8 b        m_pd3dDevice->SetMaterial( &m_baseMaterial );7 r  k1 ~3 H4 d# t4 q7 p
        4 O) v" F0 L# r# b7 A/ S" h
#endif // not WORLDSERVER' t( u- U6 a! y
}
3 a* g3 x/ L  N' M8 i并更换6 G8 f. v1 N7 M- E6 I/ c7 P+ Q: l+ \2 L' R
Code:" _% ]) M9 V, \$ z% V; n5 l# R+ e7 K
__FLYFF_INITPAGE_EXT
3 F$ e; |9 O( @7 u+ `定义
# v1 a+ T. O& u; w, n' Y* H
. n9 w: M) M- U5 G2 f1 V! g* U9 a  T- f) \
3 j. A! R3 L. t6 v+ [% j- N% J

; R2 H- S+ N, ~7 i现在终于删除我的狗屁加速...& m5 H" @$ J0 `
+ J" Y3 A0 ]& R! w
* w9 ^0 m! D$ N& i

# P0 f. w3 }& }/ S; H: m




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