飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
) H7 m& w0 x1 d. ?5 E _4 C
尾翼:
% `4 |% L& n! _$ k" W9 i
& ~% i4 b5 r0 g4 y: S
代码:
! g" x7 f8 \8 M6 U! ]5 k
CWndAutoFood::CWndAutoFood()
7 D& `5 R+ b5 z/ [8 I& N
{
4 n6 u) e" x5 d j9 k) I/ \2 f
m_pItemElem = NULL;
: b% b% n& H0 t* r$ B5 n
m_pTexture = NULL;
) y$ y0 D5 V/ c$ B: C
bStart = FALSE;
6 m+ ?, P5 J8 B I- M1 Y
}
/ e4 Z4 c6 q7 z3 p* T, P0 p/ a
k6 R; V) z3 K. e9 M
CWndAutoFood::~CWndAutoFood()
) c. T' T, |2 Z( E& o( }. o! I
{
0 |6 E( g7 {# }$ J% w
AfxMessageBox( "AutoFood ist gestorben
" );
8 ~: j: N5 \8 l
}
3 h# w$ u6 ?. T6 y C, Q8 I
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
. u: w% e- \0 z h
{
( ]# f0 }' b; ~/ e. H3 j( c! {
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
5 Y Q. `# v# G. `8 Q9 t
}
. v: d G' r p& d
! Z; b3 ^' ?& ~; O" M
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
" Q5 R7 z7 H1 [3 W& G9 Y1 |
{
$ `7 [, N- I2 r4 R
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
) ?3 y, ~0 P4 B/ m
CRect rect = pWndCtrl->rect;
- h: P6 N" }6 ^9 c0 |
if( rect && rect.PtInRect( point ) )
, \9 n% @1 P: }2 l* A
{
1 G4 x- Z2 g- U, A5 v* q! u* X! K
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
2 {7 K# v" e+ t" a6 ?$ l+ A
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
( Z& u2 i! q, A1 p. {
{
1 b, z* R. `" b' G# S2 r: [
if( m_pItemElem )
7 X c+ l2 Q; U: e- m2 P8 h" E( U
{
. s7 a2 ~5 m" m3 e! ]8 p9 A
m_pItemElem = NULL;
( b; e$ e$ U0 \0 q% y9 ^
}
0 t* j; k3 q5 ~% ~+ D
m_pItemElem = pItemElem;
4 T! E# k+ Y5 c8 q+ ~
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
* v: | }" ` N- G2 ~& G
}else{
( r* V- }" z1 e! C
SetForbid( TRUE );
; @- C! O7 n/ V3 N
}
/ r0 n/ n" o+ C& U Y& l5 }
}else{
. ~* o$ I. u& y' ] P. ]; y
SetForbid( TRUE );
: M; H/ Q2 `8 u- x
}
' C) A1 [' A7 W( Y, D+ x) f
return TRUE;
9 V( M/ W2 E5 r' }4 X1 B. k# p- H
}
7 S5 S1 p& K5 Z- k" m9 U
9 e4 r( i" U0 |% f# W
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
+ ], w: k1 D# Q/ a
{
% @' C/ d$ q: @* L6 J, ?0 ^5 h9 g
switch( nID )
. P8 C0 L9 f8 |7 ?
{
1 ~" h/ j* w3 Y; |& t
case WIDC_BUTTON3:
* a. I7 d% Y4 Q- M- Z
{
f# N! e4 t( \$ G2 c0 W% F {1 L
bStart = TRUE;
( J# A/ L8 X5 o$ S$ ]8 F
break;
2 G6 D. e; R# S! W6 W2 W' k: m
}
' Y" F4 N$ d/ D) ^8 A8 I
case WIDC_BUTTON4:
' j# K- k0 Y2 X) d8 v* B
{
/ `+ L) I/ Z, O9 B" @) u
bStart = FALSE;
# C, _1 e2 m6 @+ B9 g' ^
break;
, F% E9 J: R4 O. I, X
}
4 a& \& b7 ]+ T j% ?. V
}
* s! F" c9 ]) X
return CWndNeuz::OnChildNotify( message, nID, pLResult );
- E0 u! r# ~8 K$ T3 p h
}
' \5 v8 f1 V* D: T
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
1 i" w2 E: H6 { p
{
& _0 K' O/ d& n' b
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
& y# A* H+ _2 r% \6 h
if( bStart || !m_pItemElem )
6 S1 g2 u1 [! B- {/ S+ _9 K' @
{
/ r- {/ i9 |' Q/ p3 m
pBtn->EnableWindow( FALSE );
& x* y1 w# c( Z; A# |& Q
}else
0 b8 z$ {5 b9 r/ X3 W) j
pBtn->EnableWindow( TRUE );
1 L, p, s5 w- c, N
if( m_pTexture )
& e; W1 x* R! G. p7 A- Q# ~
{
4 {% n) N- f8 `0 a
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# g Z" w3 [3 ]' \; H1 o
if( wndCtrl && wndCtrl->rect )
* S! U0 O9 {* j3 }
{
$ `* c; v1 H$ R: O- ^- U
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
4 ~2 Z7 v4 J7 L) }
}
( w% n% ^. c: @ C$ e/ c4 X
}
# f! G5 Y% o% d, w0 p! z& H' y$ d
}
: O, u1 U7 e8 ^) p, }
6 b; ^# k! m" h
BOOL CWndAutoFood:
rocess()
0 q8 d8 E3 }7 o( r( Q
{
' p& B7 X$ ~6 f& B V% N
if( bStart )
# L n/ q# j( I9 s
{
, S1 F7 ^( R( Z. |
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
7 \9 { w& m' U2 \
{
0 H5 ^. b. C8 I2 A% `
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
9 P0 l' ~! I; ]5 @
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
/ T: \# d9 o: x6 a+ B: q
}else{
: h* b/ m `& v$ a" @" F5 z
bStart = FALSE;
3 f. g; V/ N+ H2 C% \
m_pItemElem = NULL;
% u! o4 K5 ?/ H8 [# X' y
}
" d9 K* O8 B1 g U9 Y! D' B
}
' U) R! ?6 J% t# U0 E8 C8 @/ p
return TRUE;
6 l3 V, R% T) n9 b6 |, W$ ?: Z& ~
}
+ @& n! V" k$ D
( G T! Q$ R# M+ ~9 t( D; P& x& W
登录视频废话:
& c* e& ~5 u7 M
尾翼:
# P2 A b- m: L: z+ f5 @6 U
" a* D( T S" H G1 o- H8 D G0 d
代码:
! _, I% y% A! j9 ^" i
- G! n4 P& a2 n( y& m' X2 R
void CWorld::SetLight( BOOL bLight )
. ` T' j- j) ?# B
durch
4 f" O' J( C1 P" P) E8 u
Code:
5 D1 I& S8 `1 J% l
void CWorld::SetLight( BOOL bLight )
) a( z1 t8 J+ X
{
+ Z" ]* ^6 \! \3 w& @% O
//ACE("SetLight %d \n", bLight);
0 u- H! k( Z$ s1 V. a- e5 I }
/ p* `- K- k" o
#ifndef __WORLDSERVER
0 m+ N7 u H, {7 a
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
! m: v' t+ s% G" y1 K
CLight* pLight = NULL;
( ?' j% A3 C4 F6 Y- I' O2 [6 S
' z, r# l- J! S! t2 L/ o' f% g
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
) e" ?# t2 _1 Q7 Y/ U" u* }
+ s0 h; A; a' S+ T
pLight = GetLight( "direction" );
2 K% o5 }$ n" q( R1 e8 a+ P/ V8 F1 E
3 i* M3 R, A: U% e5 ~ p; P. E4 R4 E
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ X" F/ h8 @0 I- A' ~5 h. d7 l7 g
if( g_pPlayer ){
; Q. Y b( Z( n4 u+ G
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
P7 S/ c0 p; Q
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
! u; T/ T, f, D0 q B
{
/ n6 N. g* A h! N; o6 B
if( pLight )
9 O& |6 k1 Y% }
{
. V& Y- \8 J; q0 t4 I l
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
6 e; B9 S Z. d" E' v+ b5 v' [4 ^
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
! z F5 c' d" @
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
4 d$ o7 P9 V0 o. ] a
( V7 l3 ~" ^; q' L
pLight->Specular.r = 2.0f;
: }: K- r% x9 x0 a5 j$ x
pLight->Specular.g = 2.0f;
* ]1 U2 K, ]1 `$ I# S8 k
pLight->Specular.b = 2.0f;
}/ @/ t6 R l0 x' P9 c# z$ Q
- a7 f: [+ Z% B: h# Y
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
" d/ t {1 [; Y
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
8 B* ]8 L3 F+ E# ~5 O* N
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
% s( T7 M. ?0 _' p$ }3 t( m7 K
@- ]4 p7 X2 w
HookUpdateLight( pLight );
6 R9 U; T. F. n: q, P1 s/ k
/ S: X2 }$ [9 g
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; ~) `4 X7 S5 a) q
7 L( r: w, R* n$ }& r$ ^
pLight->Diffuse.r *= 1.2f;
: S, t& Y6 R+ z2 {
pLight->Diffuse.g *= 1.2f;
0 u' a; a% l9 P8 ^ G8 L
pLight->Diffuse.b *= 1.2f;
7 U2 @# E* @, C
* R/ \7 Y/ }$ I2 p
pLight->Ambient.r *= 0.8f;
' q$ j. J$ ~& P4 q. H; q) J4 k
pLight->Ambient.g *= 0.8f;
3 V+ `0 V' S3 E8 J( A. u+ c5 l% {
pLight->Ambient.b *= 0.8f;
; k! V, ]! p2 m! W& v# k1 p; Z
# u+ n m6 J9 M: Z$ @% [) i% x+ ^1 Q
memcpy( &m_light, pLight, sizeof( m_light ) );
4 A/ _- G- g5 v$ D- S
! N; E {- E- X: p6 t8 O$ D
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
$ U' @2 {! E0 q6 k$ r- ^1 p; x
D3DXVec3Normalize(&(vecSun),&(vecSun));
3 q9 N' @, W# y: ~
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: G* S) F6 {9 k& ]
pLight->Appear( m_pd3dDevice, TRUE );
0 G" `4 S5 g' }2 O* x) L) \
- K: G6 _: s" a/ S# } s O
DWORD dwR, dwG, dwB;
; o: W( E* [& X
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 G2 R) s/ B3 \9 p6 Y$ F
dwG = (DWORD)( pLight->Ambient.g * 255 );
( L6 O T3 a A4 x+ B
dwB = (DWORD)( pLight->Ambient.b * 255 );
4 w' C' a4 _2 h* n
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 T% W2 z5 k0 v; g' \4 X* F
}
: W, s& ]: o$ M1 y& A) ?
}
- F' @ ]/ k- A- Q/ Z- U" d
}
- A, I( t# d4 X; m$ i
else
( s1 N' h& P) ~. E% ?* S# u6 z; n
#endif
' i7 z, F$ a- t
; m, ^ B! j) A4 |0 L: ~" g
if( m_bIsIndoor )
8 D8 o6 K- [4 z% H w8 S
{
8 j. k8 t2 x- f- y; m
if( pLight )
4 v5 N9 s& m* N
{
7 Q+ [/ I+ H4 u6 ?$ d
// à??μ oˉè*
2 \5 `0 K2 G0 e% e' H
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
- p: \9 m( e" K: D
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
, b3 j8 X5 |' p( ]& K; y2 j; x
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
1 p* g+ M& P9 r) m3 ?
9 O7 C* F- C( E6 @3 J/ A$ C
// oˉè* ??à?
f# n7 q; `8 V' f2 p
pLight->Specular.r = 1.0f;
! Z& j9 m' M' n
pLight->Specular.g = 1.0f;
8 f7 Z' \' {) g% A& D# x0 g) o. _: [; I
pLight->Specular.b = 1.0f;
- |/ i0 e- c, Q, R+ c, U
// àü?? oˉè*
2 b. l9 w% P2 B/ z- n1 b0 U* g
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
2 b# h8 H0 \ T4 v
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
, }$ Q% e- d% Y# X: }' P
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
9 m# u. a' h! \' ^8 I
! k8 C' C& T! `& l3 j
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
; D3 |% T, S9 [! X4 |( k( A
{
1 y1 @! y2 H+ j1 r# K* L
pLight->Diffuse.r *= 0.6f;
) _% Y/ j5 b4 r! W2 K
pLight->Diffuse.g *= 0.6f;
4 E8 h7 k7 d9 Y6 |) z) B0 d; F
pLight->Diffuse.b *= 0.6f;
- [& K. m* @5 J1 H: J6 F
pLight->Ambient.r *= 0.7f;
9 k4 f0 l: M* G( U+ E p6 X4 H
pLight->Ambient.g *= 0.7f;
! S4 T3 ] ]6 l# y( |. W
pLight->Ambient.b *= 0.7f;
$ p+ b! X/ i0 D2 H
}
' \$ h. X3 I- @0 l N# m' J8 {
+ l- F' I A! S$ m4 `5 ?9 U
#if __VER >= 15 // __BS_CHANGING_ENVIR
( j; I( _! l) ~3 I$ q
if( g_pPlayer )
5 r- x) z# K+ m& \7 I3 J" B$ f% z* q5 R
HookUpdateLight( pLight );
. M5 p: |7 b( r7 b! o4 e4 B
#endif
4 f& G0 [* t3 U. z
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 Z- G) ^9 |2 v4 ^$ i/ Q
4 n2 P. N! _2 W
pLight->Diffuse.r += 0.1f;
, u- t. l3 m2 l8 l) v7 D
pLight->Diffuse.g += 0.1f;
+ i( r0 j7 N: H$ L& X
pLight->Diffuse.b += 0.1f;
: ~/ R1 ^0 g5 C, r3 A6 k x! S
// oˉè* ??à?
& c7 Z2 K" _- U% w' @8 `, M
pLight->Specular.r = 2.0f;
7 t8 t7 Q- `9 X6 [, q" V5 _
pLight->Specular.g = 2.0f;
; T. l2 j# V4 w
pLight->Specular.b = 2.0f;
1 } u4 v! U! }+ y- e
// á?oˉ
$ B! K6 j9 y- v3 g2 h
pLight->Ambient.r *= 0.9f;
1 X: F5 u2 T2 x, Z$ {3 {" ]
pLight->Ambient.g *= 0.9f;
5 H% N, i) w5 g+ u6 h2 x, x; f
pLight->Ambient.b *= 0.9f;
' c7 @2 M' k& `' l
; }6 u: J+ i- C9 T
memcpy( &m_light, pLight, sizeof( m_light ) );
; n7 p. R& `4 K) s
1 o. \ C. R+ I& ~9 E0 r& D2 l
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
/ V# O, B8 v4 P1 g0 d% g
pLight->Appear( m_pd3dDevice, TRUE );
* @; H9 x( @% U4 b
$ B( N- J l8 F/ }, V
DWORD dwR, dwG, dwB;
. p" e5 y. n9 X1 W0 p
dwR = (DWORD)( pLight->Ambient.r * 255 );
: K9 w3 v* o4 i* r
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 Q, o$ y$ \! i% i! g, G- J4 n1 b W! X
dwB = (DWORD)( pLight->Ambient.b * 255 );
. L4 h6 r+ _. N8 @) o
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- Y$ s* p8 O4 K9 R4 f% k, o0 O- J
}
) w! o" m3 C b& d+ L# V& e
}
% w/ H, A# v; m$ M
else
9 t! {' B% i: X$ I7 G, M
{
2 y% d! V. u& y2 Z) ?9 z. w/ @
if( pLight )
7 t q, @5 q! j4 E
{
u0 U- T4 I6 I& l) g* s& h
& n" w8 D3 f2 W1 G& V
int nHour = 8, nMin = 0;
# g1 ^, C. \* I
#ifdef __CLIENT
) p/ M' i. b% H! B2 v' j1 N4 Q( e. R
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
/ l+ m, G. L3 k
nHour = g_GameTimer.m_nHour;
5 u, F# }' ?/ s6 r/ @% @
nMin = g_GameTimer.m_nMin ;
# p) ^& a& T* O8 M* G$ _. f w/ {+ V
#else
& t* _1 R3 `) M/ c6 W8 D3 L
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
8 V, l' a d5 C
if( m_nLightType == 1 )
- s- ~$ c+ H! z7 I9 E- j& {1 j
nHour = m_nLightHour;
b5 z9 |3 Z; i" @1 [4 H y
#endif
6 T# m( p* F+ _2 Z. [: C
nHour--;
' U1 F; A$ C" ~
if( nHour < 0 ) nHour = 0;
3 W4 c! Q! P, P5 l! l1 D: W7 p0 T
if( nHour > 23 ) nHour = 23;
8 H$ U0 W0 e" v& @. T7 H
6 ]0 P. Z% _9 b# A
//if( m_bFixedHour )
, E. ~: Q: D% v0 n) L% e( c
// nHour = m_nFixedHour, nMin = 0;
5 i# S4 t$ o( z) R0 w
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
7 V. i1 R* I. i4 r/ b. n6 W# P
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
- X: {9 B7 m" j! |
0 D1 E8 |3 B" Y X5 H) N3 {" z
//m_lightColor = lightColorPrv;
7 u) L* D( \% z$ c/ H( S/ o9 s3 T
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
. O5 w+ e( u. t- ]6 F
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
# L8 j9 D* u* ?6 v
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% i v" E& `: h; b! F: Y/ B
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
8 M2 W9 @6 t) V# X2 t* [# {
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
. t% h8 @" r1 G
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
* v2 M: u( f( Z3 I4 m3 Y
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
% v+ o" V+ x( t N8 u0 G. _
0 o! g3 Z& g0 R5 {% G3 p6 `
// à??μ oˉè*
- v5 r; s8 }' c
pLight->Diffuse.r = lightColorPrv.r1;
; N9 @, {, X, V; L; N
pLight->Diffuse.g = lightColorPrv.g1;
$ U/ K) I3 }( z1 s* ?) z/ z
pLight->Diffuse.b = lightColorPrv.b1;
4 E4 A. `$ Q# M) e
// oˉè* ??à?
. K }1 ]- P* b" M' L% |& E
pLight->Specular.r = 1.0f;
; H2 a7 c# ]- K3 P+ a
pLight->Specular.g = 1.0f;
( ~5 l4 B/ d) y' R, b
pLight->Specular.b = 1.0f;
7 I% j5 t& N1 D7 S! H8 ~/ ?
// àü?? oˉè*
, w, D* o( N" X8 K
pLight->Ambient.r = lightColorPrv.r2;
4 X/ S. B8 ]' F( H* W
pLight->Ambient.g = lightColorPrv.g2;
: E& \! ]! k; q6 a4 Z" X
pLight->Ambient.b = lightColorPrv.b2;
+ T* {& C0 y& T( R: G
2 d+ s+ v5 `; N* e' d4 t w& _
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
2 x8 p% z; a4 t: e! L2 a2 J8 N5 a. \: W
{
D0 }& v6 }5 t, C, l; j
pLight->Diffuse.r *= 0.6f;
' ~" F7 ?8 n1 ~
pLight->Diffuse.g *= 0.6f;
; n. U9 T) u: ` E' `& p: p2 n
pLight->Diffuse.b *= 0.6f;
2 Y& q& ^* N0 _
pLight->Ambient.r *= 0.7f;
% z1 @! c2 p7 s9 {# }
pLight->Ambient.g *= 0.7f;
e* C! W8 t: C; h$ n' m7 m1 ]
pLight->Ambient.b *= 0.7f;
1 W* h& e0 }3 U& w T
}
+ `& L; X1 H4 H0 w8 h- ^( R
( h: i7 c$ C- L- M( @( f
#if __VER >= 15 // __BS_CHANGING_ENVIR
v! K5 s" t) D, F. v' P' `
if( g_pPlayer )
8 q Y; z& D R+ y3 ]0 b, t
HookUpdateLight( pLight );
|+ F& u9 d4 V/ S% b
#endif
5 \) Z3 Q/ m$ W( v
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: m( |7 ?* h" S d* F
0 L7 r; j/ m- ]+ P
#ifdef __YENV
$ e7 y% K* \2 d! q2 ?
pLight->Diffuse.r *= 1.1f;
) [# K- K0 N/ e2 v! n+ ]7 G
pLight->Diffuse.g *= 1.1f;
) C/ G( M3 C" D/ L( D6 X
pLight->Diffuse.b *= 1.1f;
* g! \0 e1 E4 a6 b
// oˉè* ??à?
1 b0 j3 T$ Y" V6 z; o" i \
pLight->Specular.r = 2.0f;
- J# h# I( t9 [& E
pLight->Specular.g = 2.0f;
: E5 n; ?7 t7 u1 L- P; e# Y; v, w' l
pLight->Specular.b = 2.0f;
( F7 C+ q" s/ H& ^5 S! f5 h8 }$ T
// á?oˉ
4 H' N; ~* B# e1 a, A- C
pLight->Ambient.r *= 1.0f;
+ p# J8 S/ v% [2 n3 M9 {3 J. _, J3 S8 q
pLight->Ambient.g *= 1.0f;
/ f, c% e* r! G! e3 Y! q' X
pLight->Ambient.b *= 1.0f;
- K' m4 f% ?0 @$ C( ?! d
#else //__YENV
" ^3 S0 ]( F2 g: J* x& V/ _$ A
pLight->Diffuse.r *= 1.1f;
# V& Y4 E2 s9 A L/ I
pLight->Diffuse.g *= 1.1f;
) Q9 a& G1 b8 l6 c4 F! s7 j+ `5 g
pLight->Diffuse.b *= 1.1f;
' b0 ~$ |% M0 d6 w
// oˉè* ??à?
. ?. \# A1 b6 l
pLight->Specular.r = 2.0f;
' z! ]7 B: N2 |
pLight->Specular.g = 2.0f;
2 l* I# k. ?9 g
pLight->Specular.b = 2.0f;
5 P( k5 Z q7 |4 ~9 k2 c0 @
// á?oˉ
+ J e# e3 ~1 R$ ^( x
pLight->Ambient.r *= 0.9f;
: b9 }0 a: D3 s1 \5 C S" O/ _0 Y
pLight->Ambient.g *= 0.9f;
) T q) K; {4 E. c" T; b
pLight->Ambient.b *= 0.9f;
8 g$ ~3 M5 W* d
#endif //__YENV
+ c) ]+ Q$ O" e3 y
3 F( `: F% @# Z% D
memcpy( &m_light, pLight, sizeof( m_light ) );
3 i( X/ E" G+ k- L2 Y( b
! |1 ^$ U5 Z% n" a' f
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
5 N* |9 X, `/ P6 z# K% B N/ Y
D3DXMATRIX matTemp;
1 l2 U" F4 t$ G, c/ e; i2 D, j) Q
static const float CONS_VAL = 3.1415926f / 180.f;
0 c2 w1 L) Y% t
- J) i$ u7 {, x" V: t
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
$ b! |2 }& q9 s7 k& k
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
) m; k" [# X& e, U! i/ B0 ?
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
1 [9 H$ }5 _: `+ l8 F7 Y% n$ K4 t
pLight->Appear( m_pd3dDevice, TRUE );
4 y& t- @( W+ E# d- l1 S7 F! {# f
! j6 x$ {3 U0 i: j
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" T" W6 b( z; @# a
// D3DXVec3Normalize(&(vecSun),&(vecSun));
% [5 A* Q) C( @+ ~
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
* W9 _; Q! l$ z F' c% E' M
- a: O$ b: I/ [( ]
DWORD dwR, dwG, dwB;
& `# R6 P/ b) _+ P
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ z" P+ X4 ^- q2 o5 ] {
dwG = (DWORD)( pLight->Ambient.g * 255 );
: |* P. T2 p( N6 z% ~6 o$ P
dwB = (DWORD)( pLight->Ambient.b * 255 );
7 X" u' K& Y: X- V
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
, L3 n4 p( D( ?$ u
}
6 R0 S0 n3 X- |/ R/ O3 N3 V
}
# ^" D7 ? h6 c% s9 k3 _
( i/ E' c* L2 l g
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
3 q6 G0 C: r9 O
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 _5 L9 e( {! u0 C' w( u' H5 S1 D
::SetLight( bLight );
$ v# Q u: w& u) S: d% ]
* \7 c4 F3 l( U" |5 e3 _ Z, S* b
// ±ao? ?D?í???ó á¤à?
: i; w$ `0 E2 V: Z2 y# s
m_pd3dDevice->SetMaterial( &m_baseMaterial );
0 b1 y4 H5 ?2 D3 Q3 s+ K$ }5 O7 Q, g7 t
/ f1 K% d! _6 z( d
#endif // not WORLDSERVER
7 K: I z5 s4 o4 b
}
. ] M/ d( M5 H6 d
并更换
0 [/ v1 V3 A* I1 ]9 l
Code:
: Y8 O3 m9 p& I; c2 _. s% x
__FLYFF_INITPAGE_EXT
' Y' y& d' O& m& k9 P; B
定义
& d& M4 b8 A/ D4 m1 f
& i: j5 M$ K) f9 h9 i$ y8 v6 J+ a
$ U0 n4 ~1 u4 ~, c' u: \" \. z3 C v
4 c2 T) [6 Q( c3 ]4 Q/ @! g9 G( t* f
% K: @ u4 v( |' T/ \
现在终于删除我的狗屁加速...
- M3 P# C7 I; I
8 x. u3 L1 H7 Y- p
7 F) I7 e2 o) P$ |: C+ {
5 x$ @& J! L* M3 M) f$ f% @: K" t
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2