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