飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
& a% E& z6 ^+ C0 ?6 `/ K尾翼:
/ E9 G: h+ e. P
: `5 a5 s& Q' e: t* D代码:  k* R3 ]# _  Q. X
CWndAutoFood::CWndAutoFood()& u5 N! r- L4 r$ S; K# {. g
{
. s% K& l0 K% }9 }5 n6 c        m_pItemElem = NULL;
; [, r# p3 c% i, q% X: u. E        m_pTexture = NULL;
0 X/ [  x) Z& R5 c2 ^7 I        bStart = FALSE;
5 j! D( w! s8 d( j}9 c% i# P2 `: ?5 Q3 K0 i9 h3 ^, \

- v7 C" Y* a* i, @+ G5 s5 pCWndAutoFood::~CWndAutoFood()
2 W% K! @7 s+ }9 `{, f6 x" V3 o" x! T) @% G, Z
        AfxMessageBox( "AutoFood ist gestorben " );
# W; _! N1 _+ ^$ [7 [" j# S2 O2 j}
% E  W1 P. }) O! xBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )  L* ]2 n6 D3 }7 E" T! L* r
{
: f+ h  N6 b7 @        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
0 a# w6 o2 s( g}8 z  d6 H. H' V+ C3 s) v
- V% U5 a7 @0 E
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
1 F/ w2 s" {* Y{
/ }. _- u! Y* {5 y, E: y4 J' y        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );* ^; x0 ?% n% {, _2 T+ V
        CRect rect = pWndCtrl->rect;
9 \" X" o1 x# Z# p! Z, b* p        if( rect && rect.PtInRect( point ) )
; u+ J/ S3 G1 p  p4 s        {" y4 g7 T* D- |9 K1 ?
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );' G4 e. p( ^5 V# ~# G( ~7 O4 j
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
% }2 e# F1 e% F* C4 g/ C                {
6 o/ @! }) {, X3 u) S" @; c                        if( m_pItemElem )9 S% t8 O( A4 O
                        {
( S) D; T$ r* [$ r) K! d7 l* D) S% {                                m_pItemElem = NULL;/ p2 d; ?. l( {9 @
                        }
5 N  e( z7 n7 r7 h7 X                        m_pItemElem = pItemElem;, A$ K; ~; [/ k6 M! n8 L% I: E
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
+ H" Q1 k% `. q* E; m8 a6 n  N                }else{
) z/ t# u, E' j0 H3 N$ p                        SetForbid( TRUE );
; x' d: r& V8 D9 I- R                }
4 I! }* `0 u9 X6 b7 O; r        }else{
1 f0 a0 K) [4 k$ n3 U! k( q                SetForbid( TRUE );
% Q- Q, m" z9 n/ b& h        }
! t/ n& N0 s3 v) ~        return TRUE;
$ |' E. T2 H( ^# o) w( d}
& G6 G% v/ w, Q  z% K) @6 f+ S  k+ {2 Z
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult ): X" |! d" D0 j' x- ?) w' S5 Z
{, |1 F+ W& ~# A. \; Z- X
        switch( nID )2 f. Y# b' {6 s4 J: h* ~) G( o
        {7 I4 S' ^, {  \& `
        case WIDC_BUTTON3:( N: b! r7 @  r  d
                {- ^, u& m- W7 C7 z6 o( H
                        bStart = TRUE;
0 _% S9 \% G6 z: @( ~( C                        break;
. F2 c3 S) e) g! u                }3 o: H: L) }% k, G
        case WIDC_BUTTON4:5 ~2 k# p% F: f& Q" w" D5 ?3 j
                {
: K' [7 n) Q) K  \* _/ N                        bStart = FALSE;# T' H9 F+ U3 ]  R
                        break;
( l8 @9 j* K4 q; F' P9 E6 n                }# ]% u/ Q4 n+ f) b( h
        }/ e9 ~% J! y( M' v2 x$ `
        return CWndNeuz::OnChildNotify( message, nID, pLResult );5 P. `8 e5 F: O5 s
}       
. [( I% X. m; vvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )9 d% I& R! A3 X- I5 i( ]+ G; J+ O
{& n5 Z( j8 b3 a: n3 r8 u
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );5 N* r1 n$ n/ Z$ R) Q- S) T" k
        if( bStart || !m_pItemElem )7 ~7 G! J  A- l0 Q# p( E9 z* ^
        {
* e3 m' O+ T$ j5 N                pBtn->EnableWindow( FALSE );3 Y* V, i7 r2 _" a- O7 q
        }else
4 x: |9 r3 C9 Y0 H/ Q                pBtn->EnableWindow( TRUE );
+ m; ~; I5 z6 W" a" B        if( m_pTexture )
! {. j6 M) \) n6 ^8 q& v2 k        {
  ?/ t$ \  |1 L6 T# p5 E                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ ~7 I, B! {5 I: l0 _& Z8 L; Y2 b                if( wndCtrl && wndCtrl->rect )$ o) e+ `( L0 v+ j) H
                {
+ J0 f1 }" t& Q, G                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
+ e; x) u0 v% K6 I: c% m                }
) O% @2 r3 _" r# ^- N        }' d& e; m& n4 o8 [4 x
}% ]! C( q) f+ |& ?2 w
5 g8 Y; @' W9 q6 Z
BOOL CWndAutoFood:rocess()1 ^) ~: d) ?8 {2 c' f9 S* M, U* r
{
% \3 Z3 S9 O3 Q' V        if( bStart )" u; ?7 L& ~% T+ p+ m0 A7 }
        {
) C( K5 V1 s* c/ V( p                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
* U( [% @* f# Z                {. g6 @- E5 C# K. i
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
$ g: J) b# j; n$ K. M/ B                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );1 L7 u8 ~; ]. N) i" A- C( q  [* ?
                }else{
2 f. p' L) [8 D$ u                        bStart = FALSE;
6 e& o& P0 K& }$ ]                        m_pItemElem = NULL;! u$ B4 V" N* L! X
                }1 q7 o9 d3 R& C" C  j
        }
  S( Q4 ?1 e  Z& T) H9 o4 h        return TRUE;; O$ N! c) \+ s9 d
}, W$ a0 G8 S' F" [

6 K7 X9 X  @1 P2 G登录视频废话:
5 B1 u) T) s1 r; ]: T( T- I尾翼:1 c5 n0 `  t2 ^- r
. x8 b( M3 x4 p4 h3 }! d! `
代码:- q6 z8 B7 `" P' y; d

( o' M- S" |& V6 z3 C& r- ]8 N4 ]void CWorld::SetLight( BOOL bLight )& C) ]6 ~; |- `" p6 ]2 c( c
durch1 }9 Q* v1 y* {/ K$ x( _* p( y
Code:5 G( Z) V' a/ Q  `, A& O
void CWorld::SetLight( BOOL bLight )
. G) A6 ^# [" d9 Z' W. A, c! w{$ w: ^9 |% Q, _* E. ?- L. c5 j7 ~
        //ACE("SetLight %d \n", bLight);6 l# Q( H$ c' M/ m$ O+ {3 ^
        3 M. L! h! t* B
#ifndef  __WORLDSERVER ' s/ ?0 T: w# i( S; e% W
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
4 v- U0 n) n6 V) _        CLight* pLight = NULL;
, z6 A5 ^6 g- V6 v& v. P9 \
/ G% }1 j0 R+ Z4 [) e2 ?; e        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
$ Y* v# X- ?+ B/ c0 G  R9 W8 j# s, o6 \- i3 c; u
        pLight = GetLight( "direction" );
+ q$ }+ p7 c2 F4 s/ R7 U; U! u8 u1 X: h/ v. v6 b! y, L
#if __VER >= 15 // __BS_CHANGING_ENVIR! E' B+ s" _  n2 E7 M5 s
        if( g_pPlayer ){( _3 D& l# l$ g) g* g
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
: [" }" F# m8 B1 b                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!; x2 ^/ U, R$ ^7 N1 c" |2 o& e
                {
+ Z6 o  U: M" C                        if( pLight )) L' N/ b4 J! v* X# h0 |+ Q
                        {
5 p. W. q; b. X                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
0 n: C& g4 m% i% e2 @; u: a% `                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];3 ~0 _6 V- |& g6 R1 p7 G' B
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];0 x) C; {3 B4 @3 l
/ G4 c; h1 M  w9 W6 k5 p2 D
                                pLight->Specular.r = 2.0f;! v3 i& O# K2 X  O  ^
                                pLight->Specular.g = 2.0f;
( g+ ?4 n0 B( d# f$ s( G                                pLight->Specular.b = 2.0f;6 W# @3 T* c. b# ^0 k
       
( @) I8 W  i$ O! F' i6 _/ t# ~& B                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
; T- y3 d% e4 l, ~& b, u4 h$ J' b                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];- J. p: r; s) @* X1 ~% h
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];6 E4 U/ t6 H; \2 `2 d* e$ [
       
# ]& ^* R2 [) D                                HookUpdateLight( pLight );
3 u/ q: |  {) h  W# A; H% [# D, Q: G# j" [) ~! l) ~% Z6 D
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
  _: q/ `1 b, K                # n2 [. [0 I: F
                                pLight->Diffuse.r *= 1.2f;; b1 e! q! ^/ k! |& X
                                pLight->Diffuse.g *= 1.2f;
  c0 D5 m6 f2 v                                pLight->Diffuse.b *= 1.2f;0 O6 o2 q& d& ^  \; G* A+ [3 A

2 o$ Y3 M% u" C$ b. x                                pLight->Ambient.r *= 0.8f;, g6 }9 K+ d0 t- E
                                pLight->Ambient.g *= 0.8f;
: z, v0 z; Q& P7 v1 X/ O                                pLight->Ambient.b *= 0.8f;4 t. N( r# k" D: k* v
        6 g7 e+ i2 m; n  L" Q- e9 k
                                memcpy( &m_light, pLight, sizeof( m_light ) );
( {. z. @( X9 x- n
/ T, B4 b: A; U6 s  C4 G/ s; \                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);5 x- t  ~/ k0 l& e4 o* t
                                D3DXVec3Normalize(&(vecSun),&(vecSun));( O  I/ p) s: x8 Y
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 4 {' e/ @3 F8 Z
                                pLight->Appear( m_pd3dDevice, TRUE );
( A- X, n: ]9 O* Z; p                ) ~; L. w$ J5 G$ W
                                DWORD dwR, dwG, dwB;- I* X( p0 g% K* _6 c6 t) S$ M
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
. B. X" R% P" H                                dwG = (DWORD)( pLight->Ambient.g * 255 );! j% k% U0 K3 L- w' Y
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
6 Y9 e' f4 J: `/ \: c9 V! S& P                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
, r3 i7 r2 t3 d                        }
& L+ f# w) g3 u2 x3 f; d$ @& l- r9 k5 H                }
: R  F  C% s* a# T- H' }  B9 ?        }
) v$ G0 B5 e7 o; e0 a, W5 k: ]2 i        else
: |0 @# y: T- F) U/ }0 L#endif
3 q1 g7 V# o( S& x3 d* V5 l% Y. F- }. l5 g- I+ d0 v: D  f
        if( m_bIsIndoor )5 X/ I$ \! j) b
        {
, A5 \- _. d0 D, j6 T                if( pLight )
* A2 M+ v/ F" H2 I                {                6 V  q6 C- C3 U- }& F4 l, ?/ \. B
                        // à??μ oˉè*
5 ^9 K: V  z0 i3 o! m1 d( D                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
7 _" @$ g9 r% C/ K! U                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
$ W, s+ r! D3 l0 Z9 b                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
4 Q  C4 m, L  i; w3 U' R# k- {0 I8 {( X) N
                        // oˉè* ??à?
) F. J, v( }/ u5 l0 m  ^                        pLight->Specular.r = 1.0f;1 [, |) U# _; p! L0 s. `$ k
                        pLight->Specular.g = 1.0f;: p# b: x: e: P' U4 C% S- |& a4 r$ J
                        pLight->Specular.b = 1.0f;
2 G1 w* p2 D# I! l. i; i                        // àü?? oˉè* 7 r  x: S5 l- J: H6 C
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;4 E( @( z4 D+ \9 K0 w3 `
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;* i" e' K) F* v
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;' s$ Z1 I+ b- W. _  ]7 {

" f+ J8 W( U; L  [0 A5 s& m                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??./ A# X% h* `" B
                        {- r% S- o: [8 Z9 a/ d+ s/ K
                                pLight->Diffuse.r *= 0.6f;
, z2 e. j; Z9 B1 H/ q                                pLight->Diffuse.g *= 0.6f;
* \7 r( Q6 r; H4 x- b                                pLight->Diffuse.b *= 0.6f;1 S, j/ H$ H" Y3 A
                                pLight->Ambient.r *= 0.7f;
! J' o8 t- g/ z1 D. e' A                                pLight->Ambient.g *= 0.7f;8 B* a' _& l! x" w* }3 B. J) T% m
                                pLight->Ambient.b *= 0.7f;  r/ G& G. L" W) O: v
                        }/ L# `/ W9 h/ |. B) b; h. K& q% n
* {/ B* [  \! o! U% f2 Q
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 W# R& e3 @4 W                        if( g_pPlayer ), c: d& x. a7 ^0 l
                                HookUpdateLight( pLight );
/ ~* I* H" `. h" M#endif
4 z* j* Y4 Y- z$ w  a: N                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );0 e: g" c: t' J1 ]6 u  r/ j
9 z$ c% w  r# a8 S3 p$ r
                        pLight->Diffuse.r  += 0.1f;- n+ k3 U6 i* b8 E/ T  P
                        pLight->Diffuse.g  += 0.1f;! _' u. z3 ~3 i6 T4 @) h6 c- B7 a
                        pLight->Diffuse.b  += 0.1f;
/ j/ s+ [" Z* D3 x; F8 B                        // oˉè* ??à?
; @$ u1 y$ c1 e: F                        pLight->Specular.r = 2.0f;; X. E" ]# h! B$ n3 m5 g
                        pLight->Specular.g = 2.0f;
2 F3 g( f3 z. P( {+ I& D9 t* U                        pLight->Specular.b = 2.0f;) c. A& D! @4 r
                        // á?oˉ
+ ^/ M$ O) l* D. f. o8 M' }                        pLight->Ambient.r  *= 0.9f;
: N! R+ v, j* V1 u  c                        pLight->Ambient.g  *= 0.9f;( X! C7 p, I$ Z- @9 n6 u# D- l
                        pLight->Ambient.b  *= 0.9f;/ k* r& L. _/ T8 F6 u0 ~( k( H

8 @7 T7 C8 p4 h0 w4 y                        memcpy( &m_light, pLight, sizeof( m_light ) );
8 l  e9 w9 ^3 ^" V1 U+ p: m4 f" @* `                        ) d3 Z$ M8 l+ \
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
" l  l7 U4 `, |4 I                        pLight->Appear( m_pd3dDevice, TRUE );, Q- O) C: \: E3 f/ s% G& u
        ' b6 ^$ U  V# ~& U4 C1 ?
                        DWORD dwR, dwG, dwB;& [" M( H3 j, W' d  S, h" i8 @
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
% C8 F9 C# J) j+ c% h                        dwG = (DWORD)( pLight->Ambient.g * 255 );" u/ f% c0 E) L( U
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
! G7 [' C! Q' [7 Q7 d                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );: g; ~% }0 ^% |
                }7 R' [. b- {5 Q/ U
        }$ v9 j; C. j% u; G" Y9 b6 J8 P
        else
. x* K# h0 S: c# D* R+ }  h: m        {5 o& J  I' q# R0 N: `
                if( pLight )) @8 Y! e  W* p3 g4 ?. p
                {
9 t/ x/ s) u7 k% [+ S; y: S/ x6 w               
% z! b& h; f1 E3 N                        int nHour = 8, nMin = 0;9 _# ?; @; k' M
        #ifdef __CLIENT, f0 K6 ^. Y+ n5 M$ s$ z3 a8 Z
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. : `' v% K7 F4 d9 W
                        nHour = g_GameTimer.m_nHour;7 M/ L* J6 h5 l/ c
                        nMin  = g_GameTimer.m_nMin ;
& \, i  s9 b5 D6 _0 s        #else$ W( [+ `1 l6 v- Y: T1 T
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.7 i+ P8 R6 W0 Q
                        if( m_nLightType == 1 )" |' w8 I6 t. Y) H+ u
                                nHour = m_nLightHour;2 \- A7 u' H# b- [/ r/ K8 i
        #endif
& D# S5 [6 D0 F9 x1 d0 z                        nHour--;
7 K/ S2 j2 f: p  a, @6 S( [                        if( nHour < 0 ) nHour = 0;5 ?0 b; o$ f1 Q1 q! C1 v
                        if( nHour > 23 ) nHour = 23;
) L2 t. G: \4 _. v' n# O: S  h" t- j! N. j' N4 g$ {8 D4 ~
                        //if( m_bFixedHour )- J! N3 `( f, R6 [6 J, X
                        //        nHour = m_nFixedHour, nMin = 0;( t# T- _" P' k6 h8 n, y4 {( q8 K: ]
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];3 u% M6 Z" k# c1 c8 h( u% V
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
  M) o) B% N" n$ b! D/ C& C
" O- ]! x6 w, ~. i" B                        //m_lightColor = lightColorPrv;. v8 a: @7 a+ |7 |+ D1 W; N0 \/ L
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;% E$ i9 ^# Q9 T! b: ~* S
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;% ~, Y9 R) r7 K1 }( Q
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;- ^5 R1 v5 R4 K
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
! N! \) P4 q& m- O: Z0 y0 `  _. N$ {                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
" n6 F- N+ y0 e1 H; c$ x4 [                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
" k" \: \/ u( h3 ^7 C                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)" V% K& P. k( T" p9 m

( @# l. T: H0 L% [0 |' c                        // à??μ oˉè* / ?, e# C, m# w8 N
                        pLight->Diffuse.r  = lightColorPrv.r1;
1 E. |0 j* e$ E) d+ F- g- y' m. E# O0 i                        pLight->Diffuse.g  = lightColorPrv.g1;
2 r  A3 i1 l, W                        pLight->Diffuse.b  = lightColorPrv.b1;& \/ o& e+ q: P  W
                        // oˉè* ??à? : _8 p& S3 Y1 v
                        pLight->Specular.r = 1.0f;
8 G5 ^7 l/ t; o                        pLight->Specular.g = 1.0f;( j( W6 [. c3 l/ M2 s. |( D3 K+ U
                        pLight->Specular.b = 1.0f;7 b2 f% Y5 s4 \, v+ p
                        // àü?? oˉè*
8 s5 d/ f; s8 y" u$ }                        pLight->Ambient.r  = lightColorPrv.r2;
: U: v  V+ p- \4 f2 h4 `+ V' t( J                        pLight->Ambient.g  = lightColorPrv.g2;
/ H5 ~1 M( O) \9 ]* h  P9 K" g                        pLight->Ambient.b  = lightColorPrv.b2;
0 c3 `4 \$ h3 \" z0 V  U+ T  s
8 H$ N7 d6 l  S& _' W  X6 I                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.0 q$ ]  |! ~; S1 H
                        {2 c; H" E4 [6 _" Z+ K8 x
                                pLight->Diffuse.r *= 0.6f;( v9 J1 i/ f  t, x
                                pLight->Diffuse.g *= 0.6f;6 i  e7 S: P6 u. q- ?/ S9 V8 L
                                pLight->Diffuse.b *= 0.6f;
  K, X6 A: v' Y8 m! v! k. k                                pLight->Ambient.r *= 0.7f;
" N7 E- W. i+ }; J7 t! w                                pLight->Ambient.g *= 0.7f;
: l1 Q$ X! {( ?8 i$ o, J' k                                pLight->Ambient.b *= 0.7f;
0 \/ c  n% Y- @- M                        }4 ]; j1 T/ b$ l; z' R
                        9 J/ Z  E- N/ H
#if __VER >= 15 // __BS_CHANGING_ENVIR( ~) t# p, T+ S% E( P
                        if( g_pPlayer )3 U* V$ ~8 m4 [1 b& G) X2 q
                                HookUpdateLight( pLight ); ! }) Q! r: I0 ~8 u) `
#endif2 ?7 i0 R4 [! g! K2 b7 `
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );. }4 k+ q, j" Y

6 d1 r% N* w& @1 S& ]3 X- u#ifdef __YENV
4 u# k+ _9 _" @1 C9 u/ ^                        pLight->Diffuse.r  *= 1.1f;( ]# J4 G: N: h
                        pLight->Diffuse.g  *= 1.1f;
% j7 S$ I6 v5 Q0 L/ T0 Z                        pLight->Diffuse.b  *= 1.1f;
; H+ \0 }: y; y# c/ M                        // oˉè* ??à? / v% U! k2 |/ C* h, {% P
                        pLight->Specular.r = 2.0f;% Y9 E) J' O2 _( \* [6 ^( q
                        pLight->Specular.g = 2.0f;. a0 \: E. j) y1 M
                        pLight->Specular.b = 2.0f;
1 Y4 M! I: Y# ]+ s+ y2 ~# K9 G                        // á?oˉ & W$ [8 Y: L7 u) l' w, f
                        pLight->Ambient.r  *= 1.0f;
! i0 k8 b5 |/ M* [$ v                        pLight->Ambient.g  *= 1.0f;. D* Q( R% d' [) \) r  A; H' m
                        pLight->Ambient.b  *= 1.0f;9 ~( L4 |6 [- C; i, |; F8 O6 t6 `
#else //__YENV
) U8 E$ Y* Z. w3 I0 U+ d                        pLight->Diffuse.r  *= 1.1f;- c+ `9 ~2 \3 o
                        pLight->Diffuse.g  *= 1.1f;0 N( Z) K" a$ c/ K9 H% j! _
                        pLight->Diffuse.b  *= 1.1f;
5 G- S& w; [; V9 N) Y+ y. Y                        // oˉè* ??à?
+ E( e. E8 w6 s! W" n                        pLight->Specular.r = 2.0f;
7 `+ S0 X& S: _7 h( j1 G                        pLight->Specular.g = 2.0f;2 Z; S+ P4 k6 B$ S* p
                        pLight->Specular.b = 2.0f;
+ s7 l* C3 a6 ^$ c% |3 w                        // á?oˉ ' q0 C* E5 p, Z& C* ]* h1 f
                        pLight->Ambient.r  *= 0.9f;8 F7 `3 T" f/ \. ~% S" x: Q2 Y
                        pLight->Ambient.g  *= 0.9f;( C; _# Q0 U' }* Y+ f2 Q
                        pLight->Ambient.b  *= 0.9f;
- a! r# T$ T$ x9 g. |#endif //__YENV : o; W+ _5 o' y5 u4 }" r5 w
                       
& b& b9 C3 F: g$ I" X; n                        memcpy( &m_light, pLight, sizeof( m_light ) );  k/ K# y* P+ k" n
                        & H, g# l  C( o! t' g( L0 J" X
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
3 n: i8 y8 E& m$ h! L                        D3DXMATRIX  matTemp;
# n9 ?( C* q3 ]5 @% p2 [) W5 B2 R                        static const float CONS_VAL = 3.1415926f / 180.f;7 r$ K# y6 A9 t7 g5 e5 ~* q
4 t0 Z- A: x- [2 R
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);: }6 ^1 }* C# y5 f: q
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);( V: T' {$ H4 R5 D4 B' S& }- [5 k
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
  _7 E/ Y3 C) T3 ^5 K                        pLight->Appear( m_pd3dDevice, TRUE );
$ M- ~2 M$ E- F, `$ `
1 j) {  S9 K) f) O( P                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);+ ?; }  D: d4 f6 [9 [. `0 G8 H
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
% W( R7 F2 P4 L/ m' z* p                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 V( r( `$ P4 T9 U0 `/ B
1 t! r5 K' ?6 K; p5 p                        DWORD dwR, dwG, dwB;
2 O; k% Y8 I: m0 ?# {                        dwR = (DWORD)( pLight->Ambient.r * 255 );, Y( W7 t- h3 g
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
. V  y$ v0 C: U( f( f                        dwB = (DWORD)( pLight->Ambient.b * 255 );: b" q% W' [5 z* l+ X3 Z& e
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        ! T2 e- n/ e! O& K# Y
                }! m- y9 `* W+ _2 w2 ~/ Q8 Q8 n2 k
        }
1 _, i# s" ~. R7 h3 K5 c( M, Z2 b3 l! g* Y. O6 I5 o+ k0 }
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );( t  v" p: p: y9 T3 N
        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) );( D; P# U" D' g( @+ A
        ::SetLight( bLight );
: m3 H9 K3 f! N- r; q
. J4 O4 {0 O( n  n$ P+ _        // ±ao? ?D?í???ó á¤à?
7 P' E% l& p! {' }7 Q: d9 f! X        m_pd3dDevice->SetMaterial( &m_baseMaterial );
% Q. b: U5 S# j: a. L# L! e" x4 d       
# i( B0 M) U( I# ^$ a0 Z#endif // not WORLDSERVER; V" V; A) c/ j& a) ?
}9 E. b8 }! z8 s- ~: J
并更换
4 \1 `/ G2 n- U0 N, z/ GCode:5 u3 W9 F: S+ N9 N
__FLYFF_INITPAGE_EXT
! q) ~- C- a0 ~$ E9 o6 o定义3 O- B$ B' G/ `5 x+ m

3 m0 I- z. g! n( {! _8 N: K& ^; K* _. Z* q/ M" r

  J1 ~/ a. ^* `, ~6 i* w5 a) k- o$ L- z! D$ b9 w* Z- K+ X
现在终于删除我的狗屁加速...
& ~0 n5 O6 y8 m  `' C; U
* \3 b( {0 J( a
; z; J: Y4 {- O9 ?& Y3 R. u! d. h! _! U2 v, o





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