飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
$ A# U5 w. v2 a
尾翼:
: m. N) P+ ^# G! m* V
" {5 Q. P8 @6 Y
代码:
) b; V" {8 ]7 H* G* {+ f7 g; [
CWndAutoFood::CWndAutoFood()
5 S4 M! g0 v8 a/ p) N% q
{
4 m& I3 f( w x9 y6 c2 T" D
m_pItemElem = NULL;
9 S. F+ G# q) Y8 {$ p
m_pTexture = NULL;
! `1 ^9 u* G/ P' U
bStart = FALSE;
) c# k; r, Q9 S" x
}
# Y2 N# T9 Z4 x3 _/ P$ J; A
* D# G8 C, \0 ]' Q0 z; J* b
CWndAutoFood::~CWndAutoFood()
( I# G1 m3 ]$ w4 T5 m7 t N8 @) x
{
9 ` A/ L% I3 \5 l, l
AfxMessageBox( "AutoFood ist gestorben
" );
" Q3 b+ K+ f& l- Z9 e! S
}
( A* c+ F( D' `% C7 _ j( E
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
/ T7 y0 i% V: |9 ]9 E4 ?* F# _6 l
{
2 ^, ^1 t$ z- j* `5 |% }% Z8 \
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
! C/ E! {+ m2 F
}
o( Y8 [9 p8 v) E
$ u0 H3 r2 A' q: B
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
* W8 t( y9 B+ J& h
{
% ] M, X( x2 A/ ~8 }( H
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& F& L8 Z9 E* n1 P: j) ^* i
CRect rect = pWndCtrl->rect;
# f; @! k; W+ k6 L/ E0 V4 e# v
if( rect && rect.PtInRect( point ) )
, Z5 K/ Q+ w! h$ K0 D1 f( [2 J
{
8 K) c) I, P) o$ k4 }
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
4 r1 Q6 [( N) e3 `) E8 t5 J
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
" l! l G- M) ]/ u" U
{
9 D- ]+ A+ C; W+ w* b
if( m_pItemElem )
$ e+ s2 l0 X+ ]' t" c% t4 w2 o q
{
: h8 {+ b1 B! T- O! [0 I: [
m_pItemElem = NULL;
+ q, W4 M5 h3 E2 |2 E9 U
}
% ]8 ?2 B1 r$ w9 Y/ v ?- b
m_pItemElem = pItemElem;
! Y3 D, I4 M! T, B
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
' Q4 K0 |6 L6 u
}else{
5 O# y M5 O+ A. P
SetForbid( TRUE );
# A& e8 E4 ?; n8 P$ F7 O. w
}
/ ^3 [- P" p" C# `" c' E
}else{
' i7 H; Y; E" R. \# U
SetForbid( TRUE );
; |; @" C1 U* {4 c
}
$ C* s! q1 n2 B; X& y7 `( V
return TRUE;
m% b$ ]' c) m% e" l* l6 G6 l
}
# B8 n& e6 \/ P5 A
" `% n5 |" r: l3 ]! \3 S( Y
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
/ R7 s/ J0 j2 j1 j9 c* ?; j6 {) |, d
{
, }& B1 c/ i3 c) S
switch( nID )
/ U* x9 ]- _2 y
{
/ S% d6 Y) q) M5 k* V7 T
case WIDC_BUTTON3:
, y1 i- e, ~! _( Z
{
$ s ]+ ~8 F/ M+ R
bStart = TRUE;
( B/ i- J& n9 b" f
break;
; f& s. A) a, l" v7 _$ z
}
' d, I ^% F& O N
case WIDC_BUTTON4:
4 o2 q" a! q% E M% W$ ~4 o
{
( j4 A( ]! d' O# T" j- u/ I# g, t, e% A
bStart = FALSE;
0 r4 s+ R V" j$ Y
break;
0 r+ X4 |6 h. g+ F9 V
}
6 K2 _6 j$ {4 q% S0 A g& s
}
8 s7 ^% W9 k [% B' @5 U
return CWndNeuz::OnChildNotify( message, nID, pLResult );
( _6 {$ ]; N, X& ]! z3 {, X9 I5 n
}
" w, C9 F0 B( P2 v0 \
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
" t" i8 j# i9 x4 a$ s: K4 T
{
* d6 l6 G+ A' q0 B' A' _
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
7 W7 H! V n! a E/ F5 D
if( bStart || !m_pItemElem )
! x. h; |; b. t- N$ p0 Y7 K8 e
{
8 y" _. Q: w7 L, p% |) z
pBtn->EnableWindow( FALSE );
- r. @6 W' z! p' t0 \* }
}else
2 m6 X! s- z4 _/ k9 Z6 J
pBtn->EnableWindow( TRUE );
( f- n) z/ n, A, K& G- G5 d
if( m_pTexture )
- Q7 W# H3 [# c' U
{
& M9 o) ?/ h; }; x
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! c5 A) a2 b! R5 @$ @
if( wndCtrl && wndCtrl->rect )
6 a1 \% h* L; I4 D& K( @, G
{
: m7 H2 ~! e: Q
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
# l& c/ p( W5 p+ A0 R; x2 W6 ~6 C
}
. A7 }! C; B4 _; \' m
}
0 H' Q6 Y; p2 D, K3 b' G" d
}
+ n* `6 \9 L/ K: ~+ C5 [+ p
4 E/ a# \; E* V( u* B# Y
BOOL CWndAutoFood:
rocess()
q# V3 f! g6 g9 X
{
0 h: o3 r7 ]" K
if( bStart )
- t1 p# a9 d4 B% R, v6 R: M
{
8 h# _6 o6 g/ L, d
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
7 }% t& E9 O. P# X. I; K, Q# ?/ V
{
0 I$ n( ]' p7 M) F; G* _& w
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
4 [/ P/ P4 ]( M- b' J4 a& `+ F; r
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
. f' e4 Y2 V9 n" J
}else{
: s& t/ M2 g& o
bStart = FALSE;
6 D9 o1 c8 r4 L4 D' j
m_pItemElem = NULL;
' q' m8 T6 \. X* L3 G; J4 |8 _9 g
}
/ s4 T0 W' o! |
}
; V/ U: M/ u8 e7 i8 G
return TRUE;
$ E. x3 n; m9 R' n1 R8 W2 s
}
' P* ?7 Y1 c: \7 W
6 j, d/ t) c' q1 z5 L0 F4 G
登录视频废话:
* o N) [0 k5 b g
尾翼:
% h# u6 G9 C9 H# N6 j
/ G: \0 G& W0 b2 h3 \3 j
代码:
: G! w$ ? B" M$ x' P0 }
3 b7 `, \ X+ P# ~
void CWorld::SetLight( BOOL bLight )
1 ?& H$ X1 g9 e. d* I P
durch
0 s- h$ r0 |5 X& k# a
Code:
: o( x5 |% @! K; i
void CWorld::SetLight( BOOL bLight )
1 t4 B% Z8 q" J) l K
{
3 B8 D( O0 y7 R" C2 s
//ACE("SetLight %d \n", bLight);
& L( Y; P q! R' L
: ?) G% @6 n3 @* [! B
#ifndef __WORLDSERVER
8 W9 v+ y; K" }! W8 d" c
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
& |$ A) M& f" w$ \- T' g
CLight* pLight = NULL;
- a! r T2 M i1 ]$ W
3 @. i6 J2 l7 k* H0 z" v
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
5 z1 f1 ~* s$ }8 _. f/ Q* h$ r# s
' r& B1 y: w- z; H' x
pLight = GetLight( "direction" );
1 B( x% H0 B( J2 B5 n
" a1 z" Z2 c3 Y
#if __VER >= 15 // __BS_CHANGING_ENVIR
; R J# ?- E4 M' N b1 ?" G x5 T
if( g_pPlayer ){
8 G# g3 q; W* N, P+ J" ?
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
q, W: }5 Y+ I0 v4 H
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
. z; N% D0 R7 j* A/ [$ F
{
; A$ N5 G( n/ b8 I6 p7 ]: C8 f
if( pLight )
3 K' H8 R9 R3 K) ^
{
/ ^7 L C' B5 S
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
& [0 F" |, b8 _1 u' `
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
: t& N4 V6 ?* q8 r. c
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
8 [3 H) l6 U" c
0 f4 i9 r( j, B/ R0 S
pLight->Specular.r = 2.0f;
4 `5 J; P5 o; d* @" r
pLight->Specular.g = 2.0f;
( L$ S4 P7 ?* }: H- w3 ^: B
pLight->Specular.b = 2.0f;
A! i# w* a% B4 f& T
, p0 W; s0 X% x+ k7 f9 H+ z
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
5 S2 S- ^; W8 ]" q* d! c% g
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
y; ?) L i7 A* ~5 q
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
# V+ R' N( W! O r
* {9 Z/ z0 [5 r3 D8 n0 O
HookUpdateLight( pLight );
3 N i5 g1 K8 Q9 w4 m( Y3 z; R6 s
0 a* X1 [/ Y+ X6 o
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) j k; m! Z8 K! @
I# \+ v& D4 _# k
pLight->Diffuse.r *= 1.2f;
6 A% _( b1 b- P
pLight->Diffuse.g *= 1.2f;
& d& t6 O' K5 Q5 U
pLight->Diffuse.b *= 1.2f;
& V8 | }( [2 j" f+ m/ Y4 |
4 p8 G, F) w! e0 Z' B% ?
pLight->Ambient.r *= 0.8f;
! T* h2 G6 [8 c' u! k
pLight->Ambient.g *= 0.8f;
U! r/ e9 C# l6 R
pLight->Ambient.b *= 0.8f;
& d9 D2 ]. E2 h
5 |! L/ E8 A9 g; _$ ~
memcpy( &m_light, pLight, sizeof( m_light ) );
! O* n7 b; l* ]& C- q: ^
/ q* g X: ?, L* Q8 p
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 O9 {" I- O9 W. T4 } B, [4 ~
D3DXVec3Normalize(&(vecSun),&(vecSun));
1 H. R. F5 U6 D) f9 |# i
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: e( x* F& I0 U9 X) J& d
pLight->Appear( m_pd3dDevice, TRUE );
( h! m% y2 H" A( e& c0 V
1 L4 z5 l+ V2 B. Z& G: i# A5 u
DWORD dwR, dwG, dwB;
1 f- Q% D1 C3 q1 ?) e5 z" O# C
dwR = (DWORD)( pLight->Ambient.r * 255 );
/ o3 @- C/ ]' R/ ?- e/ t7 G* ^6 z
dwG = (DWORD)( pLight->Ambient.g * 255 );
, V l/ ?4 Z3 C" ?- S
dwB = (DWORD)( pLight->Ambient.b * 255 );
. F# W U/ U, _" S
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* p! @4 A0 R$ V5 r" l
}
" `: v$ j: z+ P4 s; H+ C
}
% n7 U+ y; s9 r5 [4 ], ]
}
! R" E$ h7 ]+ ~6 O1 b6 r6 D
else
7 [* B) H, h" K G9 I
#endif
4 Q& s: E' s- A
% I1 h4 g0 ~0 P. V. x+ O1 d
if( m_bIsIndoor )
! _4 s! M, C* `$ V$ W/ v4 B/ \9 R
{
3 q7 b& _: q2 g, e* P4 g9 H+ e+ Y2 r
if( pLight )
1 D% P. C8 x) V) s, G
{
% j9 R9 v9 y, g. O* l0 R" K
// à??μ oˉè*
. ]2 b+ S- A: z g. k n b0 C8 Y
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
1 l7 w& e! e4 b. a( |. a! l; |: P# D
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
% ~" b* }4 z3 X$ v- o& ~4 s/ e
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
7 n( W3 ~& N& X" A5 s; Y
p/ E* f% [; `- i! p3 ^
// oˉè* ??à?
* w4 N& E% U* S* w/ `' n5 e a
pLight->Specular.r = 1.0f;
1 H1 y6 k+ Y' D9 z) q
pLight->Specular.g = 1.0f;
6 s( d# m1 l2 V5 B5 I
pLight->Specular.b = 1.0f;
2 g6 V3 L% O# R+ c: b
// àü?? oˉè*
0 ~5 t" A7 p) @! h' i `
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
4 ]: a7 h- O- q O* q# _
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
; K" B' p( d. E( f" [5 x* h
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
! j! ^* z/ M- T( O, a/ X6 N$ P
+ y; ?: s7 Z' W( G+ R) R
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 o- G) }7 @8 I' w% G
{
" R# X, i* E0 W8 t
pLight->Diffuse.r *= 0.6f;
' a9 _2 p: w' Q
pLight->Diffuse.g *= 0.6f;
- ]! E# L) \, R5 X# H- ]4 h R X
pLight->Diffuse.b *= 0.6f;
* N( H6 ^* S0 S! g) U3 q: s
pLight->Ambient.r *= 0.7f;
. l6 Z1 u0 {2 e5 e" D, `* ]3 P8 s
pLight->Ambient.g *= 0.7f;
) A" H5 b2 R, l4 Z7 _3 T9 n9 v
pLight->Ambient.b *= 0.7f;
* M& c7 {! c/ Z
}
! ^3 C# j- S8 g. o& y
( o1 D$ k$ j# c6 T9 g& O J0 t+ `& t
#if __VER >= 15 // __BS_CHANGING_ENVIR
) J7 @# L6 N( Q/ j
if( g_pPlayer )
) w3 F, z4 X5 g1 Z
HookUpdateLight( pLight );
2 g, L. h+ N C, Y
#endif
! E8 P' i9 }& a2 O5 K- K
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 B- f9 U1 L& M2 D0 H
9 Q# Y. i( Q" N+ S ~3 m, d6 l
pLight->Diffuse.r += 0.1f;
& ?( {8 g) k" n- [+ \
pLight->Diffuse.g += 0.1f;
) Q, P+ S$ L$ z
pLight->Diffuse.b += 0.1f;
- Z2 f, V1 l/ @: Z% D. p
// oˉè* ??à?
; ]# G+ k# V: q; R
pLight->Specular.r = 2.0f;
' r" G1 k: w, |! N+ m* F0 |% e
pLight->Specular.g = 2.0f;
@. U) B# Z0 o9 Z) k9 c4 \1 J; g+ L
pLight->Specular.b = 2.0f;
1 y+ O. j& E* q$ Q W9 G, x
// á?oˉ
/ R4 O- a# a, b8 W! E& {' ?( T8 {3 A
pLight->Ambient.r *= 0.9f;
$ s) d6 i. _! p+ {7 `
pLight->Ambient.g *= 0.9f;
5 D. R" j% H1 Y, V$ r6 x, n
pLight->Ambient.b *= 0.9f;
$ \ l' T0 ^# O D9 R
+ d5 @+ r' T/ a% x3 C/ O* r8 Y
memcpy( &m_light, pLight, sizeof( m_light ) );
( M: f) Z' F7 W6 Z) V# T- ]
. U3 z9 X6 Q$ ]
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
2 L4 v9 v6 R7 a
pLight->Appear( m_pd3dDevice, TRUE );
4 P, M2 n6 y. {7 B) E/ F
, u, F4 W" m% l* I8 s6 E
DWORD dwR, dwG, dwB;
/ A( c/ @ n* B1 q! b* K! {0 _/ H4 E
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 U- c+ h: ~( [, z/ X
dwG = (DWORD)( pLight->Ambient.g * 255 );
& N7 R; k+ u7 t7 s( E& V
dwB = (DWORD)( pLight->Ambient.b * 255 );
; `. R* ~% w. g: d9 {
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; b+ {% T5 J& }: u
}
: @5 B% I$ h% [# z8 x
}
3 t) v: a% B' C# X, _4 [$ U
else
$ I# N* w; P5 ?
{
$ U% F' A! d* l( L* `" S
if( pLight )
6 M3 Y+ n: I3 N I$ [8 z
{
" u9 X" b6 K/ b+ n& ]) X
) R- A ?2 J- \" w; ?/ `
int nHour = 8, nMin = 0;
* Q3 ?7 B! V6 \. M
#ifdef __CLIENT
- s) H. p& d9 l: c0 t' T
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
4 s" v. e( I9 A: M
nHour = g_GameTimer.m_nHour;
6 y" R4 D; W8 F& j
nMin = g_GameTimer.m_nMin ;
* G/ Z, P* J2 F0 y
#else
6 A5 b" _! s7 Q) a8 |2 J
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
; b% h* J, D( |
if( m_nLightType == 1 )
+ `. j9 Z9 j/ Y
nHour = m_nLightHour;
' a& X! q6 P+ b# x! G) q7 w$ R
#endif
5 s8 G j) J `" Y1 j( Q
nHour--;
1 [ M! E; B9 y7 N
if( nHour < 0 ) nHour = 0;
& `# O5 X/ [+ e5 R/ _' ?* s
if( nHour > 23 ) nHour = 23;
5 S5 u% f0 }$ T) O$ {. M
, O( c1 o2 Y! U7 b, W4 b
//if( m_bFixedHour )
1 Z" S: D& y$ z# w
// nHour = m_nFixedHour, nMin = 0;
4 P: `" j: h' [% Q, y0 l
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
! D7 N# T- l$ d" K& q
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
+ J4 _, w! O: R! e. Q7 e/ W
- F" |0 N# H+ L
//m_lightColor = lightColorPrv;
, r# b p- J: g
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
2 ~, V9 h+ w2 D' @
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
$ E2 x3 e0 b! [' m" q; G
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
4 r) l: y$ ~9 H: @
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
6 B6 E# @3 A/ s) {( ~
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
2 b, B& x) _1 J1 P
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
: @$ V- b& f8 x
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ m3 |8 Z0 |1 Q' _
! Y, I5 E& @, a% x4 E- p- P2 s- S
// à??μ oˉè*
3 ?# C: M0 ?% _- m! \+ h$ y
pLight->Diffuse.r = lightColorPrv.r1;
6 Z; ~3 O- p$ ^) T3 t( F
pLight->Diffuse.g = lightColorPrv.g1;
. h3 ~1 S# O" I3 Z8 V
pLight->Diffuse.b = lightColorPrv.b1;
& \* h( F+ V+ ]( j
// oˉè* ??à?
2 U: @% A, l1 o5 r( |7 P
pLight->Specular.r = 1.0f;
6 L& z8 i1 x6 ?; q
pLight->Specular.g = 1.0f;
6 y# U G7 x* T" d
pLight->Specular.b = 1.0f;
. P `1 o7 t( t; v% M# Y
// àü?? oˉè*
( Y& N7 _# y+ ^& s; C( T% V
pLight->Ambient.r = lightColorPrv.r2;
8 r4 n: P# P$ m0 i- `, d+ d- j. v
pLight->Ambient.g = lightColorPrv.g2;
. S0 W1 F, I6 c8 c7 }1 o: O+ a3 N; k
pLight->Ambient.b = lightColorPrv.b2;
1 c* A! }/ S0 W" U$ ]& j
3 T0 t; E7 N: t) {$ Q5 O1 i
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! N( h1 w- S. p7 _* W
{
/ a q6 E% O/ V' h# ^! ]$ D/ P
pLight->Diffuse.r *= 0.6f;
" D2 a5 Y5 {* O& P3 S
pLight->Diffuse.g *= 0.6f;
' f: W; F# o- b9 f
pLight->Diffuse.b *= 0.6f;
7 L% {/ A8 D' f) f4 Z
pLight->Ambient.r *= 0.7f;
: u8 C' ?4 @- J( F: m0 T
pLight->Ambient.g *= 0.7f;
4 N# v) [$ @% N2 a
pLight->Ambient.b *= 0.7f;
: o2 H% k" C6 J2 C3 [$ M7 B3 R
}
4 N O5 o: S* ^1 U
/ V' f5 F2 \$ X/ t4 z
#if __VER >= 15 // __BS_CHANGING_ENVIR
; J7 H: }- p3 f) d* K" N* k; S
if( g_pPlayer )
9 H$ }0 x6 p7 q* h( ~* O
HookUpdateLight( pLight );
6 Y9 I6 C# ?& o" K, p0 t
#endif
1 c- g4 m+ u! l: G8 O% ^
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 v; v5 _. ~% I3 ?
G" F0 U7 U- k9 T8 z
#ifdef __YENV
, R5 H1 T: M( m8 x6 Q+ `: S
pLight->Diffuse.r *= 1.1f;
4 q2 P9 D$ j. m5 E$ S
pLight->Diffuse.g *= 1.1f;
1 L7 ~# w9 O+ x1 E
pLight->Diffuse.b *= 1.1f;
1 F1 _% B8 f0 ~% L" ^5 g; Y* B1 b
// oˉè* ??à?
5 y. [+ d/ S( T0 F9 A" k) V" ?
pLight->Specular.r = 2.0f;
1 @; _ {, ^- ~0 M$ f1 b
pLight->Specular.g = 2.0f;
$ f/ D8 A9 G/ a. D
pLight->Specular.b = 2.0f;
; [- V+ u# [0 H* e7 s- G
// á?oˉ
. R/ y: g1 s4 {8 D
pLight->Ambient.r *= 1.0f;
4 ^( ^1 f. H w9 y9 e3 w9 V
pLight->Ambient.g *= 1.0f;
2 [, ], ]- z4 k9 m+ a* c' a
pLight->Ambient.b *= 1.0f;
* X* u O) u2 @9 J' ^* M" X
#else //__YENV
7 s, v [+ M9 D& o
pLight->Diffuse.r *= 1.1f;
3 \5 F* [# |- \1 a* z
pLight->Diffuse.g *= 1.1f;
" h2 C+ ^ ]. i9 L* G
pLight->Diffuse.b *= 1.1f;
4 u( z" \, ^5 U" Y
// oˉè* ??à?
& b8 |, ?; {) \5 z* c9 i
pLight->Specular.r = 2.0f;
$ `5 ]1 o% H r% {+ j
pLight->Specular.g = 2.0f;
" h) _: T) J O3 j
pLight->Specular.b = 2.0f;
& O9 z/ Y: N# {
// á?oˉ
5 D: w" k6 z1 d( B# P5 r
pLight->Ambient.r *= 0.9f;
* v5 g+ [1 m8 i, `) j
pLight->Ambient.g *= 0.9f;
! H7 L2 t! }" _% K' D
pLight->Ambient.b *= 0.9f;
# e. H8 q8 }8 d( Y* @9 ^9 Q
#endif //__YENV
; d1 \! y9 b+ S: w4 g$ W f- u
9 F+ _) N$ A3 o: U& F3 |7 [6 [
memcpy( &m_light, pLight, sizeof( m_light ) );
0 A2 W* N8 E! V) C& ^
( r/ w' ^+ F. u! n. H- I
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
! R$ y! X/ q1 V2 x* h
D3DXMATRIX matTemp;
' B2 S$ d) P. K4 ]7 ^* | }
static const float CONS_VAL = 3.1415926f / 180.f;
* R: D% S$ }0 {: x
4 _: J) n9 Q R, x6 B
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
& g4 A3 b8 |+ L5 K" G: C m* _: d. W
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
! o* c; d, v3 X" a/ r3 C' O* J
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
* @" z5 w% j! r1 I$ ^
pLight->Appear( m_pd3dDevice, TRUE );
% J8 A6 D/ `( b6 D
$ S, n' h1 z- A/ }* S
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ W/ {- a8 `( v* z
// D3DXVec3Normalize(&(vecSun),&(vecSun));
, ~8 E6 P; ]2 j4 u
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 w2 e4 \3 `* X, Z# ~3 c
3 N+ k6 X* p+ ?( w
DWORD dwR, dwG, dwB;
" C. x5 Z3 t% t. u( M* V
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 j1 F# v: v# A
dwG = (DWORD)( pLight->Ambient.g * 255 );
: b$ o- U! b% @) R# p% ^2 A2 x
dwB = (DWORD)( pLight->Ambient.b * 255 );
1 Z; I, s, B/ C: m2 L
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! Z% m- m6 h- z. v
}
) ~- s, f6 S; I l" Z6 M% L2 m8 i
}
- W$ |( W( Z2 n0 C! Y7 _
' C9 `7 G5 x4 B4 A
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
/ Z6 C' [( \% 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) );
- E! l' K' u" ^. ]) B/ w
::SetLight( bLight );
, [. f- i5 d2 P& ^" H- a- B# Z7 r+ j
$ F) Z: l6 b# i1 ]' b9 ?( ?
// ±ao? ?D?í???ó á¤à?
4 E$ O/ b0 k: k7 {) v5 t4 c9 L' ^
m_pd3dDevice->SetMaterial( &m_baseMaterial );
+ J; N, Z4 k/ c/ Q
; V# ]/ }& y- i# t' b0 Q& y
#endif // not WORLDSERVER
, G j! x# i U" B% D: A- o$ ?
}
. H' y9 C; \/ z* W/ O5 o
并更换
& l8 ^7 P9 }) _4 z0 ~& ~# J
Code:
7 _! }; c: t0 o8 d2 p2 J7 \& V, J) O
__FLYFF_INITPAGE_EXT
* @, K3 q. n" R, n* n: V7 A
定义
/ z! d" P( j2 `' Q2 O
5 E7 ~4 d4 p8 y( u" Q& I* C
8 J2 T) m) p# A+ ?: _% ^" R' p
0 R: `0 W) I* d# V1 `+ ~
! D K3 e( x4 g" P3 O
现在终于删除我的狗屁加速...
/ N$ }, [; N! ^' V' w
; O3 i% t. T# g: ^% P% f
! {7 t% C! P! w: n( ? n
* E% Y8 Y4 M6 B6 A: y2 j
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2