飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
. C9 \+ J: ]# \; z
尾翼:
; L; ]1 j6 }, j5 T; b. b
' w% ?7 S/ V, M. E# P. I* \
代码:
! a; b7 U% { ?% B* o
CWndAutoFood::CWndAutoFood()
, l( I$ l* w" g; s. e
{
0 X. n8 k$ D* z9 ~/ t4 w7 l
m_pItemElem = NULL;
: S# I! B$ J9 j
m_pTexture = NULL;
3 Z" `+ R" m" J- I$ |7 b+ N
bStart = FALSE;
% O$ V7 ^5 z. K3 I- z4 Q
}
, ~# E- z9 A' G2 x( Y
- h- ]& j; k0 E# H7 N0 \
CWndAutoFood::~CWndAutoFood()
8 f e( x: R8 a' H4 v
{
2 o6 j8 C4 m# U) J! d
AfxMessageBox( "AutoFood ist gestorben
" );
$ Y+ q* k5 |: K) o6 e) Z- x
}
. ~& F) E1 S6 P9 V& ^& x
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
/ J& ~- @" J( ~: x
{
9 r' N$ |% W+ d
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
" U! ~, n/ n3 N/ e' a/ ~2 g" m4 {' e
}
0 H6 @0 t4 q7 p
# o' R! ~6 W+ e% K
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
% w6 a3 b2 T; H2 U) m
{
) m; f. f: s1 `5 L$ o( x2 {, C
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
4 B V: F' `! V. k
CRect rect = pWndCtrl->rect;
+ _; Y4 a Y# T3 h3 P6 y% Z
if( rect && rect.PtInRect( point ) )
T" e; e- P- m/ C, u. O1 M
{
: l9 u; [, l4 D1 g
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
; O4 b8 V6 }' ~0 C/ Y' Q; @6 Y
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
6 U' ]. V; n/ x' ], z2 `
{
! q" ]7 n( L% F, s6 k9 {1 p
if( m_pItemElem )
6 q/ p3 j* h V: }# e* i, K
{
! n* ?. g1 q x
m_pItemElem = NULL;
& d- h( K; f, b0 Q1 J# c; s) e
}
) ^6 T1 r9 n8 a' B- {( R
m_pItemElem = pItemElem;
. v2 j! b3 b$ i ~" @
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
8 @1 w8 ~) h( C6 Z' z' j5 p
}else{
2 v5 S" F7 y1 {; J# d
SetForbid( TRUE );
S* Q. q0 y7 t! e @8 @' Y
}
9 R1 H2 | }+ ~
}else{
% [& z9 }) e, |/ `; J# M$ ~
SetForbid( TRUE );
- q0 v. G! \( `) Y3 h% O. v9 W
}
! i8 B8 z3 X$ q) u' D" O* Y
return TRUE;
" L5 E+ ^+ I/ Z" V8 z% Q
}
% f$ z6 s9 L# E1 Q' Z; x* g$ `
8 |/ b) V" O2 t$ s. ?/ U4 u
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
- E' K$ f: R! p8 L
{
4 Y, K X6 q- U# c
switch( nID )
' N; X- |3 G/ ^3 w6 |: p( j p! x0 `
{
; H- h' Y4 P! M/ c8 e7 I! y
case WIDC_BUTTON3:
( \5 x) L9 a4 P0 L4 u4 G4 t- E
{
. F2 v* v# d+ p7 A0 E
bStart = TRUE;
3 b7 P! @& {6 @5 }0 Y5 ^0 s
break;
1 e" S5 }( J5 V
}
# u# W! S$ G# x6 h# ]! A
case WIDC_BUTTON4:
, \4 x& J" J/ d7 }1 r1 p$ f3 G
{
6 |1 P8 ^" G5 e. h, T; H& z" c
bStart = FALSE;
% Q, P5 L! k% `& f
break;
. Z% N( a3 W7 c6 r
}
% s. [3 \, W, M! d
}
4 f. ^" Q. G M9 e
return CWndNeuz::OnChildNotify( message, nID, pLResult );
) r* v3 J' F% I
}
' H9 v' S5 V! L1 p, p
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
2 Q5 j4 o( X1 i) e
{
' j4 y+ C: F* E" f4 _+ D& [$ y6 b
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
! ^: s( _- {6 b+ x
if( bStart || !m_pItemElem )
; A/ r( l, z, F; f: C2 Q
{
* @ x* l* z+ }4 T; R
pBtn->EnableWindow( FALSE );
- U$ c; e% D, a6 u
}else
1 {3 v7 X& C# B/ D: w
pBtn->EnableWindow( TRUE );
+ L( V7 Y# q' u" z
if( m_pTexture )
+ `; s+ r, a9 m( j; U* T4 ^! P
{
6 c( \0 x+ B- B' W
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
) o7 a; C2 l2 q# E3 y
if( wndCtrl && wndCtrl->rect )
. D1 y# G! @( z! H/ [- S
{
) a% x' V) V+ q2 d+ T
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
8 V1 n5 b% o& z7 l" @
}
0 j* ~! R1 n! B% ]
}
1 T1 F" i7 w! g8 U( Y+ q
}
1 K1 D/ U" D5 T0 i- A8 d
( _( s) k$ _1 K
BOOL CWndAutoFood:
rocess()
2 W. \. [, p, M$ I0 G
{
' e. b- V* p% M) g3 y0 p
if( bStart )
% F, P9 G6 \' m# D
{
) [8 V) I" C! b" i
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
5 q$ [% \; z9 r
{
2 g0 a2 O6 A( M/ W' b0 N
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
- p Q% V$ D, g: \# A
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
$ d9 ^* _) I; j. B# v1 K- H
}else{
, V. h$ f, ?( t2 x3 V" c, ^
bStart = FALSE;
% q- M' r0 s3 K f( n
m_pItemElem = NULL;
4 q$ O) D4 d7 h
}
4 C' o' g, P$ M! P: K7 F5 i! m
}
, n' U. F! x% J3 j( z! l
return TRUE;
: [1 i9 f' ?3 D& E. y
}
$ L( w# W; y. W4 h# \7 y
* V9 |: }2 L6 h0 T7 E$ K
登录视频废话:
( U$ x* \$ M' l# x' B7 j4 l
尾翼:
- ^% i5 O; E2 Y* k( T
/ ?- t. Q+ X- g4 t8 U5 E$ ~
代码:
3 h+ z* u' _8 P5 J
, O0 ]0 P0 R9 W( I2 e- M
void CWorld::SetLight( BOOL bLight )
5 M2 E4 G6 `' U' H3 E* d: ?) W
durch
. f8 a3 f3 j0 y/ ^$ z+ e* V0 p
Code:
# M8 s6 [5 |; u' I7 \5 R) V6 d( @
void CWorld::SetLight( BOOL bLight )
+ g7 K4 l b: Q
{
$ e$ K; p) `1 Q6 _) Z' T& V/ F
//ACE("SetLight %d \n", bLight);
8 i0 o+ D8 N1 L3 B) S0 r7 Y, w
8 x, _: x% V1 n$ E+ ^8 q0 g& z8 Q/ a4 V
#ifndef __WORLDSERVER
6 d/ j3 l5 N) F6 _. E
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
& q, N3 T1 O) `# ]* _2 n
CLight* pLight = NULL;
4 ?, N8 X! |0 D# l/ J
$ z5 N+ J- Z- R4 U; \9 B/ i
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
# m) _1 ~& u, J% F! A
. ~2 _( O( u8 b7 N
pLight = GetLight( "direction" );
' A7 i+ p/ V" `9 c! d2 [' |/ i
7 y0 h+ ?9 E( `- _& T% `4 Y
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ G: Z# k& K0 H: K+ w" h# {0 v
if( g_pPlayer ){
% E7 c* Z9 G! l- l3 Z
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
E7 }5 V) }4 Q
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
# x5 [/ g0 L5 \' T* w
{
+ ]0 i+ ^6 c5 N8 E
if( pLight )
$ H" c* C( G7 e2 U9 s
{
! d8 f( E9 S- X. P* ]3 h
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
% A: d& O3 U7 H
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
$ H9 P8 P. w; S$ k" Z; O
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
" P$ ?6 f& P# x
5 v: z$ J8 j% R1 T
pLight->Specular.r = 2.0f;
2 L& i/ N9 x% G% x. c' A7 y* a
pLight->Specular.g = 2.0f;
/ T. @ w4 H4 M$ D, l
pLight->Specular.b = 2.0f;
+ H' \$ L; B% N* F: L! U/ s; U
, |+ t) B5 p( @2 Y
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
1 h7 j( T( S- R1 z5 O. i
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
/ Y( d4 \' n+ V; x$ k; N
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
J3 q8 U4 H0 k9 J4 W2 ^, p
/ r) j. c/ D9 W; e# |. ^; b5 o2 i
HookUpdateLight( pLight );
3 F* n1 N* `- F% K3 s
; D# k9 E v5 m- n/ o6 q) m( t' w
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 x% E. G; i8 v( O* \: ^
/ H4 D( Z1 B; ]! O+ |0 X( X; t' Q
pLight->Diffuse.r *= 1.2f;
- Y) E) a; x4 ]' O4 f
pLight->Diffuse.g *= 1.2f;
# L# V* P$ c5 z0 _% B$ z/ o
pLight->Diffuse.b *= 1.2f;
3 G6 h* i5 A h$ X! w
; ~1 N7 `0 r* l5 f# N7 ^3 K# a
pLight->Ambient.r *= 0.8f;
7 q8 x9 B1 H$ s# x( P/ T; I( w7 r
pLight->Ambient.g *= 0.8f;
' I7 ]( g2 D" W( B! |( j
pLight->Ambient.b *= 0.8f;
% x% O5 g: x, p
% R+ Z. |' a& L9 ~+ `/ H& p3 X. ~
memcpy( &m_light, pLight, sizeof( m_light ) );
5 L+ m0 m. k) o! H- b \: d
2 g8 W8 k" @, r8 ?# {' V6 z1 d
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 Z* h- I- o/ b2 S7 Z
D3DXVec3Normalize(&(vecSun),&(vecSun));
8 [$ C/ Z. g% a7 A& N
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 S$ H7 y% G$ x- V2 p* y
pLight->Appear( m_pd3dDevice, TRUE );
! e ?- m0 o/ h/ ~8 A
$ {* f( X S, L8 d0 h8 }5 B
DWORD dwR, dwG, dwB;
, i' R" C! r' o5 N
dwR = (DWORD)( pLight->Ambient.r * 255 );
^6 K6 e! p: a e J4 G b
dwG = (DWORD)( pLight->Ambient.g * 255 );
) d) v& B& @2 A, H
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ z6 r6 E" N; I* A0 v8 O
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 u: G& M/ C, [; N8 [
}
4 E2 }4 Y- z8 Y8 I6 b3 g6 c5 T$ S
}
4 I: N& k( _ P; |9 o/ [' P; i) y
}
5 D5 x6 L- q$ H
else
3 L& X* ~$ R9 _
#endif
' I. X5 w% `1 Q. Y6 M: Z
. U" T# f' e; _ Q1 n9 D
if( m_bIsIndoor )
% \1 l% s, w4 B
{
* g# y: `; v) n
if( pLight )
$ |( Y2 ]3 E. g0 }4 z& T* w' N1 U
{
) E z2 W4 f& U! Z4 W
// à??μ oˉè*
; y' b3 V3 a8 |( c% l2 i
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
- ~% x7 H) y8 Q9 s! a
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
0 _, }0 V4 D x! p
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
' ^: h9 B1 `0 R8 ^7 G4 Q Y- T( G
' l- L+ Y- }/ f M* D
// oˉè* ??à?
& d5 b& a4 Z" X5 n) J! @
pLight->Specular.r = 1.0f;
& ^3 E" d4 u5 @% V* H9 V
pLight->Specular.g = 1.0f;
8 H; S& J) S: }7 f x2 g% [3 t; U
pLight->Specular.b = 1.0f;
4 D& ]8 l) o) H. p
// àü?? oˉè*
" z, ^# Q- n, P0 b
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
3 U/ T- B; n5 V* T
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
. ]' G: [; ^& W: ?5 C+ S% B' h
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
3 \& V8 R9 K. _
% _. A0 I" Q: l; c
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
. d0 Y4 |& k. m7 l" x. _. V1 e
{
7 z+ f! Z5 T: y Q, L
pLight->Diffuse.r *= 0.6f;
4 H: P" k* G' h3 k% ?9 }7 J; F0 g6 A! K
pLight->Diffuse.g *= 0.6f;
6 A9 A! _( O9 J9 F+ V* V5 Y% ?2 F
pLight->Diffuse.b *= 0.6f;
3 d0 c$ N6 K4 ^7 N$ `
pLight->Ambient.r *= 0.7f;
\' ~3 \% V) w+ g6 m+ l) p
pLight->Ambient.g *= 0.7f;
3 z5 c' F1 ]+ ^1 f
pLight->Ambient.b *= 0.7f;
( T# y5 v, \3 d# v! q
}
! J; \( |. n( v k
, b. a; F5 e/ |* t" I9 n
#if __VER >= 15 // __BS_CHANGING_ENVIR
( f9 g: C* i0 @3 A1 D1 ~
if( g_pPlayer )
! m- [- U$ ]5 T9 R! @
HookUpdateLight( pLight );
6 u U- _ |8 O
#endif
! p0 v: R' _* k# o
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 ~2 R1 `/ d+ o( L
% {3 X& V4 @2 ^& }: a2 S; P
pLight->Diffuse.r += 0.1f;
: s. @1 K; A% [0 H/ H4 W8 i$ ]
pLight->Diffuse.g += 0.1f;
7 ^& n7 }! B) j3 [$ l* O# y! x0 k8 x
pLight->Diffuse.b += 0.1f;
5 S/ U8 T1 r+ p' }+ c
// oˉè* ??à?
2 V2 M% [8 @; [' Z I, h( U
pLight->Specular.r = 2.0f;
, ]* k5 ~& m5 n( e+ O+ [1 t
pLight->Specular.g = 2.0f;
+ v H9 j3 ^8 q" d+ c
pLight->Specular.b = 2.0f;
, A" O. G8 W8 [; F
// á?oˉ
3 C2 g* v' B, Q8 }
pLight->Ambient.r *= 0.9f;
: v8 o K4 |9 i4 G
pLight->Ambient.g *= 0.9f;
6 c+ q0 [$ O- n! S* l# s" V' p
pLight->Ambient.b *= 0.9f;
3 ~6 x! v9 D7 i3 u M' P
! |) S" h8 m6 l v
memcpy( &m_light, pLight, sizeof( m_light ) );
4 R {; k0 h/ m4 d: K
5 R! k) K0 k$ ?2 U
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
) O5 w7 h. P9 W. M& K. i
pLight->Appear( m_pd3dDevice, TRUE );
! k. s; N, w; f# _$ d/ H! X
# ~1 L- m1 f3 n4 m8 p1 }
DWORD dwR, dwG, dwB;
8 q) ? N4 d2 O4 o" `
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ T+ L u, {" G
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 [7 `- N3 K( l: p
dwB = (DWORD)( pLight->Ambient.b * 255 );
: T; q! g8 D% S7 x
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% Q0 h' Y0 K* J* N. }( O
}
7 J# u( A C' O
}
' [+ s) l' y) z. ]) G
else
8 ]) U7 k# c' e& T. R
{
3 g# h( \ P e- ~0 A% m) F
if( pLight )
. ^) h5 Y$ R( M3 y9 E
{
# y5 X3 \2 i9 n& ^0 C8 {- @
( D6 \1 \1 T/ v2 D# q% ~$ v/ G
int nHour = 8, nMin = 0;
3 X7 Q; S9 h9 M2 I! r
#ifdef __CLIENT
0 }" c$ }8 ~) _, I1 r
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
$ X7 n8 C. c5 E
nHour = g_GameTimer.m_nHour;
; {# @# W8 E4 K3 T/ A
nMin = g_GameTimer.m_nMin ;
9 x m: H, z8 d1 q/ E% j
#else
7 ]9 k1 f' h0 m! N' ?7 u% _
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
) @( L- H+ N8 v1 _
if( m_nLightType == 1 )
v# E, {0 ~6 i9 F: s$ R! z+ k p
nHour = m_nLightHour;
3 J& L& Q& ?0 }% s8 g0 j
#endif
3 A$ Q: N1 c$ B) p
nHour--;
4 Y2 u+ c' Z' J7 T1 y# [
if( nHour < 0 ) nHour = 0;
1 y6 i6 J+ E8 g& a
if( nHour > 23 ) nHour = 23;
! j, I# l* q6 A3 |8 {0 N' }; J
2 m. h) ~! \/ G* T5 s1 P, b% M) ~! P
//if( m_bFixedHour )
) f u! U( Q0 T2 i3 }& X0 A
// nHour = m_nFixedHour, nMin = 0;
5 E" c( E8 f% n4 a5 S
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
" R$ h# _! U) G2 p: ?- ^' J' D
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
3 u- u) x# T. u6 q: q. |
+ A" i* z( s$ K" N" w6 w
//m_lightColor = lightColorPrv;
. e6 C& _% Z; j j5 \" W1 i
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
9 ^7 `) t1 c# S2 g* }
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
8 ~- B% B4 a# b" G9 ?% n& O7 z
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% Q1 ]- [7 c( t. t( _8 n" h8 p6 e
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
/ a% q) @ k9 P
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
5 o3 _7 ?0 T- v
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
X. h& s% e! U( h
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
* q" H( @4 a8 j' q6 z- ?
, j; h0 r s% g m; n" Q
// à??μ oˉè*
7 g. B" d7 f; Q) a2 y- i
pLight->Diffuse.r = lightColorPrv.r1;
' {2 {6 r7 u4 W) g
pLight->Diffuse.g = lightColorPrv.g1;
0 I, p9 j0 m$ E/ A1 T
pLight->Diffuse.b = lightColorPrv.b1;
: z |; y- j* {/ C5 T# R0 W" d
// oˉè* ??à?
3 n' |5 R* S3 R
pLight->Specular.r = 1.0f;
$ d5 F3 a* Z: c9 p& r
pLight->Specular.g = 1.0f;
: ^7 M8 i( c: z$ @, U( B3 U
pLight->Specular.b = 1.0f;
0 N' v) ^) g3 T& }
// àü?? oˉè*
, i8 Q( k8 w. P# l, s0 n: O
pLight->Ambient.r = lightColorPrv.r2;
# B; P* `: \2 }3 [& V% j
pLight->Ambient.g = lightColorPrv.g2;
1 [+ B1 S* P1 A4 G# o* c5 G: O
pLight->Ambient.b = lightColorPrv.b2;
" [( E* d( m% X; `; l: _$ Y
) ^- T3 l! I9 F8 r" v
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
& C+ A g! k8 m0 i0 I2 O3 T
{
( v- w, B3 [* B% l
pLight->Diffuse.r *= 0.6f;
0 D) n4 p; N* U0 F N
pLight->Diffuse.g *= 0.6f;
/ o8 n" }: j) }$ a q4 q- x+ u
pLight->Diffuse.b *= 0.6f;
( F b3 q- K* T9 X- Q6 h
pLight->Ambient.r *= 0.7f;
3 S. C u# J! u5 s
pLight->Ambient.g *= 0.7f;
" D0 B0 B" ?; B& A8 g
pLight->Ambient.b *= 0.7f;
! m( `/ x) N& w8 ~* \1 b
}
1 ^, d7 o# F2 J6 J
/ n* K! z2 c# h
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 y3 \3 P9 z8 S
if( g_pPlayer )
, [% ^ P+ ?3 A4 o; V# n1 D W
HookUpdateLight( pLight );
2 y* z6 p5 ], X$ F( g
#endif
+ |' l- J# V& J4 k. W8 I5 T; u
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; g G, A8 z! C! G
+ ^4 }$ }" s2 J. i: Y6 @4 R/ q
#ifdef __YENV
- s) \; a! H/ Y4 P2 g. o3 ~! f
pLight->Diffuse.r *= 1.1f;
- n3 r0 z/ s C1 Z
pLight->Diffuse.g *= 1.1f;
8 h0 h/ y+ ~2 K9 X
pLight->Diffuse.b *= 1.1f;
1 M7 i; R3 T! ? C8 e/ C
// oˉè* ??à?
3 } p% [. I i" c% P# t
pLight->Specular.r = 2.0f;
! d* M R. h3 P' a# x9 u
pLight->Specular.g = 2.0f;
1 K8 [7 D( o; v/ Y W, L2 z
pLight->Specular.b = 2.0f;
) ?' t9 V2 t. ^ b
// á?oˉ
) y: T2 w0 U4 P1 V! B! ]; O
pLight->Ambient.r *= 1.0f;
9 m* E# Q( `+ e( v3 T
pLight->Ambient.g *= 1.0f;
7 U- m5 H) q: i A6 ~+ f) g
pLight->Ambient.b *= 1.0f;
- K) X3 h% {9 S" P" q' ~
#else //__YENV
: w$ A1 H& N2 n i3 y5 l' |
pLight->Diffuse.r *= 1.1f;
+ [; ~! X. i' Y$ k
pLight->Diffuse.g *= 1.1f;
+ H& h3 ?% Z% r* D8 k# r, [: N3 a
pLight->Diffuse.b *= 1.1f;
) |# Q1 x2 @" O& {
// oˉè* ??à?
3 N% f* H% l6 _9 Q$ M0 ~
pLight->Specular.r = 2.0f;
9 U1 }. b- H% w% [
pLight->Specular.g = 2.0f;
. d7 P: R5 }9 _$ A. Z2 r. m
pLight->Specular.b = 2.0f;
3 P9 T3 S! m( T$ L2 a' [/ Y
// á?oˉ
& f5 d8 t; R2 d2 T: n0 ]- `& X- f& \) g
pLight->Ambient.r *= 0.9f;
" \! L; r# _$ J6 w$ x9 c0 {
pLight->Ambient.g *= 0.9f;
* Q8 t1 A; a( @7 d. s
pLight->Ambient.b *= 0.9f;
1 i# b% ] O& [1 G
#endif //__YENV
7 f6 N5 b0 y+ @8 Z b. j; ~+ X* j
3 i$ j% W: M( S
memcpy( &m_light, pLight, sizeof( m_light ) );
5 V' x2 F' Q: f6 u& ^
) j& o: g$ @4 M$ d* E% I
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
$ m0 }5 T( J4 T* z3 E
D3DXMATRIX matTemp;
# P) i) z, _# A; o
static const float CONS_VAL = 3.1415926f / 180.f;
% S5 [9 l( Z/ j' R8 T
0 e, T; b5 Z' G5 Z. B+ Q) ^
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
, L# S) A; f- x2 {, j$ l" V
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
& j* a2 F- h* l* `
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
/ \4 K- x" d4 _. k) T8 y5 y
pLight->Appear( m_pd3dDevice, TRUE );
- s: C) u' b( w. `: x' P
' y9 u6 p" J) F/ | }
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ @7 E6 c+ X+ K- r# z6 @
// D3DXVec3Normalize(&(vecSun),&(vecSun));
( F6 G6 u5 }' D3 n6 ~1 G% g+ O
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
4 ~# s2 n0 P( \
6 u4 b2 _, r; ^% {7 O
DWORD dwR, dwG, dwB;
, O% u. m) r2 Q' V) a+ q. e: X
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 e% j; A+ F- M& C i
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ R. @3 H4 G" x
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ z- `- J/ j' L4 b# ]* g5 ^
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. b; C: Q8 l& w# F
}
, [; g; m; ^* [8 J- B
}
: \& h7 o2 e( t8 b$ e
* `( i$ l& Z1 I+ D1 X& Y) B
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
3 c1 B. n, O9 ?) @6 Z! B
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) );
7 N8 T4 z6 K& R- o
::SetLight( bLight );
2 G1 P/ c5 W0 f+ P5 \; D+ g% N
, `. s. V7 `$ x5 _
// ±ao? ?D?í???ó á¤à?
* B1 A% T4 Y& ?0 F, _; E! p5 U7 a3 h8 f
m_pd3dDevice->SetMaterial( &m_baseMaterial );
5 A: a( T" N$ p4 ~! z/ x
# D( \, w# H6 r4 m
#endif // not WORLDSERVER
/ M) I- V% S. |
}
0 I! i# C4 B# m' X8 O
并更换
+ ?# I4 e* f" Q3 Q. y% L3 e0 h
Code:
9 ` ^9 u& k) @1 m4 D- r
__FLYFF_INITPAGE_EXT
* y2 c6 h" H% M
定义
! t( N5 {& u# w6 j% |- a' [
$ g" p- \* T8 [+ L9 D! J
$ G" t9 N% M3 X% F
- `3 s7 U2 u! T: H" A! a
$ ?" s$ M& W0 z3 o, ?: r {! m
现在终于删除我的狗屁加速...
. B, p* `9 x; F
3 I3 u* x( S: [# {( Z
# o' `; \2 ^. o" r8 |: L
: m: u; H8 w$ D& k6 v0 J
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2