飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
. ~. l/ Q5 S& H. O9 t" U
尾翼:
, R1 h- Y% D1 @) H, w" q
7 R. x9 C+ \5 u( {7 z0 S- U
代码:
6 v; `5 ~, e5 U4 I( @
CWndAutoFood::CWndAutoFood()
- b$ D* \5 f% S) l. h2 M6 p
{
% C5 J+ W7 g6 D' ?. S3 D9 F2 I0 _
m_pItemElem = NULL;
+ [' S: d2 R: X0 B5 `) l
m_pTexture = NULL;
8 Q5 E& P. \6 \1 x; W; E; ^
bStart = FALSE;
9 s, b( J1 y3 D% A/ F# ?3 U# h
}
H8 J0 r0 H/ p$ G
' Z- P- F( o8 b8 C, v2 p" v6 N
CWndAutoFood::~CWndAutoFood()
# `; S; j7 `( F/ a! E/ T
{
0 D/ v. s4 _" h% |* _
AfxMessageBox( "AutoFood ist gestorben
" );
2 G% [+ k# S! A; K/ S% c
}
: \, P( y4 |9 x' q. W& W! _
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
: q! [ U2 v- N9 Y @' V
{
, Z6 g1 J4 q4 B0 D# u- |+ f
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
( y/ W% d6 u8 D1 l' V J& c b
}
' R# z( P( g8 T- d/ W
( u+ ?; }; ~2 J: g6 W9 s- z) x, A
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
, S4 M8 J, w b; B( d! v
{
- I" _/ F; n' F' O0 K
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- w9 z, P, g/ h
CRect rect = pWndCtrl->rect;
0 C; W0 f @7 X3 ]
if( rect && rect.PtInRect( point ) )
/ Y4 h: N* @$ i) P2 g9 C+ ^
{
0 q+ N- C5 ^2 _* S
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
* T" W1 g2 s$ h' K
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
) L9 |' f) S- Q3 v! q* n; h; A
{
6 G1 }( A; J1 P3 w. K- |/ m
if( m_pItemElem )
9 u( _, h1 P! t' {. m
{
6 h4 z+ k" K+ ^' q
m_pItemElem = NULL;
- v- x) R. {! H9 {; `
}
! c/ r9 U8 l, M; W7 D) V) [6 K3 g
m_pItemElem = pItemElem;
- V9 |8 k' A: J5 _3 g
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
2 i8 b* q/ k- k
}else{
2 D8 E" D# d1 h4 B$ F
SetForbid( TRUE );
6 Y; G5 P K! J7 M6 ?
}
. K' Z/ ~5 ^2 U3 `+ l
}else{
f1 }# l. C3 l6 a |! G9 l, z4 }/ d
SetForbid( TRUE );
2 J9 ~9 v' L# i$ x, d2 @
}
& }1 j9 w" q# A/ l1 F4 b
return TRUE;
# K. h. o' ~' e7 o
}
0 p% L. l6 \4 c' S3 s
2 R# N3 O- P) z! Z
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
5 v5 D# I5 N* {
{
% e1 `* k _, Z+ P
switch( nID )
( M3 m- Z* y) R: {0 D
{
# ^+ v. y! @! t3 x/ T) }: \; w: R5 G
case WIDC_BUTTON3:
7 `4 B5 d1 j! _& q
{
. P0 s; y4 Z. ?" [+ q
bStart = TRUE;
1 T$ l9 x8 b. p C; I& y
break;
8 V* Y1 D9 ~" K6 W! d7 r
}
) i) J% i" f$ Y7 H# ~
case WIDC_BUTTON4:
' ~' c2 e: I% q2 M- T$ I A
{
- M7 ^1 t$ `4 R6 `# g. R$ ?
bStart = FALSE;
' O' P2 ~# {# E5 o8 S
break;
! _, K. S2 w" T, l& y' J
}
; y0 p& G5 x$ ^. }- K4 w
}
2 A" C2 H% p: _
return CWndNeuz::OnChildNotify( message, nID, pLResult );
1 m) t" \0 z2 x+ b
}
8 F2 F, M. ?$ e' @: S
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
# S3 m5 ^" f4 Y O& v1 J0 H
{
% z5 H) l) e0 j; S
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
1 E/ m- j: G, Q/ ]/ \/ @
if( bStart || !m_pItemElem )
% j( @6 M, o/ O4 L+ P0 l* v
{
4 `. z8 ^9 ~& F+ g4 B/ M0 S6 F
pBtn->EnableWindow( FALSE );
4 m, M8 B) l6 E" b* q
}else
2 S6 U* \( K; \
pBtn->EnableWindow( TRUE );
" ^) g. g3 v T
if( m_pTexture )
/ p3 c$ \$ q3 k4 _ j% x' T/ }& O
{
$ Q7 x, J8 A1 W7 y! T1 ]
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! t' {$ i3 i6 c: U/ [
if( wndCtrl && wndCtrl->rect )
7 F* k8 H1 V7 J
{
% d T# `; \9 R, j5 a
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
/ b4 h8 h7 V" ]& _
}
7 L! t! ^7 f( ~$ d
}
G$ T8 Z# |+ G7 c1 n% T1 @$ S
}
! R; F+ k1 \) q, L4 W2 G/ t
6 c3 t. \% A. ^) U( Q: X
BOOL CWndAutoFood:
rocess()
2 Q; r0 ]6 Z9 u* ?* H2 ~* `
{
. [, k7 g1 z$ n2 v) }# G8 x
if( bStart )
3 Q# J# f$ ~# ^ U) r2 w9 O
{
0 R- D" U# U" l2 y2 |7 X% [
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
% h6 |# S( S( G; y" K
{
y1 ? |' I# P( r3 H! c9 s* N
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
. Y+ N! Q( ?; d+ r2 a
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
; A" j2 z/ _" g. l$ r2 ]
}else{
+ f. f4 E9 g {, y2 R* |, |+ w
bStart = FALSE;
) r: v+ L$ [( _! L# X& J
m_pItemElem = NULL;
& v7 u0 q% k( [9 ~, t* k2 S
}
9 \ Y% `! q' l: G2 [ C* {
}
8 Y. S! j$ {' B% k* K. y3 N( F
return TRUE;
; N- e# Z4 D* K! l( L
}
5 N3 p" n' s2 R {1 Z2 ^
! a' D: v, |( [- M6 y& N& p
登录视频废话:
$ G t6 j5 L) J2 G: j0 p* w* D
尾翼:
1 h8 |3 A5 W, @& t3 ]& [
! [- H% _! ~/ H! |& M8 Z* h( F
代码:
+ w- k8 g' J9 m6 q
7 f8 n3 T, H* i8 a6 M! o
void CWorld::SetLight( BOOL bLight )
6 O+ l* `# F. A& q: i X5 I
durch
/ a: q% I$ v, L N- n; O3 T( f2 H
Code:
& e H# I+ v1 Q, Y
void CWorld::SetLight( BOOL bLight )
\9 w' h6 M$ c. P) @4 ~
{
8 A O* Z# V! h" n$ ^
//ACE("SetLight %d \n", bLight);
h; [. Z+ N1 O7 v
) S" ?5 e9 o$ ^" o
#ifndef __WORLDSERVER
0 {' k' ?8 i4 O+ @/ k, ~- j9 i* d4 h
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
( ?2 L% Z( l. Q
CLight* pLight = NULL;
) T" ^' R( ^5 \. [% g' E
8 w2 p; P* v/ ^
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
0 k& n; l2 a9 h2 @
+ f) E9 y( E1 C0 S, C' _3 I
pLight = GetLight( "direction" );
1 D1 z0 a8 e$ ]* F
1 }% m5 e3 |9 A! ^" `' h; q
#if __VER >= 15 // __BS_CHANGING_ENVIR
* N5 x3 E5 {' m) ?8 @6 Q
if( g_pPlayer ){
/ O8 D! C* Q. B, s+ z9 J
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
. O3 q9 e' f8 [1 w) @% X
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
7 F% C: j9 d6 |' P& ^
{
?9 S$ A7 a0 T! P# o
if( pLight )
0 |% ]! m5 M! m( S& z5 C! I
{
+ M3 i# Z6 ?. S Z9 Z3 i
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
' \; f( _" H: \! `' W6 Z+ y
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
( O$ L0 F Q$ v* P( N( h" c
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
, t9 D9 A& ^* X0 W$ Y9 a$ m
( d6 S) X- `# x& e7 Z( ~# c9 o
pLight->Specular.r = 2.0f;
/ N ]6 S5 P; E N3 U9 ?
pLight->Specular.g = 2.0f;
* d2 ^, j% l2 {% a# D) p
pLight->Specular.b = 2.0f;
9 V/ J- \! g/ Y6 J0 b
7 E, m4 C/ r u) V9 c
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
0 I4 Y5 M6 Q5 r* [
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
+ M" i. I( u$ f' l8 H6 ]& Y. a
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
! G' G# p# y5 w& @) l
1 s- K: S( C7 B- x' ?
HookUpdateLight( pLight );
) S& r5 ~' ? B5 r: z& H
+ S: z B7 s; o, g. `1 P7 E/ B
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* w2 x% `+ O3 o7 n( B
o5 O! ]' h& A9 M
pLight->Diffuse.r *= 1.2f;
$ V0 I5 l0 y$ h( a6 @2 z% _: N
pLight->Diffuse.g *= 1.2f;
9 c$ H1 ]. n6 v
pLight->Diffuse.b *= 1.2f;
3 x: S( k* }' w; E3 I
! @7 d* b; Z: b9 a+ V
pLight->Ambient.r *= 0.8f;
- f u& b5 W3 U
pLight->Ambient.g *= 0.8f;
# q/ R2 M. G0 A) V5 Z* C7 }) x# k
pLight->Ambient.b *= 0.8f;
2 o1 i' `& U D6 P0 U8 Q' Z5 g
6 I( W. a% H& q$ @% O
memcpy( &m_light, pLight, sizeof( m_light ) );
0 T/ g$ v) K9 f' Q* v+ x5 Y$ ^
" {- ~5 T# u9 ]# P
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 h0 q6 J0 @' e8 u1 d% q" z ~
D3DXVec3Normalize(&(vecSun),&(vecSun));
9 H# Q& k& T1 d" P; y5 P9 }# }
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
8 a" x& S6 b" ^
pLight->Appear( m_pd3dDevice, TRUE );
q. R8 Y/ U+ s3 E; p+ [
: F8 R! A3 P. d5 i0 |& I+ L
DWORD dwR, dwG, dwB;
) r' F0 X0 r( j0 s1 P# `
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 p* E% i$ v" y' Y& U
dwG = (DWORD)( pLight->Ambient.g * 255 );
, M# K# j" v: X& A# r6 V' m
dwB = (DWORD)( pLight->Ambient.b * 255 );
% W: ~& o w! H# e
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 z2 `' n+ ~, o& }" G/ ^
}
# b: h. o! Z- \
}
2 t3 s9 j# `- {
}
" J; ^, f; Q6 H
else
0 j) |& ?, i; P6 @5 ]4 h P
#endif
' a" x8 V0 g* p: U5 M% _3 c
' f0 e8 H n: H. H' ]
if( m_bIsIndoor )
/ f! } Y- N* C
{
) F8 ]" c5 W( N, ]4 n5 N
if( pLight )
) m) h# E; _8 }
{
. C: f% O% U5 ^/ _" g
// à??μ oˉè*
% Z s) E/ y+ E4 _) M# S# x: w1 H
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
, m4 v: J9 q. p- r
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
0 K, x% Q) A9 V, [! T; x8 B
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
+ @# i0 S1 S; y
( ]; P- x+ U. k
// oˉè* ??à?
# c6 o1 v: N( W0 {
pLight->Specular.r = 1.0f;
7 e! P! D5 W3 o# e: w' z$ U: r
pLight->Specular.g = 1.0f;
- L5 ~9 ~, k. z+ [' j! q
pLight->Specular.b = 1.0f;
4 B, }: |! r& C- A$ f! S
// àü?? oˉè*
4 i' {$ f/ U Y; F7 A6 n
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
- d" X- k K* _3 B
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
2 W/ S. n& {8 e' l1 i- L
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
" I8 \9 n4 v; A1 ^( S& _
1 J$ Z/ [) v5 r" c7 R, h
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
A4 j$ \ n% i; J% b
{
& Y- q0 R# U/ k) T; @4 T, Z
pLight->Diffuse.r *= 0.6f;
O4 X: N T; F! \
pLight->Diffuse.g *= 0.6f;
" P7 E: W$ W. S. K
pLight->Diffuse.b *= 0.6f;
3 J3 ^4 C# B( z0 e1 x# ~2 U
pLight->Ambient.r *= 0.7f;
7 n' z" _: c8 B$ k C3 ^7 F
pLight->Ambient.g *= 0.7f;
5 s2 J3 \* L7 Y7 G& J
pLight->Ambient.b *= 0.7f;
, _# j$ z! ^2 O# Y! N
}
/ t: X# I( o& q
8 u- ]1 F. D3 W3 Q2 b8 M5 ]9 H. W8 c
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 L- U. |6 Y: w0 x
if( g_pPlayer )
4 X" p7 E9 r% Y8 V( {% ?4 [: ?
HookUpdateLight( pLight );
$ [4 _2 g: ?- n; V2 S
#endif
3 p, j3 D" S4 x6 q
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: n( j1 w. }) B; C, O6 k
E4 q I* r& ]" f3 M8 m" o4 X
pLight->Diffuse.r += 0.1f;
4 g( _9 I/ d, a! V; c2 {! o
pLight->Diffuse.g += 0.1f;
. B: p% B" o u: f" M& A% U/ U, x% `
pLight->Diffuse.b += 0.1f;
; C3 P5 n1 ~( H; m5 {/ d
// oˉè* ??à?
' `! G) F& E( C
pLight->Specular.r = 2.0f;
4 g' I1 E; m8 |! [; b( g
pLight->Specular.g = 2.0f;
, o; L3 K; P9 r; O$ Q6 V
pLight->Specular.b = 2.0f;
( g) Y) Z1 B* J* D+ B s7 j+ p3 q
// á?oˉ
* n2 r. l1 S8 ?8 l9 ^
pLight->Ambient.r *= 0.9f;
2 ? Z, W( l! B2 \$ X4 g# r- _
pLight->Ambient.g *= 0.9f;
! X8 l; ^# [: H& ?7 ~
pLight->Ambient.b *= 0.9f;
2 i& f5 a8 x+ e4 a
% c8 I7 p g2 B5 `2 h* a# v: N( X
memcpy( &m_light, pLight, sizeof( m_light ) );
_# R7 N+ g- Z8 A
" W- x& J$ h" k$ ~& m! g: W
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
4 y! O+ D8 M/ L s6 v- U, n/ V7 P/ ^. @
pLight->Appear( m_pd3dDevice, TRUE );
) A7 t: x. R; A7 X) n6 g# j' X
( Z: _6 ^3 g5 f. ?" Q, q. ^- _; ~
DWORD dwR, dwG, dwB;
+ {' z0 P) R# E/ G7 q. S% I
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 N, W# n, X2 H5 @! Q) b& D+ j
dwG = (DWORD)( pLight->Ambient.g * 255 );
) @7 Z* R5 D8 f" d& X
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ b0 x7 U5 i+ k0 i& `0 _
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 j2 {) e8 [; o- _$ y
}
2 O8 e- |. O3 Z3 ]7 K
}
0 z& x, O4 I. d9 U
else
* P. Z, B( |' A- ^% V" j3 h" i
{
# K* g7 X4 V o" O/ Y5 U+ @7 u
if( pLight )
- k, p2 Y, W k6 c- q+ S ~
{
; x+ q# A: N# w2 o% I
- G9 h) b8 g; b2 E$ G& ?/ X! Q/ }
int nHour = 8, nMin = 0;
' y/ q1 u' i$ O0 a/ q
#ifdef __CLIENT
+ l3 a0 B: Z5 x7 m1 J, z
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
9 J* n S) m0 O/ @" t) e' |
nHour = g_GameTimer.m_nHour;
% f' |3 v4 F4 E& u
nMin = g_GameTimer.m_nMin ;
) Q' n6 {: U* z5 K- N
#else
5 L) U2 \! O' s6 o" K/ X: f
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
2 q& ~) r: ?* K
if( m_nLightType == 1 )
% o# i$ l) x, j& ^- h q7 \
nHour = m_nLightHour;
3 R% ?/ E* U$ V4 Z" d- q |
#endif
& b4 q3 M3 ?7 J2 @) P' Q. R0 W
nHour--;
8 X, T2 ]' ]$ u5 ?( m/ c/ F: ~
if( nHour < 0 ) nHour = 0;
/ v; H! F. ~: Z `0 Q
if( nHour > 23 ) nHour = 23;
5 R: f# x( p: w
5 ?! K# I9 J1 c$ X- G
//if( m_bFixedHour )
. a! V8 n: s+ _5 k1 w$ \
// nHour = m_nFixedHour, nMin = 0;
) ^" G1 _1 Y1 n* g. l6 W& i
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
7 v$ t/ J& F( M; _- n. p0 [1 ?
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
; G- w! U: k! ?5 z
- n" y1 n6 J P+ I. H
//m_lightColor = lightColorPrv;
, [" k N0 `8 I! D7 \7 d1 g" [
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
$ t! B4 J9 z l! [9 |% L' t
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
& e* g* D9 G( J- E `
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
: q6 x' U. s% ]3 L4 q
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* B3 l+ h" U) S* X- _3 I' H
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
, q& z( ^: P1 s6 M' y0 w" H4 ]9 P
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
# N4 M2 @1 g, H2 N, F
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
( J9 L- X0 Z2 l o4 q
# r4 A$ k9 l" N$ v1 N% j
// à??μ oˉè*
2 _( v4 J" @9 o5 A
pLight->Diffuse.r = lightColorPrv.r1;
$ E {" e$ x: T& ~. V
pLight->Diffuse.g = lightColorPrv.g1;
' ~9 m9 F- x* \$ ^2 E. c/ M
pLight->Diffuse.b = lightColorPrv.b1;
& e4 M' T6 B% ~, c
// oˉè* ??à?
- x5 K# m: d0 _2 D
pLight->Specular.r = 1.0f;
# G" o% N% w# A0 y
pLight->Specular.g = 1.0f;
0 w7 f' E' x2 h7 t; G/ j
pLight->Specular.b = 1.0f;
. S$ F, [& _2 X3 Q0 p, F& T
// àü?? oˉè*
! L/ X) @+ b: n# d1 t# l
pLight->Ambient.r = lightColorPrv.r2;
5 `7 Z/ T" y" _) l4 F/ B% x
pLight->Ambient.g = lightColorPrv.g2;
o. Q2 \( o0 P$ k
pLight->Ambient.b = lightColorPrv.b2;
, y! D L' C7 f* _
. ?' ~1 x. N1 K1 ^
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
& L! d9 K( a: H! U8 t) U
{
' C" y y) V# r* f+ Q' i9 b. z
pLight->Diffuse.r *= 0.6f;
5 I% A; r ?" f1 d b) Q
pLight->Diffuse.g *= 0.6f;
1 Q" p1 E2 Z9 _5 {" @* g0 O
pLight->Diffuse.b *= 0.6f;
! t. _4 z$ _4 W
pLight->Ambient.r *= 0.7f;
5 t) b' y( W+ i* l" T
pLight->Ambient.g *= 0.7f;
* V. G J! p0 c2 S- ^# [/ r
pLight->Ambient.b *= 0.7f;
' i8 ]; @5 o, a/ y2 s2 X& x
}
. c$ `6 m/ Q \
1 L* a& K, c. v) @
#if __VER >= 15 // __BS_CHANGING_ENVIR
) y0 D' q- ?9 ] I& o- J8 b1 M
if( g_pPlayer )
) ^. K- O( V* k( Z7 r* u3 S) ?
HookUpdateLight( pLight );
& h9 G- p' `. j* P ]3 v
#endif
: i7 X/ t% M0 ~6 O; Q# J
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; r( C7 M. _) ^* g" Z# N
' N9 Q# z x, y. @' E+ a
#ifdef __YENV
: D/ t; t2 ]. _; r" X( k
pLight->Diffuse.r *= 1.1f;
; l) J* I3 Q6 H+ |0 x
pLight->Diffuse.g *= 1.1f;
) T& [9 f! {! q, {9 o/ k1 P
pLight->Diffuse.b *= 1.1f;
) k# C9 P+ |( q$ Q+ [
// oˉè* ??à?
3 B, _ o: ]5 O
pLight->Specular.r = 2.0f;
% _5 Q z D$ ]; `, I4 O D
pLight->Specular.g = 2.0f;
7 j w* g% g. q( D1 A
pLight->Specular.b = 2.0f;
. r* U$ o R5 u @1 `: Q6 u
// á?oˉ
! v4 ~! C) s( H# E9 y0 V5 |* o# J& f
pLight->Ambient.r *= 1.0f;
6 W* e' K* `7 |: x; u- c
pLight->Ambient.g *= 1.0f;
& U: d. l$ S' a2 p
pLight->Ambient.b *= 1.0f;
% b4 G% D9 y; P6 t0 u
#else //__YENV
9 k9 p, a) B- N$ W! b( x( x
pLight->Diffuse.r *= 1.1f;
# Y" W. r* Q2 t6 G) F7 G
pLight->Diffuse.g *= 1.1f;
' a1 V% N! y/ ]3 Z0 ~- x8 ?, j% h
pLight->Diffuse.b *= 1.1f;
7 u( K; M! N6 @& O) V" F
// oˉè* ??à?
, @4 h. ?4 h% A" f) _3 y0 Z
pLight->Specular.r = 2.0f;
+ }7 ?/ F5 F& U* k8 O0 F
pLight->Specular.g = 2.0f;
$ B! W$ C* c) u
pLight->Specular.b = 2.0f;
( E* k6 e0 o3 c$ c- J/ c. C
// á?oˉ
' i9 B+ j" w6 c$ R1 g& D# k# L
pLight->Ambient.r *= 0.9f;
& }/ Q; `5 |) `( K5 r8 |: ?+ X. V: _
pLight->Ambient.g *= 0.9f;
* Q8 W$ y* s2 m' H
pLight->Ambient.b *= 0.9f;
. E7 ?/ R2 x! j4 i( X5 }$ N# Z
#endif //__YENV
) P ?; [7 r$ C* Z. g( Z
2 j. \6 v- U/ m8 \( U- A
memcpy( &m_light, pLight, sizeof( m_light ) );
3 n6 v+ k# ~# y3 g) }
$ I0 J! U3 {9 C! ~
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
1 p% `# U/ P" L( W- \
D3DXMATRIX matTemp;
% W9 Q+ w$ O; Z
static const float CONS_VAL = 3.1415926f / 180.f;
) _) f0 |( ^# P4 H
_% r8 N5 m7 K) i
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
; o1 d* e* H) `& U* p
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
( [ h/ m! ~' R. @, i6 }) m
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
- q' Y5 R: A7 s6 L3 t2 t
pLight->Appear( m_pd3dDevice, TRUE );
# P z) x! P( K, w0 K
& ]$ n) C; \: y9 p, s- k1 ~6 o
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% i, k+ A B# ~6 T
// D3DXVec3Normalize(&(vecSun),&(vecSun));
6 d- [0 o: L/ W- D- I
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
f+ P& [5 H( y3 H3 P: S
0 ^; j1 Z n$ b6 p: C. k' A9 u
DWORD dwR, dwG, dwB;
# m' s' h) d% X; J
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 b$ M' Y" D8 W- }: ~ w3 O
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ c. C$ [& q$ w7 J6 i8 q4 O- U
dwB = (DWORD)( pLight->Ambient.b * 255 );
w* O+ h* p7 [- h" s
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ n. k1 ?2 F6 m' V! K+ x
}
& ^2 w3 l6 x! ^0 i1 v
}
! D, a1 b P* d2 [
% Z5 o6 Y) A$ [1 _- M3 s
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
3 t2 A- b+ C0 p$ b8 y
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) );
% ^' G* Q5 M1 i) Y
::SetLight( bLight );
, V( J8 C# i- S1 p8 z
3 g- S* e* }) D6 _( E
// ±ao? ?D?í???ó á¤à?
) W, t0 _. h( X1 e& u3 A' X
m_pd3dDevice->SetMaterial( &m_baseMaterial );
/ a" N" v6 G7 N3 h' I1 B
. q! {& w0 k; X b/ s! `2 F
#endif // not WORLDSERVER
# D/ L6 O; a# @% W( E: k6 D" I
}
: L$ E& O2 j7 d9 Q
并更换
, ^: b- M5 j8 M$ {- v3 C) k
Code:
$ I, A* F4 v5 O7 M, V3 H
__FLYFF_INITPAGE_EXT
5 f+ H; @ `3 ?
定义
* l+ M. {& z* S4 v B& B( D
( U# I/ A3 A* B& J" I
/ W1 ^$ [3 ^5 F- ~" B
7 Y+ X6 p2 {1 y9 j
8 w! f. ]- x% C/ n" D" Q* {7 B
现在终于删除我的狗屁加速...
( R0 u+ S* {. O' L) B
. E) F& r+ \- n) i
& r2 J- z0 o& t% ^) Q$ m/ T" F
4 d: ]+ [& {" ?/ l3 a0 o
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2