飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
/ k8 {0 ] U/ U3 O7 z, y6 |4 h3 V
尾翼:
; U+ |- F8 a1 _9 W6 b
0 K* [& R* d9 Z- }' @- m2 B
代码:
0 r" D0 m9 g6 |
CWndAutoFood::CWndAutoFood()
, Q, E4 V( Q5 T
{
* `5 u3 @8 u- b* F/ |
m_pItemElem = NULL;
2 f& {/ B. y( ~0 L! X P! o
m_pTexture = NULL;
4 `1 K& `) G: b" e; ?! U1 H$ s+ u
bStart = FALSE;
3 C1 P) z; p0 ~; S+ e: e" h
}
# J5 Z; O! q$ j ^) B% P8 c
, C* f0 u$ z0 {) N9 W: M$ A# }5 D
CWndAutoFood::~CWndAutoFood()
! p5 I& ~5 A+ V3 Z! ?4 `
{
3 y" z! g* W9 q. m0 _5 D2 |
AfxMessageBox( "AutoFood ist gestorben
" );
# r1 k) b) }9 m2 T; A3 W1 n$ D
}
. y7 q' E4 e ~# {% J
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
7 K( y' R/ |- K; L; q. V$ B
{
4 Z7 c) [+ I3 y8 F3 [% a( ?
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
. ?/ u/ z+ O3 h
}
V3 i, o! r$ h- ?. e5 a, m# @
% O. t" c3 R7 f! Z; {, Y
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
7 w+ H( U0 f1 O; L
{
: _0 L! ?0 l+ ]# s! q$ i
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
7 M1 v* Y5 H7 h: u
CRect rect = pWndCtrl->rect;
$ ?! g7 U& }& \6 h$ {
if( rect && rect.PtInRect( point ) )
9 @1 e0 I2 p3 }) _ A
{
8 n$ Q W, T9 w1 i$ |) z! Z) C
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
( H4 y9 P+ g b- b% W w
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
) `0 Z( }. _' D7 H5 g
{
: l- I+ z! e* {$ p1 Q0 {) h
if( m_pItemElem )
0 G2 {. C4 n: L d
{
+ X. \* n! q! o* ?) m1 A
m_pItemElem = NULL;
/ p* c3 Z- Q: R+ m
}
8 k8 O( ^: S' ~( J
m_pItemElem = pItemElem;
) T, g" w R' O" u% [
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
) W9 r* e) K/ W2 t
}else{
- E) u1 d1 ^8 x% {1 p$ Q
SetForbid( TRUE );
/ @( [/ _0 q: f# q7 Y% R- ~
}
8 X" Z8 `+ h- [
}else{
6 F8 d0 O+ J; @5 @4 J9 c. U
SetForbid( TRUE );
5 J+ U) c6 N6 ^
}
4 ~7 x1 g6 r5 x, ?9 G/ K0 D4 X
return TRUE;
# t0 e- d; A3 T7 n& R
}
" o" Z$ p$ ?6 t
7 h! M: l& y5 ^' e% {2 I( B" I
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
# w% N' L5 r& Y; D
{
( t3 K* [' s3 u0 Q
switch( nID )
+ j8 l4 \. G0 k; i; t! {
{
$ P5 m. o- K# q5 ~8 Y7 g. o" Y
case WIDC_BUTTON3:
9 C2 i" b2 f" L! r. ~1 x
{
6 M/ `! H$ s9 B
bStart = TRUE;
# ^2 L% v6 p: y, @# R
break;
7 Z4 d. y" Y- }3 v. H
}
; m7 J: [: s5 A# m. @1 g* [
case WIDC_BUTTON4:
3 e$ P# k7 `: C- ~ y
{
8 Q, O+ H' P4 H& e' Y
bStart = FALSE;
0 t: Z6 T; M8 C: _
break;
$ n2 \8 g$ s u7 v, f' L8 W9 Z
}
1 V7 N. ?) b. O/ ?4 ?& ]
}
# F& E) j: b7 v. |: ]! E& ^" f
return CWndNeuz::OnChildNotify( message, nID, pLResult );
5 N1 Q1 _ o* W1 ^
}
- r2 B% c" u' l3 b
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
; i% ^: t% c* s4 }
{
8 g$ b; l) ^* r! q1 _. W, H
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
! ?. @7 @4 ^4 p# b5 C
if( bStart || !m_pItemElem )
- T3 p" Y$ |! e* j9 @
{
5 {4 `' R+ D; F/ ? i" @
pBtn->EnableWindow( FALSE );
' n; h8 w. u0 o0 \/ k( n
}else
) J/ h0 j3 W* z$ Z
pBtn->EnableWindow( TRUE );
6 p3 @8 s* v3 `* n1 R+ X; ]; a
if( m_pTexture )
0 U, c; s d0 P8 `1 K- }$ s5 r
{
7 I) u! E1 D/ y0 S+ f/ e
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- f0 s) F$ O" K* h6 ~6 `+ l
if( wndCtrl && wndCtrl->rect )
9 K1 L& t2 ^, F5 E# a) p
{
, A# [$ o, d( g9 a
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
, O7 h4 E5 r; r; G, [
}
! Y- I* [/ u0 O5 X/ ]* F
}
8 O5 r6 Z* J5 A' x
}
. A3 O+ u, J; t8 f
0 Y, K: W, ~5 c
BOOL CWndAutoFood:
rocess()
! Y' O+ Q1 M) \% C* ]! w/ `- J
{
" R V7 h7 C7 y, p) B& H8 Y D
if( bStart )
/ h9 n, w+ R8 f8 e
{
- o$ S4 U7 H4 |/ ?5 Y" X, {2 a* O
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
, b9 z3 X, q6 K. V% J* y
{
7 T1 a' N) N( E" }/ [8 n2 }
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: W$ C: F: [9 L1 s
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
6 r2 z% g9 e5 U! X
}else{
. f! u; R) N# Q) {) `5 {
bStart = FALSE;
' Q" R' @/ g" z& v
m_pItemElem = NULL;
; @ N ^$ c1 D7 p$ d L% B
}
$ N$ Y0 l; b; D
}
' y& R4 N4 W' ~( I+ e8 R4 s9 C. z
return TRUE;
: I5 z9 j/ b9 f
}
' m. H( L9 `3 H3 }
: W2 M4 u: A4 a
登录视频废话:
0 K/ B+ m5 U7 O4 a* G
尾翼:
2 \8 D* G8 [5 e6 u1 [
; X0 |- e4 ?* o4 w+ X) c9 b! j
代码:
) n( Y' C" B" F2 ~# D! S, K# O7 X
# F- b6 G" L) P) W% Y
void CWorld::SetLight( BOOL bLight )
7 j, T, ^3 D6 g/ A! Y- y
durch
, C ]& m8 G' j* I3 { Z
Code:
7 Q J) D) h3 S2 x+ h+ H
void CWorld::SetLight( BOOL bLight )
# o- F, j$ z2 O
{
+ a! K/ K! I7 @1 U$ [
//ACE("SetLight %d \n", bLight);
8 _' T. M$ X7 m/ r
( n( H4 D/ Q& l- k4 ?0 B5 u
#ifndef __WORLDSERVER
; Q9 O; _- I0 `4 J- \6 j
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
1 _, \4 ]- p+ k3 \# e8 s, l: R0 P
CLight* pLight = NULL;
B' B1 v+ o* I' F
) @& q2 Z G" Q$ w+ W/ z( [* v
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
; l8 S4 d5 I2 V2 e# z$ S, W/ B
: L$ u, }. W6 C; h- O8 d J: W" r4 }3 A6 L
pLight = GetLight( "direction" );
; }! s7 G7 m/ q# r1 X) ?* i
. R! D" ^6 N0 ^" T. w; E2 c7 Q7 K, @
#if __VER >= 15 // __BS_CHANGING_ENVIR
% }7 X6 G9 x) c6 k: ?
if( g_pPlayer ){
, \% ~9 u) \ O+ c+ X- L" p
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
; W. E* d) K* Q
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
/ c4 I1 n3 M3 D) m6 D! N
{
. e) r5 Z- Q% V3 D- ~; F
if( pLight )
) j; M N. `6 n
{
9 f# Y1 o9 \! O- g; k
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
; E! J+ i7 N* \
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
6 U# @% V2 @$ _' I: a6 U3 G
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
0 e5 e y* x! Q: T) |
4 t* m" o% T3 }9 k
pLight->Specular.r = 2.0f;
5 Z: @! Z4 n: {9 o8 m+ G! N2 x6 e
pLight->Specular.g = 2.0f;
# m- @( W L7 i; D
pLight->Specular.b = 2.0f;
, g5 |5 _+ T3 y4 a' m
5 j& [ Q$ N6 [, K
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
& g6 O3 v/ Z" f' L9 _
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
" Y+ E! [8 q. ^- a7 r* n# M
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
+ p2 p) Z8 f; n9 A8 F- K' s
8 B8 Y: w R+ Q g/ M9 G8 Y
HookUpdateLight( pLight );
# X: S5 \1 H4 `& ~+ h2 Q
. S( S) n; @' f* F
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
- Y( e. h* |7 j# `! k& h
3 g3 ?- B9 |; K, w
pLight->Diffuse.r *= 1.2f;
/ e- @9 Z/ l! P: a
pLight->Diffuse.g *= 1.2f;
' x0 k ]5 b% O$ u/ g0 S# T
pLight->Diffuse.b *= 1.2f;
3 J3 y# K4 Y/ R# T" ~, a- R2 q
( d( F' D0 t8 m
pLight->Ambient.r *= 0.8f;
T! L# w0 ^% X( E* `# P7 y2 ^
pLight->Ambient.g *= 0.8f;
) g$ a+ E+ D. Z( b6 E
pLight->Ambient.b *= 0.8f;
: x' }8 w4 ^" f! u& }5 f
) o( [ u1 y/ T9 y9 t H5 ^
memcpy( &m_light, pLight, sizeof( m_light ) );
' w. b6 Q/ Q+ A! p- G9 A- T6 z
/ f; o& T0 c+ |& K, B; o7 Q
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ h0 o' x9 U7 [
D3DXVec3Normalize(&(vecSun),&(vecSun));
6 Y9 o" Y: h* g. h) o$ g
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) O& j6 {( F1 C9 p
pLight->Appear( m_pd3dDevice, TRUE );
. v" j5 e1 U1 x3 i
) D/ t3 o& z* T" ^" l
DWORD dwR, dwG, dwB;
) |# J& L' @6 b! N4 H/ O% F5 q+ E
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 p) s* q: f$ s# E8 P- J
dwG = (DWORD)( pLight->Ambient.g * 255 );
5 Q; a ?4 ^! V) a2 S* A4 H
dwB = (DWORD)( pLight->Ambient.b * 255 );
* s7 k5 p2 X5 h) f. f9 I( F- n
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ i/ z& o' p5 _7 v
}
?2 `$ z, C- |$ l6 i; p# E) T
}
% |5 V2 C0 {" c0 ]# y8 \5 s
}
/ j3 X0 T* ?0 ^8 R% f% J( s2 z- x( p" c
else
T* {3 d3 b% D, K: B$ X( {& t
#endif
3 ?% i" c8 j% ]8 G
: n" D7 s. k$ ^, }6 W' S
if( m_bIsIndoor )
- l" ?. a' n4 g( c2 N9 g9 Q) Q
{
" w/ W8 u' j& M
if( pLight )
0 z+ z* W! D$ n7 t
{
& H+ F% A$ U2 P# |# m
// à??μ oˉè*
) ^% y) }& k- ]7 w5 c* F8 ]
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
1 |* P7 O6 J2 n! ]
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
+ {/ J) i; E p: E/ I b* w! U9 e- y6 ~
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
- Z! J3 |2 |6 G- U
5 |; ?% D% M$ X/ V3 l$ U
// oˉè* ??à?
6 T# X- c1 O, d/ G" v$ F) b" k
pLight->Specular.r = 1.0f;
( N8 U! i2 X: W$ M5 Q
pLight->Specular.g = 1.0f;
8 u, V" m4 I, Z" v- d
pLight->Specular.b = 1.0f;
3 z' R% H) f- x+ a; {
// àü?? oˉè*
) Z# R& ^, c1 C; \+ s& W1 S# m
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
+ K9 V0 M0 C( E1 U* L8 _$ t# G+ Q
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
# D5 p" W5 X x G' V# C8 |" e
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
1 E. k7 T+ y( p z& B; }
4 r+ x* Z3 J. M& j2 _& G8 ]5 U2 h
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 I9 S ~9 m9 b3 D
{
' r- a4 K q2 M- [( W4 ^( o' i. m
pLight->Diffuse.r *= 0.6f;
" M+ e+ }) `: f4 S% s, M
pLight->Diffuse.g *= 0.6f;
- H* N* V4 z( N' M/ n* C6 J. B
pLight->Diffuse.b *= 0.6f;
& X# B8 Y$ o& U- U% z
pLight->Ambient.r *= 0.7f;
6 i' i! [6 m: ~
pLight->Ambient.g *= 0.7f;
) r# I+ y, k* |" r
pLight->Ambient.b *= 0.7f;
* n1 Y2 ^! j! c$ w# O7 X
}
C3 c% w/ D8 l, a
) g% s! P5 \: E7 x
#if __VER >= 15 // __BS_CHANGING_ENVIR
! h0 |3 s, f* l, G+ B: J. ~7 t! q
if( g_pPlayer )
% \1 J1 B# e+ s. @% {* e X
HookUpdateLight( pLight );
' w2 T# ~$ E$ s
#endif
' u0 E# e+ a! N9 A! K
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: t$ @3 I ~" u! C: U6 A3 Z; ?+ k
- ~) T Y) l* f' j H
pLight->Diffuse.r += 0.1f;
: Y9 x3 ~' G8 i) y% V
pLight->Diffuse.g += 0.1f;
0 @3 |1 Y. K2 h: B
pLight->Diffuse.b += 0.1f;
( z! p" S$ t( |+ r( l; w
// oˉè* ??à?
8 h6 L# b3 Z2 H2 f8 t5 w
pLight->Specular.r = 2.0f;
; U0 V5 }# @' G; L- W
pLight->Specular.g = 2.0f;
. e- {$ k; |% Y7 V' S1 J) Q
pLight->Specular.b = 2.0f;
2 w d5 k7 s8 H4 J
// á?oˉ
. Z" ?( I% b' Q" ]) O* I
pLight->Ambient.r *= 0.9f;
3 W7 _: e* R( n+ z4 v- h& k0 s
pLight->Ambient.g *= 0.9f;
$ z' ^! }+ T- k5 t& P' t3 ^
pLight->Ambient.b *= 0.9f;
$ t% h0 h) a2 ]5 U* S/ I0 K3 i
# W$ d L# y# l1 \7 w$ E2 ]
memcpy( &m_light, pLight, sizeof( m_light ) );
' }# s: l/ w! @; I6 a9 G
B/ y& {0 j7 A# ?2 i, ?& ~
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
# Y x/ r1 l% ^" ]7 v! G
pLight->Appear( m_pd3dDevice, TRUE );
2 T9 g) v+ E4 w6 o0 I
( y Q _5 z! l
DWORD dwR, dwG, dwB;
/ ~+ c4 V+ ^1 }3 F7 `
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 Y% h" I7 v# p9 Y6 H; U
dwG = (DWORD)( pLight->Ambient.g * 255 );
# o1 ]0 }5 f9 z2 A+ r: z
dwB = (DWORD)( pLight->Ambient.b * 255 );
5 d ?2 `0 O7 `5 q5 |
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 S: |1 g* P& \& O
}
0 C1 x$ p* n3 F3 j& k) b$ ^
}
5 m- Y, x( i) t9 F6 `) G% G. x
else
# G A1 Q1 W, K* l. d
{
$ O* X$ S* }8 p2 J2 q/ [8 l' P8 L7 t
if( pLight )
4 s* D% k( ]% x/ E
{
$ _- |# f. d8 l/ i# {+ }" {$ c6 T
- [) A0 F3 K2 R. J# Q i
int nHour = 8, nMin = 0;
2 `6 C+ z5 o1 [4 Z- X6 K5 M
#ifdef __CLIENT
* k4 D. @9 b/ Z7 B
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
$ n1 F4 {9 f: T) q* O
nHour = g_GameTimer.m_nHour;
i8 V5 {5 }! _3 j% h$ }0 p6 K
nMin = g_GameTimer.m_nMin ;
% \8 b5 M4 W3 y5 x2 _& g( u9 g
#else
1 @4 S6 _5 H8 I' P- l+ u7 {# L3 v0 ~4 Y
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
B9 k P9 F; d" X, ^2 o' S
if( m_nLightType == 1 )
9 w3 _, V" ~' X( `
nHour = m_nLightHour;
5 l7 a- g% b/ n# ~
#endif
, E$ a: d# t( O7 t1 n
nHour--;
+ ^. b% I/ [; p/ X% O
if( nHour < 0 ) nHour = 0;
k7 y. x/ t+ R1 Y. v9 K
if( nHour > 23 ) nHour = 23;
" x; w, V3 q' q8 q
+ [. m2 k; ]/ y( K1 K
//if( m_bFixedHour )
: R6 {* U2 d, R- V2 ~
// nHour = m_nFixedHour, nMin = 0;
5 F/ {% Y q3 V* }7 z
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
& Y* P t4 f- n' V
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
, V* p0 v, a- ]% h: U2 S
+ q. @7 {4 P1 p5 b* U
//m_lightColor = lightColorPrv;
+ U2 M- C. U& i( z6 Z
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
4 W) m3 k) u$ t. Z1 s2 ]# q
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
) {, R5 r2 @" J6 q! ^4 D2 ?0 L8 _
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
' ]2 h8 E/ A% c, v
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
4 Q, f2 Y3 K2 I4 V
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
" I* M2 ]( ]' P
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
4 n# I _4 O9 J) h+ a9 Q" v. W1 {* j" t
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
4 J% R! K- O% ^5 T/ F+ [
$ ?8 g/ ?* o. p: r7 X. y' n
// à??μ oˉè*
. {4 w8 F% b) P3 U8 `- B7 q; j+ P
pLight->Diffuse.r = lightColorPrv.r1;
! P# ~( Y, ~. j/ |+ t* S& H* [2 a
pLight->Diffuse.g = lightColorPrv.g1;
( j7 i, D4 m0 ?& I
pLight->Diffuse.b = lightColorPrv.b1;
7 H0 O, i$ J6 l4 u+ O* j& |
// oˉè* ??à?
1 ^# E1 K6 d v. V1 i" }# B: z
pLight->Specular.r = 1.0f;
5 @6 M) @5 t$ w1 e9 w3 {& h0 G2 u
pLight->Specular.g = 1.0f;
' k# A, J" h* A# n* o, s1 [
pLight->Specular.b = 1.0f;
1 \& ^$ A/ M( z9 T7 s9 v! Z* Z
// àü?? oˉè*
+ V' J" p9 k" I, m
pLight->Ambient.r = lightColorPrv.r2;
' I# O; h% J( g( }! v4 a
pLight->Ambient.g = lightColorPrv.g2;
6 t1 y6 K) |6 J( L
pLight->Ambient.b = lightColorPrv.b2;
" \5 F$ K- u, T% e+ e! y
8 H% e# @; B5 O
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* f. ?/ L8 i5 ~6 V. k D# A. g
{
; F8 ~) W) ?/ H
pLight->Diffuse.r *= 0.6f;
7 `6 Y; Y, j# q v+ c2 G! |
pLight->Diffuse.g *= 0.6f;
5 a8 O9 Y6 N+ T+ h& `
pLight->Diffuse.b *= 0.6f;
& y l1 a5 C5 i* m* [% q
pLight->Ambient.r *= 0.7f;
' f9 y6 K' h- g2 e9 \3 X& N- }
pLight->Ambient.g *= 0.7f;
; n& F) J$ D" a( t" p& T7 a$ e
pLight->Ambient.b *= 0.7f;
% p' v, g9 F4 ^ } A/ m
}
# T+ u1 n5 [5 `5 T0 \
* |+ Z' q: B9 O+ s
#if __VER >= 15 // __BS_CHANGING_ENVIR
, P1 \" Z1 q3 k9 m
if( g_pPlayer )
& o; w0 K; w- u0 c: [2 N5 h5 s3 @
HookUpdateLight( pLight );
. F9 C/ |% k2 |& d
#endif
& n7 {( e4 O M8 W# G' v
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 z" o& ^& o+ _- L
! A; k4 a3 C9 W' z, M; u' @
#ifdef __YENV
6 r0 Q" B% F4 o
pLight->Diffuse.r *= 1.1f;
+ E" k4 e( y# U- k8 U
pLight->Diffuse.g *= 1.1f;
7 _! ]1 l- f+ w
pLight->Diffuse.b *= 1.1f;
7 L# R. ^' ~* J# }( b
// oˉè* ??à?
: i/ S$ W7 j7 }" m) B E7 e
pLight->Specular.r = 2.0f;
5 @! G: b8 \4 Z( ~/ E- M. X
pLight->Specular.g = 2.0f;
: u% Y" l: N8 Y( `/ G6 u6 J+ @8 ^
pLight->Specular.b = 2.0f;
$ m; `/ k. H+ _5 _' t
// á?oˉ
. g* }6 T/ X3 Z0 C/ |& u3 d
pLight->Ambient.r *= 1.0f;
' D+ s, w" P0 Z, j4 @
pLight->Ambient.g *= 1.0f;
6 e3 p: x: F8 o3 I0 _; w+ p7 D/ q
pLight->Ambient.b *= 1.0f;
" L2 g6 D3 D* G2 ~* A
#else //__YENV
! b; \ S: X' E- \
pLight->Diffuse.r *= 1.1f;
& k; T& K& ~- \0 o$ v, c; r
pLight->Diffuse.g *= 1.1f;
. V! A. ? J+ U! h4 i
pLight->Diffuse.b *= 1.1f;
, m) c! n! X! q" d4 V2 D" F0 S" B
// oˉè* ??à?
* X8 b; s2 Y, C5 c1 |
pLight->Specular.r = 2.0f;
; K. g& I0 m$ ~# z: N% u
pLight->Specular.g = 2.0f;
R( d" o" R" P9 x Y
pLight->Specular.b = 2.0f;
1 P- [1 S* f9 ?. i7 T% m
// á?oˉ
; F6 k' R3 f- [8 D( X0 y& p5 x% _% o
pLight->Ambient.r *= 0.9f;
! j1 i1 v' X. F- Y
pLight->Ambient.g *= 0.9f;
9 o( `3 t4 w! k l
pLight->Ambient.b *= 0.9f;
3 i# n1 ^2 o9 A5 I6 v% x
#endif //__YENV
( a; p& S. H E4 t- c
/ u5 y- j. n8 E/ N. M- p7 p% d* ^
memcpy( &m_light, pLight, sizeof( m_light ) );
; e1 z7 _! e% i$ l% h0 q- D
6 ~8 l. z7 { t' v
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
: C( b9 L: g' x6 X n/ W& a
D3DXMATRIX matTemp;
) i% o: R' G# I& L$ D
static const float CONS_VAL = 3.1415926f / 180.f;
1 f, u v1 c# @! T
9 n% ^8 @! i: a( x
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# P& E8 ^" n, W* Y) `- h# K; i5 L
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
8 m$ x4 T9 F2 b. H- h2 c$ `( A
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
! }/ _% S! m. o/ A8 v
pLight->Appear( m_pd3dDevice, TRUE );
* y, ?" P; S( W: t) [# j0 R
- g: Z8 J4 O6 Q2 H+ `
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
. E# f" A1 D2 O
// D3DXVec3Normalize(&(vecSun),&(vecSun));
! e# s8 X2 q7 S% @: T
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: g+ c5 T% A A/ x
6 g* M! _6 G7 H
DWORD dwR, dwG, dwB;
5 Y, v5 {" ?2 @7 r; K3 J
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 R" O' i% o" T. e5 x% F
dwG = (DWORD)( pLight->Ambient.g * 255 );
( ]& ]6 W* f8 v/ m8 }
dwB = (DWORD)( pLight->Ambient.b * 255 );
% t' l8 N& {5 v9 c( |; C( `
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 G: K# d( ~; Z, x; z# {# q4 E
}
9 y7 _; R, ^& Z
}
- T1 a; l& o( e8 i$ J
5 w" j& {2 h# d: p
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
; M- {8 r) P/ L1 ~6 B9 l' @
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) );
5 a; c# R: v! A
::SetLight( bLight );
8 F( h) B8 F, D% h4 l4 p" k
: d" d0 x9 `% q4 {% Z! z& H
// ±ao? ?D?í???ó á¤à?
% J: P1 v' ]; ~5 D. j
m_pd3dDevice->SetMaterial( &m_baseMaterial );
8 c9 E$ l7 T' R9 A+ J- I2 X5 H
2 J M) \2 ^: Q. l7 ^
#endif // not WORLDSERVER
, ?1 d5 H1 \! H- }$ U: m
}
7 ~0 w7 \ Y3 D: ^/ R; n1 M0 Y
并更换
; X: T8 M6 M& w1 C" u
Code:
, B1 q3 B& V% j# S+ S9 Y
__FLYFF_INITPAGE_EXT
* ^0 }, P7 d; `/ H
定义
" S9 B- e* F" X* r. i
: z: P" a6 o; ]; M- L
7 t6 a4 q, E3 s6 |. V5 _
/ z+ D$ N& ~: `$ [0 _
. }+ l& O# @+ y6 P: w
现在终于删除我的狗屁加速...
! h1 `! t' t& \9 H6 Z
3 {- H6 H: N+ G! y9 h* Z4 X
# L; D* ?4 q9 Y) _ p3 Z$ f8 e. a
, a2 w* `6 P& ~, Q) {( \' ?+ g" e
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2