飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
' }% j0 R" X$ }- U! ~
尾翼:
( E( g9 Z" e3 o" U+ o$ J) K* v: x
, l, P9 v8 w! q' c& |! n' M0 |3 K
代码:
! D$ t- `2 M) F& N9 \" D4 O0 F) q
CWndAutoFood::CWndAutoFood()
4 X1 i5 B$ N3 ^5 q
{
* C' s6 {! e _( C; Q C9 n
m_pItemElem = NULL;
% X& G- R$ V+ X3 C! j% C( z r
m_pTexture = NULL;
7 c; c; [. Z8 x
bStart = FALSE;
1 H/ C& h* k r8 ?- L+ C/ m5 i7 O
}
9 [+ c( M; `! I
; V5 f2 U- v) ?% M" E
CWndAutoFood::~CWndAutoFood()
( {, A. b* R \. e
{
- g) } _# S+ n: p
AfxMessageBox( "AutoFood ist gestorben
" );
: m- ] z) m! u5 q! h
}
1 Q6 `& a. y1 y: i5 q
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
+ W% V, |5 k+ v( u# t+ i
{
' {8 p8 i7 b0 p8 `; R1 Y
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
, H* ?0 x. N& B- Q3 }
}
A8 T7 S5 D+ v, R
: H3 J7 w% Z& d$ U1 B9 P6 \
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
4 f# S& {9 @$ u
{
# y" B0 M7 B5 B1 [
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 L: W, q3 m7 T
CRect rect = pWndCtrl->rect;
# | F6 r# T& N# q0 i
if( rect && rect.PtInRect( point ) )
4 u" O$ o" r1 Y- t) `
{
|( J3 f* n, H3 a
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
1 q# A) m6 D2 L/ c; p
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
9 t1 ?0 z/ m: r5 S/ `5 B+ ?
{
1 r6 U7 b. }4 R
if( m_pItemElem )
[3 O9 x$ z" j6 s# E% ^+ G$ R! r% W
{
( ^0 [# L+ T" G9 T
m_pItemElem = NULL;
. V O$ L; ?4 S3 D3 X7 ~9 O
}
5 A& n8 ]/ c1 p' P
m_pItemElem = pItemElem;
' h/ B( f! w& ^/ z. G- n% |
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
/ t5 b2 r$ Y% q5 L( X% o
}else{
8 I8 s, R% l3 Y% } {. ]
SetForbid( TRUE );
& z1 W2 ^8 s0 X8 ]
}
& C1 P# `6 [' C2 o% u0 I
}else{
/ ~: i: v& Z# @0 o2 |6 K1 U
SetForbid( TRUE );
/ m. l$ y l- i, Q1 O5 f( ?
}
- @# c7 R7 J8 V$ j( b
return TRUE;
1 `7 s$ b- C& h: l6 ? N
}
! ]/ ^ y' `3 X7 K
; S3 O) T; n# D3 \, D0 [
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
7 {& ~, a) ]6 W" U D1 B
{
& A% \% b m: ]
switch( nID )
/ n) }. b) s; D+ L1 z/ }2 h
{
+ }" B! n' n3 `; u
case WIDC_BUTTON3:
& h) l: k( x2 ?2 ^/ O0 i# |
{
# g# R3 A9 h% l; O
bStart = TRUE;
, r4 d# ~( O8 }+ L
break;
8 X* m; F' f6 K+ C' _7 O
}
& g$ K+ z2 w: ?- }% k
case WIDC_BUTTON4:
& y1 i, o/ z( q9 L8 L
{
, A; F* Q" T0 v3 c, _4 ]3 o, r+ w* L
bStart = FALSE;
3 d, T0 m+ a" a( n# l3 a1 j% T/ D. T
break;
! O4 {3 c( c5 G/ G! j& y
}
9 W, \! [: W1 W8 a' z6 [" `+ G
}
+ V2 T. ]' x7 a# a1 E
return CWndNeuz::OnChildNotify( message, nID, pLResult );
[% g/ h" A3 Q4 f: Z7 Q
}
e6 I) ?$ l& I* h4 {1 E1 @
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
3 s2 |+ N/ u) n( |4 Y
{
' d! A6 T, T* u3 Q/ ]
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
4 r6 Q9 |% T5 s$ l* f+ p& p+ ^) l
if( bStart || !m_pItemElem )
9 z! U7 a5 P+ y+ E5 E; o
{
& B- i$ F: `, q
pBtn->EnableWindow( FALSE );
* v5 ~0 p8 n: R1 U- j' A
}else
" @% N8 \) ]) N! K( m
pBtn->EnableWindow( TRUE );
/ T% ^# ~/ M3 |
if( m_pTexture )
$ l1 \9 w/ c- E7 U( D* f- |
{
7 u9 s+ A$ O. j0 B/ ^9 N7 G
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' {3 L& i! M9 K
if( wndCtrl && wndCtrl->rect )
, ~4 X6 D) c# a( { F
{
% g0 k$ g- v& Q7 n3 q1 I8 S* w
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
2 x7 y. S4 L1 S6 P
}
# T0 f5 `0 u8 o `
}
f1 f, j+ Q; F! y' D
}
) l) d- C( R0 D; W. h5 X
2 B( V* d) u# H2 I, j% V4 c" T; _
BOOL CWndAutoFood:
rocess()
* E! }. y" H3 \: N
{
" ]- A u5 H7 n* C1 N! {
if( bStart )
3 V$ {6 j# n4 ^0 r( Z
{
% I1 B. Q8 i" F1 H+ b8 _ v
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
3 i# d& x1 v% [$ @$ x3 Y( D& H
{
( M# s- {6 H B* ?6 }
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
P+ Q, {/ \6 J/ [8 O1 N! M
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
3 Y( H" h# C# M- M- w
}else{
1 A3 M! U, H& s/ b3 ?
bStart = FALSE;
5 B( j$ g. n; y1 U
m_pItemElem = NULL;
- |; R+ m7 X% N' F% v* H
}
. x0 C) z3 M, p) r8 L, F$ q. z
}
" n5 h2 X% h9 B9 p* m
return TRUE;
3 Q* M+ T5 E. F) l
}
3 L" S1 b- l" Y+ B1 Y) C# \! m
. d7 n/ O7 O s6 q3 e) ]* q
登录视频废话:
$ }' r1 Y; N) ?' ^1 Y( \; U; k1 t
尾翼:
. Z4 a& G7 b+ a0 o
$ t7 G4 y; C/ _) Q- {& y
代码:
; \5 ]( H6 G# [
2 V% @3 I+ U* d5 v
void CWorld::SetLight( BOOL bLight )
2 ~* z6 b. q0 l, a0 q
durch
8 E) V9 @, C6 T* ^3 a q7 {
Code:
6 \9 M( a$ i& c# D
void CWorld::SetLight( BOOL bLight )
: a. _% l% ^& x+ A9 m
{
* e% U7 p3 {3 i( X! {% @
//ACE("SetLight %d \n", bLight);
$ k+ I7 p4 u3 _
6 c2 `1 R1 l) o- r& c& O; E i
#ifndef __WORLDSERVER
* e7 C# m& r# J7 O
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
$ L) ?2 R$ ^4 m8 h
CLight* pLight = NULL;
3 M$ v8 I) B! m# w+ T; _
$ C( {! [1 f8 w( a# B0 r
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
# g" V6 Y a3 r0 `
: C+ M: }) z/ |& K1 T8 d [& p- O
pLight = GetLight( "direction" );
9 q7 ~8 `3 ?* H
. I2 F; `0 S3 z$ ^
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 h6 M8 y8 n5 @7 a# j O! q+ ]) ]
if( g_pPlayer ){
% V! X! f& Z1 W+ T
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
3 T) X2 Y6 b6 y6 {% m; h
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
, f0 j: x/ f2 G
{
+ j8 h7 i: R5 @# ^6 B) Y
if( pLight )
0 e2 Q3 e0 h# W5 y) W7 {& F
{
' X( l- y8 q' _* [7 U
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
. d( m0 m) V: o7 v( z
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
; J" U. i! z8 p4 f+ J
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
0 R5 ^ Y/ G6 P9 @ f1 s7 a
8 T- C# z! D Z7 o/ D
pLight->Specular.r = 2.0f;
8 V2 [0 Y$ r% ^7 ]/ z2 C7 C
pLight->Specular.g = 2.0f;
0 v( C1 k+ `" @) z S
pLight->Specular.b = 2.0f;
% L8 \1 j- M* e' Z. S; b
# F6 a0 y+ _. V- j6 ~3 z* T
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
* I5 E& j& E$ g) V6 F
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
5 V/ {! [" v) C- v
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ ]: x1 x* {- a
; c, a' |, ]. o5 v" S$ U* o5 i9 r' R
HookUpdateLight( pLight );
0 ~2 Q: Z4 L& M
1 D- ~& }6 S) Z
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 X% M% X, ?3 [
8 e& \1 R1 {9 L$ J. ~
pLight->Diffuse.r *= 1.2f;
6 R, t* a; m, e$ D3 m
pLight->Diffuse.g *= 1.2f;
$ v& T$ ]" ^: Y% X: t8 T
pLight->Diffuse.b *= 1.2f;
+ i, w6 j+ |2 j0 p* C* ~9 J
0 o4 A3 l3 ~; d% ^' \+ M
pLight->Ambient.r *= 0.8f;
D# j+ ?5 L* y# F" |9 h
pLight->Ambient.g *= 0.8f;
; w8 }7 h: b( `8 \4 O
pLight->Ambient.b *= 0.8f;
6 ~2 d- a4 c& U# v7 k
+ Q) f7 S) j4 H6 Y' b0 N# V5 [
memcpy( &m_light, pLight, sizeof( m_light ) );
}4 Z5 O" d+ r( }5 H! l. R
" p( E* g& {9 A/ ^) }# g
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* [: \8 k i; m8 c/ @9 Z
D3DXVec3Normalize(&(vecSun),&(vecSun));
6 O1 x3 A, }: @% y) {
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
0 ]# `8 D( ~2 @& E- x8 m# X
pLight->Appear( m_pd3dDevice, TRUE );
9 o: E3 T" E3 X; L
) s7 \7 l# T. _6 q5 I! e4 K" [
DWORD dwR, dwG, dwB;
1 u1 m; a) N9 o$ f- C
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 N& ~% ^0 z1 e2 x9 d! T. @* N& P
dwG = (DWORD)( pLight->Ambient.g * 255 );
* M8 }0 F: F4 O1 S5 R
dwB = (DWORD)( pLight->Ambient.b * 255 );
% n0 X4 F+ |: h4 I4 q: ^
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; L( L( V( d7 J$ Q
}
+ r/ z. B8 h7 w
}
) L9 T9 t; e/ d
}
, E% y8 W- j4 d0 M
else
) }& K; B% l$ Y( X; H0 O
#endif
( ]2 Y" w+ I w" _& v
" `/ T$ s# R5 e. o- |) e# c
if( m_bIsIndoor )
7 \# k) W' o, v3 J4 e$ \
{
& I1 z3 F! A# _( i, F
if( pLight )
# q( {. Q: p, e: x' N6 G, e
{
n0 n: d+ ~1 b: Y" U
// à??μ oˉè*
4 C E3 v) j! M; ^+ O g/ P' ^
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
1 H( W( o/ h8 ^# r% o' y/ ~- T
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
! R) w1 I7 D6 `/ _2 y8 H
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
: d5 @& a* r; C$ u! Y! ?
" i# B. I0 A" _* x
// oˉè* ??à?
7 M" M0 C4 }; [" W
pLight->Specular.r = 1.0f;
( b- i0 i( J/ }( m1 G+ [' p* j
pLight->Specular.g = 1.0f;
. I0 R% y: B! G0 x/ N
pLight->Specular.b = 1.0f;
7 ^/ E7 z! }" V7 } J
// àü?? oˉè*
1 v- D+ }$ o" t1 |' _: Q4 h; e* \0 u
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
& |; H/ x. z0 i0 Q: d e8 B
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
3 c! J: v% ^1 H+ n3 g
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
& c; }! ~1 E: M/ }0 D3 b
* ~4 ~* z) q$ T7 A% K; ]3 X$ f& X$ j
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# e+ R/ m* r L& f
{
) [/ {/ J8 m( S: l9 G2 H
pLight->Diffuse.r *= 0.6f;
5 X( X% n# ^) L# l, j
pLight->Diffuse.g *= 0.6f;
/ X1 D7 {5 S2 h1 Q: I
pLight->Diffuse.b *= 0.6f;
- s s8 S2 L! R: G" @ w6 B
pLight->Ambient.r *= 0.7f;
( T/ J! a7 K$ B% t D2 X
pLight->Ambient.g *= 0.7f;
6 ?3 U- z/ k; n: ~
pLight->Ambient.b *= 0.7f;
' S" ?9 `& w. d4 d
}
* c" o' D: M) y$ P% g* W4 `2 v* Q
9 U7 s2 n7 b2 N
#if __VER >= 15 // __BS_CHANGING_ENVIR
# j6 R% Q' T* P
if( g_pPlayer )
+ s3 P, r7 x3 A3 Q! a# p! ~2 }5 G
HookUpdateLight( pLight );
( j1 ]0 K: b1 D1 T# h& A8 x- k$ w
#endif
# m; D- X% H+ C/ \& u3 J2 x
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' R3 N( p1 S1 \. @& K% H5 }/ ?
# R3 n! R6 ]+ b. D8 D5 i
pLight->Diffuse.r += 0.1f;
0 D: a; R/ ^9 {/ g! k+ y* f
pLight->Diffuse.g += 0.1f;
: @; ^# p# V' p
pLight->Diffuse.b += 0.1f;
) V; k1 y7 f; Z; Z( n9 O! m8 @
// oˉè* ??à?
- t1 U+ Y" g6 y4 `- K
pLight->Specular.r = 2.0f;
`( e1 h7 U5 M
pLight->Specular.g = 2.0f;
- V. G! h0 _' ?* ]5 i/ A
pLight->Specular.b = 2.0f;
$ f; V& L7 F- V3 Y) X
// á?oˉ
2 y l. P0 }: U: [( V
pLight->Ambient.r *= 0.9f;
9 K9 N; }2 B! \* U4 e
pLight->Ambient.g *= 0.9f;
I! M2 A3 b% O/ I) p
pLight->Ambient.b *= 0.9f;
# v' U, c. G7 c8 ?3 ~: j. L3 U
4 {/ H }7 p2 L5 L5 _( y
memcpy( &m_light, pLight, sizeof( m_light ) );
; V) W4 ^8 z3 y& X" }) C f$ ~' _* s
% s2 ^& F& }+ X4 ^ y) O0 d2 E2 _
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
. \! ` y- ~! O, E0 Z
pLight->Appear( m_pd3dDevice, TRUE );
! N+ I! C+ S b$ Z0 W1 }4 F1 ]. z
4 l5 B# @5 X$ G0 Y% D7 P7 X
DWORD dwR, dwG, dwB;
& _" I' y5 S9 k4 k" i1 J
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 [8 b9 }0 M1 A% R; F6 l
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 G. D& a% _) F0 G
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 P# A) e0 K: o
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! Q _9 f W6 u+ ~7 J u
}
# t- i5 p. k: ?& e- T
}
! k! A# ]. F- u, T7 Q% v
else
+ S9 ]- J! g s9 I0 b' Y( O7 P. Y
{
1 _' K4 B5 o: V" Z7 t2 r) u7 A
if( pLight )
# X9 _: T8 y3 M8 @/ D
{
! U3 ]% N: V, f' P3 M% B4 m
6 H6 l! W0 K: Y6 G% K' q n' g
int nHour = 8, nMin = 0;
3 J8 `( R1 Q* i% o
#ifdef __CLIENT
4 f0 i4 C: N; a; U: t
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
. O! i# c! M% B9 c
nHour = g_GameTimer.m_nHour;
7 D7 F# E+ G3 s+ g
nMin = g_GameTimer.m_nMin ;
0 H- |4 M$ j* y# \
#else
1 Z6 N( v5 E& _
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
5 H; H8 ~/ u$ I
if( m_nLightType == 1 )
2 X% K) s2 v+ \' U
nHour = m_nLightHour;
% Y0 ^. v& r+ e! a
#endif
2 s. F6 `+ u# y& W
nHour--;
, Z0 Z1 C; i2 ~2 v2 e$ P% T8 r
if( nHour < 0 ) nHour = 0;
( |8 L1 ^ B. G: w8 A! d: f
if( nHour > 23 ) nHour = 23;
3 E: v4 a; E8 V' V+ h
' F; N9 Y5 X$ E2 U9 T- V
//if( m_bFixedHour )
/ c- |8 G$ E" l9 W3 x$ H
// nHour = m_nFixedHour, nMin = 0;
3 b- Q/ R2 P- {
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
- L1 \2 P8 s* Z" n( D
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
8 X0 {6 @& m& |5 ]/ t3 e
: p3 M: w0 }( k4 n
//m_lightColor = lightColorPrv;
$ n y$ k8 o4 k
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
' Y# C8 p. m$ U6 Y: p5 t, q- h4 m
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
/ p( ]( Q9 c" _! \
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
* D+ i. ^* r0 h* k& ]
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
% s/ V- ^* u( k# y
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
0 I: D. m( J+ m4 P
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
! j2 ]) ?2 {: G+ K/ E
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
8 e6 ^8 U3 \5 q2 g6 r4 ^2 x( U5 g
( `! S: A2 y8 _$ E x
// à??μ oˉè*
6 }2 J- e+ S0 _0 z( R' q H
pLight->Diffuse.r = lightColorPrv.r1;
* a- ?- Y6 H2 n8 F6 v0 G7 D
pLight->Diffuse.g = lightColorPrv.g1;
3 ^$ B( l! E; B- z2 j8 `
pLight->Diffuse.b = lightColorPrv.b1;
k/ {) l4 ~% h, D6 u. Y- ~; U& ?+ N
// oˉè* ??à?
) _5 l) s6 B7 m6 m( _
pLight->Specular.r = 1.0f;
. V( |6 L! Z1 Z$ |8 H# {# L3 @. D: `4 L! H
pLight->Specular.g = 1.0f;
1 `0 u0 k' m' g* G, f0 \6 W9 \
pLight->Specular.b = 1.0f;
# o- i! H2 I% o* ]
// àü?? oˉè*
7 v$ B* d4 [) f9 F; v
pLight->Ambient.r = lightColorPrv.r2;
, z5 P3 n8 _1 v8 ?) r
pLight->Ambient.g = lightColorPrv.g2;
5 d1 Q& p; f1 n7 u
pLight->Ambient.b = lightColorPrv.b2;
* O7 r2 B/ a2 Y) n3 s. V! H) M
* V% W6 W) [9 I& i9 \3 Q& @- {: p- t
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 E. g/ u, Z+ k8 K) C# s
{
+ G5 `# g1 `5 c M
pLight->Diffuse.r *= 0.6f;
! ~9 l8 W% ]# c
pLight->Diffuse.g *= 0.6f;
( d* T9 T, m! d# q# A* G
pLight->Diffuse.b *= 0.6f;
0 t! e9 O) x2 D) u% r/ t
pLight->Ambient.r *= 0.7f;
8 q, |4 [+ T5 S& m! i# U
pLight->Ambient.g *= 0.7f;
4 j( b" W G& ^/ A8 E
pLight->Ambient.b *= 0.7f;
5 |4 ~2 a2 s# v
}
- x" [' q* L6 H$ L
! ~# t4 d: i7 Y- y0 s; }1 o
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 {- j- j' T+ L- |# H$ K. `; g
if( g_pPlayer )
0 g8 U" V. w/ J8 d* N& p% L
HookUpdateLight( pLight );
% f9 r5 H; A2 C6 P+ C( x# t
#endif
) W: I l) H/ Q3 y8 V3 T
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. K& p! r) K2 r! D3 x, e
' E8 `1 a8 D9 ~ y7 Z8 t
#ifdef __YENV
V" L" {2 W5 Z- L$ j0 n
pLight->Diffuse.r *= 1.1f;
. i1 O) v' f# u: }" [2 J
pLight->Diffuse.g *= 1.1f;
: G9 f8 q6 P6 Y9 V
pLight->Diffuse.b *= 1.1f;
f }$ L9 t, A9 k1 \, ^0 K
// oˉè* ??à?
1 D2 n* |4 |) Y& F, F+ O
pLight->Specular.r = 2.0f;
' K8 f6 z) w$ e
pLight->Specular.g = 2.0f;
: T2 D1 _; Q) S) V @' P' U% M# {
pLight->Specular.b = 2.0f;
& \4 @- l4 m/ p0 k2 d S% E* b
// á?oˉ
/ I! T, S( T7 i3 `* `& G
pLight->Ambient.r *= 1.0f;
5 R; W; L+ _8 {
pLight->Ambient.g *= 1.0f;
# K+ C5 E {! P6 q1 D; k
pLight->Ambient.b *= 1.0f;
, |$ y0 ~/ m9 U' u# j
#else //__YENV
5 }$ {( P5 C# b- b0 W7 |
pLight->Diffuse.r *= 1.1f;
4 U8 w+ e3 o) p- M7 M8 W
pLight->Diffuse.g *= 1.1f;
1 z- `6 i+ L/ X V
pLight->Diffuse.b *= 1.1f;
q% K: s+ ? W4 I. E' F/ @
// oˉè* ??à?
! D3 X. R8 U" V/ I. Z5 [
pLight->Specular.r = 2.0f;
+ A& s6 J) `7 K) f, I
pLight->Specular.g = 2.0f;
. ?( V3 G7 V% `
pLight->Specular.b = 2.0f;
8 F# Q' z& I7 x `" `$ ~
// á?oˉ
3 @9 X( }% J& Z) [, b2 ~
pLight->Ambient.r *= 0.9f;
2 P" z) E2 L5 V: e3 X- X6 H
pLight->Ambient.g *= 0.9f;
3 x# J" f' U9 Y- m$ t9 G3 r
pLight->Ambient.b *= 0.9f;
4 h0 R+ G7 n4 f2 a
#endif //__YENV
6 j5 J2 p- Z2 S0 T: `4 C% |
& i! A/ [0 @ v: D7 v O
memcpy( &m_light, pLight, sizeof( m_light ) );
) _5 N% p, u$ E @
: A3 o! j0 v7 G- U5 i4 I6 ~* `
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
2 t3 t% L. L% Q; z
D3DXMATRIX matTemp;
' E! K( n- }3 H0 X
static const float CONS_VAL = 3.1415926f / 180.f;
n! T& Q( }) [4 A
& R8 y" a) O1 r; f
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
/ N: A' O% F& \' S
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
7 |: l& c+ d3 D9 g+ ?5 D5 [9 Q. Z7 C
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
f- C4 c5 A/ G; D& S8 B/ U( {
pLight->Appear( m_pd3dDevice, TRUE );
: ]2 Z# ^* [' n
& F8 q6 a, x/ ^3 n1 W1 ^
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
! w0 }7 _" ^/ ]' E& ~
// D3DXVec3Normalize(&(vecSun),&(vecSun));
) G) g% j( @, b# b3 y
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
6 \: K7 Y, Y* X5 \: \$ C
. u5 c( G' f& r7 X! ]1 r: O% M* M' h. {
DWORD dwR, dwG, dwB;
3 m7 f( G# U" D5 P% o4 X: _. L
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 ^3 h4 d4 Q0 b4 b
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 p$ o3 _- ]$ s
dwB = (DWORD)( pLight->Ambient.b * 255 );
' Y/ G1 P* k' z2 ?5 ~8 W4 p
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 l: v4 E$ d+ z/ c4 X
}
5 d# I0 m/ q7 u7 X Y6 _
}
& l# H4 m; X% J, E) O
$ ~+ L [* n. b& B% Q
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
0 @4 y( L. |$ M0 B( K* C% M3 P9 g
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) );
, b7 j. i! a4 @) ?6 f
::SetLight( bLight );
) D s. i) {" p4 R' K. S, u
$ {; [. ^0 Y% W: h2 r/ h
// ±ao? ?D?í???ó á¤à?
, o$ T) D6 g+ B e
m_pd3dDevice->SetMaterial( &m_baseMaterial );
6 L$ m" L! }' f z* D5 |5 r% X
2 m V: a7 _1 W6 @4 [
#endif // not WORLDSERVER
0 s) Q$ ^, B8 y/ G% D' }; t
}
( S* n. p3 }8 \! H+ r% l: I' U
并更换
2 c) a( c2 A, M. J" U, [
Code:
6 K* U. b4 \; f: x$ }) l8 q: G
__FLYFF_INITPAGE_EXT
9 N$ l. P/ z& m
定义
' D6 ^6 |. L3 E# X7 i
/ d0 ~5 J% r# X5 r
& k9 h' q. a# C% r; N0 i6 b
' T9 j. {2 C, l, | o; n1 z) ^
% t5 h+ d+ Z2 j% F- D
现在终于删除我的狗屁加速...
2 l0 x' }4 B j0 e h, K" v- ?
2 i* Y6 n7 L( i
! q" ]' q. o. h- p2 |
+ ^" M/ q6 d1 b+ D8 L( ?, ~
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2