飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
" t9 {* e. C/ T( A P1 `6 l
尾翼:
" N1 L1 T1 m8 Y" z1 n& W
8 K2 o# j( Z* O
代码:
$ n; g8 }2 W. A0 I/ H) A$ v9 n
CWndAutoFood::CWndAutoFood()
4 J- H7 M0 Z6 { \
{
0 d' n' m6 v; [, u
m_pItemElem = NULL;
7 @9 |5 o( R" T8 v5 E
m_pTexture = NULL;
$ _2 u/ p" D. ]1 y0 u# W
bStart = FALSE;
. o$ | l. Q2 S0 `
}
: C! w! @+ U9 C6 k& k
% D0 |) _' H" |
CWndAutoFood::~CWndAutoFood()
/ Z7 X. ^1 u1 u7 p2 U" X
{
5 }; `8 ^$ o- O% ?: c# h
AfxMessageBox( "AutoFood ist gestorben
" );
% O) b m8 E. {3 E: m d! B5 v
}
4 I- S7 ^4 A, Y/ H
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
' [& `3 ?, h3 m, G! D
{
2 T6 h) @) k* r. m! m; i1 |4 O% }, J' `
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
" }" P; v4 m- O. u: c& `1 Q% R/ O
}
. J0 ~! ]0 [; S
& K9 Y) T( ^; ] n2 W. G) G
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
2 p+ r+ X5 @1 V+ l' }( q, @* @& |) Q
{
) n9 U2 |6 H8 L/ w8 u3 D+ ^
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
6 H3 r8 E* K5 l( x, U8 _
CRect rect = pWndCtrl->rect;
* w& U- [: ~6 J
if( rect && rect.PtInRect( point ) )
0 z+ a; n# P; v4 }7 @
{
# j+ O% h$ H* s1 U$ s
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
9 e6 |! t4 ]! |
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
! a( W. m1 g, }9 d [
{
5 n% o0 u i& o3 l
if( m_pItemElem )
- d: |; V' n1 y, Y9 T
{
0 [4 O( _% f: O' `
m_pItemElem = NULL;
' u7 _" U4 e+ ?9 R, L
}
. `3 N3 E* {" f0 ^
m_pItemElem = pItemElem;
& n) a9 e8 P6 o3 C+ d* S. b
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
7 A9 V$ D2 h" x6 Q- q% [! l
}else{
. i2 {, G+ q% V# r) R
SetForbid( TRUE );
R r8 k. q, e0 k% f, c! {6 U5 n
}
7 @: {4 z* `* X* O
}else{
7 i0 }" N! Q8 @1 ~1 n' F ~
SetForbid( TRUE );
: F0 g5 u) T/ {' \5 s) |
}
& d9 P" d1 a9 Q$ W% L$ f" q% i2 E
return TRUE;
+ A, u1 ^5 A' w! G, @
}
0 |0 J6 l0 [- y: Z
- `% N$ I$ _( B: X. m. o
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
3 H0 ]5 O' H2 p$ p2 {+ O
{
+ k; Q7 d; g% G' {
switch( nID )
) [8 @8 g8 @, b1 }
{
) Z- {* U% w9 D6 U j& V* N8 ~
case WIDC_BUTTON3:
& y( L9 V8 }( s0 n
{
8 [4 Y/ S0 O$ H$ e
bStart = TRUE;
7 _. D) |/ L: w) c
break;
7 l, }" t4 o! z/ m8 u7 V5 H
}
3 j7 T0 m' u8 Q& R# d' x
case WIDC_BUTTON4:
3 u' M: p p) U4 d
{
& \9 F$ H f; I' L% |" @
bStart = FALSE;
7 c) W% h4 p# W6 e! @
break;
. U, y; L0 P4 b) k7 j
}
; Y/ n/ }" b! _5 Q- }
}
9 W/ V# K9 ~) d' T5 {. O) t* [: c
return CWndNeuz::OnChildNotify( message, nID, pLResult );
# k* Q2 P9 q1 f P9 |
}
5 e! O3 M, Z( h
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
# X! W& F# T4 }* R8 z
{
" F0 g) Z5 v4 v; c6 e: N% n; i
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
* E" Q2 g) X) o: l
if( bStart || !m_pItemElem )
{0 M2 d& x' u# b' z0 A3 b% r( o4 {; U
{
" U5 r& c) b, k3 J. z
pBtn->EnableWindow( FALSE );
8 g8 A) C8 M5 J3 u9 R' D
}else
9 a; y* o' @' q& h6 P* X1 j- R2 ~
pBtn->EnableWindow( TRUE );
- \$ d7 e! _# _' D! M; ?
if( m_pTexture )
4 d$ p! W* ] S; ?1 ^( @+ C
{
$ u$ j' m, y" S7 g& F1 k$ T D5 z
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" g; }0 z1 J& W; j( _6 f
if( wndCtrl && wndCtrl->rect )
) T( R) K, I% j1 m+ @* O
{
6 H' S* f+ D; Y. k$ Q$ N! b
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
4 a8 M+ v5 H( b- e8 O9 `5 ]2 y
}
& R$ X$ `# K; o* b N+ |8 ?
}
3 k0 ?. M* _# q
}
& }3 m# H* r4 S4 m& ]$ r* M4 n& {. k
, C0 i9 v/ `- U% L
BOOL CWndAutoFood:
rocess()
% _6 Z; ^& B- S3 n- n7 |
{
$ w) N4 S2 h' p& I( I5 f! s7 l; j
if( bStart )
0 p7 f, Y7 S: E0 n! W
{
+ c9 w; ` g6 _' v) U
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
# o# x4 I! U- {+ n5 x) \
{
" f) V# \# h m+ P
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
9 \: U+ j3 |9 e
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
9 W/ z8 ]$ K, V5 i
}else{
* C7 K2 l2 u, C5 ^3 @
bStart = FALSE;
* |- ~2 s/ `4 p6 E5 v; y
m_pItemElem = NULL;
/ f1 M3 A4 T d# P( ` L
}
! [+ S C3 K; B- q3 w) D
}
6 M" g* z7 s4 d( A1 S0 }/ B2 a
return TRUE;
! j, [9 |% ~$ S: j6 e/ ^$ c& U/ R
}
9 [5 }3 {: |% k7 Z( f4 X v2 Y o
5 g" e& Z- s. i& M
登录视频废话:
) |& _( ]+ [$ ?1 U1 K# }, @* R
尾翼:
4 n+ ?( q, `, i: V
8 H; P7 j# ]' [* q+ \, k
代码:
: X8 w w( G* c/ y0 |7 j/ P2 Y. s. h8 l
1 P) k8 J) n* k% t- P; I$ e+ v
void CWorld::SetLight( BOOL bLight )
0 A" Q% U! {2 E' _" m$ v% t6 A
durch
. h8 ]( w& \2 g w$ `) }2 c
Code:
1 K2 {" q2 T v1 H9 Y
void CWorld::SetLight( BOOL bLight )
- W8 d" k' b0 F e
{
5 S D. ?5 V. N3 x
//ACE("SetLight %d \n", bLight);
( C+ I4 \! B' m4 U
# V" ?3 b8 U: k9 D4 n5 a
#ifndef __WORLDSERVER
+ m/ ~1 f( f7 B3 c1 |. m
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
+ w% c( w; J7 y* }
CLight* pLight = NULL;
9 B$ ]1 y& y1 }' X
5 B9 L" J0 }% M
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
1 P. d0 r: ]( N3 E
% i* D% o R( ~+ _# w
pLight = GetLight( "direction" );
2 i$ E( d' t9 z
& n6 U, u( R7 D5 p. {
#if __VER >= 15 // __BS_CHANGING_ENVIR
. L) c& }5 B6 Y/ L, ]% K8 m
if( g_pPlayer ){
, B. O) I3 U5 n' q& Y9 H9 b
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
; f* a+ F) M e5 W4 F
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
9 ?- L9 h& j" _2 ~" y6 I0 M
{
% w' t! ]2 D j& w) i
if( pLight )
5 W H7 Q F9 W, n% ?1 A; h8 q" Q; F
{
4 H# b x2 `( V5 K" d' g
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
0 A2 q3 m. \, i1 y
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
9 C+ W. E: v/ T, p
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
; D$ B, Y5 z/ ?4 x4 ^: {) e2 c
% j- p2 o# a' @9 s* {
pLight->Specular.r = 2.0f;
3 {' l' @8 \ _) [. l
pLight->Specular.g = 2.0f;
% o T. ]5 [6 R( ?1 ]
pLight->Specular.b = 2.0f;
6 H, i6 R' }" z+ i" _2 k! H0 ^6 |% Y! @/ n
. ?0 R; \7 e! m4 Q
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
: c3 _7 i$ N5 l' [
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
& ^% ]+ C6 v0 D4 f/ A7 x: a
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
8 v: g& D5 _7 z+ q. O
/ S. q: \- H3 q
HookUpdateLight( pLight );
! `0 W; Q+ `$ a/ Z1 E! f+ ?3 |( e% e
/ z. N% P7 |( `$ |. B! K
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 }. r: e$ I0 f6 Y7 n$ I
0 e4 G0 O' l: @: X
pLight->Diffuse.r *= 1.2f;
+ E1 l7 \# z6 c8 [
pLight->Diffuse.g *= 1.2f;
0 J# k* F5 q$ f
pLight->Diffuse.b *= 1.2f;
2 K2 u/ r9 t t r+ W
1 i: n9 ?6 f3 }
pLight->Ambient.r *= 0.8f;
" i: s5 `" w: W4 `. D
pLight->Ambient.g *= 0.8f;
/ b5 C5 }2 h! I8 M! |0 X6 k
pLight->Ambient.b *= 0.8f;
?, f& q- L3 w" q( G* A& P
8 N+ L7 j7 w# j& e8 u- K2 x
memcpy( &m_light, pLight, sizeof( m_light ) );
0 X' ?1 Z6 H' Q" @, M' ?
% ^5 Y; L; C0 K
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
+ a2 g5 z; C% S; {
D3DXVec3Normalize(&(vecSun),&(vecSun));
! i; |8 y% O. Z3 z3 H" r
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) b8 k+ J8 Y( P. y5 a* B/ j; Z
pLight->Appear( m_pd3dDevice, TRUE );
' L8 u8 b/ T- }5 N) g
( q1 s& [9 K1 B
DWORD dwR, dwG, dwB;
# M& p7 V ^5 Q; A
dwR = (DWORD)( pLight->Ambient.r * 255 );
' s; B5 h9 v+ p8 |) ~# N1 j
dwG = (DWORD)( pLight->Ambient.g * 255 );
! f$ k. O0 p. t) A! K( M
dwB = (DWORD)( pLight->Ambient.b * 255 );
% J2 J" o, N3 I$ V. P
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) N* ^, M) Q8 r
}
& E" ]+ W" m# C7 c+ x
}
& ^. B6 |% X. O* s* ] l8 C
}
" ~+ a1 p" N n T$ X7 s
else
2 x6 a% Z9 r* G% J
#endif
5 z; u* K X. X
: ^4 C1 G9 l) l- ~2 F8 |& J
if( m_bIsIndoor )
6 z6 c# |: S! ~
{
" N, Z; d. D: T2 k; Z
if( pLight )
! }9 v" A$ `& U+ A3 z! f: m1 O
{
b% X4 w' \! U- J+ x( Q5 F
// à??μ oˉè*
# Z. T( N P. d i
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
0 \2 P( M. E5 x% K1 k
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
; p+ P; r& L) M" H9 s
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
) B g/ ]' n( c* S& Z
- c4 j$ j; y/ x A9 a) z
// oˉè* ??à?
3 Y2 b1 n) h" A. u
pLight->Specular.r = 1.0f;
) E7 v0 L: H9 h' e0 p; V5 j. B' J3 K
pLight->Specular.g = 1.0f;
7 h1 u7 p" B" V+ P8 Y
pLight->Specular.b = 1.0f;
) N5 ^- D. Z* N0 C
// àü?? oˉè*
- X/ e8 z) t6 }- Y; T! K5 k
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
+ v) G8 L" D+ N0 U
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
~8 [# y% ^6 l
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
" j2 g4 ]! n. X
, Z5 v# T, t+ S" C/ N4 C
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
) r, ?: F& e* `7 y( ]
{
' w. [ `9 @/ h% L. Q$ f
pLight->Diffuse.r *= 0.6f;
! `5 |1 V8 C8 J
pLight->Diffuse.g *= 0.6f;
7 R' X" t- Q8 z9 B* b3 X
pLight->Diffuse.b *= 0.6f;
9 ]2 J& ^: q! \2 ]) n& m
pLight->Ambient.r *= 0.7f;
R. _6 d; J5 V9 \9 e' d
pLight->Ambient.g *= 0.7f;
' }0 S5 ~0 S3 d: W( t
pLight->Ambient.b *= 0.7f;
* @9 a' C+ o+ `: ?- w# C
}
5 [% s5 q- P4 ? t& \
- \+ F: B; A+ K
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 {* n2 F/ t/ v N+ X" R
if( g_pPlayer )
$ b$ Z! T4 t0 S6 [ I
HookUpdateLight( pLight );
7 a7 ?( r! R' q/ n8 [; C! R
#endif
* H0 Q& l0 `7 t: @8 Z+ V
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 e, Z R& g$ d+ O% d/ C }8 H
' o# _, M+ G4 c! L9 ~
pLight->Diffuse.r += 0.1f;
+ V) T$ l# q/ c5 n" g
pLight->Diffuse.g += 0.1f;
2 [, T$ b( p. _5 x
pLight->Diffuse.b += 0.1f;
% _) a- y" V! u
// oˉè* ??à?
. r2 N" A; B# ^4 K6 V0 ~
pLight->Specular.r = 2.0f;
+ v. U5 {2 A* k! S2 l: K$ {
pLight->Specular.g = 2.0f;
: V7 u6 K1 K7 h g9 y
pLight->Specular.b = 2.0f;
' ~9 G: I, @$ R! M
// á?oˉ
2 h, f+ E& M8 L- f' N. O `, B: q3 L
pLight->Ambient.r *= 0.9f;
+ p7 Z# J6 \. n% J0 [: ~
pLight->Ambient.g *= 0.9f;
5 u* |7 l8 W7 |! M3 H; ? b
pLight->Ambient.b *= 0.9f;
" x: ]% i) U5 E) g! \
' V( W- c1 D2 X
memcpy( &m_light, pLight, sizeof( m_light ) );
! u& y5 B8 X; \% w4 w! {
; e% t$ i" `2 Q% ]$ d, b/ w- z6 @. C
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
% C# D' j+ W) }4 }7 v2 ~& r% c* p
pLight->Appear( m_pd3dDevice, TRUE );
+ l4 m& {. p* d; Y% d: k' i# |" J. A
3 H3 G& T6 x c8 F6 J( L" Y
DWORD dwR, dwG, dwB;
# J& M1 W3 O( v1 p
dwR = (DWORD)( pLight->Ambient.r * 255 );
# D& [( d& T# ?3 ?( T0 h4 S
dwG = (DWORD)( pLight->Ambient.g * 255 );
: s3 }/ L9 x! b) [$ H& r
dwB = (DWORD)( pLight->Ambient.b * 255 );
; \) H2 g5 `* b1 _5 m+ k
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* B8 b2 f" v- o( H0 K+ r
}
& W. K% S. ^( W o9 x
}
6 N) W `% I; j* }3 Y3 C
else
* g$ [. [6 U1 u1 ~
{
* \# A5 o" |0 p! L- t/ R! }+ y
if( pLight )
+ g( x5 I8 j/ ^4 }
{
& H- k9 M) ^5 D% q; h6 N* x
7 r3 j2 i$ h: b8 d2 N
int nHour = 8, nMin = 0;
6 ~1 L( T! d. e* x) i
#ifdef __CLIENT
0 q; I; D& T/ q: T1 G/ Z: s
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
/ [7 R" u! q1 d/ ]
nHour = g_GameTimer.m_nHour;
0 k( U( S$ _& R2 p; a
nMin = g_GameTimer.m_nMin ;
7 I$ N7 F( n, `) x: ^/ D* H+ s
#else
1 E( L1 N% R1 }7 F( z/ ~
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
" P! V6 v1 @* r: s7 J( E
if( m_nLightType == 1 )
' h4 {2 }$ C, o h }
nHour = m_nLightHour;
: l& \ R+ P$ g
#endif
! K/ Z2 U5 A6 A$ Y, U, d% V
nHour--;
+ b W! e& X* J+ v2 c- A
if( nHour < 0 ) nHour = 0;
" `( X) T9 n. C0 }2 S& J
if( nHour > 23 ) nHour = 23;
9 d5 W& ?) ?1 Y6 ~( h% B3 @. Q# ^# _
2 `0 G1 q- r2 k4 b/ z% g& i
//if( m_bFixedHour )
+ F% y3 T: B0 g' I6 S8 D
// nHour = m_nFixedHour, nMin = 0;
- O n$ W4 t- }" }/ e# n
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
0 b- X, U) L5 _7 S% h% E
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
3 N+ P' c# B( R7 n$ j: g
- D0 `8 F# i7 d- v& Z
//m_lightColor = lightColorPrv;
# b9 n% N- q/ N% q4 C
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
1 m/ g! U3 X y) g
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
/ J$ ^" q# a6 G/ k6 f, {
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
+ u' P- G6 \7 o' ]5 E8 S8 G- h
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
9 V. A' D7 A _$ d; N# A
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
: K4 h( P: l' }* _: G$ w d$ S! m
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
. g4 \3 s7 L6 K
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
0 Z) c. w* [7 D) b$ t+ d- w W
3 ^4 g( `7 G& h" i. ?
// à??μ oˉè*
c7 E4 v8 @; w6 G
pLight->Diffuse.r = lightColorPrv.r1;
8 G' Q& H0 f; {' `" r' C- u, H4 w
pLight->Diffuse.g = lightColorPrv.g1;
+ M9 d* y; o+ ?
pLight->Diffuse.b = lightColorPrv.b1;
, p6 x, h0 X* j0 L; \0 C2 y
// oˉè* ??à?
9 A% v0 |8 v; X( X/ `& m0 |" z2 {
pLight->Specular.r = 1.0f;
- c3 Q# x' J! K+ A
pLight->Specular.g = 1.0f;
) d. N, x d: ], l
pLight->Specular.b = 1.0f;
+ r4 w1 N$ |, F5 r# G
// àü?? oˉè*
7 X# q1 J3 U! X3 `1 v" v+ V. {0 _
pLight->Ambient.r = lightColorPrv.r2;
5 T; n i& x' O
pLight->Ambient.g = lightColorPrv.g2;
3 y$ D. [, Y7 }
pLight->Ambient.b = lightColorPrv.b2;
1 y2 \. s( h0 I% n5 } W4 w
! f" h$ }: P6 g, f0 W0 k
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
. B/ I# Z; E0 ~' ~
{
. \' k; p. }# G& `
pLight->Diffuse.r *= 0.6f;
( ?* g2 }# U4 }, e: v6 n
pLight->Diffuse.g *= 0.6f;
: }6 o9 p; d2 U1 G
pLight->Diffuse.b *= 0.6f;
5 [0 u/ j# w) C
pLight->Ambient.r *= 0.7f;
: [$ U0 x6 P2 T- Q2 L ?9 k
pLight->Ambient.g *= 0.7f;
3 b; M! e' z; R# V
pLight->Ambient.b *= 0.7f;
7 |3 n' m5 `" C- R s8 G
}
% d; L! V9 J t- O) p
" H4 E8 c6 n r1 K) U
#if __VER >= 15 // __BS_CHANGING_ENVIR
, B. J) W7 P1 D' v* A
if( g_pPlayer )
( P4 L9 K+ Q2 e+ N% w! g& T
HookUpdateLight( pLight );
0 i; z, W! J, f0 G0 {: c
#endif
1 @. W2 e4 O. q! a( h7 n5 `
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 U k2 H6 Z. i
& i) _- m1 Y$ }: N; X# ^5 E
#ifdef __YENV
. m' J e- i% P' K) F) |: `% K$ z
pLight->Diffuse.r *= 1.1f;
; i/ `: X, Z+ v8 H
pLight->Diffuse.g *= 1.1f;
" U, G7 {9 ~! o! q5 q4 {8 f
pLight->Diffuse.b *= 1.1f;
$ L! }' I! m6 c& H3 M, t
// oˉè* ??à?
. _) L! z' P/ D# g" F, n7 M. p
pLight->Specular.r = 2.0f;
0 K; r' n) D0 v7 Z7 b( p
pLight->Specular.g = 2.0f;
& X. G4 U/ a5 M+ z
pLight->Specular.b = 2.0f;
9 Q% ?* Y7 a, e: H* Q$ o
// á?oˉ
& l1 j+ h" g- M8 \7 h
pLight->Ambient.r *= 1.0f;
7 C S/ a; o8 q* r( r* {
pLight->Ambient.g *= 1.0f;
3 x n n" o9 \$ ^1 G
pLight->Ambient.b *= 1.0f;
0 k7 t% r( s8 b
#else //__YENV
0 i, R3 m7 E% B, J+ t
pLight->Diffuse.r *= 1.1f;
: t$ ^1 \3 H8 y
pLight->Diffuse.g *= 1.1f;
' _: q0 a& ]/ Y/ Q0 {
pLight->Diffuse.b *= 1.1f;
: j; v) B, u* T- b6 Z( I
// oˉè* ??à?
; ^% c7 Q4 y" r) I
pLight->Specular.r = 2.0f;
6 |' a8 c+ j) Z( p7 { J1 p0 N. J
pLight->Specular.g = 2.0f;
& G% F2 f" T2 [- a
pLight->Specular.b = 2.0f;
( G: M/ A9 J7 R6 ^
// á?oˉ
2 ~1 w4 z x! F5 V; t* H: Y* _
pLight->Ambient.r *= 0.9f;
9 N: n6 \; o- D% o" O
pLight->Ambient.g *= 0.9f;
% [( I1 R, I* T
pLight->Ambient.b *= 0.9f;
5 D2 q9 C' h2 k/ t
#endif //__YENV
# W8 K; U+ ?' B/ V
2 k$ b7 m5 M/ s8 @% b0 Q
memcpy( &m_light, pLight, sizeof( m_light ) );
- s# H' Z4 D: n1 \) G2 b
, C; ?; I+ C: U1 R" e
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
2 N9 P8 g T5 N7 p! x8 u3 Q
D3DXMATRIX matTemp;
/ b& J5 U- O8 ?) f9 w2 ~& S
static const float CONS_VAL = 3.1415926f / 180.f;
7 u4 Q3 E6 O' s, E6 w8 j
3 p( W5 i& v5 s, Y
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
7 q# V! v5 X) z& j* [8 [
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
2 r4 g) [8 B& R4 p# h/ c
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
. x9 K0 E" Z( o3 Q
pLight->Appear( m_pd3dDevice, TRUE );
( D) o6 Z6 P! d9 x
0 x# H3 ~3 C% R+ {5 I
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
0 W, c+ b* |8 T3 n6 d, }' d! ]
// D3DXVec3Normalize(&(vecSun),&(vecSun));
% M! w- U, l# u6 [" w
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
" J5 ~, @ j7 ?, D; c
7 z9 l- d! Q. e, [# a E$ I
DWORD dwR, dwG, dwB;
9 u3 R6 [+ b. s- v' l" _3 A+ w
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 X9 M" v' _. E3 H# Q4 d; n5 o
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ [0 C7 B! F$ X; z1 g0 t
dwB = (DWORD)( pLight->Ambient.b * 255 );
% ~# U6 x7 ~# T% o! n: L
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; v0 U6 @9 Z* b5 N5 W; L" o
}
: {( g" [* d9 p) Y& o# j
}
: H! q% k+ j( U0 x
2 V) p% t+ J2 a1 i* H+ I
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
/ n+ t& u8 d+ {1 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) );
, c/ i3 k8 Z" N9 `
::SetLight( bLight );
6 |: s k$ M6 A
9 H. i9 m0 X) k( Y% U
// ±ao? ?D?í???ó á¤à?
9 T" P; L) Y! v
m_pd3dDevice->SetMaterial( &m_baseMaterial );
3 \6 W# {" \+ q3 l% H8 M) o( f8 I
7 }" K# [8 n0 q) b9 J3 I- [& D
#endif // not WORLDSERVER
. z, X( S7 }" E
}
: s5 l) g/ J' D7 {0 N
并更换
5 x) m4 [8 H$ m" a8 Z
Code:
5 O% a( W0 U6 `* V% O
__FLYFF_INITPAGE_EXT
2 A0 @' R5 j/ @
定义
2 X1 P: Z, V9 F8 y2 x$ ]: v! ~
0 O' o+ T0 C! Z& Y
4 w% K; B7 s" G4 w/ g; @5 e) ?
/ h/ j( e; _% n* u/ e0 [" Q' T4 X
+ K. N% r* \- r" v c7 c9 ^
现在终于删除我的狗屁加速...
' c4 K- a4 u. J$ i; g0 x7 A
: ]. V' W( l1 |" c
: G! Q6 x( \5 i) P$ m* I2 u2 u
. r6 j2 Q* g) _9 t! V2 b; G
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2