飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:+ q. a1 W- O# Y* k
尾翼:
) A4 v% Z6 l; v6 Y1 a% i6 t& t" K8 t
代码:8 ~) x$ R! s* m+ i3 n1 i8 ]
CWndAutoFood::CWndAutoFood()
; e, u1 M% U: [9 i8 s+ a{! K+ s6 Z6 G' }. j; p* J; ]2 a
        m_pItemElem = NULL;
/ u3 g  w! @) C6 y- H; @        m_pTexture = NULL;* Q7 @) ]1 b& z4 T* t, k
        bStart = FALSE;" G2 J: J7 e* \& m
}! b* v# w8 q6 d0 @/ }* H8 c

) E) c* U% b. n, @: {. j/ ACWndAutoFood::~CWndAutoFood()
/ }; X9 C. w% g{; K8 p% d, h5 B6 c! g* C3 b3 F5 G# E
        AfxMessageBox( "AutoFood ist gestorben " );
  a6 P) }. |- X6 a% A$ S$ g}
& H/ W) m2 j$ T; mBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )9 [( @+ y: e) o; c& d/ {; k, s
{: w! y: _) X5 p
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
# t8 x1 Z, q- g/ J. Y2 Y}& Y" B+ a1 I) W7 ^8 O4 a, ^
. f" p9 B7 n/ u6 c$ W' E
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
- }; S2 h  d, Z+ D3 f{
% D+ d7 ~1 E- N% z9 P! R        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 A9 F" z  g) Y        CRect rect = pWndCtrl->rect;4 o$ w8 @  i3 t* H  f
        if( rect && rect.PtInRect( point ) )9 `" P( k8 q5 Z& e1 Z) v; Z
        {# w/ ?9 k( W7 i1 J* V
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
1 d: t* d, a% S                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )6 q: \! E5 h& S8 W& F! K# V, i2 H! T
                {
# `$ K9 H- ~. ]0 A) h5 p: T$ E                        if( m_pItemElem )9 ?! p+ r! ~! B$ K0 a) N
                        {
- G4 [% M9 |2 u" L1 I* W: z: F                                m_pItemElem = NULL;# [6 m( N. }, L- _1 T( f
                        }! A3 J, G4 M9 e4 f" q9 \
                        m_pItemElem = pItemElem;; d( L2 I6 G% C5 Q- F
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
/ m3 d# n. X& w- I                }else{
/ R3 B+ l1 T( I0 J1 w                        SetForbid( TRUE );
6 o( g2 h4 R' M! m! J! S                }: V9 d( A1 |2 {" t( D. I
        }else{
6 R7 t% |& p: _5 g7 @                SetForbid( TRUE );: p6 K! Z$ g( f+ w
        }
" @( @  q8 K" D/ f& o        return TRUE;; C9 ]1 m$ p, S1 z1 a5 h9 q
}
' d& A1 |% }: f7 O, X* E# m. H* t2 J# h& e3 V2 [5 b
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
0 a5 q6 l- _( s  g. I{
$ O8 z& N1 H' E: M# u, P9 I        switch( nID )
4 j& D* S' w  m) b7 \0 z+ U        {8 @8 }! h6 P; w, p, \( M/ p5 Y
        case WIDC_BUTTON3:
- P4 J" H4 Y5 d                {
# m  n* l! J8 d8 C& o7 n                        bStart = TRUE;; K) M! E! ~3 O, B
                        break;
! [$ ?9 q( R# J/ K* s& p                }
) Z8 ^+ ?4 |0 Y) W, \1 T3 s        case WIDC_BUTTON4:
4 [# W0 [% E, q                {
) ~1 C7 ~/ B9 \4 u6 |9 `                        bStart = FALSE;
8 Y; a! L; g' _, i' X, |! ]                        break;; r2 ?: O$ `/ l3 T3 B$ _) z3 B  k
                }5 e( D3 }2 y0 O
        }
; F" z% ?1 q7 v# `+ E, j" |# h. T        return CWndNeuz::OnChildNotify( message, nID, pLResult );
  n6 o7 b+ N$ o8 p}       
. Q& ^/ @9 z, g2 Jvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
; h% t$ S" W3 \" g; S1 X( a" a( ?3 j{  |) M/ D9 q0 q& Y3 `- o5 c/ L
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );$ T! h; C" h0 u
        if( bStart || !m_pItemElem )9 P8 X2 k9 t% e+ V+ w2 N9 w
        {- v% ]8 }. m) }& V: B1 U& P
                pBtn->EnableWindow( FALSE );  V  q  {) B; j6 |0 s' j# X
        }else
/ `# R$ u6 S3 s                pBtn->EnableWindow( TRUE );; r) ~; M9 u+ ?4 R3 q1 ]
        if( m_pTexture )
8 c: U4 Q! a$ r8 P* g        {
8 \% t" u7 J. O2 N4 {                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" y2 V8 M* ~2 N9 _2 o/ Y& o- P) T                if( wndCtrl && wndCtrl->rect )
$ }0 U  }: u5 |) W: J& F$ T6 t                {6 P2 E) F0 t9 X8 i5 r" w
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
" B- J. |+ S0 m: u+ S7 o6 m                }" G) l2 \% F- F4 n8 F- w& y
        }
" b/ s  a" l, ?  n2 D( L3 J/ Q: K}7 I4 w: {( f' h/ {
% T3 ~8 h% q) m7 P# }
BOOL CWndAutoFood:rocess()* Y4 v/ p- k& C$ q* Q
{
* ^9 B: `- B$ W7 `# V. C# r        if( bStart )
6 t& W% F2 d" B9 j: {4 S  q$ p7 i; s        {
4 c4 j: G% D4 C8 l9 g( Z                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
3 I( H/ `* t0 y; I& j& v! y                {! l  b9 P3 D$ G3 y, k
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
( |( D5 C+ A1 F" K# n# |% m                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
7 P' c+ F: J4 N' j                }else{5 U1 p; k0 f: T, q+ ?
                        bStart = FALSE;5 D* K& _; r0 r) r% H4 |" |. C9 @
                        m_pItemElem = NULL;1 A& }* F' r! {* r' O0 U% |6 H5 m
                }7 D3 n4 p  y8 x0 y
        }
3 H, ]4 H9 a1 q4 \* b2 Q2 v        return TRUE;
/ \& H: @0 y1 Q% c' n* c5 i. I}0 m8 U! w5 w: u  @0 F
* q1 o; r% j. Y: b2 C" X
登录视频废话:! R3 E# \- a/ V1 e+ k" I
尾翼:4 x1 \/ B1 h& E
* T/ ~) O  j$ S, Y
代码:
# G( X( R" n+ N4 t0 `  B- ]2 {+ o7 I5 M$ ]) e
void CWorld::SetLight( BOOL bLight )
7 j2 j4 H! R: w2 ddurch" g# W% U/ v6 f6 _( l
Code:
  i! L# H8 b9 M& `void CWorld::SetLight( BOOL bLight )3 u' @% B) {) N
{$ e1 S& Z; r7 E
        //ACE("SetLight %d \n", bLight);
+ ]$ d9 N2 a4 z/ M3 a        ! }& q  Y1 f( m+ J( y& C
#ifndef  __WORLDSERVER - t) q' L5 p. M9 J: P
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
" \# N) B/ G) i5 W5 a* i& H        CLight* pLight = NULL;3 \2 I: ?9 G$ _; f& ]7 a5 t( _
9 O7 L. s! q8 s& }1 M& Q
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
8 H1 h6 G  r0 h; F/ {
" W  j; p/ ?3 h3 M1 J        pLight = GetLight( "direction" );; b# L+ @6 K' T$ H7 U1 ~

1 a; E7 K2 n6 j2 b, x' Z: q" E6 {: [#if __VER >= 15 // __BS_CHANGING_ENVIR) F7 j' Y  C7 e7 Q- j* l
        if( g_pPlayer ){3 j. P* h9 Q& W6 b5 U2 i9 |
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );3 E' n5 X7 Q! w; z, m
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
: F; W- B" Z. N8 s3 W) g                {" h9 z3 A3 K0 u3 P: j. o
                        if( pLight )0 w0 X! D; ^# i  [/ ^& E4 j
                        {
+ b! z% \- ~" g# R                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
& p$ r9 c9 F4 G2 r* E( F                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];- D/ C* ~( F9 Y+ Q+ x1 [0 g
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
/ {& r- u' t& i, |4 f
# a0 k( B2 }8 C- ?                                pLight->Specular.r = 2.0f;( p$ {# |3 k# t7 V7 ?: r' H8 X; I
                                pLight->Specular.g = 2.0f;( [4 U8 W- ^# b* m* k$ [' f
                                pLight->Specular.b = 2.0f;3 e4 R# ?9 `4 {) ^6 X) H. y& r
        $ i7 O# p6 s. t  v! R7 `
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
, X) K( j, S9 b2 Z' C                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];& z. w5 l4 Z" P( F9 B) P6 N: N( }
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
/ r' _) e/ W' }' j$ H, c+ r% P        + x/ Z+ V3 E# Q; D+ u
                                HookUpdateLight( pLight ); % y" U4 d( C. N8 g: U8 r: E4 k1 e

2 K1 D0 X0 J$ z5 S: X+ x" a! K; B                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 \# x* k* e( ~4 G2 h6 e* B  ^               
4 K7 i3 X1 w$ |5 `( d                                pLight->Diffuse.r *= 1.2f;0 s) z7 S$ d" T4 k) X' D$ H$ t) q' b
                                pLight->Diffuse.g *= 1.2f;6 c8 w$ x1 A& D: M% R# S
                                pLight->Diffuse.b *= 1.2f;
. ?# V9 z2 ]2 W' i4 t. s$ v* D. y1 L8 r# c% H# L! }# z
                                pLight->Ambient.r *= 0.8f;
- Y3 n/ z, P8 g# C0 |& q                                pLight->Ambient.g *= 0.8f;# }6 ]# b: ?/ ^& q9 V' K( D
                                pLight->Ambient.b *= 0.8f;
* ?" T" G8 _+ p( T* W       
3 r, S0 c% i6 p* p/ E9 `                                memcpy( &m_light, pLight, sizeof( m_light ) );# t% v8 V- u& ~3 }

4 }( R, Y  L. h$ N& D                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
  D& H9 c; Y; M8 h( a8 s& ^                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
- y# H; U$ S+ Q' i$ c. \+ O' O                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
  z, |6 q- c2 W/ o, N                                 pLight->Appear( m_pd3dDevice, TRUE );2 [5 |' u9 z: [9 B0 y8 f5 S4 t! R
               
5 P' ~* o& x9 g8 N2 \6 W. l* Z4 z                                DWORD dwR, dwG, dwB;
$ \' p& v& Y* {$ k# `- Z; o( }                                dwR = (DWORD)( pLight->Ambient.r * 255 );; |& l$ j# U+ B! ~  A
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
% z! ]" D: `& ~; x7 C5 L                                dwB = (DWORD)( pLight->Ambient.b * 255 );  P: k# L. G3 {
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );+ @0 ]# x; a+ O
                        }2 @0 k9 t' F% r: v" ^
                }7 M3 m" M( ]# `2 N: F6 v" T, B
        }4 B, b4 F% s# e) v9 J, ?' T, c
        else
8 H; b% s/ A$ c) b#endif ' ^) {8 v) I' _8 s2 \

: \6 m9 M2 ^4 ^# _6 f2 w$ Z        if( m_bIsIndoor )
1 |5 u- x4 T+ y, C        {
$ `8 [% ?. a5 ?' m1 J" n: \                if( pLight )( G2 L9 V, N1 ?- X- @$ B
                {               
$ S  V$ q1 w) M6 y  Q1 R, e* A                        // à??μ oˉè*
& e" p+ X: {6 k/ E5 O                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;, W8 T) R1 r* \0 o* ]+ \& F# x& u
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;% Z- o$ Y4 \! e7 [0 m
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
: v# m7 g/ W( K" X/ B5 G
7 A8 g9 z, h* L5 {7 H' V                        // oˉè* ??à? - I$ `" k( X, `; }- h
                        pLight->Specular.r = 1.0f;
2 K: Y: U" S3 q5 ]0 d0 w# T" a                        pLight->Specular.g = 1.0f;/ ~% Z. q. T; p9 o" U! V
                        pLight->Specular.b = 1.0f;  T9 M: X9 ~% ?- p% W% C
                        // àü?? oˉè* & u3 s+ b( z5 J5 t
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
% [, x# d9 k- U) B( g; h: C7 J                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
: F5 S- w# D- S7 o$ N( q5 ^/ A  T  _                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
3 M, f2 m/ N  v* `: @6 D0 L. W5 c; J  W+ P+ o, Q; ?* e( V1 B, Y
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.  G  _) r! a, V4 i0 e- u: W# q
                        {- D, s( ^7 W  o* ]
                                pLight->Diffuse.r *= 0.6f;0 }$ ^0 O6 z4 Z! j0 ^+ C: \
                                pLight->Diffuse.g *= 0.6f;* z9 P0 T+ T5 G& R
                                pLight->Diffuse.b *= 0.6f;- U! A# i7 @! B* I3 @3 n3 r  z- w  v
                                pLight->Ambient.r *= 0.7f;
# {5 e" M* Z0 T                                pLight->Ambient.g *= 0.7f;
& v+ v. X# ?- j6 O) X* d6 H                                pLight->Ambient.b *= 0.7f;
  O" P* {' |7 U6 B$ W                        }; g: B; c4 B# e% B  ]  i! r

- E& K* `; n* I# Y+ Z, o8 ^' r#if __VER >= 15 // __BS_CHANGING_ENVIR
6 l" M% s0 S( B* N% N, `                        if( g_pPlayer )
, A+ Q  e" h. @7 k4 U4 A( r" j                                HookUpdateLight( pLight );+ b9 ~6 E4 q' h
#endif, c4 U% l: S; s$ l: z& P- l
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# G# V+ E$ l6 l# S3 l) Q& h' p
% Z) L( T' r! s1 L                        pLight->Diffuse.r  += 0.1f;+ J$ G8 u/ ^/ }7 S
                        pLight->Diffuse.g  += 0.1f;
- g3 g* c( @% Y+ x7 f: c( q9 J( u                        pLight->Diffuse.b  += 0.1f;8 E+ J6 F2 e6 n2 B# q! `0 W+ X3 r2 f& v
                        // oˉè* ??à?
/ |3 `4 H/ q/ u! r) m                        pLight->Specular.r = 2.0f;1 n% p) K' T* o" K: k$ o1 O4 s4 h
                        pLight->Specular.g = 2.0f;
) t2 J$ ^7 g0 @8 {4 b8 o1 Y1 U                        pLight->Specular.b = 2.0f;1 e* U/ {9 J+ W& H8 K% x% ?
                        // á?oˉ
5 j8 X& r* ~0 o7 b( @6 B                        pLight->Ambient.r  *= 0.9f;
+ I* L! `$ m8 S                        pLight->Ambient.g  *= 0.9f;1 d6 ?1 Z+ V& K8 D( B* C( S( X2 f
                        pLight->Ambient.b  *= 0.9f;- x* q2 R0 N+ a) p

9 u; u; N! Q1 B* @" N/ w/ U                        memcpy( &m_light, pLight, sizeof( m_light ) );- m. M' u( Q2 F+ a2 D
                        1 Q4 S" L; N9 u
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
( }1 Z1 I3 X: _) z8 W                        pLight->Appear( m_pd3dDevice, TRUE );
4 ?+ l/ K5 x, S2 Y7 {; D       
# T( ~- i7 f+ |7 p                        DWORD dwR, dwG, dwB;  q9 u. C1 ^5 p* |; J# w. L
                        dwR = (DWORD)( pLight->Ambient.r * 255 );$ R3 n4 _. t0 g
                        dwG = (DWORD)( pLight->Ambient.g * 255 );; n$ L# K+ Z' A0 }$ i
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
: a/ @, F( M. f: I& c                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 R% Y  d' r* g' H3 I                }/ b% Z6 o2 b$ ?; t' I6 E( E/ {
        }
, D6 d1 x' c- t2 U' X8 ]        else; |  K) x! \6 z# D8 _
        {8 V" u4 H; B: ?( n; ^
                if( pLight )
' m) H9 ~8 F4 d2 d$ Q/ H; l                {, v; W+ e3 s; g4 [5 Z
                2 K1 g: G$ p! ^/ m
                        int nHour = 8, nMin = 0;
. a& i# M' ]2 J- L        #ifdef __CLIENT
! k% n0 n% f' Q                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
3 ~3 ?! r8 ^( D2 M9 h                        nHour = g_GameTimer.m_nHour;
# c5 X+ V8 e1 W' d  |4 L4 N( C                        nMin  = g_GameTimer.m_nMin ;
: E' s4 ~8 G( I) v& ?        #else5 }8 q3 R* G  ^$ d% M1 Z4 z6 R
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
$ f3 T8 F8 {6 x8 E0 W8 M) O9 ]                        if( m_nLightType == 1 ): e6 `* M* c6 Z6 r/ d
                                nHour = m_nLightHour;
" S4 ^4 P: k; @  L1 [        #endif! i6 S6 E: M8 u) F9 u2 r
                        nHour--;6 M* i! n) X; s" Q3 z, M3 n0 P* Q5 j
                        if( nHour < 0 ) nHour = 0;0 Z6 }& I1 R& \4 O) ]% h0 ]0 Q
                        if( nHour > 23 ) nHour = 23;" E* k. @; n9 G3 k" H( S: s
1 j8 q$ Q4 g* {
                        //if( m_bFixedHour )
* C4 t. ^' M) k& D. f" D                        //        nHour = m_nFixedHour, nMin = 0;
+ y: `" @/ J$ }- w% @                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];9 U* g+ b7 _9 @' q* E7 s  r* Q6 R
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];3 d  D) _7 P# G2 T+ O
/ \1 L0 K7 w1 _% c/ n: ?5 V
                        //m_lightColor = lightColorPrv;1 Q: I0 O( |5 Y
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;1 o  K( q8 K+ z
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;5 ~/ j( n0 u7 n4 B: [
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
. \- v1 [7 A, G                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;2 I" X7 D" J! s) g
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;0 @; ]. |. M5 _. q9 `- F
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
6 R2 P3 b& K. Q" U0 ]2 C! ]+ Y                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
' u3 Z( u" M0 q; c7 P0 |1 P
3 T/ J/ e) j$ y) R- i3 w0 C9 P                        // à??μ oˉè*
+ E+ z' [1 G2 D8 c; J" W  o                        pLight->Diffuse.r  = lightColorPrv.r1;
4 n* P, f  A% P6 S( @) U% I                        pLight->Diffuse.g  = lightColorPrv.g1;3 X7 N, J4 z. P( @- v, V9 w; ?
                        pLight->Diffuse.b  = lightColorPrv.b1;  Q/ s" c  N! ?9 ~8 U4 G6 A
                        // oˉè* ??à?
! F+ J. h! p8 j. @. h0 ~                        pLight->Specular.r = 1.0f;. I$ J' E: S' a- m: E: G& Z$ D
                        pLight->Specular.g = 1.0f;
6 n4 G$ g2 W4 A% J                        pLight->Specular.b = 1.0f;. a5 h+ m* ^: l
                        // àü?? oˉè*
/ W$ x5 J; ]+ G5 Q1 Z  m# p                        pLight->Ambient.r  = lightColorPrv.r2;; f* |1 ]" m* P& l5 g# G5 _9 n
                        pLight->Ambient.g  = lightColorPrv.g2;
9 r  w( b; e" G" n- R- Z4 ~$ Z6 s                        pLight->Ambient.b  = lightColorPrv.b2;
+ K; c4 r$ f7 T; c* o
1 O; C3 x1 w: _( }                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, B9 S& [( h) G5 r0 x7 r5 ?                        {
+ R2 E# Q( M+ G, _  L% m1 W                                pLight->Diffuse.r *= 0.6f;
" m, w8 T! }4 @( j                                pLight->Diffuse.g *= 0.6f;
+ T, _/ H# Z/ x; e: M& U                                pLight->Diffuse.b *= 0.6f;, z; n4 ?% E: x+ ^- \( e
                                pLight->Ambient.r *= 0.7f;* F, S" n6 X6 e6 L  z$ k
                                pLight->Ambient.g *= 0.7f;& _$ n. w1 e0 [2 A" l
                                pLight->Ambient.b *= 0.7f;' ]& O; `+ Z7 H9 t- Q
                        }
$ |, |9 ~8 W" s& u+ U9 l5 b3 f                       
# I& Y# U7 f. d- W0 d#if __VER >= 15 // __BS_CHANGING_ENVIR
+ j2 j) E! h; I3 f                        if( g_pPlayer )
. }0 n) G1 X" B# I2 N3 Q3 L  |                                HookUpdateLight( pLight );
6 q5 U5 k+ ^' z6 b4 w#endif/ w0 Q( K3 k* ~* }
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );* N/ A& t" S8 N
: l: C. o3 A8 |8 `2 A; u- B
#ifdef __YENV
. t$ G6 }$ a; H4 |6 A$ A) [                        pLight->Diffuse.r  *= 1.1f;
" P  X" t# U# T: s- X* @8 X) a                        pLight->Diffuse.g  *= 1.1f;( S1 l' m0 m9 G& ]  ~
                        pLight->Diffuse.b  *= 1.1f;
% e5 I7 ]4 W: S% b$ a! a0 W* X' \                        // oˉè* ??à?
) }- b5 \$ D2 w' @                        pLight->Specular.r = 2.0f;
' C. B( B! g7 @                        pLight->Specular.g = 2.0f;- I5 n) i* l* W3 g; w3 H7 c$ v
                        pLight->Specular.b = 2.0f;
' Q- m5 }0 P/ s+ K9 m" t$ B                        // á?oˉ 6 h, J" o* [2 {! D
                        pLight->Ambient.r  *= 1.0f;
* K% }$ F6 S3 b, A' e/ [: N                        pLight->Ambient.g  *= 1.0f;
8 c% w& h. h3 p+ [7 u) j4 m                        pLight->Ambient.b  *= 1.0f;; m. x% {$ n4 F* _8 k- ?
#else //__YENV8 v; N. A9 {7 s6 k. X
                        pLight->Diffuse.r  *= 1.1f;
% V' D! d% J7 c. Z4 ]                        pLight->Diffuse.g  *= 1.1f;
# [' ?+ r: P# z5 B# N                        pLight->Diffuse.b  *= 1.1f;
# A4 W/ U" s0 Y" I/ r                        // oˉè* ??à?
/ b3 Y* ~5 K8 T" y5 j; Q/ W                        pLight->Specular.r = 2.0f;
9 h! T, F2 E( {4 K; |& N* R                        pLight->Specular.g = 2.0f;; B4 `8 I$ b6 w3 L  ~. B
                        pLight->Specular.b = 2.0f;
2 o, a: r3 B& j5 ^6 U6 X! X                        // á?oˉ ; J6 L' @* |0 W  z* t7 B; C
                        pLight->Ambient.r  *= 0.9f;3 M* `$ h4 E1 ^! E" R
                        pLight->Ambient.g  *= 0.9f;
. m, O" N+ w7 u) W: i0 q$ [                        pLight->Ambient.b  *= 0.9f;
5 t3 l, `  X+ c2 p#endif //__YENV 6 w" p. R6 Y( W+ x$ ^# I0 z
                        & ]3 ]$ M6 q0 y
                        memcpy( &m_light, pLight, sizeof( m_light ) );  c% z2 L6 _. M8 t/ E& C. ^5 r
                        ' ^, I! d" [' q# F
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
2 Y: W0 A% A) A6 ^% ]# j$ @, h' \+ v: W" w                        D3DXMATRIX  matTemp;1 p- c( A! D5 Z3 F& \. u- O
                        static const float CONS_VAL = 3.1415926f / 180.f;
( b) W9 ?5 ~. {9 I+ H6 Z" J8 z) n2 R8 A* b( B9 }
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);6 |& J! r5 c# V3 t  y! r7 I
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
: D1 a. {0 I4 o( R                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
) t$ U0 H9 y# j( k' q& K2 _                        pLight->Appear( m_pd3dDevice, TRUE );
0 E8 R9 u' j+ z- j" a3 b8 _# R4 L* j
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);! u  z. O% U1 ]- R& v" {4 H
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
7 b; P$ O, n- \# E2 {* c                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); . `  h3 b( ~( R2 T) L8 |

* a; l& @2 R4 B0 t5 q) P                        DWORD dwR, dwG, dwB;" F) l/ S6 j( Y; Q1 T0 J0 M, S; g
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
1 q; v& F, o4 u! u: C- M7 a: W                        dwG = (DWORD)( pLight->Ambient.g * 255 );, `( G3 }# b) M% R
                        dwB = (DWORD)( pLight->Ambient.b * 255 );- u2 S3 k* s, ?: L& U" K$ l) t& e
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
9 e. c% C6 `3 C; ?" l7 U$ b2 B                }* T  x! x: N7 Z: Q
        }
. Z; l3 J/ B4 m; q3 |, l( N: i
7 N7 o3 K0 A! o9 z, q& r6 D# l        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );: N5 V9 u" I4 C
        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) );" C" T! [8 t- |- a  j0 E% F9 p
        ::SetLight( bLight );5 I( h' a# V2 W- ]) {6 a7 d- i

( b- a2 H( B) A! O) h        // ±ao? ?D?í???ó á¤à? % B6 r" D& g( q0 W7 x' ~& D
        m_pd3dDevice->SetMaterial( &m_baseMaterial );; y+ ^* V8 H8 b7 L( }
        ) f' T2 O5 y0 K( Q8 V7 d- q/ E
#endif // not WORLDSERVER
9 k3 M; o& Y: d: _) \: e& t5 H# P}
$ P& \% e' q2 J/ `并更换
% x* t  U+ G8 D: M! }) tCode:
5 B3 s" S" |6 P& V__FLYFF_INITPAGE_EXT
8 _) l( j+ E* c+ ~  _* @! N定义* L! w' w' e# h% y. i* J

, t. S4 D3 r: t. F' r: ~
: a/ s! [! n9 i! X2 Q7 s8 Z- k0 Y. i5 X+ ?% E5 `
8 {4 x# F( e, y5 c' x/ w
现在终于删除我的狗屁加速...) q7 T" z$ J0 I3 `( f* w

( S* t5 l  ]8 X! I' f. |' Y! f; P5 x% @

9 }3 A; G) R) o2 o" P




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