飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
( q, l1 u* M) o# ~$ P
尾翼:
9 Y" w! [2 O. B/ C
8 @ n. i6 ]" l. n5 ?6 q. @. K- `
代码:
" F+ Q$ M ~5 G( o
CWndAutoFood::CWndAutoFood()
' N2 H7 z+ ^+ K
{
! y: J' V7 \' u% ?$ Q1 |
m_pItemElem = NULL;
1 y9 v" f3 n- a. d
m_pTexture = NULL;
$ }" \- H. ?! v" u" ]9 e3 M# l5 G& P
bStart = FALSE;
5 p, j8 [7 m5 r. f9 Q/ M/ d: n: ~6 w
}
- i) B# L4 D+ p2 B9 A
- z1 b' k7 O# }4 Z! r. Q5 e G
CWndAutoFood::~CWndAutoFood()
2 S8 h; g2 V5 H6 L: s9 G# l
{
' z5 ^4 w8 {/ h; G9 X
AfxMessageBox( "AutoFood ist gestorben
" );
\2 Q6 `+ X, h* j
}
; D! n' j; p9 b8 _3 i
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
' t3 E- \: f0 I0 W6 V* r g
{
5 e4 Q) `% j( W W8 ]
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
& w n n; T1 k, H4 u$ @
}
+ u Z# N$ F3 V8 v- w5 B0 H: B- `
+ M! g( X* V% v2 B( n$ [+ T
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
( |# o! r( a* h% M8 j& @
{
% S" F& V" x/ X2 g
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- W1 ^, _/ G( ~
CRect rect = pWndCtrl->rect;
+ W a3 U( i; h0 {; O; a1 E2 Y
if( rect && rect.PtInRect( point ) )
- z3 v3 ^# @1 b* X7 l: r
{
8 r" X$ ~6 a: I4 s5 o3 ^$ H
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
9 g6 L) {# b) e: U v- } H+ z
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
& D# m. b5 W+ L2 K) y
{
8 `5 I8 n# I! K0 x; W! z- v
if( m_pItemElem )
! b& d+ ?" j/ k
{
/ q. K$ i0 w- s& Y) J
m_pItemElem = NULL;
3 G, H3 Q! R0 g2 D" Q5 x8 x
}
0 h0 O9 S8 E; ?2 X6 Z, Q6 b
m_pItemElem = pItemElem;
8 C2 P& l! \. q- I9 I! u
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
9 q6 ^1 H" o' X* I
}else{
0 Z* ?# B+ T* E) k9 o, {
SetForbid( TRUE );
6 s' B! ~# j, X$ i. \
}
1 {2 I5 i# v4 d+ A$ J$ i- v6 o7 p
}else{
% L( Z5 f/ c6 U. C6 L
SetForbid( TRUE );
/ ?0 x3 ^* `: _+ R9 @! `
}
7 q/ \. X* n+ D- w# X( |
return TRUE;
+ B( b+ _/ S7 ]% O; l2 D
}
$ F+ V" k% W! t* b. o/ s2 N
! C$ z% B" |; d% ]
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
1 @$ N' w. u8 ?* K2 h
{
c4 W. ], Q( C& P
switch( nID )
$ O0 N$ F# ?+ q9 }) J: t' m
{
: x* G R5 S; K
case WIDC_BUTTON3:
9 Y1 G" N. k5 ?( P) @
{
& l6 g" m% J/ U
bStart = TRUE;
% r. b$ F# j4 m5 ?1 N' L
break;
' k" K* j0 r6 K9 q% n
}
$ [8 c2 i0 g" D7 v
case WIDC_BUTTON4:
$ z& w) ~; W% o
{
3 L9 w( w4 ?1 F* N- H
bStart = FALSE;
5 z5 s# i: ^5 z1 o
break;
. u+ f1 D3 ^. m x6 N' K4 u
}
; \3 H3 E: l/ q+ ^8 m9 k8 r3 v
}
* l" R- P5 {" x; K3 W0 k0 F7 i
return CWndNeuz::OnChildNotify( message, nID, pLResult );
3 x4 p5 a1 @" N2 n# J% d
}
" a5 E8 _; i5 {& f8 t
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
2 f- t! j. j6 A
{
6 Q6 x0 Y6 o7 ^2 c$ ?- V
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
/ m) R1 O. C0 O; c8 _4 ]
if( bStart || !m_pItemElem )
- o1 k6 d8 g$ i/ E. P0 P
{
. t/ f7 b" X; r* y# m
pBtn->EnableWindow( FALSE );
" o2 z6 [, P* i
}else
- G; n9 `: f1 h$ s; O# F9 l* R
pBtn->EnableWindow( TRUE );
1 ^, b% t E7 f. v8 `( m' a" h/ g
if( m_pTexture )
; [% N. C2 N H7 x& y) h7 V
{
! {3 T. ?9 {5 H3 K. B
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. x; N4 F& Y- M
if( wndCtrl && wndCtrl->rect )
$ W0 a" e; B8 E X0 q6 R
{
8 g1 i: D+ o7 R; v
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
% i9 M% K1 q# O% [8 H+ K6 u
}
[8 | g. [% K0 t1 G
}
" s/ W/ r o: D
}
6 O8 Y- q4 k6 k \( Y& \
" r( ]/ i* X3 p- c0 R( }
BOOL CWndAutoFood:
rocess()
( K2 i* z( n+ i! h, M$ a. O
{
+ T" h5 p/ k& }" {* ~
if( bStart )
- P/ ]- V% t6 ?2 C- `
{
7 c2 K+ R; W( w: k) [/ K
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
- K2 o7 {4 f. P9 e1 T
{
( e# C, y# k# w8 F2 `: s# h
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
) i, h4 s+ h8 H7 Y0 k
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
& o, s( l8 i( k- |7 x9 @) I9 ?2 ^
}else{
8 w) X" ?/ q _. I) ?" o7 m) M
bStart = FALSE;
a0 f W4 P: f& G( f
m_pItemElem = NULL;
( e2 P [9 Y$ M# F
}
2 r5 C1 N; T3 f& k+ T
}
6 [2 d/ h& E7 e4 O1 v) L
return TRUE;
$ Z B2 ~, z! n) s" @4 M8 S: }
}
, w- O# D6 _, P# _/ ?
2 R1 }: ?: m/ b+ Z. {
登录视频废话:
6 d8 x, P ~2 F8 }4 j
尾翼:
2 k" z. R; {: Y; } v* v
" I- H( o, `$ Y! N
代码:
) E# b' H* e) k* {, x& S
8 k4 }5 x+ Z7 J( `4 C
void CWorld::SetLight( BOOL bLight )
) G( k" g; m) h5 ]8 B- g$ `* I
durch
* p, n' c' t( p* a8 H
Code:
: D2 Y* c; |3 v" ^) Z; r1 W
void CWorld::SetLight( BOOL bLight )
# z q* s# P: _8 Y
{
1 B4 x- P4 y8 Y% `0 U( u2 \
//ACE("SetLight %d \n", bLight);
, ~( O2 V3 W! I9 h1 A
9 T! r. [! `3 ]' j
#ifndef __WORLDSERVER
: R* }2 n F- I& \6 _
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
+ z4 w O4 q8 k& l$ w; R6 r
CLight* pLight = NULL;
; J4 V H0 Y r6 k, |
# i) a& E H- L! @* [4 G; f
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
& N4 ~' C! S, N: \5 U
$ s8 A6 `6 I9 D6 m: b' m$ c- v5 z
pLight = GetLight( "direction" );
( j% ~$ l7 ]; f7 r( z# }
; T( R# ?; L( b# T( f5 s* m1 L
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 Y+ m; b7 E/ M4 p- S
if( g_pPlayer ){
9 [ B% s: {7 ]% K
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
$ ]' k: s8 G; E: O" j
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
6 @6 d, A' l% }$ J+ E" Z; L6 ]6 A
{
8 M. R% ], u; b: e# D1 \, f( }2 [
if( pLight )
5 J$ n3 H6 h3 [5 r3 t8 x0 f
{
% Y3 X: V! U4 [) I4 f
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
- ]4 p; W7 B! X: q5 X2 _( H% D
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
4 J7 f/ `9 W1 s
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
# ~4 D! B' i6 ~& R1 z
9 y% R3 Y3 d& ~; b( Q; l& x7 Z
pLight->Specular.r = 2.0f;
" @& P5 w3 X- B
pLight->Specular.g = 2.0f;
6 w4 i# \. c: D4 O+ b5 ^4 [; l: {
pLight->Specular.b = 2.0f;
+ |* X D9 ]; l3 E
) c1 Y3 D; o' t4 }2 S& X# M2 P
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
5 m( ?: |& a% u8 }$ h, L6 J
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
4 b, e: R( R, l( \
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
& q3 h- n R! G7 j& Z6 D
) C ?" A, P: }% y4 f
HookUpdateLight( pLight );
: P- m6 T* g: L
* L" X3 L5 }; J7 x
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
l, B% r6 G3 _8 |9 ?% W [
2 L' K/ J" I9 Z* Y$ x: I
pLight->Diffuse.r *= 1.2f;
. a0 N6 w6 k; i- Z8 Y* r2 B
pLight->Diffuse.g *= 1.2f;
# Q/ V3 B5 i5 |) h2 Z) W# ^$ I
pLight->Diffuse.b *= 1.2f;
2 \! E. s0 g4 w+ [7 b1 @
. @0 X3 `0 o9 }
pLight->Ambient.r *= 0.8f;
$ H1 z6 L7 u& @5 \/ y6 ?+ W4 ~$ \0 B
pLight->Ambient.g *= 0.8f;
+ G* ~( Z( I2 K& s
pLight->Ambient.b *= 0.8f;
4 ]9 {& c9 y/ H7 c
7 y& M3 J0 y P4 c' v8 T
memcpy( &m_light, pLight, sizeof( m_light ) );
. X k; X. r- F. T) p2 |
. l7 f% r: B$ J4 u) f+ j3 W
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
$ S( e. Y N. V! y9 B
D3DXVec3Normalize(&(vecSun),&(vecSun));
; J2 C$ a' `- |7 c8 ~8 r
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ M# z8 K- v* n+ N
pLight->Appear( m_pd3dDevice, TRUE );
! u8 K9 ?6 o0 p- F
# Y3 p, n) K3 y( z2 A
DWORD dwR, dwG, dwB;
) V( i+ K y, R# w" X
dwR = (DWORD)( pLight->Ambient.r * 255 );
& Z1 P& ?* p- K5 M" }- D
dwG = (DWORD)( pLight->Ambient.g * 255 );
& O& V2 E; u; R) ?
dwB = (DWORD)( pLight->Ambient.b * 255 );
) o1 p2 J3 F( Y4 p+ L/ e
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 ] c6 g# O- k1 F9 n: `
}
9 K3 R9 L$ e+ F8 v, t! X- W7 z) X; h
}
C7 ^. B% S$ q+ q
}
$ Y' }8 `4 H8 x. X/ z
else
5 N: w- k( w" h/ T2 T
#endif
3 y) W4 f# e% o
$ e' q, L6 @( X2 W2 f
if( m_bIsIndoor )
0 b7 j' L- p/ n' g! E$ R' V
{
8 C' ]- l$ f. K8 x5 q" N$ n: l
if( pLight )
( n$ z% w T% a
{
. f$ v$ G! V" W! W& }" K- u
// à??μ oˉè*
; t- z9 i# B8 O+ ]; W' p a6 g. J
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
0 Z- C- T% H6 a( T
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
5 O5 R9 K5 D: b7 J
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
. n% k9 Z5 _' }" s, J
* `) a8 i8 y# r' ^2 D5 f, C6 g: s
// oˉè* ??à?
& W9 M) i: [6 z7 X5 d# y
pLight->Specular.r = 1.0f;
. b4 u A- Y/ O9 y7 O
pLight->Specular.g = 1.0f;
% I/ o/ b: c) Q, s2 V& d
pLight->Specular.b = 1.0f;
T" o& b+ p( A% L) }. n2 P
// àü?? oˉè*
7 Y6 U( @6 m6 T
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
: {8 N! ]9 W* R9 d
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
4 n$ h& C0 O) }( N0 S h
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
: q) `' s; x0 [
6 e! p0 k4 Z6 |' t4 H
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
: t2 [+ L& P8 b e/ G6 V9 X
{
/ n& k: i Q9 P+ ]2 o5 H
pLight->Diffuse.r *= 0.6f;
8 J: n O8 R3 c4 L
pLight->Diffuse.g *= 0.6f;
' S3 F- C- s6 u7 n! C
pLight->Diffuse.b *= 0.6f;
! @+ |) X4 L! }. x0 K. }
pLight->Ambient.r *= 0.7f;
& R6 V7 Z2 m$ k' B2 I& S
pLight->Ambient.g *= 0.7f;
: U8 M0 B* e% Q* I# h. t4 G
pLight->Ambient.b *= 0.7f;
! M Z/ |# I1 z) v' x, D4 j
}
% S, T9 {, y7 V) t. t! V% Z
" T: C+ m$ i+ i. W( ~ R
#if __VER >= 15 // __BS_CHANGING_ENVIR
# p* m0 h3 H; @) U! n
if( g_pPlayer )
3 E3 C' Y+ Y) [$ J# W7 r
HookUpdateLight( pLight );
- q) Y6 J9 }- e4 M* F) G
#endif
; ]! R* r. [1 [8 y1 v& H
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 g( v- l6 p( o
* J8 @4 X. X8 g2 \! N' Y0 `2 u
pLight->Diffuse.r += 0.1f;
& ?2 y: z! v) t) b0 f
pLight->Diffuse.g += 0.1f;
: W9 C' P% q1 N& h6 s: P4 S
pLight->Diffuse.b += 0.1f;
8 |# E- w5 e. j' v) j! ]! x2 T2 S1 O
// oˉè* ??à?
6 H8 C% e! I. E& w2 p$ F
pLight->Specular.r = 2.0f;
. X5 Y& {" Z/ X' G4 a. v- |
pLight->Specular.g = 2.0f;
4 F1 e. g: f1 e/ h
pLight->Specular.b = 2.0f;
3 P* [, c, o) t+ Y
// á?oˉ
U" y; P( B# J) R0 f9 ~/ x8 W3 C
pLight->Ambient.r *= 0.9f;
1 Z. Z1 X. U# T4 r
pLight->Ambient.g *= 0.9f;
' l5 X* P+ o+ U
pLight->Ambient.b *= 0.9f;
% X8 q2 Q! _9 \: ~
+ l2 f+ P. s# ~ N/ Y2 v+ d. i
memcpy( &m_light, pLight, sizeof( m_light ) );
% X1 C" }2 B, y
' P8 [$ B: c8 Z
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
1 U0 G2 m: b7 g/ J9 N
pLight->Appear( m_pd3dDevice, TRUE );
/ V6 f* m T( [8 t$ [5 p0 c
$ W6 k. I3 l! g. a" u' \
DWORD dwR, dwG, dwB;
; ~5 p2 _' b' }0 K# Z2 _
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 T. ~# _* m1 {
dwG = (DWORD)( pLight->Ambient.g * 255 );
: s0 x: O# O% h$ I3 y* v5 f
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 S8 B! L5 |) g/ O- P% E
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
+ r- Q4 i3 f1 k8 ?& x9 _! o) H' |
}
+ M) x; V! B, D- o
}
/ l& f) z. ^8 Y0 R. X! Y* K
else
9 u, I3 M$ m$ i4 P2 E% v; J
{
0 d1 N5 J2 J) E; q: ]
if( pLight )
# X) C u- g/ @6 ]+ a! O7 c6 q
{
. R. l8 `2 m9 e1 B# u; a: e. n/ n
/ M% e! ^) o2 k
int nHour = 8, nMin = 0;
+ l' {$ x4 E0 `% @' Q2 B3 v9 }6 H! L2 b
#ifdef __CLIENT
_: n6 q) h; ?/ P5 R0 k4 V
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
! S# P4 G# N8 l3 b j4 M
nHour = g_GameTimer.m_nHour;
. k( Q2 A9 M; }8 o% [
nMin = g_GameTimer.m_nMin ;
6 a2 t) j8 m6 s6 c
#else
]6 M$ u' ?) d9 z2 p
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
1 @! O# S1 A" T
if( m_nLightType == 1 )
' x. E! m, z! A/ i7 | }8 Z, i) U
nHour = m_nLightHour;
: ?( c( z: h" U$ k3 }
#endif
* l2 y0 m: ^6 |9 h- R) W" l
nHour--;
# B7 E# A6 r1 F) ^
if( nHour < 0 ) nHour = 0;
4 I+ \* w, C9 S7 s
if( nHour > 23 ) nHour = 23;
6 y% X7 G) T" m' _
2 i" Y% K& S% Q: D8 h H% C, W7 |
//if( m_bFixedHour )
' o% s3 b D! P6 U( F
// nHour = m_nFixedHour, nMin = 0;
: j& V, B$ h# L* e, C T
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
* ^' P! p/ }0 [ F. k+ D
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
6 x+ X8 M, U: m* \4 l4 X4 m
( ^" [- E# f0 Z. Y) s
//m_lightColor = lightColorPrv;
+ t& I* v3 S7 L- l& d
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
* H3 |& {! z- R0 L
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
8 m3 d) a' G, ~
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
x7 V z7 t. A6 C* A0 M+ _
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
6 f& l6 B& \& f9 M& a" t
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
' b. }2 i; d4 x% H9 R8 X3 ^. f J: n
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
3 V2 P# x0 Q! e- s2 X" G% [
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
' u! L: J" T; i/ r) p/ o
- v! _: w$ k# N1 u2 @2 B
// à??μ oˉè*
1 N; X6 `. B4 P3 ?2 I
pLight->Diffuse.r = lightColorPrv.r1;
9 l& k) j" U) n4 o9 z+ p% _* i; G
pLight->Diffuse.g = lightColorPrv.g1;
1 z. W1 g3 }, k* V2 A" l- l) }2 G
pLight->Diffuse.b = lightColorPrv.b1;
: l% p6 `+ ]; R5 N' U; j' D
// oˉè* ??à?
* ]2 R* d% j2 z
pLight->Specular.r = 1.0f;
h4 O9 f& z; |1 p
pLight->Specular.g = 1.0f;
M2 a5 s. n7 D: h
pLight->Specular.b = 1.0f;
" U0 J7 M* [( I4 v
// àü?? oˉè*
6 _- Z$ O9 L1 k# x, s" w+ U
pLight->Ambient.r = lightColorPrv.r2;
4 f. \5 R. ]9 T' Q5 [6 G
pLight->Ambient.g = lightColorPrv.g2;
n0 k0 }5 s! R
pLight->Ambient.b = lightColorPrv.b2;
. s8 R1 j! c% O! S
! |' @6 T' M! B. u( X: Q* x, b
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, h9 T6 O9 z. M6 `
{
: L) @/ n$ s1 l2 c, l; b% v
pLight->Diffuse.r *= 0.6f;
- ?- C: d5 W. w* n3 v2 i
pLight->Diffuse.g *= 0.6f;
* p4 h1 O o) \" U2 x+ J
pLight->Diffuse.b *= 0.6f;
0 e' N( T" e) P9 k, _* `
pLight->Ambient.r *= 0.7f;
. z$ \6 ?5 _# H" b. _6 ]
pLight->Ambient.g *= 0.7f;
* i N1 p4 C' O0 d+ G* z" H9 W9 h
pLight->Ambient.b *= 0.7f;
7 \5 e v0 }* \+ C0 D
}
" T/ C5 m) E) l- y5 J2 a
& k9 M9 `3 c, S& z) j$ _! k. w
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 p& W4 O) O$ v) e% U1 l
if( g_pPlayer )
& G3 W" }) Z, b/ }# G
HookUpdateLight( pLight );
! K( L6 M& a# x' O( E0 w
#endif
2 s8 H' U; @4 t) u" j
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. T) Y7 l( I ~
" {3 O/ }% U! T+ h$ ?# }4 f1 a
#ifdef __YENV
7 A# J8 D; \# i2 I) y8 e. a
pLight->Diffuse.r *= 1.1f;
+ T/ j1 Z2 I: V# v
pLight->Diffuse.g *= 1.1f;
) l) h$ E1 m7 }# V
pLight->Diffuse.b *= 1.1f;
' e6 ~/ j8 }* g% u% F# Q, P
// oˉè* ??à?
. u8 T/ k% r2 [5 d5 z. W& t ^
pLight->Specular.r = 2.0f;
" L& q* H8 o0 W& \- |/ |+ Z
pLight->Specular.g = 2.0f;
1 l$ g+ z3 L) `$ ~2 X* o* c& V
pLight->Specular.b = 2.0f;
t6 A; G# D5 P4 R+ c- V
// á?oˉ
1 [" I4 m8 ?9 k+ ^& c
pLight->Ambient.r *= 1.0f;
" j( @( O9 j l$ J( {: K
pLight->Ambient.g *= 1.0f;
& W A" t8 ]. \" `6 D ^
pLight->Ambient.b *= 1.0f;
: j7 D4 F6 o/ V' x- i; Y1 X9 v
#else //__YENV
9 I7 S' C8 z9 O- b; V* |
pLight->Diffuse.r *= 1.1f;
! b, k0 R. O9 [, g8 `4 C( j- P
pLight->Diffuse.g *= 1.1f;
3 v, N0 j# V7 m& q
pLight->Diffuse.b *= 1.1f;
! X# }4 N, k/ B
// oˉè* ??à?
" }* |$ v- W6 L# ] w7 T6 P
pLight->Specular.r = 2.0f;
7 L: d7 v9 T" X/ z
pLight->Specular.g = 2.0f;
% F) j2 _ r* O1 C- G
pLight->Specular.b = 2.0f;
8 _# D- R4 p; ]: S! _2 I: T, y
// á?oˉ
7 A8 }. V- n5 Y) k! W, w5 m6 j
pLight->Ambient.r *= 0.9f;
, K9 T! x9 h+ J/ a! j8 j
pLight->Ambient.g *= 0.9f;
/ }$ i: m* L4 Y: [* o
pLight->Ambient.b *= 0.9f;
% u; u: i$ L# i; s' x
#endif //__YENV
9 }, U7 _7 ^% J/ C
* f7 w& ^8 e# R( U3 U- t4 B
memcpy( &m_light, pLight, sizeof( m_light ) );
& n+ r% \0 T" ]$ ^" N. y/ Z' v. @
: V, X2 P+ q0 [* o5 w- k
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
: ~. G$ R# `! w, {5 V
D3DXMATRIX matTemp;
6 d4 U c+ }0 O/ |1 y3 e H
static const float CONS_VAL = 3.1415926f / 180.f;
7 z" ~% }( e* ]" h/ |7 c4 d& @
; A2 a- [4 @( w4 R9 d+ W; k
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
5 q7 `, S i5 `1 s4 s
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
0 B5 p; X4 W5 S3 W2 w
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
# |" G% M. s5 P' S1 g! C8 E
pLight->Appear( m_pd3dDevice, TRUE );
7 v( w" n) i% n" N$ @
/ U8 b0 l; t( E% }) ^
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* q% `( Q5 `9 i; d7 Q- f
// D3DXVec3Normalize(&(vecSun),&(vecSun));
4 R& Y" F9 c& t7 m
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% E$ T5 W" \$ j7 \6 y- y" E; D
* X' \5 K, w7 E
DWORD dwR, dwG, dwB;
0 P0 A/ H/ i: k( F1 i
dwR = (DWORD)( pLight->Ambient.r * 255 );
* o1 g% i8 l" k" a( k
dwG = (DWORD)( pLight->Ambient.g * 255 );
, m/ c7 F/ g ?4 F% g+ R" J! E$ a$ r5 X
dwB = (DWORD)( pLight->Ambient.b * 255 );
2 ?, d3 _7 Y( C
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# X7 g# l6 _" g- ~
}
2 Q3 b8 |0 x/ f
}
4 h. f1 O+ [/ f# f
8 u9 J+ D/ Z2 t) @6 r
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
% j! q3 n7 D: w/ {- T' m9 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) );
, O* r0 w) W! N0 h' R, ^
::SetLight( bLight );
' |6 S6 c- y- A3 Q& _
: ^6 r, ^, y8 W) u! N$ N; W
// ±ao? ?D?í???ó á¤à?
' f+ J, S& o. T ?7 L7 q
m_pd3dDevice->SetMaterial( &m_baseMaterial );
. S2 [7 [0 P( e$ l0 C3 X
9 w) l3 @( N9 [3 Y( ^
#endif // not WORLDSERVER
" B3 _& J+ _0 T% l1 S, p
}
4 h" d9 b. H, \% b( M: E
并更换
3 j4 n6 T& f! i7 Y ~, |
Code:
. s W1 g; ^' o- M% |# X/ l
__FLYFF_INITPAGE_EXT
9 F0 t/ C, X9 Z ?4 P# u8 z: }
定义
. A' v2 d& m5 N1 z8 F
5 g7 R! h6 ]* e* c c1 u0 f* w8 G
! K9 t. A" W# A, r% X: N9 W
5 x& g% f4 O: P2 @! N0 m
) V+ U4 z. _9 q' P# w! t* w
现在终于删除我的狗屁加速...
! c! m0 G& ^" c
J1 i* g$ ~4 y2 F6 h
8 F o4 z" ^, U/ Z0 X' d4 R
% O* R$ Y& A' t S f) @
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2