飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:8 u: q" W. |9 [
尾翼:
0 S# u6 p' f0 W0 ]3 P) e6 ?& x6 b- t* k: Y9 y4 k- W4 d
代码:
7 U2 J5 h) H$ h7 p) e1 WCWndAutoFood::CWndAutoFood()8 F2 p) W5 u7 M7 I
{5 p! L6 s6 d+ ~
        m_pItemElem = NULL;
) x# M+ ~: z1 j/ V0 n        m_pTexture = NULL;* a1 a; v. G. M( E) q) K% G  j! S
        bStart = FALSE;- ?* S3 @" C: {7 @% S$ K0 f) M
}
& D: y% {7 D$ J/ L' Q0 \+ B
) H1 k8 P0 H2 m1 E, gCWndAutoFood::~CWndAutoFood()5 ~8 e; e# r+ C/ T% @7 b3 g
{
" r$ u: T. Y6 c& y3 }        AfxMessageBox( "AutoFood ist gestorben " );
6 R  C' E) I# P* e/ q}+ C/ H2 U0 c! \. j; K3 n! s
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
3 ?2 A4 G, I8 I{
( Y7 V6 D# W# u: }3 w        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
1 `" ]' K1 D0 M9 ^' l}
1 L2 ?  R0 j' b+ |9 j; `! O3 L2 T7 S: b( q" ~
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )" m- [( n2 i) m( O' d
{& G3 W' G& }6 r% D: {" S. @
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );( i' j9 H% Q1 k: j) @
        CRect rect = pWndCtrl->rect;# r. m) Y$ n! A6 ^
        if( rect && rect.PtInRect( point ) )
7 J8 `- K7 }" t        {- Y7 l' a- P) v
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
8 X/ d4 Z/ i! j9 `# C/ R                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
+ V- s8 Z( P  J, K4 v                {/ _7 V: @& c; o- f+ M, A5 z
                        if( m_pItemElem )
4 O  b) Y8 M$ J1 k9 T                        {# W) l7 @. I* U0 f4 U3 E& A, z. E
                                m_pItemElem = NULL;
1 M/ \: P$ F, E; S. ]5 e* u                        }
$ V0 k+ z# d5 Z                        m_pItemElem = pItemElem;0 g6 T9 Y: }7 ~
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );4 ^8 D% |, o/ n) m6 c6 H
                }else{: W0 Z8 b9 j: I& Q& R
                        SetForbid( TRUE );9 ~* F0 a; s  X# ~8 Z% g- s
                }
: ^6 ]2 A0 K. ~        }else{
. |) r( A* }4 O8 H4 m: k8 s2 j                SetForbid( TRUE );- _# f* _& g6 y4 k( i6 q$ u
        }
. h) H3 X: W# i% x, E6 U        return TRUE;$ F: l* [$ @" D4 A2 @; M
}8 K. ]6 e3 P7 D- A( ^2 f, o3 |

3 W5 E+ V; {7 H* c* v, S% nBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
% [; f9 l' i9 j& E. r, z9 J{9 I7 Z, I7 y7 m5 p, t
        switch( nID )
; k6 P9 j' s+ m4 k# V: f: M# h        {
& U8 A) z& r9 @/ W( @        case WIDC_BUTTON3:
: P/ b5 ?- c2 F- B                {" x1 U+ I6 w* ]) R: g5 K. q
                        bStart = TRUE;  R0 G. ~+ W! [$ b. i# m* T
                        break;
" Z9 J2 I( W# q: l                }/ j: Z8 l; M  w/ Y# @
        case WIDC_BUTTON4:
# a# R* E: B7 g/ \  U' h4 o5 N4 x                {* ?& o6 ?$ J- p8 }. [7 A4 \0 P
                        bStart = FALSE;, x( q) ]) u: g0 Z
                        break;
$ c. h! q9 J, E$ K" g  J: D                }
6 D5 H! y  v. L        }
9 ?" q% A. R3 ?# P        return CWndNeuz::OnChildNotify( message, nID, pLResult );& S2 D- Z* C7 X+ j, ~- U2 j5 F
}       
) c5 _$ g- e' P. g% yvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
/ G. c( \6 y" D2 M4 F5 `: I/ e7 o{& C2 c+ x! s* t6 b0 r
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
$ `, R$ y) o6 m' g5 w- _6 T: u5 J( s        if( bStart || !m_pItemElem )
! H  i/ S8 j+ |; b0 z- F6 o; S' X/ B        {5 ~: x* X0 F! b  ^0 k
                pBtn->EnableWindow( FALSE );
  E& N4 V' Q9 u6 t3 w        }else
- ?$ o  v+ j' k& q5 c+ a                pBtn->EnableWindow( TRUE );
* T. c5 Q4 B2 H) Y' C, E        if( m_pTexture )
$ E7 m2 o0 u" T) u$ a- \$ w        {
: P2 Y; M* c' M: [' j$ j$ D                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );$ z* L( z: I- b: i: |
                if( wndCtrl && wndCtrl->rect )
' E( q: c/ \, Y  D8 t6 [" r0 n' X                {
9 r# U/ ^. A! T8 E2 l                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );$ @7 O8 Z% X  s4 [0 C* V- G' y
                }
- U% T% w3 I9 d; a        }) P: w% [( `  Y: d  ^
}: `  |( F6 d; E: P0 }& U
7 d; z# q( u- a( k6 q8 R0 S
BOOL CWndAutoFood:rocess()
" }! N& |2 T5 Q- G9 Y1 p, C6 T* `{& d/ O3 m: J( W: b+ s! U
        if( bStart )  k% K+ ?$ D' |' E0 `( G9 H2 _: P! A  v
        {
+ b" t6 b1 M: w8 i* Z% G: @                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )$ Q6 O0 b# r6 [! V# A6 C  x5 v. |
                {$ u0 ~3 h$ H; v2 j0 w
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )- e) C; D9 ]9 z: j6 z- u  |
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );8 p0 c7 @7 Z" S; F3 w/ a8 U
                }else{. e: j: D9 u" ^4 s1 o$ L
                        bStart = FALSE;
6 ?/ E8 D& I+ b" ?# R                        m_pItemElem = NULL;
9 h9 a0 O4 Y0 b* g3 e; P# J                }- Z9 w! g8 n3 I2 P# g7 Y; `
        }
0 d7 f0 f' h1 ?; c        return TRUE;1 n- \  Y7 X/ Y. J
}
( N7 g5 P5 d! M: |& [; w: Y% |8 V/ W
登录视频废话:$ h  n0 r$ q5 K# S* g  z6 m
尾翼:
) J  n% L: x) F; A3 Q: Y/ g1 a* J1 k. P/ G# t
代码:
* C* \' `2 x/ b/ t# i/ J& L  C/ ^" S8 g% F3 B' b
void CWorld::SetLight( BOOL bLight )3 }# c2 _. w4 i3 Z1 v/ y- j
durch$ v0 i! Q6 X# G$ |3 Q$ F$ v; g  N
Code:
; B3 E' }! R8 g( I( V: Avoid CWorld::SetLight( BOOL bLight )1 `& @6 ~* ^9 I- s
{% b' S/ g( k/ L. |1 u
        //ACE("SetLight %d \n", bLight);4 z$ N2 ^7 \5 m% J3 H
       
: [; {  r1 t9 @- {) c; r9 Z#ifndef  __WORLDSERVER & ^7 p# a- k: l# D# k# l
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
: U, o" p! m( z/ k        CLight* pLight = NULL;
4 Z: K9 q" Z6 C2 s% E$ K; Q+ X: j: |. U- L0 r' k! u
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );5 K  Q0 D6 t! O3 s

! h/ N' E3 ~: L( {" G+ v        pLight = GetLight( "direction" );
& f3 U/ y7 G/ `6 C, w& a6 e" O& N
5 J7 M6 [0 @3 v#if __VER >= 15 // __BS_CHANGING_ENVIR5 ?+ P5 C$ _2 y7 A' o- W! \
        if( g_pPlayer ){* a! R/ l$ m! M1 i
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );! X; _5 I! b" X  S# A) u$ n" Y0 V! \
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!) J: L9 k5 ^1 N# z% }
                {
# n+ A* n/ c0 a, s: K& @' P                        if( pLight )$ z$ k  [+ b/ C' U2 x4 y
                        {
6 h! S* I' \) P' _8 T; u+ ?                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
1 c; ^+ i( w$ o$ N8 W, s5 [                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];: y) c9 A( S5 t( _2 N
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];; ?- k) p$ R% W/ l/ q* H* p' [
3 L+ v5 p  g3 l. ~" @/ ?
                                pLight->Specular.r = 2.0f;
# w$ N4 e( \6 r) x/ W& T! M                                pLight->Specular.g = 2.0f;2 U' ^6 l. x, n# O
                                pLight->Specular.b = 2.0f;/ {" h0 V& f* X, {5 Q
       
# x% t) |' F! q0 n2 U4 B9 C                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];! p$ w# C# o9 l+ q+ V) `$ v" ]
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];& h; v& ^3 `1 Z, C5 c  Z: [
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];: l7 r: r. m% O/ |8 _% `
       
) N: Q3 e9 n5 S4 |/ |- \: k% o                                HookUpdateLight( pLight );
$ a- _. f  S6 h7 y5 e
5 {0 m( E: ~6 a& M3 a8 U% o8 d                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );4 U, ~+ z5 q( c& m. E" _1 G( Q
                / a: h# {/ U8 B, Y" [* @
                                pLight->Diffuse.r *= 1.2f;8 W! f$ f$ J  s. E/ Z
                                pLight->Diffuse.g *= 1.2f;
! M" i7 `+ w; K5 J9 ?/ R- {' Y                                pLight->Diffuse.b *= 1.2f;2 U3 _# [4 n* D9 i! y

! q; K% G8 \, [: h9 A( q                                pLight->Ambient.r *= 0.8f;
! K' N3 [1 ^: @% c, \                                pLight->Ambient.g *= 0.8f;
; Z( O- _$ w. J                                pLight->Ambient.b *= 0.8f;
! B3 v9 I  K& r6 C        " d4 y7 V' p8 t) Q7 M
                                memcpy( &m_light, pLight, sizeof( m_light ) );
5 ]8 p( G, z) D: L
! @5 j% C+ E4 o3 m. L                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
+ h6 O+ P5 @' L$ D1 \( E                                 D3DXVec3Normalize(&(vecSun),&(vecSun));+ O4 c) l  F$ j7 o2 x6 v
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
6 t0 u! J. L0 B- {( V0 m+ v* Z* o                                 pLight->Appear( m_pd3dDevice, TRUE );
# H* j& z4 q0 H7 c7 Z! G: j                6 s+ ~- [/ X0 Z! x
                                DWORD dwR, dwG, dwB;
% `+ A8 t+ W) P! \4 a4 I3 @                                dwR = (DWORD)( pLight->Ambient.r * 255 );" t( v3 X+ Z8 {& |. }$ S
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
. ~. u( k. Q" k5 r5 L                                dwB = (DWORD)( pLight->Ambient.b * 255 );
1 K# A- }' Z$ Q) n* M& @                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );# N/ m7 U6 j$ Z; V3 G- B
                        }/ _3 M9 C) `6 a: {0 F2 ]5 f! ?
                }
7 z( f; @. s- P- W" i( k        }
/ B: }/ j* q* ?; Z        else% ^5 B/ B8 E$ g9 [: \  L& o- ^( Y
#endif * P3 L9 u, i' X- |8 j) P

2 L  ~0 X) V: z        if( m_bIsIndoor )5 L$ }; g  n' A( S" G9 q
        {/ d4 W/ m# g* c+ f: r
                if( pLight )* V8 h; s( P) b0 G- h2 f
                {                + c& q6 K* i2 l; l/ h. A
                        // à??μ oˉè*
# N( F* u7 X# G+ v* H/ Y+ W                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;; E1 K! v5 Q4 [: T* \  N, G
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
  u8 e3 y5 S  q                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
9 i. z4 j! O5 o. A( H
$ M% e- y0 r& C& V                        // oˉè* ??à? $ {/ C. j% J; F1 I
                        pLight->Specular.r = 1.0f;
6 q5 H1 @' v8 ~, ^                        pLight->Specular.g = 1.0f;
3 E/ ^% F& k. F% K7 [4 C                        pLight->Specular.b = 1.0f;
" e+ p' \4 j# L/ i6 z                        // àü?? oˉè* , b& h6 G/ G+ Y( X) x1 ?- t
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;) f% m: A$ E. j
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
6 \2 y/ P5 d' g) Q. P                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
  M1 T$ D% c! |* |. I1 y
) P, y$ z1 O: Y4 _! K0 N                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.! N7 a0 x1 r% a8 l( {
                        {& [4 j4 H8 V4 i/ u$ Y
                                pLight->Diffuse.r *= 0.6f;
$ X  P/ J  f+ _+ E8 H2 \1 |                                pLight->Diffuse.g *= 0.6f;  O: N- a" u$ o  N. \2 d1 u
                                pLight->Diffuse.b *= 0.6f;
" d' G! B7 g! K& K9 r9 k                                pLight->Ambient.r *= 0.7f;9 L0 Z! F" v3 S! r
                                pLight->Ambient.g *= 0.7f;
' j2 Z3 @4 f, r) a% l  Q) M                                pLight->Ambient.b *= 0.7f;
( d1 q) S- c6 I3 p" z, R' F" u2 _                        }
9 D" j, U+ H7 g4 H" |
$ B; v% l2 F1 K3 ^2 T$ x8 C#if __VER >= 15 // __BS_CHANGING_ENVIR
: l3 Y! S+ o8 i# g                        if( g_pPlayer )0 ]* v( o. g/ s2 h
                                HookUpdateLight( pLight );% b3 a' S  m' B4 x. @
#endif, Z+ i+ j+ b/ g& }( d4 e
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
- c# N+ ^- w2 i$ C: u- b6 G" F& ?
                        pLight->Diffuse.r  += 0.1f;% {3 a2 x7 n1 S' K9 Q* ^$ [: x) g
                        pLight->Diffuse.g  += 0.1f;7 e9 v7 x' Y/ s3 O9 n0 }2 V
                        pLight->Diffuse.b  += 0.1f;
0 z, k, C6 Y% ~9 S                        // oˉè* ??à?
* y$ K/ k+ Z* ?                        pLight->Specular.r = 2.0f;
, G: \6 u' ?, {5 I2 N                        pLight->Specular.g = 2.0f;
5 z- B* E! s8 i0 l, i7 C                        pLight->Specular.b = 2.0f;2 r/ I* O/ m) e( Z- d0 j* }
                        // á?oˉ . ]2 a" J; R/ m& S. C3 ]
                        pLight->Ambient.r  *= 0.9f;  @3 h& Z9 \0 l
                        pLight->Ambient.g  *= 0.9f;7 G% U5 u- J' q5 }# G9 Z; c! S
                        pLight->Ambient.b  *= 0.9f;+ Y8 q3 y- ^' A3 ~7 G+ |

' S4 r6 k* s7 k4 Z                        memcpy( &m_light, pLight, sizeof( m_light ) );
" a8 p1 ?% c6 j) }) V9 c                        ) _. r: c+ T0 d; I2 N4 j0 W: Y. H
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );/ L! p) B  |( ?+ H( Z0 i- j
                        pLight->Appear( m_pd3dDevice, TRUE );) K+ u% k$ z0 y4 z8 N
        9 a* G+ u- t7 z! A+ ~
                        DWORD dwR, dwG, dwB;/ E  U! r# [( }, f
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
3 b5 {  x0 T: W& ^$ y3 E+ `                        dwG = (DWORD)( pLight->Ambient.g * 255 );5 P7 Q) L, ~& Q0 E4 J; X4 ?
                        dwB = (DWORD)( pLight->Ambient.b * 255 );! g. F$ X+ r6 i% ~
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' j/ E# g. f- U. ?5 J8 ?3 T+ `                }9 j# z  k/ }3 X
        }
: b0 {/ X0 Z. o$ Z        else  O* }: l( o5 m, Q
        {" F4 f( H8 U; c
                if( pLight )
. j# G, _2 [  e& J                {; R$ D( V0 J4 H. k
                & h, _. u* G( q+ P  q2 }6 d
                        int nHour = 8, nMin = 0;
( k3 ~2 ^- P, ?  q& w' C6 O! j        #ifdef __CLIENT
4 _+ D# ^: m; g                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
$ w# e! s: u! w+ z8 t# m! ^5 i                        nHour = g_GameTimer.m_nHour;$ ?+ R/ q8 r) T9 K
                        nMin  = g_GameTimer.m_nMin ;( f7 T4 J* E' D+ L" f& t3 t
        #else" g  a+ ?. V6 t, T' }
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.! I; W4 U+ R4 f4 Z
                        if( m_nLightType == 1 )
" S$ c  E$ y6 G) f2 C  N                                nHour = m_nLightHour;( f  N6 Y+ Q& W: f& W3 _
        #endif- Z$ ]" i! T$ R4 W0 P, a$ T6 g, w; z
                        nHour--;' U7 H6 D- h5 ?! E1 N
                        if( nHour < 0 ) nHour = 0;9 B; M# q: ?" F4 X
                        if( nHour > 23 ) nHour = 23;0 I- t# E8 L* ]9 |
2 M* ]8 K* H4 M+ g& v$ z
                        //if( m_bFixedHour )
8 N3 W" n% R; V1 I7 |& y4 l9 F  W' m                        //        nHour = m_nFixedHour, nMin = 0;* m( c% i6 ?* k6 N/ |( s
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
' x1 w4 |+ y+ \                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
, {* ?# i( \) a' |& O
: F7 @5 K6 i+ @9 X5 M. f                        //m_lightColor = lightColorPrv;
+ @6 M& R/ q/ w9 s                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;  c( e* S, U) |/ _- K8 l1 y
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;" J; }2 l2 E: K  r) r( T
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
* D6 z7 q; l3 y8 S' R! j                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
/ Q3 Y' U, ]4 W                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
+ U9 z+ J7 c* `. V4 p5 o5 u                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
# p$ [$ `/ Q" v$ F; y6 y                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)0 q' o2 G( C/ {: k- @
- ?& N) U& q* W% S/ \- u
                        // à??μ oˉè*
( O/ a5 I  h1 m# C/ B5 q                        pLight->Diffuse.r  = lightColorPrv.r1;* R* i- m) {  c% ]
                        pLight->Diffuse.g  = lightColorPrv.g1;! f0 Z' w/ {7 ], v$ g, P& J
                        pLight->Diffuse.b  = lightColorPrv.b1;
) p4 B, \9 w9 O9 q- O7 S                        // oˉè* ??à? * C6 P2 Y  g1 q  D( f/ v* `. Y! b
                        pLight->Specular.r = 1.0f;
% c; Y3 }- I9 q: q1 ]9 w                        pLight->Specular.g = 1.0f;
7 C1 I3 C7 d- U8 f* p2 C  h. R                        pLight->Specular.b = 1.0f;
; S9 w. R3 u( u9 u                        // àü?? oˉè* 9 N; \* N7 B# I
                        pLight->Ambient.r  = lightColorPrv.r2;( N: b- S6 I$ J' D# k
                        pLight->Ambient.g  = lightColorPrv.g2;
3 f/ c/ G. ^. \9 M& A2 L& a                        pLight->Ambient.b  = lightColorPrv.b2;* Y- d6 z0 D, A$ W
* a- K; G& L4 o; ]* q; _0 V4 O
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 P2 U5 Q8 y( n- [3 t( D. U                        {
1 V, A. W- L6 K# e                                pLight->Diffuse.r *= 0.6f;+ l2 h& _5 S3 c0 j7 ?' C
                                pLight->Diffuse.g *= 0.6f;
6 p1 }2 Z5 A0 h$ |. ?, p! m& T/ @                                pLight->Diffuse.b *= 0.6f;* H* a* _) S- c# V
                                pLight->Ambient.r *= 0.7f;5 \! Z: ^7 r3 d$ b% O0 I. y
                                pLight->Ambient.g *= 0.7f;
# u4 V) f! @/ E$ x* `( I* M                                pLight->Ambient.b *= 0.7f;: i0 a& X6 [% \: t- {
                        }3 P# x- M; N2 P  s- G; f* T
                       
1 _' \, w' o' N& w& W7 m#if __VER >= 15 // __BS_CHANGING_ENVIR7 ?6 H1 q: _9 y% v( P$ v
                        if( g_pPlayer )
0 f8 `; ~5 \+ O6 E% o3 R9 |9 {                                HookUpdateLight( pLight ); 0 \* r' L* O1 P- e' \* B& A0 ~$ d
#endif; i1 D' P8 ~2 v1 r7 k9 F& h
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 l& Z7 m" Z' ^* M& {; J) ^
$ I1 d% a0 t: V: D( T2 x; U9 n#ifdef __YENV
/ ^0 a% m6 Z5 d- S2 V& H* a/ N* H/ g$ m                        pLight->Diffuse.r  *= 1.1f;- f( M+ [; ~5 |; H3 t
                        pLight->Diffuse.g  *= 1.1f;; R2 D6 W( g! N# T" u
                        pLight->Diffuse.b  *= 1.1f;
5 ?# r  s- v5 {: V1 O9 u& V0 f: r0 i                        // oˉè* ??à? 8 t! p* f& P) ]" ~7 s0 `
                        pLight->Specular.r = 2.0f;. D/ [. ]2 `1 g% f3 F
                        pLight->Specular.g = 2.0f;
* V) W3 v' H/ h9 Z) L' }4 B, m8 ]' A                        pLight->Specular.b = 2.0f;
6 P* w" k( d3 J7 D  R& f                        // á?oˉ
2 y& ]$ ?4 m7 m% o# B4 v6 a# s                        pLight->Ambient.r  *= 1.0f;/ `/ P2 i& ]" p) |; P; m! E
                        pLight->Ambient.g  *= 1.0f;
% \! d. T" b* `9 ]0 _2 Z0 E                        pLight->Ambient.b  *= 1.0f;3 ~0 {, @$ N" v, \, x
#else //__YENV
( h( G) D& @1 t7 |                        pLight->Diffuse.r  *= 1.1f;
$ g7 d2 q2 V% f% U, x" @                        pLight->Diffuse.g  *= 1.1f;/ y, G5 N9 |/ E1 ~* ?
                        pLight->Diffuse.b  *= 1.1f;
! h/ v' U3 r5 g                        // oˉè* ??à?
) L* I. s% e0 i  u/ ~2 V0 n                        pLight->Specular.r = 2.0f;# t2 A! z5 N* ], R% d5 A6 _
                        pLight->Specular.g = 2.0f;
; @+ N, C, b! Y4 \                        pLight->Specular.b = 2.0f;: j; M: D' j" E! K+ h6 N+ X# `
                        // á?oˉ
% L- y( Z9 _, f                        pLight->Ambient.r  *= 0.9f;! `* |. s8 W' ]2 u) N  c% U
                        pLight->Ambient.g  *= 0.9f;
4 S7 K+ I- N5 z                        pLight->Ambient.b  *= 0.9f;
1 W8 {, @( c8 R& |% N#endif //__YENV
% x( e5 T0 J% l3 t. Q9 i4 ^3 `                        0 V- L5 A* o8 w3 k( e4 H
                        memcpy( &m_light, pLight, sizeof( m_light ) );
4 i! `" D9 Y! C% B0 L2 i  \                        " ]! q) Q6 L% d, k  {; D
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);2 m0 D- n0 [: Z/ g- e. ^. L
                        D3DXMATRIX  matTemp;
) V0 Z! w$ T- o+ g3 \# Z) Q2 i8 q                        static const float CONS_VAL = 3.1415926f / 180.f;
7 W' [5 d( @, [# F
0 N4 b6 ]$ T; @6 ^1 N) p  x                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);- X7 S4 n% j" i3 t/ }; |
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
0 V% X9 s" t) A- l                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); $ r# s* i) ?- z
                        pLight->Appear( m_pd3dDevice, TRUE );
4 n. {! Q, A/ N% f0 W; y5 M9 e) E7 J  F& h' u' x) J, S8 J' e
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);- B* h% W- t1 T% Z' S
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));# @$ \* P7 w( O5 W& _* G
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
; @$ ~- \1 [" T6 P! s
6 B( o9 g; a0 K8 Z8 |                        DWORD dwR, dwG, dwB;
2 i7 i1 F' ^1 U) W% y2 a3 Z                        dwR = (DWORD)( pLight->Ambient.r * 255 );
* Z0 j/ @2 K: W/ t$ j3 O                        dwG = (DWORD)( pLight->Ambient.g * 255 );+ @4 [% ^" ~  b9 b, f; F
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
) q' n* x. h' f; t. u                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
8 E0 n( g: W3 \: _) j6 P5 b                }3 b+ `) E  T0 U, Q: _- p! Y8 T
        }5 Z2 ?4 |$ d% v6 a2 E* L& C

9 O8 h- y" U5 J, m) K+ l        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
9 @* g) R3 h% `( t& 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) );
" Z6 y% P9 C$ F( S        ::SetLight( bLight );
2 N* \0 y+ N' K1 {: t7 S( q8 X  @) Y6 `9 _0 s, R: t* r
        // ±ao? ?D?í???ó á¤à? 1 @5 b# p; M& s; H* H" d, d. ^
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
7 H' M  r7 A. G1 H( o       
7 \' N" H8 t. `; M4 `#endif // not WORLDSERVER: {/ |. J5 l  B& e
}
) J3 }) C, v$ ]3 d0 K6 E并更换
! n. F" b  |" u( I& h- ECode:8 C" f+ C" e* a# \3 D: `) P% N
__FLYFF_INITPAGE_EXT
' O, O4 \* I  t4 _定义
: w5 v4 R% q$ i- F& v  T+ w4 W6 o! j) m5 \

/ g; x$ D3 D# ]  N+ `7 k! f% E8 c: B8 Z
( [6 {- ?3 T% X3 N( l% m% G
现在终于删除我的狗屁加速...( O- L$ U# D6 V  |+ ]! p
( g  J  h- ~. k* m& Z4 R3 }

! y6 Q6 L$ g, {* f5 ~, ?" g3 G% Z# g0 @: y  s: W2 ~/ d





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