飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
) H7 m& w0 x1 d. ?5 E  _4 C尾翼:
% `4 |% L& n! _$ k" W9 i& ~% i4 b5 r0 g4 y: S
代码:
! g" x7 f8 \8 M6 U! ]5 kCWndAutoFood::CWndAutoFood()7 D& `5 R+ b5 z/ [8 I& N
{
4 n6 u) e" x5 d  j9 k) I/ \2 f        m_pItemElem = NULL;: b% b% n& H0 t* r$ B5 n
        m_pTexture = NULL;
) y$ y0 D5 V/ c$ B: C        bStart = FALSE;6 m+ ?, P5 J8 B  I- M1 Y
}
/ e4 Z4 c6 q7 z3 p* T, P0 p/ a
  k6 R; V) z3 K. e9 MCWndAutoFood::~CWndAutoFood()) c. T' T, |2 Z( E& o( }. o! I
{
0 |6 E( g7 {# }$ J% w        AfxMessageBox( "AutoFood ist gestorben " );8 ~: j: N5 \8 l
}3 h# w$ u6 ?. T6 y  C, Q8 I
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType ). u: w% e- \0 z  h
{
( ]# f0 }' b; ~/ e. H3 j( c! {        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
5 Y  Q. `# v# G. `8 Q9 t}. v: d  G' r  p& d
! Z; b3 ^' ?& ~; O" M
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
" Q5 R7 z7 H1 [3 W& G9 Y1 |{$ `7 [, N- I2 r4 R
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
) ?3 y, ~0 P4 B/ m        CRect rect = pWndCtrl->rect;- h: P6 N" }6 ^9 c0 |
        if( rect && rect.PtInRect( point ) ), \9 n% @1 P: }2 l* A
        {1 G4 x- Z2 g- U, A5 v* q! u* X! K
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
2 {7 K# v" e+ t" a6 ?$ l+ A                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
( Z& u2 i! q, A1 p. {                {1 b, z* R. `" b' G# S2 r: [
                        if( m_pItemElem )7 X  c+ l2 Q; U: e- m2 P8 h" E( U
                        {. s7 a2 ~5 m" m3 e! ]8 p9 A
                                m_pItemElem = NULL;( b; e$ e$ U0 \0 q% y9 ^
                        }0 t* j; k3 q5 ~% ~+ D
                        m_pItemElem = pItemElem;
4 T! E# k+ Y5 c8 q+ ~                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );* v: |  }" `  N- G2 ~& G
                }else{
( r* V- }" z1 e! C                        SetForbid( TRUE );
; @- C! O7 n/ V3 N                }
/ r0 n/ n" o+ C& U  Y& l5 }        }else{. ~* o$ I. u& y' ]  P. ]; y
                SetForbid( TRUE );
: M; H/ Q2 `8 u- x        }' C) A1 [' A7 W( Y, D+ x) f
        return TRUE;9 V( M/ W2 E5 r' }4 X1 B. k# p- H
}
7 S5 S1 p& K5 Z- k" m9 U9 e4 r( i" U0 |% f# W
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )+ ], w: k1 D# Q/ a
{
% @' C/ d$ q: @* L6 J, ?0 ^5 h9 g        switch( nID )
. P8 C0 L9 f8 |7 ?        {1 ~" h/ j* w3 Y; |& t
        case WIDC_BUTTON3:* a. I7 d% Y4 Q- M- Z
                {  f# N! e4 t( \$ G2 c0 W% F  {1 L
                        bStart = TRUE;
( J# A/ L8 X5 o$ S$ ]8 F                        break;2 G6 D. e; R# S! W6 W2 W' k: m
                }
' Y" F4 N$ d/ D) ^8 A8 I        case WIDC_BUTTON4:' j# K- k0 Y2 X) d8 v* B
                {
/ `+ L) I/ Z, O9 B" @) u                        bStart = FALSE;
# C, _1 e2 m6 @+ B9 g' ^                        break;
, F% E9 J: R4 O. I, X                }
4 a& \& b7 ]+ T  j% ?. V        }* s! F" c9 ]) X
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
- E0 u! r# ~8 K$ T3 p  h}       
' \5 v8 f1 V* D: Tvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
1 i" w2 E: H6 {  p{
& _0 K' O/ d& n' b        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );& y# A* H+ _2 r% \6 h
        if( bStart || !m_pItemElem )
6 S1 g2 u1 [! B- {/ S+ _9 K' @        {/ r- {/ i9 |' Q/ p3 m
                pBtn->EnableWindow( FALSE );
& x* y1 w# c( Z; A# |& Q        }else0 b8 z$ {5 b9 r/ X3 W) j
                pBtn->EnableWindow( TRUE );1 L, p, s5 w- c, N
        if( m_pTexture )& e; W1 x* R! G. p7 A- Q# ~
        {4 {% n) N- f8 `0 a
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );# g  Z" w3 [3 ]' \; H1 o
                if( wndCtrl && wndCtrl->rect )
* S! U0 O9 {* j3 }                {$ `* c; v1 H$ R: O- ^- U
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );4 ~2 Z7 v4 J7 L) }
                }
( w% n% ^. c: @  C$ e/ c4 X        }
# f! G5 Y% o% d, w0 p! z& H' y$ d}: O, u1 U7 e8 ^) p, }
6 b; ^# k! m" h
BOOL CWndAutoFood:rocess()
0 q8 d8 E3 }7 o( r( Q{
' p& B7 X$ ~6 f& B  V% N        if( bStart )
# L  n/ q# j( I9 s        {, S1 F7 ^( R( Z. |
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
7 \9 {  w& m' U2 \                {0 H5 ^. b. C8 I2 A% `
                        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 P0 l' ~! I; ]5 @                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );/ T: \# d9 o: x6 a+ B: q
                }else{: h* b/ m  `& v$ a" @" F5 z
                        bStart = FALSE;3 f. g; V/ N+ H2 C% \
                        m_pItemElem = NULL;
% u! o4 K5 ?/ H8 [# X' y                }" d9 K* O8 B1 g  U9 Y! D' B
        }' U) R! ?6 J% t# U0 E8 C8 @/ p
        return TRUE;
6 l3 V, R% T) n9 b6 |, W$ ?: Z& ~}+ @& n! V" k$ D
( G  T! Q$ R# M+ ~9 t( D; P& x& W
登录视频废话:& c* e& ~5 u7 M
尾翼:# P2 A  b- m: L: z+ f5 @6 U

" a* D( T  S" H  G1 o- H8 D  G0 d代码:! _, I% y% A! j9 ^" i
- G! n4 P& a2 n( y& m' X2 R
void CWorld::SetLight( BOOL bLight )
. `  T' j- j) ?# Bdurch
4 f" O' J( C1 P" P) E8 uCode:5 D1 I& S8 `1 J% l
void CWorld::SetLight( BOOL bLight )) a( z1 t8 J+ X
{
+ Z" ]* ^6 \! \3 w& @% O        //ACE("SetLight %d \n", bLight);
0 u- H! k( Z$ s1 V. a- e5 I  }       
/ p* `- K- k" o#ifndef  __WORLDSERVER
0 m+ N7 u  H, {7 a        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);! m: v' t+ s% G" y1 K
        CLight* pLight = NULL;( ?' j% A3 C4 F6 Y- I' O2 [6 S

' z, r# l- J! S! t2 L/ o' f% g        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );) e" ?# t2 _1 Q7 Y/ U" u* }

+ s0 h; A; a' S+ T        pLight = GetLight( "direction" );2 K% o5 }$ n" q( R1 e8 a+ P/ V8 F1 E

3 i* M3 R, A: U% e5 ~  p; P. E4 R4 E#if __VER >= 15 // __BS_CHANGING_ENVIR
+ X" F/ h8 @0 I- A' ~5 h. d7 l7 g        if( g_pPlayer ){; Q. Y  b( Z( n4 u+ G
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );  P7 S/ c0 p; Q
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!! u; T/ T, f, D0 q  B
                {
/ n6 N. g* A  h! N; o6 B                        if( pLight )9 O& |6 k1 Y% }
                        {
. V& Y- \8 J; q0 t4 I  l                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
6 e; B9 S  Z. d" E' v+ b5 v' [4 ^                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
! z  F5 c' d" @                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
4 d$ o7 P9 V0 o. ]  a
( V7 l3 ~" ^; q' L                                pLight->Specular.r = 2.0f;
: }: K- r% x9 x0 a5 j$ x                                pLight->Specular.g = 2.0f;* ]1 U2 K, ]1 `$ I# S8 k
                                pLight->Specular.b = 2.0f;  }/ @/ t6 R  l0 x' P9 c# z$ Q
       
- a7 f: [+ Z% B: h# Y                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];" d/ t  {1 [; Y
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
8 B* ]8 L3 F+ E# ~5 O* N                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];% s( T7 M. ?0 _' p$ }3 t( m7 K
       
  @- ]4 p7 X2 w                                HookUpdateLight( pLight );
6 R9 U; T. F. n: q, P1 s/ k
/ S: X2 }$ [9 g                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );; ~) `4 X7 S5 a) q
               
7 L( r: w, R* n$ }& r$ ^                                pLight->Diffuse.r *= 1.2f;: S, t& Y6 R+ z2 {
                                pLight->Diffuse.g *= 1.2f;
0 u' a; a% l9 P8 ^  G8 L                                pLight->Diffuse.b *= 1.2f;
7 U2 @# E* @, C* R/ \7 Y/ }$ I2 p
                                pLight->Ambient.r *= 0.8f;
' q$ j. J$ ~& P4 q. H; q) J4 k                                pLight->Ambient.g *= 0.8f;
3 V+ `0 V' S3 E8 J( A. u+ c5 l% {                                pLight->Ambient.b *= 0.8f;; k! V, ]! p2 m! W& v# k1 p; Z
       
# u+ n  m6 J9 M: Z$ @% [) i% x+ ^1 Q                                memcpy( &m_light, pLight, sizeof( m_light ) );4 A/ _- G- g5 v$ D- S

! N; E  {- E- X: p6 t8 O$ D                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
$ U' @2 {! E0 q6 k$ r- ^1 p; x                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
3 q9 N' @, W# y: ~                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); : G* S) F6 {9 k& ]
                                pLight->Appear( m_pd3dDevice, TRUE );0 G" `4 S5 g' }2 O* x) L) \
                - K: G6 _: s" a/ S# }  s  O
                                DWORD dwR, dwG, dwB;
; o: W( E* [& X                                dwR = (DWORD)( pLight->Ambient.r * 255 );
3 G2 R) s/ B3 \9 p6 Y$ F                                dwG = (DWORD)( pLight->Ambient.g * 255 );( L6 O  T3 a  A4 x+ B
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
4 w' C' a4 _2 h* n                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );2 T% W2 z5 k0 v; g' \4 X* F
                        }
: W, s& ]: o$ M1 y& A) ?                }
- F' @  ]/ k- A- Q/ Z- U" d        }
- A, I( t# d4 X; m$ i        else( s1 N' h& P) ~. E% ?* S# u6 z; n
#endif ' i7 z, F$ a- t
; m, ^  B! j) A4 |0 L: ~" g
        if( m_bIsIndoor )8 D8 o6 K- [4 z% H  w8 S
        {
8 j. k8 t2 x- f- y; m                if( pLight )
4 v5 N9 s& m* N                {               
7 Q+ [/ I+ H4 u6 ?$ d                        // à??μ oˉè* 2 \5 `0 K2 G0 e% e' H
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;- p: \9 m( e" K: D
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;, b3 j8 X5 |' p( ]& K; y2 j; x
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
1 p* g+ M& P9 r) m3 ?9 O7 C* F- C( E6 @3 J/ A$ C
                        // oˉè* ??à?   f# n7 q; `8 V' f2 p
                        pLight->Specular.r = 1.0f;
! Z& j9 m' M' n                        pLight->Specular.g = 1.0f;8 f7 Z' \' {) g% A& D# x0 g) o. _: [; I
                        pLight->Specular.b = 1.0f;
- |/ i0 e- c, Q, R+ c, U                        // àü?? oˉè*
2 b. l9 w% P2 B/ z- n1 b0 U* g                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;2 b# h8 H0 \  T4 v
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
, }$ Q% e- d% Y# X: }' P                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
9 m# u. a' h! \' ^8 I! k8 C' C& T! `& l3 j
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.; D3 |% T, S9 [! X4 |( k( A
                        {1 y1 @! y2 H+ j1 r# K* L
                                pLight->Diffuse.r *= 0.6f;
) _% Y/ j5 b4 r! W2 K                                pLight->Diffuse.g *= 0.6f;4 E8 h7 k7 d9 Y6 |) z) B0 d; F
                                pLight->Diffuse.b *= 0.6f;- [& K. m* @5 J1 H: J6 F
                                pLight->Ambient.r *= 0.7f;
9 k4 f0 l: M* G( U+ E  p6 X4 H                                pLight->Ambient.g *= 0.7f;
! S4 T3 ]  ]6 l# y( |. W                                pLight->Ambient.b *= 0.7f;$ p+ b! X/ i0 D2 H
                        }' \$ h. X3 I- @0 l  N# m' J8 {

+ l- F' I  A! S$ m4 `5 ?9 U#if __VER >= 15 // __BS_CHANGING_ENVIR( j; I( _! l) ~3 I$ q
                        if( g_pPlayer )5 r- x) z# K+ m& \7 I3 J" B$ f% z* q5 R
                                HookUpdateLight( pLight );. M5 p: |7 b( r7 b! o4 e4 B
#endif
4 f& G0 [* t3 U. z                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 Z- G) ^9 |2 v4 ^$ i/ Q4 n2 P. N! _2 W
                        pLight->Diffuse.r  += 0.1f;, u- t. l3 m2 l8 l) v7 D
                        pLight->Diffuse.g  += 0.1f;+ i( r0 j7 N: H$ L& X
                        pLight->Diffuse.b  += 0.1f;: ~/ R1 ^0 g5 C, r3 A6 k  x! S
                        // oˉè* ??à? & c7 Z2 K" _- U% w' @8 `, M
                        pLight->Specular.r = 2.0f;7 t8 t7 Q- `9 X6 [, q" V5 _
                        pLight->Specular.g = 2.0f;
; T. l2 j# V4 w                        pLight->Specular.b = 2.0f;
1 }  u4 v! U! }+ y- e                        // á?oˉ $ B! K6 j9 y- v3 g2 h
                        pLight->Ambient.r  *= 0.9f;
1 X: F5 u2 T2 x, Z$ {3 {" ]                        pLight->Ambient.g  *= 0.9f;5 H% N, i) w5 g+ u6 h2 x, x; f
                        pLight->Ambient.b  *= 0.9f;' c7 @2 M' k& `' l

; }6 u: J+ i- C9 T                        memcpy( &m_light, pLight, sizeof( m_light ) );
; n7 p. R& `4 K) s                        1 o. \  C. R+ I& ~9 E0 r& D2 l
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
/ V# O, B8 v4 P1 g0 d% g                        pLight->Appear( m_pd3dDevice, TRUE );
* @; H9 x( @% U4 b       
$ B( N- J  l8 F/ }, V                        DWORD dwR, dwG, dwB;. p" e5 y. n9 X1 W0 p
                        dwR = (DWORD)( pLight->Ambient.r * 255 );: K9 w3 v* o4 i* r
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
0 Q, o$ y$ \! i% i! g, G- J4 n1 b  W! X                        dwB = (DWORD)( pLight->Ambient.b * 255 );. L4 h6 r+ _. N8 @) o
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- Y$ s* p8 O4 K9 R4 f% k, o0 O- J                }
) w! o" m3 C  b& d+ L# V& e        }% w/ H, A# v; m$ M
        else
9 t! {' B% i: X$ I7 G, M        {
2 y% d! V. u& y2 Z) ?9 z. w/ @                if( pLight )
7 t  q, @5 q! j4 E                {
  u0 U- T4 I6 I& l) g* s& h                & n" w8 D3 f2 W1 G& V
                        int nHour = 8, nMin = 0;# g1 ^, C. \* I
        #ifdef __CLIENT) p/ M' i. b% H! B2 v' j1 N4 Q( e. R
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
/ l+ m, G. L3 k                        nHour = g_GameTimer.m_nHour;5 u, F# }' ?/ s6 r/ @% @
                        nMin  = g_GameTimer.m_nMin ;
# p) ^& a& T* O8 M* G$ _. f  w/ {+ V        #else
& t* _1 R3 `) M/ c6 W8 D3 L                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.8 V, l' a  d5 C
                        if( m_nLightType == 1 )
- s- ~$ c+ H! z7 I9 E- j& {1 j                                nHour = m_nLightHour;  b5 z9 |3 Z; i" @1 [4 H  y
        #endif6 T# m( p* F+ _2 Z. [: C
                        nHour--;' U1 F; A$ C" ~
                        if( nHour < 0 ) nHour = 0;3 W4 c! Q! P, P5 l! l1 D: W7 p0 T
                        if( nHour > 23 ) nHour = 23;8 H$ U0 W0 e" v& @. T7 H
6 ]0 P. Z% _9 b# A
                        //if( m_bFixedHour ), E. ~: Q: D% v0 n) L% e( c
                        //        nHour = m_nFixedHour, nMin = 0;
5 i# S4 t$ o( z) R0 w                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];7 V. i1 R* I. i4 r/ b. n6 W# P
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
- X: {9 B7 m" j! |0 D1 E8 |3 B" Y  X5 H) N3 {" z
                        //m_lightColor = lightColorPrv;
7 u) L* D( \% z$ c/ H( S/ o9 s3 T                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
. O5 w+ e( u. t- ]6 F                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
# L8 j9 D* u* ?6 v                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% i  v" E& `: h; b! F: Y/ B                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
8 M2 W9 @6 t) V# X2 t* [# {                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;. t% h8 @" r1 G
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
* v2 M: u( f( Z3 I4 m3 Y                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
% v+ o" V+ x( t  N8 u0 G. _
0 o! g3 Z& g0 R5 {% G3 p6 `                        // à??μ oˉè* - v5 r; s8 }' c
                        pLight->Diffuse.r  = lightColorPrv.r1;
; N9 @, {, X, V; L; N                        pLight->Diffuse.g  = lightColorPrv.g1;$ U/ K) I3 }( z1 s* ?) z/ z
                        pLight->Diffuse.b  = lightColorPrv.b1;4 E4 A. `$ Q# M) e
                        // oˉè* ??à?
. K  }1 ]- P* b" M' L% |& E                        pLight->Specular.r = 1.0f;; H2 a7 c# ]- K3 P+ a
                        pLight->Specular.g = 1.0f;( ~5 l4 B/ d) y' R, b
                        pLight->Specular.b = 1.0f;
7 I% j5 t& N1 D7 S! H8 ~/ ?                        // àü?? oˉè*
, w, D* o( N" X8 K                        pLight->Ambient.r  = lightColorPrv.r2;
4 X/ S. B8 ]' F( H* W                        pLight->Ambient.g  = lightColorPrv.g2;: E& \! ]! k; q6 a4 Z" X
                        pLight->Ambient.b  = lightColorPrv.b2;+ T* {& C0 y& T( R: G

2 d+ s+ v5 `; N* e' d4 t  w& _                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.2 x8 p% z; a4 t: e! L2 a2 J8 N5 a. \: W
                        {  D0 }& v6 }5 t, C, l; j
                                pLight->Diffuse.r *= 0.6f;
' ~" F7 ?8 n1 ~                                pLight->Diffuse.g *= 0.6f;; n. U9 T) u: `  E' `& p: p2 n
                                pLight->Diffuse.b *= 0.6f;
2 Y& q& ^* N0 _                                pLight->Ambient.r *= 0.7f;% z1 @! c2 p7 s9 {# }
                                pLight->Ambient.g *= 0.7f;  e* C! W8 t: C; h$ n' m7 m1 ]
                                pLight->Ambient.b *= 0.7f;
1 W* h& e0 }3 U& w  T                        }+ `& L; X1 H4 H0 w8 h- ^( R
                        ( h: i7 c$ C- L- M( @( f
#if __VER >= 15 // __BS_CHANGING_ENVIR
  v! K5 s" t) D, F. v' P' `                        if( g_pPlayer )
8 q  Y; z& D  R+ y3 ]0 b, t                                HookUpdateLight( pLight );
  |+ F& u9 d4 V/ S% b#endif
5 \) Z3 Q/ m$ W( v                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );: m( |7 ?* h" S  d* F
0 L7 r; j/ m- ]+ P
#ifdef __YENV$ e7 y% K* \2 d! q2 ?
                        pLight->Diffuse.r  *= 1.1f;
) [# K- K0 N/ e2 v! n+ ]7 G                        pLight->Diffuse.g  *= 1.1f;
) C/ G( M3 C" D/ L( D6 X                        pLight->Diffuse.b  *= 1.1f;* g! \0 e1 E4 a6 b
                        // oˉè* ??à?
1 b0 j3 T$ Y" V6 z; o" i  \                        pLight->Specular.r = 2.0f;
- J# h# I( t9 [& E                        pLight->Specular.g = 2.0f;
: E5 n; ?7 t7 u1 L- P; e# Y; v, w' l                        pLight->Specular.b = 2.0f;( F7 C+ q" s/ H& ^5 S! f5 h8 }$ T
                        // á?oˉ 4 H' N; ~* B# e1 a, A- C
                        pLight->Ambient.r  *= 1.0f;
+ p# J8 S/ v% [2 n3 M9 {3 J. _, J3 S8 q                        pLight->Ambient.g  *= 1.0f;/ f, c% e* r! G! e3 Y! q' X
                        pLight->Ambient.b  *= 1.0f;- K' m4 f% ?0 @$ C( ?! d
#else //__YENV
" ^3 S0 ]( F2 g: J* x& V/ _$ A                        pLight->Diffuse.r  *= 1.1f;
# V& Y4 E2 s9 A  L/ I                        pLight->Diffuse.g  *= 1.1f;
) Q9 a& G1 b8 l6 c4 F! s7 j+ `5 g                        pLight->Diffuse.b  *= 1.1f;' b0 ~$ |% M0 d6 w
                        // oˉè* ??à?
. ?. \# A1 b6 l                        pLight->Specular.r = 2.0f;' z! ]7 B: N2 |
                        pLight->Specular.g = 2.0f;
2 l* I# k. ?9 g                        pLight->Specular.b = 2.0f;5 P( k5 Z  q7 |4 ~9 k2 c0 @
                        // á?oˉ
+ J  e# e3 ~1 R$ ^( x                        pLight->Ambient.r  *= 0.9f;
: b9 }0 a: D3 s1 \5 C  S" O/ _0 Y                        pLight->Ambient.g  *= 0.9f;) T  q) K; {4 E. c" T; b
                        pLight->Ambient.b  *= 0.9f;
8 g$ ~3 M5 W* d#endif //__YENV + c) ]+ Q$ O" e3 y
                       
3 F( `: F% @# Z% D                        memcpy( &m_light, pLight, sizeof( m_light ) );
3 i( X/ E" G+ k- L2 Y( b                       
! |1 ^$ U5 Z% n" a' f                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);5 N* |9 X, `/ P6 z# K% B  N/ Y
                        D3DXMATRIX  matTemp;
1 l2 U" F4 t$ G, c/ e; i2 D, j) Q                        static const float CONS_VAL = 3.1415926f / 180.f;
0 c2 w1 L) Y% t
- J) i$ u7 {, x" V: t                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
$ b! |2 }& q9 s7 k& k                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
) m; k" [# X& e, U! i/ B0 ?                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 1 [9 H$ }5 _: `+ l8 F7 Y% n$ K4 t
                        pLight->Appear( m_pd3dDevice, TRUE );
4 y& t- @( W+ E# d- l1 S7 F! {# f
! j6 x$ {3 U0 i: j                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" T" W6 b( z; @# a                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
% [5 A* Q) C( @+ ~                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
* W9 _; Q! l$ z  F' c% E' M
- a: O$ b: I/ [( ]                        DWORD dwR, dwG, dwB;& `# R6 P/ b) _+ P
                        dwR = (DWORD)( pLight->Ambient.r * 255 );$ z" P+ X4 ^- q2 o5 ]  {
                        dwG = (DWORD)( pLight->Ambient.g * 255 );: |* P. T2 p( N6 z% ~6 o$ P
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
7 X" u' K& Y: X- V                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        , L3 n4 p( D( ?$ u
                }6 R0 S0 n3 X- |/ R/ O3 N3 V
        }# ^" D7 ?  h6 c% s9 k3 _

( i/ E' c* L2 l  g        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
3 q6 G0 C: r9 O        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 _5 L9 e( {! u0 C' w( u' H5 S1 D        ::SetLight( bLight );$ v# Q  u: w& u) S: d% ]

* \7 c4 F3 l( U" |5 e3 _  Z, S* b        // ±ao? ?D?í???ó á¤à? : i; w$ `0 E2 V: Z2 y# s
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
0 b1 y4 H5 ?2 D3 Q3 s+ K$ }5 O7 Q, g7 t        / f1 K% d! _6 z( d
#endif // not WORLDSERVER
7 K: I  z5 s4 o4 b}. ]  M/ d( M5 H6 d
并更换0 [/ v1 V3 A* I1 ]9 l
Code:
: Y8 O3 m9 p& I; c2 _. s% x__FLYFF_INITPAGE_EXT' Y' y& d' O& m& k9 P; B
定义
& d& M4 b8 A/ D4 m1 f& i: j5 M$ K) f9 h9 i$ y8 v6 J+ a

$ U0 n4 ~1 u4 ~, c' u: \" \. z3 C  v
4 c2 T) [6 Q( c3 ]4 Q/ @! g9 G( t* f% K: @  u4 v( |' T/ \
现在终于删除我的狗屁加速...
- M3 P# C7 I; I8 x. u3 L1 H7 Y- p
7 F) I7 e2 o) P$ |: C+ {
5 x$ @& J! L* M3 M) f$ f% @: K" t





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