飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
7 ?  w! n7 r: t" U1 H" ]尾翼:
  w: a; m5 n! l4 [& Y% ^& c( L) ~0 j0 z0 E; q: N+ o
代码:2 C- Z% m- B2 j5 Z
CWndAutoFood::CWndAutoFood()
. g$ ~& l1 h6 m7 |1 W{( M, U2 o, U$ f/ b
        m_pItemElem = NULL;
( w5 X, F. G/ t0 i3 b. d2 m        m_pTexture = NULL;) K  I6 }% Y0 k: R
        bStart = FALSE;
, c  u# S' j6 }}
% k& o# t4 d* B. z" B, l& I( @" ?! r) g, ~* c
CWndAutoFood::~CWndAutoFood()
. C2 Z/ ~! C4 n) M{
2 A" k4 ^( }0 c8 K6 G        AfxMessageBox( "AutoFood ist gestorben " );+ a5 I8 u5 X' h! w1 w
}
* v. b2 `/ k2 V6 z9 [2 zBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )8 M  s3 G6 i. O( E
{7 r; K) `# f. f5 j/ z
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
, |* A. W/ V0 |5 j) n( K) _}1 n5 B  _. ^  d1 C

, ]7 b6 g3 T7 X/ Y) |BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
$ k! Z5 {: S7 L. c{$ q2 R% ]4 J! ^/ K/ C
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
, }/ u( j, a# j1 y- Y+ f        CRect rect = pWndCtrl->rect;
- ]: n5 b' |" y- n        if( rect && rect.PtInRect( point ) )  z& u2 ]. h  {) |
        {$ `# a  i2 o% r3 f
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );0 o; K3 N' U0 ^9 w5 c
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
4 l" |' H! ^* [/ K( u0 r: L                {
8 }: Z& [9 b' G0 W                        if( m_pItemElem ): {/ ^5 Z: D8 M) i3 n$ E9 R& O
                        {
9 p8 G8 D8 q/ A. [/ X+ Z$ s                                m_pItemElem = NULL;
5 f+ D$ i, A; B; h                        }
7 d! v* B, v' l7 F! _! X                        m_pItemElem = pItemElem;
+ Z6 t3 G2 T, L3 |2 ]                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 E1 w% J# t" g                }else{; j, O1 {" [; U( X7 k$ d/ D( H
                        SetForbid( TRUE );
, e+ q- H# ?; Q+ t- Y$ t                }: f5 W7 v% h3 u! ]
        }else{
, c3 l+ O( c" f                SetForbid( TRUE );0 Z) b1 \7 L* q- |' n
        }
. D5 H- [6 i4 n5 L$ P        return TRUE;$ O% c2 i8 p% d; i
}
2 D" R% b2 c# N: A6 ~+ l1 |% ?0 z3 h2 B3 H. x; b8 @
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )8 U8 n7 p# O& _9 T1 T
{7 ~% ?0 H8 I/ ~1 e0 A
        switch( nID )0 f$ h2 C5 ^/ m9 w
        {6 p& I) j+ m2 a/ Y  X/ J/ d" j- x
        case WIDC_BUTTON3:
# O9 n# j! {' p  J                {0 s7 F! e* P0 {1 ^
                        bStart = TRUE;
* `1 b8 O; a- ]  i9 K                        break;
$ ~4 Q; Q) |- S6 n1 X% r. E, U                }
* G% k3 V8 _8 F/ W        case WIDC_BUTTON4:- P$ g5 ~% \3 t5 E, t9 `
                {
# ?) {% b) n% U0 n% D                        bStart = FALSE;) K1 K  S. n0 R4 h' Y+ j& i
                        break;
) E+ n( b# ?7 I1 [                }" u# Y/ H5 M( H; E+ P. M% |  g, L
        }
( a" F. y8 `5 {) U/ l+ {7 Q( [" R        return CWndNeuz::OnChildNotify( message, nID, pLResult );: S5 }  Z/ m. K1 w4 V
}        0 w$ J6 H: a; s4 Z. \$ }
void CWndAutoFood::OnDraw( C2DRender* p2DRender ). S0 Y) X. |+ p5 S# V
{! {. S& z  s9 g2 I" x& D+ N
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );& g! a3 ?" Z& L0 `5 Y2 D
        if( bStart || !m_pItemElem )0 W; k. u0 E  [+ t. m
        {
/ P1 ~# S( ~2 X8 |) w                pBtn->EnableWindow( FALSE );, r/ {( B3 h# C! r8 R4 I( \7 x- D
        }else
3 C& k/ o( Y3 V! ~) `1 X* v                pBtn->EnableWindow( TRUE );
, ]5 v8 F( W9 j0 P, H# F        if( m_pTexture )5 e2 K) }! `! Y. {, @
        {& ]. t' P: R+ A. l% y, k% ]
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );, b( g* P+ F+ i1 R6 T; l
                if( wndCtrl && wndCtrl->rect )- _  V& C; k5 j: n
                {, w& A/ N- v# b' R/ w" ~' S- g
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
3 N" h+ i# D; `* D                }# a8 Y* j0 s9 g: i
        }/ f2 t& v1 l7 z( |' T6 y# s2 [
}) }" _8 ]8 D5 ]3 q

2 f: y& u8 k* ?+ {# L. j! NBOOL CWndAutoFood:rocess()# ]* a$ W8 G4 U" ?. t
{
; J$ G; G. P" D& F$ @# {        if( bStart )' @7 U1 }4 ?. o" d
        {; U) X( s, W; C& N% g5 Y/ ]
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
( _! e6 w! |) ~6 Z: N( W                {" a+ X0 N: Z- ]$ ~+ y* B/ r
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )" c( u4 }. @8 `2 ~7 A7 U
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );3 [  e6 R( u9 U$ p( ?( V
                }else{, Y4 l; J# v: V# M0 p. G4 `
                        bStart = FALSE;
) ^  P+ m/ }5 Q( n' X! T                        m_pItemElem = NULL;) E. m" [' U. r- O1 K9 [
                }
3 C1 k0 m8 n* v3 F. Z/ J8 ~, Y  {; b        }- a  [4 J) H6 @9 K
        return TRUE;
& E) F0 A1 X) i8 l& W0 [}
. X" y6 \( a% @' g: S9 p" z3 |) V) o/ X! [$ g; G: w
登录视频废话:
% ^) n5 y$ T3 r  {- k尾翼:5 s1 ^3 g8 A4 s+ k' U

+ s, p$ @3 n+ }; q5 A# V# j  i代码:
- {! W/ z5 m3 w+ I* q8 K9 ], d& Z4 \9 ]7 I
8 d  [4 J* j6 Q  g* {void CWorld::SetLight( BOOL bLight )) w' I% R6 J! B4 p5 T
durch+ Q7 m8 a# B4 _$ l6 ?) l
Code:. Q$ V1 B' m+ j4 y% \0 P( ~( c
void CWorld::SetLight( BOOL bLight )8 G, R0 U) M" |
{
  C! r# c/ d& r; C4 B1 K, w        //ACE("SetLight %d \n", bLight);! J) _* q; {4 i
       
, [/ J* q* A3 n- G' a#ifndef  __WORLDSERVER
! [8 c. V5 Q9 H) Z  K* J        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
( z0 B7 V1 Q$ `' ]% B        CLight* pLight = NULL;4 |9 b. G# o3 u1 j' {/ e2 U6 ~
$ i% H5 z$ q5 N4 Q
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
, Z( e5 N- Y# A# N. W' S  j  G8 E
        pLight = GetLight( "direction" );
, ]. g+ m7 r" F$ a4 x! i. i6 s/ ]4 P
#if __VER >= 15 // __BS_CHANGING_ENVIR8 b3 t" g+ c, v  z
        if( g_pPlayer ){. k3 I' a  [- \* z0 C3 a" u6 b
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
9 _/ o( E/ Z- C1 }                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!( n7 h8 ~# A8 o1 E  y1 R
                {
+ q  _+ K3 Z/ l8 q                        if( pLight )$ z* h* H/ |: o
                        {
( m  X% ~4 H. f) _                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];: d5 T, ~5 m2 A7 G* B# Q! M
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];2 y/ \; t7 k7 m; o
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];' T4 O3 L3 h# `$ v2 K5 H
! E8 |  [# N. {$ q
                                pLight->Specular.r = 2.0f;& X* K  H( I5 b/ a/ Q8 S2 j
                                pLight->Specular.g = 2.0f;
2 o/ G: [. ?% N/ Z                                pLight->Specular.b = 2.0f;" t1 u# o( d, C
       
3 a( y# h. l* _* p0 A$ A+ w6 E5 E                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
8 c/ K* M1 i5 I4 A                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];$ b5 u( T; r8 {4 i8 Y
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
# w3 Y8 _2 K6 |% _! U, ]        1 M8 x# r2 E9 Z% G
                                HookUpdateLight( pLight );
  l- Z3 ^" y. k. X
, m0 D- c! W9 p3 Y. o                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ D8 W8 M9 B& z/ E# z* k               
/ I& v! \; T8 `; y                                pLight->Diffuse.r *= 1.2f;% I' k/ j: z' ~; X; k2 V
                                pLight->Diffuse.g *= 1.2f;
+ y# z( Y7 F6 q/ F                                pLight->Diffuse.b *= 1.2f;2 L' V" B0 N6 }8 m0 J

+ u( T* g0 Y7 P/ R  e/ u& m                                pLight->Ambient.r *= 0.8f;. k7 y* S, F: ?4 C
                                pLight->Ambient.g *= 0.8f;% j9 R: {+ X# s  O  ~3 _& K
                                pLight->Ambient.b *= 0.8f;
( u( P3 o9 S4 v7 v, b% X* J$ x; |        4 j! x0 H% Y. c5 f
                                memcpy( &m_light, pLight, sizeof( m_light ) );
* `- M/ W1 Q$ g& ]2 B4 D
* D* [* ?5 A( y                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ a2 R8 ^& k! H& i) [  e; m1 V                                 D3DXVec3Normalize(&(vecSun),&(vecSun));" k1 C* i. Z8 c9 N0 c
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 9 V  K- j) |7 @- m
                                pLight->Appear( m_pd3dDevice, TRUE );
# l1 |2 i1 r8 t/ E               
9 J9 l2 _6 g" {0 G, ]/ e                                DWORD dwR, dwG, dwB;0 I! Y; y: k/ X7 O9 U; {; x$ h" M
                                dwR = (DWORD)( pLight->Ambient.r * 255 );0 c1 f2 G# D6 e9 U
                                dwG = (DWORD)( pLight->Ambient.g * 255 );0 n  Z+ a( i( G6 O6 h' V/ t
                                dwB = (DWORD)( pLight->Ambient.b * 255 );% L& Y# t3 {7 Z
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( ]$ u; S) Z6 i5 N                        }7 F7 z) F) w% @5 {. V
                }/ T: V% e" N- {# k* j6 k; C  r
        }% [  J! U) u7 E5 ?( r5 i4 X7 @
        else
7 T9 a6 G; p+ k+ ?2 j# c" E#endif & o! N  I2 b* {, N- i  N+ g4 z
$ |  Q3 b9 Z) w3 T& }# z
        if( m_bIsIndoor )  T" Z! J% _. P' C% r
        {
* |3 G# C; _  b: N7 S                if( pLight )3 m& n# J1 w- `+ e! `9 u
                {                " b( S* S& }4 y' D+ s9 F: t  o2 P
                        // à??μ oˉè*
6 K: U9 z( R3 L' I. j                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;1 [; t  ?, {  u
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;) F% E$ y0 {5 m$ Q2 i+ S' |: Z
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
# T! J  @, P0 B( a# i& U5 v
& @: Q& j2 \0 ?# O2 }                        // oˉè* ??à?   w% p) f$ u* o* d# J
                        pLight->Specular.r = 1.0f;
) I, r; _. O) t2 X* ^7 B' ^( v                        pLight->Specular.g = 1.0f;
9 }6 R" h- L7 O& W( t) C  u5 O                        pLight->Specular.b = 1.0f;  {' H, l5 U" y+ {( p. A$ F$ J
                        // àü?? oˉè* 4 `+ U3 `9 C* t, y$ v9 z. C4 A
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
7 |9 U) M: m3 K4 e6 Y0 \7 e7 b2 t                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
$ I" E5 c9 f: M+ A' U                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;2 G" Z# n4 y$ r  r" ^

& O, \/ ?7 V' D2 S( F  a                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! D. Q( j  Q4 E                        {; V2 b" c, [1 j; `/ X7 \( n
                                pLight->Diffuse.r *= 0.6f;
. q- b/ m/ u8 Q6 d+ C                                pLight->Diffuse.g *= 0.6f;
$ B4 ]5 m. {! A- k0 X1 \! S                                pLight->Diffuse.b *= 0.6f;* F9 n1 n0 f6 u0 p6 G$ T
                                pLight->Ambient.r *= 0.7f;; P9 M7 X2 d; m% X5 H
                                pLight->Ambient.g *= 0.7f;
0 l5 J1 E. ]4 ^' m                                pLight->Ambient.b *= 0.7f;
+ s, q0 V+ n, ?, r3 w! z" l                        }
  g! t5 C3 K( i4 O* i5 e
8 H$ a1 m9 q9 `9 D#if __VER >= 15 // __BS_CHANGING_ENVIR$ L8 U! O% y. i* U) M
                        if( g_pPlayer )
5 d2 T5 i9 I5 ^                                HookUpdateLight( pLight );( L- T' H$ ]# E0 ?$ U: c1 J, y
#endif' {0 l3 a4 H& x) W% F0 V! y0 h2 G1 S
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );) `2 n8 q: W- Y

; \% ]; V4 j! U0 N1 A                        pLight->Diffuse.r  += 0.1f;
: N  }8 \0 Q! y+ e  d) V6 `$ p                        pLight->Diffuse.g  += 0.1f;
& v3 ~+ k2 `% @% I0 H, B9 ^                        pLight->Diffuse.b  += 0.1f;
8 f9 U+ ?4 O! o9 n8 D                        // oˉè* ??à?
' {* G& r* y1 v# D. U6 e! |+ F, K3 D                        pLight->Specular.r = 2.0f;2 q7 |# X  T- b/ f$ s9 y
                        pLight->Specular.g = 2.0f;% y' [! t) x2 D% Q) F
                        pLight->Specular.b = 2.0f;' E0 D: N5 {+ `- p
                        // á?oˉ
. Y% U' I" }8 w- P4 P& B: k9 M                        pLight->Ambient.r  *= 0.9f;
: s% v# y) D/ }; A' }) `  F% c, S                        pLight->Ambient.g  *= 0.9f;
  o5 u8 F  q5 r+ V# \                        pLight->Ambient.b  *= 0.9f;: g' @/ ^/ q# o9 K" }0 g4 U7 o7 f

8 ?6 ?- ^5 }/ K" w2 I: \2 X                        memcpy( &m_light, pLight, sizeof( m_light ) );
0 T6 W5 }2 f7 e                       
6 u$ U  s  M8 a9 r+ b5 O- h8 z" x                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );" _2 u2 a- ?: Q* |& \: r6 |
                        pLight->Appear( m_pd3dDevice, TRUE );
4 m0 {; k  F" I9 f1 Z        % q, V5 `6 n, g/ t
                        DWORD dwR, dwG, dwB;# y0 e0 d7 e7 {, F+ E
                        dwR = (DWORD)( pLight->Ambient.r * 255 );& Z2 B2 D+ L) C) a
                        dwG = (DWORD)( pLight->Ambient.g * 255 );7 f( b. J! C$ H
                        dwB = (DWORD)( pLight->Ambient.b * 255 );; `* `& u3 M/ ^3 X# s: `7 W
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );8 y* Q0 g; w5 y" d. Z# D7 y/ m5 y
                }4 @& a6 P4 c$ a3 E
        }8 N7 m; |, c3 |7 u' `
        else; J! \6 ^7 O! C( X- i& U4 D
        {8 u& L4 |( i! s) D
                if( pLight )- ~6 f7 w+ K! k, o+ u. n7 h
                {- |" D- S. Z3 v
                $ R7 `4 ]3 y; E3 G
                        int nHour = 8, nMin = 0;
$ e& ~, D% {9 [3 @' `; s        #ifdef __CLIENT
2 ^( J  V  Z% r1 p, O  Z                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. . w5 t" Y% e- C8 ?. m2 o' H
                        nHour = g_GameTimer.m_nHour;* e9 Y/ E4 v7 r  T
                        nMin  = g_GameTimer.m_nMin ;4 L% x2 x5 z: L! O
        #else
8 }2 U3 C; Q6 M/ N/ m                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
9 _: g! X4 Y5 ~                        if( m_nLightType == 1 ), b4 B& ^5 C3 L
                                nHour = m_nLightHour;/ x) i% G* |( K
        #endif
( k% |7 f* r) L/ ~" v4 h; R9 }                        nHour--;; T( O) T( b$ S+ \# O  [
                        if( nHour < 0 ) nHour = 0;
" x  j' d& ]0 B3 ^( J9 z                        if( nHour > 23 ) nHour = 23;
. f( ]; b' J% M/ C! R( R- a0 B( r/ r" Z! F
                        //if( m_bFixedHour )
& _& [. U. n/ n. ?- d                        //        nHour = m_nFixedHour, nMin = 0;  _, q/ R* E1 {& {
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];# [% Y# k+ V4 _8 W+ T2 M0 ?! D
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];; p8 ]: H% d6 j
$ ~# n$ a4 f7 |% h# G
                        //m_lightColor = lightColorPrv;, q, Z; Z  i4 ~0 U5 ]
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
( Y, {$ k0 I+ L6 u* p. G: X2 F2 R                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
) ^  @( ~) o! p% k% j! s% D4 y                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;. F/ b( F) [, ]- Q4 X
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;. ~+ m0 G+ O* d) c- W# ^5 G
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
! b' {# u9 Z) X6 s' T1 O, K/ a                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
" G% \+ v; s, b9 V: g" {                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
- o( y1 V7 V4 o# W
- p# _3 \2 A% {1 A. u8 k                        // à??μ oˉè*
  P! V, r) Z# t# w* c( A                        pLight->Diffuse.r  = lightColorPrv.r1;
- ^7 D! c! a3 e5 ^                        pLight->Diffuse.g  = lightColorPrv.g1;5 [1 w. R: V  R* A% p
                        pLight->Diffuse.b  = lightColorPrv.b1;
6 ~1 o2 T9 B8 j5 G6 G# L                        // oˉè* ??à?
( J/ r* z& W% [( Z6 N                        pLight->Specular.r = 1.0f;
. W; Z! z2 X. m8 d: ^" `: ]+ v                        pLight->Specular.g = 1.0f;
8 [5 i# X  e8 A4 X& b) @& X& J6 _                        pLight->Specular.b = 1.0f;- \! v  J4 B4 z0 a! t/ m9 g
                        // àü?? oˉè*
# @+ c0 `* D. b0 _, b" l/ p' V                        pLight->Ambient.r  = lightColorPrv.r2;
6 f! j2 `/ H3 x7 i                        pLight->Ambient.g  = lightColorPrv.g2;; v9 G/ e$ ?5 m2 p8 Z  m: H
                        pLight->Ambient.b  = lightColorPrv.b2;
# v7 q4 a4 R; A# }  q  \% o/ E+ G) s: c  p. |2 P2 T+ S
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' |- t& I( K  g2 g                        {
* |& j" U) q2 r, p. O                                pLight->Diffuse.r *= 0.6f;$ j" T( D5 s2 N3 B( O
                                pLight->Diffuse.g *= 0.6f;3 G% {, W! n% I2 z) C3 x1 i' j
                                pLight->Diffuse.b *= 0.6f;7 Z0 N. w, h- ~% f/ C" i4 g
                                pLight->Ambient.r *= 0.7f;8 w9 Z( Y! s) \
                                pLight->Ambient.g *= 0.7f;
) K0 H+ ~( ]( a/ w                                pLight->Ambient.b *= 0.7f;
' T* K# h$ [* d2 p1 h8 K                        }
9 a1 m) j! X; U3 t                       
8 a+ ^( R$ V' C+ d#if __VER >= 15 // __BS_CHANGING_ENVIR
: y+ P0 I8 x4 v* a# K3 P& m                        if( g_pPlayer )$ |& \. f2 Y0 C* G
                                HookUpdateLight( pLight ); 2 ?3 G4 a& U( Z4 a% S( C( r* b+ C; g
#endif1 I! S3 ^  L# S& V6 t, s3 y3 I
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: ^$ @( g( G) d9 o# e
' W0 L4 M0 h2 ?1 d; U#ifdef __YENV7 r8 l& k# k. J8 N2 W
                        pLight->Diffuse.r  *= 1.1f;9 e+ E# P9 M7 l; e' _0 T
                        pLight->Diffuse.g  *= 1.1f;
# E' `8 l! l; V) y: f4 N0 U9 z2 v                        pLight->Diffuse.b  *= 1.1f;9 b9 |; |% E% q: S. b) E
                        // oˉè* ??à?
9 l  K" d8 |6 R: A- u5 s4 F3 c                        pLight->Specular.r = 2.0f;( }4 q1 C. h& }; |
                        pLight->Specular.g = 2.0f;
3 Y0 R0 ]% n0 m( j: V$ A: z                        pLight->Specular.b = 2.0f;! c  X: ^& b8 W! ?
                        // á?oˉ 8 Q. _: Z5 l( H; }/ B1 w
                        pLight->Ambient.r  *= 1.0f;
/ e0 l* e8 P3 I' U, u                        pLight->Ambient.g  *= 1.0f;& _" Y* W( |8 A$ V4 V* _
                        pLight->Ambient.b  *= 1.0f;3 \- B/ }+ K: X
#else //__YENV
  u  I. S  H4 H* @$ {3 L                        pLight->Diffuse.r  *= 1.1f;, S4 p- G3 I' R/ P4 _
                        pLight->Diffuse.g  *= 1.1f;
/ M1 e8 E+ F4 |% k! w                        pLight->Diffuse.b  *= 1.1f;. m$ X7 T' E3 d2 P1 b2 X
                        // oˉè* ??à?
" ]! ~) O$ A0 ?/ l1 ^3 K& L                        pLight->Specular.r = 2.0f;
* E& `# ~5 j- Q& P- h* L                        pLight->Specular.g = 2.0f;. V! K( x0 i4 }* X# x8 W" q* g
                        pLight->Specular.b = 2.0f;/ u$ A; w/ ]8 a; E
                        // á?oˉ * M) Q, ]3 J8 d7 o7 @
                        pLight->Ambient.r  *= 0.9f;
  y; Q- u8 w. [                        pLight->Ambient.g  *= 0.9f;! r* t5 A6 g! e( w' O
                        pLight->Ambient.b  *= 0.9f;$ Y5 t6 P. j9 W$ |
#endif //__YENV
3 f  H4 O$ A( z& @( i" h8 C                       
# X7 b! m( ~, ~- N  d; p                        memcpy( &m_light, pLight, sizeof( m_light ) );" K: B; n3 x8 Z8 M) D1 @' I
                          j- z, F  E9 s8 R) d# m7 S/ [( v
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
7 D: j- c7 q8 Z. X                        D3DXMATRIX  matTemp;
9 H, q$ J. n" o: M# C                        static const float CONS_VAL = 3.1415926f / 180.f;
/ ?8 k2 u/ Y3 }2 w. B9 f: H5 B% m. _8 H( \% z0 z) ?
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
) M+ M2 U3 ~: s6 U, k6 r                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);# L! m( B% F6 y$ g: x1 q
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
9 c! S' }( q' x' I5 z                        pLight->Appear( m_pd3dDevice, TRUE );
+ }( F" d6 t: g3 Z' `
2 N4 N5 X, o$ _                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);7 Y: C4 y0 |  b- ^2 X4 D- ?  _
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
: M: _6 k( N7 ?" H                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ K/ |5 u( `* Z/ N
! x3 t/ `$ l& b$ I3 j0 |                        DWORD dwR, dwG, dwB;
, }3 [0 s' j* Y8 B                        dwR = (DWORD)( pLight->Ambient.r * 255 );! q. f/ }4 n) x6 k5 I
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
' E$ i  ^: Z7 }2 U6 I! `( I                        dwB = (DWORD)( pLight->Ambient.b * 255 );' ~+ e- X; A+ O
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
' B$ y4 F' P2 s6 W' T                }) L  f+ h0 {" Z" i5 M- Y
        }. _9 d3 A3 ?. l( n- L3 ^( X# i

  e1 b) Z0 i+ C, D( {" z5 o. z        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
  p( `$ M: n. |0 Y. a, `- |        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) );
' r/ q% l6 H: s0 C        ::SetLight( bLight );9 m/ M; R4 k( r. Y& @3 x
. h$ e! P' g8 h7 H& Z+ a; h! C
        // ±ao? ?D?í???ó á¤à? ; D- A- Y8 n5 g: K8 q- E) a
        m_pd3dDevice->SetMaterial( &m_baseMaterial );# B- R$ V2 O3 ?4 W4 L0 L
        1 D. Z2 x* }% b' b5 E
#endif // not WORLDSERVER# R1 j" N5 p8 P/ @* U* T. ]
}
/ {5 y% O; S4 i; l并更换# G0 p' ~' M6 Y
Code:
6 P6 ]8 |3 l1 X0 m6 r__FLYFF_INITPAGE_EXT5 K$ ?2 M% ^5 J* z1 T/ S8 A0 n
定义
8 k9 \. J3 P2 O$ Z! v7 |9 L! Q4 n1 P8 K4 |7 ?
& m# v  \+ Z/ `- _9 j' p, i$ _7 W
3 F0 }7 D/ `, i! w( u% }, _
" P: V: E& u, ]* I( Q
现在终于删除我的狗屁加速...
9 [: A5 D8 t' E4 r% X) L" M8 f7 [+ U
' u7 h5 t9 {2 K) b% S& P
6 K3 c* j5 R% W" O2 A2 X; g( {5 w% l% T# u3 P7 u$ r





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