飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:- f& o: o- }# W) P
尾翼:
3 u. M" J- S' N! ^7 r& F0 Z% u* g- O
代码:9 l+ b" }2 D) `+ f
CWndAutoFood::CWndAutoFood()( n' i6 F5 t  x
{) {' c3 I1 r- q
        m_pItemElem = NULL;
$ l/ N; _4 L6 e( w9 ]8 U        m_pTexture = NULL;
) N* |" o. P' h, ~1 r9 e        bStart = FALSE;7 z1 O1 g+ V+ V5 [; @
}
8 E. U% B; `; W$ l
& o0 N5 F; `& u6 I, J: DCWndAutoFood::~CWndAutoFood()8 \1 n! T6 g! e0 D! N
{
; G) T7 B. T5 z( p        AfxMessageBox( "AutoFood ist gestorben " );6 b! N1 p' G" {6 q& r$ S
}
7 d) G: V( ]) b3 kBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )! g2 ~# p2 K# Y0 R( ^$ W+ h
{8 Z( `2 t/ T5 h& ^! D; [
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
+ l+ U5 s  {2 e3 D+ U7 a# ~}( k. w) s+ G% X$ _" _$ q

0 m) K3 O" R- r' C* L& j& wBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
% @* c& {6 P9 |' J% w# ^{: t7 W& J$ d+ V
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ e- X1 N7 B: }. h& ^0 n        CRect rect = pWndCtrl->rect;% P: J' _& W- O
        if( rect && rect.PtInRect( point ) )
& t: N% |; _/ g; w5 M5 F        {
+ F4 m8 o6 e9 R                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );$ ^! K8 M6 r$ r) o+ |; c. c
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )' P% G+ |" I$ x$ Z6 X" E
                {
" e' X3 W1 |( @9 [. t9 z  L5 |. K                        if( m_pItemElem )5 k9 F$ H+ H$ O  T. a) o
                        {; S5 E$ M; |' |3 J/ ^, `
                                m_pItemElem = NULL;9 ~/ k9 r2 J, K  V
                        }
& L: E# Q$ ~3 H- T$ f8 n                        m_pItemElem = pItemElem;, T5 q9 ^6 a; `
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );: z) `8 M: Y& B' t8 R- Z' b
                }else{
8 g5 U/ ~9 \9 C) {3 u                        SetForbid( TRUE );: t! ^( T7 P) F1 S
                }5 c  m6 L- y! L! l, \- G
        }else{; Q* H: R; O3 Z( a  Y* o
                SetForbid( TRUE );
4 ~; P  I8 s$ Z" L& G: T2 @        }
) O! R* `% Y/ e$ T% A- h( j        return TRUE;, a, ^) d9 Y) m& |& `5 y/ Y- d
}
7 C$ A% a# ~; i' u2 S/ e' p. v, m: u; L! @/ W2 _
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
( ?& X' R( g3 ^/ P2 R( Y: T& T- E6 t{, z: U$ x& t+ Y+ T! P5 e: g
        switch( nID )
( d3 b& n" r# l4 ?6 q# C) S& ?        {
/ ~% x3 U! Y: V3 U        case WIDC_BUTTON3:7 h! O6 z# s! [* G2 k
                {: V: x: u+ I2 P2 u) L) R
                        bStart = TRUE;
8 V# O: c3 w$ F$ @% ~  \* q0 \/ I                        break;
  c* G/ P" ^/ _: g                }2 ?! a* ?- _0 e$ [
        case WIDC_BUTTON4:  o/ n7 ?( |: X* z) [7 s! U
                {2 ^$ _# ^' z1 \8 @. C
                        bStart = FALSE;1 L3 G& R1 f/ ^. N9 g3 g7 _) b
                        break;( h! [' u7 g% E  G
                }1 B' Y  N7 L; ?/ p/ Y
        }
, t* J9 c# I: Q" e. J        return CWndNeuz::OnChildNotify( message, nID, pLResult );
4 H6 C1 `( T) _& b}       
* m1 v2 q% u- Y& X# P% n% evoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
" p8 T5 O  X- \% s" {0 t{
9 a+ g4 Z3 d+ i& r( |+ c. ]5 d        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );5 |, i1 B% `" [& |
        if( bStart || !m_pItemElem )9 ]! ?& r& ~7 f; M; o
        {
5 ^5 y6 Q2 E; m. N7 d                pBtn->EnableWindow( FALSE );$ P( ]9 f& w' b- b' V
        }else# K% k+ l4 x. W4 \
                pBtn->EnableWindow( TRUE );5 R  }6 `. q/ e3 y# `) _& g
        if( m_pTexture )3 U" o  b3 u/ y$ D
        {/ J6 `& I3 x. r
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );; g- C) G) p( l
                if( wndCtrl && wndCtrl->rect )
, C6 Q' `4 b5 k" V0 C                {/ s# X7 _% w# e- g( ]' Q
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
  @3 o2 m- Y8 J4 `                }7 m$ l1 v, U0 d- i6 `: g
        }
! Z3 ^( M; S# o  w; i}
; V* `9 N9 F8 r- A+ P* U/ c  x$ n$ Q% I( d
BOOL CWndAutoFood:rocess(). [9 C( O  A9 |
{
* p, L0 D( [5 U- @. {: N        if( bStart )
- M& y; r( ^$ A/ o9 \        {- b" w) i2 f. b0 m
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) u4 b; Q$ w) ?. S, u; z                {: R& W, ?2 H, I$ |9 b5 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() )
, W3 t: H, h0 s6 C! W9 p$ Y                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
. l, V" Q6 J4 }' t# k: R                }else{0 ^% L6 W- d4 O( |- k9 s" g
                        bStart = FALSE;9 p+ ~8 o, x+ H% a( R9 o
                        m_pItemElem = NULL;
: Z( W/ c+ c# k8 v1 c* D                }+ U0 N* Q& \! @! j# ^
        }5 `  w$ D! G. G0 _: C; k; A
        return TRUE;6 O8 ^, N2 p* O4 _* b9 P; h
}6 l" K; j( f1 I3 P: i

, {8 f/ ?: O( {# D4 F4 V/ \5 V( B登录视频废话:" p4 d9 G5 ~' |1 s  |9 v/ P
尾翼:7 y+ R; r. Y6 F4 T( ]- _4 |
) k1 X# U( `1 x0 w, F4 j) X5 ~
代码:
7 Z: k7 }8 `* p/ c+ p6 Z* e2 A) r& f# F; i6 \" H
void CWorld::SetLight( BOOL bLight )/ _- W* h" t$ g
durch: B# [' s& ~  v
Code:
6 q: f) T5 B* _+ a/ z2 k' c9 N- _void CWorld::SetLight( BOOL bLight )' k  @  ~' Z* s) V' j- h6 b, A2 k
{: [4 @4 \% }+ z. w2 p' P
        //ACE("SetLight %d \n", bLight);
# ?' s" h: _( z/ I        ' y1 y. B3 {0 F! s  R7 Q2 j
#ifndef  __WORLDSERVER ' I; |$ P+ @7 ?2 y& {3 l8 Z/ g
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
4 R- l# p+ c0 c/ X, @# L8 W        CLight* pLight = NULL;
8 v/ u( H, C  H/ H6 I5 X" w, i% J( O* U
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
( P& R; c4 ^; x% n, C" Z( D3 H7 d
: ]7 q* K6 ]' x6 u/ F" G- E        pLight = GetLight( "direction" );1 d  o* A% M: u8 e' z6 v3 d/ Q2 S
9 b+ ~- R4 o8 O, k5 {. ^  s) r
#if __VER >= 15 // __BS_CHANGING_ENVIR+ y$ Y& M0 O4 c: e
        if( g_pPlayer ){* M0 E1 O! p* U5 m9 a7 m, _
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );( j( j- s5 n3 n  B5 d7 [
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
/ t, ]7 [! C$ J( ^( M; q                {+ L8 C# W9 G; k! M" O/ r
                        if( pLight )
& o  Q- O; i4 h- E* n9 v; S                        {6 t5 p$ s" _) v# w
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
' }: x# q6 ~& b# L                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];9 A4 D! J9 A$ x- Q; C
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
% N! }& `3 W7 d% O. P2 b
+ H7 e) e" O0 n$ h# j0 `                                pLight->Specular.r = 2.0f;) A+ Y8 s! k+ @# F
                                pLight->Specular.g = 2.0f;4 U, w# x3 }) L
                                pLight->Specular.b = 2.0f;
! B- m4 g  [" d8 Z3 P$ L       
( c1 i! s9 j$ t$ J( `& \                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
$ s: r* }* o3 a8 Q, C                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];6 R* }( {5 ]$ G% `
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];1 e3 O/ L, j& ]0 N
       
. Q! w  H7 w6 J1 j" K                                HookUpdateLight( pLight );
7 g2 l) N8 f/ M4 x9 {! `6 H$ m* S0 H
7 ?# m$ _% X5 C7 W7 I                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# l. u0 }" v% s: g- ~               
  f5 I) U" d4 a& e; ~1 g5 ?                                pLight->Diffuse.r *= 1.2f;/ ]( n, v! g+ o6 p0 B1 l
                                pLight->Diffuse.g *= 1.2f;" P( n6 A3 H4 c8 z( n
                                pLight->Diffuse.b *= 1.2f;
- }3 i$ r- D7 h+ e, Y8 o& K
' k$ c- \: P5 I; @+ A                                pLight->Ambient.r *= 0.8f;5 o: Q8 I6 Q/ c
                                pLight->Ambient.g *= 0.8f;" _4 a4 |/ Z" ~. e( }  L/ V* W. b
                                pLight->Ambient.b *= 0.8f;4 Y2 }8 l9 C1 A$ a/ _
       
, ?! {) `, e: c) c5 B1 }                                memcpy( &m_light, pLight, sizeof( m_light ) );
  Q2 {1 L6 x3 J$ d& O$ Y+ o! k4 Y* {/ x' |8 K, [1 V
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 ?  S" F2 p, ?5 c                                 D3DXVec3Normalize(&(vecSun),&(vecSun));5 K1 ~( P& I  l: e% \
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
4 }$ ~* c. `. O- Z, {  u                                 pLight->Appear( m_pd3dDevice, TRUE );
4 a& b' l% z5 B; h5 G' J               
- [7 y: w. d' c. m. ?                                DWORD dwR, dwG, dwB;
* Q# x! g- s4 w+ z, X' Y; [  y                                dwR = (DWORD)( pLight->Ambient.r * 255 );- d* R6 ~3 L% H
                                dwG = (DWORD)( pLight->Ambient.g * 255 );! h% }0 ~' m* v8 Q* J, V; }* `) L- L
                                dwB = (DWORD)( pLight->Ambient.b * 255 );: H& }7 c5 m6 s( {+ O4 ]1 Q
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );# q4 f/ C' }/ J
                        }
/ V! j4 B# `4 K: b, m6 |2 Y                }
- Q( q+ j8 @- x        }
5 B( n  n, z/ u        else
/ G; c4 F1 d6 ]1 c$ R$ O# N#endif
: X- @6 Z% K* x
: U6 ~8 s/ F5 u& g        if( m_bIsIndoor )
- k: M- u2 c+ j; m) J4 l        {! j2 `3 ^# X+ x; T+ `; W
                if( pLight )
3 n: q6 r0 R8 G: I- A  ~. [                {               
2 Q% d$ O  M6 V( y0 o, V                        // à??μ oˉè* 7 p; J% [! B3 r; M* B5 {
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
  P* r) K- Z0 w$ F6 _                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
/ _( Q( x1 _( W2 \8 A                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;) E7 p8 R' C+ T- p

0 n9 y/ @1 v. ]: O; m5 R  e                        // oˉè* ??à?
2 D' p8 J# K7 I) D) i                        pLight->Specular.r = 1.0f;
% o* B! c4 F% Y# Z! N& H% B                        pLight->Specular.g = 1.0f;
! b- A; s0 s2 p( ]1 _! D9 o3 a                        pLight->Specular.b = 1.0f;/ L9 ^) Z+ h1 a7 o
                        // àü?? oˉè*
8 ~+ v5 O$ ]. h# H* I                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
' ^% k+ ?' `* E6 y. X                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
/ c! d0 m5 \) K6 _5 _5 S$ |- y# w$ E% g                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
( U% t' x! t# E8 x5 K. o3 ^- g# V; I+ l, `
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' m1 Z! F0 t8 ]+ `" a                        {4 a0 R. Y3 }+ F8 d, @( M1 b
                                pLight->Diffuse.r *= 0.6f;: e. z+ _4 [7 [( H
                                pLight->Diffuse.g *= 0.6f;
/ u# S: b! B4 n. B# p  j                                pLight->Diffuse.b *= 0.6f;( U6 d( G4 E& J( r1 i1 }1 D
                                pLight->Ambient.r *= 0.7f;
: M; u4 m3 M  p6 I2 R: ~/ z0 w# g: r                                pLight->Ambient.g *= 0.7f;6 M2 C" l1 ~+ S
                                pLight->Ambient.b *= 0.7f;( T7 e8 B' O2 ]
                        }# E. |4 S, p5 ?: G+ |

( j2 A3 S6 v$ ^* q' G* T8 z1 T#if __VER >= 15 // __BS_CHANGING_ENVIR  Z+ A9 _5 |) k% k* B1 o) G
                        if( g_pPlayer )1 i. T% ~8 Y$ P- J) ~) ~' A; u. T; O
                                HookUpdateLight( pLight );! _; N6 G. C' H' A) D: F9 S5 z
#endif
- x; J# X& q: Q" O& @7 B                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 k7 [' X" Z; S+ N, A
, H' {& h# O) @8 @  y                        pLight->Diffuse.r  += 0.1f;9 }; L) \8 j/ v% r2 b% b9 M+ M
                        pLight->Diffuse.g  += 0.1f;
4 f: J: [0 q' J                        pLight->Diffuse.b  += 0.1f;
- S5 k7 l5 F# E3 b, a- C                        // oˉè* ??à?
' `9 T; K3 X/ L4 a                        pLight->Specular.r = 2.0f;
/ J' Y2 U" _2 W& p                        pLight->Specular.g = 2.0f;4 L2 q: a" Z4 ^) ~+ [
                        pLight->Specular.b = 2.0f;9 e/ K1 E& e/ @+ \
                        // á?oˉ
. p5 k1 M! v3 g% X* g                        pLight->Ambient.r  *= 0.9f;
7 j% Y$ w- ~5 W. w% r6 ?; G  k- D( v                        pLight->Ambient.g  *= 0.9f;! @! e9 \% [2 A* R0 W3 U  _
                        pLight->Ambient.b  *= 0.9f;  a& A9 Z; v( o. B- o1 y. m3 E

# h5 t2 b6 v9 P% p                        memcpy( &m_light, pLight, sizeof( m_light ) );
* j- w, e; Q- @; e' v                        8 N* M6 d4 p6 J+ H+ Y4 u" b5 H7 x, _
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
. S. y1 c/ N/ }* y4 }9 I                        pLight->Appear( m_pd3dDevice, TRUE );
! C" o2 a' x) K' T/ u) {6 N       
7 e5 [4 M. P0 o" q                        DWORD dwR, dwG, dwB;
- j  P0 t' c: ~( g- J' L                        dwR = (DWORD)( pLight->Ambient.r * 255 );
7 H7 D+ A2 M; j4 e  V  @6 |                        dwG = (DWORD)( pLight->Ambient.g * 255 );& p9 O5 A/ h* E, l- e% w
                        dwB = (DWORD)( pLight->Ambient.b * 255 );/ |) a/ [7 x) |; M( q3 ?  g
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );: J# G% H; w( U. L- v. j/ }
                }; y7 b6 Z6 B. l) [. M; s
        }8 `; C: n' q4 q/ G2 J5 _6 u
        else3 Y7 R# {  K  p. h8 C# Z' h
        {2 S) p& e5 K3 {0 }6 \2 D% f
                if( pLight )
5 [; n; d* W, z/ l6 w                {
/ i8 x4 m; t. v! s& z' X9 ~                0 x" |6 ]0 m4 F# ?: `' t& x6 }  S
                        int nHour = 8, nMin = 0;& f# K6 K& I8 A  \6 m; _
        #ifdef __CLIENT7 x' m* M( t" s  W2 d
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 9 O! c+ }7 P" L" `8 L$ ^( F
                        nHour = g_GameTimer.m_nHour;& k& f8 Q+ N9 Z: K; T: F) u9 e
                        nMin  = g_GameTimer.m_nMin ;
/ d! E, V3 a+ Y8 t        #else
/ ]+ q$ v0 }0 `8 r8 p$ g6 A- A                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
* J' [( O! A7 I& q2 ^& c" G, A                        if( m_nLightType == 1 ); x9 A. S# ]5 q7 [+ l' f1 X: n0 u
                                nHour = m_nLightHour;# F' @& N5 c) P
        #endif
0 i* W: Y* W$ E4 n  m% {                        nHour--;
4 z- A' w! g# Q                        if( nHour < 0 ) nHour = 0;
  h: E( H' [. P* c4 f                        if( nHour > 23 ) nHour = 23;  M) `  o8 _* ?$ r; K, P2 b4 ~

8 d0 y# q1 ^1 h! U5 K, x( x                        //if( m_bFixedHour )4 Q% t+ `" n6 b6 L
                        //        nHour = m_nFixedHour, nMin = 0;
5 ]$ s+ i+ r! T1 Z9 e                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];- d% F: z6 |( n: r' G( N
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];/ ^& C: r. _- F& g% N8 x6 ^
2 r5 Q" k7 F6 h8 Z
                        //m_lightColor = lightColorPrv;
: N& o# M' U  Q4 ~& O                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
+ U& G; d. k% U0 [8 }) z5 A) B" s                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;8 j1 u) \% X+ h: c1 d7 @
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
* B4 _# t0 h3 ?+ l# v9 |* ]3 F                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
7 _5 m/ E( ]8 S( b' A                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;' B/ _4 r9 B9 i% v6 {# y8 B" L- j
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;* H, j: D1 t7 G& V- ~
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)4 g+ ]: T, V+ S
& a3 k/ |$ |/ b. j8 K: F
                        // à??μ oˉè* ' z1 |. @3 ?0 q% r; x* K3 ?
                        pLight->Diffuse.r  = lightColorPrv.r1;
% d: i) [3 W, ~5 K! v1 ~4 r& }                        pLight->Diffuse.g  = lightColorPrv.g1;4 @* @( K2 A1 i: P" _% I. l  ~+ Q
                        pLight->Diffuse.b  = lightColorPrv.b1;
7 N- ~( F& s+ q  |% E+ r6 E                        // oˉè* ??à?
! W/ E/ N; F8 M& G4 y                        pLight->Specular.r = 1.0f;
9 u/ q5 N( x3 O/ F; [                        pLight->Specular.g = 1.0f;
1 O$ J& B9 z3 ^# `) I3 i                        pLight->Specular.b = 1.0f;
1 k: F0 }3 s/ a) v  m& Y+ p% D                        // àü?? oˉè* 4 G1 m$ u" T' i, \; T
                        pLight->Ambient.r  = lightColorPrv.r2;
5 \+ b1 M$ j* q& b" m1 K                        pLight->Ambient.g  = lightColorPrv.g2;
/ q# C0 P1 b1 d7 [) c9 [5 p: s                        pLight->Ambient.b  = lightColorPrv.b2;: C; }* I- B/ a
- G  A. g$ o# F+ j
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 Y3 J0 E5 e; W/ @' k                        {2 F1 E) u; n# X
                                pLight->Diffuse.r *= 0.6f;
9 s# y/ G1 v5 h7 N# K                                pLight->Diffuse.g *= 0.6f;
! j+ v7 l+ j+ C) e9 t' X                                pLight->Diffuse.b *= 0.6f;
4 U$ G, s' {8 K' Q! ]* s                                pLight->Ambient.r *= 0.7f;
. M$ `- O7 Q% i6 F# o                                pLight->Ambient.g *= 0.7f;% q% o, l; B6 k8 D  [
                                pLight->Ambient.b *= 0.7f;
: L9 N; L: T6 a7 r                        }
, s% R1 r9 a- Q# N( X                        ! R! ]/ X$ U5 ]& I8 ^* `, G1 A
#if __VER >= 15 // __BS_CHANGING_ENVIR6 X9 r5 `+ j  ]/ {
                        if( g_pPlayer )
( D' q6 O! y; v1 ?% f4 C8 D- Z                                HookUpdateLight( pLight ); ' ?8 o# Z" H/ W9 Z8 v7 g
#endif$ a+ w7 n3 {2 f: {" L# z# T
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );6 |; o, i5 g( {$ D& h; V

0 E/ p3 o" v/ s8 [#ifdef __YENV
9 C0 ~6 f. O* q                        pLight->Diffuse.r  *= 1.1f;
& n5 k& d+ ]% [) ?; }                        pLight->Diffuse.g  *= 1.1f;% _7 v' c9 l2 i0 ?/ _8 D
                        pLight->Diffuse.b  *= 1.1f;; _% |$ B. }. l/ u
                        // oˉè* ??à?
/ ]. @; O! t5 `4 d5 u1 `                        pLight->Specular.r = 2.0f;
- l' U  I) A$ _" Y                        pLight->Specular.g = 2.0f;+ J( g- ~* H9 f1 ?9 {9 ?
                        pLight->Specular.b = 2.0f;0 z1 Y1 W' X8 I
                        // á?oˉ 0 r, `8 }$ d4 F" K$ R; y; D
                        pLight->Ambient.r  *= 1.0f;
; b; v- A5 C8 i                        pLight->Ambient.g  *= 1.0f;2 }$ G+ i7 M( e
                        pLight->Ambient.b  *= 1.0f;
' m9 d! `4 l7 l( Y$ I: I4 C#else //__YENV$ A' y  |9 ~8 @
                        pLight->Diffuse.r  *= 1.1f;
. i, w4 X9 a: i1 `6 Z/ f$ `                        pLight->Diffuse.g  *= 1.1f;' f! u' J1 S1 i; K# \
                        pLight->Diffuse.b  *= 1.1f;
& U) G. X8 k. T# Z. C: ^5 L                        // oˉè* ??à? ! j/ I. `5 J9 f+ u/ y
                        pLight->Specular.r = 2.0f;
' }# m9 \3 k- S3 ]8 d! T6 p                        pLight->Specular.g = 2.0f;
: M) k9 E+ |* B$ f$ ^4 C                        pLight->Specular.b = 2.0f;9 r2 h6 |: E2 p4 Y  O: k) ^
                        // á?oˉ
% k7 }" ^2 P( O' `; Q* {                        pLight->Ambient.r  *= 0.9f;% E* f5 n/ z6 m) E4 i! T' N6 H
                        pLight->Ambient.g  *= 0.9f;, f. {% I2 h$ F! H3 m4 w2 r! C4 G
                        pLight->Ambient.b  *= 0.9f;' U- O3 t" Z* u- c. N
#endif //__YENV
, q" F3 E6 c4 I                       
. @8 z& d9 J7 b$ [. C                        memcpy( &m_light, pLight, sizeof( m_light ) );& }1 F0 }" S' \  ~7 h2 Z- S) L
                       
& G9 w4 ^& [5 F6 H                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);# [2 x$ L  \8 |& ^) ?& e( O5 V/ O
                        D3DXMATRIX  matTemp;3 I5 p. V) G0 p& \
                        static const float CONS_VAL = 3.1415926f / 180.f;: |1 q  ^% w+ }2 l8 `( `( B
8 n! p; v$ I! ]4 q( p' W
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);7 K& h5 H8 G$ ~* b5 Y
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
* A5 T8 Q9 I( V. _0 {# ?                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
# p% {5 N6 T$ o% i' c% i) Y                        pLight->Appear( m_pd3dDevice, TRUE );
5 V0 [" C- H5 W0 Q$ {. h) U3 d8 `3 V3 h0 y4 B6 |
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);$ v* f( T7 B1 M  T, n( p# c
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
4 `: Q- L3 R1 F3 M$ r6 \4 s                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); # j, \; _7 y0 {/ B

" `+ L( S- B* f# V, K& `6 g                        DWORD dwR, dwG, dwB;3 F4 q0 W" h& G# G
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
0 f, m$ X7 Z2 B# M* U& ?5 ?0 W                        dwG = (DWORD)( pLight->Ambient.g * 255 );. c  G* a' d( t+ ?: c7 n$ Z! }+ r
                        dwB = (DWORD)( pLight->Ambient.b * 255 );8 |, N( `3 b  }/ p  f' R0 T! w
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
1 T, \% U3 R# \                }
0 O# V9 ?! A( ]+ j        }5 u, [. t& ~# Q* c) `% q

( f! m: e" q& p9 q5 O        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );4 U. r. q8 Z$ C, r" q6 a
        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) );! s; \. O3 N: V( F
        ::SetLight( bLight );
3 t" p5 ]7 m* m) i% Z5 c8 @6 T) E4 |1 a* q  R3 S2 E" a
        // ±ao? ?D?í???ó á¤à?
$ t6 d; g4 n% u2 f5 f        m_pd3dDevice->SetMaterial( &m_baseMaterial );  }- d9 F7 ]$ ?  E
       
6 R" H5 }/ A6 I. {! Q#endif // not WORLDSERVER
- d9 ~! r, f( L) f" {; H  M! X) q2 ^1 F}' g. q% |" C- @4 W: k
并更换
$ n! a  s( w) M" A+ P; @Code:, x! Q' _% L) R' e4 r& C; ~* K
__FLYFF_INITPAGE_EXT; U1 \. ]. R, `3 T
定义+ s+ v& ?0 }5 A9 V
9 E. f7 Q( i: f' V7 ~' l

! F! J( s+ z) ?  S' Q0 f6 q- p0 D7 B

( p. ]: C' h, B3 o0 K6 {现在终于删除我的狗屁加速...
" t9 p2 Y5 v7 H% j7 C0 d' H5 Z
3 ?, @, X, F  S# e% T' e7 s  W
. ?6 w: ~2 C& S# Q" f" [* p% E  a9 Z4 r% v0 r) \3 y, v- a; v





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