飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
7 W4 c4 e! [" f0 u n1 I; Q
尾翼:
# W: c2 X4 `) b" U g% d
$ U. i0 f1 T# p" a5 ^' Y
代码:
3 M3 p# M# j$ f
CWndAutoFood::CWndAutoFood()
6 _9 A3 V( R7 d
{
& a7 V% |# O4 L; i5 D
m_pItemElem = NULL;
( o, V8 u2 H) a7 L6 S0 Z
m_pTexture = NULL;
( _8 V, v+ f' R. i9 @
bStart = FALSE;
) }2 [8 d, S5 w- U2 M: r
}
" }6 i J" Q- w- z. u$ C
/ ~3 G1 q/ O" k4 ? u
CWndAutoFood::~CWndAutoFood()
; _; L, l) s3 \, Z
{
3 [% O) i: i% \2 W4 z, y/ P( ?6 q
AfxMessageBox( "AutoFood ist gestorben
" );
: _( H5 K- ~5 V _5 N* V
}
. u* x0 N8 Q2 V. ]( ], h5 y( m+ o
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
4 C0 y& o; _6 a% f; ^* i% P
{
( T! {, L1 _6 D% ?" g' k/ M
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
& P& t" m; e2 v2 e7 K& V, L0 K2 N
}
! ?5 c$ p& h- u
6 p! L" J5 h/ w0 ^% [! H/ a: S" m
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
q6 w6 R$ e4 Q8 ^; Z- ~
{
! j% a3 a8 {9 s$ `
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
o- M4 e, K4 F1 P( B
CRect rect = pWndCtrl->rect;
/ i& d: U2 U$ c% u# \
if( rect && rect.PtInRect( point ) )
/ Z4 S& \7 C: ~+ `1 T
{
5 M. k! D- u/ ]" y" p
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
9 J& u9 q' l% q
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
6 p3 [- E. l" T
{
6 K4 D W7 W, a
if( m_pItemElem )
7 v% N; J0 m2 T- z5 S- ~; E! W5 T
{
! t4 }, r) k4 }- a4 e8 z" ]7 r
m_pItemElem = NULL;
% f, h U4 v& z* n Z5 j; U5 k
}
0 v g# |) h! h
m_pItemElem = pItemElem;
; W1 W6 H3 j5 p: s" ~6 I% g8 n
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
- C) j# L$ u* U7 H `* y n# X
}else{
" \& M8 |" r$ q8 ]
SetForbid( TRUE );
) f+ ?' x2 P/ Q4 c* h
}
' ~1 d! a* ^! P/ U8 p
}else{
N; M# ?# k- m
SetForbid( TRUE );
( E( a( f6 w+ G- \* h. w
}
% u6 A* z5 @4 }$ y* A
return TRUE;
' e/ w' F; z7 S- f* v
}
& C5 G9 l# A* T6 W7 ~8 p/ |
- w. h/ ^- J! @" z4 E
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
* F4 s2 x' |3 J) q- F7 |$ y
{
/ w* S( ?( {4 M4 I
switch( nID )
1 r! M: G0 V" p0 M3 G0 I8 A
{
7 ] B: G# O) X7 B0 t! t/ y
case WIDC_BUTTON3:
4 O( u: b8 S, I0 A' Y+ n
{
+ l4 g& p; J r2 _) Z
bStart = TRUE;
( o9 O. e2 {/ _
break;
9 X; U9 w4 f5 L0 ?$ P2 M
}
/ I; Q. V$ V' K9 b( H
case WIDC_BUTTON4:
9 W, q2 y( h( ?) K
{
1 K) p: r1 A; e6 J" a4 D4 F
bStart = FALSE;
0 n2 Y0 A6 p1 z" n$ m' `
break;
w" |0 {1 K/ P$ U4 Z( D
}
" \% I% D$ q; Q$ R. V$ w
}
# V6 j' I1 U, g) e, ^1 d
return CWndNeuz::OnChildNotify( message, nID, pLResult );
8 T+ p$ F9 E& _ t2 j
}
; M9 e( i: @/ H1 K
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
9 p2 N7 Z4 [6 u* r: w1 V
{
, E; M7 ^- s5 [4 K9 V7 g0 H3 u
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
8 Y* j1 G& _% e4 x& \
if( bStart || !m_pItemElem )
* V) g1 W, w* t. u
{
9 s; n0 V5 _/ N, Q+ A
pBtn->EnableWindow( FALSE );
/ D2 \, i: G' _/ B7 p8 ]5 Q) i
}else
7 N6 t+ R& P6 S* L9 D& ?" l/ |
pBtn->EnableWindow( TRUE );
6 d3 S$ c' D, N# N8 R" |
if( m_pTexture )
3 [" m# P$ @, m3 N: V' t
{
; x: e9 j% G) U& @* H, s( |, N/ O6 ^
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' }. [! k; \5 ]3 x0 C* s. u( }
if( wndCtrl && wndCtrl->rect )
) r& J) M5 y( g& w. }
{
+ t3 M! J v% i6 u2 P" ?
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
4 D, X' T6 T/ Q6 I. _
}
* G5 \5 a) r/ e8 B
}
( D n' W1 b* M1 l2 Y+ B- I, T
}
: t% X7 e. @8 G: l* o( v9 Z6 u; D
2 y* x: i/ l" q. h9 b% d5 V
BOOL CWndAutoFood:
rocess()
9 P5 t/ e# k, L! |# p4 u) g
{
: \. o. `; g- G! A
if( bStart )
6 S7 Q. t C; d" y; e8 ]( ?' P
{
?! |9 v; j& b6 z- D
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
8 |) Y6 |, W& F$ H
{
& }' g6 d' J' ?4 D* y: O# b
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
! }% d6 z6 x6 K6 a
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
$ y- ?; p' H$ v$ T; Q" `. _
}else{
9 g3 E3 h' }+ K
bStart = FALSE;
; O" X- r" I4 u: t% {
m_pItemElem = NULL;
1 x: ^+ G) t' G" ?- N( j
}
0 s# p" S/ ]8 _ `" X
}
; n5 [! C3 k( Z
return TRUE;
- U3 A- o) D- k& Y7 D2 i* L
}
. ]+ U n4 z. q1 s
! U$ i* P" [/ Y K" C8 m! ^8 Y
登录视频废话:
3 T2 }: H. I1 p1 I/ I
尾翼:
4 B8 M* _: n5 E5 ?" E3 l
+ l/ O! W" y" L& J
代码:
+ }! H( e: D; t7 n0 T/ X+ q, m5 s
# p1 _! r3 O% |0 P6 D# H- s4 O* K, j4 |
void CWorld::SetLight( BOOL bLight )
& ]/ W0 {4 g& H8 B, d) i) f
durch
2 n6 f; F# v( h: s
Code:
+ o; @& P& z3 C/ G7 L
void CWorld::SetLight( BOOL bLight )
- ]: f# J5 t1 ^& T& S
{
. M1 c" V% G1 U+ s( \9 y% d+ _
//ACE("SetLight %d \n", bLight);
$ a# ?: ?+ A1 ?9 r/ ]7 O
& G. j3 X( K ?
#ifndef __WORLDSERVER
* m; o, S$ b7 |9 a
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
) s0 s& G/ r" |) A0 ]7 a8 Y
CLight* pLight = NULL;
% U% B+ J6 Y4 b" {. D: h( _; W5 J9 _
( a7 A- v" f' r1 f
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
2 f& X. M" o) R' u2 x
8 r: U% z. F8 g3 ?0 ]8 ^" k1 e
pLight = GetLight( "direction" );
; {; k5 s9 i! Y [% W
- f! t2 ]1 N$ _/ M" O
#if __VER >= 15 // __BS_CHANGING_ENVIR
" v9 k+ o L) F: y! [4 v( \
if( g_pPlayer ){
0 }! \1 K* r2 k
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
- I& _/ K/ S8 D. e: P# N2 d
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
8 `1 @4 {, ^6 S% q U4 C f
{
+ o) Q5 i' H* b r0 b7 L6 T
if( pLight )
% V: N |$ g* X5 C
{
: [% }) z, E$ u5 B4 o
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
. g p% n' O3 T0 G+ J
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
; B ?1 X7 Y! N) P
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
8 J7 i# z( Y2 ~" q/ s: A
, ^; b, {# {1 K
pLight->Specular.r = 2.0f;
" e8 n; ]6 Y& G% i8 T! g, Y5 Q
pLight->Specular.g = 2.0f;
9 U- r: }& Z: u
pLight->Specular.b = 2.0f;
$ O: D7 k; m- G4 x* A+ @. g0 x
+ J/ o& s$ _5 q
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
' A; Q3 D$ b2 h6 e) g+ z0 q8 t
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
4 @% P e5 E8 U/ b9 `3 D9 `
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 i0 ]/ P% ]: D4 R% v6 ?, B% v7 g
9 e% _5 V% ]* V0 `
HookUpdateLight( pLight );
/ a' O$ E- |* W, Y3 U
* [; w/ N. d, J
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ v+ E9 X5 P: ~ B F5 ?
" {! n3 r; e: G: t5 h; ^5 N' ]6 p
pLight->Diffuse.r *= 1.2f;
3 Q) C) y0 j5 w; m9 ~
pLight->Diffuse.g *= 1.2f;
: `& v" m: P' K7 T( w c5 n
pLight->Diffuse.b *= 1.2f;
! E9 k- w0 [& d9 p
0 e% U* t) e6 g$ B
pLight->Ambient.r *= 0.8f;
. S, Q P! ~2 x; M: r. b$ _9 X p
pLight->Ambient.g *= 0.8f;
" u8 k! }8 P" `( z' I1 N' K
pLight->Ambient.b *= 0.8f;
% b( b6 B8 y3 F7 i
9 D# P v J1 a# i! h6 b9 p+ Z4 H
memcpy( &m_light, pLight, sizeof( m_light ) );
# t# C/ D- d8 W" N) D! z
+ F+ L9 ~. K) ]- i3 T& b S
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; t( V" S0 V3 H6 E1 z
D3DXVec3Normalize(&(vecSun),&(vecSun));
5 ~( C6 o$ d* j' V
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) W' d4 l. Q% G6 M5 W0 Y
pLight->Appear( m_pd3dDevice, TRUE );
$ p6 u2 }, m( N/ n$ ?8 l
6 A6 E$ J* X% O. Y* `
DWORD dwR, dwG, dwB;
* U+ ^, Q: c9 D5 @6 O% f
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 z9 U5 Z! s8 s. H
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 m( [" h& @' K q) N
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ a% Z& b) X% b
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: p. X* S1 ]+ C6 `: R
}
9 w2 v0 u7 r" L+ j( ?$ c
}
: ^6 q" y3 ?9 f6 |. Z
}
3 f* n2 y# Q$ O0 |4 |- P" o
else
; C2 S( }9 f5 T! E9 l
#endif
1 |( Z; j9 t, n
5 o* H, y- y. i0 T# G8 w
if( m_bIsIndoor )
! |8 d7 ^! H+ ~* [$ R0 _; j% C
{
' j2 O$ k) Q& M0 n- f) ^: o# n
if( pLight )
& g- m+ c' M( p* A3 Y; H8 y# d
{
& [, q3 @" g( D* b: W
// à??μ oˉè*
& R1 I" U/ x4 n% P) n
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
) q' l' |: E1 |' ~. V
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
, R) i. A6 @2 ~+ \3 V
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
/ ?, q, J0 X3 q! j) j
+ @' ]3 t# ~& _
// oˉè* ??à?
5 f4 E- i5 [, N
pLight->Specular.r = 1.0f;
: Z6 K7 e9 D+ e; b& n, e
pLight->Specular.g = 1.0f;
# j. _$ r) J6 y1 A) }! F+ b2 }+ @) H+ t
pLight->Specular.b = 1.0f;
, q$ _4 r4 h/ m1 |; m9 z& s2 `( ~
// àü?? oˉè*
+ T: \5 E( |2 F& W6 o
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
/ g3 h g8 r2 g
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
6 b7 W O# o9 o; g' ~9 @( |
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
+ S) q6 z e* E) C
3 }( T+ t/ c7 s7 N0 h
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 k) ?% @, U, K. S5 L- O
{
5 x5 g) t5 S9 { D
pLight->Diffuse.r *= 0.6f;
9 W. M: e2 f$ r. j& ]' g
pLight->Diffuse.g *= 0.6f;
! f# k% v6 d1 t5 _5 B0 e
pLight->Diffuse.b *= 0.6f;
7 I7 u ?3 f+ K! I7 x
pLight->Ambient.r *= 0.7f;
8 a2 `' b7 g% a
pLight->Ambient.g *= 0.7f;
: g. m A4 _2 A* u) B
pLight->Ambient.b *= 0.7f;
2 v, I& }, M1 b9 e# A+ K
}
1 C& v3 t1 I5 E1 k* p
. X+ k- x) p3 r& _0 V& l, b
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ ?' s7 H$ f2 C# @
if( g_pPlayer )
3 J! H E* U3 L% l& O5 n! K
HookUpdateLight( pLight );
5 O# y P d! u; `" H. v
#endif
/ Q! | K( n7 v9 q" k+ w3 ]
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 R4 e K" ^. R+ S8 ?8 n1 O
+ N7 O) \) [# z% E7 o
pLight->Diffuse.r += 0.1f;
# b4 e( {. u1 p' t0 z- |
pLight->Diffuse.g += 0.1f;
8 `- R# q8 i& n4 O: ?4 {" L" P7 B
pLight->Diffuse.b += 0.1f;
k$ n, T) j# N5 f* l; w6 J6 r
// oˉè* ??à?
9 w1 }. N% O. ~, s( B
pLight->Specular.r = 2.0f;
[1 f& L6 D( Y, Y, V! c, x
pLight->Specular.g = 2.0f;
0 }, S" P2 W0 q1 u3 P
pLight->Specular.b = 2.0f;
2 q3 N& |4 J$ Q$ u
// á?oˉ
, `, o7 e5 _6 }
pLight->Ambient.r *= 0.9f;
& x2 i9 {8 E6 H$ `4 U
pLight->Ambient.g *= 0.9f;
/ x7 \, p0 a; N) ~! S7 f, L
pLight->Ambient.b *= 0.9f;
+ O7 L6 N. l" {" t5 L$ J; c
# o3 ?) F p" m9 S; ?( E
memcpy( &m_light, pLight, sizeof( m_light ) );
D4 Y; ~7 a* G1 H6 M
# ?- w ]& N) U4 x3 Z: w
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
& [' y2 X$ G) S; v# A4 R/ }. k
pLight->Appear( m_pd3dDevice, TRUE );
i) J! y/ l1 [' z6 w2 B
$ R! \8 d, ~ q+ L8 b
DWORD dwR, dwG, dwB;
' t, [% i' L6 v, A5 x& k; K( M& u
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 X: C" H2 U& X1 O; H0 L! o
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 z# r4 b3 h& ~
dwB = (DWORD)( pLight->Ambient.b * 255 );
. d' z% s S7 _
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
, U, O* w/ j q E# G) g* |
}
3 o- @& `2 H! Q
}
$ L1 L, F& d8 [& |
else
+ k" j0 B. `7 b
{
2 p% }6 i4 K1 s, ~# s
if( pLight )
2 E8 d% }4 }5 ~2 q0 Z0 p
{
& ], v( T7 |6 p) R l: Y+ H
' v! |4 q# B. F
int nHour = 8, nMin = 0;
* ?: W3 |: H! y; \
#ifdef __CLIENT
L' X( X( z2 N4 x- o- w; E" A0 D
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
# W Z! p! U0 J1 z
nHour = g_GameTimer.m_nHour;
' @$ s: R5 S6 s* n1 a8 O2 j
nMin = g_GameTimer.m_nMin ;
( W* V& T5 o3 c ]
#else
! n- }# m3 g1 r9 m- O8 h+ E& C
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
; I9 l) K; F% Y; i' ~; r
if( m_nLightType == 1 )
O+ c* @4 B4 Q# k
nHour = m_nLightHour;
0 @& ?: _ t9 j9 K& k, B4 @' t7 h$ E
#endif
a2 E; }- X, X5 |4 h
nHour--;
7 K, t6 S% j1 P4 @
if( nHour < 0 ) nHour = 0;
# |7 T% P2 u8 H5 C, S3 r: M
if( nHour > 23 ) nHour = 23;
7 }* H: c& v' y- t2 c' S
6 k' w, ]. m* v4 d
//if( m_bFixedHour )
; a6 Z6 P& o+ z# A
// nHour = m_nFixedHour, nMin = 0;
# D+ h* I/ J* Z2 G/ q" q( ~( k. x$ `
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
E7 t3 p0 n0 g9 t# W
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
* Q- K6 N( b4 O! g7 I. G' M- U
9 a( A8 f1 H% G
//m_lightColor = lightColorPrv;
/ E6 D- D1 A% f0 e
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
5 d) Q# v R9 u. w i3 s8 @+ j
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
2 [- p6 C; H# s& X
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
0 r" O0 u% O, f1 `, f8 I
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
# {& ?; E% p+ ^9 I
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
9 {& h- c6 l! ?" T+ e/ v! p G" T
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
4 D+ ?9 p) t m1 V( J1 _
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
# E8 c2 Y% D% z8 b2 y! @0 H( g
- W! O+ M, d6 e' i* i
// à??μ oˉè*
$ z- ~% o5 K. ~0 }7 n' u/ w
pLight->Diffuse.r = lightColorPrv.r1;
& D& d$ o# W" p8 G' v7 F
pLight->Diffuse.g = lightColorPrv.g1;
/ D! D" }6 X+ Y& X
pLight->Diffuse.b = lightColorPrv.b1;
$ }* B' e4 D* D' R) B6 N
// oˉè* ??à?
0 W4 I- T K9 B! I, }- l
pLight->Specular.r = 1.0f;
: I8 w3 t g0 t: L6 V
pLight->Specular.g = 1.0f;
9 y1 H/ K0 [9 t$ u) z8 ^& _- Z
pLight->Specular.b = 1.0f;
( l& u/ \3 c5 T( c0 K
// àü?? oˉè*
6 ?2 l! p7 k; T
pLight->Ambient.r = lightColorPrv.r2;
( g5 C: M0 M$ C: ]/ @9 F: J
pLight->Ambient.g = lightColorPrv.g2;
8 p$ Z/ a/ z2 w# I K; Q
pLight->Ambient.b = lightColorPrv.b2;
5 P+ R1 X6 v5 E q% q
w* g# G' l$ G$ {1 K# M* q# p
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
0 G( j, h, ?1 G6 ~/ H$ }* s
{
: L/ u8 m6 \* w! r" C4 L% E
pLight->Diffuse.r *= 0.6f;
2 ]# R4 l- m2 A+ O, \4 N
pLight->Diffuse.g *= 0.6f;
5 c0 X( [; k* H
pLight->Diffuse.b *= 0.6f;
! _% d- {4 n0 W1 ^! B, f
pLight->Ambient.r *= 0.7f;
3 o3 h9 [6 L4 \
pLight->Ambient.g *= 0.7f;
' e. @; x0 g* a# B
pLight->Ambient.b *= 0.7f;
+ T Y+ ^' D3 r1 V# q6 K
}
r+ D9 l5 p; Q! m! ^0 s, Q# I$ S
1 z0 b. z% k0 q2 ~5 @$ @* l
#if __VER >= 15 // __BS_CHANGING_ENVIR
, H/ D, W- \% J, @9 `
if( g_pPlayer )
" Z( \$ F% U7 l& ]
HookUpdateLight( pLight );
8 T1 X1 P, N- n3 W% \/ e
#endif
& o0 `8 p# F7 ^6 B% M
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 R7 O9 }/ z1 e, v/ j' I% _
% J( F, \% P/ R5 s1 F0 f
#ifdef __YENV
2 ]: w. s( h9 f. w0 B
pLight->Diffuse.r *= 1.1f;
" |5 V3 }- A) U5 T0 |
pLight->Diffuse.g *= 1.1f;
6 [1 S/ B k( D
pLight->Diffuse.b *= 1.1f;
0 B V2 i3 O/ m$ [
// oˉè* ??à?
+ Y5 B6 P1 }6 m f
pLight->Specular.r = 2.0f;
' W3 `# `# f* ?# {
pLight->Specular.g = 2.0f;
; C% h) W) }) Z' Z, @
pLight->Specular.b = 2.0f;
1 _5 a& w" B: N
// á?oˉ
! a b* S5 x' Q
pLight->Ambient.r *= 1.0f;
" S( G# e) u. u
pLight->Ambient.g *= 1.0f;
; j7 }7 W( F2 x
pLight->Ambient.b *= 1.0f;
8 g* I3 c5 }4 }( M$ n( }/ ?3 J
#else //__YENV
c% k8 O) t6 a/ J. R$ d
pLight->Diffuse.r *= 1.1f;
% ~$ ^ |; D0 C* v& C* ]
pLight->Diffuse.g *= 1.1f;
% J9 a; B6 V6 e# @; y
pLight->Diffuse.b *= 1.1f;
9 ?- o# u% z% t# }; i( S k
// oˉè* ??à?
3 W7 d$ p, E ` e
pLight->Specular.r = 2.0f;
, V% V8 {7 {1 z5 Q: Z$ K" W9 R Y
pLight->Specular.g = 2.0f;
7 B0 d6 D! ?$ a
pLight->Specular.b = 2.0f;
+ M6 F4 g s: [' X
// á?oˉ
2 n4 q0 d; E( z
pLight->Ambient.r *= 0.9f;
" z D6 l4 Z6 }) u! ?
pLight->Ambient.g *= 0.9f;
/ w+ Y2 v+ K$ F
pLight->Ambient.b *= 0.9f;
# F5 V4 K# S/ X0 L& P5 Z5 Z9 ^
#endif //__YENV
8 z- T- M3 B( ~; q; K
' D+ y7 y2 s' K; u, ^
memcpy( &m_light, pLight, sizeof( m_light ) );
$ V1 h- L5 |' [# ]/ U& w
/ ~& e; D' C; B# ?
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
5 b+ N0 q1 X6 P+ E' k( w
D3DXMATRIX matTemp;
* e. d! ]( s9 m; }! y2 w' _
static const float CONS_VAL = 3.1415926f / 180.f;
/ C4 Z& l5 \( r
: x' l }; H: m' m
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
) P# w$ Q; g' E; J
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
& I8 l3 J; T' L' M$ [
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
, S6 Q1 s1 t, R$ g b: D9 u8 {6 d/ P
pLight->Appear( m_pd3dDevice, TRUE );
2 R' v! v% ~; [$ F0 I. ]
1 H- K' t6 c: w9 c2 b$ M/ ]
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# t$ j' ~* _( _: y
// D3DXVec3Normalize(&(vecSun),&(vecSun));
5 k& k4 G, U8 H3 I3 }- E
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 G: X7 m0 J* L* f9 n
% O8 e A% g, y% O/ h7 _
DWORD dwR, dwG, dwB;
; n, v4 J# O* r( G
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 M5 Z; N$ o+ y9 S. Y% P! i
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 r. z) p A3 |6 B7 S& u9 C
dwB = (DWORD)( pLight->Ambient.b * 255 );
& M) A- W/ ~' w$ _/ @0 Q0 p# q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ N# U* k, d% U$ z7 O
}
% p* ~; j; K- h P1 \0 ]
}
8 q/ M' J( }! r" S9 i! `
" u' P; T% X* T
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
0 m' r& {) p" E- y" E6 w
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 `/ Y; t% P, U- B Z, |' f5 X
::SetLight( bLight );
. x P' F; k: r! F
m: D) d9 x& K& l$ t7 R* X
// ±ao? ?D?í???ó á¤à?
1 e7 ~; s' q, J* S
m_pd3dDevice->SetMaterial( &m_baseMaterial );
8 s) I( E1 s6 I9 O! ]1 G
. w! i' g; }0 i
#endif // not WORLDSERVER
) }( n+ r: W$ k& r$ S E x
}
- ?2 v- C/ l# U4 Z1 s1 Q, B! L
并更换
& N; Q! X- K" ]9 w& ^% Z7 e' P1 ]
Code:
d* H' ^' c' A' r5 O
__FLYFF_INITPAGE_EXT
7 p8 u$ ^" d) r" P; L( h
定义
( P' @* v3 b4 X+ @2 P! i# M+ H
7 W3 T3 i5 n2 \" E" {/ F
1 g ^* m7 v1 T9 q7 R3 q
2 ]4 R% U$ u- B$ b! p# p- d0 J. O
3 A8 o+ u' b) L9 J# H/ P- x: y
现在终于删除我的狗屁加速...
8 d6 M% u3 S) E+ i
: x7 @+ z6 J: U2 S( X( m" u, D e8 z1 O
% ~3 V9 ?) i7 y0 f* \5 a5 [
' V1 c+ C0 I: m* ]% V+ Y5 L
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2