飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
! c1 w" K9 s  v8 @尾翼:
: X% d+ W, [: D$ |  E7 ?( S# d5 v; u2 x7 A* u0 x" Y
代码:8 l! J2 J# o7 ~, x; w: q$ t9 S& K
CWndAutoFood::CWndAutoFood(): ^  O  Z8 Y7 u( u1 ?
{
3 ]0 ^- T- W* A        m_pItemElem = NULL;
4 g4 Q2 V5 L, v$ q        m_pTexture = NULL;" T1 C6 d0 u5 M; X: e1 W( p2 V
        bStart = FALSE;
+ g# f8 a3 P: n! X9 A  I" L0 e}) I2 y# T+ ]: a3 q  e

0 V- {' `4 @7 z1 fCWndAutoFood::~CWndAutoFood()
# S' X' n: T* b% d: ?{
! ]6 d3 L4 e6 C- y$ w# K; |; T        AfxMessageBox( "AutoFood ist gestorben " );' i# j% `4 v$ a* ]- y
}0 P+ B0 u( ^" s) ~& K2 M# [
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType ); |( g9 }5 `5 X' a* ]
{
  K, X6 z7 I1 D% U7 {        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );3 O& E1 \2 s+ j8 r* m: x# q
}
6 o) p4 N" U/ k3 C) ^9 V  y& K/ t$ q& K
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point ): F9 G! ?4 R% R1 R4 c
{/ _7 _/ w4 o$ ?  V: ?
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ i& s( K3 O/ l( m4 U0 P7 E4 E        CRect rect = pWndCtrl->rect;0 }; j$ `- P5 Y. Q. Z
        if( rect && rect.PtInRect( point ) ). u$ d. O3 x( M4 a( q5 ^
        {& v, L+ s5 T, y' {( L
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );0 J6 v8 ~/ R. Z& r9 E' e" i
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
- t, k$ d; ]9 _! ^" C                {/ r* X$ [0 N+ ?
                        if( m_pItemElem )
2 R3 m  X# o' v% i                        {+ E' }8 P9 o9 F6 R& E1 X
                                m_pItemElem = NULL;
. w! m( j' n% u  i1 j# @/ x# n* }                        }
1 k3 E6 [; {; U                        m_pItemElem = pItemElem;# c0 o8 V& n& I6 z; J& s
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
. v: V; Z) {  r9 f* U# N' k                }else{
! R1 _6 \5 _) l! x! c& X                        SetForbid( TRUE );  \7 d$ P8 B4 a: y$ s
                }1 p3 u5 z3 D4 j2 t( a- l
        }else{0 ~1 [% @* F8 y8 B9 i1 w
                SetForbid( TRUE );3 J& P7 a. |) B4 T% z
        }. T/ x! _4 |. ]+ r3 j1 X
        return TRUE;8 t" c* E8 i" I; J+ L4 n
}/ ]0 U3 Q, r( L2 k+ ?- t7 f

$ n) l6 ^% |$ |BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
2 H' e5 |6 `7 _" B* q2 I{; L; o( S  L% Y2 W. B
        switch( nID )4 R% m3 U/ |4 @
        {0 b( G$ C- u+ W9 S2 Q
        case WIDC_BUTTON3:
! E3 [+ b1 L( J9 ]' I# e% }. l                {
8 N+ V) e- V% O) L5 E                        bStart = TRUE;
5 E( U1 d' K- S8 A* m$ Q                        break;
, Q) e( j$ Y% I& B" G+ f                }
' I% g& Z# A5 s1 b) a        case WIDC_BUTTON4:9 D- U  g! N# e' e* q
                {% {) r2 [& D$ b
                        bStart = FALSE;
* u, l, b) m0 x* v                        break;- ~8 e! B. O9 @; O
                }( }; O) g2 S* a) s  |- \3 a
        }# O! y4 W1 i/ A! q2 p0 V& ^
        return CWndNeuz::OnChildNotify( message, nID, pLResult );) T+ B' @1 C3 V4 {
}       
: f1 r7 S/ I5 m  r: x. Hvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
" R# \" |3 p5 D. m% N9 _/ H{
- Q7 h& G( C" h0 b5 M$ H+ v0 C. r        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
) L. F6 D8 ~; [5 X. X/ k        if( bStart || !m_pItemElem )' u5 @' H# Y. J& E/ O' p
        {9 V$ }2 W  b1 Z, F
                pBtn->EnableWindow( FALSE );
8 U4 Q6 {! h& r( Q( Y        }else) D; X8 Y- d3 \3 e/ q& e; J" v# L
                pBtn->EnableWindow( TRUE );
4 @0 B" u: _( H+ h) \+ G* n; w9 j        if( m_pTexture )
+ \7 `9 j0 d  P' _/ u) h! `% Y        {
% D& V; R- `) D                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
, \  D% f7 [4 u, c6 y. v                if( wndCtrl && wndCtrl->rect )
" m8 ]4 w0 _. j; `9 n1 `2 y" A2 _                {
1 j( i( B& v3 N0 J7 O7 F. o                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
" d, C7 C* S0 ]3 \                }* V' H, y9 a. F5 W" T; H* Z. O
        }
, t$ ?1 S$ Z7 Y  e}
6 Z. S  L  Z" g; H" t& s3 U& C6 _+ _; _+ e" }: F
BOOL CWndAutoFood:rocess()/ f0 M; _& y5 F1 ~+ X% e
{7 V! \; U; z2 m8 X9 S5 ?- h5 E
        if( bStart )* [1 y, F" C6 {6 h+ O
        {
# r7 m9 }3 f" i' O/ |3 q8 j8 f                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) ?$ e' K1 N. j& J: O  v. J3 O4 ^                {
1 F* F9 ^) f. }) x1 Z: d                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
" l( J, ]2 v. ?                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
6 v- \& V4 }. @6 u7 `$ `& \                }else{
) t  j) U0 z  d0 }                        bStart = FALSE;3 K* Y- S2 O0 S* P, c+ c& M. U
                        m_pItemElem = NULL;# N( p! x5 M9 C3 ^8 Y7 C% x- N
                }
+ j- d" i+ h. ^. O  z        }
) I7 C# e: q# n        return TRUE;. t, D) i/ |' j) r' J8 n/ K$ W
}) X' d5 `7 F0 k

0 f, O: C0 p" @$ A6 X登录视频废话:% I9 J" x3 R1 y2 n' ]% l
尾翼:3 R3 R5 L0 g7 F$ t! i- g
! H) B% a4 n6 ]4 A
代码:
& Z+ \0 Q. e# N9 v, q
  n2 ?2 S5 [3 U& X% ~) B0 z6 hvoid CWorld::SetLight( BOOL bLight )
/ i. R  d# b& U( [durch
" y+ r9 o6 s' R! ECode:  [9 Z( v4 Z9 j* T% y2 P
void CWorld::SetLight( BOOL bLight )
, M7 Q1 U# K4 z  y8 @- P1 {{2 o  `* I( h. @# Y0 q5 q
        //ACE("SetLight %d \n", bLight);7 z5 S: r2 E) z
        0 p) W! [1 @* ^) F1 Y
#ifndef  __WORLDSERVER
6 t* L! `# W3 `: {5 k        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);# w, M8 F3 U2 h5 ~0 N  n1 C
        CLight* pLight = NULL;" v7 J; O* G: Z3 T  Q
; F/ \. e) w2 v* t1 y1 H% M# t0 `$ z
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
) U2 ~( D6 Z  ?9 A% c- f: W  F: y# \1 U' d! U7 j
        pLight = GetLight( "direction" );
6 S- `( ~) X3 @" Z' L+ C- Q
7 a2 i4 ~6 _0 p" X8 y#if __VER >= 15 // __BS_CHANGING_ENVIR( }6 R/ k" S8 C* e& U4 G* e
        if( g_pPlayer ){7 J" E0 C0 j& T4 r
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
+ p5 _0 j# O7 S! B0 Z3 E3 a                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!3 |0 q- C# P/ \9 y
                {5 }$ W+ R2 M* Q6 w. ]! r
                        if( pLight )8 e+ G; f; Q5 ^) B. k+ J# Z
                        {
% I4 z6 ^' t% ]6 h                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];( Y, H& S& _8 j: p) S; v4 Z
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];. b4 D# s4 K. L, H
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
0 M* L9 B8 Y9 o9 l
  F4 G% `. |: E5 z- J                                pLight->Specular.r = 2.0f;
9 B  |2 E2 M4 o* M- l& B( K4 |                                pLight->Specular.g = 2.0f;! y4 M( ^0 h- q8 z
                                pLight->Specular.b = 2.0f;. _& v! W" v; i
       
) t0 x; R: S$ k4 m  @1 B6 w+ u                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
9 C, v3 n( e  Q$ ^; I7 k                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];. g4 e* R+ B* a# Z+ X( f
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];: l& z3 m; O9 }) v: }: L$ z3 h. R
        ; c+ W0 i% n  l# \  E
                                HookUpdateLight( pLight ); 0 k- \& x; ~# O! L" M" y! m

) P" ]1 r# g; K' \& n  [* y2 r4 U                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
, v9 \+ X& `' G9 X               
5 h* Y2 H" c( M                                pLight->Diffuse.r *= 1.2f;2 p3 B# ~, P9 T* G
                                pLight->Diffuse.g *= 1.2f;7 W  w/ [' B' e' }4 g" y& t
                                pLight->Diffuse.b *= 1.2f;
4 {7 e9 w5 S) [5 ?2 u* ]
. v) l% [/ M; c; H3 b& B0 u                                pLight->Ambient.r *= 0.8f;1 P; N; ]6 Z3 `+ y. |; D! a
                                pLight->Ambient.g *= 0.8f;
+ @8 [7 |# B! t" p% e7 o* }+ ?                                pLight->Ambient.b *= 0.8f;
: g( Q& [7 g& S1 V( [$ N       
1 I! B0 W5 R6 D                                memcpy( &m_light, pLight, sizeof( m_light ) );8 W& {& Z  H6 z- m
) d9 q& e+ d- B) s- y$ h
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);9 ?: C8 I6 m8 w. n0 q; s; _
                                D3DXVec3Normalize(&(vecSun),&(vecSun));4 ?( F% d7 @& }' f7 u6 p
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 7 N! U1 J2 Y0 v5 M6 a) e8 Y
                                pLight->Appear( m_pd3dDevice, TRUE );
( V& @7 D# V3 h; e               
, g% H$ f( N+ j/ [8 s8 `/ P                                DWORD dwR, dwG, dwB;
. v2 A  r. {6 a+ Y                                dwR = (DWORD)( pLight->Ambient.r * 255 );7 L+ h% v  I4 |! {
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
+ z) J( }7 d1 Z1 C                                dwB = (DWORD)( pLight->Ambient.b * 255 );
! b6 ]/ q4 \6 i6 q2 {$ N% x! E                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 H# ]8 x. c0 H: ]) y$ z                        }$ ]  x  {# v: M8 j% ?+ W
                }
, K: U' n' h" b4 L/ y& X! A, |  B        }4 E6 {9 Y, R) x  K
        else
1 g0 B7 {& p/ B2 f#endif
8 [/ n5 i/ J, o1 ^" O9 k7 H) L& Q) B5 Q* j0 X6 h' s% d
        if( m_bIsIndoor )
( S, a* I) O' h* O- g- r( L& ~  \        {! X4 u! X2 o6 G2 ^
                if( pLight )
& f1 `; O2 y4 j" i                {               
& q5 y9 `! O5 U                        // à??μ oˉè* 0 N7 ?0 l: D& z- S
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
/ Y. c, O. E8 j4 W4 \; R* T                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;% J# Z" c. j/ l7 O1 D
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;5 H6 a, X9 ^3 s8 x' m0 W) r" i6 ^. W
3 N% y% Y3 s( }2 X* z0 k) o
                        // oˉè* ??à? 2 E1 ?$ M: f) L
                        pLight->Specular.r = 1.0f;
9 A( W  l6 F9 h                        pLight->Specular.g = 1.0f;# }( `; l9 L! E  s( j5 Y
                        pLight->Specular.b = 1.0f;, q. X& c1 V) i1 C) T
                        // àü?? oˉè* 1 ]! F! ?' ?$ R; n
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
, r/ ^3 o' n6 ?4 p/ n  o                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
( m! t% U$ S7 w: v& {( P; H- f                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;% h* |6 W) P9 c3 O4 ~9 Y' E( @' m
, M1 f+ O5 V0 k+ C5 H* c
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ V  z6 q3 ]! s6 S6 ^& I+ i                        {; M' X/ j" v( Y( I
                                pLight->Diffuse.r *= 0.6f;- }) j- U: f  ~9 t1 I  u
                                pLight->Diffuse.g *= 0.6f;
* Q! h7 \$ F" F3 \  I                                pLight->Diffuse.b *= 0.6f;* @$ W; D! K$ u9 e
                                pLight->Ambient.r *= 0.7f;
* p6 F* d8 E! }" C$ ^" O5 Y                                pLight->Ambient.g *= 0.7f;% U- u9 |& \7 g% @4 o' W
                                pLight->Ambient.b *= 0.7f;! V# G7 v1 B: v+ S; E
                        }' B: V, `8 G# Q  x0 L
4 \+ d) U* ]" u6 T9 x  i
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 d& a8 A+ g) S' P  s0 i6 E                        if( g_pPlayer )% Y# w( S1 i  F3 w8 o$ h
                                HookUpdateLight( pLight );
; Y2 }3 I, J- r: x9 M. U: t#endif
" W7 |, B9 u$ M* S                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
! U/ X$ O+ a' b2 x$ s0 h8 D3 B
' M9 V; ?0 o# S! u2 z9 _                        pLight->Diffuse.r  += 0.1f;
  x) U" m$ @0 P. r; {: d                        pLight->Diffuse.g  += 0.1f;
, C& _- [3 O4 s7 |                        pLight->Diffuse.b  += 0.1f;/ u0 D/ b6 x- r7 d4 m
                        // oˉè* ??à? : C" [* H; a. f1 `6 X8 I/ Y+ q- v) p5 @
                        pLight->Specular.r = 2.0f;
# Z: Y; M: _7 S8 G% J                        pLight->Specular.g = 2.0f;3 B: Q1 W' a) I9 y% a7 v; k
                        pLight->Specular.b = 2.0f;
% q& [7 g0 g$ j( _1 @  h+ z                        // á?oˉ " r; D$ t! P* i/ _" q( G
                        pLight->Ambient.r  *= 0.9f;  N. T4 O; y4 Y/ o
                        pLight->Ambient.g  *= 0.9f;
: W- J' b1 T! y4 I  r                        pLight->Ambient.b  *= 0.9f;
- a8 _8 [! `( L% v: I) U/ d: u% j) c; x* f9 i
                        memcpy( &m_light, pLight, sizeof( m_light ) );
3 K8 [/ I& Z* P7 k& d                        7 H7 ~& t" g! l
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );' y; M: x1 A' c) W/ T5 P
                        pLight->Appear( m_pd3dDevice, TRUE );1 O3 a& `) _- m1 C/ e2 ^
       
' K+ f2 Y  J; q& B                        DWORD dwR, dwG, dwB;7 W. E8 A7 s( z6 n4 W$ ]
                        dwR = (DWORD)( pLight->Ambient.r * 255 );; h/ Z+ _. m6 r0 n
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
* D6 [/ Y( w, B4 k7 v7 c- M$ i                        dwB = (DWORD)( pLight->Ambient.b * 255 );3 E  F9 V3 [( V0 I
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );# S3 e6 D" m9 j  K" T
                }# @  k: X9 S2 U
        }$ ?1 p+ K( f. }
        else
' @1 H6 q$ z% p$ U        {7 y9 D$ [; R, R" V$ p( X
                if( pLight )5 c; D1 Z4 e1 {# Z
                {
4 A, }! H" k! \# S2 P% d               
  Q5 A& k' H, ?                        int nHour = 8, nMin = 0;8 l4 y2 T4 L3 B8 s' r' E
        #ifdef __CLIENT
5 X$ @% l/ o8 B: S1 m% ~& ^# P' n                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 7 [" h8 q: b1 f" x$ K5 F" p( B* k2 S# n
                        nHour = g_GameTimer.m_nHour;
$ l# {* R2 X# i; k" K$ V                        nMin  = g_GameTimer.m_nMin ;4 A- `% e. f, k
        #else
% R1 a7 R& f/ Z. l) H+ l                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.# z0 ^7 K6 o" c! o( L% B
                        if( m_nLightType == 1 )* a* k+ |! H0 m/ ]' z! s  S
                                nHour = m_nLightHour;
: Q7 ]# Y: F& [# `4 x) S        #endif$ b$ M; ^% A5 K# b
                        nHour--;, X- x' A/ r: `0 F3 z
                        if( nHour < 0 ) nHour = 0;
8 W1 |6 m. v1 l6 U2 M/ u5 o# G                        if( nHour > 23 ) nHour = 23;$ i, U+ @, h/ E2 |. V7 ?
% e7 m% V/ [, ~- q
                        //if( m_bFixedHour )
# K; E# u/ b8 _, l+ B: l& O3 O                        //        nHour = m_nFixedHour, nMin = 0;# q6 M; R- m7 c( M; p
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];# M' r9 D8 Z; I2 B7 `
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
, B& |/ d( F6 H' o4 P
* E6 E6 X5 R1 U# I                        //m_lightColor = lightColorPrv;- ]  K) [! |! `# ~% a
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
+ X5 q# Z/ J! K. X) o: f# F                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
, z% R0 n+ P5 d  H                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
$ c- K& m& Z3 k( C; \) \5 F                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
6 [# n" N7 Y! K0 L8 s( k- }                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
$ x+ i' J' p8 o1 _- E/ J; t                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
9 M0 Q# k4 M1 \5 P8 z/ W% k, \. A                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
( M" U+ N! u6 t. N3 ]. [% ]1 Q/ t: ~: o& k( c
                        // à??μ oˉè*
! e$ i9 R, z% R! i7 K                        pLight->Diffuse.r  = lightColorPrv.r1;4 q3 K$ P5 v. u% f+ m2 d4 p
                        pLight->Diffuse.g  = lightColorPrv.g1;: |3 q4 [" t$ @
                        pLight->Diffuse.b  = lightColorPrv.b1;
5 y, y1 i8 U0 C0 H) H0 d' B- I                        // oˉè* ??à? 4 o4 \4 I; U) A" v+ o$ b. Q
                        pLight->Specular.r = 1.0f;
" K8 ^2 @5 I1 a" V                        pLight->Specular.g = 1.0f;% O$ Z; y# g, o+ f5 G3 e; e6 S0 U
                        pLight->Specular.b = 1.0f;1 H2 B1 u" p' q) |# S* ?
                        // àü?? oˉè* + A' J3 y' A! X* s  y& L" |# ?4 M) e
                        pLight->Ambient.r  = lightColorPrv.r2;
! k. K) y" C. e4 m7 G8 I. a                        pLight->Ambient.g  = lightColorPrv.g2;/ A! `( p. b. c, v8 d. H9 d
                        pLight->Ambient.b  = lightColorPrv.b2;& {' o/ L+ W& t  l4 b+ w3 r

. c# n" a; F4 D$ Z1 R5 \. O                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.5 n5 {. b/ G! ?9 f9 [' h6 |
                        {- `) |. F/ l' w: K8 V, U
                                pLight->Diffuse.r *= 0.6f;8 z7 T+ {: y- \
                                pLight->Diffuse.g *= 0.6f;
, A% k( m& c* V- `* r                                pLight->Diffuse.b *= 0.6f;  ]/ P# h) K! U& @
                                pLight->Ambient.r *= 0.7f;
4 j" f5 q$ l' S: Z6 r% b* Q6 B                                pLight->Ambient.g *= 0.7f;+ j# W1 g. m( ^$ x5 n
                                pLight->Ambient.b *= 0.7f;9 m: C8 j5 @1 O/ O0 A
                        }
, O/ W' {/ z2 a6 Y2 Z3 B6 [" K                       
8 S1 R* g$ R2 \' y8 @#if __VER >= 15 // __BS_CHANGING_ENVIR( f- w; j0 w+ f; `4 z# h  T
                        if( g_pPlayer )$ S2 x# x  j- E
                                HookUpdateLight( pLight ); , O# V' e* b$ g
#endif' X: x, ^, C; [7 u/ W
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
  d: t$ R4 `0 m
. b; a+ [- |) g! }; ~8 Y" l#ifdef __YENV
+ q' J; v2 X0 l                        pLight->Diffuse.r  *= 1.1f;7 J3 {( e/ s- r9 U: X
                        pLight->Diffuse.g  *= 1.1f;
2 O0 P  m/ r+ m4 P) L; m                        pLight->Diffuse.b  *= 1.1f;4 {7 f9 Q; E# H8 I8 C. q
                        // oˉè* ??à? * A5 k. \3 a  a6 v- G' a
                        pLight->Specular.r = 2.0f;# S$ \8 j- b) `# o0 E5 o6 M( H; @
                        pLight->Specular.g = 2.0f;* ]& m# t# _3 Z7 Y- B9 j# t1 o
                        pLight->Specular.b = 2.0f;
' I5 `3 e# J- y* D; Z                        // á?oˉ 3 c4 h; F$ r$ F: ?  H1 n
                        pLight->Ambient.r  *= 1.0f;
' v' V% p  J1 q                        pLight->Ambient.g  *= 1.0f;& ~  \1 _& c; i$ P4 Q
                        pLight->Ambient.b  *= 1.0f;! I! R/ Q" ?9 W* S9 _/ a+ E. J- K
#else //__YENV- q+ ]6 U2 ~' i( M
                        pLight->Diffuse.r  *= 1.1f;! f) h" Y/ Z* O. B5 d3 e
                        pLight->Diffuse.g  *= 1.1f;
0 T5 z- `+ y3 B                        pLight->Diffuse.b  *= 1.1f;
; v/ R( p. l" I; K2 r$ F' e- o                        // oˉè* ??à? : t4 Z% h6 H, i$ s: J
                        pLight->Specular.r = 2.0f;% s' }' w$ S# ^( l
                        pLight->Specular.g = 2.0f;
$ m, M; o! j* e  T' }% H                        pLight->Specular.b = 2.0f;
5 n9 s9 y! K  b; \                        // á?oˉ 7 j+ M# ~$ g) ^' ^( Z1 }
                        pLight->Ambient.r  *= 0.9f;* z+ ~, C! O; L+ d: N6 l5 ]; y
                        pLight->Ambient.g  *= 0.9f;: ^+ a& x" S1 ]& w9 l
                        pLight->Ambient.b  *= 0.9f;
, w# C2 F+ F( Q. u#endif //__YENV ! I! W( ?* x$ A8 l- L' O
                       
+ y0 a6 Z% V, R- W5 s                        memcpy( &m_light, pLight, sizeof( m_light ) );& O+ X% Q% q+ R3 R
                        ! s# R  D4 \. |  |: J
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
5 p' D. b' E' Y) {                        D3DXMATRIX  matTemp;8 R" R7 _+ Q! B- I6 P
                        static const float CONS_VAL = 3.1415926f / 180.f;
9 {$ L- d  X! b1 D! r& U& x8 J, @* S( Y: D7 w- U/ i
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
' t: j$ x$ y, ^" z                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
7 f2 _8 i; _3 }+ w" V6 _) _0 o7 e                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
* `% v; @  W5 T1 v6 |0 J                        pLight->Appear( m_pd3dDevice, TRUE );3 ?& F# p7 e* Y8 y8 @5 C% `- m
3 C) N/ w5 ]2 W7 g; R6 {9 g% I; U! |
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);( t8 x+ D& Y: F, }: z" J; Z
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
- Z- j" D- N3 V' I/ c" Z                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); & I. D, ^! L* |7 |$ I" |! X, H/ ?

% r; B9 G, x6 q8 `  }+ O: n$ t                        DWORD dwR, dwG, dwB;
6 X* v# d# B2 U7 n  [6 }% F3 o                        dwR = (DWORD)( pLight->Ambient.r * 255 );
' b  Y$ V7 d7 q% i0 z. @                        dwG = (DWORD)( pLight->Ambient.g * 255 );
6 @6 ^6 e5 K4 }9 u! m4 u/ n                        dwB = (DWORD)( pLight->Ambient.b * 255 );
4 j2 T9 x* _2 p! d( E8 s0 ^3 j9 e                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        $ _. \; y7 \" b! f! t8 Z# M  n
                }# D: E4 M. O/ R
        }* c3 _9 e( n$ y3 n& Q

" R! O# `" t3 B% ?) r$ B- K        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );( Z4 S& G' n- Y- {: d
        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) );3 k) r' T! R' j' J3 H5 f4 O* C( v) H
        ::SetLight( bLight );
7 _# T! L0 V% L  Y0 l# H4 Y
+ l6 i- e( B# f5 T8 M# i* z        // ±ao? ?D?í???ó á¤à? 4 @7 u' |+ G) e$ g5 R& R* f: f
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
' u' E- R+ J2 `9 \2 e8 r* }        7 w2 x4 E2 ?* @# k  }& [
#endif // not WORLDSERVER
1 `; v" s7 f' h}7 J- ~8 l% Y9 J/ ]$ F( U
并更换, ]- C0 ]2 k' K0 L+ E" W6 p
Code:
7 f+ J' G! y' b* Y6 h__FLYFF_INITPAGE_EXT: H! o) Z9 C8 I( {# o! }
定义/ _2 E4 }4 s* a

$ \' r- y3 _$ j% A
# b$ D& O: R4 M% ^
# Y2 I- F  g( ?$ J" {- T2 k# T* g
现在终于删除我的狗屁加速...
" ?7 v; B% f! T+ X' A0 N; `- C
* ~4 g5 F6 W7 J7 K7 @. Y& A) g" F7 ^9 Z/ q6 l# G( I
& G' [. b. T+ b$ \





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