飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
+ ?1 S3 T* V; f2 o2 S7 V# K尾翼:
! Y. [# l* d6 {, h. u: K5 \: ^8 O7 s. _
代码:
0 r& P4 `6 i; {# T2 HCWndAutoFood::CWndAutoFood()
8 a& i7 o9 |% w' y, [1 Z{, A' o* R6 i& @" t. m
        m_pItemElem = NULL;
6 {* r' W5 p9 h3 O% J        m_pTexture = NULL;
- g% B. ?9 E& p; q4 O1 j, ~' k        bStart = FALSE;7 o* f! `6 b" Y% Q
}
0 b* j9 O1 i: s# ]4 D
' g; k3 w( [/ G7 P3 u" o5 hCWndAutoFood::~CWndAutoFood()% {8 y. h- t- Z2 e; F2 a
{
3 q1 c# X% B% C. ~        AfxMessageBox( "AutoFood ist gestorben " );
5 X2 |) @7 Y# d. _}; z; U- p, g1 h  a. q5 F" {
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
/ Y0 A% l& }& V3 ^{' C/ X0 E' c) o9 w6 K9 K' u' A8 w
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );9 m5 C$ u" Z& O' |3 o8 R; H6 U
}- C( o) p8 s/ M; k7 C! C: w2 c) P
' @. N5 B8 m9 a2 _5 ^
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
& J. g) H) E" T" u5 `3 @{
# Y9 ~5 k% M! D+ O0 y        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 X2 O9 S% n& _) u7 `  l        CRect rect = pWndCtrl->rect;  O8 C2 M4 b& H
        if( rect && rect.PtInRect( point ) )
8 `$ L4 a4 x8 u! t) `4 ]; O4 ~- |        {
. {/ E! i1 s" Z: }1 A                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
" x* a. C$ c1 R/ g/ C/ s                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
1 [$ F* o9 ~, A6 s7 X                {2 k1 `1 {0 X/ t- N
                        if( m_pItemElem )) a3 l, Q$ P6 Z8 S) K: s. i
                        {
4 g# M7 f* I& V+ m                                m_pItemElem = NULL;3 V0 k0 j/ B- q) K) b
                        }
( Y! D, V5 g1 y9 R( n0 C                        m_pItemElem = pItemElem;/ o; L" I1 {# L/ e" |* A' j
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
$ ^" _1 w; h" ]1 o# y                }else{3 g: L( \6 e2 a( ~
                        SetForbid( TRUE );
3 k3 p( I' t0 n, B                }& l3 M7 L! G" M5 s& ?5 O
        }else{- u0 }) o; S/ b; ~9 \2 U
                SetForbid( TRUE );3 w% a# j; B& k, _
        }
. N4 @+ L! E8 q' l) D6 a$ [* l        return TRUE;
6 `5 m" I6 ?& e, v5 ~}
$ {$ ~6 R, X: k# p: A, q( `: J+ y! X" c. P& @2 @, J) b
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )$ D% b. b- y3 f" T
{1 q7 u/ [5 K) Y  A" \( K
        switch( nID )+ L/ Q! `7 Z1 Y( E& X1 V
        {
; T% g3 ?, |: ]3 O        case WIDC_BUTTON3:
: V, t* Z5 `3 Y$ x) e: l) R" {                {
) n  Z. ~4 _& w* N$ O8 Y6 `8 d                        bStart = TRUE;
; s1 S6 G3 l4 {/ Q                        break;
8 ~4 h9 ]7 ?3 J; v% J; Q" s; [7 S                }* w' a5 f' N& C9 V4 R
        case WIDC_BUTTON4:5 i3 Z5 f0 w# q8 E$ u
                {& \7 ~. N( z3 H6 ]5 e* W' O/ _) q
                        bStart = FALSE;3 T7 x0 f/ q# ~
                        break;
1 Z# D# N1 z% `- Z/ i5 A  E                }
( x7 `  R2 p& N# [! J        }
' V: A" X7 t, x0 d- k8 a' X4 {. E        return CWndNeuz::OnChildNotify( message, nID, pLResult );% u- F- Y2 D: J1 N" o) H1 W6 s( a
}        / f5 l( t( [$ \. h
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
$ z2 l; k, C! S) H  @) D{& ~5 K6 j' Z" t/ [  Y/ V7 b
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );( S4 k' S! f8 Z; W
        if( bStart || !m_pItemElem )! [( d4 [8 {" O& E
        {# M6 W! y) V6 F" z: l
                pBtn->EnableWindow( FALSE );, H- ]  ^" ^, L/ C
        }else- l6 r8 _5 G5 i8 o6 a; T7 m
                pBtn->EnableWindow( TRUE );
. ]7 b) R/ {* O' ]        if( m_pTexture )
% O/ a0 y/ y+ U+ E0 v& v        {" p2 z8 C! a! _7 L; W! T
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" u6 L& k% r  J. A0 L# d                if( wndCtrl && wndCtrl->rect )
% A, _5 C: o! R& s                {
2 ~+ D6 Q5 ^- w) A- ~+ Y  T  q3 m. I5 v                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );- n( n5 ~7 l: B3 k! @" D! X
                }: n. x- O* ]" x, c4 g
        }& z& D3 u( n( }! X$ k
}
. ~; i; @0 @! l3 v0 h- ^5 ], E4 W7 F" f
, ]4 b6 L3 [; b" ~BOOL CWndAutoFood:rocess()7 K) N5 I8 |' ]% V! _/ Z9 x( ]
{9 _0 b# ]2 p* o. K' {: l; h
        if( bStart )
! {+ H$ _7 |0 m  L3 j        {
1 D& v; i* k4 |3 F4 d: r                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
5 b/ Y! d4 B' n9 j                {
- q; J! }4 L4 u7 _2 s                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
( i, R) K& a! J/ V! A8 l                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );& t% e* d: M9 x0 r6 l# ~9 s
                }else{
# q& o3 D: A/ _) m$ g9 b7 Z  b                        bStart = FALSE;2 I5 j  Y* `4 R9 t) W! f+ Q8 y5 w
                        m_pItemElem = NULL;
! J) E8 u: D. ]$ U' f& n/ L6 ^                }3 Q: U8 \2 }- [2 g" w6 z% M
        }
0 N) k5 i9 e9 q# K! c        return TRUE;
% s9 {$ G; ~  d; t}
# Y5 F9 g& C1 ]+ B& N) ^. u5 }& L
登录视频废话:. m" J, {$ Q1 d  Z6 a4 V4 O
尾翼:
0 @; q" }( d1 [$ B
; M2 P  g, ^3 T+ y$ d代码:
3 }( ~5 u' c! x7 l
7 J0 v* [. i/ ~5 t9 y3 L/ ^( g* Cvoid CWorld::SetLight( BOOL bLight )7 d; g" I4 S! c; ]) M9 x* J+ P+ h  b
durch
  V) x8 ~% X* X0 f: p: NCode:" q+ @# u, L1 ]% s
void CWorld::SetLight( BOOL bLight )
5 }! U) l. g. h{$ s& k2 e: i8 v4 @, _
        //ACE("SetLight %d \n", bLight);
* D$ f' Q1 X2 M$ w. k- |+ J' b2 t        8 \5 t/ M) J- c9 j
#ifndef  __WORLDSERVER 2 [) V, s* y% v' R: f
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);6 Z0 x/ e9 D* h0 o( U$ @% D
        CLight* pLight = NULL;* i" \# L, s1 f# k8 O( u6 z* y

4 Q0 h3 X* E% F4 c! B        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
! Y/ {' \  n8 d( a
- O' |+ {4 o& N% k+ d$ X' A$ a        pLight = GetLight( "direction" );" g/ V- w9 F2 Y  y

4 A- w; N& B7 o7 R- Y1 e#if __VER >= 15 // __BS_CHANGING_ENVIR
+ C# C1 D; U0 `' t2 F4 F- K        if( g_pPlayer ){2 V- W: ]) Y$ f- P& _) V( Y6 ^2 W
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );4 \* ]. P2 C8 [" }. L0 b
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!: h+ H6 d2 ?! l2 h# M  l
                {
$ B: |: G) O) [' e4 |! F) T+ t  ^                        if( pLight )
  `7 {$ Y! l$ a' l, O# h, x* ]                        {
4 I) d& R3 @' g. c2 d                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];5 _; {7 j) s' g' x( P6 v
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
5 ]$ }+ |2 U" V4 i% _5 L6 L3 G                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];, g7 P+ \5 A4 I

+ L# {$ D. D- |                                pLight->Specular.r = 2.0f;
' {' Y1 O2 ?. y                                pLight->Specular.g = 2.0f;" P/ d- P! R" j# C- ~6 c
                                pLight->Specular.b = 2.0f;
0 r% [( O2 S( ?7 k5 V       
& v9 L7 p; D* X- T* n                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];( a4 }  }" k6 V0 u
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
4 W; b; R, i! Q                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];% q# z1 K/ }9 \- H) N* t% [: `8 X
        ( _6 n6 x9 ]2 g0 A7 z
                                HookUpdateLight( pLight );
( g: I& i7 J6 R/ ~$ X6 G  s, b" m& u, Q/ x  v- ~" y( _4 a6 }8 b
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );+ M) E5 |( g3 p" Y' g- ?7 k
                ( x7 a. z: N2 g  c/ c. }
                                pLight->Diffuse.r *= 1.2f;/ Y0 X, f9 J9 L: g0 w7 C0 d
                                pLight->Diffuse.g *= 1.2f;
6 u. A: {$ K! R, m0 Y                                pLight->Diffuse.b *= 1.2f;
0 a& M: }4 q4 u, U8 t+ o0 w+ R; u; {( |$ ^& j% J2 o8 }! v% c
                                pLight->Ambient.r *= 0.8f;! P! |% m9 H! k# V
                                pLight->Ambient.g *= 0.8f;: T- o' e5 m+ S/ G! ^) F. K/ y+ w
                                pLight->Ambient.b *= 0.8f;% p8 u+ S7 |2 m# [% Y" K3 W
        8 w' M' K) h0 x) ^4 u
                                memcpy( &m_light, pLight, sizeof( m_light ) );: X, z) G! k/ |, R% Y5 I. n  L. |

) d4 ?  [$ G6 N& |! e1 ]" U, {  D                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);2 {7 q8 p' b& U. O( P7 F  d- D! h
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
3 J+ {; w  q$ f; \+ I* L) J                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. w  J$ p$ S4 o4 h6 {" \. O1 ?                                 pLight->Appear( m_pd3dDevice, TRUE );/ D- u) M  m! \1 s7 [
                ) R' J4 B& j- m$ W' n/ n+ z, ?
                                DWORD dwR, dwG, dwB;0 Z: X& n# \9 P
                                dwR = (DWORD)( pLight->Ambient.r * 255 );% {! }+ ?: \- {& S: j
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
" z: o2 d: D3 I4 n  P6 f( a3 V$ o                                dwB = (DWORD)( pLight->Ambient.b * 255 );
# V3 }5 A/ c$ v/ `5 t5 [5 T                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );' x0 p( C- [  Y& E* f4 _
                        }
6 f9 R# f( ?% C7 I6 e7 D                }
( F/ U/ X, t9 j( b        }" H, o3 K8 @8 \
        else
& K- [1 W+ ?2 n  w' ^#endif
, N% R- O" j2 V+ M, ]% A" ?/ f1 I# N; a
        if( m_bIsIndoor )3 ^! o: l. u. O. }. @
        {8 e5 {" h* K5 @. P
                if( pLight )* u5 E5 K' B; F0 V
                {               
3 g7 Z$ ]* ~) e8 F  G                        // à??μ oˉè* 1 |2 A" e$ F/ O2 i, J
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;: o9 u, `5 M  ^) ]
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;5 z" W  E7 `% V0 Q0 s: _3 F
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
! t6 s  b8 D% @# V" Q* \9 t
5 p4 I2 J. d2 `( }0 ^7 v                        // oˉè* ??à?
- R, x9 {# |4 y. b/ ?( m                        pLight->Specular.r = 1.0f;1 s9 `( o6 W  v0 @! T4 g
                        pLight->Specular.g = 1.0f;
) |. n1 v4 q5 d5 F                        pLight->Specular.b = 1.0f;
& _  U. y, E, T( ?                        // àü?? oˉè*
/ {8 a: p  Q; H3 p" i                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;2 l% h& S! P. r; {9 q6 @9 i
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;5 v* w! r; j0 V. J. z
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;, P' B$ ?; E( b' r, y7 r* N1 Z
: A5 q8 H  O, L
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
2 g# b# ~; e$ P3 |                        {
* Z* Q5 M9 p: M1 g: @% ^- V! G1 [                                pLight->Diffuse.r *= 0.6f;
( l% a! r. I1 t; s                                pLight->Diffuse.g *= 0.6f;2 }" Y( I& Y9 p
                                pLight->Diffuse.b *= 0.6f;2 e# n  {) O6 X: p! ]
                                pLight->Ambient.r *= 0.7f;
. ^+ x/ f1 ~: p: M: p2 H' m. D  U                                pLight->Ambient.g *= 0.7f;' R7 v$ A1 ?. g+ ]2 p  d4 c
                                pLight->Ambient.b *= 0.7f;
( Z' n: x7 m. e' f4 w                        }
, D$ M, y0 l0 o. m: i( C" Z+ p& q, e3 A8 l
#if __VER >= 15 // __BS_CHANGING_ENVIR& V* f/ @3 n8 B7 x& G1 O# _5 l
                        if( g_pPlayer ): Q7 M. N8 j* }# c* a  k! ~
                                HookUpdateLight( pLight );; z+ s6 f+ |: X! j4 y
#endif
  w: x) m5 q% s- b* q                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );3 `3 |4 _  ]- ?! s" H

# X! {+ D8 C4 K                        pLight->Diffuse.r  += 0.1f;+ \/ p# n: G$ y
                        pLight->Diffuse.g  += 0.1f;
4 ~( w+ Y' ?: q9 H) z% i$ h, Y                        pLight->Diffuse.b  += 0.1f;
9 h& Z5 w0 n% O- H" S2 c, A                        // oˉè* ??à? 5 \. X: R( L) o+ v
                        pLight->Specular.r = 2.0f;+ i, K5 C" k. L+ Z% y7 F1 x: p$ n
                        pLight->Specular.g = 2.0f;
. I6 c, `# X8 [9 n& C( I+ m                        pLight->Specular.b = 2.0f;
. d* }( y; _. z, D' d+ K1 B                        // á?oˉ
# |8 N+ L3 V# T7 l. v  W                        pLight->Ambient.r  *= 0.9f;
3 ~) `6 [2 v7 `                        pLight->Ambient.g  *= 0.9f;2 V$ l0 C8 J; q4 s( r. s
                        pLight->Ambient.b  *= 0.9f;
. g" _# G- `" J
( j2 O( W4 o+ a8 K" d                        memcpy( &m_light, pLight, sizeof( m_light ) );6 N! {0 p/ X: f7 f, n6 `8 L) Y
                       
! Y+ a) z5 p8 |5 \                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );4 A9 R2 u3 X3 J
                        pLight->Appear( m_pd3dDevice, TRUE );5 D  g7 [# @1 x/ G: u
        / P1 B7 ?  t9 N: y, s6 }* P6 ]3 x
                        DWORD dwR, dwG, dwB;) P- i" G. `4 L' ?; A1 Q! S2 `7 v( n
                        dwR = (DWORD)( pLight->Ambient.r * 255 );+ o8 M& l# g7 S
                        dwG = (DWORD)( pLight->Ambient.g * 255 );& ^6 C3 X+ m* ^
                        dwB = (DWORD)( pLight->Ambient.b * 255 );9 x; t" t% X1 d- U+ J% F
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( k* V; u5 J! A7 }0 }8 N                }
. ]. ]" z' {' b! G2 w# h) g        }
6 Z9 d' G7 i0 @        else( j* O6 C( ~: v' n% E2 a: l
        {
* s5 b9 z9 ?; _: i9 k                if( pLight )
3 j4 t% ^5 x" I" m) [- j5 d                {
! Q: A& j  d& o+ ?3 l                * {3 p! t- a" V" h9 [
                        int nHour = 8, nMin = 0;* e8 _% T) L- w1 R/ @
        #ifdef __CLIENT
5 O2 D# q8 b7 ^3 l. H0 V/ _+ Z& i                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
" n0 b7 p: k0 g6 `3 O                        nHour = g_GameTimer.m_nHour;8 ]& K0 x% s7 e- g$ M
                        nMin  = g_GameTimer.m_nMin ;
; D# s8 \7 B9 V! l& U$ K+ G        #else$ n' d" v0 l8 W5 \
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
' O+ ?# w& C% W& P/ F9 H                        if( m_nLightType == 1 )- ~; n( s3 u& J
                                nHour = m_nLightHour;
5 Z6 Q! x0 C* q9 N5 h) V        #endif- ]/ m' g* S' _; g7 [: L
                        nHour--;
3 |, B5 e0 A* @  p) t, e( V* ]                        if( nHour < 0 ) nHour = 0;
. z/ A. h2 r5 z5 u% }% U. q  j                        if( nHour > 23 ) nHour = 23;) d8 ]3 @# g$ k
$ c6 f+ s" n$ Y
                        //if( m_bFixedHour )
4 v0 A8 K1 a+ E) R9 Y                        //        nHour = m_nFixedHour, nMin = 0;
( V. V- ~  C; j                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
" m8 M! o3 T6 E8 `                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
4 f- t  m% b0 H; q' {1 C) `- G, j
                        //m_lightColor = lightColorPrv;; z6 i0 \$ g3 T0 Q& R( b
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
2 r9 \( K' e9 l7 K" S# e( Y( O                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;- B; t4 k/ D2 ]& r+ h" g- ?
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
. k( A! {  [7 z9 A! c0 J. r% c                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
: {/ t; O! s& ]+ E                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
) \( X1 l$ `! d& N) J0 y                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;. H2 t0 D- J. H6 O6 U  C
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
' m: G* j0 v9 V/ S( b$ B- x$ H" t  ^# ~: W: A% }0 H  B; R: k" b
                        // à??μ oˉè*
/ U: B% J' B2 N- V4 w  N. L                        pLight->Diffuse.r  = lightColorPrv.r1;1 c+ `1 }  v2 P3 ~& v) N
                        pLight->Diffuse.g  = lightColorPrv.g1;1 e* `" ~  ^8 ^' j
                        pLight->Diffuse.b  = lightColorPrv.b1;0 s0 Y) [  p% U( F: B/ g/ ~; y
                        // oˉè* ??à? ' V& ~% l: t  }% p1 f7 |. @0 K
                        pLight->Specular.r = 1.0f;( U! G8 U0 z  N* l, B# P( R1 G! m1 \
                        pLight->Specular.g = 1.0f;
4 h' a! O; g; c$ P% M                        pLight->Specular.b = 1.0f;
( ~9 a- l. w4 m& v  U# `7 L: ~                        // àü?? oˉè* / j% N, w- g7 F, H- W% Y/ n
                        pLight->Ambient.r  = lightColorPrv.r2;
6 z2 d* m$ ], E$ g- P1 z. J                        pLight->Ambient.g  = lightColorPrv.g2;
  @) e! v4 T5 y1 f- r                        pLight->Ambient.b  = lightColorPrv.b2;6 k$ I0 J0 @4 [. ^: U) g

* @' s9 y) u' o- N0 o" [                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% d  B# g) w' G( V7 `8 A! s: [  p4 p                        {/ a$ t6 L; {$ j
                                pLight->Diffuse.r *= 0.6f;
3 h/ @! ^# Z0 U0 w+ ]/ e                                pLight->Diffuse.g *= 0.6f;: d. x  b/ i+ R+ l
                                pLight->Diffuse.b *= 0.6f;; `) i! n2 |2 T# D. J% d+ Q
                                pLight->Ambient.r *= 0.7f;
& w5 p- }- z* V/ S# _5 s                                pLight->Ambient.g *= 0.7f;
5 c+ u( o- P: H1 p; g) X2 \                                pLight->Ambient.b *= 0.7f;2 ]- N8 I7 H, j7 a! j& U
                        }1 A3 L0 s. R7 h* p" m4 s/ u1 U3 R
                        / h' E: T: @! T. ?
#if __VER >= 15 // __BS_CHANGING_ENVIR! L! x# R& r9 L6 N
                        if( g_pPlayer )! B5 V  [# S0 \/ N, H1 c% a# V
                                HookUpdateLight( pLight );
/ @+ B  e% G8 I  u: X5 _# j#endif0 O5 o' x* e2 A4 f7 [6 \
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* d6 [8 o" J  h/ _: D: ^+ z; Q; v: ^; t* m
#ifdef __YENV( Z. s1 U# P/ S- A) Y
                        pLight->Diffuse.r  *= 1.1f;( ]/ y1 x6 |& V0 [' }8 v8 a
                        pLight->Diffuse.g  *= 1.1f;3 W( p4 G! C3 w$ L3 ]
                        pLight->Diffuse.b  *= 1.1f;( ]% H  d; J% Q: m) m
                        // oˉè* ??à? 9 t& i3 p( b6 f- g  C
                        pLight->Specular.r = 2.0f;
9 V, n$ B- e* }" V                        pLight->Specular.g = 2.0f;
2 @- \$ S7 B! q  p( l                        pLight->Specular.b = 2.0f;0 c1 \! T  r* x  l- o
                        // á?oˉ
8 j- b6 b, H0 I8 Z' t; o                        pLight->Ambient.r  *= 1.0f;4 x5 Q  E$ s, j6 ~
                        pLight->Ambient.g  *= 1.0f;
4 d1 t+ g, A9 k7 t                        pLight->Ambient.b  *= 1.0f;
" l: D  Y5 h& C#else //__YENV
9 ~* D  _$ z; U1 z                        pLight->Diffuse.r  *= 1.1f;
  A2 N% \% x% C2 a3 n2 ]                        pLight->Diffuse.g  *= 1.1f;
: d6 Q6 U7 l, d+ U( _5 E7 [                        pLight->Diffuse.b  *= 1.1f;- S  n# j4 j% K3 ^& V
                        // oˉè* ??à?
5 o6 ~' K# `" U$ M! X                        pLight->Specular.r = 2.0f;
/ z) B, o5 R4 |+ [5 ?                        pLight->Specular.g = 2.0f;! B# @7 v  w3 n; z+ E8 Q! i, t  J1 U
                        pLight->Specular.b = 2.0f;; J* U9 \2 z/ k9 ~  e' [% ]+ O2 o
                        // á?oˉ
" E( ~; U  m) j0 n3 F: W# y                        pLight->Ambient.r  *= 0.9f;
- y. p: I! ^$ H5 H; N/ `                        pLight->Ambient.g  *= 0.9f;# P" `4 e  C/ k. A3 F2 v. H
                        pLight->Ambient.b  *= 0.9f;
+ p" q! Y1 k# \8 f% X9 y) l#endif //__YENV
6 w+ L2 W. Q4 W' n6 U                        8 q$ X" U% W8 L! X/ X# t. G
                        memcpy( &m_light, pLight, sizeof( m_light ) );
2 f" J% N# k$ A4 l" o% s* J                       
$ o4 j; ]/ S& F                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
+ r: U2 e/ W* d/ U, N2 ]- X                        D3DXMATRIX  matTemp;9 d8 t% y# J7 f# C# G
                        static const float CONS_VAL = 3.1415926f / 180.f;
4 x3 R2 ^/ U/ ^$ ?1 N5 U5 {/ n, m: t6 R
$ O/ z$ Q; W7 _* {5 w                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
. C9 h  i* @3 p, g2 u                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);. N8 }( w& }7 H$ ?
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 1 s" p+ i; q( O  ~  J9 `
                        pLight->Appear( m_pd3dDevice, TRUE );
6 ]9 P4 c* c$ v; n: U* w- c# {
8 S) J8 _) D7 ^2 B* S/ T                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);. z- D5 U& s8 N, n2 r6 M
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
5 F* y- F3 v& e$ |" \2 c                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ T- [' ^9 d, Y
8 `3 K& w5 G# s+ j( j5 w" j                        DWORD dwR, dwG, dwB;# D6 ~. D& R3 x  L
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
8 I3 f+ \+ w7 H                        dwG = (DWORD)( pLight->Ambient.g * 255 );
) x# g3 X$ t, O; b( H, i                        dwB = (DWORD)( pLight->Ambient.b * 255 );
3 E: B% y* V/ ], E/ h                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        9 f* U& s9 E1 y( e1 H% M
                }! Q; R- c% M7 F5 `" B
        }
7 c9 X3 z3 Y3 E" \7 H3 O4 i! ~
" t  l: [( ^9 J" @' k+ H$ ?( e5 D        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );/ u. y" n2 P3 F! Q
        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) );; @' U4 o* u& y# T0 |, K
        ::SetLight( bLight );. ?! W2 b) L& O" z1 ]
, S$ }6 t. S1 m( T5 P& _" ~# }
        // ±ao? ?D?í???ó á¤à?
4 _5 B/ t6 a7 Z: n: o, ?        m_pd3dDevice->SetMaterial( &m_baseMaterial );  _! W. w$ A0 w. @
       
  l, D8 K2 ]. t& u#endif // not WORLDSERVER
* w0 r3 k% ]" f4 Y}
: Q. G: r6 X" g! Q, u" P  U- ^并更换
8 {; C( j, v, v4 eCode:
! I9 d" e# D7 N* W__FLYFF_INITPAGE_EXT: R# C( {" W5 u5 b
定义4 b9 F; O( ~& w" |3 T: r. r# a

0 y5 A! m1 R! k3 O# F! T
+ [: Z4 V6 z" b
. @* a" p# h) i: |( Z9 L# P8 u9 j/ f7 R# \; s" m5 E
现在终于删除我的狗屁加速...# P! Z0 E, V8 u% y1 x9 E- ]) ~7 x

7 }$ G- ?* f* H: g+ o, x. t( U
+ ^3 Q9 x2 g1 r& n( G8 z
  e& {: C  M3 e+ |. D* N/ V6 \/ J0 A3 C




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