飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
9 b0 D9 @( @/ a+ l ^
尾翼:
( ?7 ]4 R2 k+ S- L. n
& _' D; \! ?& v- t7 e
代码:
0 l, r! \/ \5 _8 {' m
CWndAutoFood::CWndAutoFood()
2 q+ }; w* \. K }! ]
{
+ O3 M% H3 Q% w' e3 b% E
m_pItemElem = NULL;
) d( P; n) \; b6 A: i% y
m_pTexture = NULL;
% U ^# o- v" S( |+ G
bStart = FALSE;
" b, F3 T2 K+ {- s
}
; f' e) x5 }% `5 l* [8 W. V
7 k @/ K* L% I7 k b* h
CWndAutoFood::~CWndAutoFood()
, R# n) R: F4 v8 o y1 e
{
( v1 I7 D" ]% g+ o: m3 p
AfxMessageBox( "AutoFood ist gestorben
" );
! l% E5 |. G4 D
}
$ h8 k, v0 U4 S1 X0 ^8 N9 n# g( J4 t4 x
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
3 I' M: ]5 ]3 W' b+ m
{
5 x+ W4 A) d( U: ^# |7 o8 h
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
9 ]6 A0 y; ^* Y. \' K7 J0 J
}
4 `: l, x, w ] Q+ h* X% X& K/ w& M
, D( u! r4 m0 m. j% }4 m
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
6 F: a9 e" L/ `+ _# C
{
- v9 d$ ~ o8 U1 Q5 h: u' V
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! K" J; w$ Y6 o6 u }# X
CRect rect = pWndCtrl->rect;
6 K0 c% I' \+ d5 i4 j, \
if( rect && rect.PtInRect( point ) )
+ V+ f; g$ G: ?
{
* J% j* `+ {8 J e, n
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
4 W* M5 \' W. i9 K1 v: N
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
: h- ?+ S Q9 u# ]3 L9 C, F: b' w
{
( d7 T, B8 ~5 [" X
if( m_pItemElem )
# I3 T1 |& B1 c2 }7 p
{
& u# ^. j# u, }. k. R
m_pItemElem = NULL;
( r0 z8 v3 Y6 T( {! ~5 M) H
}
: B0 v6 c* \( m, Y# I2 o+ l% |1 B
m_pItemElem = pItemElem;
! @! x& R* e3 j5 y
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
* z+ Y' N' ]& g' v
}else{
. {6 A4 P" G2 i. Z" }( @ S
SetForbid( TRUE );
0 w' _3 V, e% ^ }7 a
}
. t( ]( d0 K% W% |
}else{
; ^3 V9 R& e( Y# z% j# s
SetForbid( TRUE );
+ e- z# m; c& G7 c: n
}
8 @9 k$ z0 ?7 Q4 o; |
return TRUE;
1 ~1 G& u/ s2 u9 g7 q% q# T
}
, w* ^2 q2 [+ \5 P: A' G
, Z1 A' t% ?/ p% ]9 h* T6 y
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
$ G9 E# F2 B2 b9 B8 L& ~
{
! n9 {, ~# B2 c! r2 S6 D5 N$ Y
switch( nID )
4 T4 |2 `8 J6 L, ^) v/ d8 P
{
# b( b9 B! F% S$ o
case WIDC_BUTTON3:
! ^% c- P2 F9 z: y5 c; k' K
{
$ ~# |9 N- }5 l: q5 A4 Q/ A: b
bStart = TRUE;
. Z$ q, F3 v0 _" d
break;
: b; x" v6 C$ u% b; z0 z
}
$ p- ^) N x5 ?7 w! q
case WIDC_BUTTON4:
$ O' W6 {) I+ _9 p
{
9 p4 \( k" w: j3 e
bStart = FALSE;
. e% y3 ~7 }8 I8 _
break;
! l0 l' P1 H u6 b' q
}
$ `5 j% \: \4 v0 ~; s' S" \) E3 W
}
& t) o6 y1 O0 o% {9 L' c( ^
return CWndNeuz::OnChildNotify( message, nID, pLResult );
* r1 [* N9 `5 \; j+ ~1 g
}
- I2 G3 A, Q" J B
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
! @0 @$ i/ Y! }' b+ h; h" H
{
9 U" N- m0 N3 K6 M+ U% O! X) f v
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
/ p! @% Y: Q8 }; H6 I
if( bStart || !m_pItemElem )
$ K2 {& f0 L/ m) l& h; m
{
/ w& \: `! z4 }, ^- P2 e
pBtn->EnableWindow( FALSE );
7 J; v2 _' j% o V$ [6 s' P2 {. l
}else
4 Q n4 E% V, L9 y( W
pBtn->EnableWindow( TRUE );
4 @) w% O+ R3 k, h6 f
if( m_pTexture )
, R2 e6 ]9 b+ _. a1 c9 A3 O6 L8 n
{
2 c+ g2 p' s) A: m; D" A5 ~
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
, {7 V" \+ |' m" l1 ^1 X
if( wndCtrl && wndCtrl->rect )
; Y6 C* C( q5 ?( y! a( y
{
" Z& @% v! |; y
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
2 {' J5 p- v0 c$ d! a3 Q0 H
}
5 W# O# c( u6 d+ e1 z* m6 P
}
4 q/ o1 f. x S, b
}
3 j+ g( F, T" P2 M0 D
. d2 Z" ]& K' d8 t) q& @9 y
BOOL CWndAutoFood:
rocess()
/ L( q5 Z' z* J P* M8 `, b$ n: V
{
6 s/ G2 P+ p( L% _1 K# { A
if( bStart )
# }, S7 Z. C( t# E6 r& Z& F- ]' ` Y
{
% A# ]+ V4 j. i# _
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
: G1 X4 g2 t4 m1 e0 r. B2 p, l2 [: q6 d
{
0 T0 k* b d; v* i3 i
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
! k+ N E& M* ^/ u4 W9 {
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
7 _3 Q k# f" j1 l
}else{
' A3 r; M* S0 k8 j* C. }! U
bStart = FALSE;
% X! `9 f7 j7 Y7 R9 X% N& ^
m_pItemElem = NULL;
W3 Q0 K) U, G( S
}
a% w+ R3 h/ S$ e' k& `4 I* v
}
- h4 ~, I' b& b& m9 V+ v2 E/ ~; {. P
return TRUE;
4 i( u' A' Z: P+ n0 z3 ^
}
i+ }: x' a: v( Z& |+ V
) G. i" b7 }+ F
登录视频废话:
3 N% E) A2 R4 f& X
尾翼:
: i8 B; U& y: \
@6 s- i( H2 d4 A- V$ n8 R% Q$ ~
代码:
; T7 ~3 P- b$ P3 t. Y$ Q1 e
0 k4 ~4 G/ @% }! \2 [8 @
void CWorld::SetLight( BOOL bLight )
+ b) \$ b: Q$ [6 l# J
durch
7 j$ S7 Z" Y0 X! o- `: i
Code:
0 i+ n& k" P. b( }! V
void CWorld::SetLight( BOOL bLight )
0 w9 j2 g& V% Y$ _& x1 H
{
! G& B7 ^4 H5 ^$ j K
//ACE("SetLight %d \n", bLight);
; l: [6 j; Z h2 m. [9 q6 O- u: x
+ O! [& w1 ?" ^; I n( Y0 r
#ifndef __WORLDSERVER
+ O& T2 W" L% B3 c
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
' g: l8 M8 h, N/ h! |
CLight* pLight = NULL;
5 W( N# T/ k5 _" Y% ~! q% P1 M
( t; {* M5 c8 l6 R
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
' `3 f( S8 n8 \8 l% f& x8 `9 R) t
8 B. u' y2 I. `
pLight = GetLight( "direction" );
# B" b! |0 v7 F0 u8 T) A
3 ~0 s6 y# X' c8 n. ~
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 K& U" ?5 g8 W
if( g_pPlayer ){
& Z y; ~# }$ L* ^6 j0 V- [5 I K
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
( l0 o K& }3 T6 V- F
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
+ C) J/ e% {, x$ l& I' K1 N
{
# [9 u7 L ~6 A# {+ \! M
if( pLight )
' O9 _/ F7 `# r$ P2 p( d2 k/ g
{
0 @- j. _# G' r! z Q( g2 [
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
6 W/ q& F" [) n" k$ H2 k- M
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
2 e) {& F8 f( c2 C: s' i
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
2 R2 A+ [! R; U
5 U+ f6 }% w; c2 i& J( Q+ X
pLight->Specular.r = 2.0f;
' T5 n7 X9 b! G) L3 I
pLight->Specular.g = 2.0f;
6 _! {5 C; u$ t) B- l& M
pLight->Specular.b = 2.0f;
. l) k8 j, c' V9 F* ]
5 b$ U. B+ t! W: A2 o, q/ n
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
) _7 \2 x# l0 \& l x+ C8 A% ]5 k# h
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
- }& A! R/ F( U- K
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ \; y4 }! L, k, u2 |8 q9 o8 q
, b P) e+ K# ]2 |% {! x& O9 }% N
HookUpdateLight( pLight );
2 Q! g, o' C7 O( O1 J" o) f
/ O p9 @+ T2 R- H3 |. e# c
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: ]( Q0 I6 d# J- y
: k; O/ E- o0 B5 ~
pLight->Diffuse.r *= 1.2f;
& V3 f7 C. I, p7 \; W3 \0 d
pLight->Diffuse.g *= 1.2f;
9 G( y8 g# C$ |( K; h
pLight->Diffuse.b *= 1.2f;
& d5 n5 K' [- r; s
9 V6 j: r! u& ?8 f# d
pLight->Ambient.r *= 0.8f;
* Q; o5 v1 N6 U1 I( @& ]! X9 H# R
pLight->Ambient.g *= 0.8f;
3 y) D f$ c) ~' h: x$ G# ~% {
pLight->Ambient.b *= 0.8f;
& z/ Y+ `4 ]( l# u+ Z
6 G V9 O# ~4 K g7 A5 F% Q) e
memcpy( &m_light, pLight, sizeof( m_light ) );
- K; G& c: B# A7 i
N( M7 C1 g( r" J6 B
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
4 M! G' J5 S% o) U7 |7 a
D3DXVec3Normalize(&(vecSun),&(vecSun));
9 E* d/ @1 A6 ^0 m! l' k
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ x* w0 U" j. V2 j, M( o) T
pLight->Appear( m_pd3dDevice, TRUE );
) { [& x' _& n$ p
6 k. O% [# G4 T& C
DWORD dwR, dwG, dwB;
7 A$ g, T. x0 A: N/ b. z
dwR = (DWORD)( pLight->Ambient.r * 255 );
' H1 B7 S7 S3 Q& E
dwG = (DWORD)( pLight->Ambient.g * 255 );
2 P! g, s! X2 H7 u9 w7 b+ M% p' b3 r1 I
dwB = (DWORD)( pLight->Ambient.b * 255 );
^' C. \0 F2 v! m' s9 d+ r) x$ S
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) i6 j4 Q4 L; S1 t' L4 N
}
' G3 d) \+ A9 m( \7 Y
}
: i7 d S% ^. R: @. }
}
8 j2 w( }. z/ I; M/ p/ W
else
0 W7 K0 I8 }9 U; H- E; O) q/ P
#endif
/ @! B9 J; a( C7 G5 h" l: `: i& T, }
& O( `' |) T' I6 N7 @) G
if( m_bIsIndoor )
0 j8 C+ G5 W! o% Y/ G
{
) L6 T2 l$ D2 {9 E# g0 G2 W1 e
if( pLight )
. |9 J: g: B) S; g
{
# Y1 t1 Z. w* z- N
// à??μ oˉè*
3 J7 {( F) O, E H
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
6 v* ?8 e/ O' e1 _! e! _
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
# H- J# l: T) B- [
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
$ o; J) h, }* m ?
( J. p7 {! d+ d0 l7 @% u
// oˉè* ??à?
/ E7 C( ~! c) I7 K% V
pLight->Specular.r = 1.0f;
* f( v/ D/ [- u ?- [( _5 {
pLight->Specular.g = 1.0f;
8 W h' }2 M" V" H' i1 Z4 x- w3 o
pLight->Specular.b = 1.0f;
' q8 F$ q* n: f' T( b6 ], Y
// àü?? oˉè*
* q' h" B* n5 q8 ~$ m
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
, E0 L" {- v9 b& M, c+ N C+ e
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
7 g! y9 W% L* `# \
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
/ I9 B* ?+ p/ n' V3 O7 P8 o
4 _8 F3 H) d& c7 a: n
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 T2 T: o" ?; d/ @/ \" F C
{
% I4 C0 b" Q5 U
pLight->Diffuse.r *= 0.6f;
3 J( b) X7 z+ ^9 E/ L( W
pLight->Diffuse.g *= 0.6f;
- @2 K/ K& s" L
pLight->Diffuse.b *= 0.6f;
3 M( K- ]2 c) E1 I, V
pLight->Ambient.r *= 0.7f;
9 u s' B( A) X3 d
pLight->Ambient.g *= 0.7f;
& e' \% }9 ^1 Y9 J* k P4 V
pLight->Ambient.b *= 0.7f;
! A6 i. r- g- {' @' D8 q) o p
}
+ r# P& k$ R, @- P
( C, n/ t0 n. P2 g+ C6 d
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 H2 U7 Y: n \6 w" M% M
if( g_pPlayer )
! \7 {: K W4 [9 k* M3 ], F3 f
HookUpdateLight( pLight );
* T; b8 b! n& }0 ]$ s, d, V
#endif
: H+ M9 {/ X# W
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ Y8 ]. D% |; G7 u+ i% B
1 A6 O+ g% V" Q/ h- f3 Z
pLight->Diffuse.r += 0.1f;
- I9 }$ ?& o4 c1 ]9 O: ?3 P
pLight->Diffuse.g += 0.1f;
/ M0 Z5 B1 O/ U) G' n' g; M' f
pLight->Diffuse.b += 0.1f;
* m& j* a. x, y4 j7 P, R7 x& o c: Z
// oˉè* ??à?
* j* u3 D5 B7 i
pLight->Specular.r = 2.0f;
# t8 R6 M* g% C/ C
pLight->Specular.g = 2.0f;
: S0 \% S5 G2 H! Q8 J
pLight->Specular.b = 2.0f;
' ~4 @# U- x& [! W0 G7 C
// á?oˉ
, G4 L r7 F% J( V! x0 D
pLight->Ambient.r *= 0.9f;
' v4 u. G0 }4 W8 i
pLight->Ambient.g *= 0.9f;
4 P, y) A9 r: H4 H! p- ~
pLight->Ambient.b *= 0.9f;
/ p$ w7 _ D7 }' H
5 V' h) a+ a" a* S( s
memcpy( &m_light, pLight, sizeof( m_light ) );
" M9 e& l1 y0 |7 w2 n$ l. V
6 \, V9 A8 O% z# }) t) W9 A
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
& G# v7 u" f' S
pLight->Appear( m_pd3dDevice, TRUE );
' M; b$ N* V6 I, B" d
0 E! e+ y1 ?( Y8 Q( [) ?8 p% j
DWORD dwR, dwG, dwB;
9 g; c4 h& `7 {4 [+ y* x
dwR = (DWORD)( pLight->Ambient.r * 255 );
" \% B5 G) | n% P0 }8 D( a& |
dwG = (DWORD)( pLight->Ambient.g * 255 );
: [) j5 } u- y7 z
dwB = (DWORD)( pLight->Ambient.b * 255 );
- h. r8 D/ {$ L8 _
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( w8 f2 F; x+ `. t2 m
}
s3 ~7 L( `7 z% ^
}
2 H, T- Q# N* B# S0 r, G
else
5 p$ [: c4 ]! N7 I
{
& f' y2 l* W9 ?
if( pLight )
2 T1 P8 z: V* p
{
0 J+ p3 W$ Q4 K/ t; y
3 c" E+ S) m) O* z9 k! [. i8 _
int nHour = 8, nMin = 0;
, S' T! |% G! u, K' P
#ifdef __CLIENT
; b* p! d2 V; t j" v: B5 a) W
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
4 g# J0 w0 f/ F7 E N- x0 L! j+ @
nHour = g_GameTimer.m_nHour;
! p, V, P0 Z2 w8 ~+ z; n. U% \
nMin = g_GameTimer.m_nMin ;
; S1 p" {% M" ?% g$ y/ T5 w) s
#else
- a* f+ C3 C& V" u* Z9 h d+ F
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
2 Z$ S/ h& x; N% E% `) z) P
if( m_nLightType == 1 )
3 J/ Q, }* D6 B
nHour = m_nLightHour;
" L1 ]' f9 I6 a. J) ?9 _
#endif
! R- K( ~+ V( Q! ~/ u- d
nHour--;
6 }& c# h) k3 i6 S8 y0 g
if( nHour < 0 ) nHour = 0;
0 b5 G% p/ A z7 q6 a! Z
if( nHour > 23 ) nHour = 23;
; |4 y5 s @$ _1 Z6 g; R
" F) E) o* J8 V! V) g/ f1 f. p
//if( m_bFixedHour )
! o8 n+ }# L) X& N e& y/ q2 U5 P
// nHour = m_nFixedHour, nMin = 0;
9 i3 g% r) \6 o3 r1 V5 h, c
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
- S# G. L& N, q' J) X: l0 x
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
% k7 ^' ], X I" {1 z2 A1 K
8 v; n) K0 f1 C) v- S! j; w& x; i
//m_lightColor = lightColorPrv;
! z2 {: g( z8 Q$ w+ f
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
3 G8 Y; l* o$ x" }0 E2 h+ L
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
4 c7 ~! i( C& I& Q( a k
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
9 p f( i9 p3 X }; \- s* z( i# Q& B* X
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
- U& ]6 B0 P. L- m5 P- b
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
7 T1 N2 H- Z g' ]! R( H4 i/ z# O
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
m- j0 s8 L+ C7 N0 t& K3 m
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
1 W% ?/ _6 P0 E, t F5 D
2 q7 l0 r: ^; P% f; S
// à??μ oˉè*
$ x9 [. T- x/ t- ^* o
pLight->Diffuse.r = lightColorPrv.r1;
2 B; D* {9 C5 J1 a$ u
pLight->Diffuse.g = lightColorPrv.g1;
- e7 h9 M% \; M* C! v+ d3 U; E9 C5 s
pLight->Diffuse.b = lightColorPrv.b1;
0 E6 j6 C/ l9 t3 C
// oˉè* ??à?
) E: Z0 \8 G9 p3 O
pLight->Specular.r = 1.0f;
! O& p+ K$ m3 N% i
pLight->Specular.g = 1.0f;
( B8 J5 u5 ~5 T& ?, u1 [8 V9 C
pLight->Specular.b = 1.0f;
( b1 M) j- ?, Q8 r) X8 s. ^0 z( W e
// àü?? oˉè*
7 Y! E' g) l% `
pLight->Ambient.r = lightColorPrv.r2;
4 G5 a4 y4 K* H3 g
pLight->Ambient.g = lightColorPrv.g2;
1 |; H( i2 e7 Q; F2 M# }4 f5 Y
pLight->Ambient.b = lightColorPrv.b2;
) D8 ]! T/ l. g4 a8 r
( v# n. I6 Z& c! c6 ?
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# q& ]9 @! b1 u
{
; F; g7 \; ?8 _0 A+ u
pLight->Diffuse.r *= 0.6f;
% m; p/ c0 g- X
pLight->Diffuse.g *= 0.6f;
7 ~& A. W0 `! ~
pLight->Diffuse.b *= 0.6f;
9 ?5 O4 j' S: n% s/ o* `' M
pLight->Ambient.r *= 0.7f;
; `5 z6 b6 \: u- [
pLight->Ambient.g *= 0.7f;
# C( Y9 V1 ]* m* {6 E
pLight->Ambient.b *= 0.7f;
( s8 q) W' j/ J5 z. T) Z
}
; F* F. U A; G# V6 ~ X
$ @* s+ [! G" h1 U1 d# \
#if __VER >= 15 // __BS_CHANGING_ENVIR
# z: b/ n d& C& z" d% J0 q
if( g_pPlayer )
. M7 `0 Z6 Q2 x, C# [
HookUpdateLight( pLight );
7 N3 E7 s% N+ \' L* ^* H# T
#endif
# A* Z3 s1 N- e
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 A8 I% G7 X7 m/ z6 D* t- {$ C
# n; A* {, _# o
#ifdef __YENV
; Q8 c0 k1 \# j
pLight->Diffuse.r *= 1.1f;
, F. }! k3 |" T5 G
pLight->Diffuse.g *= 1.1f;
6 F& d! J/ S4 `
pLight->Diffuse.b *= 1.1f;
4 q( B# J$ f- z' Q
// oˉè* ??à?
2 b, u& ^, q4 A
pLight->Specular.r = 2.0f;
7 G" E& E' I1 ]! D2 ^
pLight->Specular.g = 2.0f;
) b" E6 N U0 v0 t3 ^
pLight->Specular.b = 2.0f;
+ h5 i; }( x. l. l$ t
// á?oˉ
4 y7 F* O5 M# A, C& ^: Z
pLight->Ambient.r *= 1.0f;
8 h/ y! f/ E1 Z, l# H
pLight->Ambient.g *= 1.0f;
9 e7 l/ E j- m, {
pLight->Ambient.b *= 1.0f;
, ~& T# W) ?; {% {* M4 u. A
#else //__YENV
# g: O1 ^- T! E2 s
pLight->Diffuse.r *= 1.1f;
v7 N( H7 w. r9 j. p6 m
pLight->Diffuse.g *= 1.1f;
, k3 z- P- u7 ]8 t$ x/ r7 e9 D! A3 Y
pLight->Diffuse.b *= 1.1f;
/ `7 g$ ]; w4 n$ D% B8 z% a+ u9 u
// oˉè* ??à?
: Z' s0 E$ a# f# y" \/ r4 c6 `( N9 n
pLight->Specular.r = 2.0f;
3 v" n, w( a6 m9 }0 g
pLight->Specular.g = 2.0f;
+ I1 w) C) j7 v1 ?) Y
pLight->Specular.b = 2.0f;
8 k9 A' O6 c; V3 \0 Z
// á?oˉ
0 y7 ~) j- P6 |" A
pLight->Ambient.r *= 0.9f;
/ c, P& H3 H; O& d; Z! o; t
pLight->Ambient.g *= 0.9f;
# I3 |3 G) ^( G4 x4 D
pLight->Ambient.b *= 0.9f;
D5 d A: R$ c- ?" r
#endif //__YENV
' P0 ~' B, f& `2 L! G4 s3 r, C
$ F9 c# ]8 {' T
memcpy( &m_light, pLight, sizeof( m_light ) );
9 g9 C" Q/ B" Y: S0 { E
1 S2 E9 w% f. G1 r) D3 m! p
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
5 z& @+ f) O! d
D3DXMATRIX matTemp;
2 [0 w- v& J3 }- F: f! C
static const float CONS_VAL = 3.1415926f / 180.f;
+ F, ~8 b6 ]9 @; O
5 Y. w s9 v8 z8 N
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
1 [; s6 l4 M, C. ~' a) b
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
1 ~; _5 B- B9 e
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
; m. Q- T* P" d
pLight->Appear( m_pd3dDevice, TRUE );
4 i: D: r+ q& T% w4 G' Q
7 H% B' i- l) e: q3 P
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ ~* I! J3 I" y, G' V4 T. m
// D3DXVec3Normalize(&(vecSun),&(vecSun));
3 ^/ z: ~2 `; ^# V. t0 U
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
* v' o5 Y& M- l1 C( |# E f. C5 Q
! q0 J7 c$ V4 C9 B
DWORD dwR, dwG, dwB;
v4 x' v7 N1 Z C. f
dwR = (DWORD)( pLight->Ambient.r * 255 );
; b2 F4 [) F9 q& v; p2 d& Q
dwG = (DWORD)( pLight->Ambient.g * 255 );
- r3 L: x/ U& c: G0 q; D5 Y& `
dwB = (DWORD)( pLight->Ambient.b * 255 );
. E5 v4 }; t N% F
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' E2 L. H3 d( _- T% K9 C
}
8 z# {- ^0 f) ?) B; q: ]
}
% [/ N. E5 j; ?4 O; z" ?
* R! U `, ~* T! z$ W3 w' I0 r
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
* p0 K" a( @6 X( s( K* X
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) );
2 L; ~$ w- [1 V5 M h
::SetLight( bLight );
/ m0 i- t t- r7 z* y( Z: b
: w& K- t; {* p' m5 j# w* F1 H
// ±ao? ?D?í???ó á¤à?
" x& E Z1 c( o) ]! q* n" s
m_pd3dDevice->SetMaterial( &m_baseMaterial );
. _' z+ W+ Q6 b' T+ h
2 y( s5 _& F& \1 e5 L; [4 p7 n
#endif // not WORLDSERVER
' b) g1 g( m5 E6 N, x
}
) p7 |) N. P. O$ v# T
并更换
. M$ l9 q7 L" z' E; H- T
Code:
( g0 R" @& I2 X# J4 R
__FLYFF_INITPAGE_EXT
, J* E+ n; E( N7 k; a+ i
定义
u# q: d* E3 V
" ? W1 z4 q0 m7 {. Y
2 s5 u. b+ V9 {: p9 G$ M* m
- F: [& a {" ^' f; R: a
: v# }3 Z! w0 ?' P; R
现在终于删除我的狗屁加速...
3 `3 _$ z' s4 ?. d8 z% `
/ @( n8 P( @ B' I: d; S! P5 l
" I1 c8 u$ [ U* {# R: V: j6 Z
9 }, g2 @$ j4 Y
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2