飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:4 \6 E9 r8 v% c% N; @* |
尾翼:7 Q$ n$ `& K) J5 f% X/ X

+ {, I& Z( v, C+ O! m8 i代码:
0 D" i1 q. N4 x4 Z% WCWndAutoFood::CWndAutoFood()2 R% T. f" t3 U* u( M& z1 n8 t
{* r8 I6 d6 g0 k: N
        m_pItemElem = NULL;) y! C7 I# [; n" c/ z, j- l: }
        m_pTexture = NULL;( Q. e* j+ j4 m) F
        bStart = FALSE;
1 G( J9 r9 N+ U% e( c. @}6 N6 v! x7 m. v# u% c. b, x- u, f

$ q3 K! [; s1 g. q/ g& dCWndAutoFood::~CWndAutoFood()# ^! C% G2 d* [$ i; f* @/ U
{0 V2 G! u6 d! G" T0 g$ \
        AfxMessageBox( "AutoFood ist gestorben " );
' x0 l/ v7 f0 o" h% T( ^- ]1 h}
6 [8 m3 j1 P. K9 |9 Q; ]BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
; `$ t' f- m, P+ Y; {. C  O5 K3 L{
3 `+ n3 r. c& _& ^5 k/ I" s) D        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );7 }& e0 _2 o9 H5 \3 P4 u2 l
}
1 [% |: A3 i. r. {) O4 T- A2 G3 y& @* Z% ]8 x/ o# B7 E4 c0 p$ g& M
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
' }6 u# |8 O3 O3 k{
: u4 S8 [0 {( `. j8 ^( {7 D" ]' }        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* Z* \$ ?5 s" i& p6 P& H! X        CRect rect = pWndCtrl->rect;! d8 R8 D% \+ h$ R
        if( rect && rect.PtInRect( point ) )
, ]& l1 |8 V- _& w1 I% H1 `        {
$ j' {4 b' v9 \0 ^; j  h( I2 e                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );$ x+ B! _& h  i3 E. _9 P: U7 t
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
9 d! {6 ~6 Q( g; Z! A9 M                {
- [+ u. A1 n1 [+ w! g% g1 {0 `                        if( m_pItemElem )" C: t3 ~3 ^0 Z
                        {' ^( a& B/ z8 z% a& Q, Q$ @- d
                                m_pItemElem = NULL;
' q& W4 Y: c, l' Q% D                        }  H& @- _- _: U
                        m_pItemElem = pItemElem;, d9 G5 k3 P9 g- r& v; R
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
, ?  L( H: I9 V6 e0 d                }else{
6 ]/ U6 a& ]* o, U' U                        SetForbid( TRUE );
5 {: }' j! m) Q! _                }/ ^# ]6 _' ~9 F3 n5 M4 x
        }else{, O* C; c( x, G3 ]( G, b/ M: y
                SetForbid( TRUE );
- n& M4 J4 P' q2 Q        }$ V) L$ K3 J. Z& c. i
        return TRUE;, z: j2 C' F& z. q9 J
}' z: D( m5 w# V/ i: Y* ]8 T% x' v

$ ~4 e1 }. c; G6 B8 WBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
& N. V' [" F3 H3 E{
9 ^# z3 R' ~, C% B        switch( nID )2 q2 u* N) l8 V& P
        {  `' _7 i  _, ~$ F
        case WIDC_BUTTON3:
# `$ O+ M# Q+ s# F0 G6 l( R                {) H5 ^' a' U. E/ Z0 P
                        bStart = TRUE;# `3 {& n9 n$ j" ^% o. J
                        break;+ ^* K. L/ N# V3 a9 c( L# O! `
                }
) J2 M& H# x' M, q& J        case WIDC_BUTTON4:! S+ U& v0 z$ t$ T
                {
  H) C0 f# E* L/ ?0 M; C( J# Q                        bStart = FALSE;& a6 [" v, j) m. n. n" @+ @9 j
                        break;
$ p' L  `& E- |% w                }2 p4 f6 t2 X' {, H9 |. Q, m7 Z, t' |
        }3 |  a  R  R/ s6 F6 Q* {
        return CWndNeuz::OnChildNotify( message, nID, pLResult );9 N% X1 n( p+ g; m* A: T
}       
7 e2 a& v% ]; |1 Z: B! j. hvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
4 e. }; M. D  q, p{: Q3 y9 r& v4 T- C/ Q
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
5 Q$ v: N4 j& {5 ?0 E        if( bStart || !m_pItemElem )
8 ]- h- M/ [6 `5 ]' u! U        {" e" I, R2 I+ x
                pBtn->EnableWindow( FALSE );
" G* M  R( X/ |  Z* S0 J* F        }else
# v: ]+ A4 y) Z3 e1 |# k                pBtn->EnableWindow( TRUE );% @4 e+ u5 D6 \7 c9 x
        if( m_pTexture )
9 ~* [1 _+ A& a7 k: I$ W. s6 L        {( X! M9 s# y5 }* K
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );# o: @# i3 c; d  y8 G' r* N3 f: S
                if( wndCtrl && wndCtrl->rect )
# ]8 T9 L% t$ ]2 @; ?& S! l$ |                {+ o; o* J% }5 A' ~1 R
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
' i. z$ w; S7 p9 e* Y$ e$ [9 j                }  B5 K* B- u6 N! u' g
        }
+ |. d! p- G, j" W7 R5 M}8 |4 w- [6 Z. K, D+ p3 e

' f8 Y9 e5 i; G- G% LBOOL CWndAutoFood:rocess()- |; K% z# d/ x9 C% }% o. o
{
4 Q2 B8 ?8 O& e' z; T        if( bStart )
6 b, h- f  F2 A& ]% C' o        {
: L2 h# c& L  s* F& H                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )9 j% b. z4 ^3 m+ C, I& q
                {
* \  l5 q" f; `: L                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )( d. X+ s4 p& j0 H( ~# \' l
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );) d8 Q8 Q' u% x& v
                }else{5 v6 h4 ]& T5 k# C5 F$ ~  `
                        bStart = FALSE;
% R$ R" S. S( H# q+ E; ^                        m_pItemElem = NULL;0 P3 X' u9 k- _6 A5 Y# J  W
                }
+ X. S5 {+ B3 I1 A4 ~        }
3 Q' l& E: t: j) f. r        return TRUE;
% R, ]& |  z! G( \4 T- B  K}
4 L9 Z6 V2 N9 r5 j- Q+ X8 w% C/ I$ D" W% I! m4 z
登录视频废话:
* x1 y8 {6 f2 I& O- ?尾翼:4 ]% s+ G% c+ @4 }8 m6 H

+ {* w1 g0 X9 y代码:
6 _$ s$ K) e  {
/ L; d9 M# e" V5 }8 zvoid CWorld::SetLight( BOOL bLight )
" y8 O; k0 y$ q; V6 m& L4 Z& a( Gdurch
) @  }5 c: W+ ?* G# mCode:! w+ P+ B# s; I6 z" f- B& z
void CWorld::SetLight( BOOL bLight )% T# w8 }! F0 D' j
{
4 G; J0 f6 k! w        //ACE("SetLight %d \n", bLight);
8 a8 e- H, I, r7 w       
: A7 l- `& _! w+ \#ifndef  __WORLDSERVER
, w8 x+ F: {! k/ O+ ]1 r( n7 V. L        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
) S) s5 {6 z" E7 l3 G        CLight* pLight = NULL;5 W0 z& s: h( C8 ^, O1 R

1 X) Q1 |* J* p) Y1 Q1 s  _2 C! R        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
  R$ L+ @& Q5 V$ \, o" Z1 T9 E# [( e0 p2 b* \6 x
        pLight = GetLight( "direction" );
6 B6 o" Z) @6 o3 M* I. ]6 m8 u2 o- N& S9 N; _* i1 s* q
#if __VER >= 15 // __BS_CHANGING_ENVIR
- s  M; a" J9 e  {        if( g_pPlayer ){
- b  U5 P, Q% B2 u6 L1 \* }3 Q                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
3 B; d0 t# G, o, B# k                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
  z, y, ?- Q6 [; u                {* N9 F& B9 U( M- G! R
                        if( pLight )
9 {1 H0 I8 Q# f! Z* e( |0 F; X                        {! G9 ~5 G# ^5 `- w
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];9 [* m, Y3 ]! P5 X7 ?2 v& c; v2 D
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];) u  {& E) F7 Q
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
; O! n+ H/ E, Y" f8 H& O. a4 R% O6 x0 h0 O
                                pLight->Specular.r = 2.0f;
* s1 k# Z. u$ S0 f% {# {' p  \                                pLight->Specular.g = 2.0f;
; D. F) p8 {- e% }                                pLight->Specular.b = 2.0f;7 [2 F4 u0 ^) j2 N7 \2 |7 ~" w
        - d# X( ~4 U( q  W- p0 K; b
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];2 l* t- i/ i9 V3 S! A
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
2 u4 b  Q4 _! s. q4 a, i2 z0 O1 o: T                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];: B8 \, W" N$ H- ~
        & L; G+ ~3 S$ x0 H
                                HookUpdateLight( pLight );
" n/ u4 j  A1 L. J% w
4 W' J' a) `; F                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& \2 @0 T4 z0 m  g+ E: D# C' l: ^               
+ v9 l8 m& B2 h$ x& |                                pLight->Diffuse.r *= 1.2f;
+ ^, f7 _  n6 f& n, Q. a3 g8 k                                pLight->Diffuse.g *= 1.2f;' e: Y3 r" k& H4 L. ]& j
                                pLight->Diffuse.b *= 1.2f;
" l4 t' K: v8 C. `, ]" Z0 W, U7 q% v- `7 g
                                pLight->Ambient.r *= 0.8f;
- r& q2 g' t# o$ g' R+ W                                pLight->Ambient.g *= 0.8f;" l5 Y, m$ [6 m8 ~2 ]
                                pLight->Ambient.b *= 0.8f;0 A2 w9 u: v1 A6 f
       
5 B% ^  g# A2 R5 }9 `- v1 M" w                                memcpy( &m_light, pLight, sizeof( m_light ) );
3 r5 P* s8 S0 M1 o
% P- R) |# G  @* @  b                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
+ g3 k9 N  Y8 c. T0 m  }% ^$ L$ W                                 D3DXVec3Normalize(&(vecSun),&(vecSun));' {8 O& d8 l( ^+ x* W! l
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. a: m; s' {$ e8 m: u                                 pLight->Appear( m_pd3dDevice, TRUE );
0 _+ ^/ \" y! R& u( z. k                3 V* v* ?$ }# V+ p  T0 \2 |8 f
                                DWORD dwR, dwG, dwB;
% V7 ?8 O3 L, k" i                                dwR = (DWORD)( pLight->Ambient.r * 255 );3 t) A* j) B* w( z
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
- R% m4 W) t$ t) N3 x" A% X! D                                dwB = (DWORD)( pLight->Ambient.b * 255 );
7 f0 J$ b! z5 ^$ D                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );+ ~% D% c# W: ~1 M' {: S4 x
                        }
) m, k- o$ c1 k) Z7 E                }" U$ m- \0 m: A  H6 O- M; w2 A
        }
9 L7 I( D. t. T. P6 B* H        else
; B. q  e8 C( r/ H' }#endif 0 J+ Z$ p: |$ j+ G/ `* r- a& n

! }  _) Y2 I7 L% H9 l        if( m_bIsIndoor )
) t% |/ M0 X4 e4 \        {
+ N- D% T) N) y: h: |3 u1 V! [3 P                if( pLight )4 y* U8 A: n" @% Y4 L
                {                  U# J$ x9 l5 H: ~4 k3 [/ g$ u
                        // à??μ oˉè* ) v# G& [/ n5 w& x6 M. s, z- u( s
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
2 @- ^+ F! A$ N                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;: H2 B( T8 a" E, a/ A& Q- _' B
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
5 K- i. B+ M, p, m6 b/ ~% @' ]; `/ d% w; E6 R
                        // oˉè* ??à? & L+ r+ W" U: a0 [
                        pLight->Specular.r = 1.0f;8 G* ]6 M; v, _& ~# ]
                        pLight->Specular.g = 1.0f;; @( D7 W0 P; T# H# H
                        pLight->Specular.b = 1.0f;
$ Y/ Y6 V& b" [% B& i                        // àü?? oˉè*
( L% m) K( d  B1 O8 K' _$ c3 T. G5 x                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
) F" K( P$ L8 u                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
+ W' N, P+ T1 R0 h0 c/ _                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;& ^' c$ U% }! @$ c, C5 D: s
, g. @: G6 q3 \/ k  j5 ?" T* [9 T
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! T6 m! D9 Z- ?6 J                        {
, p$ Q" C# P1 D                                pLight->Diffuse.r *= 0.6f;
7 o; x) A0 G" j                                pLight->Diffuse.g *= 0.6f;0 o" G- x  n6 B
                                pLight->Diffuse.b *= 0.6f;+ k1 [. k  H! O2 }5 ~
                                pLight->Ambient.r *= 0.7f;
  c2 ~9 `: O0 p2 m/ t/ X                                pLight->Ambient.g *= 0.7f;, v. Z  d) q4 }% o0 X
                                pLight->Ambient.b *= 0.7f;
/ t0 r1 l4 z) R' l! u; W) t4 n. }                        }, B. T% v6 @7 R# t4 [

4 _8 p8 _( k* Z2 D0 B% m3 ^; e#if __VER >= 15 // __BS_CHANGING_ENVIR. c2 g3 E# w( @+ v# x
                        if( g_pPlayer )
$ v( S0 u8 A# ?! m; H$ w                                HookUpdateLight( pLight );
. f; l* N' Y: c3 Z9 x1 ^% T#endif
+ u/ J8 x3 y) E" z: o                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );0 n" x& \; t1 s# e

1 V' Q8 _( b7 m                        pLight->Diffuse.r  += 0.1f;
% F- |0 G# |8 F$ q4 V7 _) d                        pLight->Diffuse.g  += 0.1f;$ K' o( S; h+ Y: |
                        pLight->Diffuse.b  += 0.1f;
1 E; Q9 O: y1 T1 P& D4 Y) D: r                        // oˉè* ??à?
5 o  ?3 N1 [& y8 W/ @& O4 K                        pLight->Specular.r = 2.0f;, l+ ?: r% l( K: n2 P) u& v
                        pLight->Specular.g = 2.0f;. g5 u/ V% n& L1 R; h
                        pLight->Specular.b = 2.0f;
( o) W' K4 P% f# {% v) [+ T6 {: c                        // á?oˉ + v- G# i; ?5 u7 M9 k  z
                        pLight->Ambient.r  *= 0.9f;" H5 Y8 T. ]9 S8 u
                        pLight->Ambient.g  *= 0.9f;
/ I1 I3 w' [4 ~! A6 ?                        pLight->Ambient.b  *= 0.9f;
+ c; k1 k0 f2 \! u3 ^, E3 @! A0 k8 I7 c
                        memcpy( &m_light, pLight, sizeof( m_light ) );, @5 U3 ?* ]2 q
                        / q; z* ]& o3 H+ Y# D' N7 R
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
! {8 L' f7 F9 ^9 P$ o; ]1 C                        pLight->Appear( m_pd3dDevice, TRUE );
! q0 J* g7 P# [$ E4 D; @        0 z3 j, I$ H5 x1 E9 Q% L: G8 o6 y3 s, W
                        DWORD dwR, dwG, dwB;. @6 U! U) ]3 _/ k5 h$ n
                        dwR = (DWORD)( pLight->Ambient.r * 255 );6 z* u. [0 @' @& K1 ]
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
: ?3 h* C: t8 |) ^) s                        dwB = (DWORD)( pLight->Ambient.b * 255 );* h; `6 f/ d8 z3 m. R7 D3 g
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% V7 k( q: i8 ~6 }" T* ~% [                }; O+ d/ @; F1 s6 h# q! t/ O, Q
        }, y; \8 M) K  m$ ]. g# Q( Y
        else
5 ]# \$ _3 e  D) r  s, ~        {
) K9 y/ K; m3 l. r. ~                if( pLight )
; v3 w+ {) l2 W) Z                {
  ~/ u* r4 H0 G# g* |) i                : |( m/ w. R; P" l% t6 W; o- N
                        int nHour = 8, nMin = 0;
" t9 }! Z) Y: o6 ]( J        #ifdef __CLIENT
$ u1 X" g4 W  W6 d/ }4 ^                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
8 d# C4 b8 D, `+ S- \. q                        nHour = g_GameTimer.m_nHour;
- d. f7 S2 ~% ^                        nMin  = g_GameTimer.m_nMin ;6 i0 g* E; W9 i6 s/ L( |
        #else+ v7 }- h" w: R. P7 T5 o- J+ r: ^1 y
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.: \( ]+ B; K# m' i; y
                        if( m_nLightType == 1 )
8 Z4 V4 D+ E3 x  F0 z                                nHour = m_nLightHour;
' g) i; j* ]9 q# _$ K; v        #endif
! W9 a5 `' n% t+ J0 W                        nHour--;
2 j$ z8 T9 k( Q, p* H( C                        if( nHour < 0 ) nHour = 0;
8 v! N. U" F% A$ k9 w1 @                        if( nHour > 23 ) nHour = 23;3 W& O. C3 g( y, I

5 c" R2 o. j7 m4 W" a# U; d                        //if( m_bFixedHour )
' Y- V( A- P% {% E" p                        //        nHour = m_nFixedHour, nMin = 0;
4 S3 u# l7 }2 p8 [9 i, J* _                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
" y, ~$ f) `; k& @7 h& m: m                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];9 a* c! \- w, Z+ v$ w
! |4 i2 s/ g2 @( v
                        //m_lightColor = lightColorPrv;3 _* ?$ k; g$ ~% l% i! p
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
  Y; b- m, x0 q                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;. e4 x/ h; k5 ~) L9 U
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;% v2 q( p5 E" m- m; f
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;; t4 c& }9 |8 }1 A3 R: V& ^
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
/ x5 Z  U9 g- c0 F6 f" c  P                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;/ F0 C" C$ I. x1 H
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
- j* {* ]! I8 y" @/ ?/ N+ L, b4 R
# a' A; _2 H9 A9 j                        // à??μ oˉè* 5 F  T, }" X& W: u* x" G
                        pLight->Diffuse.r  = lightColorPrv.r1;5 N- A1 r. O( e8 O) Q+ i
                        pLight->Diffuse.g  = lightColorPrv.g1;- i4 D0 T9 L9 M7 h6 P  L
                        pLight->Diffuse.b  = lightColorPrv.b1;
- j: B; S0 r2 E; ^6 z; t% o                        // oˉè* ??à? : V/ V) }$ h1 x' ^" Y, g2 D6 i
                        pLight->Specular.r = 1.0f;7 y3 y4 L$ J9 u! F+ y! t* v
                        pLight->Specular.g = 1.0f;/ E$ p- U2 A4 F! r1 z# _
                        pLight->Specular.b = 1.0f;! F6 I  Z( d1 n% Y4 m) R6 ~
                        // àü?? oˉè* & A& ]% n8 Q& ]  R4 t
                        pLight->Ambient.r  = lightColorPrv.r2;' W0 e  q) |$ _. q0 R; X
                        pLight->Ambient.g  = lightColorPrv.g2;8 H9 p/ N) W! Q' J! R8 r3 ]
                        pLight->Ambient.b  = lightColorPrv.b2;* q5 |5 U9 M& w7 e. P$ n: i
# v7 r- `3 G8 U! h0 G
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.5 @# {9 H, h- a) b/ ]" I2 d7 N
                        {
  y2 c- R* Y0 W5 H2 H% {0 K                                pLight->Diffuse.r *= 0.6f;7 G' P% ~9 {' L+ a% e0 i4 R% V
                                pLight->Diffuse.g *= 0.6f;/ E' @* x' j/ i; o  a$ r" S- A
                                pLight->Diffuse.b *= 0.6f;' @7 B6 T& L9 L: g' P, V# ^
                                pLight->Ambient.r *= 0.7f;0 R- Q9 ?7 B' f+ x# h  O5 B5 t; i
                                pLight->Ambient.g *= 0.7f;
- o' |- T8 M( K) }                                pLight->Ambient.b *= 0.7f;1 k  @) B8 Y# K: ^) O# S0 v
                        }
3 Y! S: u3 V4 E- _+ V4 P                       
- h- v; M8 F  m! i: o# S#if __VER >= 15 // __BS_CHANGING_ENVIR" |6 \0 h0 C( b- u+ O; j; ]
                        if( g_pPlayer )
. E+ f2 h! Z& w7 V6 r+ F0 e                                HookUpdateLight( pLight ); / x% y! V. ?; J& n
#endif" ^" s/ m* [, A' ?% [) U# |
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );0 b+ Q- ?; U7 i/ O, W

1 K$ R' d  D$ L6 u#ifdef __YENV
; }* n: y, B: a2 L                        pLight->Diffuse.r  *= 1.1f;
3 M5 Y4 {/ U9 }" j8 B2 A+ S0 ~                        pLight->Diffuse.g  *= 1.1f;
* E8 ^4 b: R, f                        pLight->Diffuse.b  *= 1.1f;* m, t2 L0 E$ w. l7 @1 }, D) {& E
                        // oˉè* ??à?
* A7 s* p1 p4 f                        pLight->Specular.r = 2.0f;5 p0 B5 L  \5 W; b( v7 w' L, [
                        pLight->Specular.g = 2.0f;. o( `: M7 i5 A: T
                        pLight->Specular.b = 2.0f;- @# O! {+ g. k) j
                        // á?oˉ
1 n$ z8 {$ E( v  C                        pLight->Ambient.r  *= 1.0f;! m/ e' e( ]% Y3 F7 |7 w
                        pLight->Ambient.g  *= 1.0f;
1 V7 `# B. }/ M/ u- z                        pLight->Ambient.b  *= 1.0f;5 m" d+ P+ _/ s7 S9 R# }9 _
#else //__YENV, m* Y* \) G/ G! P& Q
                        pLight->Diffuse.r  *= 1.1f;
. S8 X& u7 M* c$ X3 L; H/ D6 ?                        pLight->Diffuse.g  *= 1.1f;
$ @% W5 l: Z4 C. l                        pLight->Diffuse.b  *= 1.1f;7 M7 R/ t+ D0 a6 {, ~
                        // oˉè* ??à? : f& A1 z+ Q0 |1 O2 _6 }
                        pLight->Specular.r = 2.0f;8 {/ Y7 v7 p7 U7 z9 K
                        pLight->Specular.g = 2.0f;
& y# k( j0 C4 X& t                        pLight->Specular.b = 2.0f;
: m7 |- C( j' k+ y                        // á?oˉ : M7 [& Y' e/ M) w
                        pLight->Ambient.r  *= 0.9f;; z. G! u4 p) @
                        pLight->Ambient.g  *= 0.9f;4 L! d9 ^! {; V" J
                        pLight->Ambient.b  *= 0.9f;
4 }' A4 h% I# Y1 n, Z8 O( f#endif //__YENV 6 O* S. f0 e, I
                        6 g) e6 r: i7 d! N
                        memcpy( &m_light, pLight, sizeof( m_light ) );- b, F# N) T# n( b6 A0 s
                       
4 v3 M' k8 g1 I7 n% [9 n; Y                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
4 @: ?  ]/ b& S' \8 T! \                        D3DXMATRIX  matTemp;# b4 l; t: o% @$ k9 n/ v
                        static const float CONS_VAL = 3.1415926f / 180.f;$ u; i! G9 S  s8 |8 N7 h: o

/ Z9 A8 |* i2 x' i# y. _9 L                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
4 q3 b. j8 [$ H4 L  |2 Q7 C4 H- q5 r                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
1 {; K3 h/ h5 k) t! [$ f+ g/ j4 @) v                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 7 c  i: P1 E) ^
                        pLight->Appear( m_pd3dDevice, TRUE );
2 N! l  u: ~5 r& U
8 t8 a- M& k- y                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
  J) n. T% Y, A" W                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));  d/ `! g4 N% u
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); $ O& L( n3 [; Y
  w% ~+ c' I/ E; {4 K5 }. b. x$ r
                        DWORD dwR, dwG, dwB;- J; |9 P2 N2 W7 R6 p  d. Z+ Q
                        dwR = (DWORD)( pLight->Ambient.r * 255 );8 P' F0 ?  i  k* }3 k4 m
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
8 P3 _2 p! r" z                        dwB = (DWORD)( pLight->Ambient.b * 255 );! J0 u" Z7 z; P  [' A1 V7 I
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
. n& E6 ~" S( J8 p# _! g" K- u3 _& h                }3 D0 d- {9 m9 c
        }6 m! o) i$ ~& p' J

( j. b) ^( k! z/ V        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );$ W0 O2 k1 w& Z1 c: `4 ~: R4 G
        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) );
5 {; v% S6 F5 i6 ?        ::SetLight( bLight );
1 n/ }! `, J! b+ l3 i" L3 w. D% l8 t- T2 X
        // ±ao? ?D?í???ó á¤à?
6 W% r: u* A: S/ {0 z3 k% U8 f        m_pd3dDevice->SetMaterial( &m_baseMaterial );
; p% S- Y; z* W9 X       
. y; S" A4 ~. }% R#endif // not WORLDSERVER1 p3 j) b& O8 [8 i5 O
}
5 ]+ I* v& u+ S并更换3 ~8 d* P% l) A$ V6 U# F
Code:
0 J: S# t4 T  `$ I8 Z. \7 L6 Z7 Z7 T__FLYFF_INITPAGE_EXT2 c* [) I- t8 L. s* v' ~) [
定义6 [+ g. d- }- E3 L9 f$ r  B) K
$ S$ t' e, [5 p1 c/ G6 g; V
( E) `+ L' Z& P* M

8 v; v' D+ F+ n( p0 l2 y1 e. ?9 c6 i3 c9 B/ |' n4 j0 E( P) c: l
现在终于删除我的狗屁加速...% L2 I5 ]- I/ r0 v0 d+ Z* ~

& K( O$ Q) R/ ^# G
8 M8 g6 J2 f" D0 z+ A: m+ n: \) g; q9 w+ L, M- q6 Q





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