飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:7 A' S4 S7 n; X! p9 w0 Q% D* m$ @6 P
尾翼:/ S7 o% `: g6 K' n
  ]3 P) ?8 g% V5 s
代码:, K6 D9 W- y: k: I  K$ M1 @& J2 V' ~
CWndAutoFood::CWndAutoFood()8 t) g8 y; u) ^7 D9 U
{
, S6 X3 |3 c& l+ {) A        m_pItemElem = NULL;
/ h0 y- b7 Y# n& k9 e" w        m_pTexture = NULL;  a* D; K/ T* }4 ?* C2 X
        bStart = FALSE;9 b, T6 \# @6 p' H+ Y- M: \" [8 S' u5 Z
}
- @" N7 _2 C: S; [
# |4 ?$ ?& X! f/ a  ?CWndAutoFood::~CWndAutoFood()" O- `# x% R; e/ {
{
& T" p& t0 f1 J; W$ a7 x5 [        AfxMessageBox( "AutoFood ist gestorben " );9 {6 N( [5 j# [
}
4 l  \3 y  r' }+ r' SBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
9 U: [$ p# B: }" r6 z{
8 F9 x/ q+ m" z: ?; u% V! B        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
+ Q; n4 W% X3 y! C3 P; a}, f0 d7 a. F: k: T$ W& I
/ P3 P5 |( c( g4 Z$ F
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )! @5 O9 n3 |9 D: R& Z- ~
{
+ n+ m7 L7 O6 G9 v        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );6 u8 J) |" w4 F6 y5 Q$ m0 e
        CRect rect = pWndCtrl->rect;: ~# S! y* a7 x* `9 ?5 ^
        if( rect && rect.PtInRect( point ) )
. r! r5 Z. J/ @2 X) D4 O        {
) N$ i1 f3 u2 s+ }' J, k% B- _                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
. |+ j1 O5 Q& n* t                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
& q2 B" e. a$ {" f8 Z3 P                {6 s- A/ e0 v: L8 W2 ~
                        if( m_pItemElem )2 z% ^3 J1 _3 S1 q' t, L( K+ j: ]  `
                        {
" u* R% i& E9 e, N0 B4 K$ Z# o5 Y                                m_pItemElem = NULL;( Z& F% W# J6 X0 i
                        }. b( U3 A4 X+ @$ J' |: q2 b
                        m_pItemElem = pItemElem;4 D# z& Y3 m# U. T
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
% M& E- `$ f# }% A; O; u                }else{2 p0 c) o( D' b: a- {. Y. x
                        SetForbid( TRUE );7 ?' Q8 t  `# [# F" V  _. V5 ^
                }& J, \' r5 r! ^
        }else{% V0 r4 p! \+ U1 `" |  \5 j2 v% B
                SetForbid( TRUE );/ f- Y0 E3 u. E; Q1 k% Q
        }+ E* M7 t6 G) ~5 o! N3 A( G& B4 T
        return TRUE;
, ^& I0 [9 f. @; z}# ~6 @8 g" k- Y  P
& b9 P" d8 i4 G' k
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
) `. W1 ^9 B: r% J. h. O{/ t4 c/ N# N0 f
        switch( nID )
  E' }' |. j4 f& u0 P        {, a$ {! t  p, t3 b
        case WIDC_BUTTON3:# z- Q+ E0 a& ?: H6 s; E7 w. M0 m
                {% E6 y& `& z% P/ Y7 F. K! z
                        bStart = TRUE;
1 g0 o4 ^- x4 t, D- n                        break;* c3 v' ~4 f! r; E8 [( a: ?, l
                }
5 k* L5 Z; ^, d" P; A. j6 ~) C$ t0 o        case WIDC_BUTTON4:( r" |; K. Q6 F4 h
                {
0 t6 q* F& G% X2 E/ d# f! U" J                        bStart = FALSE;, v1 d" f9 `/ _, s
                        break;
+ R* I/ n9 t$ Y3 [                }
1 ?/ L$ [: P( n0 a2 P: y7 Y        }8 E3 E4 R2 h5 B7 {
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
/ W6 y) X  E4 [}       
. y) ^) b- V' ]7 ]- hvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )9 L& f8 T8 w( d" t. m9 T7 ?3 z
{
  k7 N% Q9 R( l        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
% G% u6 e! [# h% r1 g' m        if( bStart || !m_pItemElem )
" u4 W; ^1 d, V$ y3 z( r        {
( D1 H& D  {  ^! i' s' D" ^/ P                pBtn->EnableWindow( FALSE );7 Z8 x  {" v: N' E: x3 n8 B( o
        }else) U8 q1 C6 k3 G) F7 c
                pBtn->EnableWindow( TRUE );' V9 R# @  [( v$ I/ o
        if( m_pTexture )
  r, D6 c: M8 m, `, S1 D) N        {
. j* p' S# L, c% U                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );5 t2 y& C- W* E- l
                if( wndCtrl && wndCtrl->rect )) B) P& N, h9 h- u; ~" |
                {* D/ o, G. h9 L. |8 s
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );) \8 [# {: Y+ Y
                }" l; E4 Y4 `5 C( S+ n4 \  x8 e
        }& _/ ^+ Z! l1 U9 t
}
1 |' R; p( Q( V7 |
1 p' G; F6 U  q0 ]: M, EBOOL CWndAutoFood:rocess(), R2 i- [) D+ |, \0 t% x
{
$ ?( T7 R$ C7 y* I        if( bStart )7 r- ~+ l' x- v, M+ {5 o
        {) _$ T, W4 a( k( M1 J
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
: n% e  S$ n6 V- {                {
" J  G/ Z8 q% s  W5 G0 G                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )4 A1 X  ?- h. `: l+ s/ T; c
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );, D8 k4 P  e. N+ p* a( X, E
                }else{, Y3 w0 {5 j7 x3 E
                        bStart = FALSE;
" e. s; j! I) E6 u2 F, U! e7 e                        m_pItemElem = NULL;
9 ?+ x) L  z# ?% P7 v( O8 e                }4 A( B+ n$ Z3 w, I0 I" ]4 j
        }8 U; ?/ v. A9 ~5 `" v+ E& r
        return TRUE;
3 q8 n7 i- |. \4 N  K+ y+ X' h}
2 P0 j* m" G2 s' z6 l' m1 T  f8 l( g3 k
登录视频废话:- X7 P. |) _. Y& \
尾翼:
( q2 U8 Y" J! ^- p/ Y4 K% K2 y
1 L2 g7 V% e7 x! K- {: a代码:  O7 }1 R! ~# V: X8 r, M5 r
, o/ h: J" B/ F' T6 J) i3 P
void CWorld::SetLight( BOOL bLight )
- i) M9 ~0 i5 w7 Q* p# ddurch
# c* I" s9 p! h$ RCode:* t4 V7 N: c4 e) k" W, V3 w+ O
void CWorld::SetLight( BOOL bLight )# c8 e/ _7 n$ K# Q( d
{
! {: C; Y& l7 r3 d+ m        //ACE("SetLight %d \n", bLight);
; G6 C: z6 d* g- K7 j* K        . Q/ E1 z6 g, R8 J5 ~5 {
#ifndef  __WORLDSERVER
# D# |, J/ I! W1 k4 C        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
) U: N5 b" X. p4 y+ h        CLight* pLight = NULL;" K- ?7 m" N! Z. Y4 }; ]  V! i3 ]
1 Z* t. @+ L6 \5 G
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
5 p8 ]  C! }. N* S" L9 c2 K, M4 I( r; a. Z. \) `$ B
        pLight = GetLight( "direction" );
6 X* ^9 l# b% X
( d: g2 B& K7 H; t; ^$ p! Z#if __VER >= 15 // __BS_CHANGING_ENVIR
7 v5 |1 k1 q) q        if( g_pPlayer ){
  U& h9 b0 ^/ o& I                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
; H, H  J' M0 V! s4 M5 C                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
! C4 ~! \; v' C/ M8 f- O                {/ A0 e* `/ V! f
                        if( pLight )  r' j( c* H3 J) k/ q# \: e
                        {
- \$ W7 l: ^9 |/ e! w9 G                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];# B$ D/ H- y/ _, O% H) }
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
% W7 C( n5 r/ g% c- X+ Q                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];6 e8 s5 I( P( n$ r
+ x" |/ A3 [4 J5 n) T: w
                                pLight->Specular.r = 2.0f;& Q! T; [, }4 m, I  q
                                pLight->Specular.g = 2.0f;
8 X4 c! ~! `5 O( o6 K                                pLight->Specular.b = 2.0f;
6 y: B/ F  j1 o6 u9 y       
, V* J% L* _4 d; l$ g* b6 }                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
0 i7 Y5 S) B  X( I$ ~' |                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
& g  b* f7 N) s* O8 x0 u                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
! Y" B$ [7 e, }       
- ~) y% D: g" r3 U/ F" K: z+ u9 d                                HookUpdateLight( pLight );
/ ^2 y" z' f# I7 O* z( k6 b7 ^8 m- N' x; Y2 P5 J% G: a- M
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. c. R; u7 [( E               
! \4 w7 K; H6 z0 [/ H+ Z; r                                pLight->Diffuse.r *= 1.2f;
+ A2 a3 r$ f1 p9 y, ], H                                pLight->Diffuse.g *= 1.2f;
! m; G$ m/ o7 w                                pLight->Diffuse.b *= 1.2f;
1 g  o7 d! R) G% x8 a, g; e' }
2 T8 R3 `+ Q; |* J* V( k                                pLight->Ambient.r *= 0.8f;# l" x' U( e1 L+ Y  Q# ]( p2 i4 I
                                pLight->Ambient.g *= 0.8f;  T. A% j/ P  l! q+ W& ]4 @" G
                                pLight->Ambient.b *= 0.8f;! E, X  W5 D2 x; ]( T
        * d) D+ e2 \2 b6 M. P* }9 _
                                memcpy( &m_light, pLight, sizeof( m_light ) );6 E' h! i; I; {6 Q; ?- H4 g
# R! W5 z0 N/ f8 n2 W* E" A
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% |9 L1 E- m+ J) Z2 L/ I' F, L2 S                                 D3DXVec3Normalize(&(vecSun),&(vecSun));4 E/ w3 r! t, C+ e, p
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 V# q: [+ K4 m                                 pLight->Appear( m_pd3dDevice, TRUE );2 l7 ~% h5 U  L
               
0 y1 y( X! U0 v% i                                DWORD dwR, dwG, dwB;9 p; e) v! ?6 H6 q! N! |
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
2 E4 H9 T2 d7 b6 {1 v                                dwG = (DWORD)( pLight->Ambient.g * 255 );& O# Q( Y& a; e" Z
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
! n+ s  l+ V- Q7 K, w                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
, H3 \# P) ^3 M  @) m                        }( s( D7 t1 G% @' O. y
                }! O! K( k1 N7 r) H
        }
7 e- r8 \3 H3 I' n8 b+ w/ u) l, h        else
2 ^6 J( H% z" u#endif 3 y, M. F- i8 d/ H3 k% D; n
" }+ e, \( |5 Q, K
        if( m_bIsIndoor )/ C3 i. s0 z1 s' |
        {
) J/ h( w' d0 X9 x( p4 ~% U                if( pLight )9 Q* F3 T* U; E) }" o( ^
                {               
- [& S$ X. x7 i& Z* Z4 z) p# P                        // à??μ oˉè*
" k. R/ p/ T& Y- V; h0 @& x# a6 e                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
! c7 d9 I& d: M, H7 X                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
6 q& L, P  E; i( I                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;; Q8 [# H: e4 O/ e6 }

2 h" m7 p  |: G% r1 E                        // oˉè* ??à? 3 f0 y* F+ p! n# H
                        pLight->Specular.r = 1.0f;
) f. q  n, G9 ?& l- r                        pLight->Specular.g = 1.0f;0 h5 U$ _" k$ }( Y5 G
                        pLight->Specular.b = 1.0f;
2 k3 ?1 t$ R" g* {9 Q( {% \0 @4 G! \                        // àü?? oˉè* 0 E0 W  N: s; |3 R/ E3 t# ]; t& e; E
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;& w6 K. r* ?6 z% H
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
5 n7 j/ ^  \5 u$ z" |/ _                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
% g: g, g( E, @# O5 x( m9 j8 N8 R( g( D! z; y) b4 @) }
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.* i' O8 p' q0 E2 _; J
                        {
. }3 I: L! U. c1 g7 x; q; g                                pLight->Diffuse.r *= 0.6f;4 a9 C4 W* d9 p8 d5 q7 p( ]
                                pLight->Diffuse.g *= 0.6f;& k. c9 g5 r" p- ^( _* o
                                pLight->Diffuse.b *= 0.6f;* D) m# o; x, d( S
                                pLight->Ambient.r *= 0.7f;3 _/ @7 x; c+ p% I2 N/ Q
                                pLight->Ambient.g *= 0.7f;
$ v6 _, v" R! E1 L+ N& a5 F                                pLight->Ambient.b *= 0.7f;$ q9 ^0 l" }* L$ x9 ~7 v
                        }
6 w  |' D8 e2 [' N& X0 [8 c: v$ X% D" X7 |0 g1 D
#if __VER >= 15 // __BS_CHANGING_ENVIR
- l  h& t$ B' t3 r% h                        if( g_pPlayer )
& \$ `  }& h' M  Z                                HookUpdateLight( pLight );
. K* B9 a& [$ H& l" L#endif
6 N  l3 K, Y% P/ e                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ Y0 Z, j; a7 Z2 @% c7 Z# k1 w; X' n- f
                        pLight->Diffuse.r  += 0.1f;
9 B+ b. Z. X, Y: x$ {                        pLight->Diffuse.g  += 0.1f;
8 D& o) O" u3 b6 J4 }( o                        pLight->Diffuse.b  += 0.1f;5 m) D5 {. Y8 {" m4 P
                        // oˉè* ??à?
; X1 r* R* e  s/ F. s( _                        pLight->Specular.r = 2.0f;
* K1 K* _6 P5 k. C! R4 \                        pLight->Specular.g = 2.0f;
4 z' [1 U+ W( J                        pLight->Specular.b = 2.0f;* Q/ Z" s$ q$ b! t/ v. G4 C
                        // á?oˉ ! L4 `6 P6 L" U* W7 Y1 B
                        pLight->Ambient.r  *= 0.9f;
' c  z- @' R8 k+ M4 d% R0 e                        pLight->Ambient.g  *= 0.9f;/ f% z; m# l( v/ @
                        pLight->Ambient.b  *= 0.9f;) \, C2 z0 N5 v. f3 y: F

7 s. f! [% ?, a) r, O                        memcpy( &m_light, pLight, sizeof( m_light ) );* T# b3 Y% [  E& c  R" ^/ x& u" I
                        7 {+ j5 ?$ F% u- K' A% F
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
9 J2 x/ W1 I" A3 _' |7 T                        pLight->Appear( m_pd3dDevice, TRUE );" U6 B3 h1 X2 y0 W4 b7 T7 j1 ^' \4 R
       
. G% G5 R8 }0 e( n0 m                        DWORD dwR, dwG, dwB;
" [3 X2 ^3 h5 y& ^+ H* ?# w                        dwR = (DWORD)( pLight->Ambient.r * 255 );$ v* u3 y6 Z) d
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
' A) C/ v( O% x8 Q  D7 F' z                        dwB = (DWORD)( pLight->Ambient.b * 255 );2 ~# b1 K" r9 p* x, F
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 P$ W- J( r. x: ~% A' O                }7 @0 I  `3 Q/ f$ ?( ^  M3 W. }
        }/ P$ v5 ]9 T# n
        else, W- Z: v2 @% N
        {" {3 o) B( a" z- i7 c* j( i
                if( pLight )
1 a7 v0 ?. G) N* }9 o+ U                {* l5 w' U* B! V* l. N* N
                4 ^. m9 y& N( n) l% Z
                        int nHour = 8, nMin = 0;
) h, ?6 ]6 U9 T# _$ M1 w1 V2 d& W  A        #ifdef __CLIENT
& s5 Y8 S) D2 ], i* U+ T                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
; f; `# P9 ^# ]5 @5 C/ {                        nHour = g_GameTimer.m_nHour;) y! ?% n9 r/ a; G! G* a8 P+ T
                        nMin  = g_GameTimer.m_nMin ;0 @( E/ s& R  c2 [+ X" e5 w
        #else
' \: `' r" P1 E: R3 V! L1 U7 s                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
8 ~' x& n# i+ S# r4 Y0 X0 l+ E& a' g/ @                        if( m_nLightType == 1 )# R6 \8 g6 H* ~; r
                                nHour = m_nLightHour;& i& H# i9 A% w$ V8 V
        #endif
0 [' {* x, r$ Q# [) E- c                        nHour--;. J5 f3 \$ g$ c# S5 R  R
                        if( nHour < 0 ) nHour = 0;' _, k1 }, B* \. i
                        if( nHour > 23 ) nHour = 23;* N( ?. T% ]* Z% J# ~  L

$ j6 c3 m" a) Q1 f2 F! I                        //if( m_bFixedHour )
* Z4 x5 P0 S! N5 Q( |                        //        nHour = m_nFixedHour, nMin = 0;
% j, m0 \1 J5 |  A8 s# z                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
$ I! c* H! Y2 B7 Z% l' u4 e                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];& `) |0 i" a$ `! d) ~

( _0 Z( E* ]0 K$ S4 z                        //m_lightColor = lightColorPrv;
* c4 \; t3 V7 k/ f' J6 N                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
/ k0 Y- @8 R. d9 W  u0 R6 @, e* {                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;* L1 v, a+ g* J: ?
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;' D. S. t5 U* v
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;8 ~7 R' D; Q7 }- T
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
, H% Z% ]' V1 j8 N, J7 U) M" G6 M                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
1 z: c/ ~3 @1 K5 m; o+ ~3 `0 j4 |/ E                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
) q: r/ n$ [2 I! N2 B7 U  j" u) a9 _) Y" i1 E& B# o! q0 E: [2 b
                        // à??μ oˉè*
" b* C/ I- \) \" J                        pLight->Diffuse.r  = lightColorPrv.r1;2 P6 \+ B/ ~& I7 g4 \* p3 h* K
                        pLight->Diffuse.g  = lightColorPrv.g1;
8 l0 B* H: w  A5 h                        pLight->Diffuse.b  = lightColorPrv.b1;
8 N" I6 i5 o8 O3 H4 ?" d' E0 a                        // oˉè* ??à? 1 F# e" P5 u5 N
                        pLight->Specular.r = 1.0f;5 G3 w4 T. g( }9 w  U' n, F
                        pLight->Specular.g = 1.0f;
+ H, c: \; j  j/ G. }% s                        pLight->Specular.b = 1.0f;
. ?  |- U: P3 B& h4 p                        // àü?? oˉè* 2 F, w( [- F- N: H0 I- P3 d
                        pLight->Ambient.r  = lightColorPrv.r2;. ?2 v( z# I* g4 g0 @
                        pLight->Ambient.g  = lightColorPrv.g2;! @4 c+ {3 K! T9 [! N
                        pLight->Ambient.b  = lightColorPrv.b2;
) V; w3 E+ |/ @3 d; ~* j* H+ F' E+ \5 f* |  T4 K% ~* Z3 P9 l
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.+ w  B2 a/ F  o
                        {
, R8 m# K  _3 T* G" B4 ^1 Z- x                                pLight->Diffuse.r *= 0.6f;2 L0 x# k7 }9 t7 @/ c+ G
                                pLight->Diffuse.g *= 0.6f;
: n8 a8 r! K1 J* |. y; R                                pLight->Diffuse.b *= 0.6f;# S3 }) t$ n. r5 F0 N
                                pLight->Ambient.r *= 0.7f;
: r" S: L6 ?5 E1 n! B                                pLight->Ambient.g *= 0.7f;
# C% x+ J8 c% h+ Z9 H( u3 S5 \+ [                                pLight->Ambient.b *= 0.7f;
6 ^% k# \" }2 N; W4 y2 A: W% n                        }2 {- \+ G8 m) i& @
                       
# K& k( E( l, `, o9 F8 t#if __VER >= 15 // __BS_CHANGING_ENVIR8 x& B* u' p( x" h) _
                        if( g_pPlayer )2 r1 ]' o; m5 I$ B4 \$ w
                                HookUpdateLight( pLight );
0 r" \4 {1 G" B  x#endif9 m) n' `) v, j7 N2 E
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 v1 r8 Q, I1 R$ o4 E" x( x" L- `* ^( O0 P) i) ?2 I* c
#ifdef __YENV
+ Z- i  j# m: c& }- ]3 g, v7 V  T                        pLight->Diffuse.r  *= 1.1f;
% U" @, c1 A! ?- R                        pLight->Diffuse.g  *= 1.1f;
! h4 h' u, I7 n- F. n/ ]& x                        pLight->Diffuse.b  *= 1.1f;
% o; E" F2 g" V+ ]                        // oˉè* ??à? 6 ]0 D  m9 o4 l* [( J7 Z( S6 d7 O
                        pLight->Specular.r = 2.0f;
- g" x2 p* T  H; M: }) }                        pLight->Specular.g = 2.0f;) }7 B' ]3 g% N5 @( t
                        pLight->Specular.b = 2.0f;  i+ l- M0 ?( x
                        // á?oˉ
' n2 y. e, h. l" B2 k. N1 N) b9 o                        pLight->Ambient.r  *= 1.0f;: i4 W; G9 H0 h
                        pLight->Ambient.g  *= 1.0f;
/ ]4 Y9 V* o$ ~+ O$ U                        pLight->Ambient.b  *= 1.0f;
; k7 p5 _+ |; J! w/ d#else //__YENV
6 h: ?0 J9 ?# O/ A                        pLight->Diffuse.r  *= 1.1f;% l$ c) i% s* \9 A( f
                        pLight->Diffuse.g  *= 1.1f;
, K' _$ I  o+ D4 f! B+ E                        pLight->Diffuse.b  *= 1.1f;
; a/ X, w/ l3 P2 y- p/ b8 m2 E; R/ m                        // oˉè* ??à?
# K4 b. x" d3 Y( @                        pLight->Specular.r = 2.0f;# e3 ]% N! u9 i* z# Y% u& @
                        pLight->Specular.g = 2.0f;
8 s: d3 g# }( X' V1 _6 e                        pLight->Specular.b = 2.0f;* E' _: }, q* v8 A8 t0 r% @
                        // á?oˉ % _' w% e8 B3 G2 k$ q, S7 ?. w7 b
                        pLight->Ambient.r  *= 0.9f;
$ z3 R7 a1 w: F4 Y                        pLight->Ambient.g  *= 0.9f;- l  @3 R+ P9 o' G0 |: @
                        pLight->Ambient.b  *= 0.9f;
- N; `: G' s0 h9 i2 P, T: x8 w# m, u9 l#endif //__YENV 9 d! O# d- g  _8 P4 L/ q  q
                        4 h4 N( }* B9 ^$ n4 k% ]' g  H
                        memcpy( &m_light, pLight, sizeof( m_light ) );
9 F# D% z# }, [- Q8 c8 H% i: W: \, v; t                        : o3 F# X# G- D) o
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);6 C8 J" i. p: Q6 o
                        D3DXMATRIX  matTemp;
! d* \% |( R$ T7 }                        static const float CONS_VAL = 3.1415926f / 180.f;
8 c; `+ o% T4 C8 _/ Z; A: `# U7 u# V
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);* |# p% s- P2 D  b$ t
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
; `6 |( p: k; M2 G6 V( a8 Q                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
/ _7 ?3 S* j" V$ j                        pLight->Appear( m_pd3dDevice, TRUE );
9 f% k$ Q: z) b3 p! T% X8 Z5 P, o* e/ W
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);3 g" `+ A' t4 l* p/ ~
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
; O! A. z) v5 M5 l9 @0 R8 E$ l                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 1 |' r0 q, {6 `3 v! T: c8 V3 s( t
7 M/ X# i# Q8 F7 u. C2 A" u
                        DWORD dwR, dwG, dwB;* j  F; L; r# S( d  a$ T. G
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
6 i' E& f* g& B( J0 |, B                        dwG = (DWORD)( pLight->Ambient.g * 255 );% s5 p# p  a: ~! Q
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
( M& q  A6 Q% O" ^                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
) Z+ M9 _+ \* ~' k! U$ V8 ~# O3 c                }
2 k; E4 L8 R# R6 Z        }  b, @5 y4 y" S2 V

- i4 w/ r4 F0 f1 J1 k        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );3 a* ~. S1 h0 l# f
        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) );
& E2 d1 c( I6 V2 q- ^+ i        ::SetLight( bLight );1 N  Z$ _! u+ m8 K7 O( v* t1 Q/ e

) {+ P8 k, V: r/ z- a, I        // ±ao? ?D?í???ó á¤à?
1 w; n7 a6 `  F6 K8 Y        m_pd3dDevice->SetMaterial( &m_baseMaterial );
, B6 c  @$ D! s( M$ j- I        8 Q/ E, K1 Q- @2 n
#endif // not WORLDSERVER0 S- v) w$ m+ Z
}
9 t" b8 y3 S/ N2 Z6 Z/ q# \并更换6 L' \) Y; e6 M) m* J" }1 t
Code:
2 |1 e0 J7 E9 M+ _& B7 {. o__FLYFF_INITPAGE_EXT
* U! `9 A8 w' u6 k: k7 @定义/ T3 @/ ]3 a0 n; s) o
) r! c6 r: W5 X/ A, C
' V  j! C9 m* S& R6 N( P
7 h/ t2 ?. S6 S
) ?# |5 i. ?4 ~# y+ B4 T
现在终于删除我的狗屁加速...
  ?5 Y% E) b2 T. L) H# r+ F% j0 c& Z9 y
0 m" R8 B/ O$ C4 v

! m9 x% b5 `9 {0 n  f( o7 f




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