飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
0 E: g; r8 _  ?: y: D/ U% E4 i尾翼:1 r# ~% u( E  Z$ L
- u" [2 v! V9 e# C8 v7 @: U- H9 {
代码:
6 O$ T! [: O1 O' N) W5 W" y/ H# K% R1 @CWndAutoFood::CWndAutoFood()3 }+ j  D$ A) y# p/ }, ~
{. t  m- p' ^7 n6 p% A3 h+ k5 K
        m_pItemElem = NULL;( z4 a9 r8 P! {) V! E1 H: s; f
        m_pTexture = NULL;# Z% L: ]7 X. H
        bStart = FALSE;/ P6 H& R2 d2 F  W: ?( l
}$ C+ P- ^0 H) p0 u
2 f$ C/ B7 @* {* u! p; g
CWndAutoFood::~CWndAutoFood()+ p( W/ t' D+ ^- `% v
{! q( [: H3 M& e
        AfxMessageBox( "AutoFood ist gestorben " );( F3 K5 T3 @% U2 p4 Y$ `
}
1 H5 ^6 S  V1 m: k, ZBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
3 o3 q0 m0 w0 w5 e0 e% S{
/ y6 k) {0 _# X2 E/ r        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
5 [; \6 B: n0 g, ]! A! _}: x8 F0 k: g! B3 n0 F0 c  l
* H2 Q* _% E8 M* e) U' C
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
% {; r# Q* f5 o/ P, W' u{$ j. _# }* S+ f9 V) L
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );4 ]6 p2 ?$ i: k; G8 n* N
        CRect rect = pWndCtrl->rect;
1 R* N( }3 N, \- }+ P$ ]        if( rect && rect.PtInRect( point ) )
0 c7 N; ]: e8 R6 U        {
$ ~+ l# |& V' l. o7 _! P                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
8 |2 Q+ U- N& A/ V2 }                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )+ d% m1 n$ g0 z$ I$ c- M: I4 `0 f
                {* G6 L; y% r$ j' q9 E, a  U
                        if( m_pItemElem )* s- I& j/ V9 H/ B* B
                        {
3 z: k8 I4 ~8 L" F; R+ }! D                                m_pItemElem = NULL;* s( t$ c7 b; |2 k# n: e: `1 m# v
                        }
0 X* z' k9 o' e  k9 Q+ ?7 S; y                        m_pItemElem = pItemElem;
! U. J* B0 g( I, M% F9 o7 K% T                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
4 `2 ~5 m! H1 Z% Y8 r                }else{" a, b9 I# A0 S0 i" I
                        SetForbid( TRUE );
" X5 m+ r0 C0 P$ Y5 ^! e2 j                }
9 }. X; ]" \/ x8 q  u& h. O        }else{. E1 T$ x) J( F& _! z2 v: K/ F
                SetForbid( TRUE );
0 V4 w' ~+ F: F+ v2 U6 l        }7 U4 }6 n" L$ d6 y6 x/ A
        return TRUE;" [/ s+ @# l  P3 Z( y% w
}
, l5 ^; W- k3 z0 }! Q$ \0 t% p3 K/ V( a1 Y6 e# p) B* N
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
, j4 M5 X9 h0 Z% C' i6 w5 I2 q) ~{! e/ F2 z0 p0 S1 [& I% s2 G
        switch( nID )- }$ L( c$ U' ]' [  w6 y) D
        {
% T( b# E% ?# }, p9 c/ k0 Y        case WIDC_BUTTON3:" _4 B) i! p/ S- z2 B4 \
                {- C* a0 A% k  O4 s+ I7 n% I8 D
                        bStart = TRUE;; e. C3 l, E8 y& Q
                        break;  S) \  N0 Y. C
                }
5 A7 D: l& {3 i) t' ~        case WIDC_BUTTON4:  N& f* b; Q$ q  U& |- B/ w
                {+ n9 X: X6 A. w. H6 j
                        bStart = FALSE;( A. I! c/ S1 K9 [
                        break;
* O  S0 J5 |, K                }
3 C2 t: V) w1 \7 L6 K1 P+ ]        }
  X0 f, t  i, Y6 |% O        return CWndNeuz::OnChildNotify( message, nID, pLResult );
) X6 [& k; j: x- k% m}        3 h5 _2 O  g9 _
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
" J- T( l3 t! O9 p{
/ G8 A/ k4 L3 [5 l        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
% l4 [- W$ s: a% y# }+ f        if( bStart || !m_pItemElem )
: t9 F/ B' X7 `. s  U" [8 H4 C4 W        {
# F0 J* A& |% x% C                pBtn->EnableWindow( FALSE );
9 ~$ m% @3 p& V7 M, z( O# t) P        }else# o: A* q0 _5 n  v& U0 D
                pBtn->EnableWindow( TRUE );
% _" U8 c! z$ U" C9 X" x9 u        if( m_pTexture )
$ l0 p* Z7 ?  f) i/ W$ N( n2 A2 w        {) l2 F; y$ |# [( Y8 Y
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );  r' B0 T) p1 l6 E' e, W
                if( wndCtrl && wndCtrl->rect )5 c8 X7 c+ }# i; z6 Q
                {
$ |: n2 k% Y& m  Z. p                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );4 G3 p0 H( e# H! f* y. o, j
                }5 C1 w7 X  H: V9 g1 |( O6 e
        }1 F  K2 `% K7 g/ h
}7 L/ E& x, y) b/ |& l, J

! [9 B- p. `0 g" U) @! B: ^5 TBOOL CWndAutoFood:rocess()
  e' q5 t; e3 O3 V{8 z9 y' F& ^5 t4 h, N: }) l5 }
        if( bStart )
  ^4 G+ g- I! G! P" R        {1 Q) ]0 T. X) z2 G
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 ). N, C% |8 X9 n+ R
                {! M1 R2 y% s5 G8 _1 E# d
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )8 A) b* Y# A4 y6 [
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
6 K3 s# q# ^5 S- R$ P5 f) T7 a                }else{
& Q: `& R) E) J! B9 U4 @# G' |                        bStart = FALSE;; C* t+ \/ a- `- b% n+ s
                        m_pItemElem = NULL;
6 v( @0 }( W# S2 p8 L7 M. m                }4 M  p) T$ D0 \0 V2 d& i
        }+ ~7 Z1 O1 \/ N( j
        return TRUE;2 E. x$ s! l& v# S& k$ v* J4 ^  I; S
}
9 n) S5 {( l. h% Z& s
; P# Z: o; o4 R, }: F; R( t登录视频废话:
8 C, u6 T; l% n- q8 q8 _; Q: T+ m尾翼:5 C+ |/ B! A# g1 S* _8 g) m

% q2 n0 N9 D+ I/ j& q代码:
; j( Z: p2 b  _, I) K" R  n5 B2 D; s8 o
void CWorld::SetLight( BOOL bLight )
; _' c& V' J9 N5 n/ ?/ Q. E" [durch
: Z: o) \0 w' e. K7 Z0 U+ L+ ~Code:+ e) f% R9 `2 G/ F- h1 ]+ R
void CWorld::SetLight( BOOL bLight )4 {* L) _+ E. _6 K
{) _% K& v0 }( `  O
        //ACE("SetLight %d \n", bLight);
; [* |, U4 S7 c8 H       
1 A+ N# U/ B$ f# d' y% t% I#ifndef  __WORLDSERVER 7 F2 b8 {9 q4 V9 X
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
2 ]% J8 p4 |* j- s        CLight* pLight = NULL;% E: u" V; A5 V+ ]0 Y
1 X& M7 l9 k( U1 ]7 Y
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
8 ~0 H6 \$ X% _5 ]. r4 x
- @$ d5 [& @+ D1 }: }1 C& |# o4 G        pLight = GetLight( "direction" );' u* ]- A% c4 f' A/ b% h8 ^

2 }7 s) M8 |* W( q# Q! U8 y0 q#if __VER >= 15 // __BS_CHANGING_ENVIR
! t5 P! O$ b5 c9 f        if( g_pPlayer ){+ Q1 Y" S' d8 z$ R% q2 e
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
0 U) ~7 R1 `6 ^( D1 u                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
* R# y1 F3 C* Q1 ?8 B  ~: b                {2 i9 f- t* R" ]- M
                        if( pLight )
% E7 c8 v0 c9 ^                        {# y/ D  I$ `" i- b$ r3 B, i6 ]3 v
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
  C* d7 j6 R# S1 i' k. K                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
; B% M! v" G$ X8 g/ Z: n9 n! p                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
. u$ n0 v+ D6 x5 D; j
; k. I" I7 r$ }; E: L  N                                pLight->Specular.r = 2.0f;
% ?- b1 s  a" P+ P+ z. T5 p1 t                                pLight->Specular.g = 2.0f;- q! D4 p% R4 z: Q: M
                                pLight->Specular.b = 2.0f;. ]4 n; A$ {' e; e
       
, K; X1 p' r" {3 c- M                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
. Z6 U6 p/ W) ^5 e# u/ x9 b                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
! }; y0 _8 X5 k) u; J9 ]                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
& f: F: q4 W  v        ( ?0 g4 X0 H0 l9 j" w- B( m3 z
                                HookUpdateLight( pLight );
0 e. n  k7 ?$ k# }! u" M* {: Q7 F1 C
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ x  B. T; {; e: e' ^+ U                - R# N3 D5 w4 X6 J9 h/ |, ^# r
                                pLight->Diffuse.r *= 1.2f;% n2 l' b9 S; a- o9 @  _
                                pLight->Diffuse.g *= 1.2f;
! c/ Q. P& w1 m4 X2 I, T9 v                                pLight->Diffuse.b *= 1.2f;
8 v4 x. e3 N( w* S* p2 k; Y7 A- s
; V5 A  M; B8 f6 x, W' k) }                                pLight->Ambient.r *= 0.8f;
6 X: }7 A+ N5 F- ~                                pLight->Ambient.g *= 0.8f;
! [+ u8 r/ Z) z$ P. S                                pLight->Ambient.b *= 0.8f;/ d0 N5 G, S, E* C
       
1 k2 _* n9 X' `' `# J3 {' o, a, |                                memcpy( &m_light, pLight, sizeof( m_light ) );1 _7 {7 @/ \7 M7 z
2 h: s- M! C1 {
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; r/ `+ e6 c$ M3 ~' I1 ~0 q                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
+ u9 G, e) h7 B                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% p6 `. N. v% r5 U  w" H- ?4 K( T                                 pLight->Appear( m_pd3dDevice, TRUE );5 Y* r/ ?" I4 F6 \% S& E9 a1 B. ?
                9 L7 e4 @* D5 {3 t& ?8 e
                                DWORD dwR, dwG, dwB;
$ m- z7 C. C" G5 ]+ W                                dwR = (DWORD)( pLight->Ambient.r * 255 );
1 Q% t7 `4 c5 q3 `                                dwG = (DWORD)( pLight->Ambient.g * 255 );( b; z5 R6 X: Y
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
/ \$ Q; o1 _1 U% A7 n; t; G                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 B7 I: f* w& ~* ~                        }- g8 k# j' q( ]  l/ b6 N" d
                }
. K6 r1 J' J0 Z+ p8 F/ i        }
; I7 n' g6 A. |. q        else
9 R. ?* {+ f- p' o* P7 s6 }. O1 p2 x#endif 8 @$ z) S& C& g' k% M0 ?# E
! b9 m2 B/ o$ y, A  f0 C1 n% [
        if( m_bIsIndoor )
3 y( m: i& a- ?. e/ \# g2 L        {' N  f/ F. r0 T! o  z- ?
                if( pLight )4 r5 [& p9 P8 j+ P- j2 b) ~
                {                & t+ a: y3 N& I- T# B
                        // à??μ oˉè*
- b; w5 ?1 K% u$ v) v                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;+ F- |# ^' |7 }: I- v7 S
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;7 z  P& C( F7 ~. @" S8 l
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
! x0 n# o; T* }' |
& P  R: f4 y/ i) ^3 q' {# o                        // oˉè* ??à?
) d* a. M. G. [                        pLight->Specular.r = 1.0f;  R  ?* t+ u9 @# C/ O' F9 B( n3 E
                        pLight->Specular.g = 1.0f;
5 K9 p/ W% Q9 \- b# C                        pLight->Specular.b = 1.0f;
- g; u3 l# Z8 S* M+ k/ ]                        // àü?? oˉè*
% F( F4 A3 }$ ~" q/ _* i# W( s                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
/ Y$ B1 K; j" \; J- r2 N) B$ C  }                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
, r6 j* V4 W9 i# U8 o6 j                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
; f, [' ]4 N' `5 }, ]# k9 F8 L; F- c% y- b* t- [$ f. X
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 W( x6 h  A% }/ t. h                        {
+ k( k! s  v9 h6 k                                pLight->Diffuse.r *= 0.6f;
. w- Q! P7 b. H/ t+ C$ V/ l' Z                                pLight->Diffuse.g *= 0.6f;
9 I# V1 S/ h/ o* m& r: @; B                                pLight->Diffuse.b *= 0.6f;
$ q% l2 O, C8 g0 R# _                                pLight->Ambient.r *= 0.7f;! F2 E* W0 \0 r
                                pLight->Ambient.g *= 0.7f;5 R( p" N9 l) Y; |
                                pLight->Ambient.b *= 0.7f;  z0 w+ P) m; l* I) I- [- c! r
                        }# x' ]8 d8 ?0 G5 f

/ X& J4 a* q& ~  I5 A#if __VER >= 15 // __BS_CHANGING_ENVIR' m: \, s! ?7 Z1 Y) C
                        if( g_pPlayer )7 x8 Q1 h, {- _
                                HookUpdateLight( pLight );
2 J1 m% G- }! F. ^% `6 J7 a#endif3 n. B' ?1 P4 ^
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );  M- }5 P0 M% Y0 z
. |4 M1 [) @) C; z  [+ z
                        pLight->Diffuse.r  += 0.1f;
6 }* I9 y) x. i- ^7 `* {                        pLight->Diffuse.g  += 0.1f;
* \! ~1 S% f) Y                        pLight->Diffuse.b  += 0.1f;/ B9 I. g$ z* R4 ?
                        // oˉè* ??à?
! R: k- V4 N. @' V! y3 b  E( v                        pLight->Specular.r = 2.0f;  j& r7 t" K+ ^# `5 q
                        pLight->Specular.g = 2.0f;. f2 J# I8 q! a( }) V% j
                        pLight->Specular.b = 2.0f;$ Z4 b2 c3 s5 Y( h5 r+ l) t- m/ S
                        // á?oˉ % c9 d" k5 {4 f/ k9 _3 t
                        pLight->Ambient.r  *= 0.9f;- Z! R# N/ h" P2 N
                        pLight->Ambient.g  *= 0.9f;
# T& w1 X, r& l- N  K4 y                        pLight->Ambient.b  *= 0.9f;
9 z/ k- {! }' Y, ^6 H# k+ q0 a3 J0 s: X+ Q$ n# d. e
                        memcpy( &m_light, pLight, sizeof( m_light ) );: r* z; Q1 t# G9 W9 h! H: u2 J
                       
* Z2 s! g2 V' [) v9 d/ M4 H                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
/ T" k8 ]. f" [/ I9 l, i. ?# \+ u                        pLight->Appear( m_pd3dDevice, TRUE );" P9 F4 T$ e5 X. |4 `* }
        ) h! r; W. s7 C, A/ r' v
                        DWORD dwR, dwG, dwB;% ?$ }* P2 r6 U
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
" y& h$ U( V" d( _5 g8 l                        dwG = (DWORD)( pLight->Ambient.g * 255 );
; c1 f2 \) y) N( W                        dwB = (DWORD)( pLight->Ambient.b * 255 );
" d- L. a" ?6 w' S. t- `4 O                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
  j4 V9 l( \$ B, s( b$ G                }% r6 W8 E# D5 h7 H
        }5 d% X- W/ K$ u  d0 C, k
        else0 @% N9 k$ J8 ?9 j0 d; @5 Z
        {
' U: E: w) o. I, S3 y6 o4 U# y                if( pLight )3 T! v0 @( F  P# e- U0 q
                {5 J% Z- s$ f* f4 w4 `5 J! z
               
: a8 n% s. @2 c2 s                        int nHour = 8, nMin = 0;
# ^& L' S/ z* W! }1 e( t        #ifdef __CLIENT9 `& Z! V: F5 c. N
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 8 K2 n$ \: D  w! V; Q
                        nHour = g_GameTimer.m_nHour;
( k* W3 d$ O" y, r: u& w                        nMin  = g_GameTimer.m_nMin ;3 C+ }% [; c# O- m/ C# i* H5 c) [
        #else) Q7 q! A# p( e( K. j% t5 ^6 S) {
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
2 v: N( X1 Q3 t/ B                        if( m_nLightType == 1 )
, \5 W$ d5 `: q1 h0 x4 A                                nHour = m_nLightHour;+ v" w. j: A4 i7 \+ Y2 S+ O
        #endif
" |7 ]+ [+ U0 L8 ?* T                        nHour--;
5 K. |) W$ r* X9 F. x" i( j                        if( nHour < 0 ) nHour = 0;
7 B4 r) C! V1 ?; @7 t5 U                        if( nHour > 23 ) nHour = 23;
; g2 S4 N3 h/ M" p
; ^2 P5 m/ D2 M$ M                        //if( m_bFixedHour )
7 l7 Q4 ^( g3 g2 k: M# ?1 g  h7 f" g                        //        nHour = m_nFixedHour, nMin = 0;& o( Y3 u+ g8 ]" T% {4 b
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];) @. M* h- B2 I) O( I
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];6 z/ X6 O# N/ c5 y- e- Z. {

, t0 Q* r: P: r+ b6 ]" [4 v                        //m_lightColor = lightColorPrv;
8 n- @% ~8 s" @                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;/ y' w5 I3 S; k5 E1 c' ]
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;" @# P0 s9 u/ s  f
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
( V# C+ m( u  L+ y( B6 L( k, X5 p: }                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
  D5 a8 H  j2 s. j& R" D                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
! U# x' m( w2 C  u& i                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
: h4 Z: H1 U8 m8 n8 D8 _                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)7 _; w: ]& e8 o$ m( ~
; Z: _4 p' w4 Z+ c8 E% }. q
                        // à??μ oˉè*
1 h$ ^! U2 x& J" ~3 Y                        pLight->Diffuse.r  = lightColorPrv.r1;; x- x1 k$ E" V6 j9 M
                        pLight->Diffuse.g  = lightColorPrv.g1;8 r" X! `) O$ x& O% m+ w
                        pLight->Diffuse.b  = lightColorPrv.b1;
' o$ k/ R2 @3 G% j! j% Z9 c8 U                        // oˉè* ??à? : U5 g. a& C1 U, M1 J' G
                        pLight->Specular.r = 1.0f;
3 F* E+ i3 X6 X; m                        pLight->Specular.g = 1.0f;
2 I9 g6 Q$ Z8 X& x! |. L) y1 P5 s4 E                        pLight->Specular.b = 1.0f;
6 f( G! G- L& B                        // àü?? oˉè*
, @  I: {, h; Q0 H" L$ h                        pLight->Ambient.r  = lightColorPrv.r2;
# c( n1 t4 }7 Q( K6 O                        pLight->Ambient.g  = lightColorPrv.g2;
* ?4 a4 p5 ?0 T                        pLight->Ambient.b  = lightColorPrv.b2;
) T' d8 |# w- c3 A, Y0 x& p% y7 A  ~  a' P
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
; A% ~* d; A/ ~1 ?' V                        {; f1 a  G' ?  \& X- f
                                pLight->Diffuse.r *= 0.6f;! |7 l" }# Q# I4 H! k2 I
                                pLight->Diffuse.g *= 0.6f;
: A% y; u, [# `' D                                pLight->Diffuse.b *= 0.6f;
1 \* r7 y9 M& \) r* ?                                pLight->Ambient.r *= 0.7f;
% t; z6 r7 ?, z& O8 w                                pLight->Ambient.g *= 0.7f;  S' ?- {& A% M. D+ L' d
                                pLight->Ambient.b *= 0.7f;1 D9 E* P9 F4 }2 ^
                        }& `! W4 h3 g6 K3 d4 m. u5 g3 \* J: S2 T
                       
" \9 g. f) t( o% I, h#if __VER >= 15 // __BS_CHANGING_ENVIR
( z( F; U! F9 U3 l" h                        if( g_pPlayer )
( {3 O, m5 ]3 e/ a' d                                HookUpdateLight( pLight ); 7 I. M+ u, [" M3 r
#endif
5 j& R; U3 e; ?0 t/ o                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 z' |" }1 t" z: p0 ?+ V3 E3 s. n: P1 [: k5 b
#ifdef __YENV1 f) s0 `. L$ R  X, B
                        pLight->Diffuse.r  *= 1.1f;
% z1 m+ w) c1 P$ K                        pLight->Diffuse.g  *= 1.1f;: j9 r/ J+ `+ C& d3 ]0 n. `
                        pLight->Diffuse.b  *= 1.1f;5 Q. [0 X1 Y5 X! l& k# X
                        // oˉè* ??à?
+ w  k+ a$ m* T# Y6 g                        pLight->Specular.r = 2.0f;
6 n1 W9 G/ R% D- r. o+ m                        pLight->Specular.g = 2.0f;: b7 u# J! W- W$ F, U# p: ?
                        pLight->Specular.b = 2.0f;
0 N4 ?0 @9 g  [' Q3 b                        // á?oˉ
' b/ Z# K3 b; U% ]                        pLight->Ambient.r  *= 1.0f;% T! P( U4 B  v; _; R/ H3 F
                        pLight->Ambient.g  *= 1.0f;
  f* n. u! z3 l' K                        pLight->Ambient.b  *= 1.0f;
& C4 h' }7 Z% o& _#else //__YENV  |6 r& l- \5 g5 p5 ~8 t
                        pLight->Diffuse.r  *= 1.1f;
7 T( b! A* Y3 D( W+ z5 Y                        pLight->Diffuse.g  *= 1.1f;- E" H, N: }2 @4 K3 P0 K
                        pLight->Diffuse.b  *= 1.1f;2 l2 X. G& J* N
                        // oˉè* ??à? $ t4 Y& h- d) w" Z/ f* Q. o
                        pLight->Specular.r = 2.0f;% f& Y8 P% p' y/ ^  M2 h+ q
                        pLight->Specular.g = 2.0f;0 c: O& S) z" Z9 l, r
                        pLight->Specular.b = 2.0f;, a2 G( j% _# I4 o& Y: F" Y
                        // á?oˉ 2 U; X% E1 Q0 H9 q
                        pLight->Ambient.r  *= 0.9f;6 Y7 B, L+ ]$ i  f# s( A9 j# U
                        pLight->Ambient.g  *= 0.9f;
7 x8 m! M; a3 g. u! [6 N+ g; f                        pLight->Ambient.b  *= 0.9f;" D" Q& g+ l" q# C4 u1 r
#endif //__YENV
7 X0 e* ?& b# A$ i: Q- G6 y: G6 r- ?                        9 o/ a# E7 J1 I2 D
                        memcpy( &m_light, pLight, sizeof( m_light ) );8 e" W; l8 ]2 r9 v
                        8 w1 W( j2 E0 s+ t1 b! z
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
1 W! U1 B9 |8 X1 d) [) J3 D                        D3DXMATRIX  matTemp;$ T1 g( A2 a6 h0 M# X, _
                        static const float CONS_VAL = 3.1415926f / 180.f;
/ U" N( A/ ]! Y9 N! N1 g8 z8 k
2 r$ d  W( u4 Z; k. Y                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
9 {2 [3 `" Z1 ~, P* h7 \                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
0 o+ v) o# g. X$ _1 s- G                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); : @4 @" j# y7 n
                        pLight->Appear( m_pd3dDevice, TRUE );, q7 `( n( M. h$ x4 A

: d1 {/ c2 ^1 z: L                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);+ e2 E; u6 `# ?- F) Y
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
. a  D* A- _0 C' {" i8 r+ ?: f5 m                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); % `) `8 ?8 K1 o

5 F% E9 L  `! t3 r4 d                        DWORD dwR, dwG, dwB;: |& p; Y0 p! g: \" S2 ?/ w" m  r
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
9 y; s9 O, z! D2 v2 O                        dwG = (DWORD)( pLight->Ambient.g * 255 );+ v4 R; L/ a; b- o
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
3 l0 {: w9 k' y0 n) g" V: Z                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        2 j  r2 j% a2 u- D5 ^3 J: h
                }
! Q, o8 U( J1 x) j6 W3 B3 T        }/ C, j% o# l" K+ \2 y8 r
3 n; J" i9 `8 T  u% U
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
- K4 |! i2 X* A! |+ h; g        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) );
* A  h4 N+ O: \* L. ]        ::SetLight( bLight );9 C4 h( v2 x3 s; Z
3 [% Q5 V7 L" ?
        // ±ao? ?D?í???ó á¤à? : v; F* l. N% D7 f- d  i. Q
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
8 L& ^* d0 A* K* P" A' W; v' ?1 X- }" q       
% E0 ^- S* v& w3 ^/ V+ {+ v#endif // not WORLDSERVER+ Q( j: e9 M! {
}; G3 ~7 W5 q6 Q
并更换( S1 J" C5 f, ?" t2 K! B
Code:  Q0 @$ L/ p2 a
__FLYFF_INITPAGE_EXT3 e$ N: w* ?1 q* e) V
定义
1 t7 k/ R- }& D. o, M  l
! M; y3 b6 p1 R: [! Z$ S! A3 _8 r
5 r1 `- _" |: S: J9 Q
+ R: r$ F3 m/ b5 l0 W+ \7 z  G) ?$ K+ X
现在终于删除我的狗屁加速...
6 \  n* m6 z% X
4 o# P# m6 C- `
3 m" m! f) y+ D; ~/ R: D0 W# X
6 Y% \3 a0 @/ ^5 F4 R: f0 Q& f" D




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