飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
0 g0 H) W4 _$ o$ G- C
尾翼:
+ q: [6 T+ j; v
! J. M9 s2 I, Z4 ?) C+ a
代码:
( A( g& @4 }% A0 m% h( k5 a% K
CWndAutoFood::CWndAutoFood()
3 f" L) E4 m1 V9 C" V* L
{
6 e( Y9 j( o+ Q5 W
m_pItemElem = NULL;
3 e( p ~. a- }
m_pTexture = NULL;
" m! o2 d& \! P5 z+ U
bStart = FALSE;
0 z3 s( d9 D X2 m7 }8 B7 b; p" L
}
7 J/ g4 ]3 {# O3 z x2 G; f
6 a Q( C9 G5 Q% K7 z
CWndAutoFood::~CWndAutoFood()
/ L5 q) J7 e* s
{
* f, |; _3 D+ G/ I
AfxMessageBox( "AutoFood ist gestorben
" );
6 w8 B' M/ r$ V% s- E4 C$ ]: d
}
( W2 B) f. H: S7 m; S
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
$ |* ~: v2 H! I: L4 S
{
3 s4 ~7 B( v, P: J) ^
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
; A4 A! O" }$ z
}
1 E' w4 G0 R c, K5 e l
3 k- o) q) k3 T' X+ Q
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
( B) o+ I$ g: X' A
{
$ c+ ^5 `1 l& i6 z0 F* u2 p
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
2 J, h4 t; T' o3 R5 \( P( N9 K0 Q, k
CRect rect = pWndCtrl->rect;
# x$ \0 X" }. z
if( rect && rect.PtInRect( point ) )
1 s) s# e9 [" R" s8 b
{
/ t; M' z( R' B5 `% o# }
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
1 O4 ]7 o" J5 c( t* t3 _
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
& d3 j' G1 a! v; \6 o+ p! w% W
{
* @7 o2 J- p+ n* K0 l
if( m_pItemElem )
6 C7 H2 |; L& T, w0 @
{
1 w0 j+ g8 B7 ~; ]9 I" w& N
m_pItemElem = NULL;
) M0 o: b1 m8 P
}
3 f2 w* z4 ?) r$ F% O
m_pItemElem = pItemElem;
" t/ W" D, h$ v1 _, d
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
7 W' q# n# I6 w i& C! v! k
}else{
/ f! `( w. r! |2 g
SetForbid( TRUE );
$ b3 i% y1 {* B/ d! \8 T
}
, w& E. |- s4 j6 ?
}else{
' q6 q# {: u% E8 D2 ]
SetForbid( TRUE );
' a% B- t' u2 ^( h- w4 ^6 {5 I
}
1 N, y* h! e# o* H7 f- L6 K4 Q
return TRUE;
" v+ O9 m4 X" O
}
% ?; O3 H' e# i
, @' k. m' f0 ?
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
, S( ?- }3 q% Y$ y! p
{
$ J" h- A* c/ L0 w% A/ g
switch( nID )
, \1 e0 S, q1 F
{
9 r$ ]6 a/ w5 W* l
case WIDC_BUTTON3:
$ A& @0 J( ]3 ~8 Z1 u0 D+ B
{
0 t4 a2 _; T7 ?& ^" p
bStart = TRUE;
' q+ K4 I$ G" ~! {
break;
+ C1 L( g& b( [# N. N( ~: i
}
) `) N3 i ]1 J, r# `8 _" ^7 Z( \
case WIDC_BUTTON4:
# h; S( h! E% j, P/ d
{
6 q$ T0 b1 O& `, C) k: s
bStart = FALSE;
) Q3 `+ l/ }( K T# n' {& c
break;
& J' G. q9 V* S) C0 y9 l! Q
}
( F- @3 C, r" t+ X" U
}
, c: m8 ~+ Y- h& @; j1 b
return CWndNeuz::OnChildNotify( message, nID, pLResult );
( P* r2 f$ R: P/ t/ m" o
}
- L) g, {% ^$ Y8 Q E
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
* T! p& N: D3 {7 X* ?0 w
{
' ]. P% u$ V: m: R0 ^
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
$ }; N( X/ E. C2 D" v" [! }8 ` c& {
if( bStart || !m_pItemElem )
@# j' M* c$ j2 ?0 q. [+ e
{
/ [& }2 {# h7 i3 W5 [2 e
pBtn->EnableWindow( FALSE );
2 a w6 Y Q$ x$ I
}else
8 S& {& V3 r* ~5 m( t- J& K
pBtn->EnableWindow( TRUE );
1 k# H; N. c* [8 X
if( m_pTexture )
/ D9 }5 S7 ~1 T9 o6 O+ }( a6 t7 ]
{
8 T. z* s" }! k: j3 L
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
( A0 }1 r" A: q; P. y0 `
if( wndCtrl && wndCtrl->rect )
+ F8 `4 b( h% Q+ w
{
5 ^/ J! |7 w/ T4 w
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
: T. f8 h; L0 k3 J1 o
}
2 _8 O; r$ K% h/ c' e
}
- C7 G' J1 W: W- a, p
}
# h5 T8 k: Z/ p
$ ~6 o7 {6 x ~
BOOL CWndAutoFood:
rocess()
, h& Q$ ^$ S2 |: p9 x1 R
{
' h8 U$ Q2 G/ n" z, \& `# Q3 b
if( bStart )
' g2 y" f$ R- W+ [' a/ i7 D' ?
{
" V3 K. w; \% n: a: _5 S
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
0 e6 k. \: x" K
{
) x# ~; B# \+ 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() )
0 ?* f) E: T% z' N: Z& r) A
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
6 D. r& z7 T C9 N D a
}else{
7 N+ }) j! f! V* D; }
bStart = FALSE;
: b: t% }% j( A4 K
m_pItemElem = NULL;
8 r: M. ~2 l( d7 w+ L |) L
}
0 s& Z% J0 i5 i3 E
}
; O, ~! R, N7 L4 Y0 P" R1 a5 k
return TRUE;
4 r6 g. g. ^" L! z
}
$ r$ M' s V( ^9 D8 c
+ m3 t: ^! K u8 \" `
登录视频废话:
) E" ~. V4 M; c* @. d6 w( @
尾翼:
G4 @ g; `( D, I- r
, d1 z4 ^1 n, X6 y
代码:
" \# M& [) A8 {: i' c* F
3 r# y! q" ^7 p6 l8 H7 Z
void CWorld::SetLight( BOOL bLight )
! e+ [- i7 ?4 a9 {
durch
6 V5 ]' `. N1 D
Code:
. Q0 k$ u! e2 U3 \$ p
void CWorld::SetLight( BOOL bLight )
' g% r* s; D/ E
{
; s- q: h u4 Y
//ACE("SetLight %d \n", bLight);
( e1 n1 P! H0 N: }) N
' k$ n$ N7 v3 A; o
#ifndef __WORLDSERVER
5 G0 ^, d8 f( T. H% I& O
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
e3 A0 Z7 P7 y* ~
CLight* pLight = NULL;
|: \& ?2 I9 s0 _; @5 p
- R; m& a* S, L
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
7 l2 z1 e1 K, P6 d2 E- G+ K z2 p& O
# a0 V& l% O6 k; C( D
pLight = GetLight( "direction" );
7 n. U. h, m$ e% Q- K' n9 y2 ?
6 b+ Q5 j6 B. D7 n: ~3 G* D& h
#if __VER >= 15 // __BS_CHANGING_ENVIR
: V) M9 E& H! A" a% g1 [$ p; A1 B
if( g_pPlayer ){
( T$ U! G, q) z \% s9 b
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
8 r% R( t7 v4 ]* ?1 K# F
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
' q' e0 p: }# y h) Y1 N4 f. z; n3 l
{
. l- U' l) H& V% o
if( pLight )
% l3 q+ |; k \2 a$ r
{
9 m/ R* I' J& z) }# s% ^; c
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
! S+ l) C5 i9 ~5 R- U3 A1 {! A; T# w
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
. J: K# ~& n8 g$ x" }" b3 i5 Z
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
& Y9 N" w( d# J& f
& B' t* x) P X( W7 g( P- \
pLight->Specular.r = 2.0f;
1 @3 K6 b$ \; B4 \1 f
pLight->Specular.g = 2.0f;
K6 c! H5 K( r0 Y
pLight->Specular.b = 2.0f;
9 r9 e H6 s/ ~( i: g
3 c' M4 F4 o+ d$ q, r
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
9 p) E, ~5 |" a! C8 y
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
# j( G$ s% n$ F7 T5 _/ D
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ E6 e1 p, \- C4 e7 e
$ Z3 S0 r- {5 ~, m# R8 q
HookUpdateLight( pLight );
: ?. z' R5 v ]) R( J, s6 c. |( \
" f l1 J u, E4 [2 Q9 g' w8 D
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; f% w3 |) m, j' q8 T* F: S! t, e) _
" a. e& D* L/ y# r3 D+ o; x, U
pLight->Diffuse.r *= 1.2f;
! V* Q, K* q/ w* P: v6 I+ g
pLight->Diffuse.g *= 1.2f;
3 Q- ]/ V( y H4 k( j
pLight->Diffuse.b *= 1.2f;
1 w! K% p2 \1 q$ K' ~2 C
! l& W! O" `# q2 y9 k2 t4 c2 M3 |
pLight->Ambient.r *= 0.8f;
9 X7 x8 u i+ T& K/ ^
pLight->Ambient.g *= 0.8f;
- k- i+ I! Y+ s4 [# \1 ]1 K
pLight->Ambient.b *= 0.8f;
5 x! d) i3 f# a$ Y) E2 _* S9 h# |7 N
1 J$ v7 X6 d3 L# e. `) [8 z
memcpy( &m_light, pLight, sizeof( m_light ) );
/ E; d$ L0 |, r- R3 ~( H# p) a
5 d3 @$ o, R4 E3 Q0 I6 K
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 ]6 K8 `, o% j2 V0 c* n
D3DXVec3Normalize(&(vecSun),&(vecSun));
& o$ O/ o* P2 D s0 {7 S! d5 F
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% L0 T: X! F5 T* n1 z# ^6 h
pLight->Appear( m_pd3dDevice, TRUE );
) h. [8 }; A1 X8 V" ]& b) C) k
/ W0 s0 A8 e6 ~
DWORD dwR, dwG, dwB;
4 I4 F' I9 k6 ?
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 m2 m k; O. M' F& A
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ n6 S3 y5 f4 Q; g6 b
dwB = (DWORD)( pLight->Ambient.b * 255 );
( B; s8 y! _; \. G
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 T* s" Z6 N8 T3 c k7 ~* N$ |
}
* N+ J* K9 Q8 v1 C/ z& d
}
; O. r$ B F6 @
}
( C: c7 G3 L8 q' f7 I# `
else
; i# ^2 w; ?" b- k5 p' }1 w
#endif
& P. @1 n! t) C4 l) U6 ]+ L& {
/ ?8 p- N) b3 @
if( m_bIsIndoor )
y5 X3 l2 Z& Z! X
{
. r. \0 o7 m8 Q0 Y T
if( pLight )
4 t) g( ?0 d7 @5 S8 e
{
; f, w) S `8 ]7 y
// à??μ oˉè*
( H4 H2 m; C7 D. J1 c, _# h
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
) c) ]+ E( O/ d" a: U( ]3 W$ n
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
+ u5 C- x; Y' A# z9 ]4 E E
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
! w/ m' e3 K' d( j
6 _# ~' `$ D1 h: K0 e' U
// oˉè* ??à?
4 m$ a, A2 \2 P, O* Y; s
pLight->Specular.r = 1.0f;
' i6 _5 g& Q( _9 n y, g( a# h
pLight->Specular.g = 1.0f;
# H5 U% U4 H. b" l+ Q4 `/ K
pLight->Specular.b = 1.0f;
. L* V4 W5 @( q8 _
// àü?? oˉè*
, P/ C+ M9 t& m* I2 z
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
7 E5 Y; _6 J* r/ Q
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
. R- O. [" o' w: [, s
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
/ ~; a9 [* m- G
& i# y$ z' [$ K& s
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 l* u& F i: X' E# ^
{
5 _# v* @) z) K8 D3 X% j
pLight->Diffuse.r *= 0.6f;
" B8 `( o& `& K% w( w- P; k S: d
pLight->Diffuse.g *= 0.6f;
5 x5 s/ P) b- u4 D
pLight->Diffuse.b *= 0.6f;
5 w. _. F; g5 O% X J) o2 B
pLight->Ambient.r *= 0.7f;
$ C3 T9 J. t0 o7 B
pLight->Ambient.g *= 0.7f;
7 y* ] o/ B% ~/ H" w
pLight->Ambient.b *= 0.7f;
1 Z Q* q4 p* V# R: m7 t/ M
}
! c" f" w1 ^# C3 ]0 \! v. g6 V6 o- A
! v5 P4 P. w! _, t9 e; b
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ k4 d: f% X( g
if( g_pPlayer )
2 ^* K) Q8 H8 N. C3 s; T, {; T6 E- C
HookUpdateLight( pLight );
% x7 I: W9 `* Q! e
#endif
" f/ ~- C# c# H1 h
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 K8 [; P' s, L, Y! x& @% H* Y
; J4 n( K: _9 n. P
pLight->Diffuse.r += 0.1f;
5 c4 n* [' j% ]+ P8 b b
pLight->Diffuse.g += 0.1f;
+ z6 n0 r8 i; n( J. E" V& ?
pLight->Diffuse.b += 0.1f;
1 m" o: O1 i% f( R! K+ w
// oˉè* ??à?
i3 L/ w$ g7 R) _2 i
pLight->Specular.r = 2.0f;
. d; J+ m+ Y6 I4 {1 ?3 ^; g P3 I3 v
pLight->Specular.g = 2.0f;
* E \% B3 T( K( U5 ] G# F
pLight->Specular.b = 2.0f;
; p1 E; \% @* G$ H& j+ Z/ _8 ~7 E
// á?oˉ
3 C- `6 E' Q: v1 M4 F
pLight->Ambient.r *= 0.9f;
7 N/ }6 {1 d& Q( C( v
pLight->Ambient.g *= 0.9f;
* x- S7 I' L/ }. W9 V
pLight->Ambient.b *= 0.9f;
. G- ^5 p+ F* `
+ S. |: S0 l+ ^* _- x) i
memcpy( &m_light, pLight, sizeof( m_light ) );
9 P, ~' z0 K/ Q2 `
; `8 ~) G' Q9 G. A
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
& t% C& C0 y: L* s6 p5 P; e
pLight->Appear( m_pd3dDevice, TRUE );
% M) ?8 J' e; U
9 _5 K( l( ^6 q0 S
DWORD dwR, dwG, dwB;
* q: p5 J: P' E1 {# E( T8 {( E
dwR = (DWORD)( pLight->Ambient.r * 255 );
% A6 S- e5 N1 Y2 T
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 w T+ S' ~2 [
dwB = (DWORD)( pLight->Ambient.b * 255 );
( }$ y0 |% n2 e& y2 D' e
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" O" \/ q0 L+ X" N
}
# Y* N) F1 P/ G! V) U
}
) f, q* {5 h! l( z6 O
else
6 | M+ s/ A+ [' Q
{
8 _9 y) \) h4 l% O) W) x
if( pLight )
3 W1 x% x# c5 L& d' q
{
. W+ V& Q% k; \& H B( m' g
' Y( ]1 `% f0 u/ l5 Y( ]/ \( J; f
int nHour = 8, nMin = 0;
" J2 U: j9 Z% [* C! o
#ifdef __CLIENT
3 H2 C" ?4 i5 M9 y- r$ v, t
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
8 n& O0 C" Y4 H8 G7 z! y5 y
nHour = g_GameTimer.m_nHour;
; y f2 N" J9 p6 r0 d
nMin = g_GameTimer.m_nMin ;
/ |% K+ N1 ?; U v' C- g# \
#else
3 l9 d$ o+ _. x- E" I' C
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
: d' d% J4 y- r+ k5 k6 {
if( m_nLightType == 1 )
, i4 {8 e% |# z( b4 s3 Z6 m
nHour = m_nLightHour;
% z* Z' g, @8 L
#endif
* f8 f. ?; v _
nHour--;
$ [* L$ M' j; v2 K/ {
if( nHour < 0 ) nHour = 0;
9 L( u9 |) t* t2 Y9 P% k
if( nHour > 23 ) nHour = 23;
( [* U% B, U+ ~' O9 d+ [
: \8 r) H t5 ?. u# @
//if( m_bFixedHour )
4 O) L( M8 E2 j! I" l( X
// nHour = m_nFixedHour, nMin = 0;
+ r& V% L, P3 W0 @2 m( z( l
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
7 Y0 U: ?. K* ~* h" T
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
& e, B, E" Y3 S6 b6 `- y5 `
. {/ `$ l! m, K, H6 e$ @3 Y
//m_lightColor = lightColorPrv;
D# b9 W. }& m% L' l; [5 y
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
9 d' ^+ C. t' M. k
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
9 X5 l' F |- X: y0 K% t: p
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
3 \7 ~: U3 E, O. e: \1 a
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* |& m3 K4 S! ~( V. f
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
c, Q4 Z2 L* O+ @+ b l! A
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
. h3 ?9 r9 }; O7 l7 g& {" M
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
* p$ A- D) n. O; l" G$ L; D5 c
! s7 z. Z8 s" J
// à??μ oˉè*
6 r6 K) H U% |, Z8 ~$ h
pLight->Diffuse.r = lightColorPrv.r1;
3 Z. O i9 w. c9 ~' A& p) P
pLight->Diffuse.g = lightColorPrv.g1;
G6 Q e9 S' J& D0 E* M
pLight->Diffuse.b = lightColorPrv.b1;
3 X) g) I) M, h: b5 [
// oˉè* ??à?
$ X m' ]1 ~1 c0 ?
pLight->Specular.r = 1.0f;
4 ^# b0 Y5 u+ Y1 w
pLight->Specular.g = 1.0f;
5 C8 q$ A( ^# K* _* h
pLight->Specular.b = 1.0f;
5 J+ m3 A! Y8 I
// àü?? oˉè*
9 s! V+ ~" Y, e+ d/ @' \) W
pLight->Ambient.r = lightColorPrv.r2;
. e- c0 R; T. {6 V
pLight->Ambient.g = lightColorPrv.g2;
3 \# h' h6 N4 c1 n% d- D" Q4 Z$ f$ ^
pLight->Ambient.b = lightColorPrv.b2;
# @+ c, w( T" S: w
' u2 _. T0 t. t; n p6 X$ h
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
1 T0 E5 n5 p1 y
{
4 a4 J% d" `- p6 x
pLight->Diffuse.r *= 0.6f;
n4 H7 `7 e! g+ [2 [( Z8 c8 [! `
pLight->Diffuse.g *= 0.6f;
; s# c" r2 b% L9 _. ^- H
pLight->Diffuse.b *= 0.6f;
! L( z# W. w5 e, W0 P& d
pLight->Ambient.r *= 0.7f;
% V* v, @* }# \) y
pLight->Ambient.g *= 0.7f;
: ^( F2 K! ~ j4 H, l% x1 E
pLight->Ambient.b *= 0.7f;
" q! P: W% `: H3 F
}
$ n, _7 S- V* H
! H: @! X8 _8 \$ k) D
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 t6 I& O( @" b3 Z$ A& M5 \
if( g_pPlayer )
; p/ y! ~/ q/ X1 m3 x
HookUpdateLight( pLight );
8 C8 n0 Q, m4 {0 Q ?1 K
#endif
* P1 S% t8 [4 J8 P* a0 G
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 W, K* e5 Z) P5 x9 c, u
9 f1 g- J3 l1 s; U% q
#ifdef __YENV
# S# _. c4 Z6 `2 k: F5 S
pLight->Diffuse.r *= 1.1f;
& f# p, x& v9 `
pLight->Diffuse.g *= 1.1f;
7 I& ]4 J! W6 x* |" R. u
pLight->Diffuse.b *= 1.1f;
& |7 y; x2 }$ }( b& j+ L
// oˉè* ??à?
' W8 `4 L0 P/ P( }
pLight->Specular.r = 2.0f;
' f# R" ^ W0 C; M1 l+ ~. s
pLight->Specular.g = 2.0f;
9 @8 E1 W3 y' t( o; v; w7 e3 B# b3 p2 E
pLight->Specular.b = 2.0f;
) O6 J% j5 [; p" {, h
// á?oˉ
! | N$ _5 g i/ \
pLight->Ambient.r *= 1.0f;
. ~0 l# Y/ R/ ~( n( a
pLight->Ambient.g *= 1.0f;
5 J6 s7 V! R# L. [) `7 A" f1 M
pLight->Ambient.b *= 1.0f;
( _ v/ g' Q3 y
#else //__YENV
( M$ I5 I$ ~9 r6 j
pLight->Diffuse.r *= 1.1f;
" C! x* v3 X8 }9 [7 ?) V
pLight->Diffuse.g *= 1.1f;
* L* ~1 E5 G" R5 [4 L7 g- b
pLight->Diffuse.b *= 1.1f;
" v0 u% [6 t' F3 ?5 t
// oˉè* ??à?
" {9 J7 M. T1 C7 L; `
pLight->Specular.r = 2.0f;
6 I* W4 ^( k! G; E
pLight->Specular.g = 2.0f;
8 c$ Y1 [ o: G
pLight->Specular.b = 2.0f;
$ R) i6 @7 g+ \5 P( b
// á?oˉ
$ v0 i6 T( X u/ y5 w
pLight->Ambient.r *= 0.9f;
2 x6 g/ L4 _# {
pLight->Ambient.g *= 0.9f;
/ w7 g: U: w$ {- \( T" P
pLight->Ambient.b *= 0.9f;
0 R' J- ?2 h3 x m+ B; `+ l) o
#endif //__YENV
1 Q3 \. B0 H) D `2 l$ M2 ?. G
' X+ l0 J8 n4 m* Z& F/ H; q# z
memcpy( &m_light, pLight, sizeof( m_light ) );
( w8 u7 g5 A- o
) y7 M. S" I# N
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
" H) V: H! f5 s. D- @- U
D3DXMATRIX matTemp;
9 P7 l6 ]( J- k) P( I' }
static const float CONS_VAL = 3.1415926f / 180.f;
" J5 @/ s# ]2 h, d- P% p/ D
. a- N+ n1 f+ p" [9 n; i% V6 d$ I
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
4 U6 J: ^2 ~: p
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
$ D- d& M2 q+ M4 W4 L* K0 C
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
$ S. w, D2 d4 W
pLight->Appear( m_pd3dDevice, TRUE );
8 L' ]) M# b. k6 `% r/ J
+ k" u- E5 T% ^+ c2 y- @& U
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; \# d5 }, l7 C3 K) @3 U
// D3DXVec3Normalize(&(vecSun),&(vecSun));
( v$ }5 E+ m& d$ ?- G9 X
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
; y( {( K8 f" C/ H; V
J5 e! k2 l8 M2 r0 _, ~* R# b
DWORD dwR, dwG, dwB;
& \) w' X5 m4 g# P( Y+ I1 l
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 ?- A# F$ y2 b* ?9 B/ ~. A. Z
dwG = (DWORD)( pLight->Ambient.g * 255 );
9 A+ a! h$ `: W( M/ \
dwB = (DWORD)( pLight->Ambient.b * 255 );
& G$ l) U0 E- g6 L( G3 M" b: w4 B
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! c6 ]* N& |5 T5 v9 o: S, E6 P
}
3 |! i& z; s. u
}
0 n. e8 u2 I G
8 R* h4 L l7 [! D) I- @
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
5 s) C) h0 {: i+ o0 w) A) G& p
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) );
/ P& b& R( `. Q, R& M( f
::SetLight( bLight );
" }4 T4 ?+ _% i" A" F
. I b5 X6 O% I- b
// ±ao? ?D?í???ó á¤à?
6 `: q4 ~1 H9 K8 |$ o) O
m_pd3dDevice->SetMaterial( &m_baseMaterial );
/ I& g9 s+ Z) l7 V7 x5 T( x
7 W' r3 I0 U0 V9 u
#endif // not WORLDSERVER
; G* Y# H: x; [: Q, u. m
}
1 }! j, ^5 w' j5 |( \: U; I- h
并更换
: o0 z9 U2 o8 y1 V- t: @
Code:
+ w: U/ r4 p+ e- ~) E+ h& m4 ^! ^
__FLYFF_INITPAGE_EXT
6 [8 ^5 q) K6 e" b" ]
定义
5 o# }' G0 ^/ S9 o
9 d4 y* s) ~5 a% V* l
$ D8 u3 E# }4 J
$ H# o& J! \) V) t' Q
% `* Q* o* }# s o. v W$ r' G2 t
现在终于删除我的狗屁加速...
* r Z3 p4 I; u0 k5 X. I U' H
+ o# a4 m9 A5 \$ F5 r2 Y
9 x4 W5 D4 ^6 ?/ m
: M+ x2 h% a3 e W ?
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2