飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:% R" t  L- S& T1 P
尾翼:' T( t' S! Y5 ~: i; _
2 p: F0 Y3 A! ]! m9 e
代码:
% v8 Z, M% l8 S( e: ?' YCWndAutoFood::CWndAutoFood()( C/ F: Q) ^( y: C5 X
{4 b. q6 g) S( T6 d
        m_pItemElem = NULL;: V& T5 T# I9 {( v, K
        m_pTexture = NULL;
3 d5 _! Y) s% x0 ]1 w        bStart = FALSE;7 z4 k2 X" f5 T  o" \
}: G/ ?; t* m2 f/ _# W

( b+ r, \7 S. WCWndAutoFood::~CWndAutoFood()
" A4 ~# V& W* p{
+ }' ^3 h2 I- A* ?5 g" B; P        AfxMessageBox( "AutoFood ist gestorben " );
8 T9 j' O: ]/ V% E( Z: z( F  E}
% f- u, w6 B# ^& d$ z, `BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
1 Q; I6 O+ R; q/ P5 A{+ L# N/ F  j# G! N7 k
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );, l* e5 z* N: r, i$ ^6 ^
}
! p6 L' o8 e: \% O% [0 Z3 L1 I9 {% O3 Z6 D
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point ); M6 s( K( [/ i8 B, W
{
' `% S1 M- a( ^        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* g7 J# x6 `) L1 O+ _- c( c        CRect rect = pWndCtrl->rect;5 s' f! g* D5 J1 @, n
        if( rect && rect.PtInRect( point ) )
+ D2 H: x9 q5 S  @2 Y        {
% n5 ~9 l2 t5 u% N$ D7 \7 _* m                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
. O$ t/ X2 j; v                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )9 R; C, x' w+ `0 F- b
                {& V6 t- a' |; t& |8 V
                        if( m_pItemElem )
: g3 Y+ K. T  r% c9 Y! H                        {  x# r* `- R2 r
                                m_pItemElem = NULL;
" ^5 x* N9 S0 v  v2 y; z                        }& t% {) n: g/ Q4 {. l' x
                        m_pItemElem = pItemElem;
  B- R6 l3 i# s. C5 B* @                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );- J. f4 H$ @6 H: m' X
                }else{
* f9 F8 o: s' d& }) I& y& _                        SetForbid( TRUE );
) y1 z( h" ~! z                }- z& [( X3 n8 J( f4 m/ R
        }else{. `0 H7 f& n% [; m2 H+ n, f
                SetForbid( TRUE );
' v7 |* d; c2 U) _5 D6 x        }
. F) t2 s+ u% g  a& Q        return TRUE;$ d$ @# ]" q/ k/ E, w% K5 [
}  A8 Q# Q: ?. j
, q  Z8 ^& i; o/ _/ f! K- ]
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
- U+ w% L4 c/ Q! X7 I! v{) K4 S5 f/ v' h7 u' q2 \
        switch( nID )
# X, U8 r. l) f0 R1 S/ u" j, x        {
6 L& F) G2 z" v& [# ?        case WIDC_BUTTON3:4 R! @& Y* C0 k4 J3 h! Y
                {
8 Y! Z) D5 W, {                        bStart = TRUE;. j5 n& Z7 L3 H
                        break;
+ \3 b$ j7 o  Z1 u$ D, m3 P+ [                }
3 Q) Q1 n1 d; W; E        case WIDC_BUTTON4:
5 X, i! k! Q5 Y% ^6 r* h                {
* \& Y8 V$ q+ {& ^7 o% ]+ ?7 t                        bStart = FALSE;
4 M& S* Z  x7 U+ f0 S, J+ H                        break;
9 X8 @# E& F9 w. [+ w                }/ j$ u6 X! y+ ^- k5 ^/ M
        }
1 t) h  A# F4 ^& b        return CWndNeuz::OnChildNotify( message, nID, pLResult );, `2 X; M, c% D% ~0 p
}       
! q2 [3 A' [/ x7 ]8 |* fvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
  \7 h+ r( J/ N) {1 Q% V{! K  B8 c$ Q! L- W9 [: E
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );6 I1 G( V! }# q$ A4 w  s, j
        if( bStart || !m_pItemElem )
; z3 }% @( V( `& a3 W        {' g0 d8 Q. @( k2 x" w. L
                pBtn->EnableWindow( FALSE );! J6 O+ E  W% `- L+ C" G7 K9 `
        }else
9 F" H4 F! P- W- R+ R. Q                pBtn->EnableWindow( TRUE );) y( ~6 {& M& Y. E
        if( m_pTexture )7 w: L7 P+ y% t; D5 }: `
        {
/ {5 A' K! [$ Q# p( H3 p" c                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
( c8 {" c  n. l9 T                if( wndCtrl && wndCtrl->rect )+ T7 \/ A: u5 A9 L# ~: Y" o
                {
# {. O) G5 D/ `$ `                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
' [* h- i2 V0 [- A) Y/ l* R" U                }: c6 r6 f. Y/ p1 t& p# q7 V
        }
- N1 p' V! k8 J, ?  |}
7 c$ O. u3 k& ]& i6 A2 Y% }7 _. r- [
BOOL CWndAutoFood:rocess()
* i7 Q6 i( }7 S" i+ x4 Y{
- @, H- a1 ?/ ]" ]        if( bStart )
- k0 I* m7 t" T' l/ E) t        {
( A  e8 D$ i* E. j                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 ): V) Y2 E) ~8 U2 X- F& N! o
                {8 ~0 l3 T  u. N$ |% k
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
9 s' b  q1 g& ]                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );9 d7 Y% H( ?" ]2 c0 e
                }else{7 f$ x4 Z. y! h+ B
                        bStart = FALSE;
7 r% p5 Y7 ~% ^1 l                        m_pItemElem = NULL;2 m  s$ G" Q# m8 J8 n8 C) a
                }
, p4 z; S2 c2 s! K! s( ~        }! h- O& M" @( g  L+ H( ]
        return TRUE;
! t3 T1 q  P% X7 i9 _}$ a3 F5 j6 z; w% c. E8 [' b
6 H8 T3 I" J: a' G2 |
登录视频废话:4 ~- m3 J1 o& @9 m: K
尾翼:$ O( A5 t! [, t8 H
$ k) o' _+ _9 t
代码:7 w, T4 ]5 T0 T6 a
' D. S8 E" K& U/ Y) q
void CWorld::SetLight( BOOL bLight )
  k( v3 ]4 ^' tdurch; G& t0 `  D% `( _
Code:
0 h( x* K0 {" F2 b; ?! m% wvoid CWorld::SetLight( BOOL bLight )" `1 s: N7 u! o, d1 i/ t
{7 b5 ?( _8 y  r3 {+ C
        //ACE("SetLight %d \n", bLight);
8 b$ F. P0 S. n# F. X) K/ b- p       
1 d9 F5 N+ V0 d, L+ o! b. L1 @2 h#ifndef  __WORLDSERVER
. b' }% i1 X, K; |" {        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);3 s  p! I- \% o* d3 r: c1 z
        CLight* pLight = NULL;( [- ~' @- A) }6 \) |* v% F; g8 M

9 U: n3 ^! c; y+ k& ?# ]        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
- a( K6 ^$ p  l9 y3 d1 O7 G
' Q7 w+ C' R& W/ D9 B4 z9 G        pLight = GetLight( "direction" );
5 W! c8 o- J* b8 d. Y" D5 p% X
3 i' r* N7 e8 z  z" ]# i8 H#if __VER >= 15 // __BS_CHANGING_ENVIR. {. n; b2 `4 B/ G
        if( g_pPlayer ){
& w- \( p+ R" J+ Q! \% J                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );' t7 {& x/ B! p4 G. U7 }! r
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
4 |9 v+ d: n; Q                {
/ u- f$ q* X7 q7 r                        if( pLight )4 F2 y7 v& L( M/ l% O" K# e8 A; |% S
                        {
0 o) O1 b+ O1 f( C/ N                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
0 d( v5 v3 U1 n                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];" i* n1 ]5 Z. K- q: e
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];; l1 q1 S! {0 z% W1 m8 ^! ?: l

4 Y" p$ u, l' Y, \8 T! @6 M                                pLight->Specular.r = 2.0f;
2 k2 M0 t+ i# r/ G: L/ O                                pLight->Specular.g = 2.0f;: D1 m, l' E! B, t2 a  F3 [& Z. ^
                                pLight->Specular.b = 2.0f;1 H) [$ K$ f( H5 d# D
        % ?% E  z" _! }
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];1 R2 {4 R/ _- I% f7 H% i
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];1 A. b; J' F. W4 b! W& v( n7 z  [
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];' v' j0 I, o+ w2 W0 u! S4 n
       
' E3 F4 f1 l- o2 g; z                                HookUpdateLight( pLight ); 3 o0 |' |- U% U

" O: X# O+ G* s; l; M                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );/ k% Y0 W$ b% R6 S* X3 a
               
( S) R& z2 c8 v- @                                pLight->Diffuse.r *= 1.2f;
$ w! j1 T& v2 y+ q, w: D, f2 ^- W/ N                                pLight->Diffuse.g *= 1.2f;7 k1 E4 i/ K9 U( G
                                pLight->Diffuse.b *= 1.2f;
+ b/ V4 d2 v8 s. j) o: u# a$ ~$ E
* i3 k% b2 Y' Q2 S* C  u                                pLight->Ambient.r *= 0.8f;
5 Q2 {! d0 {6 [3 F$ x                                pLight->Ambient.g *= 0.8f;
8 b1 P9 _  P: Z! f                                pLight->Ambient.b *= 0.8f;
. o& ^4 r9 \; W       
- M* D- L  P& x3 N) B; v* ^4 i                                memcpy( &m_light, pLight, sizeof( m_light ) );
+ r) y  o: s! \# X; I% X3 C3 u1 p( L! A
6 [8 Z6 s+ c# L% N8 I/ n) Y9 q+ O; b                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
( M. ?3 R  `) L, l                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
5 b. E4 |9 Q+ i! b9 X6 k2 s' ]                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 9 B+ q; H# H% \
                                pLight->Appear( m_pd3dDevice, TRUE );! A: q7 _2 p: E3 ~. a& l
               
" |5 T& n; e: Z  N                                DWORD dwR, dwG, dwB;
' t# H6 X; s# U( ?                                dwR = (DWORD)( pLight->Ambient.r * 255 );
( Q5 F/ C$ Z! C. w, [+ P                                dwG = (DWORD)( pLight->Ambient.g * 255 );
% X: l# C' Q0 u                                dwB = (DWORD)( pLight->Ambient.b * 255 );1 O% x. H! R9 m( O) g
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 ^: P7 S4 F  G                        }
  Q# M& g! D3 Q! l$ s% o                }( F- @9 \* d2 [( g. v2 M6 F2 X0 {
        }
& O; p0 n8 G' d        else
: [0 ^& I, [3 h. l* b1 y#endif
7 b" I6 M6 e( U; I) @$ u) n! x' P9 K: q
        if( m_bIsIndoor ). o+ h2 E# H- v' q5 y0 Q# d
        {
' Q1 I( l( F% e" F                if( pLight )
7 c* ?. [: n. L0 \) U  M- }% j) b                {               
" Y3 Y- G3 q; A; Y                        // à??μ oˉè*
, O, n! s1 q; x5 w2 [& p# z                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
) |! m+ S3 n$ }6 r7 }                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
2 m- d! R6 V) n- ]$ T* G8 O' w+ ~  W                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;; A4 N7 J) J7 c7 l

' K' C% k* T5 [. F: w$ D                        // oˉè* ??à? 2 y, p. B# H* {" g% m3 }7 E
                        pLight->Specular.r = 1.0f;5 m7 c: }. ]* a. N2 j1 e; j0 i# z
                        pLight->Specular.g = 1.0f;
' h  T( t: g! N( Y: I                        pLight->Specular.b = 1.0f;
. q9 K* @; E/ |( s4 `' e                        // àü?? oˉè*
3 U' ~& V/ ?5 K$ K0 Y/ I                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
, |& @- z+ ]0 t                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
* H) l# M6 X0 g6 p$ J                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;' y$ k3 F4 J  k$ O% t4 T/ b
4 n; D1 U8 d# W2 i# c  f. c
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 ~' }. X8 c% q2 Q/ H. |                        {
( J$ Z6 P1 o% h5 O( N                                pLight->Diffuse.r *= 0.6f;! j2 G: y, s- D/ _# G, H
                                pLight->Diffuse.g *= 0.6f;
. |3 b: v3 X6 m3 d) |$ Y8 J                                pLight->Diffuse.b *= 0.6f;2 k6 M# y! t9 ?& c2 _/ J. k4 r
                                pLight->Ambient.r *= 0.7f;) {4 S+ C7 \! F; U
                                pLight->Ambient.g *= 0.7f;5 T5 u7 {- J; w' e( n
                                pLight->Ambient.b *= 0.7f;$ R& g! Y- a2 ]1 Y) Q, m0 R9 l' p& n
                        }
4 w) Q2 e" U% R# ~, J$ c0 a9 \6 a( W1 z
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 G) ~  s5 ]! Q$ `! D                        if( g_pPlayer ), L, k# i. W) q* i: U2 w7 p
                                HookUpdateLight( pLight );: \2 Z7 I& b4 L3 d5 H8 }9 ?  h8 m+ T
#endif( T9 r+ N6 \" F$ ]& x* L2 }3 A
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% Q% ^; @% ^* ]; S8 o" k9 @+ o" o! r. m: u- \. Q5 C  c& s
                        pLight->Diffuse.r  += 0.1f;3 ]: }9 H0 q& D2 b$ K! {: K  C
                        pLight->Diffuse.g  += 0.1f;* X0 j6 y% W: i
                        pLight->Diffuse.b  += 0.1f;
0 X; D: J1 V" |                        // oˉè* ??à?
. m  R& q0 \. i: g. ]8 R  q( W6 l                        pLight->Specular.r = 2.0f;; Y1 Q$ b) G9 b
                        pLight->Specular.g = 2.0f;" C2 k# C9 i! B. n
                        pLight->Specular.b = 2.0f;
2 E- E& l! P) J! ^0 D                        // á?oˉ : E; C' H. j) G' Z7 {
                        pLight->Ambient.r  *= 0.9f;8 [7 j9 L/ R$ z# W8 C7 o' s
                        pLight->Ambient.g  *= 0.9f;
1 M& l* I6 R: y2 s/ b                        pLight->Ambient.b  *= 0.9f;- Z8 l; E# r& S, m4 n
2 r6 D3 _$ A: ~
                        memcpy( &m_light, pLight, sizeof( m_light ) );# K: L8 p- o$ C' f' B  f2 ?1 b
                       
- i, u4 L* f' {5 T8 Z3 v+ R                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );% L  o' i( L2 u/ W) u& k( v" X0 ?
                        pLight->Appear( m_pd3dDevice, TRUE );4 V% K% \, V8 I' j1 s2 Y, ^: g- K
       
+ F% y! w& m; @* n& @) M6 Q                        DWORD dwR, dwG, dwB;
- [) a( N9 M1 ~                        dwR = (DWORD)( pLight->Ambient.r * 255 );! m: G+ x( U# o1 M- W
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
7 H  g. Q' J5 u' t, C1 s! U2 Q3 y                        dwB = (DWORD)( pLight->Ambient.b * 255 );
- N! q7 u+ w. @4 t0 L% e. ~& ^                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );& v% v" j# {0 o2 I5 x3 }
                }
7 G; c6 R# N# _7 j* V        }
% P. Y+ z  q2 d- J* p        else1 }. U$ m1 i# ?3 j+ R# {
        {
% ?! |/ g3 V8 l! B7 ]                if( pLight )
1 a3 P3 M9 T3 ~9 p8 h( X                {
! g# S, u; g) q% I" E               
% p% {7 |" F: D                        int nHour = 8, nMin = 0;: k: y1 {0 t% J  F/ {- _5 s' W
        #ifdef __CLIENT
) b! L, N4 x* [" q- }                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. . \9 J3 y7 s2 A  z2 p
                        nHour = g_GameTimer.m_nHour;$ x5 P+ u) c2 s9 O! t+ b6 p8 O& _
                        nMin  = g_GameTimer.m_nMin ;
  X0 p8 y5 S3 s1 Y% m* s+ d        #else
8 Y4 z' e' u2 l. I- U( n: [7 z                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.; L/ \. j, R/ d0 m* F" c
                        if( m_nLightType == 1 )
& i6 X# t, |' K7 W6 e                                nHour = m_nLightHour;- E" J+ ?7 O) j) a# W' A
        #endif' K9 d& I( N# f& I. H1 W8 r1 F) I
                        nHour--;: y( y2 o& B5 Y; L) I8 Q
                        if( nHour < 0 ) nHour = 0;# n2 i% A4 D' h! M
                        if( nHour > 23 ) nHour = 23;& D( t  c" p  t

' o/ T% Q, F& H  U% \                        //if( m_bFixedHour )
3 Q- N. J. I- p4 F                        //        nHour = m_nFixedHour, nMin = 0;
) G5 S+ c/ @% X: ~" L                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];# @; ~* F8 L& v1 [+ _- j" T+ `
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];1 a2 q1 l, M! n5 m$ y0 C$ _

/ l4 F7 R5 z4 z2 N- E                        //m_lightColor = lightColorPrv;5 d( n+ N( \! s
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;) d# v+ h0 ?& b  a. c
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;3 b& O7 w7 z( h
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
  j9 w" ]. |" M8 d9 l                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
0 L3 |8 C3 v- K) ~# v+ C                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
) M- x$ _8 z1 T3 a2 ?' [                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
! [1 d" h& J7 z" W) v+ q                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)1 Z6 x& N5 l' Y5 z: W0 e

& n6 F& k4 W. l6 T, C* h                        // à??μ oˉè* # p9 @' w+ _3 I8 d6 I, S
                        pLight->Diffuse.r  = lightColorPrv.r1;
1 V- n" Y( Q+ x( {3 }                        pLight->Diffuse.g  = lightColorPrv.g1;
. `9 T! s* ]$ ^8 d4 `                        pLight->Diffuse.b  = lightColorPrv.b1;
0 O; W) W* V5 c+ [: }                        // oˉè* ??à?
. V! r, s9 V# N5 @. A                        pLight->Specular.r = 1.0f;3 I  _/ O4 E4 j( P( s  [: T+ g% ?
                        pLight->Specular.g = 1.0f;' h+ f) r2 p7 x$ c& l  b
                        pLight->Specular.b = 1.0f;2 q/ a: R" [# l1 S$ t2 W
                        // àü?? oˉè* 4 [& K2 S* k; P% j& L
                        pLight->Ambient.r  = lightColorPrv.r2;' d  J" c4 m, H$ M, D
                        pLight->Ambient.g  = lightColorPrv.g2;# o2 u, |3 @7 V) R+ _
                        pLight->Ambient.b  = lightColorPrv.b2;
# ~. H; N% g/ ]2 S3 i- ~  v$ g# l. e) {  r) }2 n5 c4 P! _2 B
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.4 v7 K5 v8 J, J
                        {
( U' s- g( I% A$ |1 W& t                                pLight->Diffuse.r *= 0.6f;3 e( P: B/ ^* F! r8 W9 f
                                pLight->Diffuse.g *= 0.6f;
$ v1 o0 T- |: {0 R* J% i                                pLight->Diffuse.b *= 0.6f;
0 C( g- y8 }: y. {& v                                pLight->Ambient.r *= 0.7f;
' U3 M2 _+ f; E0 S+ W$ {                                pLight->Ambient.g *= 0.7f;2 P3 w1 @( ~" d5 G0 K6 I( e
                                pLight->Ambient.b *= 0.7f;2 h+ j1 v3 {: J, K
                        }
  g& M" w, H6 R1 \% D. w                        ) o: V2 ^! P% p; g4 L
#if __VER >= 15 // __BS_CHANGING_ENVIR2 f! m& e! H$ M6 |" q) q/ ^. Z7 G
                        if( g_pPlayer )
" z/ k! [/ u$ Q                                HookUpdateLight( pLight );
3 }0 J* T0 |& @1 A6 W/ A1 ~#endif6 ]+ M. J  N3 o
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 a5 Z0 T! g# b3 D. E) M
5 r6 t0 y4 y) ]6 [; e#ifdef __YENV. Z; p9 M. H- a& D' U8 b0 k
                        pLight->Diffuse.r  *= 1.1f;
( ~8 N& Y5 y! p  h  a& Z                        pLight->Diffuse.g  *= 1.1f;. X4 H1 ?& e& I( i6 V- n7 G
                        pLight->Diffuse.b  *= 1.1f;( m7 M+ J; X. d1 A+ {7 d; V, b: G
                        // oˉè* ??à? ( }7 ^; i" M# w, y+ l& ?" q
                        pLight->Specular.r = 2.0f;+ c) [. j# m% z: v0 \5 p
                        pLight->Specular.g = 2.0f;
7 _- p% }/ `& }9 @+ Q* x1 Z                        pLight->Specular.b = 2.0f;% s( n" T9 y+ @) c$ l
                        // á?oˉ 7 G3 R7 c% W) ~" k% d" I9 Z
                        pLight->Ambient.r  *= 1.0f;* F  N2 {& }: }
                        pLight->Ambient.g  *= 1.0f;1 L3 A. X/ r% C" k4 K2 ^% }
                        pLight->Ambient.b  *= 1.0f;
- S& Y; I' s( {/ {1 a( q2 j# g#else //__YENV
8 y4 X% k6 r% Z                        pLight->Diffuse.r  *= 1.1f;
. C4 v* ]9 m# ~7 j! L                        pLight->Diffuse.g  *= 1.1f;
' l0 S$ o3 ^1 |. G/ N1 z                        pLight->Diffuse.b  *= 1.1f;
" w5 O7 n" x% O/ L8 B                        // oˉè* ??à? $ G- Y1 K- V0 z8 c
                        pLight->Specular.r = 2.0f;+ r6 D1 a1 s2 V, |, h
                        pLight->Specular.g = 2.0f;
& b  _; N  Q, T, t3 s9 ^) V0 G/ Q1 E0 G# v                        pLight->Specular.b = 2.0f;2 a- ^! P! ]7 E; W$ n5 {
                        // á?oˉ
5 e$ f" _: a/ t- L9 V7 z2 e                        pLight->Ambient.r  *= 0.9f;
* z/ s/ A4 Q: M( k+ }0 g3 T! E  O                        pLight->Ambient.g  *= 0.9f;5 t: X' c' R0 }
                        pLight->Ambient.b  *= 0.9f;' c9 p2 v( l, W) [5 p$ W2 E
#endif //__YENV
2 ]% `0 b) o1 {& X9 c( i) W                       
$ {) N' V( \, [9 Q- d! w1 O5 |                        memcpy( &m_light, pLight, sizeof( m_light ) );
7 @) U9 S1 k. @  k6 q3 v                       
, e) y; p; Z7 ~, O, T) \2 G                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
0 I  V2 T$ W1 t4 M. b9 ^0 s" [" w                        D3DXMATRIX  matTemp;7 `( |) M# }2 K
                        static const float CONS_VAL = 3.1415926f / 180.f;
( @4 @- V# j( B& X# ~& G& p5 Q; @! F2 k% d6 A# H+ ?
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
* H. [6 G. g) R5 p. O                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);( V. d, }& w2 r$ }$ q% G1 x
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
) J2 G2 H, ?& A) S$ O4 [" f; I                        pLight->Appear( m_pd3dDevice, TRUE );6 m, A$ w9 @9 e4 N

% W9 o- o! ]' g0 G! x                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);3 f" u# g" p- `$ q
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
6 \7 b" c( H7 u: r3 a* h% L                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 6 ^- p; k# v- P2 Y' D
( Y  d6 h* h0 ]. O. t
                        DWORD dwR, dwG, dwB;, S8 [& @  a: P7 s
                        dwR = (DWORD)( pLight->Ambient.r * 255 );9 Z6 ?' `8 d$ \  t5 ?# F$ \5 e" E" A2 M
                        dwG = (DWORD)( pLight->Ambient.g * 255 );- a5 {! Y/ h" c$ e5 q* M
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
9 J; D# g* H! k; L& F( n                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
3 I- g( D; |0 v7 w9 H; ?                }
+ \  l, `+ l2 B# N- |2 b6 X6 d        }1 o. B3 r. n& I: {; o, P. T

" L. c% y! M& A" M        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
2 C4 K7 P8 @/ s8 f' c3 y/ a- G7 }        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) );  g5 J! K8 y. A4 }
        ::SetLight( bLight );3 _/ U2 e7 m& b5 A

+ `' J4 X; F5 X4 z" c        // ±ao? ?D?í???ó á¤à?
& |6 K  S, S/ p( X. Y* f4 L+ W        m_pd3dDevice->SetMaterial( &m_baseMaterial );) e- \6 F3 N1 @0 n
       
$ i/ V5 \" c9 Y% w$ O#endif // not WORLDSERVER
0 Y6 ^1 @: M+ p. J4 o}7 n. \, C1 H- c& i$ S4 C
并更换7 r  o4 V( P7 x/ [: }
Code:
" s- e+ F1 i: r$ p3 ~9 |& o2 U( d__FLYFF_INITPAGE_EXT. |- M0 T2 _8 u* j8 }' G& X
定义
# \9 R# ~: A& X# t5 O5 y+ z  a
* O. H, l# d+ z% d; [
; g7 f, p9 K9 G% ^' `4 Y) @
4 s1 X8 w' r* \7 s% j) s. T* r
现在终于删除我的狗屁加速...& Q! R  I* I) v" i% R& A' o
, y2 ~# e- v! M. d, ~

9 x, J& ~8 V) N9 O" g) Z) Z# e9 ^" Q0 D1 Y. J; L. Q# ^





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