飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:7 B' W. c: c  D3 Q
尾翼:
. G9 @3 s; h+ a
) A9 B- d1 E2 p! m9 ~& j+ U1 C代码:3 n! Y) b2 r& l& M; i+ E
CWndAutoFood::CWndAutoFood()9 t( ]7 I8 Q7 Q! Y8 x! e8 l
{0 H. f+ t) o! f) Y' B
        m_pItemElem = NULL;5 y; u1 D# H4 K) F- Q! j
        m_pTexture = NULL;
- C' w5 _0 m8 r# Q  i0 R0 C! s! k        bStart = FALSE;6 m, E# H1 W# [  y/ W; T/ d
}# c5 b" D8 ?- {' k/ X

! M% C$ n9 {# U1 S; j+ f* GCWndAutoFood::~CWndAutoFood()' j4 ]; @& L9 K% h" P  n" b
{
  r; H. l7 V7 F- X$ q; ^4 e        AfxMessageBox( "AutoFood ist gestorben " );& {; v' v8 k; e4 P6 E  I* E( p" g
}
$ G) b0 \$ p, }$ ?& W; P. Z0 M' cBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
  ^' S6 n4 m7 A, v2 v) t6 r% C{' I/ I  O  e$ B; `1 _$ c
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
* A, `  N  n: V2 E4 e! A}! ~, E! d* t2 M

* b* W& k( r7 |BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
1 i. d8 M+ {. z4 R/ U{
' Q3 W8 a9 D& P& }        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );7 w, f1 K; {$ w  `
        CRect rect = pWndCtrl->rect;+ s# \% N  f0 l( ^6 t
        if( rect && rect.PtInRect( point ) )
+ g: Q4 T4 e- V0 E* H. l; T        {, z3 Z8 V/ p3 t2 b5 ?% n, F+ L
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
' X1 e* A! J& M! t                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
0 v% u4 x8 o6 h" Q0 G; _                {
  {) q  i6 q& U; t* G& e2 P                        if( m_pItemElem )* [- w/ G$ [# ^
                        {/ S# _$ `! T! L( L$ j6 ^1 s
                                m_pItemElem = NULL;$ r# {1 F9 w+ ~* d: M
                        }4 L7 |+ K& F. j. \: ?$ x, H
                        m_pItemElem = pItemElem;0 ^) v: C; q: r+ G
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
% ~8 t& ]- e0 ?" @+ s, H% U8 H& L                }else{9 M2 I; ^' J; N2 B5 N
                        SetForbid( TRUE );: u8 d0 }# s; S
                }
) d: y& ~4 h& A/ O        }else{& u( _( Y+ t5 p, E& H, B
                SetForbid( TRUE );  Y2 C0 {) E/ A' M% x
        }
0 [  M' Q0 Z. Z: e) O+ y0 G+ o  C        return TRUE;
3 }+ t- a6 o* g- X0 c}* H& A6 {$ Y8 c6 S+ k4 I
5 r3 ?0 F& \! \& e$ @2 q
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )' \; }8 b& o& R& {: m% N
{
+ V0 F5 O9 P, n9 O- \8 \) G& e7 K        switch( nID )' _5 G$ b- M. W1 n" b/ m
        {
# g8 I' d% O  c) I  M- y- N        case WIDC_BUTTON3:
3 `+ l+ w& W7 g9 L/ y' O- B8 J                {) J' M& f8 A! R8 \
                        bStart = TRUE;# j" y( E; l+ n
                        break;" t! [; `: y) T7 `' V' C8 M
                }
4 ^3 E2 @8 a$ \4 o% [        case WIDC_BUTTON4:
+ D% [: k3 S1 n" ~0 z                {
. M. ]5 F4 u; R( T  x6 Z( s                        bStart = FALSE;
- X9 Y& U8 u: O4 x% o% ?6 V+ r: P                        break;
6 U" m9 G9 t8 W8 N9 Y4 a: K                }
3 B' |  @) J9 @        }7 m: b8 a- S# D9 g. X: N) l
        return CWndNeuz::OnChildNotify( message, nID, pLResult );; M7 k4 I  d/ S- ]% {, }  t, F9 H
}        5 E# \8 m! W0 _$ O4 l
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
1 \9 s# ^4 b- s) p5 E6 `{
5 x" P. C$ W: s' x- @4 _* e4 `7 g" j        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
0 n* c; Q% t& j0 m! t. N/ C* M        if( bStart || !m_pItemElem )% \9 F: u* Y+ I
        {  R* T- L' b' \4 t- W  {
                pBtn->EnableWindow( FALSE );: }5 T+ U( @( G" Q5 Q
        }else" n& X" e, I* E4 d& l6 u3 {
                pBtn->EnableWindow( TRUE );
8 B6 S4 k# U: p- a! I9 \" b        if( m_pTexture )% g" z; d+ T6 ~! I4 e( E& b
        {* b8 ?$ q7 g1 V  @
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );2 B# j# }  Q" u% K6 g* ~9 Z
                if( wndCtrl && wndCtrl->rect )
9 I) Z) M. J6 J' h+ s                {
$ _$ I8 e8 H3 V6 e: U                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );$ ~1 J8 s; l% @8 ~- ~+ y+ g
                }& w% `5 K4 l8 [: W) X; i
        }% k& U' ~6 E7 ]5 X' Z5 A
}  q5 u7 a6 Y/ a: I
6 D2 B5 t2 [: g, U! e. m8 E1 V
BOOL CWndAutoFood:rocess()
! I3 c. X& k* z: H{% T$ @0 ~: y# O+ K9 z5 W
        if( bStart )
( |: ]- O5 K! ?8 I        {5 l; o# N$ @9 M: B5 b7 b( \  r
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
7 K$ g. {" b" ^- L                {' s* Y0 T) O# h6 }
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() ), a. P! C, k/ y3 a, S* H: H- p2 A
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );! V" }0 G; L- t2 a( o) \  @( Y4 k$ t
                }else{: d# w4 t9 A* z* f+ i# p0 i
                        bStart = FALSE;1 ]0 @' N5 `( X6 z* Q0 ~. C
                        m_pItemElem = NULL;1 x! f* L+ ^" m" e3 ^8 I
                }
( @1 |% X/ ^$ m/ ~% Q  O/ {        }
# B: R) E) G6 R" Q/ H! ^        return TRUE;* u; Y# Y9 F$ W& i1 a3 J2 _, D
}
; x( ]0 h0 |) Y3 |) q  P0 A; G( V- l. \) F# f& N
登录视频废话:% P! A. Z8 a# O- A+ F
尾翼:
$ }, Z7 M2 n- C6 m& y
, ~9 \- K) S6 p* M$ \) c代码:
  |* X; s! j: h; P- _1 J/ U
  e! K/ E# A! p" h. Dvoid CWorld::SetLight( BOOL bLight )) l8 N4 t/ G, |/ A
durch5 {2 K; S$ x" _; w. w' c
Code:$ ~, I7 ~7 a) D$ X1 a! B% M2 @
void CWorld::SetLight( BOOL bLight )
+ I1 i1 d/ l; T, }" u+ @  J, S{
  t! J) k- z) T. ]        //ACE("SetLight %d \n", bLight);
5 R3 {  ^0 B5 H; x! z       
3 O. a6 r; ]1 v#ifndef  __WORLDSERVER
- T0 j+ h. k' t) [/ y        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
& d2 U. d) o6 n1 c9 }        CLight* pLight = NULL;$ F- e- e6 j6 B3 F9 s

. \- [* r* J" A" A1 D5 T: y        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );0 }+ m/ M2 Q* F! A

) f: R* c: m' Q8 W/ {        pLight = GetLight( "direction" );
. H! ^$ }; Z" [, v' F5 }# B/ T
1 y, L: ^1 m2 [' \#if __VER >= 15 // __BS_CHANGING_ENVIR* S& W+ r, d4 d3 o- ^, z6 U1 u; t
        if( g_pPlayer ){- _/ \6 Y& e% a% p. _
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );, Y) n( M: @  U0 O5 a$ z
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
8 y* |1 m1 I# c4 C* T5 K/ k1 m                {
1 s/ S- {" F2 ]2 e% f                        if( pLight )
# P& R, q  r1 D0 g% Y                        {- S: Z& W7 A( z1 U4 x7 k, b
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];( P2 ?& u: \; o4 w0 _9 ^
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];9 N- u! T- z. J+ I) ^3 F0 ~  P
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];4 u, Q4 ?! D* s1 f

8 }8 x! h5 M& `2 m                                pLight->Specular.r = 2.0f;
8 l8 J9 l2 K3 j) [2 W3 a$ j                                pLight->Specular.g = 2.0f;
1 B, W9 D8 O9 I) o                                pLight->Specular.b = 2.0f;/ ]- X3 q+ i' r; W
        1 [" b% v7 ^5 u2 ^
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];# q1 {1 h' k; }% N% |
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];$ ^; m7 x6 w1 M
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];$ W. S7 q5 v  j* t$ U* E1 s
       
& j6 W' X9 |' F6 i2 C                                HookUpdateLight( pLight );
" p* a1 I2 |0 r! h
# W7 K9 A0 I& `' R9 w                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" M2 _: ]$ l; Y/ @$ f  G5 \' N* {- h               
2 @5 s5 _8 ]! @: E                                pLight->Diffuse.r *= 1.2f;
, t' N* x3 J& \* G0 \2 o7 X                                pLight->Diffuse.g *= 1.2f;( a; r) ?& j) Z2 T( t
                                pLight->Diffuse.b *= 1.2f;
* j$ ~3 N* o  {5 y: I$ M1 L0 A
1 n- D7 ]  H7 v% e6 l' |' ^# \                                pLight->Ambient.r *= 0.8f;
; k. A# q# [' H) R! S                                pLight->Ambient.g *= 0.8f;
% g* U- w7 i  {1 l/ b                                pLight->Ambient.b *= 0.8f;* m2 k) W# B8 H
        : p1 I1 r6 d5 ^' W! {  }! c
                                memcpy( &m_light, pLight, sizeof( m_light ) );0 S" D: [5 O+ x) m# \8 R* [
$ Y& E  ^$ Y: |" U& r/ Y9 |' k
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
6 K2 |4 [* w. \& G3 E1 e                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
! {; @& `  q# v4 r) K- ~                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); , o/ P4 u4 }" q  b# T0 i5 ^' O! z
                                pLight->Appear( m_pd3dDevice, TRUE );+ K' o4 H7 H: t
               
3 y7 G. F6 `- |7 T0 d' n" H                                DWORD dwR, dwG, dwB;
' M" e) o. {( D0 v6 W$ ?7 K7 t( m$ I  l                                dwR = (DWORD)( pLight->Ambient.r * 255 );
6 a9 F8 @# l5 o8 ~/ T! R6 j* i  t                                dwG = (DWORD)( pLight->Ambient.g * 255 );1 C6 x  \$ v2 Q9 x; e: A$ p
                                dwB = (DWORD)( pLight->Ambient.b * 255 );8 T: X, z! @0 }, X
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 [; \  i7 m7 M1 E+ C! @/ ]# H                        }
0 D2 V+ E9 i7 a" x3 T; L                }- F& V% e- O: V& a5 d
        }2 W2 B; y+ O/ Y0 l& L2 F
        else0 K7 _, B# T- J4 r) P+ Z
#endif 8 l* P% Y9 z% U/ R5 ^  V2 t

( \- ]' e6 Z, _+ `' B        if( m_bIsIndoor )
% ]8 |; y3 S: g, Y, Z7 I2 K        {! I& y8 U9 K& P8 B/ r1 ?" D/ {
                if( pLight )
, n; ]$ Z% x/ k& G% k8 ^                {               
% W# T! {* f# ~  P# B6 h                        // à??μ oˉè* $ Q7 f- i9 }: S( I) i* s
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
: R# T  ?& y+ q" z! }6 v' @                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
4 T7 i" n9 o- w4 @" v7 X' ^                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;6 @% u1 C+ k3 I# P1 M8 Z

& F" \7 s2 b- S( m( W                        // oˉè* ??à? % z4 v; h8 n$ h* O6 M7 y
                        pLight->Specular.r = 1.0f;
0 ^8 i9 e8 ~) P6 @& h5 Q                        pLight->Specular.g = 1.0f;
6 K4 _4 G5 r/ q$ ~. X) r3 d; _8 d                        pLight->Specular.b = 1.0f;  m7 K" Y- Y( B, M9 r# e
                        // àü?? oˉè* ( w' C0 \0 {. I
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
% y+ K7 `% d+ Z                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
3 d: _. \! m) ]6 U2 y4 h                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;" q: y$ i; d( J
+ D3 }) V& i; z# M8 ]: S* E7 X
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
& X9 q* y9 w0 J, F                        {
% e! |4 o. V+ a9 M                                pLight->Diffuse.r *= 0.6f;
5 d: m, Y# C- o  |! ]7 u$ P# P0 D                                pLight->Diffuse.g *= 0.6f;
1 |8 s! @' `' g" p                                pLight->Diffuse.b *= 0.6f;1 j, D, M  \+ W, X7 k6 g
                                pLight->Ambient.r *= 0.7f;& ]4 X6 M6 @" c9 W; `
                                pLight->Ambient.g *= 0.7f;) H6 r7 U5 q' s. ~1 @8 U7 t
                                pLight->Ambient.b *= 0.7f;9 a/ S: S$ ~2 i2 p0 G1 n
                        }
. Q2 |$ [* d9 ^6 c' Y+ ]  |
7 L: W8 g$ F( G& d) H* G# o#if __VER >= 15 // __BS_CHANGING_ENVIR
3 V$ [% D6 C3 P  s6 o9 P                        if( g_pPlayer )
% U* ]* w: D+ b/ G. d2 N0 v0 ~' V                                HookUpdateLight( pLight );2 f( A0 e: f$ a8 e3 Q
#endif
1 X, A) w' W  r9 y. M                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. Z: x% ^/ m/ t2 V9 L" J4 @6 o5 z6 R/ e& L* ^! }/ u8 P
                        pLight->Diffuse.r  += 0.1f;
) L  ~( N0 b* j& F                        pLight->Diffuse.g  += 0.1f;2 P9 }! D" g$ N* S$ u2 i
                        pLight->Diffuse.b  += 0.1f;
1 b$ b3 ~- @/ g& K; ^4 t. F: W                        // oˉè* ??à? & q. C8 `! y) g8 O& Z( z
                        pLight->Specular.r = 2.0f;
+ D5 B1 t) t! l: y5 {7 t                        pLight->Specular.g = 2.0f;
5 ^8 K  C: H7 i                        pLight->Specular.b = 2.0f;: B4 u! q* {; T0 q* a
                        // á?oˉ * ]7 h( r- H0 I# @
                        pLight->Ambient.r  *= 0.9f;0 _* l& K- U. p# @( p7 Q& X6 L
                        pLight->Ambient.g  *= 0.9f;( Y  m  U9 S; P, p2 Q
                        pLight->Ambient.b  *= 0.9f;
& D' G; Z. o, e- g& ~/ G
; Y: x$ H* f, |1 y5 P% o/ r                        memcpy( &m_light, pLight, sizeof( m_light ) );- n+ C* V! A! Z) Q" }! u4 F% [
                        , H0 s/ u/ m: r' u5 G+ e1 Q
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
# H: Z( K" A- D3 Y                        pLight->Appear( m_pd3dDevice, TRUE );
9 w# J$ A* d! h# T) C: n        0 P: \  c; y" t, V" J# U6 d* Q& [
                        DWORD dwR, dwG, dwB;; K1 v; {0 I, [; r6 r  _4 ]
                        dwR = (DWORD)( pLight->Ambient.r * 255 );; }4 G! e/ h: l% B9 \1 U
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
6 v: y- j  x2 Z# s/ @: B                        dwB = (DWORD)( pLight->Ambient.b * 255 );$ V/ |2 H# a& t
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );8 E& g; p  e6 Y2 O& g& d: V
                }
- m" H) _- ~4 J$ y9 e1 a        }: t* _1 V3 ?. B5 X1 q
        else
+ I( G; A4 ?% Z        {( F8 S+ n( J, x  u
                if( pLight )5 \- P, r! m# v. U8 S2 ]
                {; G/ R) V0 b8 C  s) b+ ?/ ?
               
, _0 {9 f7 Y+ B5 I$ ]/ M" j+ Y$ h  k                        int nHour = 8, nMin = 0;+ _- K+ b) d; s; c7 ~  B0 V$ o
        #ifdef __CLIENT
3 D, N. D& S' _2 F; \, J                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
2 o' |7 w3 ^7 K. V  K& x                        nHour = g_GameTimer.m_nHour;7 p( F! t; S4 U" [7 X4 Y9 G
                        nMin  = g_GameTimer.m_nMin ;
% [8 h& ]" o( e- y0 C        #else
, Y) P  D) ]1 s) C9 ~" M                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
. s; D2 [9 L8 H! G; s  f                        if( m_nLightType == 1 )
; n, B3 g- s  W0 h! U/ j                                nHour = m_nLightHour;2 d3 w. X2 r' {
        #endif2 H6 ~7 n. Y5 ^! V8 g% f% ]
                        nHour--;
! z) j; K, N  y5 V. [& G' O- w                        if( nHour < 0 ) nHour = 0;# x" v% s; @9 s8 r" j4 s
                        if( nHour > 23 ) nHour = 23;5 t, X! {3 y9 [9 |; M* [7 N& [+ i1 _
7 a3 _( p. d  L
                        //if( m_bFixedHour )
9 J% s$ f" v0 r                        //        nHour = m_nFixedHour, nMin = 0;9 V+ b. n5 Z/ ~; Z+ g: w
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
! m& h& [) P% c  B                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];: p# Z8 f& t5 i

# o/ y" [& x! B# F3 @% m3 b                        //m_lightColor = lightColorPrv;8 u+ Z! U) H  T& a* z* d
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
# ?# F9 {9 p' s7 h4 [/ ^# G                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;8 H; G& l% c6 E6 s
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
$ G1 n6 S9 s. a( |5 i3 ?) |                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;, G# r( ^' s/ @% |: d
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
. g* H. u" s+ t                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;- O4 d7 o' L! ^
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
  W" g( f4 K- a7 l
1 ]) t( p, g) q0 w0 z+ S                        // à??μ oˉè*
! J0 J; U: W/ }7 [                        pLight->Diffuse.r  = lightColorPrv.r1;
) n7 t$ Q/ \' S" H; k- V8 C& q& ]                        pLight->Diffuse.g  = lightColorPrv.g1;, U# z/ R) q; g) k; m7 Q5 a) D
                        pLight->Diffuse.b  = lightColorPrv.b1;
6 z/ e. }% m( r$ O# y* z                        // oˉè* ??à? 6 N0 a4 ]* R% [: c
                        pLight->Specular.r = 1.0f;
0 Y9 Y6 ]& s$ `, S                        pLight->Specular.g = 1.0f;4 S4 L9 ?& y* b( K' j
                        pLight->Specular.b = 1.0f;
# a' n) G$ B4 r8 b# U$ C& z, D6 E                        // àü?? oˉè*
* n+ S+ W/ n6 {4 A                        pLight->Ambient.r  = lightColorPrv.r2;
8 h3 Q: `* g5 z7 ]                        pLight->Ambient.g  = lightColorPrv.g2;7 A# X% I( R: K+ o+ g
                        pLight->Ambient.b  = lightColorPrv.b2;$ n+ B: X' h- P  R) P' P, D* i
" c# N. b+ x8 @* }* h& P0 i
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.. X9 {) u! c7 Q
                        {" T. r( D$ C5 q6 d: w( }
                                pLight->Diffuse.r *= 0.6f;, [  e* N0 r6 |0 }" J: L" s
                                pLight->Diffuse.g *= 0.6f;2 @+ \9 E! L% T$ F; X5 I9 Y5 e
                                pLight->Diffuse.b *= 0.6f;5 Y3 s% b& \1 c- Q# m
                                pLight->Ambient.r *= 0.7f;$ ^  ^! N. C1 w- {
                                pLight->Ambient.g *= 0.7f;6 Z1 }9 X  f1 A& \3 p, S9 j, J  x; C
                                pLight->Ambient.b *= 0.7f;
; z8 N  v4 t4 N' P+ o' [                        }
& L% U1 D) k% g$ X2 T+ [7 ]5 l$ a( q                       
. t& l: `0 G/ x. x1 K#if __VER >= 15 // __BS_CHANGING_ENVIR
" m8 O* h6 \% O% H4 A                        if( g_pPlayer )
4 {& o7 |. s, |. i* n: T6 V. I! Q                                HookUpdateLight( pLight );
: I8 n% m4 {/ v' U  U+ Y+ [2 V7 _#endif8 l4 N  y5 |" H
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' C( C& k  ~3 a2 F
( ]. w7 v2 J, Y$ o8 L* X#ifdef __YENV3 K. U& K5 N# X
                        pLight->Diffuse.r  *= 1.1f;; x7 e- g7 x7 B" E
                        pLight->Diffuse.g  *= 1.1f;
  t# q0 i6 r$ R! d7 ^                        pLight->Diffuse.b  *= 1.1f;
$ N1 E2 H1 o* N8 Q2 F3 ^  ?                        // oˉè* ??à? 8 E5 C5 B% z' @/ c
                        pLight->Specular.r = 2.0f;3 k- h* e; _; l$ x
                        pLight->Specular.g = 2.0f;
, |* T. ~6 l, [+ q  `1 f0 M6 D                        pLight->Specular.b = 2.0f;
( [' y, ^6 K; b, r0 U                        // á?oˉ   C7 f. L( O: ^2 V6 F% c: ]6 c% h
                        pLight->Ambient.r  *= 1.0f;: k) X4 K/ A' M' m9 f
                        pLight->Ambient.g  *= 1.0f;; L- S4 E& U* B/ s
                        pLight->Ambient.b  *= 1.0f;
/ Z" O3 z0 m% O5 i5 y2 h#else //__YENV
  k6 V" u  z( `6 w& {                        pLight->Diffuse.r  *= 1.1f;
7 r' j2 g0 l) N- _                        pLight->Diffuse.g  *= 1.1f;
! x" x+ C4 ~! I( G2 b& T7 P  X, R                        pLight->Diffuse.b  *= 1.1f;' \8 n: n$ D, t3 m" l. ~, ^
                        // oˉè* ??à? 6 F# V+ \" E( W6 M& v! A* H
                        pLight->Specular.r = 2.0f;& m" u& t# s9 L( I' e
                        pLight->Specular.g = 2.0f;& p6 W2 E! h1 p* Y
                        pLight->Specular.b = 2.0f;
) e8 e! l, _8 [# x9 K                        // á?oˉ
0 `& ~1 q$ C' V+ g5 w4 l% q: l                        pLight->Ambient.r  *= 0.9f;
5 n3 a4 m' \$ B9 r; {" ~8 J                        pLight->Ambient.g  *= 0.9f;+ ?, |% d( R+ U$ d
                        pLight->Ambient.b  *= 0.9f;- G' o! }2 d( P( @
#endif //__YENV 0 P# I3 u+ o2 @# y
                        : _: U$ d! N$ r# }
                        memcpy( &m_light, pLight, sizeof( m_light ) );2 I, T9 k. C1 G- o
                       
9 G4 ]8 C/ \6 V+ v: U5 V6 v                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
1 n. w+ f& b- R8 C! x                        D3DXMATRIX  matTemp;
3 ]2 a: y( l9 t! Z* V- a/ Y+ m6 h                        static const float CONS_VAL = 3.1415926f / 180.f;
; G( v" `( k+ e$ d1 H
' L7 \! p' F1 y9 b' d                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);/ `% b( S1 A- u9 m: C+ i2 [) m1 y8 u
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);) ^" W* F0 P# D4 ~1 I9 a
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
$ h& T! f' I2 J; O& k                        pLight->Appear( m_pd3dDevice, TRUE );# U6 _! J7 M/ N( K  X
$ k% E  X% X# d! Z: Z7 u
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);2 ]; q; ~8 k( j- d+ z
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));! e# w. f5 o! r: a
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 9 y5 Y2 H' i4 V+ B, I

* n" e6 i: ?$ |2 v/ M                        DWORD dwR, dwG, dwB;
% n8 |: g( z; c' N$ o6 z                        dwR = (DWORD)( pLight->Ambient.r * 255 );) E5 m/ w* m$ x& p7 Q3 ^
                        dwG = (DWORD)( pLight->Ambient.g * 255 );) W3 m, {6 F) r$ e- |- `0 F
                        dwB = (DWORD)( pLight->Ambient.b * 255 );" J7 |3 g) p4 P% P: H" ^
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        : J" Y2 a7 z# s! H6 n
                }' q# D. `9 ]- u1 S# Z& N! t
        }& z* Q' T; X6 G+ G7 {

3 h3 M+ D' P+ I; h        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
4 y/ f# @0 `; l. t. B. 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) );
2 s& j" o  {, N1 k% B        ::SetLight( bLight );
; c0 n1 Y! R' l  k* I
2 V- R$ z6 n! x        // ±ao? ?D?í???ó á¤à? 4 Y* g( u$ }% F9 t3 ^: A; U6 e1 q/ U; F+ O
        m_pd3dDevice->SetMaterial( &m_baseMaterial );1 T6 h5 f1 Y* X; k
       
7 {. G2 {, T) f6 z. d$ [#endif // not WORLDSERVER, X$ u* r3 p$ u
}( j5 F7 ~! |0 G. P' Z; [" r+ ?
并更换
' T. h: @1 v* F( _. g! o1 \Code:
4 |0 k( W2 q  I* v5 \- G__FLYFF_INITPAGE_EXT* J. e: c7 J3 j
定义* b& z, K% Z- Q& s6 g2 Q& X
; N+ x" k  |" q9 w( Q

7 `+ c* M" g: y* H' f' K0 i0 A2 o2 W  ~9 V7 `! J2 ^! T

. B4 c, W( g7 O1 R* S' G  g现在终于删除我的狗屁加速...# S# y& D& }9 K5 R0 Y

# R/ R" @3 u  W0 g1 X2 s  {6 _
- e' r. l" ?4 k& i/ i0 w# r+ _" j# W2 X6 @# c3 b2 p& V





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