飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:# U1 R8 p$ M( Q% e
尾翼:
, w; K9 y( r$ e/ T8 T. e* G0 g
- D* Q& a0 x1 V/ z& ?4 z代码:) t- x; v3 `# W; {; [2 B
CWndAutoFood::CWndAutoFood()8 f# v; F" T% A2 {% Y/ d
{+ {/ |* W: q* m$ l- s
        m_pItemElem = NULL;& Q- a0 M5 {, \5 R& ]
        m_pTexture = NULL;; Y0 l8 l4 u, v
        bStart = FALSE;
  B) }  }% D9 t; L8 c}
, {  w( P  S5 q, S) A. O! j3 q  n) K+ t" `9 ]. Z: B4 R
CWndAutoFood::~CWndAutoFood()
! t+ p  B5 f9 V* n- b5 D5 U& P{
2 c8 g: D+ l7 g/ ]% l$ O        AfxMessageBox( "AutoFood ist gestorben " );
! i# f4 L5 [  [' u; H1 m- I$ t}" ~/ E3 P1 A; H. c) q( ]+ L- u% r( {
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )3 {" x+ x5 ?! ?
{
! z8 x0 r+ |' `4 ]+ k# ?        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );3 }% }" c& I9 Y5 R8 o5 T% e4 L! C) D1 H
}
8 L! }, H/ L0 {* A' j+ ]
0 k# P/ `1 O% e3 s7 @" eBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )5 W7 d! `) f: E1 Z% R
{
7 t' T0 \% K1 v4 b* m" b        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" b. Q' M9 M! d& y9 d- ^, R        CRect rect = pWndCtrl->rect;
2 i" ?1 B- a/ e7 @        if( rect && rect.PtInRect( point ) )8 L: N1 G* E! R& Z5 m( j
        {
* I6 E+ D0 S" @                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );1 _) e. E# O+ j4 e
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )9 @* L1 r9 M, x+ l: u
                {
* S0 d2 E( R6 q: F6 L( a. A1 ^                        if( m_pItemElem )
: a0 h4 X  r7 Y. H2 J1 K! U                        {
5 g& l, b& T5 l7 n' S                                m_pItemElem = NULL;/ o7 f( _9 h; p+ h& }& V
                        }
" J  t& I4 I' v) _" E4 _2 d                        m_pItemElem = pItemElem;
2 N" r3 s2 A: s( N8 Z                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
2 k$ @1 }6 o+ g1 m5 ^                }else{
0 i' H$ H* Z& |* }9 V                        SetForbid( TRUE );
  P2 ~6 p$ c' T                }
0 k- E1 d8 C0 d9 w# B2 \8 ?        }else{% e, m( {2 V7 C- i% u
                SetForbid( TRUE );! [! u: T% H0 |
        }
' u7 b; D& i. }- i( q# x4 \        return TRUE;
$ H$ D% s* ?6 J( E& @* |: m: t}
- Y3 \6 `" ^6 D1 _5 b
8 W! A0 w( G( C6 h# q) @: a# \" sBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
& c4 Q1 I# x: S2 F) s: I{
0 k) g% d- g' r# A6 Y' e, q# c        switch( nID )
* H4 p* i7 ~: u- K' {4 `        {
  T) w3 b: G0 O. ?9 u# S, f' T: a        case WIDC_BUTTON3:& Z  e- S0 r9 B
                {
3 {) L. O# C+ @8 {  y                        bStart = TRUE;
) o1 p" M. @. l1 `9 }                        break;+ S7 W+ E& M  ~: X
                }
' f7 Y- S0 u2 E; q5 L        case WIDC_BUTTON4:
" Y" K8 g$ T9 f" P' E                {
; A1 e1 C9 n) G. k+ G                        bStart = FALSE;6 w" f5 T" B  w  h3 Q* X
                        break;
& l( _4 [. i! h9 W                }
' Z; T0 L0 C" Q5 `' l( O        }' B; O3 G  E# j9 I5 }
        return CWndNeuz::OnChildNotify( message, nID, pLResult );* d4 M/ a. }- q( N" q& F
}        1 p( \0 q3 V/ h7 f6 k
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
' `: Y! p7 ~- \) s' |{( W' N6 v" F/ ?
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
  m4 I7 p  N( ^: S/ n        if( bStart || !m_pItemElem )3 S+ q+ a5 @: ~
        {6 T7 Z3 \1 y' Q0 q
                pBtn->EnableWindow( FALSE );' x0 O, d5 c% D# [
        }else
; r& c* ?0 i* j6 [3 p                pBtn->EnableWindow( TRUE );  p: o2 t& t/ A
        if( m_pTexture )
+ L* W! H0 J; W3 E1 d9 i* o        {
) c' `/ H; @/ A8 M- `( p5 L                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
  \0 Z# u2 U+ J                if( wndCtrl && wndCtrl->rect )
& n1 J- y0 c2 s+ W/ y5 R6 L                {
  w& r. I- D2 Q: }  K                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );& i$ R7 ~* d' V! `" }6 i
                }/ S. I4 S; k  F1 e9 V+ N2 x
        }
+ O' @: i  H: ?$ E' N/ Q' v' t$ Q  T}
; t* Y* a" a3 k* }
8 C/ {+ I5 ~6 r4 iBOOL CWndAutoFood:rocess()
: h. `# v; S, K) o: U  X4 X{
+ p1 h# T' _# v" X/ T/ T( L        if( bStart )! c, R2 @6 y$ L, P; j3 A/ j/ a
        {
" a0 ~5 ?: C4 e0 B4 }4 Q$ T                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
1 B! E6 m0 S2 J: h  {# A                {) g! H% t$ X9 V) U1 v
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
2 s" H& R8 A$ v- _% h+ `# E2 W                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
3 l1 D9 ^& z* @# ~) L                }else{
( q0 J. \; `0 _6 Q                        bStart = FALSE;/ K0 R( L0 q7 i' N6 K
                        m_pItemElem = NULL;
2 W) k: r$ E0 N4 i                }
( c4 ]7 s/ a1 X3 h        }
& T8 X- n& r, m4 G5 d0 [  T" r        return TRUE;$ f7 k4 L6 w) w  u
}
2 `9 J; P: h  J& h% v) U# U: Y( P2 s6 z3 F- i
登录视频废话:
: w# s) y8 j! `, d$ U7 u7 V! s尾翼:
7 j) |7 T/ n8 p- X! a; r+ A' F( I, e- E  N9 a7 \
代码:6 O7 \/ W2 }. x. t' u
) {! A5 a$ J' |3 |, z# L4 V
void CWorld::SetLight( BOOL bLight ), i" R! h; C  [
durch" l  |- ^2 T' J; ^
Code:0 A8 ^2 x5 r  k5 e
void CWorld::SetLight( BOOL bLight )
8 n) R5 k7 m) C* C{
& n$ z( }7 k- \- F1 p4 r8 g        //ACE("SetLight %d \n", bLight);
  S  k6 j# M2 c/ U5 z          j; v9 p$ c. [8 d1 ]
#ifndef  __WORLDSERVER
2 N* C0 \: n$ l+ f: H3 p/ H        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);2 J5 O$ [* V* _# O( N! w9 S+ g8 r
        CLight* pLight = NULL;
2 K) ^) S. u9 v+ e( M* w* a  M9 F; S; @0 k8 c
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
( L2 }: b7 |, m# }- l. b  {
* W  G( i. ^6 H0 h% k! s        pLight = GetLight( "direction" );9 p4 y- t: g  n6 d4 W  s) @& f

; J0 n+ V( F; Z+ X- U" G#if __VER >= 15 // __BS_CHANGING_ENVIR$ a) Z9 Q  w4 G: {* L. T: h& d  f' I
        if( g_pPlayer ){5 u0 V* m9 j+ P0 x6 R
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );$ E4 ]3 s6 o# _; q
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!( L# O; s; Z  ?& T6 B
                {
/ |7 g0 ~2 Q3 x, j0 D                        if( pLight )
9 Q  h( N( \, p% T$ E5 O                        {
& N8 A. r7 c- _. g7 R                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
/ r" x. T* u: I$ `, h9 v3 i. f* G                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];6 S7 E3 M# F; T
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
: P- p' m) _1 u. W& P, g+ g! w% `. E* D  W1 G. v+ H
                                pLight->Specular.r = 2.0f;' D- e  w3 T+ `: t* V) {7 b
                                pLight->Specular.g = 2.0f;& Q2 p1 g7 S$ H! k
                                pLight->Specular.b = 2.0f;
4 X* V, l0 Z1 V        - r/ {7 a5 a7 V4 R/ z
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];# T! c& l3 j* S0 |& m
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
6 v2 K, h& l( j. f( m& V% P: H                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];1 u% z2 E6 B! B# ~
        : ~# b% B( E3 v
                                HookUpdateLight( pLight );
) |& a  J  D7 F4 m! o8 d3 m: ], |/ S& _; Y# ~; b; ^! p
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );0 x" O: p# W1 \3 |; d
                # n) U, |4 l: R# P  h# [& V) I& b8 _! X
                                pLight->Diffuse.r *= 1.2f;
$ N3 l) Q0 k. W                                pLight->Diffuse.g *= 1.2f;
8 ~3 g- b) T5 z) D1 D                                pLight->Diffuse.b *= 1.2f;
% U, x4 b  }' r$ a- L5 D) c* A* n; M: {+ f
                                pLight->Ambient.r *= 0.8f;
- |! B- X5 c, x7 \% ^, C                                pLight->Ambient.g *= 0.8f;4 V5 y/ o4 O" H( D/ R4 Y  a0 Z
                                pLight->Ambient.b *= 0.8f;
9 b+ V: F- m% P* ?/ z       
& w8 ~: @# O9 N, B                                memcpy( &m_light, pLight, sizeof( m_light ) );  M2 [/ J$ N9 E+ v) H9 k

. I  ?( U. t7 U+ D8 c6 y2 u* V                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);3 H) r: M7 a5 l, V, T- V# F. f+ U
                                D3DXVec3Normalize(&(vecSun),&(vecSun));  l( u5 z0 q6 F, U
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 5 v/ K7 D- M- O+ g' Z& O- l
                                pLight->Appear( m_pd3dDevice, TRUE );: o2 [  s5 B9 o2 d
               
2 p# Q( {! V; {, o: @                                DWORD dwR, dwG, dwB;
$ B, j, P& R! i/ c7 w% N+ D                                dwR = (DWORD)( pLight->Ambient.r * 255 );
( m* E! C& r2 Z# _+ l  `* t                                dwG = (DWORD)( pLight->Ambient.g * 255 );  `% i! j7 D3 m% c% X
                                dwB = (DWORD)( pLight->Ambient.b * 255 );: ]* t; M! C. f1 Z
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );2 ]; n+ U+ j) [' F1 R+ U
                        }9 X& S$ r  Z& C! J
                }: L1 U  t3 ^7 m: r6 k
        }
" ^$ j# [4 ~* b9 j( u% L( \4 v7 b        else
$ D8 ?7 X. W* U#endif 8 f3 ]5 b8 Q" P: M$ G
2 {- R* X# V, A) k( C8 G' w
        if( m_bIsIndoor )
0 R; @8 a" W( Z+ E$ ]5 O# S# U        {
  f8 H) x& a  V" Q( K: B                if( pLight )" T* A& \2 k& ~
                {               
  c0 i1 c/ i( P" s' s/ v* f1 C& }$ y                        // à??μ oˉè* 5 d- S* h  {* d
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;/ N% p1 e- r8 k5 w/ z+ x# j
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;  a+ G/ V" H) d, _3 o
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
* A' k! ^9 y8 Z: b! B. K# R5 T, l& K6 W, u  i: l/ `
                        // oˉè* ??à? : A5 h% y& u! q. Y! ]* q; \% E
                        pLight->Specular.r = 1.0f;
7 f$ M4 o9 u, U. t                        pLight->Specular.g = 1.0f;2 n6 c' }: p9 d& N
                        pLight->Specular.b = 1.0f;
1 j5 e  n$ E( [" s* @& b0 G- T                        // àü?? oˉè*
7 O( p1 x2 X3 ]                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
  \0 s, o6 Y! y                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
2 q9 d; o+ o1 C! s7 t$ c$ B, v9 T                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;9 b8 K% o/ h0 b' Z+ c. O5 q& c
1 Z( q! B2 B* A# |9 i4 c( A
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
" a; V+ b# Y6 o6 a5 J) }                        {6 l- a! g( w9 }! E
                                pLight->Diffuse.r *= 0.6f;8 f+ v3 w" @* E% O
                                pLight->Diffuse.g *= 0.6f;, k+ x5 x( N6 p4 }8 U/ `- i. ?) v
                                pLight->Diffuse.b *= 0.6f;, o! Z9 a4 T/ h; y3 O7 J
                                pLight->Ambient.r *= 0.7f;1 `9 @- X7 }; P# m+ `
                                pLight->Ambient.g *= 0.7f;
& b8 m, @1 j( j# r0 P                                pLight->Ambient.b *= 0.7f;6 z& j' {4 n0 \
                        }
1 j! G9 O5 S/ `& Z8 ~/ b. x, I3 ]$ {; W
#if __VER >= 15 // __BS_CHANGING_ENVIR" p& ]; R5 e" O+ ^, o0 [( u
                        if( g_pPlayer )
; Z- c1 g2 a+ y$ s  f' `! H1 j                                HookUpdateLight( pLight );  {4 Y2 B$ Q0 b; p
#endif# O+ A8 Z, w1 s2 x* r3 a4 K  m
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 y% J3 q. S# O7 n: {
9 H. \7 ^+ x, O, M                        pLight->Diffuse.r  += 0.1f;8 T9 w% b, v2 e$ g
                        pLight->Diffuse.g  += 0.1f;
( R, H# |# n) D) `                        pLight->Diffuse.b  += 0.1f;
- J, r- S( }5 i; R; l; L                        // oˉè* ??à?
1 [3 r# E0 D7 s4 N! F                        pLight->Specular.r = 2.0f;* b9 r: y4 q2 R$ o+ R; M
                        pLight->Specular.g = 2.0f;4 G$ [6 s, O- `7 {4 P2 i7 y4 y$ D* `" H
                        pLight->Specular.b = 2.0f;* d) Y8 ]; P5 I
                        // á?oˉ
9 m5 E% N' s: O: N' D8 F# V                        pLight->Ambient.r  *= 0.9f;, f/ _# L4 H' d7 @& C/ b4 [' ^
                        pLight->Ambient.g  *= 0.9f;6 B! P- s5 {, M) F$ e4 Q
                        pLight->Ambient.b  *= 0.9f;: |% o1 S* m' r4 ~; |% k: z) L
# Y5 F& n( j5 ?  Z) d5 B
                        memcpy( &m_light, pLight, sizeof( m_light ) );$ P9 I4 k8 V( J* l+ [. G% B
                       
" u! ~- q" @) |8 n, p+ a                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
7 f- f/ l$ L9 \+ \2 J: e                        pLight->Appear( m_pd3dDevice, TRUE );8 V) T: a& x; w, s) k
        ! t, h! {# N+ v* L; L3 n7 X
                        DWORD dwR, dwG, dwB;
- O* |# ?' _: X3 d$ w1 n                        dwR = (DWORD)( pLight->Ambient.r * 255 );
$ `, y: t3 o$ b% V. G3 U  H                        dwG = (DWORD)( pLight->Ambient.g * 255 );
7 ~) u8 r" V( L" ?+ T                        dwB = (DWORD)( pLight->Ambient.b * 255 );. Q( s% t( N; `! U- ?! J; M9 ?
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );! X; ~  H; Y4 \+ |' I' I' y
                }
# f6 w1 ]) G+ y; Z: P( T4 O9 D        }
1 Z2 ^3 D! b2 o5 u        else
: c: F* v/ k9 [% B. c& x        {
7 t( a( Z, t* Q' s. y                if( pLight )8 a& Q( i/ h0 b# W
                {7 S( z2 x1 p  `& I- C
                ; ~7 y+ e+ R, B4 g! }* L% r  m
                        int nHour = 8, nMin = 0;
( A! }! R4 N3 L4 Z" j" m" m        #ifdef __CLIENT
8 J; |  @/ E' f& g: F- X' y$ o                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 9 O' _* A7 E! q  ]" F8 C
                        nHour = g_GameTimer.m_nHour;
1 i6 E2 O( X3 j                        nMin  = g_GameTimer.m_nMin ;7 P; x" `/ |+ n' X3 Y
        #else% ^9 D/ g- v/ P8 u* e
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
4 i2 h0 K6 z- q& o% o% y! H                        if( m_nLightType == 1 )
2 O3 o( E2 u2 ~! Q                                nHour = m_nLightHour;/ h& G9 s- U" y2 q8 @2 Z% {
        #endif6 n# J3 ?7 J5 W7 g
                        nHour--;
% l$ \2 V6 Z8 v: @! N4 l                        if( nHour < 0 ) nHour = 0;
: v$ c' X2 c, d% b' E4 i+ Y- r1 V                        if( nHour > 23 ) nHour = 23;' w+ v% b# g. ~0 z9 l4 G+ f

4 c- O, [& D) @2 @4 f' ]                        //if( m_bFixedHour )8 ^3 Y( A/ x6 x
                        //        nHour = m_nFixedHour, nMin = 0;
/ Z/ _$ s( P/ Q$ }, u                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];1 D" D& S2 O: d; H. @
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
5 x4 o5 ^. i, N4 }
  L- c6 z. h( c( D' j                        //m_lightColor = lightColorPrv;
" v9 e/ }$ L. s! w2 p                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
6 f0 L% _; _% s+ Y' c- o6 ~7 s                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
, n% N6 F# q- s3 e' C                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
& W. s5 A6 i! z2 q                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;9 s9 [. u1 r- F
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
2 n: a8 A5 L7 U7 h: F                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;9 C) f% p6 R7 Y$ l5 P" y& s% I: }# `
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
5 r! k' I% @8 D$ u- x" I+ b, i  t1 }
7 `2 j  H& A# E6 K                        // à??μ oˉè* + g5 l# K# y' L' R3 f- @) v) D
                        pLight->Diffuse.r  = lightColorPrv.r1;
9 {& M6 ?, v" r8 q0 Q2 z                        pLight->Diffuse.g  = lightColorPrv.g1;8 h8 M5 k3 T) Q+ F; n9 e( m/ ~
                        pLight->Diffuse.b  = lightColorPrv.b1;! M& s/ r' `- X& f* l2 t% L
                        // oˉè* ??à? / f" D7 ^3 s) h7 `7 D
                        pLight->Specular.r = 1.0f;
& Y& f3 w. X* Z& I; }                        pLight->Specular.g = 1.0f;
( p8 P  E; I+ P+ T) I+ s$ `                        pLight->Specular.b = 1.0f;
, m" j. T, \- c/ w8 ]3 }5 k                        // àü?? oˉè*
# i* j5 U/ w( r0 z" ?                        pLight->Ambient.r  = lightColorPrv.r2;9 c9 c, |$ v& O& y5 R5 j
                        pLight->Ambient.g  = lightColorPrv.g2;2 \6 T% a$ E. b
                        pLight->Ambient.b  = lightColorPrv.b2;8 H) A; Q- N# A% k* t9 a5 O

: a9 O$ V3 z7 i! }                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ l! {' v  N5 B  ?                        {
3 \' y" I% K1 [% S5 x                                pLight->Diffuse.r *= 0.6f;* n7 j  T6 Z  q  \) M
                                pLight->Diffuse.g *= 0.6f;: D1 R2 Y5 x' H) _$ `* f" {
                                pLight->Diffuse.b *= 0.6f;
5 m) A! R: T, [0 h: g, k                                pLight->Ambient.r *= 0.7f;3 @$ O0 Q0 Z- [0 _, Q1 v! P
                                pLight->Ambient.g *= 0.7f;5 j, d9 j& }( n, a* ^" C
                                pLight->Ambient.b *= 0.7f;0 [# x+ L- Z. C4 b" u  R
                        }
# b3 z! g: f# M4 W" d! ^                       
- i, r+ A& ?8 Z2 x; U#if __VER >= 15 // __BS_CHANGING_ENVIR# b# J- ?' K" Y
                        if( g_pPlayer )
- F. F8 ]: H6 D2 ?4 ^8 N                                HookUpdateLight( pLight );
; i! w+ }% p4 Q#endif
2 M1 b2 J% z7 K; I, E& o- E                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. H* B$ F! b# `8 N9 E0 R- @/ @
0 f' K  q4 e" Q7 S; b#ifdef __YENV7 ]: G: n+ \  W/ _0 A) r
                        pLight->Diffuse.r  *= 1.1f;- ]" c5 q' p$ L! U& [+ C
                        pLight->Diffuse.g  *= 1.1f;- _% h1 G$ h, y& k. a2 m
                        pLight->Diffuse.b  *= 1.1f;
8 F# F* Z8 p* m( j9 w                        // oˉè* ??à? - X2 D2 Z# U: R6 w: `7 m7 b* |
                        pLight->Specular.r = 2.0f;
8 z1 s: ?" c& F2 M5 s& x                        pLight->Specular.g = 2.0f;& o, C5 k: U7 n: p; G
                        pLight->Specular.b = 2.0f;- u! `+ H6 p0 P0 W
                        // á?oˉ
- e, q: H( D' o, I0 W                        pLight->Ambient.r  *= 1.0f;% z2 {  u2 X' k  A
                        pLight->Ambient.g  *= 1.0f;
' r( I6 U" n3 X; r0 W, Z2 T                        pLight->Ambient.b  *= 1.0f;
( d! O! y$ I# B: Q  I#else //__YENV. P0 k3 L# U" J0 D: I
                        pLight->Diffuse.r  *= 1.1f;6 x) {0 c( D0 U8 n8 _
                        pLight->Diffuse.g  *= 1.1f;
. P, P; a6 N' B2 k% X                        pLight->Diffuse.b  *= 1.1f;
) y% H9 @( Y$ m                        // oˉè* ??à?
* F/ V  ]0 }0 Q' X( o                        pLight->Specular.r = 2.0f;0 o4 m; {8 c7 O! J& d
                        pLight->Specular.g = 2.0f;1 O4 u: M# @5 `! \$ g: K: `
                        pLight->Specular.b = 2.0f;  W' Z7 K  v& h- u( ]
                        // á?oˉ
: W% C( G& w, n4 x( c+ s* H                        pLight->Ambient.r  *= 0.9f;1 u1 e- {( U8 Q" f; I' {
                        pLight->Ambient.g  *= 0.9f;
) z) ~, ^& u) C& y5 M, W                        pLight->Ambient.b  *= 0.9f;
6 ^1 d0 i/ v3 S% J! P#endif //__YENV 6 N# T' u( m# D% U1 O4 y
                        5 y  b* C8 y$ c$ A! [' Y% J
                        memcpy( &m_light, pLight, sizeof( m_light ) );$ z0 n, T0 n& D1 m! f+ {$ n( r1 y
                       
, |- m, F2 h9 m7 ?, d2 S; o                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);4 {8 b2 f. H/ K- ^3 \" G1 P
                        D3DXMATRIX  matTemp;2 ^! G5 u, ?4 D0 w4 a
                        static const float CONS_VAL = 3.1415926f / 180.f;
" k7 f1 @) \+ D3 F  P* [* T5 a8 z# d  H9 B" ?( a; K: K
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);! T! T, u5 J5 `! b% w. u$ G( O
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
1 n2 Q; }' R2 X7 b8 i9 K. P                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 3 p; y3 x5 P' u9 g4 B
                        pLight->Appear( m_pd3dDevice, TRUE );8 H1 _2 m% f" R' F  O
) Z% L% n# M7 r/ H2 o
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);) r8 G: O9 x; f. p! d; V
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
9 J5 D7 B; q6 I) v, K+ W                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ( S6 t8 F0 D' `/ N  P
5 W5 `, u5 K5 K5 }, {
                        DWORD dwR, dwG, dwB;
. l5 ^7 S: B3 u# ?# _1 f                        dwR = (DWORD)( pLight->Ambient.r * 255 );6 [$ M+ f9 H. B
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
+ ~/ _# F) Y9 {' H                        dwB = (DWORD)( pLight->Ambient.b * 255 );
. S$ X3 k$ t0 z& N6 A3 T5 t" q/ d                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
* y" x" I; e. r6 N3 ]. Z: o                }+ h& s+ K+ c7 Z( r; G! U
        }
3 P  w" M: o  Y0 k1 O. }  N3 E: ]3 Q2 i3 X2 X4 I3 C
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
; V; h% h7 s, g+ Z0 T        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) );. M, N# P1 i+ @5 c7 J7 o+ T
        ::SetLight( bLight );2 h7 W2 O% Q0 O2 P6 z4 i- x7 C
6 m* X; Y. v' _
        // ±ao? ?D?í???ó á¤à? . z# j  e2 `2 k" c' ?1 c
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
( G/ P$ V5 f1 G0 \! f" Z' q       
1 B- a& q) ?# J: Z- y( o/ ?& A#endif // not WORLDSERVER
7 d+ j! g: @+ r! r5 _( I}
% ]6 ~$ G3 N# J' O: c并更换( A0 E1 R, `. C& p
Code:
" Y* m; m: K" i__FLYFF_INITPAGE_EXT
3 X' [0 {4 ~/ x定义8 e; a- T1 Q( W2 y, u4 O$ W
( P- \& L& G9 D: G6 k2 V
7 w* f% f/ d+ O2 B- c
& W0 N+ O: V( s3 W1 ~0 L& }
& m1 v7 N/ _6 K4 L% @- L5 R
现在终于删除我的狗屁加速...$ U  ^) t! o3 ^
0 E3 C1 T' O( {2 p4 C
# y0 H- w2 l$ u6 z9 x
' ?6 E6 q7 D6 \  F





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