飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:9 v8 ~7 R' v: z" k
尾翼:+ c# A8 x0 D# I  e1 s" ~
" B4 y, X0 z6 X+ d! K3 P# c- l9 J
代码:
' N( G) B- C" j, S6 f' nCWndAutoFood::CWndAutoFood()% z% o9 t# ]. a& R  {6 s
{
/ z* s6 N; n1 m# v5 \; N7 f- v        m_pItemElem = NULL;
" M* z- W% z9 I0 [% v+ ~        m_pTexture = NULL;5 F1 S' m+ d" R
        bStart = FALSE;
% J+ B' x1 m5 }' U}
+ U; ~# p4 R; ^! |2 O! o2 ?& ]& P3 d2 n! z. D) y7 f9 h
CWndAutoFood::~CWndAutoFood()
% B: G4 y5 W1 Y; A' z+ a{# R- K! F/ B- ^
        AfxMessageBox( "AutoFood ist gestorben " );% J9 \' X$ J% C
}
% N( M. M2 [' T! |BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )! v' k9 A# l' N
{7 v( V: \9 n7 Z! @( P
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
+ @2 e! o9 u: @! [0 ]' ~1 |! e}  u/ E8 s7 `) o5 W
$ {' u2 e6 U  m4 i' H
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point ), V  a$ }8 D, Q" m8 G
{
+ u, h/ |- Z) a8 e5 H& F        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 m9 y3 n1 n, u( i. p4 o7 e        CRect rect = pWndCtrl->rect;
% a5 j3 I3 W! v% ]        if( rect && rect.PtInRect( point ) )
3 w7 ]  c8 y, g# j5 y        {
3 h) y" r" k9 x2 U                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
& M6 p( C. ^6 P                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )4 N4 ]$ e* p% E- I5 {" C& _
                {" Y- o- H' r" V9 u
                        if( m_pItemElem )
% B) L$ a  c1 B, `8 X                        {& {$ e; C7 R: T2 [
                                m_pItemElem = NULL;
" Y6 H5 e8 r: h, |; b5 Q                        }
7 q  `; Y2 s+ {' A, j  j# x  x                        m_pItemElem = pItemElem;3 m3 S. h/ C" V
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
# M2 v% b+ ^( x. g                }else{* G% `) P4 N6 z& z8 }
                        SetForbid( TRUE );
# ^, [' M4 I5 [& z( }! Z, \8 a                }. v/ o1 a1 \! N( @: l3 k9 ]
        }else{2 P2 m+ J; z  ]. s* d7 o: ^& P
                SetForbid( TRUE );
/ H4 ^# A5 @2 M/ {" j( H5 J        }
9 b0 ^) F4 @! T; m# ?        return TRUE;! {9 Y7 u2 R" V' N0 Y! ^/ A2 j* L
}8 Q- F# `. Z# Y8 ]/ l7 Q

& G$ S% s9 h8 {" D8 W6 IBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
, T  ^; r& J7 v1 P{& S: ^& _+ L$ @5 A) k" [
        switch( nID )
5 p. O: a4 R- ?" Z% ?8 A1 n+ x+ q$ P        {
: K, `( n; G* R5 B6 j9 |        case WIDC_BUTTON3:- E* X% l! C- c% w
                {( Y3 Y- D2 H( }, B
                        bStart = TRUE;
0 ~- k) M/ f, o, v  {7 b9 T                        break;/ @% A7 W4 w+ H2 }5 f  M8 r
                }5 \. N2 ]- g2 e% q9 `9 d
        case WIDC_BUTTON4:
* B. W* |; {' ?0 ?! v                {
& o2 Y: z8 `2 @  W7 h, r$ X                        bStart = FALSE;
) I% y( T. O% |$ c' U" |: e) e) |                        break;
1 N3 J( f2 L5 A                }' E  I2 N% o5 H; b* u6 m
        }& t# p9 u. Z* k7 t& M4 w
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
  r4 C+ M( W5 t. F- U4 o* B9 f}       
3 v$ w! w* b+ gvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
0 S  }3 i$ S( l) Y' w  ~{" L7 I% ]) F2 }1 D
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
) O) E1 ?+ Z9 j8 h& u; e% K/ {9 O        if( bStart || !m_pItemElem )
3 |0 o2 a7 G& ~2 k3 F: s+ Q8 x& O        {1 H5 b5 [& i7 `9 k$ V. M
                pBtn->EnableWindow( FALSE );2 v! w$ r  e& P
        }else
* c. p( d8 n, A# {1 ]- f: v+ m                pBtn->EnableWindow( TRUE );; k! g: C- b' P$ G/ u# x- O2 F
        if( m_pTexture )
$ k9 X* `" {4 {9 [% a' D6 }& Y- b        {3 Y6 R8 h# U) y" U5 `
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& j: Z( i2 Q$ v                if( wndCtrl && wndCtrl->rect )" S; H; |5 V. W+ V* }2 [/ @
                {5 Z: a6 l" Y; |# s( g
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
: x" e8 j; s. t: }( }                }
( n) N. Z1 x$ e- a: ]  D; \, T        }
4 S0 |7 }1 p" W2 ?8 O) h: C}
# q) L% T  M! i0 a7 x
! F4 k- y  B& lBOOL CWndAutoFood:rocess()
9 u+ C8 B4 W7 _. r5 |{' u* }& L$ ?3 A8 V6 r" r
        if( bStart )5 P( [! A2 A5 Z& L
        {* e2 T% T3 v/ u  u. S
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )" a) \# L  ?2 |  h
                {
8 b2 d: Q* H: c/ o) |                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )8 Q* @. }7 b  A! H+ h) W3 Z. Y
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
1 u0 F3 [  _! B  f( J                }else{
0 i9 z9 t' Q: n, p- x% ^                        bStart = FALSE;+ c5 I" b1 v, W5 q! x7 m8 s
                        m_pItemElem = NULL;7 b! A" q/ O; u5 |) }. p: ]" C, l
                }
& c; _) T/ S/ R, [: e6 s        }/ M- y7 o% N; Q5 W5 e
        return TRUE;
1 V. L7 D: w, a! M: b. I" h. m}9 H2 Q. E; i2 b8 Y. V0 ^

  J, v* o+ H7 @( j登录视频废话:- d* m5 I. _; }! m6 F! |, x) i" i
尾翼:
# k8 Y- e" p+ t9 r0 {! h8 K; d) S, o  c% y& _3 L# S* X
代码:
. O. R1 T- P3 v: G9 _" h# r0 `3 T" w" o2 o) V: j+ a# N+ T' m
void CWorld::SetLight( BOOL bLight )1 q. s8 V( w+ C6 K- ^5 j6 y
durch
9 s9 A5 h& ^0 f! T+ y, rCode:7 Z9 I; l. a% a+ ~
void CWorld::SetLight( BOOL bLight )
3 P/ R; t. e% n{
) y8 }& }% x5 e7 F8 Q! N        //ACE("SetLight %d \n", bLight);
' c& k# u/ J' B# Q7 d) m3 k       
3 E, l! ?/ J8 S# m2 ~; m& }#ifndef  __WORLDSERVER
; D% c. x& M4 r3 y% D3 H        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
; d9 x8 j. r, U+ p+ }# y+ G        CLight* pLight = NULL;
1 G# X7 _+ ^. ~6 h. s& \- l4 @
4 y. [2 k/ t2 P, S0 ?- F! j        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
3 @) r. s; \$ H! `. C
$ F% i7 ^! t; x        pLight = GetLight( "direction" );) R8 s6 f* M4 X' Z; v! b5 H

! q# V5 F7 |* L% |, _#if __VER >= 15 // __BS_CHANGING_ENVIR# E& X/ Z/ e6 k& \! k* Z! G/ O, M
        if( g_pPlayer ){
7 t; i# r8 [8 H) W, I                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );0 b3 S) B- m: Z/ b1 }
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
4 e( X8 P9 H' Z                {
7 l% U& d& H3 t                        if( pLight )" |) N' E. B) D. ~
                        {! M' `6 V4 p) P  W. M* n! a- t9 D
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
0 N- }9 K% G$ }: @0 t  N' }! f                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];7 X# p5 `: p& {- z) K4 t: E8 |
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];7 p' t  i* ^4 l+ r& d( J: t3 c

1 C/ @. H' [# g; t5 Q                                pLight->Specular.r = 2.0f;' R- A, u; r- V5 V
                                pLight->Specular.g = 2.0f;
6 E4 m0 Y% Z& {2 {! D) [                                pLight->Specular.b = 2.0f;' {1 v5 W% f0 {: n; B+ Y
        1 ?$ ~. r' A" s2 ]1 |! I+ P
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];6 L- @" l3 I! [. T
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];+ `4 r* _7 h1 e& H  d$ |
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];6 s; m$ W. E  h  [  [' L$ r
        * x, X5 i# o0 W) D1 D
                                HookUpdateLight( pLight ); * A7 p4 ^6 ^" G  K7 i) `& b
/ ^6 |# q7 T' |  _
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 S1 o, X# m- h, ]! V! F) s               
' R5 A6 b: e4 E4 B/ j                                pLight->Diffuse.r *= 1.2f;
- G* v! L0 a$ a                                pLight->Diffuse.g *= 1.2f;
  G& l" U; ]2 T                                pLight->Diffuse.b *= 1.2f;. c# @( W3 P1 V% C( a9 A% d3 S$ _

5 e8 H8 Z$ f2 K) c0 A, R                                pLight->Ambient.r *= 0.8f;
0 o  v" J0 U& [7 u; f3 u                                pLight->Ambient.g *= 0.8f;
! u( Q* l- [8 _                                pLight->Ambient.b *= 0.8f;+ G; S; N. X# y
        1 b1 r* D7 f, S! |
                                memcpy( &m_light, pLight, sizeof( m_light ) );; }, |* ^2 M4 M, y9 s
; V( K6 Z% B2 u; d4 i
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);6 d8 w* ~2 s% ]" |; R; H
                                D3DXVec3Normalize(&(vecSun),&(vecSun));$ Q1 S# o) ?5 c$ X
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
7 r, k9 E  e4 D- K# n                                 pLight->Appear( m_pd3dDevice, TRUE );
7 z9 o% r; t+ D! M0 h                : M! Y( U9 K# d  u3 g
                                DWORD dwR, dwG, dwB;- s: `0 `5 e2 L1 l- _- r! m
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
4 p5 F5 f: Y. v9 g9 _5 Q- {) y                                dwG = (DWORD)( pLight->Ambient.g * 255 );
8 s( `$ b! G. ^+ g6 M% W8 P$ N                                dwB = (DWORD)( pLight->Ambient.b * 255 );5 E" |" K4 c! j& l4 O2 |
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
8 d) T/ @+ X4 \. S                        }
. T- G) ^' ]3 g" h& d: v9 F                }
% r/ _$ a) C, u- b        }1 S  r: X+ \0 U5 C% p* y" ~8 ~) v
        else
% ?. L$ K# A9 ~. H* K: f* E#endif ) A+ d: t& p  L$ X0 S

/ x0 D6 O: p( S9 d        if( m_bIsIndoor )% G' ?' t" f1 I# ?" u- _/ y# V
        {
6 i: J: }4 W* _) z8 |                if( pLight )
: g7 W% n( K% n) i6 z                {                2 h9 [- u. ]# u) {: y9 x
                        // à??μ oˉè*
# s. v- I6 q+ t5 B                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;9 C2 D2 n" q; q1 K3 S5 `
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;7 A- ]6 D8 o- n0 D
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;! s2 R. p* s) R

+ c* [2 l) V7 D; l                        // oˉè* ??à?
+ v" \% I" S( ~- e4 X2 F                        pLight->Specular.r = 1.0f;6 R4 ~& g+ o& h2 e& f% q- ^
                        pLight->Specular.g = 1.0f;
( s8 ]1 M+ f! s. d1 X                        pLight->Specular.b = 1.0f;( G9 y/ I6 B, G7 n5 Q6 b( p& R
                        // àü?? oˉè*
/ p- U$ J9 `1 f, l1 n. g% W$ S                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
; A8 \, |8 X. W6 I1 {' V                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
( }' T- O0 t$ `4 Q                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;* ~7 W, F5 _" Z( [" S4 b! t  q
4 h. F9 L$ J: n$ G
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% c( v  c# A2 t* j6 N) f) X2 q0 Y                        {
+ o6 z/ G% T( M. S  f7 j# S                                pLight->Diffuse.r *= 0.6f;5 y  A# B& M0 ~# n1 R0 A# P6 a
                                pLight->Diffuse.g *= 0.6f;+ G- z' ~5 }  J3 ^# i/ c7 h
                                pLight->Diffuse.b *= 0.6f;& a4 i  y3 J9 M# w( o. F, s7 ~2 J
                                pLight->Ambient.r *= 0.7f;% G6 `0 `' e( m! h( Y7 S
                                pLight->Ambient.g *= 0.7f;% H3 ?& I( u. N3 D0 K* C( B7 Y
                                pLight->Ambient.b *= 0.7f;
+ g3 @+ h: B9 D! p( c                        }' a! `8 D, J; }
$ F- O. I9 P! M. q) d. X# \
#if __VER >= 15 // __BS_CHANGING_ENVIR
; L' q5 e, z1 D, ]) j6 Z1 C. V                        if( g_pPlayer )
/ z; h5 F: n8 k% J; D                                HookUpdateLight( pLight );
. K/ N( _7 y' f) `7 L' v#endif( T0 A4 o* z0 E0 c" G9 T7 ?
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 `; J5 a; R7 f4 o* k' f. _/ r  Y8 X. k3 b; K) P$ U
                        pLight->Diffuse.r  += 0.1f;) P/ d' g6 a  b: P
                        pLight->Diffuse.g  += 0.1f;" L) U5 l  j, B. [" s* \2 X. z
                        pLight->Diffuse.b  += 0.1f;
" W  u# }8 H- ^0 v  s3 b7 A6 c                        // oˉè* ??à?
) W4 ~. H2 v, E                        pLight->Specular.r = 2.0f;4 u* z  v0 \6 }( x
                        pLight->Specular.g = 2.0f;1 y; v  H( l6 _! {$ x
                        pLight->Specular.b = 2.0f;
4 b, G( H0 C  N4 j( i1 B& D" z5 A                        // á?oˉ
2 y% F( N) F* F+ a. i. O                        pLight->Ambient.r  *= 0.9f;2 a( C! k5 s, K& b' h" d
                        pLight->Ambient.g  *= 0.9f;5 L+ g6 C% s% E( C4 A
                        pLight->Ambient.b  *= 0.9f;+ D: m& z3 W! U5 @

3 D) l! F' [$ }1 h+ G                        memcpy( &m_light, pLight, sizeof( m_light ) );
! S+ s& q& Y& f2 z                       
# y7 B2 o, K3 Z% f: g- M                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
% R% m. i6 n' L) f: j4 L) y                        pLight->Appear( m_pd3dDevice, TRUE );
1 ^1 O+ B& J1 R        + S# U. ~0 F2 f+ D5 ~
                        DWORD dwR, dwG, dwB;0 d2 s- {, l+ \# V" F. T2 s6 S
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
/ S8 g1 P' b. C& _6 x6 [; n                        dwG = (DWORD)( pLight->Ambient.g * 255 );
+ h/ C2 M  h' f                        dwB = (DWORD)( pLight->Ambient.b * 255 );/ A* u. C, w& n3 B! j/ n$ n
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );; o  m. ~% U  ]4 N9 M$ C- `
                }
6 |% b' O; t+ ]4 Y        }; j0 W8 P# H9 z. X
        else4 ~/ ~* P! s/ m$ K% O# [* W# P
        {% {: P0 ]' ~/ B& T
                if( pLight ); H) d! Y3 L% \  C" h: I8 \; I' `
                {' [; u1 j) x' w4 }5 S- R$ f
                : i. _7 L; M9 @, i) G5 X9 o
                        int nHour = 8, nMin = 0;  h3 f' j8 A0 s: Z2 y! q; H- q
        #ifdef __CLIENT
8 T0 l& C6 }6 v7 |, h' W8 ^3 t1 X                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. . }- g1 S" t5 N: n/ X, M( P
                        nHour = g_GameTimer.m_nHour;3 C) m3 \% h  a$ V
                        nMin  = g_GameTimer.m_nMin ;
; j6 n4 u# a" B& M' S) `/ G$ `        #else2 Z( ?  t9 f- B7 E& x
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.2 C/ W" _  h, c+ |3 [
                        if( m_nLightType == 1 )8 W2 I' m6 e8 E; w
                                nHour = m_nLightHour;* @- [! [+ A% R1 o
        #endif9 ^. N4 y" k" g; w
                        nHour--;3 G) Z& d+ \# w9 w( b& E. v
                        if( nHour < 0 ) nHour = 0;8 w' }2 y* n+ k$ q5 u
                        if( nHour > 23 ) nHour = 23;
: s2 p+ x1 `  n6 t' l# H( g1 @/ x2 e7 r
                        //if( m_bFixedHour )7 V8 z. @* ]7 N6 O0 V4 J& {2 l# W9 y
                        //        nHour = m_nFixedHour, nMin = 0;
) g& ]! I; w, R3 t3 [( a- G, V                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];1 y& Y( B) l5 N/ g3 C  f0 r$ B
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];+ @" f; ~7 D9 a' n9 P+ i* \

  n, }9 k- Y3 j, s                        //m_lightColor = lightColorPrv;/ Q# S6 {" L! S. t+ k1 D2 |; I
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;6 ^9 ]- U! C; G# k+ f+ I4 G
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;$ e6 n3 W2 X( B. V) y
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;7 W  N0 }* i5 L( j: p7 L
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;/ g* u$ R1 m) n5 e
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;2 J( w2 T) p( A0 }
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;1 j3 [1 L- F) ], |$ O0 |9 P
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol): y4 b' _6 L6 l/ l2 a, j; _
' Z$ d& i& s& H: L' k( Z
                        // à??μ oˉè* " e' p% }1 n- K. a: L7 ]% p
                        pLight->Diffuse.r  = lightColorPrv.r1;0 B0 a' Q- N% y3 b9 }% f& `* ~6 J
                        pLight->Diffuse.g  = lightColorPrv.g1;7 r- J8 P. w3 I
                        pLight->Diffuse.b  = lightColorPrv.b1;
4 z" A1 \2 L$ w                        // oˉè* ??à?
% @" o) h. r1 q, u                        pLight->Specular.r = 1.0f;# z4 D- \' b, N, M! H* i
                        pLight->Specular.g = 1.0f;
! ~, V. }2 T: J& s/ Y9 F/ L  n                        pLight->Specular.b = 1.0f;8 s+ ]6 H! r5 ^4 o/ e) t
                        // àü?? oˉè*
1 i8 g- Q( J  O7 t                        pLight->Ambient.r  = lightColorPrv.r2;
4 w& v1 D  N0 q+ K                        pLight->Ambient.g  = lightColorPrv.g2;
& o0 ^7 C: h2 y9 Z                        pLight->Ambient.b  = lightColorPrv.b2;
7 ?" |/ ?3 f( b3 {" }8 h  ?1 U# T! ]* |1 P# O: _
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??., I3 x/ ^' T5 b9 Y
                        {  X7 T& o, X1 d9 _1 d
                                pLight->Diffuse.r *= 0.6f;
: q1 Q5 h! Z" z& m                                pLight->Diffuse.g *= 0.6f;
. J. x& F( I- R) [                                pLight->Diffuse.b *= 0.6f;  W4 ~9 P1 G1 Y7 V7 ]) a
                                pLight->Ambient.r *= 0.7f;
5 d: f/ D2 ?7 F3 G6 Y" y                                pLight->Ambient.g *= 0.7f;/ K9 u8 ]: K$ ?! j; p
                                pLight->Ambient.b *= 0.7f;
5 Q, G& d/ g' z                        }
7 F% ]3 `# T1 r: o6 B: m/ O: s7 e7 l$ t                        2 _1 y! h$ r( \/ O. X7 r
#if __VER >= 15 // __BS_CHANGING_ENVIR9 q- Q3 k; c% P7 \6 d" S
                        if( g_pPlayer )0 b1 ]& C( U2 U& R
                                HookUpdateLight( pLight );
  W7 |8 Z" S; k3 W3 r$ Y' Z0 i4 r#endif* Q; B8 P: p, \% }* g+ g2 Y! v
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );+ K. l% Q8 h2 D% f" n) d

$ P0 ~8 j( s1 `4 ]5 B#ifdef __YENV
3 I0 j; B; d* i7 C) u- g6 ?                        pLight->Diffuse.r  *= 1.1f;* D6 |3 O/ r/ f  f, w8 o
                        pLight->Diffuse.g  *= 1.1f;
7 n. I5 N  q: E# ^# G                        pLight->Diffuse.b  *= 1.1f;+ ?) s2 u$ a/ ^! W0 n# p
                        // oˉè* ??à? ( Q0 G# l& H3 H% \8 k+ c
                        pLight->Specular.r = 2.0f;
8 f* r3 M# d* j% T) c. U( C" M  H                        pLight->Specular.g = 2.0f;
% b& t- s0 P4 B4 a' }9 w                        pLight->Specular.b = 2.0f;
1 X- J: N& M; V$ R& ^% W                        // á?oˉ
  b  y+ m' o" W: S$ {* w                        pLight->Ambient.r  *= 1.0f;, A2 M: J5 Q  n. t3 l* g6 ~& @( W
                        pLight->Ambient.g  *= 1.0f;
: W) g9 l" N6 ~) X5 k, O                        pLight->Ambient.b  *= 1.0f;+ m7 C; B* X% w
#else //__YENV+ S; R" o; y6 b% A' |1 h: s
                        pLight->Diffuse.r  *= 1.1f;
3 t, a' ^/ Z: i2 {; c* r                        pLight->Diffuse.g  *= 1.1f;8 `5 D( N/ s& G9 X! V! ^
                        pLight->Diffuse.b  *= 1.1f;+ z  w4 C' A) R0 g+ Y
                        // oˉè* ??à?
4 H% a/ H( F" j0 s5 z. c                        pLight->Specular.r = 2.0f;
7 W5 I0 H" ]+ ?& r& ~                        pLight->Specular.g = 2.0f;
  G  d& G; g* a  ?" I                        pLight->Specular.b = 2.0f;4 p8 k2 [5 W% t4 I; {3 M# O
                        // á?oˉ 1 q  Y$ [' r6 y5 I' N" z. W
                        pLight->Ambient.r  *= 0.9f;% |  J. O  b: j% P" T. U
                        pLight->Ambient.g  *= 0.9f;  H1 ?1 n5 D' d# E( E
                        pLight->Ambient.b  *= 0.9f;
/ Y5 q0 o' g8 w& O( r#endif //__YENV 3 h6 l, ^% l+ m0 }9 L3 P
                        5 h" f; h/ V6 Q7 R
                        memcpy( &m_light, pLight, sizeof( m_light ) );
& a: w' N" Y6 I) A) W  }% Z5 u                       
* j" ~$ n# w  b. ?, J8 ?                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);6 z/ |8 o1 i1 u) {+ @
                        D3DXMATRIX  matTemp;
* c3 z9 l! o" S! ~! U: r                        static const float CONS_VAL = 3.1415926f / 180.f;
0 G. i/ k* d) E& P+ v5 K+ F/ Z# q
9 B) Y4 v( ~5 u: s                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);. Y9 a# ?5 [6 U. m
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);7 O6 d0 _: h3 n( B; k7 `( V# @# b* @
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
4 c( n$ x% U2 R4 l, Z2 j' q                        pLight->Appear( m_pd3dDevice, TRUE );
( i1 e, T/ V  A/ h: P4 p0 [
: _) c$ V( S3 o7 b) y2 F                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: n' a* d4 V- t2 |/ R  ?; b# B                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));; y$ A0 m: o3 F2 N) D. u. X
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 R' m) e5 F; K$ i
  ]( q% _7 O8 V. u) Y7 i( J                        DWORD dwR, dwG, dwB;
6 r6 I2 X& @$ i( v6 Z4 {                        dwR = (DWORD)( pLight->Ambient.r * 255 );
* o$ X( v7 i9 M; b7 o- S0 k+ j                        dwG = (DWORD)( pLight->Ambient.g * 255 );5 o( w1 o' j0 C1 a
                        dwB = (DWORD)( pLight->Ambient.b * 255 );- P) Y4 [9 A8 ?3 s* D. J9 W% q  ]! I
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
, S/ B% B  d# f0 P& ^                }- B3 y8 Z) L+ b! F
        }/ e( }; k: E, l2 O, A0 R
! `" ~; G5 [7 f7 `: x2 B$ ?# w. t
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );* U9 O: O/ E- n- w
        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) );" c3 c4 P  H/ u
        ::SetLight( bLight );
+ d% o: q# }% @8 C4 C; Z9 L
$ w  g9 s5 ^+ j/ ]        // ±ao? ?D?í???ó á¤à? , M  J6 _  K4 m& X
        m_pd3dDevice->SetMaterial( &m_baseMaterial );( D% u( _; s5 x# K* A) _+ [; ?
        . D4 r( \+ d$ M- P4 P% Z
#endif // not WORLDSERVER
. e1 w, f) J  _}/ l) h# j' I! g7 l' |. z
并更换
# ]# ], m& f2 c4 j" z' q/ \Code:# k; O; [" b4 v9 B5 j9 J- p
__FLYFF_INITPAGE_EXT0 q7 `& t8 c; N
定义) c: R+ }6 n$ i2 C; q9 s4 u

! E; q- ]! i# I) [
+ W- I' u. [4 x# d8 [4 Q, X/ h7 r9 T$ L- c, @& s6 R  _) v

0 Q( P: U) S0 q  ]. m& |* A; H9 p现在终于删除我的狗屁加速...6 i4 M3 {4 Y3 j# N. B$ i7 O) k
. T6 S5 R. b/ T. _" K$ `

3 d: q6 Y: n; l$ g0 S8 T
6 q7 @# N3 p6 y9 T- d% f6 n: F$ {




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