飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
0 ^- I7 Q. \7 s2 s' i! O5 r尾翼:
& K- I5 B5 x4 Z# ?2 B* W: ]) [, k1 y9 ~0 U2 y
代码:
- z5 \  S/ ^! yCWndAutoFood::CWndAutoFood()
4 J: X# O% i+ U7 I+ I{8 }$ l+ K8 J( m7 L  u/ R1 e4 u
        m_pItemElem = NULL;$ o) e. H; X0 [# {: i
        m_pTexture = NULL;
5 H. p# x5 ~8 \+ [" U$ a        bStart = FALSE;
! K$ ]# @# `4 A7 g5 K# h" l' c}3 t1 n1 H9 R; \: o  `

* r* t9 ?* G7 g+ eCWndAutoFood::~CWndAutoFood()/ g! [8 B6 h+ n% K5 o
{
/ z: `9 X$ t& B' T        AfxMessageBox( "AutoFood ist gestorben " );! Z4 B5 q; F% }- s3 J) W  t
}6 l- }$ K* r8 y! V
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )+ Q) H8 s' N* \$ v! B
{
0 m  d1 C$ A3 M2 s# C- l5 R5 E. M  Z        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
7 l: a4 j' C7 X# @" z- x& H6 Q5 B}" p2 X. H8 T* ]6 w3 N0 q
' V4 p5 S9 ^' |* D+ O  Y* a
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
: Q5 ^: d6 K8 w" W: l{
# \) J& s0 g/ ?0 d        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 U: S, F* ^/ W* E) ]; v) }        CRect rect = pWndCtrl->rect;
  I. e$ j- Z6 R( ?: t        if( rect && rect.PtInRect( point ) )
3 i: o4 {; k9 ]7 G        {; T( n/ W: E% S2 x7 t
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
+ E3 x7 y, Z- u; S) J3 u" U# A; m                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD ). d3 d; a% C, w5 t( \$ ^
                {
+ n0 ]$ J/ t+ G0 s3 u                        if( m_pItemElem )' X% |( P3 I" g  A- ^# o! q9 l
                        {
  Z3 D6 s1 @" f5 u0 ^                                m_pItemElem = NULL;
( z% T1 \- n0 C                        }
! b2 h" f1 N6 i; C/ b                        m_pItemElem = pItemElem;4 J1 F7 Y* s9 Q4 i, R. e$ B
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );4 k! c/ L3 s% c) i% G/ X
                }else{
2 H7 N$ L! J% D2 j' L" U% R                        SetForbid( TRUE );! H9 O$ m/ R: I& j# q, a1 y  `
                }
$ W: f( Y5 j6 ~        }else{1 O9 O* O/ J8 S8 H
                SetForbid( TRUE );( M8 @( F. ~; u* i7 f
        }
  Q# h6 K5 q/ h& B' Q        return TRUE;5 f# Z* n+ g. n' f! a
}' D2 V7 ~$ r) {& |. i* C( f
- ?( m1 K$ [  d
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )1 C  r6 d, j& Q! u
{
9 ]6 J6 O  n8 l. }2 T: k) `' f        switch( nID )
6 G% y2 N( W8 j. c        {( R0 o8 T* K- B# ~% S6 a
        case WIDC_BUTTON3:
; K, D' j' ]7 @                {
2 v2 k0 ^- [- `$ F9 K                        bStart = TRUE;
2 g- p- u# R" w* m, {. W& G                        break;
' e6 d% O; @+ N$ D                }
3 E+ {# L6 Y" J  c% F8 p9 T        case WIDC_BUTTON4:7 e6 i3 w% p3 ]$ P( d" E5 C& E
                {+ B  [; x. o% r: M: c7 F
                        bStart = FALSE;
) o6 s$ U! G$ q* U8 J) C                        break;  b) D& M1 R# b
                }
9 z3 K+ h! @+ T2 |3 I  @        }
# u- C) I6 _# n- i2 e0 f        return CWndNeuz::OnChildNotify( message, nID, pLResult );
0 F& k' N7 E, m( c. W, ?- |# R}       
, @/ d! a) E$ \: O& X: fvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )  @$ Y9 p" i/ V+ n3 X" c
{
( B. n) v% v% g% g3 S: C+ r3 o        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
5 A9 p$ n& l& b$ `% D        if( bStart || !m_pItemElem )
0 y: U! {! z! n! j4 {2 L( r" R        {7 u4 h) [) @5 Z8 _3 Q
                pBtn->EnableWindow( FALSE );
' @2 j4 V( ]3 |        }else
, N* ]( k# n, F' Y8 g% L! {1 H                pBtn->EnableWindow( TRUE );
  g8 W, C- }9 E  f        if( m_pTexture )$ }+ Y; b$ F- z; P3 B
        {5 v% P8 X1 Z9 ^# {
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
9 ^, u' Z- r% u0 p3 y' a                if( wndCtrl && wndCtrl->rect ): ]  D5 c# [; ~3 J. ?# a  }6 e4 Q
                {' D/ g, p8 v4 [/ ]8 V* C
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );4 n5 @( s; j: t
                }2 ?& N. g: Q. t! K
        }
" V* y( C' W, z# U( p6 R3 j}
) E! ^( _' f+ p+ `4 |- V: t# ^0 H; |% e! j+ h& ]" d8 Q
BOOL CWndAutoFood:rocess()) o/ _+ }6 N! \- Y  L) K+ ^
{. s& c, c* {- }( q+ ?
        if( bStart )6 Z) M6 e- X. o" K- H' z
        {: Z7 g6 ?) t& J$ U
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
3 B" a" q4 R: T% K3 ?6 {                {; s, z5 j/ Z" _# ?
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
  i. Q* Q4 m# y3 r& W! W* X3 \                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
! j' B% J3 C) U! ], ?4 }4 g4 {                }else{
# z, }- _- g, u: |7 l9 b3 \) y/ u                        bStart = FALSE;& C# ?( r! J2 B; v  z. f4 L
                        m_pItemElem = NULL;
: J  i: Z/ z: w% [                }
, [: D+ ?0 F* o. F( [, F        }
9 o# a. O4 M: @; Q. E, [# \        return TRUE;3 P4 Y- T$ O5 y, g
}- d3 y6 U/ b) k6 A, A

$ X- n1 o& \6 s% |, t; J7 }登录视频废话:
  \" J* S& n, d& h, i6 z尾翼:+ v& F$ @3 O/ J- M. w. u

8 L4 u( J3 a- I/ J$ Q+ I- q代码:, t  Z9 C. @" c

1 p' |$ m# @5 W% j. ]3 zvoid CWorld::SetLight( BOOL bLight )
: w5 L$ X- o. Qdurch
* K$ w" c8 A4 T$ l$ z' B% kCode:
1 f/ L5 m5 n; ^" {8 e4 Avoid CWorld::SetLight( BOOL bLight )
) `, u% ]; F# a" I{
  L2 p+ J8 p; P% Y: ]0 Z        //ACE("SetLight %d \n", bLight);* b" y( A$ F6 p6 P! }( \
        9 v) [5 q, E& c$ Y
#ifndef  __WORLDSERVER ( e9 B6 A2 h( j6 J) o; l7 [
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
7 g% g, E+ c% W" z* h0 u        CLight* pLight = NULL;
; o. f- k3 e+ ^& R! r. x+ o4 s
6 d. n  Y, r9 C& ^% E8 s        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
2 \; T3 _4 K" X5 [" A2 \0 ~7 D& m: c5 \7 X9 u: s3 G. c3 M9 ^
        pLight = GetLight( "direction" );
7 K2 x* h& ^8 A6 b1 m' q
9 y/ K: B; [1 i( A( E( J% _/ K#if __VER >= 15 // __BS_CHANGING_ENVIR* S- ?/ g) f% r# y; z
        if( g_pPlayer ){
0 t9 |9 w& \; ^( N( o( C; q                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );( v7 r$ Z( j. |8 K) b  x0 a
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
' t8 B) W; Q7 P! T7 u                {( A% Y5 G8 a5 H+ l! F) O0 R
                        if( pLight )6 w1 c( _# G6 `$ u& ^
                        {
( e9 j1 n& h( `8 \0 F5 X                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
6 `. Y7 o* ~; E  c2 \                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
0 [- u/ @6 o- j: d                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];' b3 {# j7 o$ G( C" W  j

$ d# h6 G! ~' Z- W6 {                                pLight->Specular.r = 2.0f;
, [" L& X; ^# d' X3 v; M                                pLight->Specular.g = 2.0f;- x5 J5 \* o( y. W7 W  @* E
                                pLight->Specular.b = 2.0f;: L/ t& |* {6 ]! l  p) R
       
3 r. d3 z$ P5 P% A1 B                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];4 l* j- H  M; z. I+ d1 v# L
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];  ]# p$ y2 n( ^  I1 d1 S
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];6 P. K9 R. T' k( Y! S" C5 \
       
4 q: X5 J7 ]. m" f8 c5 s                                HookUpdateLight( pLight ); 9 d. C3 \3 y/ S4 i. w. X
7 ?* n; @3 Z1 \  a) R
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );& E4 ^5 P' p5 w2 }' M( l$ P
                - Y# T" R! ~* w- _; v
                                pLight->Diffuse.r *= 1.2f;
, t% q; p/ |3 s9 ?4 y" W                                pLight->Diffuse.g *= 1.2f;+ Z4 h9 |* k# e  k4 H) Z
                                pLight->Diffuse.b *= 1.2f;# Q) T! |1 ?& U, o
" O% M5 r! D& u2 q% R. s
                                pLight->Ambient.r *= 0.8f;& T5 m7 a6 m) {. o1 |2 A3 J* b" a
                                pLight->Ambient.g *= 0.8f;- \3 c/ Z" G) O4 k9 g
                                pLight->Ambient.b *= 0.8f;
/ |4 u; ~' y9 n9 Q: d. N) B       
# u( A6 P6 C5 G2 E                                memcpy( &m_light, pLight, sizeof( m_light ) );- d, }- @% O- `
& i9 ^+ x& ]1 ^" {. c: l3 `+ r
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% i- d; [0 k0 u( g                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
6 g8 ?6 o8 J& M/ U2 R1 }                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );   Q$ v- {, [* @3 O
                                pLight->Appear( m_pd3dDevice, TRUE );" L, L0 U, a8 G1 g/ B
                / T) n* R. ]; v; t: [4 P
                                DWORD dwR, dwG, dwB;' f8 z/ v$ }# @* K4 B
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
& Q( J$ X/ |0 h& ~- l                                dwG = (DWORD)( pLight->Ambient.g * 255 );& w2 z8 [) H* [' p
                                dwB = (DWORD)( pLight->Ambient.b * 255 );, `* {. \' m; M3 O, P; i% r0 e0 q
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
+ G* i7 D' {" F% r; N. l% R                        }
* ~! W% I7 o' B. r. c                }
7 s6 O: L) Q- K$ b        }! [  c: J6 Y" s
        else
5 p& D" h! `' B- k: q9 Q' U/ o2 W#endif ! k7 V# m' w& J* m  K0 `
) i4 _. z8 E9 e- j$ ~0 Q8 G/ v
        if( m_bIsIndoor )! Z  L* J" u7 e5 s- W# n3 _
        {
5 ~& Q& O2 k: Q7 Z; [1 w                if( pLight )4 w0 q# z! s' ~7 `1 V- w: G, V
                {               
/ b* @( g/ u- H$ E# f                        // à??μ oˉè*
5 w1 |" b( e+ B, P7 R1 [% p0 q                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
+ o- i3 L9 A0 b* Y                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;5 c6 ^! F+ \# s- e+ `" M: M7 C
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
0 \9 o5 G% N. K9 g# a5 m3 z  g0 m2 |+ ~/ B+ W# x
                        // oˉè* ??à? ( r# U$ v' q9 k+ d
                        pLight->Specular.r = 1.0f;0 L0 A6 Z3 c6 ^: f& x; f9 h
                        pLight->Specular.g = 1.0f;
4 ?5 S1 m" [& t5 r2 e, R' B                        pLight->Specular.b = 1.0f;: i* w  C3 [# @; a: Q( Y$ S
                        // àü?? oˉè* 0 z" P# c. ^2 u
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
2 M) v8 y2 {6 s; S                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;7 `; H& X: k: c% T2 F2 l3 j
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
' Y+ R9 u  P5 ?. ]* Q5 ^1 ]3 J2 E0 ^4 i) t- l) P/ K
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
" L& z, U+ L7 I                        {. s* F3 p: `# }/ z
                                pLight->Diffuse.r *= 0.6f;
" c7 y# Y  C% \- F                                pLight->Diffuse.g *= 0.6f;
$ a. t8 ^6 a  }) D2 Y0 |                                pLight->Diffuse.b *= 0.6f;3 D, @- X; D" }. m% p
                                pLight->Ambient.r *= 0.7f;: A8 h( m, @" Z4 q! ~0 v7 P( X
                                pLight->Ambient.g *= 0.7f;& e$ e% V! E% w; t
                                pLight->Ambient.b *= 0.7f;
) n9 Y- T) j, u9 I  N                        }
" f8 s  ?& X1 Q& v' ]0 q& }  a$ s. }& L! f: F
#if __VER >= 15 // __BS_CHANGING_ENVIR' x5 e! V& h* z
                        if( g_pPlayer )  X( B5 m, V5 W' D
                                HookUpdateLight( pLight );
; ~7 |' _2 u" L6 l1 z* k#endif% q# w4 K' I5 f. n
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );, A* y$ \( `' f! c. I- R8 ~, v4 i7 D

# a( w7 H/ x7 {0 E0 s& x7 z) [                        pLight->Diffuse.r  += 0.1f;. i. r4 i1 C& ?$ f5 L
                        pLight->Diffuse.g  += 0.1f;* C5 a2 |9 x5 O
                        pLight->Diffuse.b  += 0.1f;
" }* S* }0 U- [7 g$ S" ?) r                        // oˉè* ??à?
9 t) H" ^3 z& a! f1 w                        pLight->Specular.r = 2.0f;* t9 y( J& k  o2 N8 R& F, S
                        pLight->Specular.g = 2.0f;
5 Q! W7 _1 \+ F- A                        pLight->Specular.b = 2.0f;9 X5 Z$ Q2 ~7 y9 Y, q
                        // á?oˉ
5 ^) R: q  ^# E' g2 }1 L: v                        pLight->Ambient.r  *= 0.9f;
$ {4 ~5 n/ d( _" L                        pLight->Ambient.g  *= 0.9f;
! _: g4 |! s3 F1 {                        pLight->Ambient.b  *= 0.9f;
4 L) a+ g0 y- D- b+ m1 U/ S2 s! K9 j  D1 w
                        memcpy( &m_light, pLight, sizeof( m_light ) );
9 @% g" R/ @7 _/ H7 p$ ]- E3 r                        & j6 Q2 k% |4 F6 e! c* `
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
2 T9 s3 h0 u; Q+ c  t2 q8 l4 v                        pLight->Appear( m_pd3dDevice, TRUE );
- w4 n6 ^0 l; L( j6 D6 @: S: e          P- i) z7 M& k* @1 a0 k: w
                        DWORD dwR, dwG, dwB;& Z+ g9 h! U# s! e# k$ N0 @3 y
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
: \1 r+ {$ n( d, B) |                        dwG = (DWORD)( pLight->Ambient.g * 255 );) r' m  N, A! G7 I
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
$ M  {1 D( ]6 H                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );, A# ^+ B0 h$ D7 U5 J# R
                }
3 A8 p2 z" e- {9 f3 S7 k        }
& e  y% W" f3 d2 H3 a        else
" E9 Y7 F1 W% F0 z8 o! W1 ^& Y5 R" P        {
3 W* n  P+ ]7 x) t- G% O- L                if( pLight )) ]9 j1 b" o( |) A5 F/ M* o
                {
, W: J  l: @* `% g  B                & k1 a2 U' a. E1 v1 k+ E
                        int nHour = 8, nMin = 0;/ _1 _7 w. }( ^3 H8 G' s9 H
        #ifdef __CLIENT% H! k/ P1 b  x+ r4 \0 c
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. & u# Z! T$ M1 V
                        nHour = g_GameTimer.m_nHour;
5 l- h: o5 t- P* i# u                        nMin  = g_GameTimer.m_nMin ;
( T$ i- F7 \5 x' p( k        #else
5 A4 S& t/ V( j1 @$ d) p                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.1 U8 d& ]9 \* ~# [
                        if( m_nLightType == 1 )
- x) [" W4 o: \, R4 p& g" i; ?& w                                nHour = m_nLightHour;
+ M2 K5 v, N8 s7 J4 L" _        #endif
7 F& y& E+ D3 ?7 [' Y8 d                        nHour--;
- L" v% ?' u; H, B7 B                        if( nHour < 0 ) nHour = 0;
  M" [9 T/ W4 C/ S                        if( nHour > 23 ) nHour = 23;& F/ E1 G! v3 x, t

0 W2 y  l2 T8 H" U& u' {# B                        //if( m_bFixedHour )
2 l- r+ ~  ], E" h3 J3 t                        //        nHour = m_nFixedHour, nMin = 0;
, J! k2 B2 e7 c  q) T+ B7 O9 G                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
5 C9 ?& f8 m% }& U8 F                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
$ a9 B6 l' \8 C: W* ]& h$ G9 D" B- y: B& ~8 F
                        //m_lightColor = lightColorPrv;. n6 r0 ]: H+ S
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;0 T  \6 ~  P; ?
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
5 n9 |+ Z" h/ D& n0 p. Q                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
1 X6 }( E: a! W                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* }8 k5 v& F1 M: p; F                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
9 }6 l% t  H1 g$ c                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
, Y7 d1 {7 y$ K# v4 ^' Y                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)3 r% i# j7 S; F6 S& V- i

2 {4 _& z. S% v( h                        // à??μ oˉè* ( B: e2 S4 |1 X9 N
                        pLight->Diffuse.r  = lightColorPrv.r1;- Y1 n* m4 e7 x& N# g3 b. z! w
                        pLight->Diffuse.g  = lightColorPrv.g1;6 p( D, u9 w: q/ ~  P
                        pLight->Diffuse.b  = lightColorPrv.b1;9 Z$ _, t1 A, g  n9 y, _
                        // oˉè* ??à? ' G1 l# S0 k$ u$ D1 m, X/ Y
                        pLight->Specular.r = 1.0f;
1 y( u8 d$ N+ S9 `" B# T% ^' E2 S                        pLight->Specular.g = 1.0f;
& W# S* \. h  O. X                        pLight->Specular.b = 1.0f;
* [# ]$ k5 _( m1 c  c" ]8 W$ A                        // àü?? oˉè* : u( q6 t0 S& s" ~) w
                        pLight->Ambient.r  = lightColorPrv.r2;4 S8 k4 n* D# O2 t
                        pLight->Ambient.g  = lightColorPrv.g2;8 l0 l2 s! C/ W# |# {# W/ ^: z: S
                        pLight->Ambient.b  = lightColorPrv.b2;' t' f. ]  @% V6 T9 M3 ~7 B% k/ \2 G
9 J' W- ?: u  C4 ?) a+ z7 r! B
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.+ h1 ^+ {! o; c& x( Z, A# E" j
                        {
4 D: n: e3 I& J: e% v% f# g5 I  W/ X, G                                pLight->Diffuse.r *= 0.6f;% T5 |( I* W2 R2 k- h7 E( ?" R
                                pLight->Diffuse.g *= 0.6f;
' Q9 @# T; g6 O2 d! r                                pLight->Diffuse.b *= 0.6f;& H* {% V% _; ~; U" s; T4 y) m, Q: W
                                pLight->Ambient.r *= 0.7f;( Z0 ]$ o  ?. a. _, C0 D! o
                                pLight->Ambient.g *= 0.7f;8 `3 |" _* t3 r1 C$ S1 B2 y3 _
                                pLight->Ambient.b *= 0.7f;  \, h  V; C+ q5 N7 B* S4 P' o
                        }3 I4 {0 C3 z  l+ |; y
                        $ z+ w. O2 @# o
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 f/ ]* d+ D! N) P, y" Y4 Y4 l                        if( g_pPlayer )
4 m7 I( a' u6 r5 P! C( O9 g% s                                HookUpdateLight( pLight );
' }+ t" \# v) o. V1 L  o+ u#endif8 o0 f. Z. N0 W8 J
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );6 d. O) q' o. i( p
, M6 {5 x- M2 a
#ifdef __YENV
. [* |8 B3 T7 `                        pLight->Diffuse.r  *= 1.1f;
( e  a* y2 A% b, e                        pLight->Diffuse.g  *= 1.1f;4 Z. ~5 v5 [" @- ]; B, A8 q
                        pLight->Diffuse.b  *= 1.1f;
) N  u. _8 E9 a) v9 n( V                        // oˉè* ??à?
4 w; m+ ?; I+ Q! A7 g                        pLight->Specular.r = 2.0f;- I& L5 Q' }8 ^: s0 |
                        pLight->Specular.g = 2.0f;
- C! f' c3 Z# {' @& U0 m' A5 @                        pLight->Specular.b = 2.0f;, q* }; p7 {3 @! g2 e2 J: U: }  f
                        // á?oˉ
0 W1 G. v  K* t0 v                        pLight->Ambient.r  *= 1.0f;
0 q( ?# ?0 F7 e0 `  u                        pLight->Ambient.g  *= 1.0f;2 O5 l9 t- C0 F" M6 y
                        pLight->Ambient.b  *= 1.0f;& ^5 {  a- b" Z
#else //__YENV
8 G" ]2 R* l. R) [                        pLight->Diffuse.r  *= 1.1f;1 p2 U7 ~* H1 j' c& d
                        pLight->Diffuse.g  *= 1.1f;
) t0 `/ I& _: S! Z# ~                        pLight->Diffuse.b  *= 1.1f;7 o# u! Y2 Z/ O. X/ ~* ~$ Z( ^% s+ N
                        // oˉè* ??à? ; _6 j! _! o. V  \
                        pLight->Specular.r = 2.0f;" M9 a6 c+ }0 q5 ]& U5 j: R
                        pLight->Specular.g = 2.0f;7 B" e: i0 l5 Q  O' o, ^( g
                        pLight->Specular.b = 2.0f;2 W  j$ v/ w8 u
                        // á?oˉ
# s* d  \& r0 V7 }( I/ r: H  j% U                        pLight->Ambient.r  *= 0.9f;/ O3 R3 B9 x6 ^+ @7 H, k
                        pLight->Ambient.g  *= 0.9f;
& \7 l: a' {' K+ ~& Y  R                        pLight->Ambient.b  *= 0.9f;( G( a6 B& o' x
#endif //__YENV
  q3 `9 u  u7 g4 e$ k  \                        ) `4 @1 e. f/ k4 ?, ?5 W- N
                        memcpy( &m_light, pLight, sizeof( m_light ) );( O) l6 r3 q7 T0 j7 r. Q. U8 L# Q
                        9 w; ^6 s: ~/ c; ]( x7 ^" Z
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);' g( [  n1 d/ F- C4 e# S+ I7 d
                        D3DXMATRIX  matTemp;
7 G4 e1 _" [+ c$ G5 t                        static const float CONS_VAL = 3.1415926f / 180.f;$ W% S4 W* G4 k4 p; u/ w3 H8 t
9 Z/ x# g# R) u/ Q
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
, T0 ]5 S  B% M$ {2 O3 N                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
4 _6 v% J" M8 r0 S4 m' N% m6 z+ b                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
' j! u/ y- \' U; N                        pLight->Appear( m_pd3dDevice, TRUE );; j! O& e" k4 y2 x( M% }

1 ?; F# ~* c0 G/ [3 g                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);( e& l. E  o8 A7 F( c
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));* t9 u# \- Q$ s$ S% M: t
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); . v2 V1 o4 X3 {6 D: F  a0 i
) @& \( A1 Q8 Z, c9 P
                        DWORD dwR, dwG, dwB;
* G/ U. A/ K+ P5 x- t, R' j                        dwR = (DWORD)( pLight->Ambient.r * 255 );6 Q1 G/ Y1 {: K
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
/ i4 y3 C: e, O                        dwB = (DWORD)( pLight->Ambient.b * 255 );
  G; F" Y% n3 b& {9 x: q# |                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
8 Y! Q+ Y+ [+ S' S8 w                }
" t+ s! v5 c! \& l, |        }
) K4 V; \" p9 z8 o5 e/ g0 ~8 k) v& Y8 J3 l: K4 o
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" {, e1 n( U# F3 H- m) r  {& f8 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) );! D- b) G  F' O5 s
        ::SetLight( bLight );, H( A# _8 |" C/ d# s7 F8 Y# T* z
7 c% h  d# H  }! P8 w
        // ±ao? ?D?í???ó á¤à? , s* G+ e7 J4 z2 ~) o& k- O
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
4 M  g& O1 f8 N8 x- Z/ Q6 S        ' c: V" u" M$ ]" ?- Z4 Y
#endif // not WORLDSERVER
( P1 }( i; Z7 R% u* {}( K, U0 |" }& z$ a  F) ^
并更换; |; r: U0 W, X1 q( @
Code:8 T7 [: T( g& N5 x7 `# ?
__FLYFF_INITPAGE_EXT- J; e& l0 N6 r2 ]+ O3 i
定义
" k# x& f# `' i9 j
4 Z6 r0 C: W3 S) v, L+ h% P
9 @+ d. a0 O0 I# W6 I# }: s0 d) x# c

: q( O8 p8 U* i9 p现在终于删除我的狗屁加速...0 J4 }0 T: Z5 |! a8 k) W! V( R
. r) x1 p( v* r! t+ @  x' o7 D
3 X; T+ A% ?* ~5 L) @5 e8 x$ V  J2 x. o

+ b2 z; ?; r9 ~' T$ l




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