飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:. q1 S) C  Z' r. m6 ~( [
尾翼:
( f8 N; {6 x: e  a; j/ X! h, ?3 d+ U9 C- z* g9 w0 b% D! Z! z2 l" q
代码:
9 W4 n3 @5 j; t, C" PCWndAutoFood::CWndAutoFood()+ m# O9 V! F/ o  t7 [: `3 I
{# \4 [1 K, D3 t" Z# o
        m_pItemElem = NULL;
5 e( p8 W% n/ a# {        m_pTexture = NULL;/ i, S( l2 ?" \# O' {
        bStart = FALSE;1 c& |8 k9 {# m% d1 q2 ]' {& x" B
}
4 N5 O5 i  G6 V" `0 E$ @$ H, |4 M3 V! @9 L: `
CWndAutoFood::~CWndAutoFood()
! t8 F& W7 C* E% A{
, }' f9 @0 w0 H$ u! _$ D. P: L        AfxMessageBox( "AutoFood ist gestorben " );9 f' q: g+ K! J1 y, c# x% B) p' k
}% r2 J+ Y' _1 j6 l
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )* [' m' C6 F$ n8 ~" q8 _% |
{: e# P0 G5 }3 h0 M( b3 V8 i
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
( U7 b% [. \- {; f% A, o}
' K" P6 G# ~+ A: N: e
& K6 x: W9 Z3 b( }BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )9 L) S0 }; g+ X* Z6 a/ b
{
! i. {6 I( z" F6 r        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# _6 [; S  A9 _& |        CRect rect = pWndCtrl->rect;
0 p; U8 r( f- r" W# o) {1 u0 V        if( rect && rect.PtInRect( point ) ). l$ U/ L& F5 i& v0 k$ A
        {
6 H2 e% ^# R  W/ @  ^                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
5 z+ Q' C7 p; ?$ m6 _                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
1 d; Z$ L4 `& R, Z5 M                {) G* h- D  _, T* |5 [5 }
                        if( m_pItemElem )
" S3 {9 c# b3 e9 z/ r7 t- ^& U/ t2 W& {                        {
4 g0 a/ n6 ]* o3 y/ `& {1 l                                m_pItemElem = NULL;/ @2 h4 Q! I) a- u' f+ M& m
                        }
- U* f, I1 |; C1 l  R6 y3 e                        m_pItemElem = pItemElem;3 t. T1 c1 I0 O/ R  f% l3 v+ H
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
! l" Y# f3 ^1 w7 r" }6 q                }else{. h# A3 J& w6 ]7 f; L0 z9 {# ?
                        SetForbid( TRUE );
7 J. c8 M& j/ B* D/ d0 U7 Z5 [2 H                }% }* ^. u5 {1 z
        }else{; b! b$ s/ c! D- e% }/ z* C
                SetForbid( TRUE );
1 ?$ y' s3 P0 Z  G        }3 D4 ~) A) o. b. Z; |7 v/ Y
        return TRUE;! _) W% N# i) _% C. k
}& j" g% g/ _8 a5 ~& l6 [* S' |
( R+ I* x% D6 V; ^6 P0 p: S! {6 P
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )$ k" L4 ~  ?' Q8 m, X
{7 i2 X3 z  Q, W+ Q
        switch( nID )- I0 }% u' Z  v
        {
, p* b$ ]  r/ u& V! b) `7 o. [3 `, s        case WIDC_BUTTON3:
4 L2 Y5 ?! b! b                {8 C; l( k. H, g
                        bStart = TRUE;6 q" O. M( e* W) I
                        break;
2 D5 ?) h3 D# K. M( i9 ]4 B/ S+ V                }4 _0 Y# ~7 `$ }2 ~, k. x
        case WIDC_BUTTON4:* @/ I) N3 E* B. `
                {
9 e1 ?: h" T5 B                        bStart = FALSE;4 U' w) a9 [5 F" S  ~
                        break;/ A" K* T2 r/ H
                }
& i% }( ?& T3 E" r" g0 T* ^  q4 m        }
0 d( g+ P" v7 d2 r* W) N        return CWndNeuz::OnChildNotify( message, nID, pLResult );7 r( _) @8 @/ P+ Z
}        8 F4 H6 I, P- S  l% \5 K& _
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
! A. {% G# g7 _* n" X{
! y6 q, E- J2 j9 X! d        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
. i+ R! a0 _0 W" z# i        if( bStart || !m_pItemElem )8 ~% b$ f' k! Z, v7 }
        {1 E# [) x& L& l  ]
                pBtn->EnableWindow( FALSE );
' A" s4 y9 n; ]4 h        }else6 O8 F. f( t& p9 l: |
                pBtn->EnableWindow( TRUE );1 b! q5 r4 e& ^7 C
        if( m_pTexture )* g1 g" a+ Z3 x$ f, R
        {- f3 u2 T% f0 X7 Q6 K, Y& ~4 X
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );2 |  d  Y# H+ p! Q
                if( wndCtrl && wndCtrl->rect )
; I( h1 V: R6 N) X- c/ J4 f                {
0 D2 F+ s- z4 p- F                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );. C3 ?6 H1 \% R6 Q5 {
                }
' W* p3 T& G3 c4 e9 d4 u        }% x4 E& H7 M7 L6 H
}% L7 b8 Z) e# `7 L) X$ k) f
7 e' c+ g2 u9 L* n4 V2 m
BOOL CWndAutoFood:rocess()
" x! c) N, g0 H- x{8 t) m" a8 l& S! F- F
        if( bStart )
. N4 R2 n1 A3 S, r. k( h( |1 F        {
. {2 V, m3 w+ J: K                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )& t4 D8 ~/ U! j0 F, b8 o' f% I
                {0 J( \2 e) J- n. @# [0 _
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )7 s3 o1 e' R$ G! a. f
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );7 D, I, ~8 d( h) G
                }else{
0 d+ e& V) Q' c1 w5 Z) d* k                        bStart = FALSE;% g$ `! Z- [& t3 t5 {1 A/ `
                        m_pItemElem = NULL;
: `, v: w, y& I8 L* Z. O5 u                }
& H* l0 ~$ d' q7 [+ b        }6 Z6 q4 M0 M7 M$ Z+ e# U& W
        return TRUE;
; j, F& C; k4 h8 v' O}
4 O9 _: n, x: e) u) H2 C# I* R, ?4 N' v4 j4 u
登录视频废话:2 e7 @0 q2 ]' d; v/ s
尾翼:
2 w3 V: A+ t8 o" k0 m+ E4 S& S  R0 d
代码:
& c, V% x8 I) ]! v- S. O8 M2 M4 f- f" w+ s( {9 |. A6 @) M0 M0 t
void CWorld::SetLight( BOOL bLight )' c3 Y: x' Q# {- s5 s+ D
durch7 J( _/ x! M4 q, k" K3 Q
Code:
# h( G2 c. ]( ^# u! s- Jvoid CWorld::SetLight( BOOL bLight )
% [$ j% I* g+ m{
6 t  n1 y5 s& J- H" p& `        //ACE("SetLight %d \n", bLight);1 j% a7 C# j- l1 q
       
2 P) A; m. {6 i; O) x#ifndef  __WORLDSERVER
3 N5 i8 L* o; t        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
2 f' v# Y+ {8 L- f) F9 j4 n! h  V        CLight* pLight = NULL;
" W0 X, A) J# r" p; Q2 |9 X3 x. n% ~* ?. Q# K1 _6 U& o7 R0 R' S
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );. ?6 ~) {$ Q5 ]. I- D+ A+ u4 H/ |4 J

# P6 i4 t. m8 b1 |; e9 J        pLight = GetLight( "direction" );
8 J, A4 n: F& c: y- a+ x9 ]" u1 O7 R+ N1 J. @/ B
#if __VER >= 15 // __BS_CHANGING_ENVIR
: G7 }2 @6 k2 j        if( g_pPlayer ){
- M) J- `4 W: ~& q  b                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
3 A' Y6 L4 X; i( W                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!( a* a. d+ _( N) B* c  ?
                {$ G$ W( B. A5 q- E: ~0 n
                        if( pLight ). k& ]8 q; _3 s3 Z( j5 d5 Y5 V
                        {4 n, Q# P# Q/ t+ C, B, J, a# s
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
( h% ^: [2 \, r: n, l! p                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];7 d& H  W0 b$ a- o) B! Z' ?  i( o
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];; _" ^# G( _7 u3 g
4 W  _  q; q+ J* g& j
                                pLight->Specular.r = 2.0f;2 @( H( ]9 |, F4 g* W
                                pLight->Specular.g = 2.0f;* l, y4 h( ]2 C3 V5 V
                                pLight->Specular.b = 2.0f;& D) N2 k( Z& d+ n
        6 M# o' m& u+ ?' ~
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];5 O1 m- s, N3 y
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
7 [! F2 b1 p$ \+ H+ E. ^                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
' U! C' z9 g" B. s: o        - E7 d' m# u5 ?% b& O1 z* o
                                HookUpdateLight( pLight );
' `' M" F4 f) G' y$ g% _
3 y& D9 r# R! w  _0 g  ~% X% O                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
! o" R# m) M7 q' q+ x                4 Q  e2 z# a, n3 R0 E, [; s3 K
                                pLight->Diffuse.r *= 1.2f;
0 ]/ ^- H4 h7 ^# z0 P$ z                                pLight->Diffuse.g *= 1.2f;5 j% P3 d' M3 |) j) k1 w( B
                                pLight->Diffuse.b *= 1.2f;
" i; {: I/ c8 t7 \- l& e; Y* Z8 d' m. g7 r7 G& \; p! Q
                                pLight->Ambient.r *= 0.8f;- O1 I2 z# {4 J
                                pLight->Ambient.g *= 0.8f;2 p* }  ?( M1 F$ h$ Z
                                pLight->Ambient.b *= 0.8f;
  ?/ y+ v, p, b0 B: B  K" \5 R- d       
: H6 n; W/ b2 ~, v  X                                memcpy( &m_light, pLight, sizeof( m_light ) );
: u' w. T6 S0 t* x# D0 y3 b" P8 D1 K5 B7 P$ E2 c  c0 \
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);, r2 j  t1 ^( f
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
( o7 i6 a0 Z" P/ A                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
' K6 d% e; Z9 c3 W$ k: i, x' U                                 pLight->Appear( m_pd3dDevice, TRUE );
! j0 N0 ^) J# U; ~7 k. y. Y* s               
5 \$ t. }: h5 E- T& a                                DWORD dwR, dwG, dwB;
/ ^  A0 O9 v9 V' O, c9 V                                dwR = (DWORD)( pLight->Ambient.r * 255 );! {: [% _/ D5 c
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
5 _; j' o/ }# _                                dwB = (DWORD)( pLight->Ambient.b * 255 );% X5 p+ @8 E% [5 L+ o. Z
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );! r: ]( T* ~+ T% r% n2 v
                        }
% u0 v# k$ J; _9 E6 x3 j2 `5 \                }
) N2 i1 M9 N, K. D$ _        }# L  p: P$ c  V1 j( s
        else, A' V- N, w* w0 H* R
#endif
* u* \4 u. d  O" H3 @; \; F0 c3 n, P& G
        if( m_bIsIndoor )7 ^$ x# a4 B4 p& F  ~
        {
: c0 c% ~: c$ B7 B- @! j                if( pLight )
% b0 C% _5 q- |6 I$ N$ w                {                # n2 X0 W% t& H/ @; s; p8 ?
                        // à??μ oˉè*
; ?6 k! Y  G0 ~2 ~4 Q                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
7 Y% Z0 ?+ ^$ M& K+ _8 g/ |                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;  I% g# E, u, a) Z2 {' @
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;/ N( R& m$ G6 `

$ |' a4 C/ u' \                        // oˉè* ??à?
0 k/ H) x/ W" R9 D0 ?, I                        pLight->Specular.r = 1.0f;! }% M0 R7 Z7 B- j4 S- f/ A9 G! e
                        pLight->Specular.g = 1.0f;
1 R$ A. K8 ^# e8 @                        pLight->Specular.b = 1.0f;, s! T" Z2 Z5 c$ M
                        // àü?? oˉè*
% U# ?5 R& y: v5 k' l- ?2 h9 z                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;4 g3 X, P9 O3 h+ P
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;2 k- L$ l! a* W  {2 A0 k! G4 W6 Y
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;& ~" q/ f. c* g7 M" r

' _  [" W. j$ o0 ^9 g% ^                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 B* U; _' m! Q+ V2 }                        {
/ u0 ?$ E- O2 }8 U$ `( D* X- ~7 x                                pLight->Diffuse.r *= 0.6f;" S/ `0 o8 U" N9 Q& j
                                pLight->Diffuse.g *= 0.6f;8 o6 w. {1 F9 z- F/ a
                                pLight->Diffuse.b *= 0.6f;* q  z5 c  z& _" D
                                pLight->Ambient.r *= 0.7f;
& ]7 }( Y$ h4 a$ V                                pLight->Ambient.g *= 0.7f;& e; p$ P& _' m6 ?2 a: d3 `" i
                                pLight->Ambient.b *= 0.7f;
  G& S" y4 C; P9 j4 d! C) g                        }
9 I! H8 V8 i- ?& a0 E4 ~+ m% r1 Y! G
#if __VER >= 15 // __BS_CHANGING_ENVIR# i6 B+ \+ ?. x! C6 g& p0 n
                        if( g_pPlayer )
/ b6 H& i0 c  H6 t  f                                HookUpdateLight( pLight );
" k2 ]' E2 n- j3 c3 Q2 ?#endif+ T) ^8 ^; Z" B' \- @
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ \5 u/ P% m& x: w9 |/ C. \3 ]( J( e% q4 A' C5 |# C
                        pLight->Diffuse.r  += 0.1f;
0 A2 d( R+ k! P) a7 B                        pLight->Diffuse.g  += 0.1f;
* y% g" t. J: R6 n% q0 u0 q8 k                        pLight->Diffuse.b  += 0.1f;  g( d5 C  ^" f
                        // oˉè* ??à? - W  }5 f' O  ^' v4 J
                        pLight->Specular.r = 2.0f;
% c3 G) I+ d& N* r& n3 p+ B                        pLight->Specular.g = 2.0f;
9 q0 _& j! ~9 @2 n5 }% y: b1 s; [                        pLight->Specular.b = 2.0f;
# F  a, \  \) X3 n2 b4 o; m/ V* p( l                        // á?oˉ 5 s3 {8 x8 h) f5 Z$ @
                        pLight->Ambient.r  *= 0.9f;* N' A% j2 c8 u
                        pLight->Ambient.g  *= 0.9f;  _1 x7 |: R9 O2 j" c' B; r) p
                        pLight->Ambient.b  *= 0.9f;
( q/ o8 I. e. l; Y
1 M% C( y; A4 G                        memcpy( &m_light, pLight, sizeof( m_light ) );9 Z8 M# x, Z1 ?  k
                        # E+ ^9 u7 c& x1 ^, a2 H
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );# C0 E) |6 t1 t6 w
                        pLight->Appear( m_pd3dDevice, TRUE );
" D5 L5 `1 D# q* h3 c# L        . Q& e& }* y  N: K: J
                        DWORD dwR, dwG, dwB;+ w( X6 B! h' y8 t4 }! z. P' L7 N
                        dwR = (DWORD)( pLight->Ambient.r * 255 );: U4 h, Z1 u, p
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
$ _, [  @- A2 u                        dwB = (DWORD)( pLight->Ambient.b * 255 );
% B$ O2 k3 v/ }% D2 x! Y                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 Y' H' E5 p$ h; o2 Y# `9 o$ v4 S                }8 T* \% N" C' g1 F% K
        }
8 @) o- @8 B3 A. a% {9 R6 X" ~        else
, n; M# \3 d9 g$ m- }. A        {; Q( A. d( q* v; k( R0 f' T
                if( pLight ). K" F+ u' R7 k. L
                {" I0 U/ X7 |4 V7 J! R/ |6 d' L
                8 f8 f' }# d2 p3 l0 N; U1 P
                        int nHour = 8, nMin = 0;+ U8 n! |  T+ D: t1 w
        #ifdef __CLIENT" `: c7 }) m2 `. W
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
: [: x1 v8 U8 [0 N0 k                        nHour = g_GameTimer.m_nHour;
& K$ c6 K) d, E5 m                        nMin  = g_GameTimer.m_nMin ;. @% Y) L' V% P" X
        #else
. ]: F5 \$ P$ z  t. y$ }% `                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
5 j8 v) x7 a% c                        if( m_nLightType == 1 )9 G( K' P7 l4 |) I
                                nHour = m_nLightHour;
) a+ U* ~8 a. v$ Y6 z" D        #endif
) `/ e- q9 R: m/ E. O+ M* E" x                        nHour--;3 u3 z6 G% `2 L& B3 R$ V
                        if( nHour < 0 ) nHour = 0;, T' I3 X1 Q0 Z0 N9 I) ~
                        if( nHour > 23 ) nHour = 23;
0 K, ]3 [1 S2 w7 {4 y( `$ o' R- ~& r5 d. q& w* P
                        //if( m_bFixedHour )
4 ~" f4 Q& D# O                        //        nHour = m_nFixedHour, nMin = 0;2 [$ ]& F" [% v& }/ y( ?
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
7 H3 l/ V# {- N3 P3 G                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
) k1 n+ c7 r+ y" p
( a% w- p; M& x5 F% Y( U                        //m_lightColor = lightColorPrv;7 s8 g8 ~7 I( p8 M
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
( R+ k5 T" R4 p1 p                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;2 V& ^  ~, H$ O1 F" D
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;7 ?) j( Q' @( V5 e. h, q
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
: T+ j2 u0 ?1 X7 q$ R1 V                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;, D/ P/ K% @! X) N6 m
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
, x  D9 T  ~# R" Z                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
- e- ]" [! W- r* h- F# M1 h4 A/ t& C/ _+ c8 r
                        // à??μ oˉè* & {/ {# y% n; |* e4 A: ?& N
                        pLight->Diffuse.r  = lightColorPrv.r1;; a% ^1 _' o0 D- ^
                        pLight->Diffuse.g  = lightColorPrv.g1;- s2 e  c9 ^% l& c7 H6 L/ ?
                        pLight->Diffuse.b  = lightColorPrv.b1;
2 e' P1 X- n" k" g( i& K                        // oˉè* ??à? , z/ P  f1 Y1 T' m6 T
                        pLight->Specular.r = 1.0f;
8 c! M" i% q% ~                        pLight->Specular.g = 1.0f;
  d$ f8 @/ {3 Z4 B                        pLight->Specular.b = 1.0f;
6 i0 B! z/ r! c% k9 h  D                        // àü?? oˉè* ; @+ |& k! h5 O# P& y% {
                        pLight->Ambient.r  = lightColorPrv.r2;
% C2 G( M0 j# U! p3 e& |. a                        pLight->Ambient.g  = lightColorPrv.g2;/ T0 S% x0 j! n6 E7 K6 y0 E$ V6 E1 a
                        pLight->Ambient.b  = lightColorPrv.b2;
2 L( b& g, n7 x" ?( B- J: i& l* r6 Z* |2 S
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 Q7 A5 n% J$ L3 j5 x" \4 Y; q                        {& R0 _4 u$ L  C( F; g; p' F$ _
                                pLight->Diffuse.r *= 0.6f;
6 t5 @6 A; f7 s" I7 F0 j                                pLight->Diffuse.g *= 0.6f;
6 u/ Q0 L7 h+ G5 g  c: E                                pLight->Diffuse.b *= 0.6f;9 m" Y' X/ O" N3 U5 X: w
                                pLight->Ambient.r *= 0.7f;
, z0 |; {5 i$ I6 i. X  i% J  |                                pLight->Ambient.g *= 0.7f;
7 W- C: e8 c$ f( A: N5 a- s                                pLight->Ambient.b *= 0.7f;
; |# k+ `: p' G                        }1 [$ v* e  `% r1 H- H
                       
/ F5 U' o. o1 M, r- j- w" d! L#if __VER >= 15 // __BS_CHANGING_ENVIR$ b( K- Y# T( {" y. L
                        if( g_pPlayer )
8 M0 C- D/ ?/ V- J+ H* E0 f. O. O                                HookUpdateLight( pLight );
( x1 M, c: B+ ]3 N2 G1 k, Q: J#endif, A) ?1 k+ Z3 I! D+ a0 W
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );+ H; d3 M5 N6 R: {% H' _
; P# g1 k) I( A' A3 |9 t
#ifdef __YENV
4 H# k: ^/ {. S* Q0 h                        pLight->Diffuse.r  *= 1.1f;
7 i3 W# t3 Q) A! g( G! Z6 M                        pLight->Diffuse.g  *= 1.1f;4 c& H0 c. `; v+ N; E7 J7 x6 p
                        pLight->Diffuse.b  *= 1.1f;
, n. i6 {* O$ M                        // oˉè* ??à?
( D: k* y/ B! i& z9 H                        pLight->Specular.r = 2.0f;9 _, V. v9 d! h
                        pLight->Specular.g = 2.0f;
2 R# w  x; z7 i! U                        pLight->Specular.b = 2.0f;% [, b% z; Z  _$ `. m( G
                        // á?oˉ : J* t8 A. j5 i
                        pLight->Ambient.r  *= 1.0f;6 o' u4 j& E: y0 g! y! L
                        pLight->Ambient.g  *= 1.0f;
7 V/ V$ K- K: K8 s1 ^: ^" U$ P                        pLight->Ambient.b  *= 1.0f;6 `8 B2 {8 p. H" \% {3 P# |
#else //__YENV0 P; ]5 ?% s$ l# ]
                        pLight->Diffuse.r  *= 1.1f;
/ V5 V; r7 {6 O1 l% l                        pLight->Diffuse.g  *= 1.1f;
% x0 s0 R, O, \                        pLight->Diffuse.b  *= 1.1f;
9 _% |0 G/ E* H& Y9 b- N                        // oˉè* ??à?
, W9 q7 q( p6 i                        pLight->Specular.r = 2.0f;
; F9 P& v2 b. E                        pLight->Specular.g = 2.0f;
5 T5 o, |- i! ^8 s/ E                        pLight->Specular.b = 2.0f;
: x# N; A) v1 \4 X! {                        // á?oˉ ) n. q3 Y+ Z0 g6 x
                        pLight->Ambient.r  *= 0.9f;
1 I* B4 O2 t: [- R# C; ]0 k1 h' ?                        pLight->Ambient.g  *= 0.9f;# E# [+ r: I' n( H3 ?, N
                        pLight->Ambient.b  *= 0.9f;* X$ ~4 y8 Y9 N
#endif //__YENV
# ?* V6 ?: @6 T2 Z                       
' L& d' z0 H6 M                        memcpy( &m_light, pLight, sizeof( m_light ) );+ J6 R# W6 \0 W" N8 Q
                        ( H+ c0 x4 y1 s& J( G
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
+ F- S0 j0 P5 R                        D3DXMATRIX  matTemp;
* O' Y. @, O' o+ y! l- E                        static const float CONS_VAL = 3.1415926f / 180.f;
8 A0 w: O% _7 Q0 Y# U# Y0 k* r& z" A2 ^& L7 q0 F+ V; x- ]
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);* ^3 Z. ?. L0 {9 H- k$ F
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);7 X& e: s: A2 g3 W/ S
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); ) E: T8 V' V7 _
                        pLight->Appear( m_pd3dDevice, TRUE );. L' ^& c1 Z( |" B9 ~

! S2 ~( s: O; j+ r7 `+ ^+ Y6 D4 c                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);9 P) R# g! ^2 ?" `+ }# p
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
: T3 C! ^! b( ~) a! k& n) u                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
" C8 f) J5 c; g, H8 i$ ?6 U' p
/ m# j6 c' _* K9 c3 R                        DWORD dwR, dwG, dwB;
; p1 m1 I# O8 C! j2 {                        dwR = (DWORD)( pLight->Ambient.r * 255 );
' ~1 W9 }' z* K& P4 c3 f0 i% y                        dwG = (DWORD)( pLight->Ambient.g * 255 );: p. i0 i( U0 v
                        dwB = (DWORD)( pLight->Ambient.b * 255 );' @" i6 m. t. I
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
  u" H- ^# e, F' k                }5 P0 T& K. h( ?/ [% g8 K0 h9 |
        }
' h9 ]/ H- @9 B- q9 x2 P
1 s: B/ f8 H7 E1 W6 B3 u; k        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );  Z1 i* G2 u: _7 K, M9 y4 D
        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) );
" ~# R3 b  v; D        ::SetLight( bLight );
5 P; r3 `+ w& G
. M0 K/ g$ p) A: [4 ?# [7 r: }        // ±ao? ?D?í???ó á¤à? 2 w% y) z. a: C  e
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
4 _. n! p' s& h# O, N0 Q0 a       
- I6 h: X# r% W5 N; [/ F! d9 U#endif // not WORLDSERVER* r  N. G! E9 c" y4 r  r
}
) ~" _1 {! e; z, A3 k9 e0 b并更换! p9 ^$ @0 ~5 R. ]3 J% u
Code:
  G5 `9 s* H+ r+ q4 [% b__FLYFF_INITPAGE_EXT
4 H( x# R9 S6 p! M  N* o$ i$ `定义
- c# L2 Z* m1 C/ }8 q* m* F. t, ^' a1 @& c5 g+ l2 K" \

) c4 ?5 O3 s9 y" T& J) s
: T/ j# I5 d' G( \: D: F/ B; r% _7 N/ {  Y
现在终于删除我的狗屁加速...4 d; }& f' t+ ^, d7 y, h2 ~  ^
  b9 ^6 T( F0 n  c2 d

, L1 O* i( \; `1 R+ L$ l) s; _
; G8 g( @7 v! K  u4 N. N$ z2 G3 `




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