飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
" y. t) _, h: G6 W4 R尾翼:
  U& q+ d( G- U0 G$ M
( p6 g& S# p( {4 s6 i代码:
1 f1 X& K( u+ ~. ^( O$ FCWndAutoFood::CWndAutoFood()
" s: k# @$ ?0 E8 Z$ {2 i{6 v: t6 |# ]) b
        m_pItemElem = NULL;9 ~0 L) f1 k9 {0 L6 A( `
        m_pTexture = NULL;
: Z* W1 w) \6 T5 t; D$ p        bStart = FALSE;
* z" O( k9 k8 B* |$ |}
" a+ U7 [* g3 s2 G9 X% A
5 U+ j* ]3 D7 P& k$ S' tCWndAutoFood::~CWndAutoFood()
5 K9 l5 |* h; D9 c0 H/ z$ ^{
, r$ a+ Z# r: v( A( q+ G        AfxMessageBox( "AutoFood ist gestorben " );! J7 h5 V: C+ y( @1 @& s2 ]
}
8 }2 v9 q7 q9 s! Y" Y5 KBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )' G3 D2 L7 y. @( h
{7 |6 e/ E1 |3 `  W2 f
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );5 m/ J" X. B' [8 R: o
}
+ t9 {) t9 b; J' p# N8 \( h. i# J, G/ c) ~. B* I
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )7 c% ?0 s; O3 Q4 z# c+ w+ \
{9 g/ F8 m& R8 U5 J' i$ Z% b
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );9 h$ f0 L  ], X) f, S* L
        CRect rect = pWndCtrl->rect;7 c0 E( {- n- M9 r" ]* s7 N
        if( rect && rect.PtInRect( point ) )
3 \" C: t" e5 `" Y; b) [        {2 k2 \3 q  G6 q- r! r) ^
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );' u" P* R3 i% L3 G
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )- y2 h% g4 I, g$ R. Z" O( M
                {
5 A# {9 q4 |4 }3 [. y1 W                        if( m_pItemElem )4 d2 b# l8 t9 a* z0 I
                        {
7 K  u' e6 e7 d2 P                                m_pItemElem = NULL;
$ W  o. K- y% v' ~, @                        }
2 Z$ E$ V5 E9 @/ E9 X3 |+ y$ u' s- X                        m_pItemElem = pItemElem;9 o+ y( f  }  H  w6 ]
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );; t: L  i1 q/ v: }' |
                }else{
: g' p" ?* H: D4 e                        SetForbid( TRUE );3 T& L4 l4 w8 B1 K
                }; W9 R/ g! I- Y* p/ T- T: P
        }else{; z, a7 ^) e: k2 A6 O$ v! m
                SetForbid( TRUE );
3 D2 _: I: }, `+ n% o% I4 J7 e0 u        }
# F  u: e5 U* x% `' P: O0 L; q        return TRUE;
2 M- B& T* G0 }! x}
  V+ |5 I9 C& R% T; M8 l- f) F0 ^4 h* A% r  C
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )4 ?2 n, t/ S& Q2 l
{7 S8 f7 _- O. L  O) z
        switch( nID )
+ k0 i" i% u' _) a& @- X9 H, Z        {
. F: ~" M) ?2 }# u' q" C* K        case WIDC_BUTTON3:/ e9 E, S$ z( X7 N
                {! v( I' }  J. x& U, T
                        bStart = TRUE;
7 Y! ?5 _/ w& j, U: r& s                        break;
! ~0 M4 ~. I" P+ u) }, H" H                }
* o8 ]8 Y9 n/ q0 Y, O        case WIDC_BUTTON4:# c; O; k$ `+ Q; g, S8 |
                {& @( A4 X# t- ^% I  O! k; R- b0 Q
                        bStart = FALSE;5 m$ _' J+ R' ?9 h7 Q
                        break;
0 H  @9 p2 f/ I0 a                }  M2 {9 D# L2 ]+ t
        }" _- I$ T5 J2 e9 l6 A3 y
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
. D6 Q/ M- |( i# j9 J}        2 \8 @* e7 K: n1 s0 F9 J) N  c: q  [
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
8 _2 O0 r8 N2 n+ K* r{
! E% h$ Z) }4 T4 ~) A5 `- O) |        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
( U  Z2 N* B4 ~  ?        if( bStart || !m_pItemElem )
5 K% c" ?4 L2 }$ A9 [% L% X        {
+ l) d' c% f* Y+ A& z* j4 D                pBtn->EnableWindow( FALSE );
# b, D3 e2 r0 p8 B- R, t        }else. A1 X/ t2 }6 h5 u* o$ B+ S. g
                pBtn->EnableWindow( TRUE );$ L, v0 V) H7 l
        if( m_pTexture )
; X# Z+ }. h% p/ E        {
$ X+ c  N4 s, b, Z9 ^                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );& X. k. ]- L6 x/ `( N6 Q* H
                if( wndCtrl && wndCtrl->rect )
9 `3 }. v) ]& x5 H                {; G( d( u8 y# M# r
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
# o/ y* G+ v) j/ b                }! x( r) i; `2 z& Q
        }. T5 w/ Z4 O: z" Y: G1 J
}
' l# W+ G2 p2 y6 [$ S; S
  h" G6 }& x5 y3 t) s+ IBOOL CWndAutoFood:rocess()  ^, c$ _$ E/ y/ @$ ?5 }
{. R; B- S# o  @
        if( bStart )
% X( Q1 [: d2 _$ f' ?+ s. k- n        {9 v# l  |; [% A6 U8 p$ T" C
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) A# @2 Y4 I: [/ D1 L                {9 x3 M, P$ {4 b" J3 _
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
6 n- @( U1 ~8 y* a* x2 W% {' i' {                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );5 t: E" B( r+ ], @. e
                }else{
  \7 o% s* u: x, v9 h1 n& ~$ F                        bStart = FALSE;
: ^- o/ e5 r: ?& W5 q  J. v5 S( T                        m_pItemElem = NULL;
! n" a! T/ a3 t1 ?                }5 H1 I: x2 y) [& P. F  _9 t% g
        }
8 I, n' ~4 T1 n        return TRUE;' A  K9 w1 U: W# w( i4 n* \
}
. ~7 q* U% _6 v7 v% l: ~. o" v2 _
. w: j# J# o5 y$ B7 }! A3 \登录视频废话:9 c: ^- y! d- c
尾翼:
9 s4 K  |0 p$ F2 S# c) C0 H- y) b" h" |* R% d+ y8 `
代码:
* t& H6 m0 F5 `: T8 a4 F$ x
, J* Z) R7 A0 B% fvoid CWorld::SetLight( BOOL bLight )
( @# {! s' u" N! ]7 h! r7 U5 E! [durch3 n- A: c, n8 `# ?& N& z+ r4 M, N
Code:9 P' v0 y# R2 M3 d& j; F
void CWorld::SetLight( BOOL bLight )" h$ N! `, z% m2 s& V2 C
{% [2 M6 G0 G$ T( ]' \
        //ACE("SetLight %d \n", bLight);/ j$ `5 S7 c0 ]$ @+ [, M
        * q! W) h; m2 R( A6 ~4 h2 B& E9 O! `
#ifndef  __WORLDSERVER , H5 ]/ x/ n) L! Y
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
4 l. G: d7 b% \& H% y        CLight* pLight = NULL;
' v, B$ }! E9 C7 A- S. u, E. P7 Q
4 ?7 D* K( m, U9 j+ f        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );( t: d$ b1 V% e( K; g) u8 p/ X

5 p1 Y" `1 ?3 {( Z        pLight = GetLight( "direction" );( m5 @) d5 m3 c" u& Q* b

6 z4 o, r& L* N: F( x1 e#if __VER >= 15 // __BS_CHANGING_ENVIR
  s# ^( ?1 C; Z$ p0 a' D! [/ \        if( g_pPlayer ){3 T9 w: N4 d# v; K! @
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );6 Z) Z* A; O2 l& a  z
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!4 g- Q) a0 B. D$ w
                {
% T) B" ?0 ~, f( `' j3 X                        if( pLight )
) O4 j1 I! o- Q7 K' g$ ]  l& g+ F                        {0 O. F7 K( g6 ?9 q% ^  U. c
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];7 d' T6 m3 J& s+ Z+ v  C* f8 M
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
3 I2 t% b+ j' m5 {  L  P                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
( Z' e3 ?) m7 c% y& r6 h$ k8 g5 w& K, Q8 h" N0 q2 F2 Q
                                pLight->Specular.r = 2.0f;
+ M0 c- f) F9 l2 G6 J" D                                pLight->Specular.g = 2.0f;& K" E; `- b# h4 h$ G) M
                                pLight->Specular.b = 2.0f;
$ s$ Z) V' @' c3 c# D8 [# p2 h       
2 w8 Z5 }3 q6 _+ r                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];! K: `: \) o. n$ J3 u
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];5 e& C' e) ]) v2 B: @* B% @
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];5 f, v7 k1 R' [5 b! k& U9 H, b8 H
       
; w9 S5 ^- @5 }( ?! Q& M6 a6 p' ]                                HookUpdateLight( pLight );   C; Z/ ]0 m& S2 t# Y6 u
" D  K& f  ^- A* w3 }
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );2 [# C5 I* M  x# |: O- A- ~# b7 x9 Y
               
: q. R  u9 h  g* g! A' |3 k# D  K' j                                pLight->Diffuse.r *= 1.2f;% M+ `, ]" \" r& e; Z3 m
                                pLight->Diffuse.g *= 1.2f;
- j7 W( @0 j$ F6 K                                pLight->Diffuse.b *= 1.2f;
& d) k: g# q0 M" [& V3 U3 L) A- s/ F6 a
                                pLight->Ambient.r *= 0.8f;4 H: ]6 o9 P# Y' ]2 d
                                pLight->Ambient.g *= 0.8f;4 M* `' T7 }5 l" Y7 M2 Q2 `
                                pLight->Ambient.b *= 0.8f;
9 t4 Y" g7 I5 {3 j6 ~8 H        1 j  `! e  j' U' i' ^; \/ p* i' D
                                memcpy( &m_light, pLight, sizeof( m_light ) );5 i1 O' t7 w9 C: a" V5 U: E
( r& E- ^) x, `! E& }8 s
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% [7 \7 e* `. i0 x& _) J7 \2 q                                 D3DXVec3Normalize(&(vecSun),&(vecSun));" _, O3 \& L: z" e; s5 G
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); / Y% t: y) ~9 g/ o
                                pLight->Appear( m_pd3dDevice, TRUE );- t" `( t3 b! q- G
                $ i. p- W5 i/ ~3 [) {
                                DWORD dwR, dwG, dwB;/ j& ^! K  p% v# u  `9 F* Y3 e
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
" X& ~. A5 ]$ L                                dwG = (DWORD)( pLight->Ambient.g * 255 );
) C+ C$ S) V. M0 t: V& P2 S                                dwB = (DWORD)( pLight->Ambient.b * 255 );
/ G) A1 t% ]3 x9 _: C4 f# ?4 K/ e                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );! f' N* M3 E2 a9 I) u4 g; f
                        }4 f. L% z0 q  q9 @8 k8 h' W" \8 q, T
                }5 D$ c4 `! z& C! R% `6 H7 Z0 R
        }
. f7 w! Y3 S# |: F3 |        else0 d2 E- r" @7 W! @+ B- i
#endif
, {" y6 G/ ]% s" L( m
, z9 l& x: ]# E# x7 w; P        if( m_bIsIndoor )
: c% W2 g1 j/ g        {
" w& B: T# T' o5 f0 P: `                if( pLight )
$ u( b+ p/ b6 K3 ^5 l1 d/ q                {                & S& W* R8 G) h" I0 ]/ u2 O5 q
                        // à??μ oˉè* 8 x  V- a, Z! h# x# V, H6 h% h( U
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;. [7 b% U6 v$ d5 F) I) ~6 B
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;9 q. u3 N6 G8 V& `* B2 r
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;, D( k/ Y7 ~) N# u" Q$ ~
! I9 p. v% X4 u+ f
                        // oˉè* ??à? ( G1 g8 ]0 e- @' M' {/ j. ?* U
                        pLight->Specular.r = 1.0f;& Q) i8 A% O( C; c- N" N
                        pLight->Specular.g = 1.0f;
) J, W# w6 V( A& N+ H- D" V6 j* L6 I                        pLight->Specular.b = 1.0f;
2 M) l+ q& F/ \% v6 T4 W                        // àü?? oˉè*
4 X% w' t$ n0 h' D- L- {* |                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
" ?9 q: U, c8 j. ^  }4 n# d1 T                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
: ^+ |6 l9 v, t4 ~2 a                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
& R3 }. v3 P( c6 v; j/ Y4 B8 g# Y6 s! z
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% ?' U' ~# o3 C7 a                        {
: r0 Z+ d5 ], M# T9 B                                pLight->Diffuse.r *= 0.6f;) G3 p8 q. n9 t) ]9 [
                                pLight->Diffuse.g *= 0.6f;
% \1 }" M- L; O4 \- s0 b2 Z: G0 a                                pLight->Diffuse.b *= 0.6f;2 T7 F! @' o1 ]+ o& X, k
                                pLight->Ambient.r *= 0.7f;: J8 ~) v, |* v" n* M$ s  d
                                pLight->Ambient.g *= 0.7f;- x4 ]" k( }% {. k. w3 y* Z3 a
                                pLight->Ambient.b *= 0.7f;
3 P1 P$ t# w6 R" X1 f: Q8 U2 |+ ~                        }  z& {* f1 l7 m; W
, n( Z" _$ w& P# p- q2 W
#if __VER >= 15 // __BS_CHANGING_ENVIR& M+ ^( B( x. ?
                        if( g_pPlayer )/ R) R+ P  l5 }+ R4 \8 c
                                HookUpdateLight( pLight );
3 m8 u2 h5 w* C#endif1 A4 L& R1 Z: C& u8 Y; _% L& d
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );' u% `- _" d- G8 D/ ^" V

, P3 M4 E9 b, |6 Z  K0 Y                        pLight->Diffuse.r  += 0.1f;
; u  J1 a2 ~1 }7 t+ _4 N                        pLight->Diffuse.g  += 0.1f;: f$ O5 \9 d5 j
                        pLight->Diffuse.b  += 0.1f;
1 ^  S2 R$ N8 @% `* R' I                        // oˉè* ??à? 2 `# V3 I9 E7 G* O
                        pLight->Specular.r = 2.0f;: W" h/ I8 |( \1 r3 H  V. N( L: P1 [+ Z
                        pLight->Specular.g = 2.0f;
) ~! L, q3 I2 |! f& O                        pLight->Specular.b = 2.0f;
+ y2 x; k5 n7 P2 T9 P% D0 n7 H! n                        // á?oˉ
1 {: X$ T- K; Z2 a1 P                        pLight->Ambient.r  *= 0.9f;. [% V% p6 i; A, _
                        pLight->Ambient.g  *= 0.9f;
" P7 O0 g) x& W% Q                        pLight->Ambient.b  *= 0.9f;& E# t$ J6 z6 m. |( e  S% Z* D
8 w5 d/ Q4 f* }6 B, ?: Y
                        memcpy( &m_light, pLight, sizeof( m_light ) );
/ t0 J5 x# K& [- ?% u                        # a9 ^& v% i) b5 E) V; E
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );  J$ k  p, E, C. [& _$ ?8 E
                        pLight->Appear( m_pd3dDevice, TRUE );
' h1 F- B% J$ e8 s# p8 }) Y        6 w0 |  _) Y$ A, {. v0 L
                        DWORD dwR, dwG, dwB;# t2 h3 }9 I) N( O
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
3 ?+ o6 G2 ?3 `7 N, _9 h                        dwG = (DWORD)( pLight->Ambient.g * 255 );
" q6 g# }  w: _; K                        dwB = (DWORD)( pLight->Ambient.b * 255 );) ~9 b4 v& [- C4 w: w6 P
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );5 U- u( S. H+ H
                }
3 O7 f2 v* c: {/ c/ t        }
; U: Z+ O( e5 z5 @        else
6 t) m# B* j& M# F8 m5 x$ _        {& D' y9 T. x) m% E5 y0 m- R
                if( pLight )5 q5 v. N: k- d0 i" i
                {" L  l& V, S! E' E! j
               
5 V+ U3 I1 m- N' l$ d  u3 ]                        int nHour = 8, nMin = 0;( z- ~4 J% Z* o* z4 e2 W
        #ifdef __CLIENT
$ q' i9 a% }7 r8 f" Q                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
, `5 c1 @/ E9 ]1 ?7 ~$ S                        nHour = g_GameTimer.m_nHour;# t3 g* k! q. S8 f
                        nMin  = g_GameTimer.m_nMin ;3 [7 J7 Y' m, x: D% y2 Q( Y; ~
        #else, w# P8 C/ D1 w/ V8 T% A8 m/ d
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
3 h0 ]) o, J  g5 I' h1 f/ v8 B3 n9 c                        if( m_nLightType == 1 )
! k1 ?1 ?9 O$ u3 Z$ L1 P6 o$ ]" a9 Y4 v                                nHour = m_nLightHour;5 q* \. ?; T" l7 l1 F
        #endif
- i9 ?8 W* \6 c$ k  \, p  R$ a+ e                        nHour--;
, @* y) c8 i3 w; P( Z. v                        if( nHour < 0 ) nHour = 0;) t% `) x7 F  G* V3 ?1 ^. @+ u/ I  \
                        if( nHour > 23 ) nHour = 23;
$ W! y8 O  M6 T/ P
: d/ j- Z/ W9 z) e                        //if( m_bFixedHour )
7 U# h2 K$ P- U) X1 H                        //        nHour = m_nFixedHour, nMin = 0;
) S& `, W8 e+ k) ]1 r                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];/ _- w: W* p/ x
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
4 a9 q9 S1 ~& q! q; I6 Y# ?! M& n: M+ Y, a
                        //m_lightColor = lightColorPrv;
# n  M2 q, q: b* y& j                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;! W" M4 ]- P5 p8 }! }: v
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
7 b+ f7 k6 D8 B! C                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
7 Q$ J0 U4 |# h8 R5 B: u# N. d1 O                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;: F! z. [/ j- R
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
( e4 @6 L  M8 U( W; D, c                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;. j( V) i  [: S+ l* t& m4 s2 `
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)* D# x3 N; O4 [

: ]" y5 ], S7 d                        // à??μ oˉè*
* U% g, F. \" F/ R9 H                        pLight->Diffuse.r  = lightColorPrv.r1;* {  _( h) V9 K9 j% A' ^# j. B( l
                        pLight->Diffuse.g  = lightColorPrv.g1;
8 F. s2 z; U5 G1 P                        pLight->Diffuse.b  = lightColorPrv.b1;
: i& @' Y( {% U5 P! G  K                        // oˉè* ??à?
9 ]: S7 p! Y3 p0 n: g                        pLight->Specular.r = 1.0f;
0 ~) H, N( K, j6 b0 t                        pLight->Specular.g = 1.0f;% `& W  `) w3 `
                        pLight->Specular.b = 1.0f;& k) q, g: G& x. f
                        // àü?? oˉè* 3 n8 w8 S* c2 R
                        pLight->Ambient.r  = lightColorPrv.r2;6 N! ?- L5 p. \7 x
                        pLight->Ambient.g  = lightColorPrv.g2;! c4 h2 o1 j/ y3 M! ?& [/ D/ {0 A
                        pLight->Ambient.b  = lightColorPrv.b2;+ @4 d+ l& I! Q  J) [! h+ ?

0 L$ g/ @8 v, G$ t9 }                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.( n' L$ I9 X# b8 q* Z$ ^
                        {
" S* |7 f, b# @+ y6 [1 G# [                                pLight->Diffuse.r *= 0.6f;5 i. I1 T5 |" |8 V6 P. Y1 j
                                pLight->Diffuse.g *= 0.6f;$ o. x( B: y; `8 k( A1 U
                                pLight->Diffuse.b *= 0.6f;
9 B5 |* @8 g4 S                                pLight->Ambient.r *= 0.7f;3 T3 l' W4 g, s8 F* j1 C
                                pLight->Ambient.g *= 0.7f;
- z# f0 I  D7 s" Z                                pLight->Ambient.b *= 0.7f;) j- Z* S( q- J+ `# N  g
                        }* i9 v5 G; ~4 [
                       
$ q0 {3 b3 }+ \* R#if __VER >= 15 // __BS_CHANGING_ENVIR6 V* \0 i( z4 d+ S8 z0 d
                        if( g_pPlayer )
  ?; u9 I3 D# @3 A+ \6 S: d                                HookUpdateLight( pLight ); 8 Z7 }) e4 j( D* m
#endif
4 D, B7 H* E" c2 ^+ f: X                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );& G( O) f7 y$ [( r9 e8 ?- w  ]
9 }* p" _( U: A" L
#ifdef __YENV
/ m: K# `; y$ F/ W6 V- ^7 S- m                        pLight->Diffuse.r  *= 1.1f;
' O: I% y7 D! i( c  Q3 H" \* d9 `" ]                        pLight->Diffuse.g  *= 1.1f;
! p* Q, M9 O0 f                        pLight->Diffuse.b  *= 1.1f;
$ ^& E. c$ `4 h: t# c                        // oˉè* ??à? 8 @: `# u, g8 S& v& @
                        pLight->Specular.r = 2.0f;0 F, W. q; }; K4 |6 {# I; K
                        pLight->Specular.g = 2.0f;
' m5 }/ m) z# D; x" i8 N                        pLight->Specular.b = 2.0f;
) D, v- W$ j0 o                        // á?oˉ . Z# J8 i4 ~" [. `
                        pLight->Ambient.r  *= 1.0f;
: B8 i7 }) O/ \" \+ A; k                        pLight->Ambient.g  *= 1.0f;
) C8 i2 O0 z& X- t4 r4 H! C                        pLight->Ambient.b  *= 1.0f;
+ z, g. n' l/ ^, z6 T6 ~#else //__YENV
' i1 f3 D3 i; s7 M+ V                        pLight->Diffuse.r  *= 1.1f;' Z: ~9 F% J! r, P/ r7 I3 R
                        pLight->Diffuse.g  *= 1.1f;
$ _2 w7 D' b3 r. _3 K                        pLight->Diffuse.b  *= 1.1f;$ {# X0 e: s( E: `- H+ Z
                        // oˉè* ??à?
3 ^4 u% M2 q& g* D5 B9 L                        pLight->Specular.r = 2.0f;
- B5 v4 `. D3 Y$ w                        pLight->Specular.g = 2.0f;" }# J; |  k6 I4 R+ D% z
                        pLight->Specular.b = 2.0f;* c% d+ w: H: H  d
                        // á?oˉ . h; l& C/ l: @/ x
                        pLight->Ambient.r  *= 0.9f;% n8 P: v! R# v0 \- B" S* y( k
                        pLight->Ambient.g  *= 0.9f;
8 E  r2 z. F1 j; }                        pLight->Ambient.b  *= 0.9f;
2 _' |! M0 s4 B9 c#endif //__YENV
: d7 ?# v3 N- p' |                        # l, U9 k, e3 ^% j0 A# z
                        memcpy( &m_light, pLight, sizeof( m_light ) );$ S) X" d  j) `: F4 |4 \
                        # V2 Z- K+ Q7 [
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
% [! n( c! q( L" K" _                        D3DXMATRIX  matTemp;% k1 m" c0 m8 ^' m$ \: h8 V
                        static const float CONS_VAL = 3.1415926f / 180.f;1 i& L2 J, ~3 E$ z' ~0 S; ^

! G+ c- L% G. j  u: k                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);/ ]: Z, Q' k, Z. Q( q
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
5 g) S0 a5 ~" d                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); ' g% I' j  ~0 h: i7 ?- j
                        pLight->Appear( m_pd3dDevice, TRUE );
4 `( H) W" ?) q/ E1 `* h6 g6 U. a9 x+ s% X7 }" b
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);- D7 m: k" q% T5 l& D2 G* G7 @& A
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));/ u+ t4 `9 H3 _% k3 V2 S0 u
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
4 h5 u7 n0 D* k: I6 E7 |! v, q- x- \, W' b/ l$ a. @& [. ~- D
                        DWORD dwR, dwG, dwB;; {1 D% B8 [+ Z5 e
                        dwR = (DWORD)( pLight->Ambient.r * 255 );: g7 \* \; Z% x9 f
                        dwG = (DWORD)( pLight->Ambient.g * 255 );' _# q" K7 x  A- s' W' W
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
* Y0 M. @; i9 l4 X/ A: F3 U                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        ( b# S* n" H/ Q" c6 y
                }' X. v7 m: d0 [0 z% f
        }8 s2 h6 z7 R. Z, }# v" s

- V8 I/ N# z  u7 e- x3 c        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
: Q- q) K  Q0 [* q4 d1 |        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) );8 s8 C) u' s- u0 Y% y
        ::SetLight( bLight );8 |# c: j" x; u$ ^% Y. X5 V  ~
7 a1 ^7 ^& a  W7 I; [, S6 N
        // ±ao? ?D?í???ó á¤à? & Z/ S6 ?2 H. T  S! H: O3 \8 `' m( I
        m_pd3dDevice->SetMaterial( &m_baseMaterial );, e2 J/ y6 o( U9 Y) P
       
" S- g+ l7 @5 H#endif // not WORLDSERVER5 ]; |: i  Y; A4 T
}2 h0 I& l( H* X! _! r1 @( o
并更换
- Z$ ]6 ^0 V* o8 i0 b9 RCode:
$ c6 N3 p8 S! o0 w# T- ~+ {$ u__FLYFF_INITPAGE_EXT4 k: A5 X; {2 R; ]
定义
  \8 d; n. ?0 o4 V9 q! x. ~$ G# h9 }& O! b
; S( b# @5 {# x! _3 J% [. H

( b: D" b* b' S, y6 E9 `7 T* s: \& v" `/ @% q" q9 @
现在终于删除我的狗屁加速...
8 O; t  o% L; o8 @2 W. ^& `- j/ q) b0 O

* s' G) G/ a. M. |4 h3 m$ {3 T
' |1 G% H4 R, f: n+ Z( l+ e, @. B




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