飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
6 w; q, s: L7 b% S* P* f2 f尾翼:
2 y4 `, G% E' w0 {* l
" x0 j! M& P$ Q$ A代码:: x4 ?! ~7 t8 M! Y! N/ i" ^
CWndAutoFood::CWndAutoFood()
' |! Z" n0 _  o{
; D4 T3 b* |6 C9 o; B        m_pItemElem = NULL;( K6 Q7 q; A, o# g8 g9 K
        m_pTexture = NULL;
6 A+ K0 Z( u5 J        bStart = FALSE;; B, W! t0 E  ^1 ~- A
}
5 f. ^2 K4 S6 S$ Y( [. u* {
" M* Z, X6 n( [, p: z7 [! sCWndAutoFood::~CWndAutoFood()* F) }- f) F1 f: F$ N$ f
{  A% p: B5 l1 K/ k: y* W
        AfxMessageBox( "AutoFood ist gestorben " );
0 H# i. {8 b: T}  l. i3 \0 ^& C' U1 ^5 ^6 S6 p  l* F
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
5 U+ ?8 T( i8 ]5 v$ q4 J{
6 \' j: q' s+ ?. @5 Q  }        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );$ p/ X# p! b9 W( t$ V. g2 I
}
4 G2 Z7 Z7 @" ~( B
* i" |& g6 |( F: y, kBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
6 X4 C' M5 @" S, w% _- C{
: \5 v* Q" o7 z7 k. c# i6 H% P& k        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );8 D2 \& i& `( `8 _" B/ \+ Z* W
        CRect rect = pWndCtrl->rect;7 |1 N8 d0 Q/ }  }- n
        if( rect && rect.PtInRect( point ) )
3 Y; k0 i: L" z$ a        {
- m. F0 }3 q/ m! u                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );' B5 j# c$ {2 ~: v+ [- S
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD ); u( }2 H3 W9 V5 N1 q3 g
                {
9 L0 o& v/ k1 M) a# ~% c0 a                        if( m_pItemElem )7 m* k9 U0 q- H8 |4 V  t
                        {0 P/ D2 V" b) {' L, Q( `
                                m_pItemElem = NULL;
3 O: `8 i/ p" }) f& a                        }
: r/ y; L  @2 g$ b5 J                        m_pItemElem = pItemElem;
+ K5 y0 v& c6 z  G$ i9 k                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
( `3 o, ]5 Z# i5 E' M0 U0 Z) \  z5 G                }else{
: t( \  x* L' O% t. ~                        SetForbid( TRUE );
1 e. V8 Q  B2 H5 ?5 |* l                }
6 d2 |; Q# f+ Q* W( p/ V8 ?: \  H        }else{7 k1 T# h  I7 S+ @  {4 ?
                SetForbid( TRUE );
9 V2 q) @- h# }: M+ V        }0 r: R; n) `6 V' C
        return TRUE;
! j" D# w/ R$ Y4 ~' E4 x. Z& _% T}
4 s. B! H/ k4 Q/ x( |  j+ i  v" J% [# s
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
% P0 ]1 f+ Y) H& E% i- x5 E* g{
- y1 v5 `2 D" q1 ]. J! ^( Y        switch( nID )
. q* J( n% B0 ~        {
! ]: y, Q! E$ Z0 O        case WIDC_BUTTON3:
; R6 S) C* ^( c7 _                {
+ x8 t/ C0 i0 H9 X                        bStart = TRUE;
1 I- a6 w7 e0 J/ Z3 F  F. K* b                        break;# [# p2 W+ w9 K( o( m0 n: P3 j
                }
9 B& Q, C( U7 M/ b: `6 }3 Z        case WIDC_BUTTON4:, L0 f/ X) M1 Q3 B+ b2 }2 T
                {
$ A% T% _" F5 T+ l# M+ E- @                        bStart = FALSE;
! O) W3 g+ \/ }" O2 [8 d  d4 k* k                        break;; ^9 b* N2 X2 _" @, F9 a2 {, U
                }8 f( A/ y0 J% [9 u0 F! k" P
        }, s) m2 U- i3 w) w0 Q
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
8 k' e3 r0 G4 M- |}        : B/ {+ @' e1 a, A2 L
void CWndAutoFood::OnDraw( C2DRender* p2DRender )1 ^2 K3 ~7 }) C9 k- n$ |
{$ s: }9 q# }( J" G0 X" y, |& D( s& I
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );( y8 T8 e: g& N2 V
        if( bStart || !m_pItemElem )
# ?3 m1 x& K4 C. n* v        {/ i, j  @( C9 e, O" [$ X+ u2 }
                pBtn->EnableWindow( FALSE );
, L5 I: A! @( Y- d1 l        }else& g) e& I: B9 r/ a$ q
                pBtn->EnableWindow( TRUE );8 s' M0 `8 k3 I3 a" b
        if( m_pTexture )8 p& n7 `" A1 Y
        {, g7 R" P, F' m. C9 H+ H
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );# U( _2 _* y# L+ u6 c: A. F
                if( wndCtrl && wndCtrl->rect )
9 O* O2 l: q  e. D- P! C                {
- _0 u4 e2 `9 m, @* ?, u                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );7 T" U; R. y: I0 Q" I- |" k
                }4 d% e4 t4 O% }0 Q' A& H6 \
        }0 q& b% s; o+ Y5 L( O8 t' V9 |6 X
}
* a* d2 w3 V5 K! `+ V* I- u0 S% _( B4 j) d
BOOL CWndAutoFood:rocess()
& L, I" q+ h; d2 T3 m7 J; B{9 M3 L! ~; \, H0 `1 K, {$ t$ S
        if( bStart )
- V6 V+ @7 ?! O' c$ z3 H" v        {' d1 L4 I4 z. D7 Y. f
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
% l# Y3 `: t- v" k- h) x                {, e2 q* a/ n, t; E) F6 t4 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() )
/ ]8 P2 G. V2 l+ L                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
0 X: Z% d$ G8 ]+ D' s1 o/ F7 d4 {+ _/ q                }else{9 l; E' a5 E' s: E6 y+ u2 K
                        bStart = FALSE;: ]# A* l) U- R! H. t! z
                        m_pItemElem = NULL;+ \: w0 Z2 \7 `
                }, P+ u/ W1 _& y
        }
( _# C  ~% x; z: l/ p4 _        return TRUE;
5 E+ ]3 d& y# }- a5 U3 r) ]4 Y$ r}
9 o* Z2 y* L" |  c
. R; _3 A+ r' T" e登录视频废话:+ S0 d( o) j4 V
尾翼:
/ q: ^/ Y2 Y& X. G( v( F
; c" j6 c" J. E4 w代码:8 ?4 m" m; R$ C) Q' h+ |

7 i1 W0 d6 h4 B. fvoid CWorld::SetLight( BOOL bLight )
( M2 q' R1 O) k0 C0 I- D/ Y: ndurch" f. H# E0 B- T0 q" m$ z
Code:
# F" a" ^" P* A: x5 e3 e0 R4 kvoid CWorld::SetLight( BOOL bLight ), e) q0 z% h8 A* r
{
* {# V& r) Y2 `        //ACE("SetLight %d \n", bLight);
3 v( b6 f' }4 O; ^/ v$ k       
, _& L) Q( K& b. o6 q9 u8 i& a#ifndef  __WORLDSERVER
) ~7 d  p; a! h5 Q5 Z! q' ?* [$ O        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
. e# e; A' `2 |) h3 @' V4 d        CLight* pLight = NULL;
+ K& [: w* f3 V1 p1 i; o! W$ s- M7 d8 C: I/ h: G* E4 R
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
( c# Q( r, O1 U4 m# Q7 s6 c+ ]4 e. ?( r# Z* A5 ~+ F2 P* j# p
        pLight = GetLight( "direction" );
6 u2 f3 C2 L1 _
4 p! r: d- p% \& c& t- R& q#if __VER >= 15 // __BS_CHANGING_ENVIR% o' Z5 G* p( K8 H, G! G* o
        if( g_pPlayer ){( E+ f; j* f1 a* ]4 l- o
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );; @" }6 l1 |7 M( u  |2 R' Z0 N* q
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!! S; r4 l  E  M! C6 f% b
                {
) C! R9 [2 i, p1 z  k                        if( pLight )7 p; O8 s- Y; I
                        {8 g: ^2 [; c$ f$ A
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
' T2 V! Z' N$ }0 [                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
$ M3 [' g4 Y: ~$ U9 }                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
( \: Y' _/ v* W) v5 C/ M7 {! p: F7 l/ e
                                pLight->Specular.r = 2.0f;# k. u9 v9 h: t/ G! I8 ]
                                pLight->Specular.g = 2.0f;! \. P0 r* Q- {& f, t
                                pLight->Specular.b = 2.0f;
! T+ ?* n4 e: o$ t       
7 w( l( R) D! |. r- ]3 I" e! g                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
7 O' t' U9 O+ P8 k  v                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
$ R$ c5 r2 x. _2 H4 V                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];, c$ c0 w8 C2 `9 y$ A
       
( X* h2 U, B8 p/ w9 N                                HookUpdateLight( pLight ); # `6 I2 Q+ i( y; g0 ^4 r8 W) ?/ w
3 g. {1 S0 w0 |. O1 g
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
  K! [: [# n. Y9 U9 b( H               
/ [0 R1 l: H: S5 g( C                                pLight->Diffuse.r *= 1.2f;
3 |6 `4 j. ~' z5 N                                pLight->Diffuse.g *= 1.2f;: ]& E; u; R! e& F
                                pLight->Diffuse.b *= 1.2f;* P$ J3 c% h  @2 {, _! |* Y% v
. A6 l; r- }1 `! B/ N2 H& Q
                                pLight->Ambient.r *= 0.8f;
6 M+ ~; ~5 N2 c7 w& |                                pLight->Ambient.g *= 0.8f;
( o8 a) M( _% M$ a. X2 P4 b+ |; s9 e                                pLight->Ambient.b *= 0.8f;9 S- E( u8 i( z! M, G
        3 B8 S2 k" F# F4 P$ @* k
                                memcpy( &m_light, pLight, sizeof( m_light ) );6 t+ r2 X! p) u
1 e4 D  d- E' b5 I7 t1 }
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);( ^& T9 x$ W, w) F. R- J
                                D3DXVec3Normalize(&(vecSun),&(vecSun));! w' l. ~% i8 C$ U5 J# a
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! p( L6 l3 A8 F; `2 v- H& O; F                                 pLight->Appear( m_pd3dDevice, TRUE );% A. V& p$ S6 v1 d) m4 q
                3 f/ C" B: \1 Q% M! I0 C
                                DWORD dwR, dwG, dwB;3 Z( C5 l8 d# p5 ]  s# F
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
) l8 K5 B; T# [$ C                                dwG = (DWORD)( pLight->Ambient.g * 255 );- y" b9 D. p) w+ y8 b1 o/ \
                                dwB = (DWORD)( pLight->Ambient.b * 255 );1 P2 z! h1 A3 ^( S2 ]) p
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );- q, L3 J9 T/ |8 R8 E
                        }3 U& y' v* a$ e# a- V
                }; d* K9 R4 [9 R
        }
- {* h0 m6 s8 M        else; f2 K; ]7 q" }9 g9 n; u
#endif # X1 D% G, j" _& x
0 c  J- D4 m% b5 i$ I
        if( m_bIsIndoor ): a' L; X6 C1 H" q7 G3 z, V( Z
        {
6 \6 Y* k+ M* ~! m# u6 _' w* ?                if( pLight )+ J& X3 o( l3 T$ J
                {               
$ d4 o: f! b8 B9 c. Y7 Y, v& w                        // à??μ oˉè*
3 t/ I- Q1 @8 ^                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;0 G; T+ D; u* e% O, P1 F
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;/ \0 F' B. w4 d+ L& j# z# m
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;! H! c1 j0 d" ^

7 ]( x( q) {$ g                        // oˉè* ??à?
( ]% v) h8 j' h9 y% l! e                        pLight->Specular.r = 1.0f;$ X5 ^6 R, c  @8 o, v% S
                        pLight->Specular.g = 1.0f;
6 o8 U. M/ l6 @  H* m                        pLight->Specular.b = 1.0f;5 O0 L8 f6 A! g$ E( J2 U( r
                        // àü?? oˉè* & ?& k, N% I& e4 H2 c
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;5 p6 E2 l/ I4 @1 ^! f
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
4 G5 Y0 \: s+ o                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;$ g& ?/ }6 o1 o1 J& B& M+ D
2 V$ i. @; H- C0 M/ {
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
. ]7 \; R7 N; n( M( [                        {# n1 k5 e7 J7 c4 W
                                pLight->Diffuse.r *= 0.6f;% k4 \/ F0 r" K" R
                                pLight->Diffuse.g *= 0.6f;
2 z' Q' u' E  W  x2 W8 |4 z                                pLight->Diffuse.b *= 0.6f;! c- C! b+ W! g; k  u& g
                                pLight->Ambient.r *= 0.7f;0 X1 k) j+ @+ Z% i" a  `/ D* k
                                pLight->Ambient.g *= 0.7f;
  Z- J4 j4 N9 n1 v7 p* X3 _" W                                pLight->Ambient.b *= 0.7f;0 }! L! }- Z& p% m6 U( ?" G
                        }
5 P  g5 O/ E; w! Z: z1 x
" H" L- A  C0 z$ }: p# s#if __VER >= 15 // __BS_CHANGING_ENVIR2 V9 g( t7 K2 H/ Q7 R
                        if( g_pPlayer )
9 @; K  Y! ^8 U7 D1 Q0 Q                                HookUpdateLight( pLight );
* o  H( R4 f; Z/ D( n#endif8 o# n, W' I. d9 N/ j% b; r
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ \$ F- W  M% S8 f* w. e1 _) d& f0 L" m) V
                        pLight->Diffuse.r  += 0.1f;$ M  y% j# j3 @+ f+ Z+ Y
                        pLight->Diffuse.g  += 0.1f;0 G) g7 z: s% K: {. S: _
                        pLight->Diffuse.b  += 0.1f;4 `( c, x+ j1 l6 m% f) b
                        // oˉè* ??à?
2 H5 d6 }5 K0 s$ c$ K- J3 m8 f: Y                        pLight->Specular.r = 2.0f;
. J2 M( s. F6 H; L                        pLight->Specular.g = 2.0f;2 \+ x7 r! z! G$ P! S
                        pLight->Specular.b = 2.0f;/ F$ P# P8 _" h' i6 U" B8 K: w; a/ z
                        // á?oˉ
7 o: [! f* \' ?( Z5 w& b                        pLight->Ambient.r  *= 0.9f;
$ l. @; F) R' i7 M6 P                        pLight->Ambient.g  *= 0.9f;
3 l: k) N3 I. ?6 z0 @% b                        pLight->Ambient.b  *= 0.9f;
, ~( `' B* \% c* {' `7 t5 Y" B' S  R3 o2 N* J* W# `  o2 Z. E5 n# g
                        memcpy( &m_light, pLight, sizeof( m_light ) );
5 q; H4 U4 R9 M( C3 `                        # \# K: z; g5 E  ]
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );$ S& {: Q) k  j' j
                        pLight->Appear( m_pd3dDevice, TRUE );: G. q# ~5 w- v
        6 }1 K, B& R9 M1 g" k3 C
                        DWORD dwR, dwG, dwB;3 ^  @8 \! x( Y# j0 P; A$ m
                        dwR = (DWORD)( pLight->Ambient.r * 255 );/ z9 {! {" s  s7 X9 A& |
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
' W/ X# ~5 U5 U  D3 G                        dwB = (DWORD)( pLight->Ambient.b * 255 );
! C' k# r; W4 _: k! E                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );9 h8 A% z. l7 w6 ?! @( y
                }. F/ U9 n/ o6 k  O, I) }' J/ R
        }! d; r0 u1 y. P. A
        else7 I4 c3 M) L7 D* h2 ^! d& q* D( r+ _
        {
1 c( b$ W, x9 v  Q" P9 t7 @* f                if( pLight )
+ m& i: T  r0 \7 A* O. k                {6 P& o4 a$ i( z% f2 z5 k
               
# X7 v9 \# V; c, L                        int nHour = 8, nMin = 0;) a% d  s+ {% q9 L. r1 C- v  U
        #ifdef __CLIENT
: z/ U: ]' n( d& J. a( A                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 2 e% N4 a' d' o+ j, a9 |
                        nHour = g_GameTimer.m_nHour;8 g% U8 C$ [) g- I- |
                        nMin  = g_GameTimer.m_nMin ;
* t4 [. }0 l8 A) S0 _        #else2 X" {( ^/ `! K2 g7 y
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
: h# U# J/ C" K1 F* Z                        if( m_nLightType == 1 )7 b! @& X6 J! s
                                nHour = m_nLightHour;
' N( t3 w1 n+ k$ p$ n. C( G+ t2 i        #endif! C5 V  ^3 t) a( W( l9 [
                        nHour--;) x# m; H% ^% I8 T# k+ L+ m
                        if( nHour < 0 ) nHour = 0;5 ^7 F+ B6 B3 x  g# w
                        if( nHour > 23 ) nHour = 23;
5 k; }7 I7 B$ u! ?% _( {" _0 w0 V) f& U& u0 A0 T
                        //if( m_bFixedHour )
( e0 I) X7 x1 x3 h& c: R4 T                        //        nHour = m_nFixedHour, nMin = 0;. P' r- w. @, l9 r# [( u5 r
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
5 p# z* X! v$ B: D" H  Q( P                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
/ B& ]: ~0 g2 N  G& m" y1 F9 w8 K: K* W: [4 k, M
                        //m_lightColor = lightColorPrv;2 Y. ^8 `/ _) F* J5 S6 B& E
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
) l/ p- {) _2 t; X$ ^7 j( V/ N                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;; v* d) b7 O" D1 z5 ~/ s
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
' u8 u$ b2 W8 v                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;6 s; N) d2 E( y  z- u; @2 {' v7 c
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;7 u% ^6 o8 ]: {9 W. N# k/ k
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;( B. m6 b- O3 d# k
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)' x8 }4 T  O) u. X' C
, z( H& J! x, Z) U, v( s
                        // à??μ oˉè*
+ a' H/ Y6 o+ |                        pLight->Diffuse.r  = lightColorPrv.r1;" x! k* j( G" d. w4 S) S$ a
                        pLight->Diffuse.g  = lightColorPrv.g1;7 n! [  I& z* }) p/ h$ }* n
                        pLight->Diffuse.b  = lightColorPrv.b1;  s) [8 i' p1 K2 I$ v
                        // oˉè* ??à? & W" `! B- m  W2 `& x2 w! B" s
                        pLight->Specular.r = 1.0f;- ~( o  L  X, j
                        pLight->Specular.g = 1.0f;, ]) l0 ~1 c& M; a% H6 ?) j
                        pLight->Specular.b = 1.0f;
; i$ w/ u* }. u5 \# h                        // àü?? oˉè* ! H; X2 P7 e* V2 i, [0 r9 A1 P
                        pLight->Ambient.r  = lightColorPrv.r2;4 J# v4 s: z( W! ~6 Y% X
                        pLight->Ambient.g  = lightColorPrv.g2;7 V4 r6 R" @( m3 O. r
                        pLight->Ambient.b  = lightColorPrv.b2;
: p; a: {, N+ R7 e3 S7 s' r' K* m9 R0 O& L4 a. f0 C# v  V
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.7 ^& n1 \8 f% ~3 v6 D6 Q, U1 D
                        {% V/ D* g' P) E
                                pLight->Diffuse.r *= 0.6f;, p' E/ N; _$ @
                                pLight->Diffuse.g *= 0.6f;
$ \4 |7 m! m) _9 r3 I, a                                pLight->Diffuse.b *= 0.6f;
; q/ ^2 ~0 F" c2 v% I! \# r  K" H                                pLight->Ambient.r *= 0.7f;
/ }( B7 b0 l: m1 [. U/ s                                pLight->Ambient.g *= 0.7f;
$ C* S- \' W. [; q                                pLight->Ambient.b *= 0.7f;7 h4 q4 O% t7 n' g
                        }2 o7 p5 i$ w$ r/ O+ z1 t
                        9 q0 |( l3 E$ S0 d& N) G$ r
#if __VER >= 15 // __BS_CHANGING_ENVIR3 y8 c8 V5 h$ V# W! l
                        if( g_pPlayer )
0 V0 J6 o7 u! {. D( ^                                HookUpdateLight( pLight );
# _/ m9 Z$ @& }8 M$ ~#endif# K5 y7 k% O& `! p# [: x
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );! r) u* x! T7 E2 o

7 ], @7 f: I! `8 s#ifdef __YENV$ K" i4 L: L+ T- o
                        pLight->Diffuse.r  *= 1.1f;0 r, {" Q5 ]4 y
                        pLight->Diffuse.g  *= 1.1f;
- y0 l0 G5 c% |) N- l' c+ z, r5 X                        pLight->Diffuse.b  *= 1.1f;& b5 i9 i) I, i/ B* M
                        // oˉè* ??à? 6 p. Q+ F0 v  G( l5 k  D3 k, b0 A
                        pLight->Specular.r = 2.0f;  d- I" Q" |- N
                        pLight->Specular.g = 2.0f;1 i! k* k( T( X0 q9 r$ }
                        pLight->Specular.b = 2.0f;2 l& @" O0 J# g; \8 R# |
                        // á?oˉ
  s+ J* Z, c/ F9 X                        pLight->Ambient.r  *= 1.0f;
- O) C6 X/ t7 J3 H( H  r2 r                        pLight->Ambient.g  *= 1.0f;  J7 k5 G0 a4 @8 h; I- P
                        pLight->Ambient.b  *= 1.0f;* ?5 M; H9 n0 w
#else //__YENV
+ @" Q+ b, b! b2 b5 _                        pLight->Diffuse.r  *= 1.1f;
" i; \. W2 k4 v6 k: w1 g                        pLight->Diffuse.g  *= 1.1f;
' |. }! l1 l+ f5 z& j1 j+ j4 E! }: _                        pLight->Diffuse.b  *= 1.1f;5 h0 E: G4 e1 G6 I' ^! C; b
                        // oˉè* ??à?
" l% G; i1 t; W) l  U1 y4 w* B                        pLight->Specular.r = 2.0f;
- {! d* z: ~# ~% _                        pLight->Specular.g = 2.0f;
1 q+ O- S7 |1 m1 ]: f1 A. `. n                        pLight->Specular.b = 2.0f;/ ?" Q3 A% M' ]: G0 D$ @2 ]
                        // á?oˉ
  E) }$ E' Z* i2 Y2 l1 l# e                        pLight->Ambient.r  *= 0.9f;9 `0 @0 w8 ]* c* h* X0 x8 `6 y
                        pLight->Ambient.g  *= 0.9f;; n8 P4 y1 i1 o$ Y5 u
                        pLight->Ambient.b  *= 0.9f;
  O0 G# V5 |' H! o: D: u+ `#endif //__YENV
% S- d5 V5 H) e; q                       
; b1 w% v2 L, r( |; o% S+ Z                        memcpy( &m_light, pLight, sizeof( m_light ) );( j% S4 T; J" V3 n) t, C
                       
) W1 V' i! Y1 R9 W5 h% i                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);9 G4 ^! }" x2 w8 s- J
                        D3DXMATRIX  matTemp;9 p" p, v; l  e3 w/ G' _8 `
                        static const float CONS_VAL = 3.1415926f / 180.f;$ t* {' w: |. y3 k$ `6 I8 E
8 m1 k5 O# ^1 ]4 K
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);; S/ l$ t7 D' _6 K+ @
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
, G6 P3 _" h. a, ~1 L7 x- F                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); ; U/ i: g& R. A& }( R
                        pLight->Appear( m_pd3dDevice, TRUE );0 e6 z6 I. W, Z8 X

) Z) a( g3 @0 `/ b/ L, Y. ]- E                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);( Z. |9 X( P) e6 k* N/ X1 g
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
% X% ?7 I* m4 u) w5 n/ v9 z* a                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );   G: ]) d$ t1 L4 i5 l4 H# V  d
: D" h& y9 [; {/ v$ Z! c
                        DWORD dwR, dwG, dwB;& O; ^2 x: |) s# r7 q6 ^, }
                        dwR = (DWORD)( pLight->Ambient.r * 255 );5 P$ H5 }  `: t# Q& y# e8 B+ p6 L
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
5 N& l; X4 k9 a7 E                        dwB = (DWORD)( pLight->Ambient.b * 255 );3 Q4 d1 ?' b/ x  Z, V( M4 h) M
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
9 ]" ]. c2 ]: B8 q, l. c2 w7 K                }* w2 l/ Q, ^- Q1 r$ r( M' a" U
        }
2 j3 G+ ]  Y  O. u: @) F6 J$ S
  o; o) E) i& ~0 g0 o: A( T! ?8 i7 ]        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
/ m) C3 }4 Z& 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) );+ ^3 Z! j( ?0 i+ ~$ J
        ::SetLight( bLight );2 F" b) \3 i2 H: I! y3 {" d

5 Z3 q0 `% \) N% @        // ±ao? ?D?í???ó á¤à?
9 B- X7 ?6 d9 q. b' w! J        m_pd3dDevice->SetMaterial( &m_baseMaterial );
: f* m3 [$ V" G  U        $ O0 O4 r  T- n8 F
#endif // not WORLDSERVER
2 S' @* B9 R8 p, p4 d}9 B( W- s( F; q; }& v  t% p/ L  c
并更换' \3 P8 t* l% b+ p
Code:6 |2 S3 I! M% l/ }
__FLYFF_INITPAGE_EXT
# b" L2 S' X4 N" i! s定义
- T$ C+ Q& j& a1 R* _& T! @1 o' u& k
2 r- [. `* d  u$ b8 v9 i
5 w1 E% ^3 j- R7 j& j& t" `/ T
- r1 {$ e5 q. ]2 V  M* O" W
现在终于删除我的狗屁加速...
/ `* Y5 H: ~; K0 @9 e& A) Q0 t% N. q+ R, h- G4 ]' M

$ [: ?0 _& F4 L" \4 G" [: L
* s* M( c  R  X6 r! e




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