飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
' Q" C+ W7 x# G
尾翼:
$ r0 D/ I8 E! U3 [$ E8 f o+ L2 k a% o
4 _( |$ }2 J+ U+ q0 U( G+ ]
代码:
; Y% H) D( @* |- j6 n
CWndAutoFood::CWndAutoFood()
- T% A' I9 Y+ V7 `" k8 g
{
6 P+ c! G d1 Z2 C' n
m_pItemElem = NULL;
% n g& r# u, O0 `! U
m_pTexture = NULL;
7 N' d8 g) m' `4 i2 O
bStart = FALSE;
' u# G# l/ @/ j
}
4 }8 h5 _9 \( ^9 x
t2 O" j& v" W" }) M2 C& |9 M
CWndAutoFood::~CWndAutoFood()
9 V1 u* \+ f. r; |' J/ _
{
% C+ m# H$ S$ O+ x2 u' }
AfxMessageBox( "AutoFood ist gestorben
" );
. l+ N8 [" F) J$ d4 K" m
}
3 Q3 d. _' W# }: D
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
2 Z5 o+ e* A+ d# N
{
2 J- u9 B: \! h
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
) o# I$ P& ~; _
}
+ K' u2 {5 ^ s3 l
( S8 U, e3 q* n6 R
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
( j5 m% J( Q; m
{
8 ~8 p9 K( }1 t3 i
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
; V: A' Y1 x k. x4 A: b
CRect rect = pWndCtrl->rect;
( G1 _: C/ V+ t D! Z) X! t
if( rect && rect.PtInRect( point ) )
& W0 f( j8 n# u7 k
{
* E; U' F4 q+ i; u* e" X2 Y, d
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
7 n* K( G5 I: v4 v
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
. e2 M ?( q7 m# o' S4 E6 d
{
) Y8 [# H, j0 j& K) @
if( m_pItemElem )
( {6 b4 v! w) v: Z" a7 L/ |
{
2 i& n9 F5 g2 v" J( V
m_pItemElem = NULL;
: M" ]- w$ { W' ?5 d
}
4 H+ }, D8 D) G! U8 n: I
m_pItemElem = pItemElem;
4 o# c3 A" x0 d; H9 C
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
5 O6 U4 m+ t! L& z& P8 v d1 B
}else{
8 S/ j& s6 A" E+ {- S5 o% _/ V
SetForbid( TRUE );
y- y5 P0 A+ \; Q9 c) q4 @) k' Y
}
+ i$ v# \6 |9 k/ k3 V& z6 l) B* {1 h
}else{
9 R' y; |, N2 f0 X( D
SetForbid( TRUE );
: L7 ]0 ^( e2 n% F' e2 _) g
}
3 a* e0 ~6 W3 h2 \+ ] l
return TRUE;
2 _' c: S# T9 p$ z4 ^# g% m
}
) n& b3 d$ N- g3 T% N+ F! J
/ ~% s2 E" v' m! a
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
7 d; K: N9 k* Y2 [6 i
{
E/ ?1 y( ]; t) r* `
switch( nID )
. K0 \# t S( t# U% _6 b7 e# b& n |) f
{
, n3 I: Z" G. n, y3 ~6 f
case WIDC_BUTTON3:
/ g) Y5 C* T0 B" Q y4 U
{
) j7 v: q( W% u/ p- N0 a
bStart = TRUE;
+ d: u0 @9 ^; A- m
break;
8 z2 a( \- T: M; j
}
# N; ~% a% F$ u" I+ |
case WIDC_BUTTON4:
# e/ r7 x7 r+ Y: c+ U8 b
{
; V% d# f0 }) K+ ?7 ?, ~# J, v% {
bStart = FALSE;
% U( X! L0 Y5 R# z' |& h& a* s
break;
4 F2 u0 W& ?0 u2 f
}
7 g2 H! A) U W) q1 t) k
}
1 T* _* r2 M5 k& H
return CWndNeuz::OnChildNotify( message, nID, pLResult );
: b" Y7 g7 i x8 q
}
% e* D1 I& C% K' v( x e
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
6 X u" Z8 O8 Y
{
, p8 E$ O: R% ?0 E) G) q
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
" s6 S+ G$ W0 ^; J" _
if( bStart || !m_pItemElem )
9 z4 r- j4 p7 r$ a" R$ |
{
# ^/ j& e, Z* l7 L
pBtn->EnableWindow( FALSE );
4 `% w, P. o! D! Z! \' g
}else
3 w" d" p! F% ?3 {
pBtn->EnableWindow( TRUE );
+ ~$ ]9 j6 k3 h! D0 M
if( m_pTexture )
. |7 S; x* [* g. F
{
2 U$ `6 k& B5 M+ Z( V
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
L6 P- h! g5 b( i
if( wndCtrl && wndCtrl->rect )
7 d5 x$ l! \. U# ]
{
9 ?$ }$ J) e) X1 W1 A
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
) ~1 v2 n C9 G( \' }
}
$ f+ M7 g' j+ Y# Z3 W8 b' `8 j
}
' z1 r ~2 E0 f$ ^5 I1 ~. B
}
7 M) `* G8 p; @2 R, u
9 B5 `9 T; I# P
BOOL CWndAutoFood:
rocess()
: [* F2 @( j! m& w a& q
{
4 U4 Q' G R2 H5 m
if( bStart )
0 B7 V( \/ [. }3 u' b
{
p9 \8 m: P2 F3 j4 H
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
" S4 H5 b4 s; V5 Y$ T
{
, X: |5 |- b0 P" 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() )
7 Z7 i6 _4 \, P) t5 F7 Q2 [
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
2 L$ Y, N! p3 N& V! M
}else{
5 k ?" r$ V6 r1 c+ a
bStart = FALSE;
- J. X# ~; p4 \* a" d
m_pItemElem = NULL;
4 B5 S+ ^( h& X9 s+ g2 v. b6 _1 h
}
6 w, s k0 M* C0 n* R& P9 W: ^1 |
}
/ N$ [* h4 j# ~+ o' Y
return TRUE;
5 j7 i+ s) J) Z2 H% X
}
( u3 w* \9 n) G( B/ D8 [& t
0 P# L. L3 B& L
登录视频废话:
5 e. G/ Z6 j- P' ~" n7 t
尾翼:
, e/ ^1 `% k, q# A) z2 M A; V
3 u) q! x2 c& H
代码:
B u3 s- w& a( L7 M+ l
# A; ^! y5 y8 }
void CWorld::SetLight( BOOL bLight )
5 ]$ E% @/ ~! L* a) J9 g+ A8 |+ e8 h
durch
L2 N9 q" S& ?3 y/ u1 ^8 V! A {
Code:
! `% K) E p! ?6 ]3 D1 K- d
void CWorld::SetLight( BOOL bLight )
6 {$ C1 K: A- [3 _
{
7 r( V% A7 x9 t( U5 [$ n% ~) j
//ACE("SetLight %d \n", bLight);
5 X# T, i, t8 n Z5 @1 m( S4 \+ U
, h* d9 E$ V& c3 y- e
#ifndef __WORLDSERVER
! w0 o6 Z( o \1 m1 Q# Q
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
, h3 g- l" P1 |6 @
CLight* pLight = NULL;
' |+ y9 [4 G: j( J
6 K o8 N9 i) V: j- Q9 c
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
+ z2 ^) f( A) c$ Z& |
4 S4 x* E1 B/ v5 Y
pLight = GetLight( "direction" );
: c4 w% p- A9 k4 i( ^7 n
2 l- B4 p! O5 ?0 V1 O
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ z' c1 L8 N5 d% t6 J4 S
if( g_pPlayer ){
3 |/ C0 L$ `" K d# ~
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
0 P* G! A0 N1 H! F
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
, [" Z: }: x3 Q; k0 j4 f
{
" z$ f+ h: |0 i1 d/ G, U
if( pLight )
' L7 @9 a# q* K u' H$ f
{
8 j- l4 b* `0 d/ o
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
5 e+ z( S& z0 l0 G
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
) c' u# T7 e; }9 W+ P8 [# `
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
/ Y5 E/ Y' w9 W9 o& }5 R2 r7 v
# K; b$ V/ ?& G+ j
pLight->Specular.r = 2.0f;
8 E$ u! C$ L, b
pLight->Specular.g = 2.0f;
8 ^; Q* i) c1 i! j9 {
pLight->Specular.b = 2.0f;
/ d) z% p+ E' M& ~# s
6 V7 ~+ }; E7 P: m
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
' L q5 ]2 o! X
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
5 \! c" n0 O7 G# ?5 U9 ?+ ~
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
* P0 w- [7 _4 S) K+ C7 G+ @# w% R1 ~; f
+ n6 E) }) E; j' A
HookUpdateLight( pLight );
$ J# F9 ]3 p4 _+ }* ^2 }8 e
1 ~6 ?! F% U; ?! T& X
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ t; ]; l6 Y+ `7 f
( q7 u6 p0 o `6 {; U) ]
pLight->Diffuse.r *= 1.2f;
2 `8 A& H1 R, w- v5 t1 P U9 R* H
pLight->Diffuse.g *= 1.2f;
8 `" g6 y- J. ~
pLight->Diffuse.b *= 1.2f;
1 ]4 I1 B7 v* Y4 e3 Y& C9 t8 F
1 p) k8 v% \: e) X5 D) y ?" `
pLight->Ambient.r *= 0.8f;
, ~% @+ V9 X) J# o9 u' d
pLight->Ambient.g *= 0.8f;
8 g/ p7 M8 b+ H, X5 e" {9 A# U$ k; A
pLight->Ambient.b *= 0.8f;
0 y `" ]! c4 J9 _0 P: S
, m; y, X! o( Y/ i( j2 V2 D1 C- z
memcpy( &m_light, pLight, sizeof( m_light ) );
9 }5 e. p+ n1 T! C, @1 h6 \+ v
& j- J/ a- P$ s
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
8 Q" j0 ?% O- c+ a$ w
D3DXVec3Normalize(&(vecSun),&(vecSun));
5 x) W; K6 Y9 C
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
4 k3 k3 h% O7 D3 u
pLight->Appear( m_pd3dDevice, TRUE );
' l" B i: e4 d1 d4 F E B) z
+ C9 }9 a( ~* a" }4 T+ k, A- \
DWORD dwR, dwG, dwB;
7 d- y# A5 D* j: W2 c: D0 [% ^
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ x V; N3 }5 L" M9 l
dwG = (DWORD)( pLight->Ambient.g * 255 );
( r" ^1 I5 z. L9 R& H; [
dwB = (DWORD)( pLight->Ambient.b * 255 );
, e5 I, N0 ^% i1 T, P6 O% o: r
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: f D& Z/ l. J0 C; I/ C
}
% y+ p( `. V5 C
}
6 i7 f& _9 T3 f
}
" C1 C5 k/ J8 i4 q0 O
else
. H5 y+ W' W0 v# _, ~5 j
#endif
$ o8 w4 ]1 G& t: O; m+ I* q
1 M* m/ o; h8 Q3 H
if( m_bIsIndoor )
6 e' ]9 z& U( x# j. r
{
7 T3 V$ N9 s" Z5 M& ?# `" H1 O+ ]( I
if( pLight )
% {- f5 j) S/ S5 n/ R8 R8 o! |
{
) K9 p* h- J: w% n. [
// à??μ oˉè*
# I& E9 V2 {! C# c+ N; D
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
9 f* i; |% x- t/ |0 H' G
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
4 x: N8 K7 R/ O% q; d
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
9 w; I' y6 |2 @# F
7 O2 i' J: ^* Y! u* e5 J0 B/ S
// oˉè* ??à?
; ^% p# t8 T: i& u1 w1 E
pLight->Specular.r = 1.0f;
& C1 W; G3 G6 e+ ?
pLight->Specular.g = 1.0f;
3 A2 y i- l, ^4 R5 y& z
pLight->Specular.b = 1.0f;
e/ P' O9 c6 r; Q. k1 f; C% Y
// àü?? oˉè*
& |5 C# F3 c3 w
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
: D7 n) F+ Q0 ~" s5 G1 N- z
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
$ E- ~ }5 O/ m: U, T
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
$ A, x# ]. X3 j
1 {9 ]% D3 N5 u; N; C* R& p
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 L2 F( M& g& G8 y* P
{
! Y) _3 }3 Z% _' |' t
pLight->Diffuse.r *= 0.6f;
- D/ l) E, u0 _8 i1 [- _/ ]0 H
pLight->Diffuse.g *= 0.6f;
4 |8 U$ `* u. B# m; S6 ^9 M0 n/ D: Z
pLight->Diffuse.b *= 0.6f;
1 G P& J% _- R
pLight->Ambient.r *= 0.7f;
1 ]+ {0 g5 {4 I/ s+ |
pLight->Ambient.g *= 0.7f;
, \8 q5 V/ n+ y& |0 Z
pLight->Ambient.b *= 0.7f;
& b2 ?; i) g, ]8 L$ ~% w j
}
0 n( i6 L$ D6 d7 Y9 `; ?
( Q. w2 b" X2 a8 ?
#if __VER >= 15 // __BS_CHANGING_ENVIR
* E8 R9 v0 A. ] M6 `7 j1 z' _
if( g_pPlayer )
9 o* Y5 [+ U2 m
HookUpdateLight( pLight );
" s0 `9 X( A8 ]3 i5 s* X/ L
#endif
* |9 v) A& E! r- Z7 F# b* {
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 W2 p* g V" ^
$ a8 `5 A7 y9 S# h& c
pLight->Diffuse.r += 0.1f;
+ l) p' h9 N. I) m) x O4 N
pLight->Diffuse.g += 0.1f;
, j9 l* {: C, j3 t
pLight->Diffuse.b += 0.1f;
& g0 S1 N: t! o+ v9 u/ h
// oˉè* ??à?
' ^4 R8 v8 y1 A) x, N
pLight->Specular.r = 2.0f;
: |1 J) Y1 O$ g! k; K
pLight->Specular.g = 2.0f;
. Z, }4 E8 [9 O# S5 t( M4 S- W
pLight->Specular.b = 2.0f;
: n0 T/ t9 d6 L- X4 {5 Q
// á?oˉ
- e$ W5 k" S7 r3 _) J& }
pLight->Ambient.r *= 0.9f;
( s" \( T' u! p( M' k+ |: E
pLight->Ambient.g *= 0.9f;
2 X5 j( ~" v4 B
pLight->Ambient.b *= 0.9f;
; {5 Z3 P. Q3 x$ Q4 H2 G5 W9 V
* F& {% Z$ t9 T8 i2 G+ m0 L4 Z
memcpy( &m_light, pLight, sizeof( m_light ) );
- q( Y1 H/ f( M6 @. O
7 L& `, c7 Y& H. `0 G: X( j
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
1 B* S* p8 ^: I: b% M
pLight->Appear( m_pd3dDevice, TRUE );
- }3 S6 H. w- o U: L3 }- @& N( ^
$ b) ^; V0 g; i
DWORD dwR, dwG, dwB;
- f( W; j5 w9 T( d" Z9 J
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 ]( U0 p- T4 n5 S f1 e0 E
dwG = (DWORD)( pLight->Ambient.g * 255 );
- T. G' `- ^" K* S& |+ M
dwB = (DWORD)( pLight->Ambient.b * 255 );
1 D# A- i/ o! r
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 K6 L0 O- W5 N8 l) W' A; \4 o3 S
}
9 ^# Z$ ^' a. p$ G3 h! o+ c
}
8 N+ N$ |1 W7 Q7 t/ a: d j7 t- H
else
+ D m8 H+ w( d. i5 a
{
* y: l) ?$ |/ W' O+ \' H" R; q
if( pLight )
! U: a! x( C. Z: s
{
5 Q% K" s& Q8 \& `
! o8 D6 `. j. I) q# |
int nHour = 8, nMin = 0;
5 }8 p& e' l& z/ t5 o- b, d1 ]
#ifdef __CLIENT
' ^1 T& a2 K& W E0 o% |5 m; {' w
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
" S; q% B9 E2 a4 {; p4 i: V* z
nHour = g_GameTimer.m_nHour;
! g, A; B) ?$ l+ B- P
nMin = g_GameTimer.m_nMin ;
& |3 e8 j% K4 l3 I' [
#else
0 E5 s# l" }' I$ U8 s9 v2 U; t: {4 w! u
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
& S) \3 S+ F* n' \
if( m_nLightType == 1 )
j! X; O( t3 L) c
nHour = m_nLightHour;
7 Z! g7 b& f% ~0 k
#endif
& V& v2 I. j, D! y
nHour--;
; Y# ], S! `. L. @ @3 R
if( nHour < 0 ) nHour = 0;
8 }! m/ E$ e5 C& y% ~1 O
if( nHour > 23 ) nHour = 23;
( @. d5 N) e. x" F; d: @8 X
* r. L7 o0 t; f5 b3 V+ t! l5 t
//if( m_bFixedHour )
5 J0 m% K f: I
// nHour = m_nFixedHour, nMin = 0;
% i2 }. v) Y4 ~* D
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
. B# T% H: F9 P- _8 C3 e9 A: y0 e# G
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
0 _5 K6 W' x7 b, E
. D7 H$ O/ Z# I* P+ J
//m_lightColor = lightColorPrv;
0 {$ i+ r% n* J# E
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
" ~+ J2 q& a6 K; N6 k
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
! n; c y4 e. ~" T6 m+ \
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
' Z# \7 s1 t* a8 T" M
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
) i& X# c0 u: r
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
/ m% R1 Z; e' F# `9 X( R; n
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
1 @8 ~0 g# `1 {4 g
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
7 {# F- o: a5 k; N; w8 S# z+ g8 P
/ v$ P2 i! W( T; y
// à??μ oˉè*
/ U, o2 G, a; W5 g
pLight->Diffuse.r = lightColorPrv.r1;
0 l2 S6 J+ Q/ u8 V8 r
pLight->Diffuse.g = lightColorPrv.g1;
/ e- S. u0 G) w4 S$ G3 d) A3 o' z; }
pLight->Diffuse.b = lightColorPrv.b1;
* [ }: I2 D6 r' C9 d
// oˉè* ??à?
1 \4 H' Q1 i4 e( s# F0 @* r# M
pLight->Specular.r = 1.0f;
1 P I5 E6 E: H1 }' s
pLight->Specular.g = 1.0f;
3 [: b& V" _! t ` P1 T; F" e
pLight->Specular.b = 1.0f;
5 [5 w, P3 l- | `
// àü?? oˉè*
$ s2 A6 U( p6 m" E; W
pLight->Ambient.r = lightColorPrv.r2;
) }% Z. p$ u. l' m
pLight->Ambient.g = lightColorPrv.g2;
0 F( n$ ~8 _+ Q
pLight->Ambient.b = lightColorPrv.b2;
1 i2 W$ |# _2 l3 u0 X+ q
2 {- u1 X e7 h+ H9 n5 d
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 x- Y! Q9 H- U$ x- z0 j5 k }2 W% ?
{
( ]! [' c3 {. D4 S! r; D$ O9 T
pLight->Diffuse.r *= 0.6f;
' [9 _8 U7 m! N: x4 r
pLight->Diffuse.g *= 0.6f;
- A! k4 r. ^7 @' s1 T' Y' m
pLight->Diffuse.b *= 0.6f;
/ U4 W9 a6 V& Y9 F0 @& a3 }
pLight->Ambient.r *= 0.7f;
: w5 U" F! B9 h8 h6 F2 V
pLight->Ambient.g *= 0.7f;
4 A7 V* g: v0 G% |
pLight->Ambient.b *= 0.7f;
9 @0 Z4 D/ L i6 P( p- w
}
- X. C% e9 k( L" h7 v7 x, {4 D
# e( @8 \0 r; ]1 ]# \
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ E I4 z: U( f( z7 Z4 Z" N Y
if( g_pPlayer )
! p' ~0 F3 {, q! U: @( _0 H
HookUpdateLight( pLight );
B) x( S& h: z+ A5 H5 o+ K
#endif
3 u; N) F$ T6 S' T. P& g
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 X/ b/ D D3 v; [) k0 K& r
7 j9 {. A; Y% D/ g) R) O% t
#ifdef __YENV
5 e: A3 j% Z3 _
pLight->Diffuse.r *= 1.1f;
# ?2 b' Y5 g1 x( W- K5 ?
pLight->Diffuse.g *= 1.1f;
' C6 F8 o$ x* C0 g) h
pLight->Diffuse.b *= 1.1f;
+ E: _. p7 E' ~
// oˉè* ??à?
) {& L" ~1 G5 C* c! U4 V
pLight->Specular.r = 2.0f;
- X; E# ~# w; X, x5 o
pLight->Specular.g = 2.0f;
: P6 Z( @2 k2 c' L/ M
pLight->Specular.b = 2.0f;
) O1 D2 s5 c: v; s
// á?oˉ
! W2 \. H! }+ E: c) V7 f
pLight->Ambient.r *= 1.0f;
/ V8 V" e! I! x! K& M" p' l
pLight->Ambient.g *= 1.0f;
9 D! B% Q( ?6 H9 K0 m8 ^) J
pLight->Ambient.b *= 1.0f;
& A& V( @( {, Y% s0 f, e
#else //__YENV
$ j6 s8 J+ X% D1 Y
pLight->Diffuse.r *= 1.1f;
6 j3 t3 q- n9 N: H
pLight->Diffuse.g *= 1.1f;
) F+ G3 c# @; n' |, F, W
pLight->Diffuse.b *= 1.1f;
4 p6 N) L, r2 E
// oˉè* ??à?
7 K+ X1 z" q* @: `
pLight->Specular.r = 2.0f;
4 l' ^0 j. ^, I5 U% e
pLight->Specular.g = 2.0f;
/ H) D, N' T K
pLight->Specular.b = 2.0f;
# s, x& B" H; T8 `4 J, }. v
// á?oˉ
5 A& {$ A2 ~3 o) [
pLight->Ambient.r *= 0.9f;
y" W7 |; U8 \" {7 @# H0 j
pLight->Ambient.g *= 0.9f;
' k+ { p# h% B$ ~6 |! C
pLight->Ambient.b *= 0.9f;
6 j* o8 C' g/ ~" n( H4 p9 n
#endif //__YENV
, \3 t/ T0 v% o ~8 v* Z$ Q
7 g6 V& x: o+ z! ^3 g' A; F
memcpy( &m_light, pLight, sizeof( m_light ) );
5 h& f- P4 k+ C. X6 h9 f
- d6 x9 k; ^3 T+ |2 f" v0 S
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
2 P6 F7 t1 B6 v9 U* c% W
D3DXMATRIX matTemp;
7 G+ T! J+ z9 n3 }$ \6 i
static const float CONS_VAL = 3.1415926f / 180.f;
5 c: e, P3 \, i! Q& z
, e* T8 ?8 f$ @- ]$ `
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
; s) I9 D& \2 w" x
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
# C U2 W& t: q3 U4 M# q
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
% w1 y# S" M1 ? u1 h }$ J3 y
pLight->Appear( m_pd3dDevice, TRUE );
! ?0 ^8 o$ [* f
7 [5 }6 l' w+ x1 }: C
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
, s8 {) w; y& T l4 g6 Z0 ?5 a
// D3DXVec3Normalize(&(vecSun),&(vecSun));
5 g& |% }' B: t H9 g7 Q
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
0 E; ]7 P# @: V; D* @$ l8 G5 z1 U& C
4 N' f4 N8 ]- [6 C
DWORD dwR, dwG, dwB;
7 v5 L# a4 f+ A" N" r
dwR = (DWORD)( pLight->Ambient.r * 255 );
% ~& j5 A! @1 q2 X
dwG = (DWORD)( pLight->Ambient.g * 255 );
* f7 z& Q7 x. O
dwB = (DWORD)( pLight->Ambient.b * 255 );
. ?, b: M9 j' A. D+ Y& w5 B' u4 a6 ?6 `
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: n8 Y5 W+ T' _) l6 Q9 v3 B
}
3 E; l0 }$ F- Y3 k: i7 k
}
; ?. X. L/ B- j+ r4 {6 K$ K* d3 b
: O& f; U! m' S* a6 q3 E
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" y1 S2 U9 J( X6 `7 P0 i
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) );
1 j$ n, H! b z) g0 r0 T
::SetLight( bLight );
7 V4 M' W8 D2 O1 q
* h/ W7 ]& a& A- r5 I
// ±ao? ?D?í???ó á¤à?
( i O6 A b# T5 o; T/ h# R3 b
m_pd3dDevice->SetMaterial( &m_baseMaterial );
3 F: t: B, }/ R5 T
% V2 ^, c( @9 l
#endif // not WORLDSERVER
4 H% w( E4 [9 q
}
( I" S, E j# W0 d X4 W# e
并更换
7 } X0 K: u6 w
Code:
& K: j- w! {5 n$ E* o
__FLYFF_INITPAGE_EXT
9 j0 k5 A- u' X! D* l9 L, u$ V) D
定义
2 _( m" w! j# V7 b/ n& _
8 l. t& S% L, L
) D' z. I$ N H+ h* B' }
* s% G5 E) F' S/ c
9 g' p5 C! J0 d2 ~ b
现在终于删除我的狗屁加速...
! K" {* w9 {8 Q
1 m7 w7 k# ~' \5 s4 M6 i
$ B9 x7 W* Q, W' k/ I
; i3 C3 z" q! P9 s8 O
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2