飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
6 ~% E3 i+ g6 N( M' N
尾翼:
6 ?2 e2 J H+ F/ ~, j$ l# b
5 Y1 V T6 @) n/ F# `5 n
代码:
: b* ]4 k+ m4 Y
CWndAutoFood::CWndAutoFood()
$ }0 [" S8 E/ {5 V1 q0 Q: X" `2 a- @
{
" q$ w# x! `9 A: p' \. K
m_pItemElem = NULL;
1 [7 h$ s: E5 }6 l/ d* A* s
m_pTexture = NULL;
8 u: z& u7 k4 G- g6 b- v& g
bStart = FALSE;
+ i/ j& Q$ d& h; X+ @
}
: H. R- }- E$ M. J! t- F4 j
4 J6 S. }# |: v: Z: @
CWndAutoFood::~CWndAutoFood()
! G! U& o3 _% ~& u& C8 |
{
( _. E% K7 K: z& H Y& o' n
AfxMessageBox( "AutoFood ist gestorben
" );
# v a5 ^& L8 L, @ n
}
. L1 J0 c% A5 {7 L* n
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
9 t6 B! i' w& Q8 T% T1 h& U
{
/ R$ ]( j8 L0 x9 l2 [
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
6 p9 p+ m7 R0 \: B9 P3 P
}
8 P V9 e! O7 ? j3 _
& n; }9 j0 Q/ a8 F# }% K
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
7 f s1 S4 q4 b1 d7 [& r3 Y# c7 k
{
/ F4 m s U- P: f v
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ L0 c+ y7 A& g' g7 b: ^9 b
CRect rect = pWndCtrl->rect;
' H3 p5 u6 C* X& _7 f: _
if( rect && rect.PtInRect( point ) )
0 j3 w4 W9 N) D9 ^; j
{
9 o0 f, V4 r8 O, K: O
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
0 u4 c% H$ c7 u
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
% H$ M9 a; [3 Q) R) s7 V2 V7 z
{
. t1 H. a/ h4 b( Y8 Y3 L9 P
if( m_pItemElem )
$ V( s- _; Z- Z( w, O) K
{
2 p- E4 D( x$ p: i B' ^
m_pItemElem = NULL;
" c9 f# d! d9 P
}
; O" t, y. i2 O/ m0 ~
m_pItemElem = pItemElem;
6 R2 \( Y! X. h5 N3 V
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
- c- p4 K7 h3 \5 @+ k4 s
}else{
% f: }0 U) J2 I
SetForbid( TRUE );
; o3 h' w6 e+ `: [6 y" ^
}
5 T& l$ e& b8 O: @
}else{
& F3 Y- p4 {) A* \6 u# F0 Q5 a
SetForbid( TRUE );
. `0 y) A# }) ?, ^# A+ F {0 B
}
& M- Z0 p5 {" q7 ^/ D
return TRUE;
0 n+ F {) Z5 e
}
- z/ X2 W8 u6 a3 o7 x7 p0 {
) p+ M. f& A4 Y+ ~: N+ ~
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
# U) M3 D. G/ |7 e
{
' T0 \6 A9 f: v7 e r! a: w
switch( nID )
) _* s, L1 ~! c$ o0 ]1 D
{
3 V3 o1 ]. {6 u, F
case WIDC_BUTTON3:
0 K4 S2 i# y- c. v' Z S: M
{
1 K T, j# l2 Y( h5 X/ E; _
bStart = TRUE;
; y c8 V0 O$ z) q" v
break;
! l/ ~. Z" \ j% x4 ]# O
}
: F5 |) d# @$ e# K3 P
case WIDC_BUTTON4:
/ t% D0 s# u- r" @4 }
{
8 B9 L$ d1 U) g& j7 J
bStart = FALSE;
3 V2 g, n& z& q
break;
- w4 [2 ?: P( n
}
5 c. l% c6 h' @3 ~2 |
}
2 b; y9 ]7 i( ` q
return CWndNeuz::OnChildNotify( message, nID, pLResult );
0 O5 W- S0 p, A* j6 b+ _# ~9 `, Q! t( `
}
. |$ L5 c0 `6 [) R, q: j% p6 { u
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
# E. K0 k' w8 y( K7 ^
{
; h& x& J( E$ J9 c! ]% \
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
7 A0 a! r% a( c ]7 I/ Z
if( bStart || !m_pItemElem )
- ~$ Y. P' W6 g& H7 J
{
* x4 d4 H% V: X5 ~% W
pBtn->EnableWindow( FALSE );
% h, e3 O0 c& O
}else
* d0 d/ H2 |- B4 ]' y
pBtn->EnableWindow( TRUE );
/ U$ J" G# T# B& G) a
if( m_pTexture )
( c4 d3 b' t0 j5 q, U
{
$ m* p M$ Z' ~. r- U5 E) \# [
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 U4 m/ r+ U% T0 i/ J7 T, t% d3 C# h
if( wndCtrl && wndCtrl->rect )
0 J3 w# U) y% p
{
+ T2 `+ G: I; n
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
+ G( L2 T( ~; I5 B) P6 Y
}
2 l2 g5 ]) j, g+ c/ u
}
+ a* y" z/ E: s& a) n/ l' a2 i
}
0 n* d4 H7 r. i7 j+ k6 Z! l
# L0 @" r1 [. g! H6 H/ v3 M* A7 c# o
BOOL CWndAutoFood:
rocess()
( T+ N- p0 }* k* ?- B6 }) |
{
! q/ f# O# |' z5 W
if( bStart )
+ x2 k! \4 g$ w& S# D
{
" N( R; T5 F0 M- r
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
! a: U1 L* t) ], O
{
* X$ x" `' ^' a, N$ R8 ~8 n7 B
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
8 L/ K4 @. N; U+ N9 U
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
, f. ~5 L: z* ^
}else{
1 n) e& n' R& u# K
bStart = FALSE;
, |+ \( X0 b5 b) w
m_pItemElem = NULL;
8 c N1 f5 y' ]
}
/ b. W8 e, R5 w9 Q
}
( C0 Z3 @ j! y0 O6 U1 W
return TRUE;
) Q- @2 y5 x$ M6 F0 i# o
}
+ @$ k; L+ @- _) B/ Y5 ^+ \
Y/ E" o. ^0 F( }; f
登录视频废话:
$ F8 w$ X8 r# p% b- }
尾翼:
# E; _: ~) i3 @( F6 f
$ t4 S( I |; N8 O0 V1 c4 Q' F$ X9 R
代码:
6 a/ @$ a: o5 j2 M2 L( l4 g* X
% k% j( @- P4 k/ L5 y/ R
void CWorld::SetLight( BOOL bLight )
- t( m+ P: ~. l( w: W& u
durch
9 P7 m5 C5 n+ b! I1 f6 Q `) I
Code:
4 Q% ^7 O; j# ?4 U8 Y, e+ i/ s
void CWorld::SetLight( BOOL bLight )
1 \$ @$ V9 j+ `+ U2 T: N f0 g+ |6 E
{
7 I4 H% R8 b/ k5 A. n
//ACE("SetLight %d \n", bLight);
4 \0 i8 c x* M( i7 r- Z
4 Z/ j, F* o+ _$ f4 z
#ifndef __WORLDSERVER
; A* Y* R) i% J H% l
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
/ s; Z3 p5 ] w* I! `! L
CLight* pLight = NULL;
5 i" H7 {% ?/ V8 F+ Q
6 `2 F) S8 h5 }$ I
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
8 [- z4 J7 @/ e. `: R2 m& x, I
9 d5 s# }, P7 V
pLight = GetLight( "direction" );
; ?% c$ D) f$ y& G# o+ R& T! q
3 [8 v1 L; Y) K' n+ g
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 \( I& Y' M7 p% J
if( g_pPlayer ){
1 F: N% b0 L% y; p1 U7 W
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
* J/ a6 {4 \1 ?
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
4 H' w$ z E" `
{
- v) Q4 I, C3 Y0 q
if( pLight )
' m; e7 p) R4 _, R2 D; _
{
/ E2 m- M: _" t- u
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
2 W# ]2 ], V* ~2 J; j
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
2 I0 ]$ }3 q8 p5 K8 h) l3 M
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
9 e% L$ v$ y& s
8 g3 I$ L8 ^ U ]4 ~$ O
pLight->Specular.r = 2.0f;
0 _/ d7 Q( _4 z8 ^- Q% I% R8 Q4 i
pLight->Specular.g = 2.0f;
% _9 a( R" T* G9 }( O+ {
pLight->Specular.b = 2.0f;
6 ~' Z. F: w: B, d
0 ^9 |2 X( W$ `( r5 A8 ] _3 w
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
& L5 N3 |( L; z2 `7 m9 B
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
! U4 |+ N) i6 L% _* _6 E: r; \
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
6 Z2 l1 X! U7 M1 Z: n
! z& F: J6 r( [! ]6 C
HookUpdateLight( pLight );
! k/ Q0 k) z& a) [5 k
1 R. _. F4 L2 v4 o$ m [) v
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ m+ q& A( ?. Z6 d5 x* v
9 L5 T$ B z" W; U( ?
pLight->Diffuse.r *= 1.2f;
' {7 L; j6 c$ P! g# S/ P4 _7 O) Q/ \
pLight->Diffuse.g *= 1.2f;
% W; @/ P( c2 h' C. m
pLight->Diffuse.b *= 1.2f;
6 z8 q; ?$ X. A# L
0 w; |4 ?5 H' h# @$ V9 a
pLight->Ambient.r *= 0.8f;
- J2 }5 G. h/ }- w, u2 H1 @
pLight->Ambient.g *= 0.8f;
' M/ \# K/ M/ u2 R% q* |
pLight->Ambient.b *= 0.8f;
& [0 {, g" c* l i% L6 W
" o! @$ ] C; j% L [
memcpy( &m_light, pLight, sizeof( m_light ) );
; y1 R9 S3 M$ s% z f! G, X/ U
* f: o; k9 r' m
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 X/ t+ y* Z F
D3DXVec3Normalize(&(vecSun),&(vecSun));
4 h" d8 r- r) [8 D
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
& I, t9 O- d4 b' ]3 y
pLight->Appear( m_pd3dDevice, TRUE );
, h# b$ S, \5 X1 {) s) S) n% c
1 G' F3 u7 `4 C- E! l, E: F
DWORD dwR, dwG, dwB;
: e( z2 N! l7 ~6 H* j
dwR = (DWORD)( pLight->Ambient.r * 255 );
/ t3 U# ]0 M6 v3 j2 [- s9 u$ t
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ B! M( m, j( ^5 ]. G
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 {8 N# u" [6 W
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" z7 x" d1 h) Z9 B; ?1 T+ B1 @
}
8 g) z8 L$ i+ M) ?5 q) J$ i5 N% Y
}
8 X9 f7 ~- U* B& l+ O8 P# n
}
, Z6 ~+ L `+ E) d- c+ Y7 ]0 U# l
else
3 {! \: Z% W$ m, M- y
#endif
2 A9 n% Z1 ~% x) ^$ {* {: |' {' N
2 F* L7 l. g6 s$ Z/ r
if( m_bIsIndoor )
* K( H9 T( ]" c {5 K/ R
{
+ h2 E& }" s( _" b/ H8 L' ^
if( pLight )
+ m- |: m- T2 G H# ^# _
{
6 Q b( c8 P- j: C. R$ |& `' d
// à??μ oˉè*
( a7 ?1 T3 t- B5 p
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
9 u& o; u6 ?% ^; h
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
7 O& K8 `# \2 J7 ]- w7 m" ^- N
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
0 e/ ]3 ?; u/ X |1 I) j
6 A8 }+ N. n# c, i3 |) s& R
// oˉè* ??à?
7 [+ c4 V- j- S' m$ o
pLight->Specular.r = 1.0f;
( O, y2 w. [0 m4 v1 M
pLight->Specular.g = 1.0f;
" t) N5 d8 v6 @5 i+ g
pLight->Specular.b = 1.0f;
6 v" | ]- l" a, q
// àü?? oˉè*
' m4 Z3 E' U. f0 C9 K& m
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
- r. _2 O' | R2 v
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
8 `+ m+ t& L1 F4 z
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
2 r- @& X" a9 t
: \( `' p7 ~2 M( U
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 w5 G" y! \9 j7 m# Z
{
' s, [. D. q1 h1 V3 _; H
pLight->Diffuse.r *= 0.6f;
+ M9 h: D* U2 X4 W+ l
pLight->Diffuse.g *= 0.6f;
( |, a2 ]9 i& M- y4 N6 z
pLight->Diffuse.b *= 0.6f;
. u7 U" K R; i8 |
pLight->Ambient.r *= 0.7f;
6 j. f: @$ l/ I5 ^* P
pLight->Ambient.g *= 0.7f;
: t7 q0 ]1 L/ l9 z s
pLight->Ambient.b *= 0.7f;
2 i- @+ B$ p% W& ?) n( E3 [
}
4 c3 U1 k2 Z. O2 d7 k
- m# s1 d" J# V
#if __VER >= 15 // __BS_CHANGING_ENVIR
9 H* I: D/ n6 c2 g" l; J/ X: v, ], \
if( g_pPlayer )
- a) v& r; ~4 E0 t6 J! U
HookUpdateLight( pLight );
3 G. D5 E! D( U6 N! }( ]6 U. O6 i
#endif
+ K) B8 n8 b- z% @3 Y' R8 J6 N4 K
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) H x F9 p) Q
) I: {9 f* D- g# i, u
pLight->Diffuse.r += 0.1f;
' D% S; J$ X, }+ b* X4 n
pLight->Diffuse.g += 0.1f;
( l" f, i: o6 D. B( P& }
pLight->Diffuse.b += 0.1f;
5 ^* e8 d6 t8 a2 g7 n/ U% g
// oˉè* ??à?
# ~# B% m- T4 S, s
pLight->Specular.r = 2.0f;
) P% `7 p+ ~3 X# d/ e6 M
pLight->Specular.g = 2.0f;
7 A Q7 J, Y3 {& I& O+ ~. T- _5 a% K
pLight->Specular.b = 2.0f;
% \" v' R' }' ^$ `5 _7 A2 w
// á?oˉ
. u, V' }. G/ Y9 ~
pLight->Ambient.r *= 0.9f;
K; m! m; j( m
pLight->Ambient.g *= 0.9f;
) Y# ?2 ?1 [2 p9 f9 I
pLight->Ambient.b *= 0.9f;
# h! [3 c) M4 Q* `+ W0 h
# W" ]6 ]( ?- |# t V8 |7 @
memcpy( &m_light, pLight, sizeof( m_light ) );
; { E" j7 @+ F/ q4 B
D$ F. {3 H# h5 t- a7 |1 c& u. ~
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
7 T" b2 r U9 d& j
pLight->Appear( m_pd3dDevice, TRUE );
+ C2 r" C$ @1 H7 H5 X- a- f5 l
3 ?1 l+ H% o+ M& B k, Y
DWORD dwR, dwG, dwB;
+ q. E# x2 u4 ^2 d7 [8 R( P' R
dwR = (DWORD)( pLight->Ambient.r * 255 );
) O" l c: Q8 Y9 V. a& Z
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 G' n) q9 G0 \+ m i3 o' P# g E
dwB = (DWORD)( pLight->Ambient.b * 255 );
H, h. W" h( t- Z! Y8 s
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" Y# }6 z/ u, c
}
, m- j9 M0 I2 ?' j3 c( p, W) x
}
9 T% w& s- n+ m$ Z% [
else
8 l3 F& m8 p6 Y7 f$ G
{
% G1 Y6 ], _2 i/ r
if( pLight )
7 h! a3 ] r( O# x: M2 k
{
* e4 v& t2 ^) d5 V, J/ f' i2 S
# T H9 K$ P# O( Y. a9 T
int nHour = 8, nMin = 0;
. m) y ~# g( {4 r# l A5 \% L
#ifdef __CLIENT
+ ~7 k# o; f2 Q# J3 {
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
~: o0 Y! n4 T5 ^
nHour = g_GameTimer.m_nHour;
" g7 y% A; R; H j8 q5 q
nMin = g_GameTimer.m_nMin ;
6 L! X4 k' M0 O; D2 C! B8 U
#else
6 }' Z$ i0 i! e8 w, b% c. Z
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
3 f# f7 _! r R2 D9 b1 g- s3 V
if( m_nLightType == 1 )
; P1 o7 [' F% P* a
nHour = m_nLightHour;
0 M/ G! A+ F5 m/ S8 y2 v
#endif
& G& f* s; f7 S+ v! C
nHour--;
+ K1 N9 e. Y$ [1 _; n l& b
if( nHour < 0 ) nHour = 0;
, }! n9 K- L5 c- [6 [# ~9 J
if( nHour > 23 ) nHour = 23;
- V. O8 w' E6 E$ ~" [- K9 P8 i
* T5 _; ?$ s7 s4 ]/ y3 }: A9 r
//if( m_bFixedHour )
8 t# w$ F2 X3 d; G" u1 s# N
// nHour = m_nFixedHour, nMin = 0;
+ C% ^1 c6 h9 D3 X
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
) S7 Q5 y: E: s8 F
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
. ?( L' `) `* l( ~
& H* v$ p8 c) |* C0 Y" F' L
//m_lightColor = lightColorPrv;
5 ]! V, P% G0 l# B) j1 _2 f1 f: H
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
$ p' Q$ K2 D+ s( D( ?6 F& X
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
+ b* |! X& \ K5 H# R
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
, z3 ?) v( A, f
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
3 \- q/ f, }" r0 d' j. `" R( D
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
/ ]# x* T. s( x, Z V A
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
- t5 }" C4 G; r' `3 c; L
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
; g5 n. @) o2 C' H+ M
% w$ X: f- L" S+ ?3 z
// à??μ oˉè*
K$ ]! D0 `1 [0 A7 q
pLight->Diffuse.r = lightColorPrv.r1;
5 y2 ?/ h! C$ E2 ?4 S3 u1 a! |
pLight->Diffuse.g = lightColorPrv.g1;
, {3 F) I) D6 h1 E' w; W1 w
pLight->Diffuse.b = lightColorPrv.b1;
6 k z0 K0 F. U: W9 k- \+ O" Y; r/ |
// oˉè* ??à?
/ k" ~8 A! R; C, X: w9 B
pLight->Specular.r = 1.0f;
% N/ a4 _0 y. v) g3 s: x3 T9 S+ V
pLight->Specular.g = 1.0f;
2 h/ G7 _. F9 I+ f# X: g
pLight->Specular.b = 1.0f;
. o- e A e" q+ ~1 ~$ I( V, T
// àü?? oˉè*
3 Y2 ]/ S) O* e
pLight->Ambient.r = lightColorPrv.r2;
+ M! W5 j |: n+ I* a3 d
pLight->Ambient.g = lightColorPrv.g2;
. T3 K# l. g: Q: ^/ k
pLight->Ambient.b = lightColorPrv.b2;
6 ]7 M7 D" J0 P7 X: H5 G
, P. d- e" w' W( f. |. Q$ c: f2 ]
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
- \3 V, t2 @7 f! b& f9 y+ K
{
* w/ b* ^. D/ M* ^9 i5 i
pLight->Diffuse.r *= 0.6f;
& N. b6 r% l O" K: E9 `
pLight->Diffuse.g *= 0.6f;
- ^$ k$ v/ ^ w
pLight->Diffuse.b *= 0.6f;
9 _; @( k( h! U+ ?7 `7 v1 I
pLight->Ambient.r *= 0.7f;
1 x% T' R b6 |" u, c
pLight->Ambient.g *= 0.7f;
; H- c8 T+ M0 y/ r. q& `3 O. a
pLight->Ambient.b *= 0.7f;
. R% M/ w9 e/ u( T: h' v. s
}
) k" F3 r8 x6 d
4 E0 T: o3 U5 n: r& B v
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ w9 O" _+ k1 @4 g9 ^$ y6 t
if( g_pPlayer )
+ T! Q T& W+ W7 I5 n" _! V9 |
HookUpdateLight( pLight );
4 D, [3 c+ ~4 \8 i9 O
#endif
$ U$ T) S$ C/ _; U* q' d
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
J2 |0 @% d& j" h& d9 N( s% n
m7 B j5 y4 N" ]
#ifdef __YENV
0 ^$ H7 {" y e1 Z! ?1 k9 b
pLight->Diffuse.r *= 1.1f;
, Q# J1 U/ J9 S0 `2 ^
pLight->Diffuse.g *= 1.1f;
/ I: M( F1 P6 M% E
pLight->Diffuse.b *= 1.1f;
' Z& p/ `2 t$ ]
// oˉè* ??à?
, n% G* D' B6 U% k8 D, _' t
pLight->Specular.r = 2.0f;
* J/ N& o2 Q3 v+ m* |4 K6 D: G+ e: k
pLight->Specular.g = 2.0f;
8 x) L# b+ ` \0 }8 y1 e+ B
pLight->Specular.b = 2.0f;
5 p* I5 D( q1 L6 ?" f
// á?oˉ
7 j! C' r H) Y
pLight->Ambient.r *= 1.0f;
2 t4 |" c, v5 v1 `2 t
pLight->Ambient.g *= 1.0f;
. U" M+ ]3 n) Y0 Q
pLight->Ambient.b *= 1.0f;
7 z4 L4 m) q3 T: w
#else //__YENV
% S! N0 D+ w( L0 a; T6 }8 s
pLight->Diffuse.r *= 1.1f;
4 G4 ?" {" {7 \
pLight->Diffuse.g *= 1.1f;
8 Q% o: W; n) d; A. \0 Q x
pLight->Diffuse.b *= 1.1f;
# U) T6 x5 L4 o1 O: B& n0 G1 z
// oˉè* ??à?
$ o% t5 N( I: l
pLight->Specular.r = 2.0f;
}7 U4 v5 V5 a9 K9 x
pLight->Specular.g = 2.0f;
6 U. n( H, c8 |3 C4 u7 \
pLight->Specular.b = 2.0f;
* s v- L" q# b6 i: p3 H5 L
// á?oˉ
7 ]) @: a- l7 E! Y& W" `4 B2 T* K: N9 ]
pLight->Ambient.r *= 0.9f;
% l0 F# X2 \( u: S7 Z9 }* v3 i
pLight->Ambient.g *= 0.9f;
; b- K* r) Y& s1 f
pLight->Ambient.b *= 0.9f;
! K- o+ v, f" i0 S
#endif //__YENV
4 x6 M/ _/ N* n" H6 f/ F( B& U: ?
& H7 h2 v N+ w
memcpy( &m_light, pLight, sizeof( m_light ) );
8 N# s# e K; r+ h8 T6 h4 q l+ K
) [) X1 p7 v5 w" W( B" z
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
: |# I8 m1 n4 O8 |8 y/ u5 s
D3DXMATRIX matTemp;
4 J' ^5 D& S0 s# k
static const float CONS_VAL = 3.1415926f / 180.f;
$ D: Z5 Y) Y3 z7 Z |" H
# f4 w( ?, L& d- \2 }5 q
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
% z. C- V. v; v. q2 O7 I9 m3 N
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
1 ], G& F4 P- s6 ` e/ o: X& y
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
2 g% Z9 F4 Q& T* J3 u
pLight->Appear( m_pd3dDevice, TRUE );
0 f) @6 z4 q! A) R, y8 K; m4 X
, k9 ]1 T+ l. b: B9 ]" k
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 `3 N1 u7 O# c4 Z8 |( i1 \
// D3DXVec3Normalize(&(vecSun),&(vecSun));
- F0 W/ S9 S7 t4 k, Q, D
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ S8 ^- @- i) |. a+ y
0 S6 o* a; S9 z4 E2 [) u
DWORD dwR, dwG, dwB;
% S1 p: H% _2 y% w
dwR = (DWORD)( pLight->Ambient.r * 255 );
; k5 C3 ~+ o8 W' W, W5 G. c
dwG = (DWORD)( pLight->Ambient.g * 255 );
, `0 b4 n0 [$ g9 z0 S
dwB = (DWORD)( pLight->Ambient.b * 255 );
4 q! B% ^4 U( J
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
9 I9 m* ]; i* Z! x6 n8 ~1 \
}
- C6 t! ^( N2 B( `+ J
}
. D* l- q( N5 z4 Z2 L
+ o [. _" K$ Z' R, A
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
; e& R }! V8 i1 g0 N
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) );
7 P+ ?# x9 d: j. P4 ?1 q
::SetLight( bLight );
" G5 ]! z* i0 _7 u, O$ E
5 A1 S6 d+ p1 T
// ±ao? ?D?í???ó á¤à?
) b8 D- \$ I. V& G% k, `
m_pd3dDevice->SetMaterial( &m_baseMaterial );
, e b8 }8 B2 `- X" G
. o& n# O r/ u: e5 O: y2 T: e8 X
#endif // not WORLDSERVER
5 }2 s" Q( I+ y" y7 Y. y0 v1 ^, N
}
4 |9 N& m# k8 l
并更换
$ K# o5 f p% ~) x l/ | r+ `
Code:
2 B: `- `. i+ {! W( Q0 a; P
__FLYFF_INITPAGE_EXT
1 S9 q, F P2 R+ o% h
定义
; ?5 ^$ `% k! T, b. _' n
4 ?6 w9 H/ F1 K
$ I+ ?' c. s" m2 `* n1 X/ |; g
3 z* B% n. ?% B4 y1 H( ^7 G5 o H$ h5 c3 b
, V$ R9 o5 ^& `% s1 I4 ] W3 n
现在终于删除我的狗屁加速...
, F' {+ B5 c0 `3 p5 ~
8 d& S* z, Q# A* D) `5 i2 p
: B6 Y) b) P2 r, I, z
# K6 `" F% l" `9 q5 z
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2