飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
# K; s4 g0 V" J+ R. |
尾翼:
. o" n! V+ r7 m8 U/ J) t
- j Y8 {/ J* D, a
代码:
- w, M: K" q5 d6 a" @1 S
CWndAutoFood::CWndAutoFood()
1 v% D ^/ f% D' f
{
- ?1 T- l& g2 j3 l3 N
m_pItemElem = NULL;
5 E- ]% a* K' b
m_pTexture = NULL;
! k2 ^9 u% A7 {2 c8 J0 h
bStart = FALSE;
. O9 ?' U- d% m
}
3 Z" K: B4 r. J8 w) I
, L' y* @6 m, G# c
CWndAutoFood::~CWndAutoFood()
9 [; ]( D6 n3 y9 l' D
{
+ Z( |$ s7 P1 k
AfxMessageBox( "AutoFood ist gestorben
" );
; M" f) S6 U% k1 g$ U! x6 C1 Z. o* g6 g
}
% x4 T. M) u# j* y) a. D5 Y7 l
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
- u+ B' ^; ~( d- R3 v; h
{
& ^1 v3 d6 J/ ]; O& k# t+ c' l
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
9 P2 F+ h7 [% j7 v
}
4 z8 F$ T7 V( M/ }+ b9 |
. C8 R+ l# v+ D. C. I5 \
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
$ T* P8 o8 o: g5 O7 h
{
; p8 n! g% k" D7 s) S
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
% A, i: h% h( \2 E) c
CRect rect = pWndCtrl->rect;
& y+ M1 O, e& n0 t/ U# h& }! ^
if( rect && rect.PtInRect( point ) )
6 w. ?6 m) j& ]" J0 m
{
2 D2 _* J/ l: V- K# z# h
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
/ z6 z" M ]) C. _
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
* A* t+ e9 ]7 [# ~$ |& D) l6 u' W
{
7 b1 K, u9 A( b
if( m_pItemElem )
9 H$ P8 u' x. r* Z0 Z) g" r5 j
{
; D2 X$ |% k; _, Q4 E' P
m_pItemElem = NULL;
- D! T, O- I& Z& r3 A0 R
}
7 r6 G" \8 ^" R9 W2 X$ O# R
m_pItemElem = pItemElem;
! Y, U; m7 P! y" \/ u
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
' ]6 j- g) f. w4 p! d5 K
}else{
7 t! T6 O* C `+ d0 I! K1 p
SetForbid( TRUE );
9 T% n7 F2 E; F+ H+ E
}
U, W& k5 X* U
}else{
3 o! L4 x. B& P7 {
SetForbid( TRUE );
* c2 f! K. {5 a( i; l* x
}
2 L' P P+ H# h2 ]1 D0 M L6 B
return TRUE;
' Z x* r8 d* ^& m
}
5 s( J/ n- ? a
6 _" y. y8 g# X" j$ n
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
! V2 a. a/ ~ F- Y- _6 T m2 f
{
' k/ A% o2 G6 }5 u3 ~6 O* X9 @: m& w
switch( nID )
) x* Q; F! z/ d; N* j* J6 p
{
9 \+ I, ^( E9 A4 e. T+ i* w
case WIDC_BUTTON3:
# j0 e& u8 D" Q
{
& x5 d# l2 m8 ^# s
bStart = TRUE;
, S1 {& Q" t% R% M' P* Q* a
break;
( J+ r) d0 _) a% H8 m+ S
}
' C* H. F7 z/ q3 C
case WIDC_BUTTON4:
0 l$ X+ Z+ E3 _ P; l
{
+ c( _; ^/ J4 p% j5 x
bStart = FALSE;
- f, U& A2 e* c! [1 E- N
break;
! Q" r1 i* Z, T7 j( C& `
}
& O# V/ ?& K+ @$ E. D; \
}
) q2 I8 S. ?8 L* H3 i) q
return CWndNeuz::OnChildNotify( message, nID, pLResult );
) B2 N3 U8 K7 ]$ t( J6 w
}
/ c4 b4 S' u9 P* G5 l1 r' |
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
* j: O" ~. X0 \% h8 e
{
* a1 [1 z; z( T3 F
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
( ~1 j: y. ^2 S( f8 W1 N
if( bStart || !m_pItemElem )
* q7 z* s* u% x$ n$ ~0 J" K" H
{
3 D' s3 Q9 [" f* U0 T# ]
pBtn->EnableWindow( FALSE );
2 V6 ?" }5 B, ]0 A
}else
% Q+ W' c/ j9 I( u9 @! e' V
pBtn->EnableWindow( TRUE );
: J- s- {! k% w0 u
if( m_pTexture )
( E9 j z6 q: C: h+ p
{
. ]2 N' Q e- i) M2 w4 ]9 \
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
7 i0 B( `& d1 z- c; r! [- N5 Q
if( wndCtrl && wndCtrl->rect )
, z" ^% u5 l5 _+ R
{
) ?$ i( `5 {) J1 y& V
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
. ?! |8 O6 M% ~% S( f) ~$ K
}
2 Q o; U% E" r
}
+ p1 Z3 a8 ~5 t
}
' a# J7 _& `5 D" p C9 Q; c* E
7 J/ @1 V2 {' P' F" b! i# F# k! v
BOOL CWndAutoFood:
rocess()
! H6 F2 B* [1 y' e$ w( i# E- ~
{
" d# C: `9 W; d! M9 }
if( bStart )
; p% P2 G: q; i2 ?$ I7 k: D
{
$ M/ s. ]5 d: E
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
0 U- t; f1 G: V; A' t3 }5 N
{
; I& }2 H! M) ^7 @5 B$ z 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() )
. n" B e7 p7 z3 g* t
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
7 h V3 v8 k5 h) x$ u' E1 f
}else{
7 Q/ l' B9 ~' ^; J9 \
bStart = FALSE;
) i* |1 E$ j% G8 ^( _
m_pItemElem = NULL;
2 ^9 ~- C- t# ]4 N
}
0 T+ A# V) G8 S2 s$ W/ E
}
8 N# \9 y5 R7 g
return TRUE;
3 d: V2 m0 L# _- x$ C' X, H! T8 k
}
$ D. Y6 R9 }$ b9 D# t9 I
7 x; [1 i: f! g: {; l) |
登录视频废话:
7 [# l7 [/ x) D6 k) ?4 L
尾翼:
) S4 T& D1 X0 B, Z
: ^5 G @8 q5 ` w! {4 D
代码:
" c; F! ?3 A# l7 W% l! e
- K. n4 O- s* `1 Q
void CWorld::SetLight( BOOL bLight )
: ^: _ d: c8 A
durch
! B/ E2 c/ i9 m* ]5 r- N$ C. Y) v4 r
Code:
& }1 B9 M% v; F/ r, |9 ]+ D
void CWorld::SetLight( BOOL bLight )
: B( [7 d* P8 Q+ \& r$ Q/ n1 V; K
{
0 Y% t, v8 x3 w1 F
//ACE("SetLight %d \n", bLight);
! M, X9 w. O: O) L) G
6 u6 _* t" X( ~) ~! I( u
#ifndef __WORLDSERVER
1 A v" |$ t0 V5 J. q3 p( F u
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
; S8 C$ b7 W& P6 c
CLight* pLight = NULL;
/ W, W1 ^- ^6 S# f' ^6 G/ y# P5 q0 @
# q0 c& u3 Y2 @8 x: S( g
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
& b7 h# g; I. S0 A+ Y
1 i; d) e6 B8 p; J2 B; |& ^9 }" e& O
pLight = GetLight( "direction" );
4 ?" |' d2 n# Q" S* ~" q9 c
- C8 m& {9 S. f8 X% V& [' ?
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 K3 R2 k% `' B7 @7 A6 U3 I
if( g_pPlayer ){
0 C! w+ U- L7 [& |! p& o. o
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
, V0 e! l5 \& ^: N
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
0 C+ C$ o5 ?% f, d
{
1 B1 O/ S, J$ ~: ~* h/ Z1 D2 c
if( pLight )
# J2 z1 O7 O5 Z1 j% d4 H0 r
{
$ @. y7 q* N9 Q7 I0 w
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
) }, `/ f7 H7 p) P ` O
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
3 K9 D$ w: {( Y4 n) _& a. w
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
. K& ]$ h, q& r& s4 x, l: ~( y
5 g, r2 H# m6 A
pLight->Specular.r = 2.0f;
' s# _; _4 t! I# G* y% G5 T( `
pLight->Specular.g = 2.0f;
# c) d/ O' j6 W9 P
pLight->Specular.b = 2.0f;
8 O' \& k0 o% q4 q( E. g
7 \2 f- c) Y0 _% r2 J; x
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
" U1 P: H7 e3 V( Q
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
1 {6 ?4 C) q4 r$ n3 f" [/ O
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
6 i1 |$ h r- D/ c! ^6 v! _
4 K( K, p( V! H! W. f& z
HookUpdateLight( pLight );
/ x$ C4 c6 a2 s) {, n
- M! g! t: u+ i, l# W
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 ^0 s2 y+ i/ \+ I
9 p- O7 C* Q4 D
pLight->Diffuse.r *= 1.2f;
8 x# o: d2 E' W9 `/ _( W4 y- P" j
pLight->Diffuse.g *= 1.2f;
: W" e! B) c0 J e- k6 `
pLight->Diffuse.b *= 1.2f;
/ `7 R3 K# \5 I8 H
1 t+ }0 {& Q6 y
pLight->Ambient.r *= 0.8f;
- K/ l8 X& t- X, |5 a
pLight->Ambient.g *= 0.8f;
; [: s& {" P$ f F" e+ F. J9 k9 z
pLight->Ambient.b *= 0.8f;
# q4 R* L5 l% k* F4 j$ y2 W
, b2 r8 `* S1 Z- X
memcpy( &m_light, pLight, sizeof( m_light ) );
. j/ I' L: E6 Z( A$ Z
9 Z; H5 I# h+ x! o9 p
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; j$ Q- }3 i8 J- A
D3DXVec3Normalize(&(vecSun),&(vecSun));
3 N/ |( ^$ w2 A2 S+ W" e( x
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
6 X" P7 k0 `6 F/ f' o
pLight->Appear( m_pd3dDevice, TRUE );
; C% B! _5 d5 ]
, @/ Y. S; M8 m
DWORD dwR, dwG, dwB;
. p( s1 a# }4 k$ n4 x) M, t
dwR = (DWORD)( pLight->Ambient.r * 255 );
. C; j0 \3 u& e( G6 i1 c8 Q4 F7 M9 q
dwG = (DWORD)( pLight->Ambient.g * 255 );
' L+ G! h8 M; @5 W- L; x3 Z# r% z7 W
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ U8 S. Z) p( g0 |' {9 z" i6 t
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
+ }; |% L* O' N3 }& j. D% n5 X
}
1 v# x! a/ c; i" E6 i& }
}
* b* M \' ?! I% M$ v
}
3 w/ G* C' R Z I- o
else
) V( p7 o0 R( {7 A, O
#endif
, Y7 q! J* q0 u6 L1 C p' G
4 s- f$ f5 q% d1 S$ _6 k/ A; W' V6 H
if( m_bIsIndoor )
! c" ]& S8 S C2 ^
{
0 c. y3 ~. |5 t: N! G
if( pLight )
F9 R$ `/ w4 l+ ^: J3 G
{
2 u2 R, H, j i" q: A4 o2 ^
// à??μ oˉè*
, c( M0 F. w8 N: C) z
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
5 @" h, b1 t& z* @% q/ d/ T8 L3 M: X
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
2 x: }. `/ }/ T* V
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
' }( t) H: P; m5 x5 m4 [4 u
! p/ o! R- `9 F" d
// oˉè* ??à?
l$ Z) L8 M# n& O' b3 z# U1 G) r7 g
pLight->Specular.r = 1.0f;
2 w; x& o; y/ j5 a/ M
pLight->Specular.g = 1.0f;
% q- R/ v$ l2 s* _0 |- O1 R
pLight->Specular.b = 1.0f;
8 z( l2 s6 M+ j" m0 P
// àü?? oˉè*
7 z- a# w# q9 \6 v7 I
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
( L3 O2 J$ _4 `5 u
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
0 Z- K5 I* h9 C2 b0 _& E% Q
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
0 X' A+ x) A# }- Y! x: {5 E) i
: g+ Y Q, v D) i; _. i
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
- ^- c% h( b5 f1 P8 i' ]
{
# R: D" q: Q- K1 t' ?
pLight->Diffuse.r *= 0.6f;
& y! w$ t9 P4 `7 T b* O ?
pLight->Diffuse.g *= 0.6f;
: z# b: s$ X6 o. m
pLight->Diffuse.b *= 0.6f;
/ d" k' j" a2 q4 X" n p3 w
pLight->Ambient.r *= 0.7f;
8 u" T* d+ m+ s9 h4 x
pLight->Ambient.g *= 0.7f;
$ f' h) |( Z2 z4 s& { ^* A
pLight->Ambient.b *= 0.7f;
* s S% ?0 ]+ V7 g& ?6 A. p. H h
}
9 X w5 {( l/ ~- C" _
& d$ ^- B% I! L, ?
#if __VER >= 15 // __BS_CHANGING_ENVIR
) U. H8 w6 C* s! K: D3 G0 J, V) U
if( g_pPlayer )
, ? `' I, Y$ h. d( \
HookUpdateLight( pLight );
( X, s+ |% ?$ Z
#endif
+ c. y, ?/ p% M0 e# w$ B. J
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 C' y5 P# s* |4 }7 d
6 W, `* C& j/ _& o
pLight->Diffuse.r += 0.1f;
4 ~$ X8 W: Z0 e
pLight->Diffuse.g += 0.1f;
- j) ?6 Y5 f; M w ~, q3 W
pLight->Diffuse.b += 0.1f;
. Y; o) f% k0 b6 O3 Y" b
// oˉè* ??à?
4 Q8 |; ] ^) [
pLight->Specular.r = 2.0f;
5 g. S+ ]+ B$ z3 p" y
pLight->Specular.g = 2.0f;
& T1 t( T3 Y2 p# A; O, `& }
pLight->Specular.b = 2.0f;
& ]$ H0 Y& V" c8 {
// á?oˉ
2 F: P$ n6 O* ?! b' z5 r( F
pLight->Ambient.r *= 0.9f;
J. H+ y4 q2 d. W- y8 H) \
pLight->Ambient.g *= 0.9f;
6 w7 p: m0 U |# t8 ^) p
pLight->Ambient.b *= 0.9f;
5 k2 V" t* w* ^9 O* U( m5 _" d
6 ~2 @% H7 _8 b# B2 `2 D
memcpy( &m_light, pLight, sizeof( m_light ) );
* d6 _* x4 X4 u" ]
/ s8 e9 S7 ?% Q/ n* R# v3 T
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
# R" G$ h) g& y3 N( }" h! t' @2 Y
pLight->Appear( m_pd3dDevice, TRUE );
m: C/ B1 [2 I9 ?" r! G8 t0 B
& ]$ J) \1 q3 k p, ]' J1 w' T
DWORD dwR, dwG, dwB;
0 L. j& b3 v& u/ l, |, o. L" `* I
dwR = (DWORD)( pLight->Ambient.r * 255 );
& p0 S3 m) C, f \
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 C% [% ?0 z& E" ~4 H: Q
dwB = (DWORD)( pLight->Ambient.b * 255 );
: s' p% q( @& |# Z4 W) E7 o f5 [0 `
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; |" N( P0 Y1 |7 t: J- ^- {: F1 _9 U1 f
}
& {+ x4 n4 [( M- O; f
}
3 H: @$ G% W1 Q, W
else
9 D/ L/ Q/ Z5 `4 l1 w1 |
{
8 F& Z9 Z2 x+ R
if( pLight )
! l( E/ ]0 w" G: d; B
{
$ f( G* Q% i H: W5 b `3 i
2 }7 ]- Z& S/ P
int nHour = 8, nMin = 0;
! r3 z8 u; S' y& N- c+ H$ ]
#ifdef __CLIENT
/ M9 C; O; h6 C# a4 E9 |
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
# R" y7 M& n; z: J! j" U
nHour = g_GameTimer.m_nHour;
# V$ w4 G* H; c
nMin = g_GameTimer.m_nMin ;
8 \* T y: s- z, _5 J
#else
* f- v: k; i R5 i0 w# U
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
" S7 j* V! ?6 x) p3 K d7 k+ b
if( m_nLightType == 1 )
# T5 l( C1 k7 x) K; b
nHour = m_nLightHour;
' j R( W) |! z9 y ]8 G
#endif
$ g* b P+ f: l$ y3 _6 R$ \. n( j
nHour--;
1 u$ L. |# a4 X' K
if( nHour < 0 ) nHour = 0;
1 ^; K( K, x y) x
if( nHour > 23 ) nHour = 23;
/ h0 m( n2 z' [% C. _6 C' N$ M/ C
3 c7 d3 \2 d$ t* z
//if( m_bFixedHour )
7 ]* X0 A* {3 n' \8 o
// nHour = m_nFixedHour, nMin = 0;
( v9 h" a( ~! E
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
- |4 _ n/ ]8 C
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
) `: ]! n' [2 _; n# _
3 F: l# x! ^4 p
//m_lightColor = lightColorPrv;
" V! H x/ O9 _9 ]5 N8 i
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
* R7 Y* [& _5 c) C2 z* p
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
5 q5 g5 D6 I0 z! a& d e5 q
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) O1 Z+ T1 k5 e
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* z' k( h4 n3 F9 R0 A- P' ~
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
- C+ r3 T0 l |. ~8 V7 z
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
- D: [* f) W4 L7 |1 k
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
6 N* F. m- |/ w6 b
$ `3 ?/ B3 T" `; E- r7 c
// à??μ oˉè*
- I; T7 L6 J) S' i |$ e
pLight->Diffuse.r = lightColorPrv.r1;
" ], R/ \! w2 G% q# ~# \' @
pLight->Diffuse.g = lightColorPrv.g1;
* k* E* k( n* i$ w
pLight->Diffuse.b = lightColorPrv.b1;
! G; H1 V5 n: n d4 P
// oˉè* ??à?
+ `6 {8 F9 C$ @" @; v+ Z
pLight->Specular.r = 1.0f;
% F! r) a5 h! d# ]8 M9 V& t5 |
pLight->Specular.g = 1.0f;
7 Y( a4 N. A) ~4 J* u$ ~$ o
pLight->Specular.b = 1.0f;
- c) [6 p4 |* U' _: h5 }' z7 y
// àü?? oˉè*
: t; M8 j& {, L: q: U! @
pLight->Ambient.r = lightColorPrv.r2;
# E6 {) b% O1 ^2 F3 \4 c
pLight->Ambient.g = lightColorPrv.g2;
5 P$ t! ~7 ^$ q
pLight->Ambient.b = lightColorPrv.b2;
% z1 w9 M3 d3 l- \
! C8 Q! z9 f) z3 h, c$ C
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 e6 ^4 T( W' q8 S( E9 n
{
) ?1 w, K5 t6 g, C
pLight->Diffuse.r *= 0.6f;
& }" H: Y( I* X% U5 w9 Q6 E
pLight->Diffuse.g *= 0.6f;
- ]! _1 o7 ]+ }2 o5 T* Z7 u$ R- y' }
pLight->Diffuse.b *= 0.6f;
, j; ^: O/ N1 ^% C
pLight->Ambient.r *= 0.7f;
. u/ a4 @: V/ \
pLight->Ambient.g *= 0.7f;
& O3 v( T) {2 z' C
pLight->Ambient.b *= 0.7f;
4 ?+ w) T9 ?7 `& B2 S
}
& k( f9 X* m+ z' R7 R) ~& _
2 o0 w7 X9 A+ ^( t
#if __VER >= 15 // __BS_CHANGING_ENVIR
# z7 D% k: _0 K% v3 b; s3 i
if( g_pPlayer )
2 _ M6 H3 O2 I% u8 p& ]! J
HookUpdateLight( pLight );
9 A) _1 d' d1 W8 o# z
#endif
+ _1 }6 K Q8 \9 g
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 Q! h. z( e5 p6 N' c, L* [
: [' O$ |6 u; \" d+ \8 k% J! q
#ifdef __YENV
7 E3 S0 U1 ]0 k }- X
pLight->Diffuse.r *= 1.1f;
1 k( ?9 z' C4 b' E
pLight->Diffuse.g *= 1.1f;
! G, k, p% E# l2 x6 k
pLight->Diffuse.b *= 1.1f;
$ U$ O; ~, a( h& y0 A
// oˉè* ??à?
" v! X' I) w- L
pLight->Specular.r = 2.0f;
9 M& K# k+ X2 ]1 U$ A
pLight->Specular.g = 2.0f;
) \; i9 i/ z9 S+ z' e: n
pLight->Specular.b = 2.0f;
3 j5 ~ |. f6 E& P1 ~7 u1 X
// á?oˉ
3 }6 d( t. A/ A
pLight->Ambient.r *= 1.0f;
; e1 _2 h" J" o" m$ k4 J
pLight->Ambient.g *= 1.0f;
* L; S( n) r. S" M( N G1 f
pLight->Ambient.b *= 1.0f;
/ M6 P3 i0 z9 a# n
#else //__YENV
/ V9 C# x) V4 R( J$ E s. [ u# `* ?
pLight->Diffuse.r *= 1.1f;
/ ]+ Z. D. T1 a# x
pLight->Diffuse.g *= 1.1f;
& K( M1 g! `: h
pLight->Diffuse.b *= 1.1f;
6 [2 q; Z) |% i- X
// oˉè* ??à?
: \4 T4 i- M/ m' R, R
pLight->Specular.r = 2.0f;
( M+ `3 S; X/ U& c7 e) r
pLight->Specular.g = 2.0f;
! J+ i' ]; N( S* P
pLight->Specular.b = 2.0f;
/ z M3 ^9 K( a* _
// á?oˉ
% T1 U3 v5 X1 S) }# }$ d
pLight->Ambient.r *= 0.9f;
3 ^: l. V! g g4 l/ R
pLight->Ambient.g *= 0.9f;
& B' Y; b% \- h3 O5 e
pLight->Ambient.b *= 0.9f;
- P1 h# k' Z( Q/ I/ n. ~
#endif //__YENV
1 h9 b$ h( [/ t; e1 O% ^- c# s8 L
! i' b9 k' { v9 Y
memcpy( &m_light, pLight, sizeof( m_light ) );
1 x a( { r/ b a
- w( X1 E+ F8 O3 M/ m
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
. }2 Y& e3 n$ M
D3DXMATRIX matTemp;
- o' T1 n0 h( i
static const float CONS_VAL = 3.1415926f / 180.f;
6 k9 k$ x2 G+ b1 w; [
9 m9 ?8 U1 A0 q. o. B
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
; I6 g+ i+ q. C5 Z6 V
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
0 ~6 D1 g0 \ Q
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
( i4 x) v7 D( S
pLight->Appear( m_pd3dDevice, TRUE );
1 m8 a$ k- Z! r% S4 }1 T
! ]- X, O A& k7 a1 ?& f
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
?/ b5 a( u9 ]! H. p" o
// D3DXVec3Normalize(&(vecSun),&(vecSun));
% \* u- d: F; \( r
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
* y# I; v$ B6 c5 T: [# X, i! o
# O: K9 s% v2 F6 H* }7 j% Z" J
DWORD dwR, dwG, dwB;
. B1 C% k/ R, W4 `* e; I8 {/ Z6 t
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 S) V7 K# h* T! I
dwG = (DWORD)( pLight->Ambient.g * 255 );
; L* v; p: J5 k2 S, s6 Y# h
dwB = (DWORD)( pLight->Ambient.b * 255 );
% |$ J- H: a+ v1 L
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 Z, A) o$ h1 t
}
% |' n- Q# i# x+ }3 H2 J
}
% l0 I" S8 I6 l% B7 Q
+ T7 ~7 c. i5 t* Y' R
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
# f# F( B" F, n. Q* }
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) );
0 M% P$ M b3 W2 a% x. w
::SetLight( bLight );
# Y X( j+ k0 k6 S- w" \
: g, X" d& z+ ^$ C/ R/ ~8 z
// ±ao? ?D?í???ó á¤à?
: [. J" p# H, o- h! N3 I9 W
m_pd3dDevice->SetMaterial( &m_baseMaterial );
" n8 ^4 z! N" f! E- o& f
6 g/ C8 c! H/ {
#endif // not WORLDSERVER
6 H2 Y: {, n- v6 z) t& Z7 t0 l
}
9 p# V6 p9 Q% U H% _; J
并更换
- r; |$ I" i2 v- c( e
Code:
# q6 h2 o4 i5 p6 n- \* c2 T1 y, i# Y6 p' [
__FLYFF_INITPAGE_EXT
/ h/ J6 f7 E+ t# B: H7 Y
定义
' P0 @ W+ d6 B; J
+ c8 H4 h$ N( A: U' @
# q* ?0 c( V$ {
& C' O1 J0 \# C8 d& _
4 N; H6 u6 v; I: C) M
现在终于删除我的狗屁加速...
( E% h2 t/ t3 ` r' b5 ^
8 [) {+ }; i7 M# _
9 p+ ^, @, S/ V2 Z0 @3 C
4 T0 k% \" S3 P6 r: t
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2