飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
/ r2 ~% ^4 y3 b4 N2 L* \9 H9 E
尾翼:
; l; Q( \# s3 D9 q
) i: ]& S* z. S/ u
代码:
' W$ [: X$ [' c+ m( b: e
CWndAutoFood::CWndAutoFood()
2 d h: F7 u4 G
{
8 b& c. K- {, y/ i5 g# C& p9 S
m_pItemElem = NULL;
( s) i2 A! x) n# u+ f
m_pTexture = NULL;
2 \% c% X4 N' g X( ?( L/ o
bStart = FALSE;
1 h, g. H" ?. I: d; `! ~6 B
}
, g/ r. h S+ r1 p+ w$ ?$ W
' w9 K4 f6 ~1 ~( ^0 r$ B3 a
CWndAutoFood::~CWndAutoFood()
) B0 L N) l4 T7 C* F5 R
{
0 h: G7 f, L; Z& k6 y9 ?; d4 B) O
AfxMessageBox( "AutoFood ist gestorben
" );
8 q" F; `, u, ^
}
4 J6 b# b; @1 U, j1 A* N
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
8 v4 D% I6 ^. r+ H1 N( k
{
$ [- k0 E* \& L; Q
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
1 c, l3 N/ a5 `7 N" V/ g
}
9 p9 `) X' n4 R- b1 h6 K5 u' F
& q) `# P/ F6 Y/ w8 }
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
4 \5 g# o* o" t/ q
{
' ~" c) |* d; f$ _5 m
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& {: B+ f/ G0 Y3 t; z
CRect rect = pWndCtrl->rect;
$ J& r. G. m$ n+ p C+ p+ x
if( rect && rect.PtInRect( point ) )
, G8 I6 ] Q. j" B% ^- X/ e+ D
{
5 Z2 w0 t# Q/ `6 @
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
' y7 l- s9 _6 ^
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 w. I* W |( {. t8 j
{
$ ?" D { m; ]2 ?
if( m_pItemElem )
" o7 y0 d/ i( I9 p1 \
{
) s( p6 @8 v/ t- F% p
m_pItemElem = NULL;
+ F W, U3 S. V9 v3 a+ }
}
5 t, f. u( D4 f. a0 l
m_pItemElem = pItemElem;
5 e/ e' _9 q9 s- T5 Y) g! M
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
6 b, I) V1 D2 c, Y! M2 v
}else{
" c) C! ]6 m' }/ k
SetForbid( TRUE );
' p) R- U" q& e* H+ A
}
6 M5 C% q( q3 w- D2 h
}else{
8 S' h3 g C3 w5 U. F3 Z( E
SetForbid( TRUE );
# K5 b0 s+ c, l3 z/ ]7 t2 v. J; s% J
}
]. n& U$ [2 X+ Q, k! D
return TRUE;
2 F: l H: Z- y/ Q. @9 v
}
2 r, I; [1 h7 K/ ~: O$ f
1 o: T: `# L! K7 `1 E8 D* f/ i
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
! Y9 J& \* H W- q$ d# H) K$ m
{
6 h9 C6 k# o, T3 g' w( m2 P% o# }& V
switch( nID )
0 P+ j& h' J2 L
{
: t, N. k; k8 {; b, ^
case WIDC_BUTTON3:
% k" L& F3 o* h1 L' w
{
; A* K2 J) N/ h7 s4 j7 W# _
bStart = TRUE;
3 u4 g: i9 o7 o6 _7 i* V5 S1 m
break;
$ w" v5 d- Y2 o$ u4 W7 S& w" y
}
# a6 T# G) M$ z& K' s# h7 Q
case WIDC_BUTTON4:
( s0 O% L/ s" g& ]
{
o3 {% c# V% ?3 Q6 z: h
bStart = FALSE;
- p1 w* {5 \4 p& d' D
break;
7 Y0 W) T! E% M: E* N! }/ y
}
7 Y6 I) g, s$ z% p/ g# G: T
}
g1 }! i$ |3 x) P3 I" N4 M
return CWndNeuz::OnChildNotify( message, nID, pLResult );
$ Y5 Z6 \: Z6 u1 j+ [
}
# D& K/ u; ?1 S, c3 r
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
) f D% q9 a1 _5 }$ G
{
6 {. }/ n; y- Z8 I
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
2 L F* _; K; D
if( bStart || !m_pItemElem )
8 L t+ z, ]0 {' P& F
{
1 o: p* u* P+ g. q, Z. d" r2 j5 V
pBtn->EnableWindow( FALSE );
9 V& ~5 Q( |; ^$ Y' I% a
}else
2 R6 e4 ?6 y3 Q+ O3 }: n0 h
pBtn->EnableWindow( TRUE );
1 O9 w# A# K0 d' e r; R
if( m_pTexture )
Y1 ]& {( c+ Q! q
{
0 H+ c0 \+ i6 N( m
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* o$ p8 [$ m0 o% k8 a
if( wndCtrl && wndCtrl->rect )
8 T5 w9 r4 Y2 ?# b& _+ n
{
6 [( C6 p8 x( \" N7 t! I$ Z- @; t
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
* R Y& ~5 K/ y5 C% p7 n5 Q: N% h* u) y
}
+ e& x L* o, G% k& o5 |) a
}
& F' n! f. T; e8 D5 w
}
& }1 D! b! Q3 o# H+ I. T) i
; {* `( _6 Z$ b) _ G8 l- \
BOOL CWndAutoFood:
rocess()
' J _4 G3 h7 E9 @, }
{
: H' |+ I& @2 f3 F/ }; \2 ]
if( bStart )
* |6 q! e+ Y1 ]9 s+ y
{
9 U) h; `$ `6 o, L9 |5 V+ V
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
. ~0 J8 n4 p' \' F
{
$ f/ C, ~) i! H0 n e8 _+ _: L
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
; x1 j0 I/ ]+ I6 k
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
5 p9 W- r6 z! }
}else{
7 A$ I$ h0 m7 q$ u0 M
bStart = FALSE;
) M8 S! l% \( B q* M, O) Y
m_pItemElem = NULL;
# l) g2 x4 t' T
}
; f w% d9 v) ^8 U3 s$ B
}
# }- a6 l. \5 V; `3 Z n: |: I
return TRUE;
9 Z7 n) i2 B( r
}
4 `: k. T7 F/ r9 o3 z4 Z. i+ W
$ z4 _- `0 J7 Z. ? K
登录视频废话:
3 Y t8 Y* k3 i
尾翼:
: K, b3 P/ ~1 I4 u$ E1 ?/ `0 j
# n4 L- S" N. N; Z1 F: S
代码:
/ ~0 U, W0 c$ G# E _8 F! f
3 d/ k, ~* y- ?: T( y; K
void CWorld::SetLight( BOOL bLight )
4 k) V# ?. e; q% {* Z/ U0 {( K# r9 D
durch
8 [$ k. w& h2 b N. z
Code:
6 u2 C% o% l( d4 M: ^, f. {
void CWorld::SetLight( BOOL bLight )
$ U8 f* W) |8 x: w* u
{
7 C! i- L: T( @0 J( O
//ACE("SetLight %d \n", bLight);
& ]/ Z+ m* z W3 x2 P2 J( F
1 K" V# J) B: e% v
#ifndef __WORLDSERVER
; I( \: G) ~$ R ~* _
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
& l9 W2 J b7 w7 G4 e
CLight* pLight = NULL;
" O6 p; N4 M' [' P" _1 @/ ]/ W: S- b
" ^/ ]5 S, D& O, ]3 k$ K: E
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
$ V9 ]7 a/ Z6 k( F$ k5 Q; R
# \) p$ A( r: s5 {1 z, e
pLight = GetLight( "direction" );
+ m/ t. }' ~) {) v
9 W/ n4 M# B7 U5 _
#if __VER >= 15 // __BS_CHANGING_ENVIR
# j( z3 A0 l; O& \
if( g_pPlayer ){
2 O$ e( O+ A Z" L# m" z
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
! i( c/ U6 N' Q" B, ^" F9 { F/ @
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
$ |- R+ ^4 w C: x0 Z. w" b
{
+ U; r: I/ A+ m4 u
if( pLight )
1 B0 R& Y8 h7 S% X% w: X4 r9 d
{
# `# I% S8 ]' K0 X J# C) C; i' {
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
" k; \0 [, K! ?& d
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
, e3 k0 y& E9 A/ j6 }2 @7 @
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
; x% B7 I/ | t! K+ D
2 b/ R$ T% R- i2 u0 C' H
pLight->Specular.r = 2.0f;
& _& T0 K& i) F1 O- _$ w# i
pLight->Specular.g = 2.0f;
8 f2 ^% ?1 ^- A& ^" p' f
pLight->Specular.b = 2.0f;
" F7 C8 M% ~1 c% ^" H g$ l
3 ]+ f% d" X6 T: h/ ~9 v
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
$ J' c8 k& P/ X* H
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
& ]7 p( ]" N: e' @7 h X+ \) b
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
9 d2 p9 v, x- `2 x' F3 w; r
; J+ r; }' `" R- _) ?% C
HookUpdateLight( pLight );
+ t7 w! d+ A/ Z+ I/ E Q3 `
( i( N& }' Y6 W q* L3 q
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% Q# P/ [5 e+ o; B
) k" r2 c9 Z! h, o- y% h( G1 J
pLight->Diffuse.r *= 1.2f;
C" N+ }( O- i* Y4 _
pLight->Diffuse.g *= 1.2f;
9 o1 H' D6 u8 r' z7 {1 } d" _4 h
pLight->Diffuse.b *= 1.2f;
' f' Q, D* H, S e7 g9 `+ [. B2 x
7 N" I n0 y, Q( M+ B3 a$ d
pLight->Ambient.r *= 0.8f;
x9 ?, P3 t; M: _) T
pLight->Ambient.g *= 0.8f;
7 ^9 }. {9 ?4 r& o0 p% f
pLight->Ambient.b *= 0.8f;
! ~) M# o/ V$ R4 w0 K
6 R9 N2 d) S- Q4 s& f
memcpy( &m_light, pLight, sizeof( m_light ) );
" \. P, g/ U5 M- c& K
4 P& g. @4 K9 k" Q8 ^9 N
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# \% @' A& F$ I5 g
D3DXVec3Normalize(&(vecSun),&(vecSun));
& ^. a1 l6 r' S+ _1 q
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ _0 Q0 E% }- U
pLight->Appear( m_pd3dDevice, TRUE );
# d* D6 i. s7 m' ]7 J7 s
/ g+ c1 t1 f- g# }1 O7 b
DWORD dwR, dwG, dwB;
3 J/ Q9 s" G/ _
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ p5 Q) I0 F, Z0 K1 }- l
dwG = (DWORD)( pLight->Ambient.g * 255 );
& u, h$ R0 P9 t" R7 u1 }$ i
dwB = (DWORD)( pLight->Ambient.b * 255 );
7 u# t1 ]8 M( K% z; R9 w3 ]( x! ^' b
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 ?7 \- S0 z1 B+ [( l( q/ Y
}
/ j! y4 p G$ W0 E1 y
}
1 f. R; S; W0 m$ E5 o
}
8 C' S9 [/ Y# M
else
: P$ m$ [4 r4 S5 i9 z
#endif
% C$ p! v- l- T$ D2 r
$ M; u7 C% H6 `7 U R7 h& C! y
if( m_bIsIndoor )
! E X& C) ]( L2 C
{
3 N* J3 ~1 }+ h) [) F
if( pLight )
* ]' ?7 M0 C1 `9 p! p0 z: c
{
- s7 D) A2 j, v$ h! X z' c; B
// à??μ oˉè*
- b' n% X3 f3 Y% ?4 \. }! q
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
/ v* V9 s1 f0 p7 c" @! I% g& h9 K
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
( V M& |, `* x; w; j+ s6 c/ i
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
1 t+ Y) Q' x0 m( f
3 [ |. ^0 E5 B5 t
// oˉè* ??à?
, L' O8 b1 @4 [8 U" a
pLight->Specular.r = 1.0f;
& o; z d+ k( E7 L9 Z
pLight->Specular.g = 1.0f;
3 L) a, l1 Y/ q4 s7 t) h
pLight->Specular.b = 1.0f;
5 ?/ e/ t* O# {3 H
// àü?? oˉè*
; t. u k5 x/ A0 @
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
# V1 }# n2 C3 ~3 e$ j
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
! l$ E$ y' s& p+ ]0 F$ {, [
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
1 [! f! v/ x6 t, {3 J
) t3 x4 N/ Q, y% `& x1 ]" t
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
1 j. I6 w& I3 V/ X6 T: s
{
/ W& s- m* U0 X
pLight->Diffuse.r *= 0.6f;
8 q2 {7 b- Y0 H
pLight->Diffuse.g *= 0.6f;
9 F, x) K9 @; B' z
pLight->Diffuse.b *= 0.6f;
6 Y: J+ B' {( X5 }$ ^( v
pLight->Ambient.r *= 0.7f;
3 I s, _, {* u# w) Q+ v- E" w$ ]1 g
pLight->Ambient.g *= 0.7f;
7 C% `$ j( j& D! E
pLight->Ambient.b *= 0.7f;
: @3 r; |" T3 c8 `& t- c" V
}
2 W% U5 V$ J, c' s: b
; v; D0 C7 j+ N* z
#if __VER >= 15 // __BS_CHANGING_ENVIR
. X! P! ]: _& y, ?
if( g_pPlayer )
" Y/ z% c0 ]0 o5 |
HookUpdateLight( pLight );
! q+ {$ x0 g, _* ~
#endif
- \ D; h2 ]" D$ v
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 s" |2 r# \) A: A8 Y
* H& c/ N* R' O$ A8 ]" Z
pLight->Diffuse.r += 0.1f;
$ Y* }1 [; R9 g7 E+ V: ~
pLight->Diffuse.g += 0.1f;
* L% M3 Y8 U, y9 {6 j
pLight->Diffuse.b += 0.1f;
+ k1 b" T3 U$ p8 O/ `+ t
// oˉè* ??à?
% r4 ~/ `; Q$ U3 i
pLight->Specular.r = 2.0f;
, ^# \% r0 Y, I; @. R! R" p
pLight->Specular.g = 2.0f;
& ]9 N1 w, U7 v8 m7 Q Y
pLight->Specular.b = 2.0f;
; E5 G1 y1 }# F
// á?oˉ
4 a% `/ r z4 q1 T
pLight->Ambient.r *= 0.9f;
1 c- ^( m5 d( C
pLight->Ambient.g *= 0.9f;
4 |1 w6 ?4 n4 y- c. e1 \3 O
pLight->Ambient.b *= 0.9f;
5 P- y1 e- D% e Z0 V9 m, O
$ e( \* |& {; `5 @
memcpy( &m_light, pLight, sizeof( m_light ) );
) v* }1 @% y, K* }
! X: f9 \$ m8 m# V! }$ b* G
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
# Y7 M4 p+ a) N' S
pLight->Appear( m_pd3dDevice, TRUE );
, s9 G3 e1 o$ Q( A& _" z5 E5 X# W
2 A9 _9 O. S7 i5 ]
DWORD dwR, dwG, dwB;
) n3 v" K1 u/ O, ~. C9 ^ i
dwR = (DWORD)( pLight->Ambient.r * 255 );
" |& K. f( ^2 c% f6 e5 I
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 z. @ t8 ]+ U, w
dwB = (DWORD)( pLight->Ambient.b * 255 );
# E5 ]. r0 j6 Y( O8 Q6 F
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" Z9 Z% B7 d3 M4 E+ D
}
! x. g9 i8 A4 S3 x/ } J* R! {- \
}
6 C( M7 z% t# e& i0 `) b8 P8 V
else
2 g) p+ g4 f7 U+ F6 f3 y/ R
{
( J! T6 P6 {; ?7 _+ A
if( pLight )
" M( s, t2 {, K$ [% n
{
. Q4 H$ p8 L% g' Z6 P. _0 b0 _' X
2 a& W; D* |, X$ s
int nHour = 8, nMin = 0;
0 o+ B6 U" O. v+ x
#ifdef __CLIENT
& o! K- \- u7 {7 Y# j
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
2 Q8 w6 W4 ^/ [" X& z6 H
nHour = g_GameTimer.m_nHour;
: Z" W& b- R& Z# F h
nMin = g_GameTimer.m_nMin ;
6 n, U/ F! Y7 ^6 k9 ^" ?
#else
6 \1 x9 }$ F3 d8 f1 X
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
/ H: J) L) \/ W% \' P
if( m_nLightType == 1 )
* g0 H; f/ W4 {5 g* R
nHour = m_nLightHour;
* S5 w3 L/ M+ N" ?# _7 l: @. }
#endif
; Y' w. Q9 K$ c# c7 k
nHour--;
4 S1 z& e9 k6 [9 b. Y' |$ X3 S* d) {! s% b
if( nHour < 0 ) nHour = 0;
" }% t$ Z( U0 S& E8 r h p
if( nHour > 23 ) nHour = 23;
* t3 `9 K5 E! y
7 Z9 W, x( O5 n& }+ c: f& J
//if( m_bFixedHour )
) t f- H6 ?4 _: @( Y( u: Z
// nHour = m_nFixedHour, nMin = 0;
* ]( D. A8 F2 z: {) X% C# h& ~
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
% p4 `) l* b% A- Y
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
+ _( Y# U5 M0 b$ e# f$ F1 T& N: B
. N: X7 c0 j J. B* \
//m_lightColor = lightColorPrv;
1 d+ C/ a! D+ a b2 Q: [
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
) n+ U3 B |: }3 ^% q
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
2 c) y6 V. w) Z2 J# w" C
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
' ?9 g0 u/ ?0 l E. p: U/ u3 E. o) [
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
" k& w8 E9 ^, d' L
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
^4 y& Q- ]# y2 V& @: l, @5 |6 e! G
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
: E2 |- l; p7 B1 N; m6 Z( j: p
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
( U( B0 H3 M( z8 |- G0 \5 V/ ]
8 k/ j& T% k- O9 `% D/ c1 [6 X6 v# I
// à??μ oˉè*
2 k7 U. M) d( G& y$ }" P$ H1 k' `; ~
pLight->Diffuse.r = lightColorPrv.r1;
* U4 p8 B) W- b8 z! \" G
pLight->Diffuse.g = lightColorPrv.g1;
. X2 X6 H% e* x3 @# i
pLight->Diffuse.b = lightColorPrv.b1;
& V3 U. @# ?; B5 [$ @/ G: a
// oˉè* ??à?
6 B3 Q/ N+ w; |+ |9 u' T( @
pLight->Specular.r = 1.0f;
6 }" @+ a" y m) o% R7 i7 m4 j. O
pLight->Specular.g = 1.0f;
" L3 T7 u% G2 }- X
pLight->Specular.b = 1.0f;
( v8 Z; B5 C8 D2 _' m8 \
// àü?? oˉè*
! l/ U5 c8 q/ T2 v/ s5 f! n
pLight->Ambient.r = lightColorPrv.r2;
, g9 R. n- Q2 G- k. Z
pLight->Ambient.g = lightColorPrv.g2;
& Z+ D6 f$ X8 d, A; m, l0 w/ I
pLight->Ambient.b = lightColorPrv.b2;
% M. Q' Q& N1 N8 X7 f. \" V, A: w
# y/ C, }, }2 N: v- w! ~
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
1 p! L) ?) }2 u0 Y) r: `& A' f
{
1 O! |) c, n6 C
pLight->Diffuse.r *= 0.6f;
/ s. T7 R. J% b/ m* g3 d3 q2 r
pLight->Diffuse.g *= 0.6f;
% w1 J9 F& N# f- {( H
pLight->Diffuse.b *= 0.6f;
5 \% u+ M( `! v+ J1 X* b" V/ v
pLight->Ambient.r *= 0.7f;
% [8 i( B9 g$ |) O( y. d' o" j
pLight->Ambient.g *= 0.7f;
+ P) o# d' X9 @: ~! a, [, q
pLight->Ambient.b *= 0.7f;
/ _! p ~! `3 \8 r0 Y, C; I( M
}
" U" V3 J" S5 [" Y% r- b, `
9 ~1 N0 N* p3 r
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 `# C: w( ]! \9 N- T, \0 l1 u
if( g_pPlayer )
* X4 T! Y: ~, ]$ j, T5 F
HookUpdateLight( pLight );
; d \) g5 i ], E8 b, C
#endif
; \# b# Z! T# e1 m1 w* X/ e
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: {5 L. r$ y7 Y
7 q$ a" y; y8 p' Q' ^1 k8 w; W
#ifdef __YENV
1 D7 s$ G6 S& x6 r0 l) u {" T
pLight->Diffuse.r *= 1.1f;
" d0 e) L% C' R% o( J/ {
pLight->Diffuse.g *= 1.1f;
/ D; C; Z; T4 \/ T1 \
pLight->Diffuse.b *= 1.1f;
l1 H- j8 C6 k
// oˉè* ??à?
$ X! v' @& l' s. j% q" O$ _
pLight->Specular.r = 2.0f;
" l5 W5 P9 V# _5 S* \
pLight->Specular.g = 2.0f;
$ W+ X5 t7 N# H
pLight->Specular.b = 2.0f;
) ]8 S M7 _3 a( t3 t3 h/ a6 v
// á?oˉ
0 A, a( a- e" F4 W- H9 x
pLight->Ambient.r *= 1.0f;
u* \4 M# G% S+ O9 |$ C- @8 a9 O
pLight->Ambient.g *= 1.0f;
; G, i; v2 o0 }6 N0 W- {% I
pLight->Ambient.b *= 1.0f;
# Q# l. U+ W7 n0 S
#else //__YENV
7 [# s( ?+ g- C* y* H! f6 r. Q
pLight->Diffuse.r *= 1.1f;
4 }! F8 s- y# i/ O
pLight->Diffuse.g *= 1.1f;
0 B* a) A) a" E8 q2 C; a
pLight->Diffuse.b *= 1.1f;
) H2 U) R8 U; M% t
// oˉè* ??à?
. m2 s6 C+ a Y. i% E4 ~
pLight->Specular.r = 2.0f;
1 D+ e# h* U9 H- Q4 o
pLight->Specular.g = 2.0f;
4 a" D( M6 S" A# Z$ n
pLight->Specular.b = 2.0f;
8 ]" d0 ~6 V, c' N+ G2 m
// á?oˉ
! s \5 a K4 N0 |. S
pLight->Ambient.r *= 0.9f;
6 j0 F0 y g' \% g
pLight->Ambient.g *= 0.9f;
% V+ r& K) K6 g( p0 @
pLight->Ambient.b *= 0.9f;
6 B% h. {* a$ r7 [3 u
#endif //__YENV
9 [7 _, l% l. Q6 Q/ V$ |7 @( O. Z) ]
/ F0 I" s2 U& h2 ^* Z
memcpy( &m_light, pLight, sizeof( m_light ) );
: B6 u) h0 k1 w4 I( g& m
" v) M0 K8 _! Q+ C9 a s
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
1 J; L: D8 Q. l# H& `& \+ Z, |
D3DXMATRIX matTemp;
- e \% R0 i- \3 f4 `* u7 F
static const float CONS_VAL = 3.1415926f / 180.f;
' R2 g$ G1 C; d! w. [' Z) J
3 k. `% \+ B- Y& k
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
$ O( k; q) l9 {5 D/ K1 z" N
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
( U) e. y+ j' m& T9 y
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
" W7 E. A6 |' O% {
pLight->Appear( m_pd3dDevice, TRUE );
5 U+ c5 D, `6 g3 O/ t
1 t" E1 m* s4 V5 w& o# W
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
8 q* Z1 `$ M1 R0 b
// D3DXVec3Normalize(&(vecSun),&(vecSun));
- \& Z% T" s5 {4 i! [( [, ~
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 I9 ?! l; v" P1 h/ J, d
( \5 y+ c) O' |2 {& K7 c8 z
DWORD dwR, dwG, dwB;
2 S- t' n( D1 ?) I& z# `' ~- L
dwR = (DWORD)( pLight->Ambient.r * 255 );
# D% o( j O1 V6 @+ [; c' p# O
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 f( {& ^8 \% [
dwB = (DWORD)( pLight->Ambient.b * 255 );
' @) e V) x. R8 j- y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# u. W1 t9 p o6 F
}
. k4 C; c8 p) D/ w
}
, S9 Q- o' f+ i4 q1 }+ d5 r' p
, Z/ z" g2 }' T2 Y B% e
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
: a+ J8 b" O3 k+ R
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) );
+ T" O) l/ o- L |" \3 ]( e
::SetLight( bLight );
0 N+ ?) Q; o9 Y3 S: r- r
( Q7 a) F( m/ Z; m. O- V& i
// ±ao? ?D?í???ó á¤à?
9 `8 S5 y! o# Z
m_pd3dDevice->SetMaterial( &m_baseMaterial );
/ x- W! W; E7 K: n( d
7 w9 P* K3 H, e1 {. ?; _1 R
#endif // not WORLDSERVER
! Z/ y% E0 O9 z) I( G! }3 j* P
}
! j/ X4 l. [! p: j" b
并更换
* l/ e3 t1 N, I; e3 t6 `
Code:
( [ V& `% w6 s* W6 P9 D Q
__FLYFF_INITPAGE_EXT
3 r3 h( o: U5 {2 I8 W
定义
+ `3 U, T8 D( b4 W7 y' E1 D( O
) ~+ ` ~/ V. x) _
& `! N( z% Q# V2 s; ^" ]2 ?4 G
" D E* y1 e4 L" o3 t' }
$ D9 P1 R$ u2 l: F
现在终于删除我的狗屁加速...
& a4 k% B, l: O G. y
; o% I" D" v- W/ \
3 p4 E# R( H/ L% `' E
- e7 k: h! o4 |) T% p3 I
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2