飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:# u4 y) \5 E/ |# p
尾翼:8 l1 v" i9 M) b  ~- I3 O

: f( ^) I8 r6 O3 D( \2 l" b代码:
4 |, x& n+ F8 m5 n% y) r0 kCWndAutoFood::CWndAutoFood()
9 u/ W) M' v# y7 a" j9 H9 S2 @{5 J# y" Y* A* o( n7 N" S: Z7 E" N
        m_pItemElem = NULL;7 W& K% E* m+ b( [2 e
        m_pTexture = NULL;: |( A! ]& y1 M( H, l& ^& c
        bStart = FALSE;6 T; u0 Z3 t$ W4 _, f' Z
}/ k0 T# c$ M8 |: w) X7 ?1 w$ x

# M5 [6 o' a) k) C) S, F, ]+ p. KCWndAutoFood::~CWndAutoFood(), ^+ x9 b; F5 V4 L7 i0 T
{
4 f  w* h9 k9 g; |        AfxMessageBox( "AutoFood ist gestorben " );
! a9 S5 D! J, n, y; @' G6 m}
( N- f; ~% k# s5 E% z. sBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType ); ~# I! C/ {: k+ [$ b
{! L9 {. u/ B  l+ O3 Z
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );1 f8 u8 k0 D+ u* |
}/ ^" n/ b: x1 [  L) n; p# I
" B6 v# j$ ~5 q- w8 E$ d
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
; i5 ~, E8 ~4 L% [. S3 ^0 \6 y{# H3 P% P+ z+ m) D  ?! _4 G
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 t) P4 H: O2 E0 u8 j        CRect rect = pWndCtrl->rect;0 V: @5 t" R  R) p* w; H2 v
        if( rect && rect.PtInRect( point ) ): k. D) c6 J, [( a) S7 T( ^. G" \
        {  X. O! W  r( `" @1 o; ~+ M1 _
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );/ a; W2 S6 M0 V( P) ?/ `+ m
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )0 r/ ^9 [1 s8 B4 W; B  v% z; `
                {
: f9 c9 ]. |$ i' n$ `                        if( m_pItemElem )
1 j" {$ b* ^0 ^# N) R8 p                        {
' o4 v5 m) A+ y  @) |, B4 B                                m_pItemElem = NULL;
0 g5 W. v8 R2 @6 p                        }
( o7 h- w5 ]9 U1 a: a" N                        m_pItemElem = pItemElem;8 l4 P% ?4 Q% S
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
" \2 f. Q5 `: ?4 ?" g, U4 b3 [; Q                }else{3 M1 s1 |4 R' E" O% x
                        SetForbid( TRUE );$ Z' K( d$ \# y" O7 \( ~7 y0 Z& H
                }& v: C: b, Q& W2 \2 C9 v
        }else{
, Z+ M' f* K( D: c# K  q% z" n7 {$ T                SetForbid( TRUE );0 \5 D' G% A+ O) R3 L  P1 [2 t
        }
/ V/ l% B2 s( L        return TRUE;# S' f1 j! g  I4 z# y5 \! \0 p
}, {) e- T1 ~  i* n) L0 I3 m: e. `/ x8 d

. p( L1 p* Z$ s- b# J+ a- hBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult ). C$ f& X) H1 ~; z" p3 M  O- M
{! q8 I- J1 N& U
        switch( nID )
$ m: l( x9 Q- Q; r9 v- X        {
; }0 k/ T; e+ w! W' r: |+ K- |5 g        case WIDC_BUTTON3:
  B! u7 ?) F% j) [: F6 s                {
6 L* r* ]/ f2 A8 Q0 ~                        bStart = TRUE;" Z0 p8 w& t0 L* K) p
                        break;
: x/ T* \2 K8 P! g' `$ f5 j- B                }' N) j. Q) b( P4 K6 R' t0 _8 w; Q
        case WIDC_BUTTON4:- V  |+ R  A; e# [9 e/ ~" @
                {
% |) Y* ~" w( f! r0 ^  Z                        bStart = FALSE;
4 |. @3 k9 C  j, N9 Z+ v; g+ @                        break;/ f3 Y& T1 G1 c! L, d
                }( C% Z; i7 G% p, l  L; t. K
        }1 k, F. Y; n& z7 O- }. ^
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
! \  F- ]) \- i9 _' j}       
1 Y+ K% p6 E1 J8 w, V9 B  _/ Lvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )4 ?1 t! b9 Z& b3 u
{
: J2 V0 ?$ v; r7 \5 P7 b* e        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );5 G' O! a0 J/ M8 m6 O+ ^
        if( bStart || !m_pItemElem )
( m# r5 Y9 n* C5 h4 @        {
& ^6 P( @$ ?$ l- a% a: s                pBtn->EnableWindow( FALSE );; Q# a9 G6 ^1 Z' e+ d
        }else
/ j6 b2 V' r' h/ G* b; ?5 S/ y( n                pBtn->EnableWindow( TRUE );9 h, e. z- s7 N* ]! E+ R& S+ @
        if( m_pTexture ); Y, Z- X/ x5 T0 R  U6 W! p
        {
/ q" D0 v- T8 v! E: p; W& r                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
9 i/ A5 O& {  X2 S1 D" H! ^/ }; t                if( wndCtrl && wndCtrl->rect )
- n6 P- N3 Y$ p* I                {9 S6 N. `7 V) \3 x0 B
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
, g, N( j) }+ _/ J                }
  x% _# o6 l: ]        }
- W. N# m8 m- R1 k% g}7 z% T: m# s! [" W

! Q+ `2 D3 c4 F: UBOOL CWndAutoFood:rocess()
! G1 N$ A+ p+ P( K, Y, ?( H6 [7 N{
* Z) R$ ?9 D. r1 a9 f% Q        if( bStart )+ W% g6 Y: H5 w
        {
* v% K1 d9 B% n( {- P& `7 S- W                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )) ]* X+ l; h+ G* K5 \
                {
) o% C+ w; x, I5 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() )' c6 L, H3 C! S$ m: E* e
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );+ I5 u* |! U# C; N, b
                }else{
+ L$ s3 z  O4 f7 i                        bStart = FALSE;
7 U$ b4 C. Y) i. s$ i! ~4 o8 D* @                        m_pItemElem = NULL;
& C; R2 }5 I) t9 C                }* b% A; b/ v! d3 |7 R
        }5 T3 J1 H5 N; R- [8 w' M
        return TRUE;
0 f, F" l! ?) F8 w4 q1 ]. \8 {" u}
* Q. S2 o1 p- j; ?0 M
' K$ ^' U% h$ k3 T, Y登录视频废话:3 l, P5 }) P: k& W+ K5 `
尾翼:" a2 a8 W! Y5 W: ]. `

( W+ r# p8 K. \' q& T代码:6 |  V  d- |5 {- l
5 F9 ~# ?+ k: V' e
void CWorld::SetLight( BOOL bLight )+ {+ k! n) N) {- W  ^# {
durch/ a( s. m# S1 d& y0 U9 B. M
Code:
% j* @/ C( g1 D/ j6 mvoid CWorld::SetLight( BOOL bLight )& g# Q4 c% `) q8 n2 h6 v3 y" D
{  ]  ?0 G$ r2 P! Y) [7 u# S2 ?. G
        //ACE("SetLight %d \n", bLight);6 m3 L+ `. {8 s. I3 q# k( c5 t
        & ~, I; l3 P6 t/ }- p: R8 {( c
#ifndef  __WORLDSERVER & \9 `+ W$ `! {
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
* ~& W- I. `* c        CLight* pLight = NULL;7 X% E) o) k* L) f2 D/ v7 c

, |4 Q6 l/ r( n- Z        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );% U& T$ c1 ^6 h% C* x8 p: I6 a

7 |4 W1 c+ }6 i% [# y        pLight = GetLight( "direction" );
" T1 {1 N; Y/ c7 {. k: H1 I* m* z% e$ u3 N" d. z
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 S6 I$ B# b3 O9 G" z$ W        if( g_pPlayer ){! o6 \$ N; z+ A/ X
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );1 C7 d) s' }! I; i! p
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!. J! S9 T- m% m5 x5 [0 ]" C
                {
  s4 j) }  h' h                        if( pLight )
0 P5 k) c9 l# ^2 y+ C                        {
5 {; z! k- d2 O% b) d/ o# q2 }9 K                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];2 R! [: \6 G# X
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];8 e9 y' [" ]2 Y3 O! \
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
2 M( S: Y6 h3 h' \% U5 J0 x0 G
: Q5 z. G9 @6 f                                pLight->Specular.r = 2.0f;
2 K) _, _% u, l. I. l$ _8 F: e                                pLight->Specular.g = 2.0f;
* ]# a! F8 S1 l$ B# u                                pLight->Specular.b = 2.0f;
4 S% C, D$ D9 P+ e9 e        0 N: ^7 ?/ i* G2 I6 A+ f1 s/ {6 `# R
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
4 d5 Q4 J5 D+ I' {! w$ x8 F1 L- k7 ]                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
# ^# a  h5 E; B% {4 t                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
8 h8 V$ H, D# R% u- w       
+ }& O/ ?' n. A0 y( O( _1 ]                                HookUpdateLight( pLight );
, t. H' L1 |2 R3 M3 A9 ?/ R
1 M* R6 k: l; o4 ?4 ?8 ^' t: k                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" n6 u5 r' J) Q9 h( h               
! }: e; G5 ]2 z- t& I# \                                pLight->Diffuse.r *= 1.2f;# s  s3 a( b1 b1 S- Q- q! ]! F
                                pLight->Diffuse.g *= 1.2f;. T7 S- x, g& y9 a! s7 Y" d, N) Y
                                pLight->Diffuse.b *= 1.2f;- F6 [4 W4 w( N% k, }# c* I' z

6 o! M8 j: A% T/ s                                pLight->Ambient.r *= 0.8f;
* V$ T7 ]7 a! \* X9 ?$ ^                                pLight->Ambient.g *= 0.8f;, f6 f0 W" f' z) y& [2 w7 q6 S8 E) e
                                pLight->Ambient.b *= 0.8f;2 d* ?9 b; A# H  I
       
6 u( F, f3 T$ |/ G                                memcpy( &m_light, pLight, sizeof( m_light ) );
3 k, M( U! f) A" S8 u; @  s% B! L8 L9 i$ S' X2 n' x: d, ]2 X; k
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);6 H% B* m3 G6 g- I& ]
                                D3DXVec3Normalize(&(vecSun),&(vecSun));/ q3 }) D* L' w6 x9 ~& ~
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) U8 x3 A) u% Z+ b& l# J                                 pLight->Appear( m_pd3dDevice, TRUE );
' P7 u# z+ I( [/ j. l                2 q8 f, k) n" G* U% |
                                DWORD dwR, dwG, dwB;
% [, k+ s  n, H                                dwR = (DWORD)( pLight->Ambient.r * 255 );
# s! Q) P) L& b, h: b" |                                dwG = (DWORD)( pLight->Ambient.g * 255 );
! ~9 c5 f& X& Q6 ]& _                                dwB = (DWORD)( pLight->Ambient.b * 255 );
& Y0 }( {# Y( u+ \# c                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 X. }, S4 z- P' [                        }$ M6 W  S2 o% h. N# g3 ]' z; x
                }& G  P0 Q0 ~/ F/ t) q
        }7 ~1 Q; E7 M) f& l6 R( q5 W
        else+ T, J/ |! L7 b8 p
#endif 2 W  ]( Z+ @8 K/ L6 l6 H

! B$ m0 ^6 L( U8 j4 l5 p8 u        if( m_bIsIndoor )
4 i! F9 E, D, s' v0 ]        {
4 {# K* h: B$ z: C+ w" p/ L                if( pLight )& V% N5 J) y9 H- v6 G; [6 ]" Q
                {                8 e0 d. M8 V9 A- m8 m0 o
                        // à??μ oˉè* ( l  n8 ^- T& [$ |* E: L# s
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;8 p3 D1 L7 o( N
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
* [1 A; k) s, Q* }1 @6 ?+ S, i                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;: M' Z  O. z' p0 N* V. m+ ?

$ l, Q- V6 z' W# a; o2 B. \& C  n                        // oˉè* ??à? + n$ R; n/ {* V/ e& Y: p
                        pLight->Specular.r = 1.0f;" L' |% R- T" K/ g" o7 ^
                        pLight->Specular.g = 1.0f;
: f- j0 _8 _3 k0 q- c, M; W                        pLight->Specular.b = 1.0f;+ j5 }5 C( [( q; T
                        // àü?? oˉè*
( k% O( s5 C% X7 n6 d/ M5 ^3 v* {                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
' k0 ?; T+ N- A* s) h                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
3 P8 \2 K9 B/ ~& e* u# x                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;) G/ ~0 o  k, ~( X6 n% O
' [0 R) j( N* _. C2 y
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??./ R8 |( |' v- V9 }
                        {
& v8 u9 \) t# b4 {/ l& w                                pLight->Diffuse.r *= 0.6f;
1 I3 [; a8 a( L9 O: `                                pLight->Diffuse.g *= 0.6f;9 M+ q4 M0 w6 C8 ?
                                pLight->Diffuse.b *= 0.6f;
+ I1 t) C2 y: a% m, I                                pLight->Ambient.r *= 0.7f;
3 ^* |0 l: ?, m4 F2 T                                pLight->Ambient.g *= 0.7f;
0 z$ a) `: g+ P" Z                                pLight->Ambient.b *= 0.7f;4 Y7 R) W4 F; ?5 o) F
                        }
3 v% o. G3 j" c9 }( v# ]0 |: g1 `8 e1 i" @6 F) ~2 f
#if __VER >= 15 // __BS_CHANGING_ENVIR2 O) C% P: |2 c$ m. r- v! Z- \) D; o
                        if( g_pPlayer )
. E: ?) Z8 M$ @' s+ C; O, ]                                HookUpdateLight( pLight );) n+ U8 S5 B$ W+ s
#endif
; ~9 \2 ]& E$ z6 g& `* F. r/ x                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );; l$ W, `. g% M
" K% I7 W% G8 u4 g/ p
                        pLight->Diffuse.r  += 0.1f;
2 B6 Z5 Q9 J& q. V' o3 ~                        pLight->Diffuse.g  += 0.1f;
# O" }8 E: B4 q" M: ?                        pLight->Diffuse.b  += 0.1f;
; `5 F& e% f: s9 |3 ~" A, N                        // oˉè* ??à?
3 R' z! U3 W2 V3 b" a                        pLight->Specular.r = 2.0f;
# D; t) U3 L' ~6 H                        pLight->Specular.g = 2.0f;
3 x0 \1 O  w& c1 ^1 w) b: U5 r6 y3 r                        pLight->Specular.b = 2.0f;# }: Y, m4 h* ]9 `
                        // á?oˉ
5 d. d, V% S% j2 U                        pLight->Ambient.r  *= 0.9f;) g8 a$ p' Q. a. {, G3 o
                        pLight->Ambient.g  *= 0.9f;
( R7 g6 U2 T3 x                        pLight->Ambient.b  *= 0.9f;: N9 r4 ~- B* t/ Z
) G4 Z* j& u& {3 Q6 Q/ W  B
                        memcpy( &m_light, pLight, sizeof( m_light ) );
" X6 T1 y' p( z$ `/ ?                       
) M( t  P7 ]& z+ q3 f                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );, M& S( a2 G: p9 S) |1 G7 h2 y
                        pLight->Appear( m_pd3dDevice, TRUE );
7 T" ], R( q. j: R6 e, v       
- @+ H6 W3 Z* X7 ]- h                        DWORD dwR, dwG, dwB;
+ z0 d# @3 ^. G+ }7 k# `2 r+ o0 J  ^                        dwR = (DWORD)( pLight->Ambient.r * 255 );4 |7 I  w4 Z8 ~; C; }' \
                        dwG = (DWORD)( pLight->Ambient.g * 255 );, s5 F1 R) M" D
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
3 i, J# P: o) G$ O                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );1 z8 o6 h/ _9 E( o' K
                }
% s, j. s* N5 E5 n/ }        }3 f5 f$ o5 x6 B7 }7 L: |
        else
3 J; J% z5 d  r: a9 ~, N+ a! e        {
4 e: r5 h, T* P5 a# U                if( pLight )3 a3 c/ U# h1 q) d0 a, T
                {
, c" D: J3 z% b* r                2 v/ j, _' i; I0 S# t
                        int nHour = 8, nMin = 0;# T1 n- d9 a" u# q) j
        #ifdef __CLIENT
7 Y; A% d5 V7 p0 C9 P% U% A: u2 {                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 7 _0 X/ k' ^) c5 ]" w* B( o5 g7 A
                        nHour = g_GameTimer.m_nHour;
5 T: Y% A" u& s                        nMin  = g_GameTimer.m_nMin ;" B& x" E# {/ d% A- Y2 ^) Q
        #else$ \- _, [! B- `3 Y+ r- p& A* L
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
2 H8 v% b3 l  z. \# o+ b/ U                        if( m_nLightType == 1 )0 V: }, i' `- o5 p, S$ ]
                                nHour = m_nLightHour;1 W( r4 G  ]0 K8 V5 G7 s4 z
        #endif
) o$ B. m% e: N+ |# J4 c                        nHour--;
$ u% l1 G- R) y) G/ S$ S% |' Z                        if( nHour < 0 ) nHour = 0;
! l6 c# w1 Q2 W6 ?+ W  y  y+ w; v7 h                        if( nHour > 23 ) nHour = 23;
& q5 K' p( z3 r; @# B* G
, M$ S1 {1 E' R4 N8 e9 Y                        //if( m_bFixedHour )
! ?6 H9 }7 M  N, E                        //        nHour = m_nFixedHour, nMin = 0;$ o9 t) [+ x0 |6 E6 E
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];! b$ O& j& c5 ^5 c: t# w7 W
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];; `  Q$ m/ A7 D0 G, b+ X4 I
; y# X$ K% r* |0 }# q. h! d
                        //m_lightColor = lightColorPrv;6 a; P4 M: w7 F  m- p: g
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;/ Q6 j  B9 C' v8 X% ?% T
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
! H: M& [' o" u8 E% j9 J% q' i4 A3 x                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
+ z4 U* x' V1 F' ~( j                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
) K! \; l; f; ~+ p4 x4 D" |                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;, H! C) @* X6 X  P2 n3 X' k
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
1 k+ k1 `7 p' I                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol): b5 o' j+ ^9 ?9 `4 v; [& R3 A

2 f6 V8 \. f: o8 Q# q, `8 }6 x                        // à??μ oˉè*
7 X' h# E% k: D3 T                        pLight->Diffuse.r  = lightColorPrv.r1;- J+ Y9 k" I8 q  O; ]+ P
                        pLight->Diffuse.g  = lightColorPrv.g1;
! F' }! E( x4 F1 V$ W& z) i5 o                        pLight->Diffuse.b  = lightColorPrv.b1;
0 i$ J; P7 i7 s, u9 n; U& f                        // oˉè* ??à?
: O. f! S! [5 a3 ^                        pLight->Specular.r = 1.0f;. a9 f. x; ?3 \. N7 i8 m
                        pLight->Specular.g = 1.0f;0 K) q. g6 C0 L
                        pLight->Specular.b = 1.0f;
4 w; d5 L1 F" ?! D& _                        // àü?? oˉè* ( C7 r  W* |% b- ?& o
                        pLight->Ambient.r  = lightColorPrv.r2;! L' Z% q' i4 i
                        pLight->Ambient.g  = lightColorPrv.g2;- x5 B# a# `6 d0 G
                        pLight->Ambient.b  = lightColorPrv.b2;
/ F1 ]1 u+ G# o* K$ k, `
$ x  d8 {- N& l$ G0 n                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??." ^9 X; E8 N8 C# [8 d0 x, c, h
                        {  h% j, i( |+ S0 S: @9 F8 u
                                pLight->Diffuse.r *= 0.6f;- z# g0 T4 L4 \( H3 ^
                                pLight->Diffuse.g *= 0.6f;) b) g0 b/ X. }
                                pLight->Diffuse.b *= 0.6f;. Q. A9 N6 C$ W7 D% l" C
                                pLight->Ambient.r *= 0.7f;+ p1 z( Z8 o; ~, F  ~5 g) N
                                pLight->Ambient.g *= 0.7f;
2 E  ^2 q3 n# D- U                                pLight->Ambient.b *= 0.7f;
6 ]6 T9 M9 N1 c                        }
' _+ H! b& u( a2 o) ~2 C                       
9 |% r% L+ u3 L#if __VER >= 15 // __BS_CHANGING_ENVIR
- `% S6 Z; ?) R8 q2 M: Z. o. k; i                        if( g_pPlayer )7 w9 g, W1 v5 w" t7 v+ h% i1 s8 `
                                HookUpdateLight( pLight ); - B# U' }: D+ g2 x! n
#endif
; `: g% D" I- d" S                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
  B: T- T8 q# ^% s9 d, S
9 I- U. L  X# s4 y" G  n/ {#ifdef __YENV' n$ r; k1 ~' z- y: `( o2 }
                        pLight->Diffuse.r  *= 1.1f;' _' H+ T/ l& V2 D0 D  d( F
                        pLight->Diffuse.g  *= 1.1f;
, ^2 j2 }& K! n) D                        pLight->Diffuse.b  *= 1.1f;. R* y7 U- t4 W7 q2 N: I& a6 i
                        // oˉè* ??à?
% M9 {: \8 h' P  F. W% l                        pLight->Specular.r = 2.0f;+ Y* d9 d! K! u" v
                        pLight->Specular.g = 2.0f;' ^# ?% q( b$ {7 t
                        pLight->Specular.b = 2.0f;
; E& \0 m) [8 m# h7 k                        // á?oˉ
, I! t: V0 L( z                        pLight->Ambient.r  *= 1.0f;! L. V- \* r7 ?0 d  h0 V
                        pLight->Ambient.g  *= 1.0f;
' Y0 c/ w2 V# {0 [- t6 p                        pLight->Ambient.b  *= 1.0f;
7 i1 m% D( G) K6 D; ]#else //__YENV
/ z7 Z7 `: s; r0 ?                        pLight->Diffuse.r  *= 1.1f;
# M; J! h0 u9 B                        pLight->Diffuse.g  *= 1.1f;
$ ]+ z* ]/ C1 M5 i                        pLight->Diffuse.b  *= 1.1f;! a% W3 J; v1 |2 ~) ^2 \& W
                        // oˉè* ??à?
' i& u) h$ |3 F1 i2 L% b( e4 q8 i                        pLight->Specular.r = 2.0f;3 m# t1 {* \$ `0 K( _
                        pLight->Specular.g = 2.0f;8 }# m& i/ v1 H+ p
                        pLight->Specular.b = 2.0f;
& }; a' k- R4 j" ?' Z* T' c                        // á?oˉ
1 ?3 {1 x3 K5 D! c1 w0 o; H8 [                        pLight->Ambient.r  *= 0.9f;. E# T. L2 B% Y# c$ i9 @; E
                        pLight->Ambient.g  *= 0.9f;4 R: }: o1 o) b2 Z8 P
                        pLight->Ambient.b  *= 0.9f;
6 a; e: r  g' L* B1 y- m#endif //__YENV
5 L! Y$ F% M* D                       
) W4 K3 P9 [7 B3 z& C1 A                        memcpy( &m_light, pLight, sizeof( m_light ) );' ]; k& r1 u" T8 G+ G
                        . T( U8 c5 F8 h" F! w+ F6 H
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
! k( x3 F5 S4 ]                        D3DXMATRIX  matTemp;7 S2 ]# p% c: Z  q, D/ P  |0 w1 R
                        static const float CONS_VAL = 3.1415926f / 180.f;
9 A, K3 U' _2 t0 O. i) N
9 X5 D: w( u/ c& `1 a' b                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
8 ?: E) ^$ b  I, q, U, k  Y7 j2 i                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
+ ]6 K- P5 e5 ^' O# c9 r% C                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
* i4 e( a" |4 C* U3 U) f                        pLight->Appear( m_pd3dDevice, TRUE );
' y& G) P7 Q, Q; J' p! Y, a% r
8 D( X1 H2 l5 D# t# @                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
8 g4 o6 @/ Z9 W4 G                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
; h0 ?7 O3 U  `: C7 C                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 2 ]1 @5 Q0 h$ g& {
5 ]" B9 K! s  q6 U, F
                        DWORD dwR, dwG, dwB;
$ w5 M4 t! J8 F0 j' Q* _0 w' E+ A                        dwR = (DWORD)( pLight->Ambient.r * 255 );0 r, n8 K, X2 q7 o
                        dwG = (DWORD)( pLight->Ambient.g * 255 );% r" I1 F6 s6 L3 k$ Q* O
                        dwB = (DWORD)( pLight->Ambient.b * 255 );" Y3 d- ~7 V/ R5 h4 _
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        3 \' D* Q  `% z' ]
                }
1 c- I+ v9 w7 }2 V6 s        }
: z# j! j+ O& f: {2 C
6 X/ [2 S. V0 z! p* Q        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
3 e: C% C( V3 a: ]( `! m        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) );' n+ C; J- C7 M) h
        ::SetLight( bLight );2 Q4 p6 R( }' T% a$ O8 o* W' a
8 j+ V) T/ R7 m4 e( v
        // ±ao? ?D?í???ó á¤à? - j  n! Y. z" W
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
# I, \0 @, o8 Q        ! c0 g3 U/ `! K5 b( f* _
#endif // not WORLDSERVER
! |# c' O# x$ k; F) q* A}/ N0 M. g- H4 p/ A+ a9 }/ |. X
并更换* V' V0 R  p$ w9 g
Code:
0 ^  G$ X* R, c% F9 C__FLYFF_INITPAGE_EXT$ d& w. O" H6 P1 Q, j
定义
% M; W8 ~- d  u* k. B9 t  @4 P4 v* b; j/ {$ x
+ z) b0 P5 t$ _& G

. {5 ~: {1 j. y% T; r. J; Q1 v, O" @/ F5 ]3 L  @6 W
现在终于删除我的狗屁加速...
+ C2 ?0 M6 m  j1 g2 s
: n% s! k9 F: _. q% Z* b# C
) G# c* a! H  c& K* `1 @
' l% w* v# {2 m- A# c+ L




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