飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
$ [6 t' L! \8 W$ e$ A/ }/ V7 d$ \尾翼:
! x1 {8 m- @8 r3 y8 D/ K& Y$ Z: W; M6 H' h, a( a
代码:/ M% k7 J* l9 o+ q/ y6 |5 V2 I8 q
CWndAutoFood::CWndAutoFood(). E* a/ v2 g7 G1 x8 Q
{  {' y9 P: D% b2 z% x: i
        m_pItemElem = NULL;+ x+ k( A3 A! D) J5 D2 r
        m_pTexture = NULL;; `: q  T4 C4 q
        bStart = FALSE;% y6 A1 z( \8 a3 p+ D3 `/ |6 S
}* c9 z3 v: k: |- [* H& E  ^! k

. X+ T# h! j8 c4 m# E1 gCWndAutoFood::~CWndAutoFood()7 r1 d+ P7 w; h4 y8 I8 S
{2 g# m+ V! t! M2 @- }  ]
        AfxMessageBox( "AutoFood ist gestorben " );7 g! k  M' x  q) p; V6 P
}
: L$ L' M6 g: o# ?5 DBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
7 G0 q$ \  g# a, `/ L3 G/ m{
1 W& k- M' D- \, y' @        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
2 x) \2 ^9 Q4 q1 c6 ~; M) N! S5 a, S}8 I" P& M4 I, v1 q+ m

9 u; c- m5 I- L+ t6 {+ d6 c, z5 IBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point ), M% e' x# [2 T. o$ C( R( n$ j9 `
{
% Z( L1 E+ j4 ~2 o; r4 z3 {9 g        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );8 c% d2 c* o; O1 t# Y; _
        CRect rect = pWndCtrl->rect;
* A7 Z* b6 H, L1 P' I0 c        if( rect && rect.PtInRect( point ) )" c, g$ v8 z" n% M& u
        {% U/ K( X/ j% b5 }# T
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
+ Y0 a! v! H8 y" I6 i                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )) Z  A7 t" l) B" B1 i) p
                {
7 x! ~! H+ T7 M, H; C( `5 N                        if( m_pItemElem )
/ b* v, @' `! G. \                        {
# J  |0 Q2 Z0 K% i                                m_pItemElem = NULL;$ r2 w0 H5 _# p8 r
                        }
7 W- H3 ]) y, ]7 R                        m_pItemElem = pItemElem;
/ Q$ O& ~4 o$ t: K3 S                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );' h% D; b3 f: G8 Z0 f$ _! U
                }else{0 R/ I3 S( Y5 O5 a1 B
                        SetForbid( TRUE );; c' \6 i9 R7 O: h$ s# }7 V) n4 P
                }
# g- S, G7 V! H9 D        }else{
* {+ p5 M3 K4 A2 ^* L4 J                SetForbid( TRUE );
1 H7 x% v3 ?9 e& |7 o3 b4 E        }
; k% P% e6 I0 w8 V0 Z  @4 s2 T        return TRUE;- C: `- ^6 y. l& c1 J
}% D$ k6 [  X0 x; _2 Y7 g+ v3 Y
! l: i9 p6 }2 b4 n6 q& y( y, o
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )6 ~) i- _/ H- C# [: R6 M3 G) l- b
{5 ]! v7 A4 ^$ V1 O$ I
        switch( nID )9 Y- ]( z# n3 e4 U) g+ F
        {
. M" |0 l7 J& y; V        case WIDC_BUTTON3:
1 ^6 b1 n. }8 ~, Y: L5 s                {
5 a  p) A" r4 a5 q) Y: i                        bStart = TRUE;
( q: z5 a, B! D$ O, B                        break;! Q! ]! S" T1 K+ q) `& c* U& R
                }" x4 j! O/ a2 \6 ]% o% \% f
        case WIDC_BUTTON4:
+ w' d6 o1 X3 a' q4 ]9 G$ \% @9 N' x                {" D/ g! C' h, J
                        bStart = FALSE;
7 \4 W- ~! ^& @* W                        break;) S+ Y5 X9 H$ M
                }; V( {9 U8 u% i
        }/ Z; D1 u! b" `
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
9 a9 ^+ v6 N0 ^6 _$ G9 ]}       
5 \: y& b  p3 fvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
# T+ u2 w7 r, z; N. p" V{
4 k* T# H$ ]; I/ d* Z! k        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
8 D0 ^7 Z$ F6 B2 Y        if( bStart || !m_pItemElem )7 W& G0 ~) `" p' V
        {3 C9 _& o' N; X: W; J
                pBtn->EnableWindow( FALSE );
8 f* A8 A& C; g; j) c( ~3 G        }else
( G* [! R# s+ |5 D& ^                pBtn->EnableWindow( TRUE );3 ^2 O( L2 b% m0 A( ?( u4 j
        if( m_pTexture )" I1 X2 r0 H4 ^! u1 g+ _9 |
        {
8 F4 b: E# @# X/ H                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
% d" U( o  ?5 _- {$ Q2 `1 ^                if( wndCtrl && wndCtrl->rect )8 Z6 v! d) c( q. q
                {6 o8 a% d. c8 V2 @+ u3 b
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
* G" J; U( p! F$ q                }
# x" z. j: p3 y5 ]( o( d        }9 T& G9 F, g7 P" S) R- j+ V" m
}
6 m9 G, ?( [4 Z+ z8 B3 y
' F+ p+ I8 h/ IBOOL CWndAutoFood:rocess()
  b5 J, z2 J2 L1 z+ x{
" r) C1 @' u: n' ]$ k        if( bStart )
& y3 y! D  V% |& a        {
2 X2 D* ]! t0 R- G# K+ B                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
% Y  {' Y3 Y8 d# R& r$ Z- g9 T                {/ l$ Y! F" _9 S! c. [
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )0 \3 O. m$ b( x' r0 z1 ]( t* r
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );6 H9 B* @+ W" p$ S2 w+ n
                }else{3 y, @7 V" L0 g0 x& {
                        bStart = FALSE;3 t! f$ _$ Y' |5 o5 s! r
                        m_pItemElem = NULL;8 i/ X8 I; K% \0 h
                }( t# {* N1 [" |: X
        }
6 j6 @# ]- x4 `2 t" R3 p        return TRUE;" v) }7 Q6 R8 A8 o% V
}
# d; q/ ?0 V' \, n' |* _5 @+ e3 d; |/ N& B( ^
登录视频废话:
7 a$ ]7 v( v- V6 _尾翼:
' X3 _1 J0 K" ?- K
% B5 t0 m4 ^% _( I代码:
, C/ F: G! T+ N! s/ Q1 A4 T3 ~$ c7 P+ Z1 e+ {) a8 w1 L4 ~
void CWorld::SetLight( BOOL bLight )
2 _& |. L" j: ndurch5 c) w9 r, W" r1 Q# ~; f9 ^
Code:
+ Y/ }$ x/ j  y8 H  f+ jvoid CWorld::SetLight( BOOL bLight )
' ]0 ~+ [6 Y# U$ w5 O{
$ V6 |; C$ W9 w2 G/ h        //ACE("SetLight %d \n", bLight);
! t  l. H3 Y8 G6 U+ i        8 q  K; f( @- G5 W
#ifndef  __WORLDSERVER 1 f3 H! A7 f6 }0 [) f/ R
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);. m0 U! j0 N( b" S' ?- [7 P" Y$ J: y
        CLight* pLight = NULL;
* x; T, K5 h. D; ?$ I8 J; M/ B0 K9 t: l7 k! D6 C/ b: X
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );6 |# }9 p# ^# \# [" A& z$ @

8 a( P4 u9 c8 r" V4 f        pLight = GetLight( "direction" );
$ P7 L0 M0 i, m% q# \0 A% S
; \( @. l0 m6 X. K7 J#if __VER >= 15 // __BS_CHANGING_ENVIR
2 w4 k2 T1 f: w" P8 ?% U        if( g_pPlayer ){
1 X& ~; H2 O/ E3 D1 Q- q) C+ P                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );* m4 H3 @4 \* ^- g2 }
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
% o* k0 f1 M) f) p                {- |. f8 [+ \7 Q+ _6 _
                        if( pLight )- X  W! X- j) z
                        {
2 ?+ ~  E7 ?1 ^+ r) p                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
; B, H) v5 N9 n5 m                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
5 s6 L& |+ [9 ]+ J. D2 \3 ^                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
) E7 S7 H7 F; Q2 O& T
! v( s6 c& d- n8 Y8 r5 Y                                pLight->Specular.r = 2.0f;$ D! J0 c) r& H% q, W
                                pLight->Specular.g = 2.0f;9 e; G" y8 n  Q# R0 _  _( ^) Y/ ~& x. @
                                pLight->Specular.b = 2.0f;6 i+ H( i: L. ~; n6 }* [
       
1 l8 K: D1 J/ C- y8 X4 c                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
6 V6 u/ i- }; r/ {+ k1 P: q                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];( h* D, A- g% f# i& ^
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
) S, O8 N6 ?( w* I1 b* s       
5 q" |! C' u5 R                                HookUpdateLight( pLight );
! {0 ~* Q4 i- }4 D4 @& ?: j+ s2 T/ k: A% v/ O
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );. s+ A2 R* p+ r: c9 c
                # n) Y6 y7 Z( H
                                pLight->Diffuse.r *= 1.2f;- \+ L8 _5 q/ ?2 a( x/ ?7 B' ?* k
                                pLight->Diffuse.g *= 1.2f;
) I/ H0 l1 l% w; M8 m                                pLight->Diffuse.b *= 1.2f;
! X/ u8 F- U$ W: W8 o: ~0 b  F6 j$ Y5 B6 `5 B+ Y5 S
                                pLight->Ambient.r *= 0.8f;
  \7 V6 ^  F, ~8 v                                pLight->Ambient.g *= 0.8f;
. {; r; T$ Y6 G                                pLight->Ambient.b *= 0.8f;
( p1 f1 w1 X8 U$ T+ J2 q+ k       
. @% I' u# V/ b$ @; p. P6 L: Y- h                                memcpy( &m_light, pLight, sizeof( m_light ) );% o- K. X  |# {$ Z/ Z( i
! h! E' I! s2 @0 |, l
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# v$ ?8 S( B: u8 J) r; P                                 D3DXVec3Normalize(&(vecSun),&(vecSun));& w" r& [9 p+ I% b- z
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
7 s( Z8 Q0 a5 S  y1 o: S: j                                 pLight->Appear( m_pd3dDevice, TRUE );
- y8 X; p, X" f- N& _1 S                " J$ J9 J5 h% v/ n0 `
                                DWORD dwR, dwG, dwB;
; k# J: h/ e2 p; V8 a% d9 @" m                                dwR = (DWORD)( pLight->Ambient.r * 255 );
! H+ F& u3 s, G. K                                dwG = (DWORD)( pLight->Ambient.g * 255 );, F9 D1 M& p* Y9 M
                                dwB = (DWORD)( pLight->Ambient.b * 255 );7 J2 g7 J1 w: x5 d
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );) {6 V& m+ J, Z: k! ?# J4 }
                        }0 s- s" h7 Z% t2 O" z8 Z: Z
                }
9 w0 H; k, e$ B0 O        }) o% z4 W3 `% g: s$ w0 B
        else
, Y# h$ ]) R3 ~, \6 S5 L/ V#endif 2 J5 B( l1 E2 [3 y1 n8 q2 Y3 I# D
5 Q2 {+ U  n6 y! H4 t& H) P
        if( m_bIsIndoor )
9 I: E, v( ]' h* M; `        {
8 K# W- @2 Y  i' O* a. V                if( pLight )8 [- b9 E$ r% X* b: D' c
                {               
. |0 ], P# H' P5 X/ @6 I                        // à??μ oˉè* 6 D" R9 M7 X9 A& O# q' \
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;+ _- Z* a: k2 @
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;+ M+ z, a. |! q' A
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;; `# j# j$ c1 [  Q# g) C  x

+ O2 j' S1 V4 @                        // oˉè* ??à?
% v& A( G$ ~& [) z) R- g                        pLight->Specular.r = 1.0f;; U; m' v4 |0 c: k  M) }. e  w
                        pLight->Specular.g = 1.0f;3 L7 g3 y( Q9 |
                        pLight->Specular.b = 1.0f;% Q" f5 v( W( K5 L$ c3 d; k3 S
                        // àü?? oˉè*
0 M3 M$ @. p$ z* I                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
# r3 h' o7 k4 ^& \4 o- M9 X1 E                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;& C7 k9 ]5 }; X5 |4 t9 {2 ]% A
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
* W5 M. t9 N0 T: R* h; J% [6 C
% U- u- q2 u% c( f                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
: h- D; b4 ?$ k' E6 l2 K: P5 j8 A                        {
' n! U0 p- B0 [6 Z' e                                pLight->Diffuse.r *= 0.6f;
0 D* {4 l. _! T( w8 h# @                                pLight->Diffuse.g *= 0.6f;  L( Z. r+ Q9 n4 \7 h
                                pLight->Diffuse.b *= 0.6f;- J9 ~8 o/ n, |% k$ Z7 N
                                pLight->Ambient.r *= 0.7f;
1 O& {9 v$ ]5 w                                pLight->Ambient.g *= 0.7f;
, p3 N7 f) `. i0 o4 ^4 i                                pLight->Ambient.b *= 0.7f;
7 D" _) J& \- }+ C, _- S                        }1 @, f/ t* [/ h9 Y! K+ B- E' J
9 i% K' z9 K  I4 c% M- z" m
#if __VER >= 15 // __BS_CHANGING_ENVIR+ f7 B2 F9 t3 O7 W. r
                        if( g_pPlayer )! R- K* O  t: J( S
                                HookUpdateLight( pLight );/ D( f' m6 m. S! o. A) D
#endif6 E* B1 s$ j! q9 A, o# q; y
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );7 \% K4 D: x4 K2 {' ?

1 X# u) |/ O: s5 W+ U                        pLight->Diffuse.r  += 0.1f;
; `2 i9 L7 v0 L, w( R) Q( ?  x                        pLight->Diffuse.g  += 0.1f;
# y0 }9 a0 b, y8 G                        pLight->Diffuse.b  += 0.1f;' h# g+ O# f" C/ |. _! x1 W5 M
                        // oˉè* ??à? 7 u7 B3 s8 v1 H7 _, S
                        pLight->Specular.r = 2.0f;/ ~6 o- j) f9 w( f/ o7 O  I# _  \
                        pLight->Specular.g = 2.0f;5 L+ q5 ^- ^( l7 D( p
                        pLight->Specular.b = 2.0f;/ Q) ~8 t6 }" _* k4 i' `
                        // á?oˉ
8 t* p7 i  P1 y1 t4 v/ n7 l, l                        pLight->Ambient.r  *= 0.9f;
; M& k3 j4 J, T* Y$ ~                        pLight->Ambient.g  *= 0.9f;1 K" Y3 p) _5 _3 m
                        pLight->Ambient.b  *= 0.9f;
( N! S6 r/ |' Q7 [8 I3 F* K/ X2 }) s8 [( R4 r
                        memcpy( &m_light, pLight, sizeof( m_light ) );
( X3 c& P) S7 w: U4 \" n9 ?% O6 S                        7 o) t- c; {" ]4 J4 g$ `
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );8 H6 k9 N3 B2 G: c4 @
                        pLight->Appear( m_pd3dDevice, TRUE );& i7 @( N6 B& ]# c1 w  @
       
) g0 C2 \$ a9 A- `! v; G                        DWORD dwR, dwG, dwB;
7 a- E: U2 Y. C3 J; Y8 y/ K- ]                        dwR = (DWORD)( pLight->Ambient.r * 255 );
! ~% ]1 |8 \9 f, F5 K                        dwG = (DWORD)( pLight->Ambient.g * 255 );) ]) x6 {: F5 N' j
                        dwB = (DWORD)( pLight->Ambient.b * 255 );: X0 f4 G. `& q: k4 q
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
  j( \7 Q* h4 P/ T2 ]7 ?                }
/ U  K& ]& j, [# K2 C        }" d9 f6 K+ b. K  \4 g; A
        else
4 X$ ^; b" L7 ]: H( [5 l        {
( q9 U7 l5 M. X4 Q2 o                if( pLight )
( [$ O7 i# b9 T3 S' m$ g                {
. G5 s5 T5 n- X+ @, U( g9 O                ; R( ]! G( K& U: W) x
                        int nHour = 8, nMin = 0;4 E+ x4 }# G  ]
        #ifdef __CLIENT# l; i+ m! n% H: z9 y, j
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 7 C9 N, h! W+ H) u
                        nHour = g_GameTimer.m_nHour;
; ~$ \: P: b% G; w; d                        nMin  = g_GameTimer.m_nMin ;
; L+ ^' `4 H% v* o# T  W( a        #else
* l, S: p# _0 Z9 v6 h- v9 {* j- S+ v                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
5 w% Q! M: w; b# n0 h; A1 a                        if( m_nLightType == 1 )
8 M8 ^* F9 \' G/ d" ?                                nHour = m_nLightHour;; b7 A! z: f9 A( j0 Y! k
        #endif8 i: a5 {1 I+ G/ Q* |
                        nHour--;! v6 |$ Z7 f7 P  a7 ^
                        if( nHour < 0 ) nHour = 0;
; z+ d- X3 _; u; |6 ~                        if( nHour > 23 ) nHour = 23;
9 r2 F7 t' O" ^/ C$ g. H) P4 l4 i+ Q; x& n- F- X  Q' J# j' A
                        //if( m_bFixedHour )
$ j* \# {# y+ V+ F1 F6 J                        //        nHour = m_nFixedHour, nMin = 0;) S$ ]( H5 N) J+ W0 J- x
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];! x. ]" l. C# U  b# m
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];1 D, ^/ Q  |" ]8 m

8 w/ X' b& \1 X! G                        //m_lightColor = lightColorPrv;
) a9 K1 V! W; g/ z* \                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;7 m9 m9 q( N8 v- A0 K! f
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;" y, z, |  J7 c2 ?' {8 ^
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;. B* }& d5 F  u4 n* u! R6 G
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;$ {5 I, |  f$ k  {9 a0 L2 F% o
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
( ]( H0 s+ H7 a. q: f                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;0 t; P% p1 t9 m) y: _1 S: s! b& T: L
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)% @8 j0 m# Q  B( V2 W: v
0 T* T0 E( W* R4 q" k- y6 k
                        // à??μ oˉè*
6 t1 j( F0 L# p4 q" E                        pLight->Diffuse.r  = lightColorPrv.r1;8 g0 T$ i6 d: [
                        pLight->Diffuse.g  = lightColorPrv.g1;
% d+ k* _, P  z# o                        pLight->Diffuse.b  = lightColorPrv.b1;# n' b+ N" b! q& c0 _. Q) q
                        // oˉè* ??à?
! u' X8 H  S: }                        pLight->Specular.r = 1.0f;
6 o3 [7 Y$ ~+ B9 n7 A* F# _6 v: _                        pLight->Specular.g = 1.0f;. I. {- z0 m' a- v5 Q  q6 F
                        pLight->Specular.b = 1.0f;' l* C7 I" S0 o$ Q( L) C$ h
                        // àü?? oˉè*
, X$ n3 r5 r3 e1 i( N4 T- R  z                        pLight->Ambient.r  = lightColorPrv.r2;' ~1 a0 q! O/ [. s
                        pLight->Ambient.g  = lightColorPrv.g2;9 L7 V  z( k) R, E0 K
                        pLight->Ambient.b  = lightColorPrv.b2;
' p: g- Y6 O5 s4 b! i1 a' v* Y) I# |8 g5 n7 U% \8 r6 X% s
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.4 ^, T0 z" @: x/ ^
                        {# {  U$ L4 s$ P9 w' e6 f
                                pLight->Diffuse.r *= 0.6f;& S6 F4 ?7 U# J3 b/ H
                                pLight->Diffuse.g *= 0.6f;0 y* I( e( G1 H1 \& s' A
                                pLight->Diffuse.b *= 0.6f;: z& e: g: u% f- O* Q
                                pLight->Ambient.r *= 0.7f;
( L; j' X' g1 j( j: g1 `! Q                                pLight->Ambient.g *= 0.7f;
" \; n! o/ H2 X; Y4 I                                pLight->Ambient.b *= 0.7f;
2 y  o4 U) r% |6 w6 M                        }
. i; G3 \3 f; L                        ( |- j4 R+ n% a8 I- V* G( C! B# E
#if __VER >= 15 // __BS_CHANGING_ENVIR/ G8 E; C% N! m/ [, ~2 o0 w
                        if( g_pPlayer )1 Z/ X2 ^2 `( v8 H) G
                                HookUpdateLight( pLight ); / W1 f8 E' [0 f4 Z
#endif0 Q! B5 P& X/ I- a* O
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );; ]$ ~4 t1 m" h. k! f

9 |2 ?0 w/ K* R2 |#ifdef __YENV% ]- @9 `$ z' X! j* K# l
                        pLight->Diffuse.r  *= 1.1f;& r) ]9 P# B" k( M
                        pLight->Diffuse.g  *= 1.1f;8 C2 P* M1 q; N$ b7 [/ F' }
                        pLight->Diffuse.b  *= 1.1f;
2 x+ x! l& b9 I0 T                        // oˉè* ??à? 0 I% z5 a: |8 [9 G! q
                        pLight->Specular.r = 2.0f;
) H, {' Z2 _5 E% l, @3 t: Z                        pLight->Specular.g = 2.0f;
: X5 Y1 i/ t+ `* O% P  g7 s4 t                        pLight->Specular.b = 2.0f;$ \0 X& _* I& C* @$ @( f
                        // á?oˉ ( m: Y2 V8 p- [  b$ `
                        pLight->Ambient.r  *= 1.0f;
8 H3 V% s% L: o9 s  F2 ]                        pLight->Ambient.g  *= 1.0f;; \  [' T+ ^4 U; _: A
                        pLight->Ambient.b  *= 1.0f;
0 d  M4 J3 \2 U/ K5 K5 D#else //__YENV
! F0 p- f# w$ a1 o                        pLight->Diffuse.r  *= 1.1f;, p  Q3 [& [/ Y  n
                        pLight->Diffuse.g  *= 1.1f;
; }0 u3 c- o! \0 W                        pLight->Diffuse.b  *= 1.1f;" P; X  P7 Q- k/ H* }
                        // oˉè* ??à?
/ e  g+ [5 b. U, }- Q* ~8 Z1 e                        pLight->Specular.r = 2.0f;3 L% l  F0 [9 G5 E. F" W) e5 ~' [2 w
                        pLight->Specular.g = 2.0f;
+ j* z0 {/ g8 X( q5 q  N. d* {                        pLight->Specular.b = 2.0f;5 z) @( f* r% ]5 I/ S9 b& T2 }
                        // á?oˉ
, g# S' W6 k( Q1 k/ @                        pLight->Ambient.r  *= 0.9f;% Q- Q/ N7 P, ~! L' `
                        pLight->Ambient.g  *= 0.9f;2 ]$ {+ u, r2 O/ A& e" e( F) i/ B
                        pLight->Ambient.b  *= 0.9f;' x# }, a+ {7 h" V: ^) r7 p7 ]$ X
#endif //__YENV
5 W' V5 @& ?( Z. O, k- B                       
+ l: L9 C# [5 S* H- e& S+ @                        memcpy( &m_light, pLight, sizeof( m_light ) );( R/ k9 o9 l- D5 y8 d
                       
( ^. ]# X8 g+ \: _                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);' [% J8 c4 H9 `5 r* s
                        D3DXMATRIX  matTemp;
8 p  ]& D  F3 r1 f) p4 i                        static const float CONS_VAL = 3.1415926f / 180.f;
  k: n0 l; d5 _, A" i' K6 `$ G. D3 K( I6 j- }6 P0 C% Q& L
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
5 o/ P+ ~) f( r! |. V5 m% U                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);! h3 H  P( a* M  @/ `/ c( `
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 4 p' _0 H+ V3 s! b3 L
                        pLight->Appear( m_pd3dDevice, TRUE );% D& A/ O" |) m3 E# `, ^6 m- V

% M0 @2 w/ q- `( ^; x3 T* H                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
( [8 c& H2 ?2 n6 \! n# B                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));. p( c  f$ {' m
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! V8 K4 a0 G4 v+ y0 i4 I  P8 v# D$ C0 C8 Z2 ]1 V
                        DWORD dwR, dwG, dwB;
1 ?& _4 E: d. n9 k3 R5 Z. B2 T1 O                        dwR = (DWORD)( pLight->Ambient.r * 255 );
+ W! ^, E6 V0 Q                        dwG = (DWORD)( pLight->Ambient.g * 255 );
2 ?+ r& k0 {8 N9 n* ^! C7 S4 C                        dwB = (DWORD)( pLight->Ambient.b * 255 );* i$ \; d5 @# b5 F( y* ?# o
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
: ]6 }) d& m4 S1 ]. ?, |( s9 _                }
$ T+ L( G# S0 B+ [, \) S        }
, M9 S* ^! f$ o1 O  K9 z2 K9 |8 r  g1 P: q
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );  I) B3 W$ G, M& |) K0 P0 t, r0 P/ z. ~
        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) );
- T. e8 P' S2 F- |' c. C" [        ::SetLight( bLight );  L# E2 N/ G' B) v! j" B$ I0 p

- X3 t6 c4 M8 {; `& p7 U7 P        // ±ao? ?D?í???ó á¤à?
( T- w  B9 R7 j) o! t1 Y5 ]        m_pd3dDevice->SetMaterial( &m_baseMaterial );
0 n5 d1 E7 k9 Y7 k/ ]" y7 |       
( _1 G& I( ]! Z% U5 p, v#endif // not WORLDSERVER
3 }4 ?2 ]" Y0 g# [+ ^1 T. C( @; w}/ S& V$ j4 l8 b1 u& W7 G% S
并更换
, y6 e1 q3 x$ l- HCode:
) K& {$ M  \  c* q6 c7 L__FLYFF_INITPAGE_EXT9 ]1 g" j1 j. d9 u3 X
定义
; p4 S  L# P& {8 U) y& H2 x3 e- e* u. h' F1 r7 f* P# x7 B
9 T9 c- A# |" X

; y$ Z9 t) {; i  c5 h: d8 {2 r! `
( u1 y( U5 w8 ?9 B" N现在终于删除我的狗屁加速...5 A4 T1 @  a0 E. [

1 |% ~( `( `; s1 p' e9 s8 X  ?& X$ g% V  B7 L7 `# Z
& `* ]- A5 T% ]: q  a! q, \2 {





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