飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
$ n% l* B% v+ O7 G% p# l尾翼:
2 P" T4 x( @/ S
5 T7 f7 f: h' L$ Z( d代码:: F% S3 D. @- Y4 m( k+ \: R# ]' ~
CWndAutoFood::CWndAutoFood()( M# y9 b5 V% W! f
{
" C  w, S  _( Z( k7 s$ }        m_pItemElem = NULL;
5 V& f% C- v$ n, W) ?& T" l4 J! F) u        m_pTexture = NULL;
" Q  V& ^0 a8 a        bStart = FALSE;
1 ]! D4 U) |; {  v}
/ R8 P. H5 U0 Q# B8 l2 Z: g' a: ^5 j$ Y8 F5 w' N( R
CWndAutoFood::~CWndAutoFood()# l  w4 ]) F+ K  p# ]. k! z, ^* f; ~) O) {
{2 @" [0 Z9 P5 o7 E
        AfxMessageBox( "AutoFood ist gestorben " );
( b: R3 `( _! E}* ~5 h; c0 W4 |4 C/ I; H
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )3 x7 t# a  ^0 q
{/ n" {- Y8 N& ?" x5 X
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
( D7 @! A* I$ D}- E0 {6 h5 {! l6 \, _7 h
5 e4 d0 h& u6 e% \/ C3 l9 v
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )6 M) o. v: X8 s  y7 f$ X/ S
{
7 C8 T6 e0 V4 Z4 n2 k% M' Z( ?        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' \5 y0 ]( p# F5 ]  e) Z        CRect rect = pWndCtrl->rect;
- v. j7 @! g2 B& f        if( rect && rect.PtInRect( point ) )
& A( m8 X% M# h1 w: d        {
  B. T  V8 E5 s& ]                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );5 ]1 l+ B1 S: M: ^3 j+ N
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )0 R; a- {% z) G: B# J" ~' W
                {) M1 x: i* P* I3 o; N& v3 s- I
                        if( m_pItemElem ): d' R' L, X* K: s/ S5 C
                        {
1 y: w2 l, M- R7 r1 p5 |                                m_pItemElem = NULL;3 k# R( z! u/ f, A- J, d
                        }
/ `$ j3 Z& ]& u3 R! v% p                        m_pItemElem = pItemElem;
9 g( ]* Y6 h! z' y: {                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );* _. H" a! @( }
                }else{9 `! @% r  O6 {' C
                        SetForbid( TRUE );
$ m- `7 ^/ j7 c! O# n! X                }- h4 k4 M8 h( ]" F. Q8 L
        }else{
2 |$ h5 w' K2 e& ?4 I                SetForbid( TRUE );
# |' r2 w! `3 ~7 j        }
, V/ \) v4 {: b) W9 U! `        return TRUE;
8 o6 c* x+ X. r0 F3 y, {}0 m3 R9 x- L: f
) z* U1 w- \4 D
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )% P1 q9 P. R8 Z! _6 n
{7 ~3 ~0 V+ b5 E8 R) T
        switch( nID )/ E- q5 G0 [9 I1 M7 h# N! L
        {6 t1 j( j+ N, |& S1 D1 E
        case WIDC_BUTTON3:  ^+ i- x$ ^" ^
                {- ]. z9 ?# o8 F% I
                        bStart = TRUE;/ ]7 K; u9 L. T2 p: u& X/ U
                        break;
6 H9 i4 C. M( l% U: ?6 d( M                }
. I8 x9 Y; y' ~5 [        case WIDC_BUTTON4:/ M5 ~5 N8 G) ?9 L" l
                {$ Y6 a3 w) a9 p; |% Z8 r7 B1 T; {
                        bStart = FALSE;
6 R6 v4 b' X9 B5 y' }2 R: ^% C                        break;
7 T1 U7 u  ^2 G7 K% a% W                }
# F  U7 F! z4 J        }
' T: Q" \/ m2 n# ?' n& I7 J- A$ D        return CWndNeuz::OnChildNotify( message, nID, pLResult );! g5 @1 x) H! ]3 k8 m/ w( O
}       
8 _, I9 f1 [3 T+ W" ?' ~3 ^+ wvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
0 s( f1 [  j: c1 I- O{/ j( P* ?0 J( Y
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
/ l; D4 R8 z( b        if( bStart || !m_pItemElem )9 z& R$ }% J4 Q6 c
        {
9 M. C% O/ Q2 o/ K% o: b                pBtn->EnableWindow( FALSE );& W$ b! y7 N2 N4 r0 O
        }else( p  u9 S0 o  j8 i# l8 i6 V
                pBtn->EnableWindow( TRUE );
" R; I9 Q; E0 u* s        if( m_pTexture )
" x+ j" e# b2 v: T3 ^        {) {1 x3 N: W  @, j* M) P4 g
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 L; m; k( ]& j# ]" Z                if( wndCtrl && wndCtrl->rect )
: ^# V- }- B" c7 u" z                {
1 ~- p- |) G. I                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );3 X3 o' Y: B0 E" n7 p; [7 e: n
                }: `/ `% v0 @0 e6 G( J
        }
+ Q# f  C0 r2 f}+ A& |: }$ s7 A

$ L3 h8 ]8 Q: a9 \7 DBOOL CWndAutoFood:rocess()
' y$ i' E: m- c# g" M6 t* T( B7 W$ ^; g{
4 t5 L$ f$ }$ c9 j: P" T        if( bStart )& p2 g. N9 T3 V. i" k0 n* V
        {
0 L! Y2 Y& M* p% O                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )4 H  e( ?7 R1 `: J4 P
                {7 ~% ]" p6 c7 i  ~, O
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
  V, U2 q. S2 V" W. U* h                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );" H) _3 V* b% \
                }else{7 c: L0 E8 z" {2 T- L" a0 h
                        bStart = FALSE;7 {) z5 Z' b9 q5 r1 C- n9 d
                        m_pItemElem = NULL;: y5 x8 A# L3 |# a( v
                }
* A3 E8 m5 ^3 Z- n        }2 a6 j& R6 Z% K. }2 w
        return TRUE;+ ^5 o0 J6 s1 H) b) C
}% l4 o& N( t1 _5 a. }) Z: Q
% X* B* _3 d. r- D4 U
登录视频废话:  p6 N/ n8 i3 ]: y
尾翼:) y+ ~" }' |' _+ `& @# t
! ^0 E: D6 X1 _! u, x
代码:3 D1 J) z9 S% ?0 _0 T  {
# B7 _1 V0 X- ]* P
void CWorld::SetLight( BOOL bLight )
) `  b; Y( ~5 [% O/ P. Adurch, l1 O. S' }/ V) F0 i- c+ ]
Code:
1 e" S0 j: [& P/ A, Rvoid CWorld::SetLight( BOOL bLight )
4 h$ \/ h% o/ s! ?" y{
$ o/ X1 B2 t+ n' ^. F+ k        //ACE("SetLight %d \n", bLight);: f! H% N3 ^% J; O, a) ?( p
        ! b6 o/ z: `" n6 t0 X
#ifndef  __WORLDSERVER * P( `3 b/ K4 n8 e5 O7 Y
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);7 q% h5 f  r9 D: y, n
        CLight* pLight = NULL;
- D- i% [4 Y) Q' m9 X. t
: o$ a6 |- Y  ]& ~; q: }: y        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );( W& f( ]# H6 s" m

2 N% W! ^4 k" \' Q        pLight = GetLight( "direction" );
$ M8 P6 G$ S0 G# Q2 M# Y0 O! g  v& C) f# a$ @3 o0 l4 V  z
#if __VER >= 15 // __BS_CHANGING_ENVIR
# n) q8 O% Q6 C8 B/ n        if( g_pPlayer ){
, S5 }" H; ?7 z# }, g                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
! h% ~% X0 j5 H$ s                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
8 ^; I# |( I* @/ B( f* o% p                {0 O" J* r; }; K* |. h% m
                        if( pLight )' |& @$ k8 F3 }$ Z! D
                        {* v! A7 C+ ?1 O) ~% n9 L0 U! N0 c
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];' Z5 e& u/ Z9 g) @* T- J
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
. X* C5 B) i, V8 t3 h7 q                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];$ ^3 y' r2 L) W6 q( ?0 y

- V9 @( L' Y6 ~; q. x( K                                pLight->Specular.r = 2.0f;5 C* x) B) D* o6 Z; U8 Y
                                pLight->Specular.g = 2.0f;5 q- G$ M  g5 T+ u0 |
                                pLight->Specular.b = 2.0f;
& ~- w* \) ]& b       
% o" J  ]& t+ X" J% S4 K9 ]                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
# F& ]& f" ?8 X. x6 q                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];, p: Q/ q+ t9 S" M$ Q
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];4 h" c8 N8 _  L( ]
       
" W4 T" A, U  ?/ Z' N: r; W                                HookUpdateLight( pLight ); 9 S8 @- [7 Q9 }* S8 a

# U, d9 g  [, x! W                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );- y( s  W" B. h! b2 ?
               
3 A4 D+ e4 X$ Q# U                                pLight->Diffuse.r *= 1.2f;/ G1 h" o8 t, E* l/ a) T
                                pLight->Diffuse.g *= 1.2f;8 B" Q. P; t- |; K$ S2 y/ b
                                pLight->Diffuse.b *= 1.2f;
8 s  O+ @8 t; \- U  {4 W
" k4 W+ z7 m3 h8 [; b8 I. r3 s                                pLight->Ambient.r *= 0.8f;0 a! x% w6 [6 X) X
                                pLight->Ambient.g *= 0.8f;# u, i: q+ p6 b2 C, |$ U
                                pLight->Ambient.b *= 0.8f;
0 y/ h* c8 D" e3 {. F& f        ) J( |  W  w* `) N- R$ e
                                memcpy( &m_light, pLight, sizeof( m_light ) );
' ~0 t- k  S6 }# x* Z& }( V0 F2 `' l- Y: r! g+ i8 w& ^" U
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);/ d; S/ U; h/ Y. y, q8 i
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
+ G$ J" N/ e( c4 M                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 3 y# _/ G6 X2 h& c5 v5 M; r% [
                                pLight->Appear( m_pd3dDevice, TRUE );
, \) M+ |/ ]' G                : ?7 ^8 \% W% @% u# f
                                DWORD dwR, dwG, dwB;
7 }% ]% x) y0 y* ?9 e! B                                dwR = (DWORD)( pLight->Ambient.r * 255 );5 E& ^8 B- G' E9 W9 e8 h
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
, a1 {  t: R' }) g0 T9 Y% h                                dwB = (DWORD)( pLight->Ambient.b * 255 );+ x. n3 C! r/ y
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( a. M7 f, G  X$ I) {                        }; Q* d; B1 N4 Q* W6 r$ }. M
                }
2 J6 N1 I6 p3 {) v1 S        }
& G" s0 G( V. n1 p9 A, N* U3 B7 t* h        else
; C* U4 @- Q0 c: Z6 A#endif 5 p0 t, ?) M3 U2 m9 X) b

4 O- _# p- t5 s& o4 q: s$ u        if( m_bIsIndoor )
% {% {; Q/ E) @# @        {
( p9 f4 U+ v$ u                if( pLight )
3 L. Y6 [- M6 i6 U8 t+ L                {                8 m. w  Z' Z+ f; u% @: r" d' A* {8 u
                        // à??μ oˉè* 9 u: f9 C2 v! u, ^& Y8 x" i0 m5 j
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;( K+ n& O  J' X! }/ P; \5 T! v
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
  T& E1 E5 }) n/ q; k4 Z& G' Q6 ~                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
/ u# A& R  z) L$ X6 M: @$ |% q- i  B  k" L9 S: A4 ~- y; M
                        // oˉè* ??à? 3 I, K) T" D) E; Z# u: I
                        pLight->Specular.r = 1.0f;# e( k3 w. o9 t# y' h( k  V' z, Z1 X
                        pLight->Specular.g = 1.0f;
% m$ i, A) w: j7 a! [                        pLight->Specular.b = 1.0f;, `+ X/ H6 F% A& d" L) X
                        // àü?? oˉè*
; G5 [$ r# w  n6 d; j                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
2 d# S( Y; E1 P  ?9 ~. F                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
/ z5 i, H. p7 m, r1 \& F                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;( b( s3 ~, D1 J& r
2 S3 [: G  s$ |9 k+ i( n: \
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# }+ c5 q0 }5 r. U. C5 M                        {
/ a; p+ O  X1 P: m6 [" l' O; \                                pLight->Diffuse.r *= 0.6f;/ n0 D4 I( {5 U1 ]- ?9 v
                                pLight->Diffuse.g *= 0.6f;: y$ {' B: M+ J% C! F
                                pLight->Diffuse.b *= 0.6f;9 Y3 l) {9 ^6 q) q! }/ q" `
                                pLight->Ambient.r *= 0.7f;" J; [8 }4 k) U/ b* _
                                pLight->Ambient.g *= 0.7f;
0 [0 o, v7 o, m2 b                                pLight->Ambient.b *= 0.7f;
/ p7 d) O' I3 ^; c+ p                        }
4 _7 H# C/ L% F8 B  K% g9 K8 c5 Q5 D* g2 U/ I0 H" }0 U  l- E
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 j0 B' u, w/ ?/ v6 b$ |9 A                        if( g_pPlayer )/ ^( S' Z0 k' {9 l% v
                                HookUpdateLight( pLight );" z% \" r4 |8 v0 g
#endif
5 K5 N% y- a) |- G9 p. G- Z& N* }5 @                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% N5 `1 B' ?& W  I# G3 F) r; W8 D' y* ?5 Y7 e4 x; P9 V7 \
                        pLight->Diffuse.r  += 0.1f;
5 u/ z( K; Z" @' Q                        pLight->Diffuse.g  += 0.1f;
. Q+ }8 \5 H  w                        pLight->Diffuse.b  += 0.1f;9 k( v* {& ]5 V" h+ ?4 d1 t  H
                        // oˉè* ??à?
+ u5 m& U! J( [8 l                        pLight->Specular.r = 2.0f;) z2 U& `( @3 h3 q! q! n
                        pLight->Specular.g = 2.0f;
! w: f$ [& L, c' N% L' D9 t                        pLight->Specular.b = 2.0f;
% ^9 _' F( G$ k; }( p. E$ I                        // á?oˉ , O: o0 n4 M" i; e1 ~9 f
                        pLight->Ambient.r  *= 0.9f;
& f, c6 e( W  F& I  `  ?7 M                        pLight->Ambient.g  *= 0.9f;
3 h0 D) `: r8 G) D$ W( i  Y                        pLight->Ambient.b  *= 0.9f;" Y% `, T3 b( B2 F

- B! B$ N$ n+ w( @9 S                        memcpy( &m_light, pLight, sizeof( m_light ) );! H! H6 @/ }+ F: k* S
                        $ Y# w) z, B3 y4 x- i
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );: q, T$ s# k$ Z) J: v
                        pLight->Appear( m_pd3dDevice, TRUE );
; d1 y% A" ^5 j$ |1 p9 O5 a        * @- ^$ U; M& J* N
                        DWORD dwR, dwG, dwB;+ s7 |" f1 O; N# n
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
& L$ E+ i. P# T) U0 y& x; @: a: |                        dwG = (DWORD)( pLight->Ambient.g * 255 );
+ }8 V# N2 T0 n  d2 t) c7 \                        dwB = (DWORD)( pLight->Ambient.b * 255 );
1 h9 M( p$ T& {9 o% K* W1 K& t                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 s! a, }3 z& |1 l                }
2 ^2 ?+ Z2 u* R: D# D1 {        }' x; |, Q( I6 D
        else2 W- d' |7 D. s6 u2 d- Y/ Q
        {
7 ]; J" m3 W" d  [/ R                if( pLight )
4 P, ]. Y0 n- x* z, ?/ e% F                {% _( N( e  b9 x
                , k( O% d+ M  C  L* \
                        int nHour = 8, nMin = 0;% q- f- c2 Q) F( F: M1 r
        #ifdef __CLIENT
6 l8 Z* j% z  k/ D                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
/ U# a4 [+ O9 i2 q6 d5 e  H( o                        nHour = g_GameTimer.m_nHour;7 s! ?  L6 I% ~# v2 m2 [
                        nMin  = g_GameTimer.m_nMin ;, j5 }' z3 J. M3 m
        #else
- ]/ q1 I& v1 h) N) a. q                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.$ u) o/ i; g1 S  h
                        if( m_nLightType == 1 )1 N0 ~! g0 Y: Z; \& s1 Z
                                nHour = m_nLightHour;
- a$ w8 ]% c# K- ^4 B( x; l- e        #endif+ |6 \( U9 n+ q$ b# t2 q! R
                        nHour--;2 D# }# ~5 ?2 V! m" h
                        if( nHour < 0 ) nHour = 0;4 @: Y! |/ Z6 U0 c# q/ ]
                        if( nHour > 23 ) nHour = 23;7 i5 t' B4 n5 v% o+ O) w: @6 e( j
! u% A. d0 h  y1 \
                        //if( m_bFixedHour )
# ^4 P; J8 w2 j" }9 G( X  o                        //        nHour = m_nFixedHour, nMin = 0;
, f. Y: g  M1 L2 o( R                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];1 d4 t' O8 W; v; ?& s7 }+ D
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];: y6 A# o# |  [& x, r3 v/ G4 H

+ d$ T% v5 S4 k! g# O6 _                        //m_lightColor = lightColorPrv;- ?7 }$ m/ ]% R( r- o
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;8 G9 ~8 h/ {+ i& |7 a$ n) ]! P3 ^
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;2 N9 p+ _) e. D" h. U: k; R8 x
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
  ^+ Z! T. `+ |& f+ r. p( j                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;9 p( b7 b# e6 S; ~' L+ S
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;+ i8 U4 P2 A+ n" B( D+ }' B1 I
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
9 E) y4 B: E' I                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
' _$ ~7 d2 m2 w* ?0 V: n5 o) Q4 e( Y3 [0 l9 s% Z! }! |: ~
                        // à??μ oˉè*
8 f7 T: ?" q! W# t  {                        pLight->Diffuse.r  = lightColorPrv.r1;
8 [5 Y9 v6 |2 Z/ d( a                        pLight->Diffuse.g  = lightColorPrv.g1;; N2 J- D" y" d9 n% E( ^1 i% t
                        pLight->Diffuse.b  = lightColorPrv.b1;: d1 M4 X! E+ U* F# R5 {  S
                        // oˉè* ??à?
) l, ?" _" p& r$ m3 M3 H                        pLight->Specular.r = 1.0f;
' t. |( n$ W" z# B                        pLight->Specular.g = 1.0f;% G" X4 ?5 b1 E7 a
                        pLight->Specular.b = 1.0f;: k% ~7 i3 B! ]5 M( l8 t0 N) P* g
                        // àü?? oˉè*
5 L. ^6 A' z: j& \6 w, i( s! T$ Q                        pLight->Ambient.r  = lightColorPrv.r2;$ B) Y; U' r% u, R6 q5 [
                        pLight->Ambient.g  = lightColorPrv.g2;
7 Q. X5 j9 d* K9 u                        pLight->Ambient.b  = lightColorPrv.b2;
5 m6 o" a9 M! w) B. X1 b3 X; J$ B, X
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.- ^+ n# N# K% j% E2 v
                        {
$ f- t& R& e! X3 }                                pLight->Diffuse.r *= 0.6f;5 f  f& ]/ J, B; n6 S% {
                                pLight->Diffuse.g *= 0.6f;
" s# r4 _2 g4 k, k8 b8 G) f                                pLight->Diffuse.b *= 0.6f;
- j2 D6 D  ~$ _2 D0 Y1 y$ [8 F, r2 V                                pLight->Ambient.r *= 0.7f;
# [' h* I( m3 n- L1 `% `                                pLight->Ambient.g *= 0.7f;
* W2 A/ O$ U: a/ Y2 ]                                pLight->Ambient.b *= 0.7f;9 g: I8 Q2 g% |1 \2 V
                        }  ~( I6 |0 z' A& f2 r
                        ' B, o2 i* A0 A  a9 S( i; |
#if __VER >= 15 // __BS_CHANGING_ENVIR2 W+ p3 z4 H% h( ?- d/ c/ W) t
                        if( g_pPlayer )* a- f3 ?9 c  d6 G- K+ k4 m3 `' B
                                HookUpdateLight( pLight ); / T- W/ N4 j- @8 c0 q; q* x" }! c
#endif" Z0 p  s) j: n4 R3 ~
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );/ ~& n: W6 p% x$ B0 h

7 F- K. b( Y& e( F#ifdef __YENV' |3 E) O* N' B5 f2 E" q
                        pLight->Diffuse.r  *= 1.1f;
, o" j' w& P' T8 I7 d* }* o. u                        pLight->Diffuse.g  *= 1.1f;, {4 m9 p5 D4 j: {) a! {
                        pLight->Diffuse.b  *= 1.1f;
4 z" D4 v+ z( L8 z" A' E5 h- i' c                        // oˉè* ??à? + `! O3 Z9 d- U6 R
                        pLight->Specular.r = 2.0f;
9 V  h5 f4 H, L2 {$ L# X0 B                        pLight->Specular.g = 2.0f;5 s, f% N0 Q$ D4 P4 e& ~
                        pLight->Specular.b = 2.0f;
9 _8 Z1 F% A7 \0 K- C; B5 }/ \                        // á?oˉ
! o0 d! Q6 Q3 {& M. ^  s                        pLight->Ambient.r  *= 1.0f;
0 U( l. D  ?0 u) V! v1 l                        pLight->Ambient.g  *= 1.0f;) l2 N/ ?/ T/ |5 q' Q9 Q
                        pLight->Ambient.b  *= 1.0f;
% J! {$ a3 U2 F# M& I#else //__YENV( W6 `$ S1 I: E& K. q
                        pLight->Diffuse.r  *= 1.1f;/ t4 }  O& x6 x  t3 z  h' V
                        pLight->Diffuse.g  *= 1.1f;' v- }7 f  ?3 f% q3 y2 t
                        pLight->Diffuse.b  *= 1.1f;% k+ k. F8 h- }0 j& \0 S
                        // oˉè* ??à? 8 ?# q3 d4 [2 G$ A+ Z
                        pLight->Specular.r = 2.0f;
2 }' ?: ^; ^' M! D; ?                        pLight->Specular.g = 2.0f;2 P- u8 y& T* J
                        pLight->Specular.b = 2.0f;& ]1 P* u0 z$ R  j# K* b
                        // á?oˉ
: }: c% g6 J- ]% q2 J- O9 i6 K# f                        pLight->Ambient.r  *= 0.9f;8 Y1 ]# N5 }% y
                        pLight->Ambient.g  *= 0.9f;1 {2 D* I: m# d0 \* z" I
                        pLight->Ambient.b  *= 0.9f;
- v0 X1 }; w# H" n2 S/ y$ o, d#endif //__YENV ; ?$ E0 U0 T9 d' J* k
                        ; `( o7 C( z9 e, W3 ?. r+ E' q
                        memcpy( &m_light, pLight, sizeof( m_light ) );
6 I7 R; R8 j, k; c  t                        4 M) [; x9 H, v- c- _
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
: U7 T0 L5 N$ b) }: E( V  d2 z, I0 M                        D3DXMATRIX  matTemp;
9 ~. o" E2 i' s                        static const float CONS_VAL = 3.1415926f / 180.f;6 |" I8 T1 T0 ~% W8 Q% B
4 J2 O, v% w4 M6 l# ]
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
( t0 L) e. r& f- R                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
6 i# P8 [/ x( V                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); ' D  k+ r3 h; R3 u4 d
                        pLight->Appear( m_pd3dDevice, TRUE );) U) m, ^# Y' l# Q9 U0 e: e
1 S1 B+ C$ z' \0 l' X5 H" K% F
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);! f4 w) I$ n& [7 s$ z* i' \5 R
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));+ B; p0 c6 Z3 v/ v; T
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 1 \. h* z+ v- Y9 q8 s) H; {2 a5 a

9 h" j7 ^: b7 ?3 Q# S                        DWORD dwR, dwG, dwB;
, s" e  v8 j! X                        dwR = (DWORD)( pLight->Ambient.r * 255 );
% D* j, c" E$ b' A0 x/ p3 O                        dwG = (DWORD)( pLight->Ambient.g * 255 );
3 N" ]7 M* n$ k$ e7 a7 B; q0 P1 e$ l                        dwB = (DWORD)( pLight->Ambient.b * 255 );2 k# M* e: I- |1 g1 P% p
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
' p' V) V, L9 F                }
+ \& O5 O/ I, K# M$ k, Z; ]) _% t        }
1 ]3 }' w! E8 P" ?  Q- W' u8 j9 n, \$ }8 Z
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
8 h, N" l! N- C5 e0 h# q/ v        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! j$ c, ]& S" |
        ::SetLight( bLight );; ^7 e; f; _& ?( K9 L+ o# n
' S! D1 X1 O! y2 t
        // ±ao? ?D?í???ó á¤à?
$ h4 }' t* [$ L! [! o" m' m        m_pd3dDevice->SetMaterial( &m_baseMaterial );0 w" e6 u  S& }
        ; p6 J0 ?" t% R: R9 t4 \" H4 Q9 X
#endif // not WORLDSERVER) f1 U- A( `) }
}6 M& p, u) ?7 @
并更换  G- t; A/ Z, T+ s( d
Code:
$ P2 K" ^- y9 s$ ]& E' t# Y* ^2 g9 @__FLYFF_INITPAGE_EXT9 F: I  H7 O+ _1 v) J
定义
1 S" [1 v; L+ Q; i0 u9 m* G- _. `6 ?/ j8 ~( q" Y8 X( I2 `1 D/ }5 b
3 @  b: F, @& b
. V/ U4 W" ]: \; h& L1 l( F

& {* e; N9 q% a" \; x现在终于删除我的狗屁加速...
( x& D2 w4 V- o
) T+ }$ Z7 O. o* U; E" n3 R" o+ p0 ~

/ ]* D7 [* V( o




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