飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
$ ]/ \( r4 ?5 i! h) y" b7 z7 B
尾翼:
7 G2 O" x* t4 _0 x6 D7 n+ S7 g
8 G. K2 @2 F0 V! d; j- f5 b
代码:
# r1 X, D' m9 r4 N
CWndAutoFood::CWndAutoFood()
z9 @ \' B: `9 i
{
; G3 t$ l9 }0 }' o; k
m_pItemElem = NULL;
# L( J- v- u% N6 ?
m_pTexture = NULL;
: M# Q- n3 @1 |1 o( P- e6 n3 A
bStart = FALSE;
/ L1 T9 \, q0 _& v
}
( k" H4 {/ G# `* @- ?4 x4 l3 v& d5 R
6 c9 \3 d7 `" p- [) w1 K# e* S2 Q
CWndAutoFood::~CWndAutoFood()
3 T9 n2 Z3 O! L3 v- G! r6 v
{
" k* T. u \+ h9 T- U2 w) Z
AfxMessageBox( "AutoFood ist gestorben
" );
% v9 Q( j- c. _: l3 K/ f
}
& t& n1 ^6 ^: S
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
3 F/ ?$ g2 _ G! K
{
- C3 m1 U9 h$ f/ J" p
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
4 b9 s3 J4 ]* Q) Z; f( O
}
. y7 C, U! i6 R8 B
8 D+ l- w- y# l( x* w" c% G
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
, T! H u- K9 i0 {; [, @
{
% n/ j5 m* i v: E
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
I6 L x& ]6 ^5 X& k8 |* q/ ?7 c
CRect rect = pWndCtrl->rect;
# {8 j; e4 h# \' N2 _& S4 y* J4 Z0 o
if( rect && rect.PtInRect( point ) )
, V4 d' H% H& E7 {$ r! d
{
; S. ~6 v9 F8 G" L. M& U; K- j
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
. _; q. p* `( L9 d' w/ O
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 d# x2 N2 F$ I0 k( h; k
{
3 J: r( a9 W \. G; r
if( m_pItemElem )
" _6 d9 ]5 k/ w2 T5 V! `4 N: [
{
, |6 d' t+ S. b0 E
m_pItemElem = NULL;
/ t- v% M5 B+ _! V( \# Y w9 K$ X4 i1 z Y. _
}
0 E$ A( T8 y, E; Z* |
m_pItemElem = pItemElem;
9 G+ q1 ^" x+ J
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 K$ G9 K: e7 ~1 R' [+ d/ Q; s, n2 h
}else{
$ J" W8 d$ M/ A
SetForbid( TRUE );
3 O+ _: c7 ~ Y
}
?4 |% Z. X" G; G! e4 X
}else{
; C5 V! H' l( [
SetForbid( TRUE );
# h! i* B! R$ `) t/ } E
}
) _7 d* S. i# z [+ n e
return TRUE;
# V Q/ R* O; F5 a; @5 A2 o
}
3 j% d2 `$ W8 D- T8 W
% M- F8 @$ U7 g1 i
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
5 k: n6 h5 e3 ~; d9 T8 Z
{
$ Z! \5 }* w/ f2 X3 D9 I
switch( nID )
/ ?- ], K: X, m- z" W; f+ D3 h
{
! e1 C& d( K6 T* J2 d4 ]/ N/ M
case WIDC_BUTTON3:
& m' b% I. |' |2 B8 d0 I( n. |: p( l
{
3 J" [5 D$ j: r
bStart = TRUE;
+ U6 C, G+ l: |+ e: T
break;
+ l$ ?& d" L, y* g6 A
}
7 C: `7 p% t) V
case WIDC_BUTTON4:
) |( }& p+ P+ l1 h2 G
{
& o$ k( p" o( t4 I% Q4 u6 x
bStart = FALSE;
4 d, U |% K$ C; K8 u- _, M6 i
break;
/ x S# k, z: M
}
5 ^+ b8 F9 ?: p" [2 x# W
}
* I' \+ j! v+ f# M6 p, _0 q
return CWndNeuz::OnChildNotify( message, nID, pLResult );
1 ]/ L/ b) D6 A0 Z
}
. h% @7 K/ y7 B. A
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
0 n3 V( l% z+ E) E1 e
{
0 x1 f/ F% e7 p
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
$ B, P0 F1 g' d% \
if( bStart || !m_pItemElem )
- g, N1 w' s: q. M
{
+ O( g9 c( K" {" A$ w; s- Q9 A
pBtn->EnableWindow( FALSE );
! _% _# `5 Q! X
}else
0 N8 [1 s% C" T& J+ L4 r( J
pBtn->EnableWindow( TRUE );
8 v& Y: ]; w' l
if( m_pTexture )
* f& m; `7 a; ^6 B
{
" \9 J X" R u3 F/ e
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
: f9 ] P5 v# I( I
if( wndCtrl && wndCtrl->rect )
# a$ e) b3 u# V3 H% d% ?. C0 W, v
{
3 \2 E. L! f4 I# l8 I
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
. F% P& X. l0 b8 Q0 s2 u0 c7 W
}
) U7 a) \7 M3 G+ ~! n! n
}
7 J' g$ O- d v. E
}
9 U" C( ]( O' F! ^$ i* O
; k2 s7 i! |( h1 B$ K( t" g( A) P
BOOL CWndAutoFood:
rocess()
' b6 I! ?, k! [9 s
{
# f+ X9 }+ n+ K% v
if( bStart )
6 } h* y- h$ |! w2 q
{
# C1 t8 |; l7 o" U$ n9 j* A2 R
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
9 I- \$ S6 g1 }9 T7 B* E
{
! j& c+ C9 \! K9 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() )
, e) m/ S. M* E
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
8 X( X' X) f$ q. F- T/ f5 E
}else{
. P0 D8 D _/ a8 ^$ k8 c1 D
bStart = FALSE;
' a' @& C% Q8 }8 u
m_pItemElem = NULL;
+ f& F/ c3 W& t" Y+ I
}
. i! {) m# G0 Z6 _3 o
}
7 n$ @" |7 n; n( b) E) w- R8 R: j6 v, N
return TRUE;
/ _8 S# ~' K) g/ G& g
}
) g! a3 o5 `- [3 @4 X: g1 s
2 F( J( M" O- H7 [2 l N, |! Q
登录视频废话:
, m6 w- j% S8 |
尾翼:
8 ~% e1 B/ d3 b0 h5 |
9 ?0 V' |* H% }3 ^# @5 S6 H
代码:
; e1 s5 d) i% Q. Z! `: e
! d" b: V' `$ M' d1 O
void CWorld::SetLight( BOOL bLight )
; m; }& H( e5 C% i+ X, {
durch
' j1 c9 d6 c7 Y: w
Code:
# `) J* u: c# D
void CWorld::SetLight( BOOL bLight )
) F) S/ S0 f' p1 ~7 S
{
( S* |6 X/ Q5 ^6 y0 z
//ACE("SetLight %d \n", bLight);
. M3 ^% Y' g9 f1 B b
- E2 w8 A" {" T% w% \( w
#ifndef __WORLDSERVER
. x+ l: N: [, R4 m0 E+ U3 m, G6 t
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
) [9 x: d# b i0 ^# v
CLight* pLight = NULL;
( ]. d: ]) r6 I# J6 C
9 g+ E6 g8 W9 H
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
# `, b+ u- \. ]6 r+ {& T
. ^* z H$ s" C( @
pLight = GetLight( "direction" );
' A) [0 U) Z1 o' ^" r+ ^
% K; O4 b1 a+ v
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ W$ Y. U" i! `8 C1 }
if( g_pPlayer ){
* M" ~8 @9 n E
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
: ~+ S, ?/ H8 |( ~
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
$ d) i, d# b% L) }) m9 t$ S
{
; E( ~" Z. D+ |; c/ Q
if( pLight )
9 Y' B2 y, l$ C6 L$ w
{
0 d4 I1 F8 U8 g2 C7 g' s
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
2 l$ f9 Y$ g8 O4 r1 E$ X! M
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
8 B9 f' e" m. [6 k6 @2 t
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
% p |% \$ C1 N3 E u; ~$ m2 R
* ]8 }* ^; n" u. G1 n; v4 U7 Q, l
pLight->Specular.r = 2.0f;
' K, J+ T, b4 B) Q% H
pLight->Specular.g = 2.0f;
5 g$ ~0 u7 b# o9 w
pLight->Specular.b = 2.0f;
( ~0 o) l4 \; ^3 Q7 W
0 h, f. ]2 I0 S& ]0 {
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
' b8 F: B1 u5 F0 p5 m) d) E
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
/ ?! ^) n9 `" X- U! `( P2 y9 f4 c! w) l! @( B
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ l8 H0 j8 q( ]+ z' B# }
+ j, Q W/ v9 ^" \) O
HookUpdateLight( pLight );
. r- G1 }4 x1 L* e P, N2 P
$ z+ d& J$ d1 }" D+ S( _4 p3 Z
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 ?6 N; r7 X6 x; v
4 R+ `1 C6 M2 ]# Q
pLight->Diffuse.r *= 1.2f;
) \4 P' M; A" ^6 a# w/ r1 Z+ d
pLight->Diffuse.g *= 1.2f;
. n/ ^7 t# T. s& |- O. Z
pLight->Diffuse.b *= 1.2f;
6 T7 N# z# g. b! M$ u9 e
+ V5 G6 C* J/ t
pLight->Ambient.r *= 0.8f;
2 S7 K9 z, H* ^0 ?
pLight->Ambient.g *= 0.8f;
! B7 f5 i6 v- Z( a3 t) t
pLight->Ambient.b *= 0.8f;
' k( B2 h$ E8 Y5 x# E
% W1 N2 {2 \7 X5 t. B
memcpy( &m_light, pLight, sizeof( m_light ) );
& k" t. d) b# p3 `( o) I7 ~
2 S* G) p7 d& U, }1 l; D* y
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" R# F* ~* t9 E/ U2 U, d
D3DXVec3Normalize(&(vecSun),&(vecSun));
; G+ t5 Y% I" ^; y- j
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
& f6 _5 ^' w/ F5 G- P; I6 n5 d
pLight->Appear( m_pd3dDevice, TRUE );
; Y5 d! O6 Y1 L6 ~- H. G3 f
7 y# ?& w5 |2 [1 k
DWORD dwR, dwG, dwB;
8 c2 B" S8 s- U5 x h& i
dwR = (DWORD)( pLight->Ambient.r * 255 );
% p9 ?6 N; a$ q( b7 `" z
dwG = (DWORD)( pLight->Ambient.g * 255 );
" s4 s/ n. ?8 e2 O/ M3 c
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 h L1 ?6 x1 d+ ?& E
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 p, o* e( s2 x
}
( i7 P7 _, c3 V6 _5 t k
}
0 i2 F2 D: |2 T6 E: z
}
4 Z6 T) i3 V& G" ^1 E
else
% C* y7 k( ]* k- L
#endif
% v. [% Y& a1 l. ~6 Q" E
* R ^3 U5 Z* X. _( }
if( m_bIsIndoor )
* W* _8 [, J1 `( L, t0 `
{
3 {$ d! B5 {$ S! }
if( pLight )
& E+ E$ n; N/ a+ y+ M) {
{
6 W9 C+ ~- d+ Q
// à??μ oˉè*
) d* i$ m+ q4 n
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
" G- ]" ?2 t3 v3 C& d
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
- C8 p1 d1 F5 p/ \4 B# C. I
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
6 P& b* x6 U! q3 W- u
+ r4 }; q k5 C
// oˉè* ??à?
, n( j* y5 d8 \# P' k
pLight->Specular.r = 1.0f;
4 x; Q- s9 E" y" `5 C9 ?
pLight->Specular.g = 1.0f;
9 h# b) n4 P; A
pLight->Specular.b = 1.0f;
& g: N$ w9 Q( K' \
// àü?? oˉè*
% W6 d+ J; g6 Y$ }4 z$ r
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
, A- h% w( Z# s3 Q+ Q
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
2 o3 j# e8 r. r! ]
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
, W7 Q8 R; m3 `2 G+ n. K) e1 d( h
3 K: {' N u7 N" j
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 u z$ p( q" Q- K& U: A
{
! K2 k5 i! ~* l( h! ?5 Y
pLight->Diffuse.r *= 0.6f;
2 L& L- v2 O: C/ Y5 M: H7 Q0 U, h
pLight->Diffuse.g *= 0.6f;
% [' g l- E4 ^, U# C
pLight->Diffuse.b *= 0.6f;
" o; p+ n+ W u( E& r" {9 c7 ^0 E
pLight->Ambient.r *= 0.7f;
. |: Q: Z& }% ^2 F
pLight->Ambient.g *= 0.7f;
5 X. u: }! Z) O( J
pLight->Ambient.b *= 0.7f;
- C1 y3 a7 ^2 N4 [
}
2 Z$ H: h7 C" V4 Z2 V; T
& f6 Q6 X! N$ e+ T; E
#if __VER >= 15 // __BS_CHANGING_ENVIR
( Q/ u# [4 b8 N; d6 t- D2 A
if( g_pPlayer )
1 l8 G9 g6 s& l/ f6 u7 E
HookUpdateLight( pLight );
+ ` p; ?: i' b+ m
#endif
7 d* w2 |$ m$ P4 e
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ w/ @! J' H8 L
5 E# D7 I( Z5 f6 U* K- E
pLight->Diffuse.r += 0.1f;
# E3 c* n! b& r& a% ~" I
pLight->Diffuse.g += 0.1f;
, n1 K6 q- y2 u2 T
pLight->Diffuse.b += 0.1f;
: Q7 v% K9 ~% k1 Y! W
// oˉè* ??à?
8 v- C$ |- \# W- b
pLight->Specular.r = 2.0f;
, t @- E/ G, M; |7 ?: X
pLight->Specular.g = 2.0f;
' y" v" [3 Z5 w1 v5 F1 Y! X. r
pLight->Specular.b = 2.0f;
6 L* N1 q$ J; j4 D; V
// á?oˉ
: W/ t; P1 m$ |4 d! P! e, K
pLight->Ambient.r *= 0.9f;
9 s( S4 ~& l! e8 \1 y T+ i
pLight->Ambient.g *= 0.9f;
0 h# w# I6 p0 r, e3 a) F g, I
pLight->Ambient.b *= 0.9f;
* X# ~) @ t0 F6 B2 R
. q" @, k9 e3 Z5 a0 |
memcpy( &m_light, pLight, sizeof( m_light ) );
* g/ C5 B2 o& ~( T0 E' ^
6 r o+ b5 Q9 M( Y9 K
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
$ w4 O1 K c) U+ E5 M: h' _1 q3 }$ C5 J
pLight->Appear( m_pd3dDevice, TRUE );
0 q( b% w% A1 b% I" Y& `
2 F+ A V2 q) f' k! @
DWORD dwR, dwG, dwB;
* V( ^+ [3 q: {. ^) {% ]
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 b" m# B. I0 O" d; [, w% S
dwG = (DWORD)( pLight->Ambient.g * 255 );
D: E$ x. m: A: ^
dwB = (DWORD)( pLight->Ambient.b * 255 );
" P3 D7 _& a' H" Z% C2 K
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: T8 U7 D( E: [2 g/ p- }6 ]
}
( y' G6 ^' i/ n
}
?* f8 K }8 e. \& x: ]8 t* ^* f; q
else
( s1 a" l& _! B h6 W
{
# {" H+ H" e' a3 V4 {6 u t
if( pLight )
0 B" E ~/ l% P( n
{
9 _8 }( D1 |! H; W
1 s# L. G4 A) I& n0 m3 X
int nHour = 8, nMin = 0;
: u4 V. j3 ^1 G# n3 S; Q# s
#ifdef __CLIENT
2 R! `. e8 h" a: k+ y; e4 R& c0 B! X
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
1 i8 d" C! d# s# T( Z8 e; G
nHour = g_GameTimer.m_nHour;
6 b: U8 j6 f. m9 y# V1 d0 O; f# |
nMin = g_GameTimer.m_nMin ;
; V7 Q/ a/ a- W! l% v' D1 ^" w
#else
( R R# Q) h" t% V1 l9 B- G4 o
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
8 b9 o) R, p0 k
if( m_nLightType == 1 )
+ l3 b+ C2 J, x9 r$ U2 T
nHour = m_nLightHour;
5 E }% o% m, w/ `% @7 g
#endif
8 T1 G! k( ~/ {' Q$ Q7 I3 `
nHour--;
/ A* s1 }. `; L. A i! u* f
if( nHour < 0 ) nHour = 0;
5 K' d% T4 r" C" H! U% R3 C
if( nHour > 23 ) nHour = 23;
' K7 l8 `0 F' z# l
! \, y2 @8 D; n+ N- C" _
//if( m_bFixedHour )
2 f5 ?5 ~" y" _! R" Y. t9 _
// nHour = m_nFixedHour, nMin = 0;
$ A. F4 h; @/ \( q; O' ^* z* U3 @$ Z( D
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
% @; s4 e3 Y7 T8 O, ^! ^4 s& d
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
0 Z6 K/ O1 T5 ]1 [9 g8 `3 L
+ L( P* c9 _' `* N+ n6 U2 ?$ M
//m_lightColor = lightColorPrv;
, k4 _/ U" S1 Q1 Q, D/ a4 \
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
# k6 r* D6 I! R0 g( K5 l
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
; ]! t8 e* S: ?* S
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
. U" w. @! P) {9 e; b+ p
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
- B; g/ `7 w" ?
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
" C8 l' w+ @2 [4 j/ v
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
[ J) |* K, w/ T
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
$ t' I$ A" ~: |$ {; ?2 E
' ]6 _& q" J4 n& u9 V- ?2 k
// à??μ oˉè*
& ~1 M; m- y- }) t6 A/ E
pLight->Diffuse.r = lightColorPrv.r1;
0 k% J5 w4 Y J0 k" [- `; ]
pLight->Diffuse.g = lightColorPrv.g1;
$ {3 U2 N5 T s0 `# k% s
pLight->Diffuse.b = lightColorPrv.b1;
! m5 ~" j6 l: U
// oˉè* ??à?
' m q) _* X; ^, _
pLight->Specular.r = 1.0f;
% B2 V0 b) F+ I6 G
pLight->Specular.g = 1.0f;
) T9 H& U& e1 T
pLight->Specular.b = 1.0f;
4 n7 ?/ R8 @1 G- D
// àü?? oˉè*
" h, \( f6 v0 w. E: \$ v. e
pLight->Ambient.r = lightColorPrv.r2;
# O6 n. d5 c9 ^# _; s# {2 V
pLight->Ambient.g = lightColorPrv.g2;
/ S' i; k- b: A
pLight->Ambient.b = lightColorPrv.b2;
0 K" S' K' F- j9 z! @; u. N
" M; O u- k2 j6 u( S6 c
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
. Z4 Q" V! j; {/ N' C1 ]# e# ]* h
{
2 K# M. |9 F9 g% R
pLight->Diffuse.r *= 0.6f;
' E6 j6 B( l* Y
pLight->Diffuse.g *= 0.6f;
# u! K6 w% H; W8 R- G( M( |9 f
pLight->Diffuse.b *= 0.6f;
9 Z$ ?1 Q2 w% e0 X* x; Z/ ~
pLight->Ambient.r *= 0.7f;
0 H& o# Z9 \5 a0 [, j! d
pLight->Ambient.g *= 0.7f;
8 P* v( n1 m3 J& _2 |
pLight->Ambient.b *= 0.7f;
: g2 R( O) z' y/ t3 ^
}
( H: |- ~: l5 F
- @' n$ Z( N# t; l1 y5 s
#if __VER >= 15 // __BS_CHANGING_ENVIR
. n5 V/ ^ ]6 `
if( g_pPlayer )
' P; ]. g1 E8 C
HookUpdateLight( pLight );
' o- @9 V$ w. f/ S4 C
#endif
) g# P" W- {( L
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% t" N* f2 [. `. ?8 m$ F2 l
7 X2 p2 T/ V( u: D
#ifdef __YENV
& I- I2 v1 Q" f h
pLight->Diffuse.r *= 1.1f;
& v, z3 ~ ^* L+ ?
pLight->Diffuse.g *= 1.1f;
$ o" y$ f( V) n3 ~ |& w
pLight->Diffuse.b *= 1.1f;
/ H4 A4 d. S* ]# a2 X1 ]# n9 c
// oˉè* ??à?
+ r \1 |# g* v( G7 R
pLight->Specular.r = 2.0f;
# v' s, w" `- Q( ]/ k. `
pLight->Specular.g = 2.0f;
1 \ |$ J& T9 D7 [) p
pLight->Specular.b = 2.0f;
7 m/ ]' k2 Q: g: n/ b4 x( ~
// á?oˉ
* ]7 X6 z% l. o$ G
pLight->Ambient.r *= 1.0f;
7 ?& I5 J+ A4 U- _/ ^# F; D/ I& P9 P% t1 d
pLight->Ambient.g *= 1.0f;
: D4 B* w. I) D9 T6 [% K
pLight->Ambient.b *= 1.0f;
& A5 A/ r# V2 M# ~1 h
#else //__YENV
3 o/ t" T3 d& L2 S) y
pLight->Diffuse.r *= 1.1f;
3 a) Q/ [8 a# P* f O/ c+ K, g
pLight->Diffuse.g *= 1.1f;
8 q6 s, G6 ^3 ~0 ^+ B3 z* y/ u
pLight->Diffuse.b *= 1.1f;
3 [1 |9 V0 X9 n( _
// oˉè* ??à?
3 p- @) I4 a: T9 Y" ~4 F& k
pLight->Specular.r = 2.0f;
9 G* Y; f0 l9 P7 I8 P1 k" k4 d
pLight->Specular.g = 2.0f;
6 }, F" E, Q* F! @; j: u- J% r8 F( B( z
pLight->Specular.b = 2.0f;
1 R# z. u4 x$ |9 i, u, A9 E
// á?oˉ
5 l0 ] e( N' i' U# ~
pLight->Ambient.r *= 0.9f;
3 L7 E* F9 X+ H0 g% k4 ^3 J/ ?# a
pLight->Ambient.g *= 0.9f;
$ a6 O- K2 z4 t$ K+ e
pLight->Ambient.b *= 0.9f;
) `% @7 @ T, R
#endif //__YENV
, i9 X2 y8 W. \: ~) N- t
* o' O& Q0 }! {) E
memcpy( &m_light, pLight, sizeof( m_light ) );
3 B& q( }: P9 b- B
3 Z3 c& A9 u3 ^: t* G* J; b2 R
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
6 ]" t8 |- g' @& [! Z o0 ?
D3DXMATRIX matTemp;
1 L3 W. _% z0 V( u; n B) I) v. U
static const float CONS_VAL = 3.1415926f / 180.f;
* E- p3 J: z2 b' b; r# j8 j! i
3 H4 e, t0 y0 p; E, G, E* C. C7 X
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
; {& f$ l( {1 k8 C
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
; _1 F% x. v" \
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
2 H8 F; A, v9 z# K
pLight->Appear( m_pd3dDevice, TRUE );
8 a& J% l# D7 @8 i7 u, g+ o
8 A) L+ Q- \( m4 o' n3 y
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% Q+ ^+ _2 C' O' u! w
// D3DXVec3Normalize(&(vecSun),&(vecSun));
3 T5 r a( e7 r- Z3 \; f
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% }5 _" e* }& ~% f K8 R/ c
' e/ O! b) [" K; [& o1 g
DWORD dwR, dwG, dwB;
k" h t9 B7 R/ ]4 n4 u0 Y; I
dwR = (DWORD)( pLight->Ambient.r * 255 );
/ L' v0 B$ b+ }! |7 T. }1 g2 Y
dwG = (DWORD)( pLight->Ambient.g * 255 );
, |3 y1 Q. c8 n2 \& K
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ F. B; F: H: [) S
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 b' p( c3 L, _5 E) d4 p4 K
}
, C% n$ Y9 E- P+ y" D3 g: ]
}
4 z5 `$ C, @& j! d& {' x9 N
' n1 }) |$ g0 n% |. O# M
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
# l0 A& H! Q3 D; l) u
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) );
9 G3 \ U( J# N4 V& |1 O9 U) ]; M
::SetLight( bLight );
) U/ ~* u$ L5 d# y2 b' \
$ y7 u' ?7 n+ f5 f8 p( l/ ~
// ±ao? ?D?í???ó á¤à?
( U3 w; o' f1 x. G% o. d
m_pd3dDevice->SetMaterial( &m_baseMaterial );
% y' o1 A4 ?; [' Y5 T
) b% _4 Y# j) \. E4 l
#endif // not WORLDSERVER
: Z$ v8 `2 ~4 c$ L2 ]* {, y- F8 }
}
# S8 Q N1 {2 ?5 C8 i
并更换
+ ?, r* L# X0 t
Code:
* _4 o' \# I* t M* L
__FLYFF_INITPAGE_EXT
3 i5 l0 N6 J6 g* c5 k
定义
$ T; H! G4 {3 w4 \- _! S
9 r2 i9 z- p5 F% g
" c4 y# Z* |" y. }; J1 e
7 p0 z* c' x5 f* L" i' l
0 L% f- _6 \7 S" W4 t; J! o
现在终于删除我的狗屁加速...
. @, G e% |" w) v
9 i% _1 e( k. H( r7 q
# u; a. o5 t7 N% G: `
( _- Y4 n7 n1 i( l& }
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2