飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
7 d7 H, K: b! F m7 u
尾翼:
; R; |! }, s; y( }# g
8 G1 a* f& E( ]
代码:
- u% a, h2 a0 h* ? @% q }6 z0 v
CWndAutoFood::CWndAutoFood()
6 O. x* x* V) [. ~( M
{
- y- V D# c! J+ \ |8 I w
m_pItemElem = NULL;
& v: F0 i" L8 r$ s
m_pTexture = NULL;
) \/ V0 K9 h& o; W8 J! e
bStart = FALSE;
" e$ w s3 N% C# e& P5 E: T4 Z
}
7 q' G2 J, `! ^7 q
; X" f2 H/ e3 S9 V4 V
CWndAutoFood::~CWndAutoFood()
& W5 c# {4 h1 {' @
{
; M2 q) [* e# r3 I1 K2 L
AfxMessageBox( "AutoFood ist gestorben
" );
8 G9 f+ k L, q, ?# T
}
& }( j# ^1 i1 L& ?0 N* y3 h6 A% g
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
! {5 o' s" t2 {, s }% Q
{
3 e, V0 n3 h4 ?) Z- [
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
5 ]6 w4 d, d* @; [) L6 u
}
5 I5 w& o- @' u7 R
4 e( ?! G* N9 a
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
- O* r5 o( k2 @& f
{
+ W7 V* w. }" D6 M, W
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- m/ v; ]. a3 q) N5 a8 s7 ^
CRect rect = pWndCtrl->rect;
8 d( b6 B9 c* B- X5 h" s( M
if( rect && rect.PtInRect( point ) )
" i0 W, E! y* l/ m l# @; G
{
3 l+ q7 d7 F- z8 _3 s5 q; R
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
7 [$ w2 U6 t5 k% g
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
; `% z2 R! k# \/ f. F: M( `+ a6 j
{
3 z5 Q; x8 j) { w1 f+ D! H$ _5 w
if( m_pItemElem )
1 W9 h- g1 m2 O L8 @5 c w1 D
{
5 h8 W: d% u& |4 Q/ b
m_pItemElem = NULL;
+ {" X" @- y. |) Z5 y" H
}
6 G% l3 r l! f' L9 M% x
m_pItemElem = pItemElem;
/ S& A% O; B) H N: q8 h
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
" R) E I* v/ B. C* V! e3 Y( G
}else{
# q3 f. v& K, Y3 @' X7 D
SetForbid( TRUE );
+ ~( w9 i. B. K; g5 Q, n
}
0 c5 R! Q( Q+ Z- g9 B& q8 c
}else{
- A+ z$ l% Q6 {9 @; u9 N6 ]
SetForbid( TRUE );
9 P3 h! X. q2 ?* d
}
/ C% p+ s+ [9 l2 y# g
return TRUE;
" ^5 m$ e9 \, x! S7 X7 G' e/ n
}
3 f3 d4 D' k z/ @& k% ~
: L! ^. e; w B/ U1 S
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
2 L- W/ U% S$ v
{
" h/ O9 ~0 t/ k& o: w0 n. c& H
switch( nID )
_' C4 n0 D. f d: Y, F
{
0 f' M; U6 c, y5 \) O
case WIDC_BUTTON3:
& v+ n( Z+ f" R) X3 l9 g
{
6 V+ e/ J- v4 J5 c0 A
bStart = TRUE;
t- c# U5 ~3 r1 O% W, C
break;
. M6 o8 p0 U/ d M& W
}
: H6 Z' _9 S5 m0 O
case WIDC_BUTTON4:
3 X a" K) \$ f9 q% s+ |
{
, H& M* `' ?7 n
bStart = FALSE;
( y9 z4 x; k& X9 {1 l `
break;
m/ w' H0 @( @ v/ L0 C
}
7 K5 p6 f; i$ z' d* `( C
}
$ b5 u+ v0 m; z
return CWndNeuz::OnChildNotify( message, nID, pLResult );
2 V! D1 ?$ e3 _; t$ M" E! ` N
}
' [9 \# j3 K7 L' O+ A+ h* C4 E
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
- `) a$ {* U; Z. J, ~+ a$ I
{
8 g& G/ q% W, u- q' x+ d L1 B
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
: X _ {3 H: H0 e! @
if( bStart || !m_pItemElem )
# r* |& ?: H) l m
{
/ ^+ r, s8 S0 g; z x1 S
pBtn->EnableWindow( FALSE );
+ j) U* Z/ ^4 T) H2 u1 ]3 X
}else
/ W: h) e* x% H4 t1 z
pBtn->EnableWindow( TRUE );
/ F' d) v' ~' H6 p; l$ ]2 C
if( m_pTexture )
6 H7 J8 f: a% y1 G( p
{
( c: K. @% O& n" K+ J
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 q2 U. D% t" T2 Z8 J( q9 k
if( wndCtrl && wndCtrl->rect )
* y& \( U! ?- q! d
{
' e) G" E( D. \6 G k7 z9 \
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
; O1 Q2 V4 R) R. ]! F6 |
}
: D' u5 l' y' S0 G
}
7 t: ? Z5 {' J7 A0 C. \& S
}
s9 G5 Y4 \% D2 U
- s0 b) \1 S3 @- v6 h% P$ W$ l _9 k
BOOL CWndAutoFood:
rocess()
" a/ I+ K2 ]9 D( P) K5 s
{
0 a& s: o' K& G( ~: J, ^
if( bStart )
" w0 Q5 m9 R1 |- U
{
; m/ Z: x7 d- v
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
/ }9 y& i% K6 c+ \' K
{
A1 u2 l" f' o. v
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 X9 F8 S c3 s7 K; B
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
1 M- `% Q3 }5 Q
}else{
R) m: T9 [$ k
bStart = FALSE;
: {9 k' V! Q$ A( {3 ^3 t* E8 z; N
m_pItemElem = NULL;
% D8 z6 Y- J0 t% H+ Y9 E* p
}
- g/ k) z, z$ c0 @2 q& X6 z
}
4 M* R. m2 l& `2 n) f' p
return TRUE;
4 Y& b. J: D6 m
}
$ }: A, Z3 l8 j& K0 ^
% [* f& b( ?( K0 x: C
登录视频废话:
: I; q+ K- q2 f! f- d! E
尾翼:
u0 m2 S6 A0 v
/ ]: U0 S6 ~' @/ |2 |( w2 f
代码:
+ I9 R2 B. Q* O3 r' y& t* z
X/ z" |; \) v
void CWorld::SetLight( BOOL bLight )
9 E- @$ o N1 V
durch
$ t1 d6 S$ {% ?; q$ ~( ]
Code:
# J$ p1 V8 F/ F( T5 H
void CWorld::SetLight( BOOL bLight )
S/ D' R. r8 _+ p* o, ~
{
/ R3 N2 s9 W" n0 i ^
//ACE("SetLight %d \n", bLight);
2 p/ H3 i* _4 k) k) M- x
6 K% K O- k$ b: k% o* k0 M
#ifndef __WORLDSERVER
* k r% ^ B9 i" D
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
$ g2 T& A3 H, ?7 ?; Y
CLight* pLight = NULL;
4 z+ J1 w. O3 H0 b
" ~0 i7 R- {3 w9 V
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
5 B3 m' v# v) O: f- F8 H
( @' w" R2 Z/ u" x% Q' L. z8 h4 r
pLight = GetLight( "direction" );
+ k8 [4 i) l2 u) K- A& W3 x. n' z
8 V1 X2 n9 k( i z* J4 K
#if __VER >= 15 // __BS_CHANGING_ENVIR
0 D5 f) P( @: P- \6 n y
if( g_pPlayer ){
6 T+ U+ E% ]8 x, \7 F
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
: W% v1 l2 A3 G) G) y; M5 y
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
( Y% }" W7 }8 g3 r; d9 i7 K! h8 K
{
$ a% V5 ~ ? H; Q J5 E4 u
if( pLight )
# L( p. c& @4 `* J& d5 @
{
7 [1 E$ S2 O3 o0 e/ _/ C ?
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
( |- ^4 K: r* p4 o/ Q. W
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
! z S: J+ g7 x+ p/ Z: f: P H& ^9 w
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
) }% V( _: N6 P" s& p4 t4 P! Z
+ g2 t @8 O- @1 q& U9 p Z
pLight->Specular.r = 2.0f;
5 u- g+ D H" v3 ^2 @, J4 I
pLight->Specular.g = 2.0f;
4 E$ c+ U \$ V/ n. [3 O$ J! { K9 k/ [7 [
pLight->Specular.b = 2.0f;
4 D% q: m$ E8 V6 \& I2 P" S9 B
" Z; t+ p2 Z2 e( u, J
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
' m+ e. o# j3 }: P6 i2 W
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
' v8 Y( v3 [. _5 F; M( W: Q
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
5 ]4 O, F4 S) O
0 D( d. {, t$ N0 h) r" m4 F2 o
HookUpdateLight( pLight );
1 V g' `6 W* R
3 |# c* G0 z R+ v9 ?
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ E3 u) S; [4 c0 a
% I( q& A9 l* F) B: W
pLight->Diffuse.r *= 1.2f;
0 C V2 Y% o# V% f) e5 E
pLight->Diffuse.g *= 1.2f;
( w: a, C; @1 u% r6 l
pLight->Diffuse.b *= 1.2f;
+ b3 X& Y/ W# o4 v6 A( J0 H5 F% z
0 [, E* i: D( q
pLight->Ambient.r *= 0.8f;
- b1 X" w0 N; D5 x3 [9 _+ U6 }) x) y
pLight->Ambient.g *= 0.8f;
: ]3 G) A0 P+ w2 G
pLight->Ambient.b *= 0.8f;
. g- j) P3 F! W6 ~
& M3 C- z; h- {5 V3 e* \4 _
memcpy( &m_light, pLight, sizeof( m_light ) );
$ X" n1 H% j- c. V2 h6 q& ~4 x: S
$ ~ m" f9 w* ?9 o
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# Q! e0 k% X+ u c
D3DXVec3Normalize(&(vecSun),&(vecSun));
4 h$ h2 }5 I: k0 u; O" k5 K
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. \4 `- D- O9 e; I& g
pLight->Appear( m_pd3dDevice, TRUE );
! c& \+ |( A4 z) Q0 ]0 I
+ n! ~9 Y+ W+ R& W6 P! \5 ~% G/ M
DWORD dwR, dwG, dwB;
+ o7 V3 y5 |8 G
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 f$ x8 {7 C# j5 T3 E- ~
dwG = (DWORD)( pLight->Ambient.g * 255 );
9 L( x A1 z) M. {
dwB = (DWORD)( pLight->Ambient.b * 255 );
1 y. c3 v/ P) X* s# K( Q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! Y( P" |7 D; I0 W# K5 Q( t
}
5 N& h9 m- I5 B8 j! _
}
) \8 `% i/ w1 N/ c, a- s
}
/ Q% i* }: U3 ?
else
1 G3 z5 g2 g* N0 ?, i8 @9 l
#endif
) }7 E+ {1 H* W! o! ^$ I% s+ m: R) \
* c z, D, |4 |, V6 G2 L
if( m_bIsIndoor )
{. D2 Y0 ~+ V/ N2 B( ?
{
$ K8 W- B3 v* m3 b7 h$ ^4 H5 ~
if( pLight )
' v- b+ p$ S, Q/ z; c
{
3 V' ?6 K2 w' {5 _0 N- F! M
// à??μ oˉè*
3 g) O1 h) b* R
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
- p/ [5 X! R2 v" a$ I
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
6 b" I8 V6 L4 |2 m& ?7 H8 u
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
* L, j4 {8 v. M( d/ M+ H/ P+ F( \
# ?# u/ q$ N+ A. {. u, ~
// oˉè* ??à?
, I- w$ ^5 o$ V. |9 I& ~( X
pLight->Specular.r = 1.0f;
, _: B+ U2 U: H$ P% n0 n8 j3 ^% u
pLight->Specular.g = 1.0f;
& Y/ ^/ O( h+ p4 T: E' j1 H$ w
pLight->Specular.b = 1.0f;
0 F y1 |! [' v4 z8 Q3 ]1 O
// àü?? oˉè*
, x9 o: c/ O, u$ q
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
; h6 z! r8 E1 e$ k/ x/ ^# f
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
0 g2 C% \: p- E8 `
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
( ~' ]1 q4 i6 c: S! a
5 `: w, M: G3 z* H) U
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* n% Q9 f6 g3 @2 d- O6 J% S
{
) c. G4 U) e5 l0 V, O, Q7 Y; \, Y4 X
pLight->Diffuse.r *= 0.6f;
6 W% G; j$ t$ {0 |
pLight->Diffuse.g *= 0.6f;
g! a$ C6 h% z8 ^% u$ w
pLight->Diffuse.b *= 0.6f;
9 [. K' i$ V `& e; m
pLight->Ambient.r *= 0.7f;
& V0 x/ b& k1 `+ I
pLight->Ambient.g *= 0.7f;
7 o4 Z' M3 r2 j# L9 q
pLight->Ambient.b *= 0.7f;
* Z- X: I/ `7 A$ i
}
9 J8 }# T T8 t7 {2 v6 N
7 U3 j1 V4 Q7 Z# c0 n0 D' }( b
#if __VER >= 15 // __BS_CHANGING_ENVIR
* A8 O8 |' @# i! X w$ ^
if( g_pPlayer )
; S6 Z, @5 \. A6 q, w
HookUpdateLight( pLight );
8 U+ B% s# v# F8 Z
#endif
: ^% Z9 u3 |$ ~! W. B
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* @; {! l" n- }( I2 D# Y9 K# v
5 Q8 y2 N6 o# A7 F. c
pLight->Diffuse.r += 0.1f;
+ f: o% t! k& P" I- u, h. \5 m' M
pLight->Diffuse.g += 0.1f;
+ Y9 U# B) P! ? X( J% U
pLight->Diffuse.b += 0.1f;
/ w8 @5 q' y F& z6 d
// oˉè* ??à?
$ w4 m9 @- W7 _, g
pLight->Specular.r = 2.0f;
% _) R }& |1 p# _ D+ V5 _
pLight->Specular.g = 2.0f;
# F2 a) [6 M5 [7 E
pLight->Specular.b = 2.0f;
/ {0 s9 ]0 B8 ]1 F+ C
// á?oˉ
& ?8 [& _8 c2 U4 M- T4 |9 L. N
pLight->Ambient.r *= 0.9f;
4 M& G% s2 ]; t! g+ N
pLight->Ambient.g *= 0.9f;
) e, I: g" ?4 X- z0 t
pLight->Ambient.b *= 0.9f;
4 h" X( d/ ~: T* r R) n# Z0 V* X
8 H9 g4 F2 d) k! @6 r2 k3 y
memcpy( &m_light, pLight, sizeof( m_light ) );
' L' U6 C# w/ x Q, i
# [" B3 }1 V! o3 z+ J; f
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
+ `! R/ a% }! \& p& F! v
pLight->Appear( m_pd3dDevice, TRUE );
4 r) O9 F$ |' L7 ~
' c6 h) Z$ e+ I) g/ H
DWORD dwR, dwG, dwB;
$ {! [$ h" Y, z: F9 d. {% M
dwR = (DWORD)( pLight->Ambient.r * 255 );
. n# ]; t1 L' U }* W% `/ Y( @
dwG = (DWORD)( pLight->Ambient.g * 255 );
. t. t) n/ R" r; c' x
dwB = (DWORD)( pLight->Ambient.b * 255 );
% s* D! @' k- D
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
9 S: J& h- M7 ?% Y9 W
}
+ V; x9 f9 W- s# }: i8 _
}
4 j) E* s1 b* p4 n2 T5 O
else
5 |" \* q) x5 S$ g, ~1 [% S5 v
{
) I8 g- k' V" X4 ?" V7 ^
if( pLight )
2 k' b# |# K3 Y/ n; Y
{
! ?# s; O+ `+ e9 n/ S" `3 }( a/ `
" h4 q: e( k7 x: n3 m4 N$ ~0 R
int nHour = 8, nMin = 0;
5 l- s/ p/ q+ E7 u$ h
#ifdef __CLIENT
- T5 ?" x6 f, L0 Z( M, }
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
; z2 ^4 |- \* B7 l" T8 f
nHour = g_GameTimer.m_nHour;
2 I, i$ R- ~# }& L5 d' u; C# R
nMin = g_GameTimer.m_nMin ;
* u4 O6 H$ r- l, t9 I f3 Y
#else
" X5 w6 F8 f0 L3 e. C
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
6 ^) q! ~5 \. m. d
if( m_nLightType == 1 )
- J. |% q( \3 O' A; F
nHour = m_nLightHour;
- N. Y5 p: V: j* w& S* ]/ X
#endif
. f3 o% ^& ?' j" m1 K7 z
nHour--;
% |3 [# ] r9 c7 t$ Z
if( nHour < 0 ) nHour = 0;
3 P- F( t$ o4 S0 u
if( nHour > 23 ) nHour = 23;
- J! a( ]$ E8 J9 T; a3 [
: L/ @; ~1 R1 g! A( f* _
//if( m_bFixedHour )
6 N# ]( x; ]9 F+ ^( D
// nHour = m_nFixedHour, nMin = 0;
$ l; t( u- c) p% Y5 D. k s
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
- w! o5 d, }9 X: K, U! f
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
# y+ s* H, @+ v# A0 @) ?
/ V& u% m4 ]# f( l
//m_lightColor = lightColorPrv;
# R1 ^! v5 [2 n# A
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
6 s& d0 _/ v1 J% Y
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
+ ^7 E1 s, ^0 I/ u- p8 R+ A8 e
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% I9 r' n& N8 G8 T
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
+ W2 \; w c0 d9 _3 P+ h4 }% N
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
+ }. r* V2 c& ~
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
9 Q' O! t1 c+ \+ ?0 r
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
. l3 M# s3 Z2 Z8 f- ]1 T
8 Y. d7 h0 s6 {" v
// à??μ oˉè*
- c% D u/ l& j _$ A6 u1 L
pLight->Diffuse.r = lightColorPrv.r1;
; u, c6 g+ [6 i$ e
pLight->Diffuse.g = lightColorPrv.g1;
; e$ N$ s# f6 B( y9 m
pLight->Diffuse.b = lightColorPrv.b1;
3 L/ G5 L6 H! e; g7 g
// oˉè* ??à?
; F z. E9 h# x& M0 w
pLight->Specular.r = 1.0f;
: b, f3 B5 F# h) A5 L% \
pLight->Specular.g = 1.0f;
2 l+ c5 ~) d* n F
pLight->Specular.b = 1.0f;
* G( L" _7 |( @9 z4 _8 O ]3 Z) u; B
// àü?? oˉè*
$ O; H" W/ B6 C' t/ h
pLight->Ambient.r = lightColorPrv.r2;
8 q* h3 r4 d' T6 {# g3 V
pLight->Ambient.g = lightColorPrv.g2;
( ~7 h' m0 q6 i% }/ P* n
pLight->Ambient.b = lightColorPrv.b2;
k* G: i, M! W( ]9 g
( j6 A2 O# B2 K7 C2 D) u6 N$ @
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ c6 n3 M5 f+ _9 L+ m
{
^8 E4 S2 F. X+ M3 I" l* r
pLight->Diffuse.r *= 0.6f;
a: t- \) l$ l# d
pLight->Diffuse.g *= 0.6f;
; |7 S4 J2 k7 E& [% }) [
pLight->Diffuse.b *= 0.6f;
, F4 R6 d! K- H: l& f" Q* `
pLight->Ambient.r *= 0.7f;
6 _/ o4 X0 K. R" n, d% U& }
pLight->Ambient.g *= 0.7f;
9 A4 W4 s" |6 e) a# W% G: q
pLight->Ambient.b *= 0.7f;
4 w K' ~. w) k: t
}
3 G) ]- ~( O% C- @7 x& }4 W8 x
# F6 I7 u' V; [/ {& Y
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 J7 g; u' i9 z8 C) k+ U1 N
if( g_pPlayer )
; M- p$ B2 `% p4 \/ Y$ `6 o: [+ t
HookUpdateLight( pLight );
; ^, _! V. D) R4 y5 z+ }
#endif
( J' @/ P& c& {7 [ T
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
( P) I( s' A) I: ^
; W" q0 Q8 B) ?
#ifdef __YENV
. K- ~4 U4 U! B) N9 V* P
pLight->Diffuse.r *= 1.1f;
]. X& T( y# C$ D7 C
pLight->Diffuse.g *= 1.1f;
; i# U. Q1 e7 I0 c4 H6 M* H
pLight->Diffuse.b *= 1.1f;
; j' `# X1 o3 _6 @5 x! @
// oˉè* ??à?
. |) O6 k1 H/ I) O# f$ C3 k% A4 k
pLight->Specular.r = 2.0f;
, q, {7 |' e3 _
pLight->Specular.g = 2.0f;
6 p+ ^9 B7 C, T- p1 L
pLight->Specular.b = 2.0f;
1 K; M9 B8 v+ ?
// á?oˉ
( B* v% U: Y0 _6 ?* i/ \5 e7 [$ {
pLight->Ambient.r *= 1.0f;
3 G$ [) f1 Q% E+ Y5 q
pLight->Ambient.g *= 1.0f;
9 ?7 a, E5 B* D0 |# B: P# Y
pLight->Ambient.b *= 1.0f;
- v' b1 z0 `: } _% V
#else //__YENV
$ r5 O( d, W5 X+ z1 y9 l! q
pLight->Diffuse.r *= 1.1f;
( K: I+ n8 b0 I c
pLight->Diffuse.g *= 1.1f;
" |& X4 L# m/ x1 X
pLight->Diffuse.b *= 1.1f;
2 M0 a& q7 ]! y5 |3 w
// oˉè* ??à?
4 A8 i Z/ s) q3 N# U8 \: F& P& W
pLight->Specular.r = 2.0f;
; a- r6 b; b5 r" y/ P9 p. Z
pLight->Specular.g = 2.0f;
6 h# l0 f" H; c, N6 ~- K2 b
pLight->Specular.b = 2.0f;
! q; q/ B4 A+ Z# C! }- }* @
// á?oˉ
) N/ b" B f" A+ F
pLight->Ambient.r *= 0.9f;
- o) h0 Z# c2 A6 V) b
pLight->Ambient.g *= 0.9f;
5 } l% j) @: [1 L
pLight->Ambient.b *= 0.9f;
3 e. d) Y/ Q0 v7 W$ V+ e
#endif //__YENV
/ S& i0 H( L- j" v/ J1 B
. z- d* p0 e$ W- t4 _
memcpy( &m_light, pLight, sizeof( m_light ) );
- J" U% W2 x8 d2 }) l8 A% b0 K1 j
; v8 F1 O2 l$ b' L
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
4 w/ {3 [, a" ^- R
D3DXMATRIX matTemp;
5 y6 {. u- i: H# N2 E, N. M" N4 D# y, R
static const float CONS_VAL = 3.1415926f / 180.f;
2 C8 d+ k2 `! u
. d4 V1 h0 v+ z8 t S8 r5 s+ u
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
! X9 f/ t* ~' y" E) z9 K
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
m7 p) R. E: D; ]& Z6 Z0 U. r
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
. x, c; L! \) R% F
pLight->Appear( m_pd3dDevice, TRUE );
. [% Y$ o6 O$ W, c7 k% y
5 [9 I, \. C* C
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 V$ e4 L' z1 I' N; a0 G& X/ W8 ` r) f
// D3DXVec3Normalize(&(vecSun),&(vecSun));
* b. p- U( M/ u0 p
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
6 i0 o: D6 F9 a
% D/ b) C% }9 |# ]% P3 g3 k2 E* t
DWORD dwR, dwG, dwB;
6 ]$ r; {% _' l
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ l$ t6 B: i! Q8 w3 ~& U
dwG = (DWORD)( pLight->Ambient.g * 255 );
' [6 q5 U7 i$ L# ^* g
dwB = (DWORD)( pLight->Ambient.b * 255 );
1 Q$ K* b1 `8 Q/ H' P* b$ ` [* Q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 i z/ [! _4 @' K- i8 ~9 X" N% j5 }
}
) T7 m, e& C8 ]- M2 Z: S1 }
}
! I7 Q$ T8 e2 R2 }' X( Y
3 Q [. M' P1 h" {+ K
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
L# H* Y5 A, Z( G) V9 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) );
6 r- F3 c. \/ e7 j
::SetLight( bLight );
* S: I r% G2 ^1 t5 E
W( j$ t* ]# M% V2 _6 Y
// ±ao? ?D?í???ó á¤à?
3 h! o& h! j8 G+ t6 z/ F
m_pd3dDevice->SetMaterial( &m_baseMaterial );
% M; @. j% N4 P+ C
3 L* u& u7 N2 {& v! v
#endif // not WORLDSERVER
; R% I/ r U: J# j3 K; B" ^
}
3 S/ D" U9 ?+ `. r% `/ n
并更换
2 C8 K. w& }! ?" w6 Q/ Y" J# A2 w
Code:
4 \; e) Y6 ?4 T: L& P! [
__FLYFF_INITPAGE_EXT
" b) p$ J3 s/ {: C+ T0 |+ ^: u
定义
4 V& u1 t8 k! }6 Q
. D- o; N4 y. t' d; `4 j: X! p
' a1 g7 L7 j Y
8 J: L& W6 t2 p `) e' j
- a5 N6 M" T' H& B6 A0 R
现在终于删除我的狗屁加速...
( G: S! A1 e" K& N( M5 k, j2 o
, C% ?2 }) Y5 r6 t* h" M) l
2 [! ~! o g& M
, {3 L; R0 N0 z# A' R( B1 X
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2