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