飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
+ ~, p3 Y- J2 G尾翼:8 `  |' `$ K2 ?( b
* g, _0 I+ K. Y0 W* T  y1 S+ v
代码:
# {' l4 O3 r" e# c. J6 }% FCWndAutoFood::CWndAutoFood()
# f, S9 v- e& g2 x, n& u{
7 N/ `1 g1 S- M% ~# ^) n$ k( {        m_pItemElem = NULL;
& M4 H/ p& P! @, N        m_pTexture = NULL;
) h6 @; N+ \- R4 x  C5 W( ^; J6 U        bStart = FALSE;
5 W% @5 U$ ]9 w9 f}( F2 z+ j* {3 C" H+ ~6 g1 q) h7 Y: o
; W$ V) C* n) c- n& ~# a1 A# [
CWndAutoFood::~CWndAutoFood()+ O" H0 V4 }! r
{
5 u3 b" w7 f& I0 w: ^/ W; b! F        AfxMessageBox( "AutoFood ist gestorben " );* b6 M9 ]  m4 F# ?( J4 V, X& B
}
7 E9 J1 q/ W! o0 J+ m* J* z5 W7 QBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType ); o4 j& d' s0 ~
{
: `3 L& ^; n* }/ S6 S! a        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
& G! q6 D) d, g' O}" U6 q5 R" {9 I, u

- s% J* h" g! W0 |- q' hBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )( R$ V# z* y' [; `/ m: e# N
{
) O( l" T+ F7 X7 j# t, E        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 z/ j1 @, |6 l7 b        CRect rect = pWndCtrl->rect;" A. Z) F- l& z2 S+ U' k1 {
        if( rect && rect.PtInRect( point ) )
  K# \" S. q" m8 l1 i0 H7 U2 ], H6 P        {
+ Z- X$ R- }; e( }& F8 R                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );7 F' }+ @* Y! N5 @$ {3 u9 [4 @
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
) w+ b  _. j: s                {
+ L8 j6 m! o' R9 v                        if( m_pItemElem )
, j7 d; A, X* p                        {6 }) d# B8 c. Q
                                m_pItemElem = NULL;- _. K0 {7 U* W1 n2 q! j
                        }% [+ m3 c( @% B1 g: [. b! C+ O
                        m_pItemElem = pItemElem;
0 k8 g! ^% D3 K2 t                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
$ x1 z2 V! s: n/ T                }else{" V$ E! D8 I) [0 W
                        SetForbid( TRUE );
/ |7 I5 G' ~, s5 E                }
6 H6 C' P; X. K" N3 Y/ W        }else{
2 B; g& T/ {2 d                SetForbid( TRUE );
) V; `8 t3 ~% i        }9 d: H: c8 \& [+ Y8 r9 T- F
        return TRUE;
& s0 i/ I" I6 f; j+ _}" G5 z& ?8 L6 P- A. U4 `9 D

% _8 `( P! f6 w1 q4 Z. CBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
% B/ o0 `  F; z5 L* T{
; x. d: d7 }8 ]* P" x        switch( nID ). |/ S- n0 r6 s1 A6 Y1 ^9 c* F
        {
0 \- |& x: A) g* }' Y: d        case WIDC_BUTTON3:" d; `$ ?$ r$ \" [/ f
                {
% n' K! a1 E  e" f, v                        bStart = TRUE;+ K8 Q' ]" i  u- Y( {! k
                        break;" y5 O( |3 v5 n' X( i- J  O
                }
  ^! V2 ^" G+ A, s- @; {9 i        case WIDC_BUTTON4:7 q( S- @( O- W
                {
& [7 z+ O+ J6 Z( L3 M; T                        bStart = FALSE;9 i1 z. X6 c% N5 g* ?4 N
                        break;
# \2 x1 d/ n# \2 R* j& H9 A                }
2 m' ?9 W0 y4 e. E- m5 D+ L  H9 ]* c! ~        }
3 m1 Y+ F, Q) X6 q1 ^. R: A) {        return CWndNeuz::OnChildNotify( message, nID, pLResult );9 F; V+ K8 N% k
}       
( `' x6 ]7 A1 `' R- gvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
4 a: m0 P3 T7 g{
- U6 l6 ^( P- a7 M4 ^( t        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );' M3 O- Q$ Z0 G; Q5 g
        if( bStart || !m_pItemElem )
9 p$ K- R) t* e; y) L        {
: Y, w1 D7 s2 R8 c' M+ W! ^                pBtn->EnableWindow( FALSE );
/ c/ ^) |' G; c2 d1 V8 k( E3 @        }else; u0 y$ P7 a5 v
                pBtn->EnableWindow( TRUE );
* e# M3 o0 Z) o# [6 Q        if( m_pTexture )
! v% _8 E- q+ a: b        {- l1 w' e( H" v( w/ w* K
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
$ b3 y! G) [5 w0 M7 G8 b                if( wndCtrl && wndCtrl->rect ): l, {8 f  V& v' U# G* @& Y0 K
                {
" P5 q* d& L$ c                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );: S: c8 [+ c4 i& v8 C: c
                }6 ^5 @8 S- @9 f  ]( q- v4 k* a# J3 I
        }% Y+ H& \; y; N! Z% [; @& Y6 s" A% A
}
  Z) k3 N2 F1 {3 l
. g8 _5 r, h, Q& R: H! P0 `BOOL CWndAutoFood:rocess()' `. S: b, A) W! r/ F, K
{
. U" I, T1 a) t4 a$ f- W. f        if( bStart )  T- t/ |5 `. t9 n+ g
        {% v5 m# n6 p- T# ~
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
6 Q1 P$ L9 l; G2 l) i: J: t                {
9 c8 X8 h- r) q% `4 n( H: {$ y                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )& f; Z1 m6 V* E6 }4 |
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
5 E* e, U) i7 p                }else{
2 G+ n" c3 Z' o8 I) J) ^                        bStart = FALSE;4 _# @% X$ r$ Z' }
                        m_pItemElem = NULL;
3 [7 I& j: F& o                }7 V! J- ~1 ?$ o7 v* z/ K% D) `; m( [
        }
1 F$ _' O; F. P9 y5 M. V9 f        return TRUE;) H- i" J; M8 L5 G8 ~: ]
}
# u; |$ ]4 e! w
- n# a3 y. C9 [) [" D登录视频废话:6 `7 @; [' I( }4 v+ O$ |0 l
尾翼:$ B9 l- Y5 i9 N3 o: t$ [, Z

, `9 S% [: x+ _$ g* _代码:/ \4 w- b8 t" }) i* M
; X4 o1 S7 W( a; p
void CWorld::SetLight( BOOL bLight )) G. t' ?  f# C. h$ ^" J9 e$ J% S
durch
% Y; q  ?$ ?5 P% {0 I( BCode:$ q' `" m8 O+ {
void CWorld::SetLight( BOOL bLight )
$ f3 ^$ A, p7 I' g4 f4 |' Y; y{: h1 @, d/ i5 A" T" i
        //ACE("SetLight %d \n", bLight);
$ d# o) v- C5 b* w7 H       
1 U; w6 V$ d! h" i, @#ifndef  __WORLDSERVER 0 i1 S8 H2 G% u# m: ^
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
9 {- D4 W) z% J' p0 l3 ]4 l        CLight* pLight = NULL;$ a8 S: z: ~9 O# R

2 _0 ~9 z0 r2 l$ k, {. N        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
4 J0 p2 N2 B: ~5 w* V, D
3 |8 `4 L5 \) G1 Y- Q8 i9 Z% A        pLight = GetLight( "direction" );  |2 G. @; M! t( g# B
% O6 E$ B- R8 k; S9 V; W* x" a7 w  ^
#if __VER >= 15 // __BS_CHANGING_ENVIR
8 R* ?% U: V) D# J        if( g_pPlayer ){
& O5 F8 [8 L3 v! ~                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
4 i# R" c0 U: H: V' o  N. X! }3 ]1 X                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!# e& A6 c* }1 k! ]
                {8 G; `: p+ I  Y$ K5 `6 f
                        if( pLight )# u1 `/ i' l  _* Y! R
                        {8 a8 g7 ~" W) [
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];) g0 U. e. o" e  B% B5 g
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];, Y* Q% q& W9 Q: J' K
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];8 q* a- [. Q5 g
4 B9 ~% ^6 H( p7 y
                                pLight->Specular.r = 2.0f;; S8 e% |! k. K5 A5 \! [/ K* a7 z9 b
                                pLight->Specular.g = 2.0f;
5 n; {: q+ T: ?                                pLight->Specular.b = 2.0f;; z) x/ N" \' S( f; @8 E$ L
        . x2 c, a+ \$ u" c; g
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];7 v1 o- T: T) h
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
9 S; p' f% ?" j) f$ g, J                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];  G$ D: N' z- Y3 ?& s
        2 P: e: ^2 j2 a, B
                                HookUpdateLight( pLight );
" K2 |/ J9 U+ c, r7 R, @: Y9 e3 r. e! g. G- @3 b( _6 C3 R
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 T2 v3 w# g7 E2 Q' \; D               
- J% M& b7 P  A, r0 d# w                                pLight->Diffuse.r *= 1.2f;
7 D7 \% h6 f4 X                                pLight->Diffuse.g *= 1.2f;
3 ]5 O' c' G7 b4 T2 y                                pLight->Diffuse.b *= 1.2f;
7 t9 l2 j* J, r( t+ i7 l' h
; ^! _- M! F% t: |( Q                                pLight->Ambient.r *= 0.8f;
& K" @: m; ?0 a                                pLight->Ambient.g *= 0.8f;/ j3 u% U% S+ m6 T% U2 v
                                pLight->Ambient.b *= 0.8f;: J1 I+ R6 b  L6 m" S5 f- L
       
2 `% I  v0 N4 r* e" b5 |2 h# k                                memcpy( &m_light, pLight, sizeof( m_light ) );
0 i8 n: L& C# w: c. }3 }; j1 i7 B& @0 J- A; o/ y" I9 q- n5 N
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* i7 a1 `1 m2 I  a. D% d0 m0 j                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
' l, U( ~5 j8 y2 ?# K( ?8 w                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ ?3 b1 [' e: i/ q6 M                                 pLight->Appear( m_pd3dDevice, TRUE );% x6 @" {6 ?; w' Y" z$ h* k
               
( d3 F9 u  D5 E" f. s: [                                DWORD dwR, dwG, dwB;
% ]3 m; o3 b& q( g) ^                                dwR = (DWORD)( pLight->Ambient.r * 255 );, g9 s: V: N/ X4 A8 }$ @; Y
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
8 t! z6 y! f4 ^1 W! c                                dwB = (DWORD)( pLight->Ambient.b * 255 );8 R+ e1 t) _2 C8 |! ~4 B& i
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );  a. Q- ~. y0 n. U4 |3 U
                        }2 W4 w3 a* N  c( K
                }
8 ?# @" Q- q% T8 ?% E( m        }  Z6 d" Y0 ~! \
        else
2 `, i* y% @- x! X; c" p#endif % s9 v; K& g" j, h: p! ^7 w
4 O% @) B9 y: j7 U+ @
        if( m_bIsIndoor ). }, Q0 i/ a7 n  Z- c
        {
  [$ I5 R# `% `$ Y! M                if( pLight )* {5 W+ t( a! e. L) j5 D0 k
                {                1 E. V6 ?  P/ A8 s+ k4 {
                        // à??μ oˉè*
0 S) N# `; ]% y- j% K                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
" R# M# u7 g: y2 _                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;" f5 D0 `, ~% s
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;! k& u8 P/ D- g% i/ O; ^! ~; U, p

# k6 L& i) M; h" C1 ?                        // oˉè* ??à?
2 z2 W- P6 [! w  t8 [! S                        pLight->Specular.r = 1.0f;
; i; k" r* R. e$ a6 w- ?                        pLight->Specular.g = 1.0f;
& x# Y! c0 W; d                        pLight->Specular.b = 1.0f;3 |! y. O) \3 ^
                        // àü?? oˉè*
9 Y1 |4 s4 `) r( q, J                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
# C$ M5 A* ^5 l/ H  g1 M9 _                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
9 g1 f, \7 G2 ]/ o' c4 Q                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;& q# T7 ^3 w5 H6 g) N+ Q

% l" n3 M' Q, M$ P4 @( Q                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
- w5 K7 B7 M) Y( H) u3 v' \# {8 I* J                        {
4 w9 N3 n+ O- L3 d" r0 E. q4 ^. n' \                                pLight->Diffuse.r *= 0.6f;
3 V( F+ [& H, }+ C7 O& i6 u                                pLight->Diffuse.g *= 0.6f;% y' ?0 k2 f1 h! T: H. y+ M
                                pLight->Diffuse.b *= 0.6f;
+ v8 O1 s: Q! x0 S& ^+ e' E* O                                pLight->Ambient.r *= 0.7f;; D, W! i( U# s
                                pLight->Ambient.g *= 0.7f;
5 Q& b2 E# _9 x                                pLight->Ambient.b *= 0.7f;1 a  D0 R( }4 b8 b! q$ T
                        }
% {: O. j8 R1 q7 _" T
# [& [4 a% A$ B#if __VER >= 15 // __BS_CHANGING_ENVIR
  ~! L/ ]$ {' K4 F1 Q% k' Z9 t                        if( g_pPlayer )7 p, z7 t! r* l. S
                                HookUpdateLight( pLight );& h$ D' q' Y7 [5 F9 t8 N5 F' C
#endif
& q! L! Y" P/ l% p                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );3 Z" W2 |- D% Y, O/ i

  ^( _& \% d; w! j9 f                        pLight->Diffuse.r  += 0.1f;
& `& z  \2 b9 y8 L0 s                        pLight->Diffuse.g  += 0.1f;0 f& k' x  H% k! p. ]$ F8 I' N
                        pLight->Diffuse.b  += 0.1f;
: e  d; b$ D- Q* l4 `$ {" I3 h                        // oˉè* ??à?
# A1 e! H% {! _, }% T3 W% ^/ w                        pLight->Specular.r = 2.0f;
! E; z/ i: V7 j2 F- u& ^. k$ C                        pLight->Specular.g = 2.0f;+ y4 x/ h8 M! o
                        pLight->Specular.b = 2.0f;
. V0 @/ Z8 ~2 W  u  z5 Q                        // á?oˉ 9 o  _! J6 x. ?& J0 H% r
                        pLight->Ambient.r  *= 0.9f;
4 b) Z) [: p0 C. F$ k: t, ]! q                        pLight->Ambient.g  *= 0.9f;4 x2 |1 B/ _' k& h, ?" g; E" j
                        pLight->Ambient.b  *= 0.9f;
0 P. a7 c( _) h' o3 p! c# L4 X; V! a
                        memcpy( &m_light, pLight, sizeof( m_light ) );
% k/ \. v' I4 q  c& \                       
, ~# q+ _- t) T. U" c# ?; K                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
! V* K" x( [9 Q2 A: v                        pLight->Appear( m_pd3dDevice, TRUE );6 W* ^( g; c7 w, V* t& l
       
+ y) `% \0 P! e3 Q1 _9 L" J/ V+ F, I                        DWORD dwR, dwG, dwB;: n4 V1 k, l5 H$ T3 s9 v
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
: R9 @, s0 X4 p* i                        dwG = (DWORD)( pLight->Ambient.g * 255 );- j, ~7 _  }; v# x
                        dwB = (DWORD)( pLight->Ambient.b * 255 );* Y, a/ @. k5 K7 u; r9 N
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );3 P" T8 Y  F. z# i
                }. D! k( T* \* [& W
        }( C' U- R- P6 }
        else  a/ {% d" S. v& B" t
        {8 k+ \8 W4 n+ n
                if( pLight )2 a( T9 S8 u; C
                {9 i# f& I/ y: e( O+ O% s( {. j" X
               
9 |8 ~: J2 K  a& |( V% m0 J                        int nHour = 8, nMin = 0;& Y0 j; T! K5 e
        #ifdef __CLIENT
: ]: M" `& F) a% F) I; R, M5 w* h& E                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. $ b6 Y% w, @  y$ ?6 W/ n
                        nHour = g_GameTimer.m_nHour;; }9 ^: k4 W, v0 w9 C1 P! `
                        nMin  = g_GameTimer.m_nMin ;
7 |! c; A8 ^4 `7 w+ L        #else
/ d, L0 |# b8 [  \6 m4 q  ^* c                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
% n% o  @4 @: P; y                        if( m_nLightType == 1 )
; [& Z* S0 u8 |0 A                                nHour = m_nLightHour;$ B1 H$ y, E6 Z: d# }1 z
        #endif
0 C+ k: ?' w5 W                        nHour--;7 L/ _, c/ C3 L6 ]
                        if( nHour < 0 ) nHour = 0;& s& R# r+ E/ n% i' Q  ]) m' v& R
                        if( nHour > 23 ) nHour = 23;0 ^1 y* u: C& s
- E2 X% _8 r" _1 Z0 H
                        //if( m_bFixedHour )
  }; Y. k( @  B! {                        //        nHour = m_nFixedHour, nMin = 0;8 L" R0 o- Q- f! O7 O
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];  F8 ~7 {4 C7 h" B5 v
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];6 p1 U, N; G' R( r* H* k7 G, `
# E6 e$ @- i" Y
                        //m_lightColor = lightColorPrv;, D: J9 i. M( I0 n; ]
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;  `! Z2 N  L( i1 g; Q
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;8 C& n  K3 ]2 ]- C9 |4 K
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;( h! m* u; a( Y5 U! P
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
) C  l+ r2 m" u' C1 v                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
+ X2 [. L# B* ?                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;0 P0 Z$ O& h2 P* ~. `( M
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
" ?/ y2 n* S' f7 j; e( @5 k9 P6 n
. \4 r  o5 o3 x+ E! ^' t                        // à??μ oˉè*
* M/ W! c" O* L, V7 b) s; X                        pLight->Diffuse.r  = lightColorPrv.r1;
. d0 v$ y' W! Z4 L  M" A                        pLight->Diffuse.g  = lightColorPrv.g1;9 D! Y1 t( a: f: Y  `7 e
                        pLight->Diffuse.b  = lightColorPrv.b1;
8 @+ s3 e2 j1 e, y; [" S; K                        // oˉè* ??à?
& R0 @. p4 y8 W9 L                        pLight->Specular.r = 1.0f;
# E, [3 `) ]' q% e                        pLight->Specular.g = 1.0f;2 H5 w' }0 f! c% F# Z
                        pLight->Specular.b = 1.0f;
9 l7 p4 V1 I) `' |                        // àü?? oˉè* ! v" k! i  F3 e1 K3 R
                        pLight->Ambient.r  = lightColorPrv.r2;) e6 E. ?- N; k) W, U
                        pLight->Ambient.g  = lightColorPrv.g2;
2 @: p( |4 s' j                        pLight->Ambient.b  = lightColorPrv.b2;
  e) x; i6 }: t" q- E6 D
0 j  \- M, T9 C                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.* A2 R4 m& ~" v: U- {1 E$ T
                        {, E7 N+ b- D, i
                                pLight->Diffuse.r *= 0.6f;
3 U6 ]9 u' u* w                                pLight->Diffuse.g *= 0.6f;
) x$ p& e: V$ T/ x                                pLight->Diffuse.b *= 0.6f;0 M5 ^! M0 V% t; R  b1 Q
                                pLight->Ambient.r *= 0.7f;0 ^* w) o% t7 U2 r. C2 ~9 |
                                pLight->Ambient.g *= 0.7f;6 X. `+ q1 W: a  Z/ X& L
                                pLight->Ambient.b *= 0.7f;. m- v. {, _: r& n  j
                        }
5 w. [: i* H- F                       
/ c0 d+ T6 D/ `/ ^1 e+ v1 Q#if __VER >= 15 // __BS_CHANGING_ENVIR
/ `" f( P: d& \                        if( g_pPlayer )
* \. L6 h4 N: v6 T' D: c. |                                HookUpdateLight( pLight );   T( [, d- V% r: t
#endif
0 S& A5 c- @1 n8 \( H                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& q! Z* d9 \$ Y% z  `2 }& G
# g1 {: c" a9 K/ B+ {( Z0 l#ifdef __YENV7 A: o- n, \0 f7 ~0 ~" B
                        pLight->Diffuse.r  *= 1.1f;
2 {* p  q* n* s% K                        pLight->Diffuse.g  *= 1.1f;
4 {5 E5 H9 k- V! V                        pLight->Diffuse.b  *= 1.1f;
* X9 q# O: `7 p. ]  x# K# P                        // oˉè* ??à?
& r# M8 A6 b: G( s. @                        pLight->Specular.r = 2.0f;; s7 s. K; {1 d% E, t
                        pLight->Specular.g = 2.0f;& Y" t3 m- F4 f7 u# K3 w
                        pLight->Specular.b = 2.0f;7 ?6 L" j5 o6 U4 H" S7 Y; [0 [5 E
                        // á?oˉ
# C, {0 l$ e* ^1 n                        pLight->Ambient.r  *= 1.0f;
8 p3 a4 n$ z" Y; ]3 G( \                        pLight->Ambient.g  *= 1.0f;
2 q  ]  Q% W: _  k% y. e. E                        pLight->Ambient.b  *= 1.0f;1 k  e- b/ j: x
#else //__YENV
$ A5 P- e3 w) c8 i! O0 Y                        pLight->Diffuse.r  *= 1.1f;9 o8 X( V) M' m% d
                        pLight->Diffuse.g  *= 1.1f;  J: j/ T/ x! T6 }6 T
                        pLight->Diffuse.b  *= 1.1f;
9 }+ q4 C% T# r# f/ p. [- @, }                        // oˉè* ??à? ! [6 n' h5 D0 e
                        pLight->Specular.r = 2.0f;
$ \1 ^9 k: d" T, u: K2 T. F                        pLight->Specular.g = 2.0f;
% _" y+ S, ~9 K& Z                        pLight->Specular.b = 2.0f;( u: u5 v5 r% _  P
                        // á?oˉ ) ~" T, ^3 j9 y, m9 L3 q
                        pLight->Ambient.r  *= 0.9f;
, w- d8 J: I. x7 F                        pLight->Ambient.g  *= 0.9f;4 }6 H' `; G1 ~2 f* L3 t- e
                        pLight->Ambient.b  *= 0.9f;
3 H* h1 N2 X2 X1 F; k#endif //__YENV   d8 ~$ E& j4 }% t/ [) a3 O
                        # O- ~5 z/ I5 x1 H2 Y9 a
                        memcpy( &m_light, pLight, sizeof( m_light ) );3 h) Z* p. j( F# k! e$ C) ^
                        5 D' h, d! r$ S& h) }7 z
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);8 d- H' f# I( T5 `3 _' m$ J! Z
                        D3DXMATRIX  matTemp;
1 c$ u8 t, j, a- ]/ m5 t                        static const float CONS_VAL = 3.1415926f / 180.f;
: @$ w7 o6 ?3 L) Q  Q7 [/ g0 O! s$ e6 `% q0 z0 b) O
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
5 {( a$ j8 e& q; a# i7 G7 d                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);0 b4 P3 J2 X7 K! |: M- K3 x
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
8 f+ D$ Z% P$ ~& `$ `5 h                        pLight->Appear( m_pd3dDevice, TRUE );- V+ d1 m) c* e6 f

9 t; d/ M) x8 O; ^0 T3 u8 E6 r                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);( x& c% c% f# l4 ]* |
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
# z4 _9 d% |7 E; L5 V                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); % J; o8 |* ?3 D2 W3 T, C
, \# H, h; j. [8 V
                        DWORD dwR, dwG, dwB;
, {& C8 h* v# V  @0 k                        dwR = (DWORD)( pLight->Ambient.r * 255 );
* G6 D' C8 s# v+ S$ E2 S9 c                        dwG = (DWORD)( pLight->Ambient.g * 255 );
; o- O' [5 z6 u2 F3 @7 _5 h  i                        dwB = (DWORD)( pLight->Ambient.b * 255 );
4 s* v2 g+ B2 c) q. t& Y1 C2 y                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
+ B5 t3 Y; b' v+ T% ~; F                }( \  `- ?) F3 u$ B0 m$ P4 w; |
        }& \; F! I4 I0 Z7 f, p" i7 H

/ n5 E1 _( P/ c% ?8 h: w/ G0 \        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
! z- p* L: s" Z4 y' B        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) );: g9 @) G! t7 ]
        ::SetLight( bLight );! R3 k$ p1 B1 u& D* o% k

/ f$ R4 V% q5 [' c        // ±ao? ?D?í???ó á¤à?
7 o, U; k9 k1 K2 [- \        m_pd3dDevice->SetMaterial( &m_baseMaterial );; l- \: N# A" B, g3 D
        4 U+ e/ O+ f0 x4 o8 ?4 k
#endif // not WORLDSERVER
0 ]% J6 W; L3 Y+ A. g# S}
( b  T( P7 d! Z1 k: E并更换9 e' j+ ^# R7 p$ f) t6 j
Code:
+ ?6 D8 b( z) Y9 R0 J5 b__FLYFF_INITPAGE_EXT' K# P- Q$ y5 g/ |. k
定义
. b% F3 g# Y5 U$ n9 y5 y7 Y. f# d7 F5 A1 r0 s% i( E7 C7 P+ M
; s8 E0 q2 R, G
9 |# [, F  l9 J6 n! {
1 P% ]* b, `7 d3 o
现在终于删除我的狗屁加速...7 ^, m5 Y, P& l$ _: J

% \* B' B! O9 }+ A% ?9 r4 Q
2 b  Z, {5 N' M* r( i* v
" S6 H' a- B3 w5 t5 F( p




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