飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
+ |$ I% e5 D2 ~0 t' M' W1 X
尾翼:
& G* P) d1 K5 L- O0 k
) F) M2 W- b# [" D$ E
代码:
% t0 ?" X. I$ F# \1 I. n/ |, p
CWndAutoFood::CWndAutoFood()
, T4 S% @' q* r, L/ W2 }
{
8 }6 ]) s. y: l& ?! E5 W" H
m_pItemElem = NULL;
# N. f( z, J9 V! h
m_pTexture = NULL;
# A; b: A$ _4 Q* |# I
bStart = FALSE;
" }. K* q0 s0 [% j: \
}
; f8 N# q. k# d9 u8 ~& i
( u2 d4 t" F) H; G
CWndAutoFood::~CWndAutoFood()
$ _, p t9 Y- M# D' U5 x
{
8 K _" P9 b: I+ G% i% U
AfxMessageBox( "AutoFood ist gestorben
" );
6 ~; | z1 p) ]$ b- ]. |
}
- C* r7 k8 \$ E1 S
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
; S0 K8 q" y0 y" M
{
: K9 r! E, t5 {* `- E9 ?! g- J
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
" y# T9 B6 f* R5 _& f8 J
}
. i7 Z. H0 I2 _# A* X$ m9 B+ u7 [
% A/ j0 J! B$ J; {6 V9 h) s
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
. ^4 j! q2 A' e0 D
{
$ ^" Q! v. S r% k' f
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
% d5 F3 A! i3 c7 E
CRect rect = pWndCtrl->rect;
; l0 V$ l9 B7 ]; ?) d
if( rect && rect.PtInRect( point ) )
, S) H0 G+ w0 [- O
{
* t6 p7 U8 \: e
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
2 R6 {# o% R5 G, A8 }8 Y3 G9 d/ S
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 N! d. r5 k% o o( D6 D1 T8 j
{
' U9 T& N9 ]3 l% H1 x
if( m_pItemElem )
- \( p- s. K+ d2 ^
{
$ [ w1 K; \% \2 I* _& O
m_pItemElem = NULL;
' D6 X( T3 k& c b
}
5 p* B4 h. f! f- c$ Q# O) X
m_pItemElem = pItemElem;
+ O8 Q B C+ W& @: p. J5 q/ j" o
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
8 m. [3 e; ^( K$ G) _
}else{
$ O) ?; J8 v% d- N3 A
SetForbid( TRUE );
1 @5 H: N1 I1 y' ]
}
. ~8 m8 X& s: C {9 c1 }# G5 E
}else{
. V2 k' `$ V8 O
SetForbid( TRUE );
" Z: Z7 e$ w. U) L- p
}
$ ^- l4 @* P1 u! O5 ?* K! [
return TRUE;
: I% O/ ~8 \4 v! c
}
6 }1 h2 @- ^; i: N5 H1 }
# N# q/ e; E& c. v
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
4 Y& c3 ~6 x( K2 Z
{
" u5 @, g4 v# P$ e. V! l
switch( nID )
% B$ T( E' ]/ T8 d
{
~2 p* c0 w2 s* a( E5 z
case WIDC_BUTTON3:
6 z3 r9 d/ O. N3 j! \
{
0 h2 X6 }! V: ]3 x
bStart = TRUE;
/ e2 G( ?4 R' i- e5 |# P
break;
0 `% e# g7 m2 a3 J9 @' I
}
4 {! b) ~! j- {1 c
case WIDC_BUTTON4:
, K0 j& z* D/ R8 C9 V
{
# D) H! A+ Q9 o2 v( e9 r i$ x
bStart = FALSE;
* }# }9 k, ^' P* c& |! S; l
break;
; C9 ?" {! T# }- p3 z9 r
}
, S1 `/ ?5 l7 K9 F
}
( B0 ?. {/ C' D/ O
return CWndNeuz::OnChildNotify( message, nID, pLResult );
" z) a3 h3 ^2 h) o# d& |; S' j7 i
}
1 h5 z- y& v2 M" I/ U
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
# D) G6 i5 y N$ A( u
{
: B$ q# d5 z5 o- p: A
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
; J1 ?' M" P( @) Q5 F0 n5 g6 q6 ?$ o5 u
if( bStart || !m_pItemElem )
3 d/ y9 O, y9 I* J
{
+ L2 p) E/ i/ e7 S/ ~. Q
pBtn->EnableWindow( FALSE );
( U6 E% {: Y; _! [8 H% m1 O5 G
}else
( L s' d, C3 L4 h' E5 X3 P
pBtn->EnableWindow( TRUE );
: ~8 l9 v% e7 i, C3 @: O
if( m_pTexture )
# f' d* B. C+ T
{
& y8 }2 X4 C) ^; G. y: |9 ?% d
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
K$ C5 z1 C- I' ^/ ?% L* S' M
if( wndCtrl && wndCtrl->rect )
7 Z% S& I- N/ M
{
& _9 a3 f$ J/ z4 t& Y: U) |3 V
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
' s! ^- u6 }* x0 n/ t/ ^/ d0 v+ i2 Y
}
# @' m( f. L5 d2 Z0 f( g! v
}
* I; t8 g( i2 ~5 Z
}
& g) q' \% q* D. s8 @9 u
# k# u; n# ?2 R9 a
BOOL CWndAutoFood:
rocess()
" C4 N: v6 H5 w. a6 P9 L
{
7 z# D9 A* z, R! D( l- y( j
if( bStart )
" e# F; _+ O; o) R+ J/ ~ o
{
/ M' V- J# d8 I# x% c
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
+ n7 F: D( [ O* @- q4 @0 m
{
G; a% E M" l+ g
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
, I' u, c$ B' m, |8 c+ t
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
8 B4 R' [# X. t/ v1 c/ |
}else{
2 B) S7 c% l+ c' Q1 k& E- k7 X
bStart = FALSE;
3 h8 J. ?# u% Z3 m2 j5 r4 D: g
m_pItemElem = NULL;
( G8 D% d- ]( g' E0 ^3 z) P
}
2 _7 R" v( `& I8 d- Y
}
5 _1 i7 u* U+ T3 v6 A
return TRUE;
8 P1 N, y2 Y+ C& Z0 @
}
8 L$ d( [7 Q4 k* d" v- W# q
/ i9 h. _! v7 v4 j
登录视频废话:
, \! R/ R0 |& c7 Q" m/ t* U% a
尾翼:
- ?+ z) x7 r6 f
3 u! v( a" S! K0 V! ?
代码:
( J2 Y) s5 {7 O# g% F
( k' n& l$ }$ t- P) T
void CWorld::SetLight( BOOL bLight )
8 H9 l0 r. o! b
durch
3 i/ \9 N; j5 G
Code:
2 v+ b( y0 U0 Q# [- H: h- ^- L
void CWorld::SetLight( BOOL bLight )
9 q- W; @, o- [, ]' d2 ~/ z I
{
+ a u. Y5 C" n$ ?) k) Q
//ACE("SetLight %d \n", bLight);
: Y' a, s* z6 ^9 j! o3 \4 l
$ f+ r+ p8 H7 m0 z% _4 y9 S% ?
#ifndef __WORLDSERVER
9 H$ q, j$ s# C9 b, M( b+ \* L
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
& l9 m. V+ z. D4 w( f1 O U- l
CLight* pLight = NULL;
8 E4 X+ ?6 _* E+ E, b
+ {, J% K- W F. N% C+ a
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
; m8 m/ ?. o9 P' q% ? |
, L4 i1 J6 e! p/ U5 E
pLight = GetLight( "direction" );
8 B) O- o N6 s9 |( A
# n+ i: S% e& _0 |. ? u8 R
#if __VER >= 15 // __BS_CHANGING_ENVIR
. j! a" \3 _8 o( t3 L# @
if( g_pPlayer ){
( t/ u- R9 L- q( }9 _
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
9 E" V' q) X0 x; M
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
7 M9 ?- z# G5 `2 i! t+ A! H( E
{
' a; W. ], s3 p( v. _
if( pLight )
b- L" U- k; q
{
( K- g# p* V0 L6 p7 T W
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
[% O1 |' X; }! l& j* ]/ Y
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
* x# _3 o; D# h/ \; ~& p: J; c
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
J( H% m2 H6 b; ^ l. T
: C/ }; U9 `. b4 K) {9 W
pLight->Specular.r = 2.0f;
. ^4 f& t) b& U) N! ^) K5 N" v
pLight->Specular.g = 2.0f;
* i5 h& Y( ~+ n( f1 X s
pLight->Specular.b = 2.0f;
/ P ^0 p9 r, Q$ I. Y$ n
3 |2 q- B3 F5 H! r9 z: A8 A8 u* E
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
4 I( Q$ a5 j+ G0 j" d) o
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
% K1 g5 X' C9 A+ n) W/ O7 M
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
& l( k7 d# x0 d6 o0 N) j
0 ? H5 E3 ?( ~3 [3 I7 b9 d
HookUpdateLight( pLight );
" g% ?3 c- N2 c) H A& P
. u: K0 w0 G5 x+ }, D$ ~
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 ?- z* w. N* c. ?7 _
. _3 }- V8 C5 r1 r
pLight->Diffuse.r *= 1.2f;
# a1 x' b0 d* {) J* g* t0 I; g
pLight->Diffuse.g *= 1.2f;
* y" p1 e; g. r- ?3 i
pLight->Diffuse.b *= 1.2f;
: x. H* W1 ?" W! p
: ^. V/ R/ `7 x+ _" q/ z
pLight->Ambient.r *= 0.8f;
4 P& d* i' m/ W6 ?0 O
pLight->Ambient.g *= 0.8f;
1 X/ {9 g( c# _) ^; Q5 @
pLight->Ambient.b *= 0.8f;
7 m* \4 n/ U2 `9 {
8 \7 c6 L+ W' c
memcpy( &m_light, pLight, sizeof( m_light ) );
3 ?" z8 e5 s `1 ~
0 _# W# s q# [/ g( J4 R
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 Q7 l2 m4 k/ u
D3DXVec3Normalize(&(vecSun),&(vecSun));
/ h& G! {) b2 p" i9 A
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ o4 p: v% X6 i1 _$ c7 Q
pLight->Appear( m_pd3dDevice, TRUE );
$ v: y/ Y! b: m1 \4 z
" N# }0 B/ `9 n/ A
DWORD dwR, dwG, dwB;
% D+ S7 f5 P W1 I. n3 V
dwR = (DWORD)( pLight->Ambient.r * 255 );
. w! [) [) I' G! c* Q* _7 [. e* K
dwG = (DWORD)( pLight->Ambient.g * 255 );
* W! F* I8 h. w% J- q' L
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 H5 Y# W2 u: ~' [! u- r
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 O0 K5 Y, F7 l+ g2 r1 K Z
}
* X! q' [8 a5 P4 t( i, G, W
}
" K$ x3 d+ H7 w6 [
}
& ]1 _! J# O, J- ^) N. B3 n
else
w3 h* a, [, Q+ V7 @' n6 w
#endif
" G9 R- m4 D! Y: l) F |5 F
' s! W' M3 r" @+ r
if( m_bIsIndoor )
; b8 W: Z: C3 q1 y* N$ `& ^
{
* Q& {* a% {% A" b2 Z `& t
if( pLight )
+ A! w2 O2 V) U0 o% l
{
5 J6 v# k& d. V6 H( j: B
// à??μ oˉè*
+ A# C$ I* k' I6 V. p% ^
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
+ b6 Z7 }2 C' z7 s9 ?' j
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
- ~5 j% B# c/ A) N* }
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
: c' i0 t; m, J6 p$ u& ?' M
) Z* ?! C: v( N5 Q' e. A2 W
// oˉè* ??à?
$ X& f) Q( B: \0 o3 [
pLight->Specular.r = 1.0f;
' u1 G& D p/ R6 n+ U4 G# i5 W: Z
pLight->Specular.g = 1.0f;
6 T' U8 s! c2 l8 s0 T
pLight->Specular.b = 1.0f;
; G8 u& [- x8 j1 l
// àü?? oˉè*
9 N( f; n( D* q" p
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
" `9 V& Z3 P" g( F
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
( Q( h I; X8 J7 n) m) V
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
. q I0 Q1 N( g
: {; E# g0 ?" W
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
+ Q9 |0 l& X$ b' g: G; A
{
6 ?% X* Y! o/ M: @0 O# M4 A- r
pLight->Diffuse.r *= 0.6f;
* t& [ a9 ]# Z; T/ w- z# t
pLight->Diffuse.g *= 0.6f;
2 t; y8 N: n" [$ e+ L/ r. G; G% q, r
pLight->Diffuse.b *= 0.6f;
( S3 b0 e& x( M8 P. |
pLight->Ambient.r *= 0.7f;
7 Q; f$ T+ Q& e
pLight->Ambient.g *= 0.7f;
) r7 h3 Y4 J. f
pLight->Ambient.b *= 0.7f;
1 q6 V H" {+ ]( E( z
}
: D6 ^9 d8 A, b+ m, R! [" L9 f' Z
1 z4 p3 H) q5 ?
#if __VER >= 15 // __BS_CHANGING_ENVIR
* \# N7 y3 ^* c3 t, Y: x% _$ R- O
if( g_pPlayer )
2 S) m7 E& h" h u1 X2 y& q& W% O
HookUpdateLight( pLight );
3 s6 s% G, |: o Q, w
#endif
9 v1 |$ ~( y# i! o
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* B) r3 q- h) ~5 U3 Z. Y
4 a# U" u# s' ?" h7 W' i; M
pLight->Diffuse.r += 0.1f;
6 q' q1 z0 ^. B* ~7 v: c- E
pLight->Diffuse.g += 0.1f;
, R8 \3 @; j# D: r" h
pLight->Diffuse.b += 0.1f;
/ U6 A E1 t8 b
// oˉè* ??à?
" [9 ?3 L0 ~+ ^4 U* B1 [/ e. ~
pLight->Specular.r = 2.0f;
4 r+ B. I3 }" G8 b! J
pLight->Specular.g = 2.0f;
, G: a/ o; H+ v2 c% }) L; B6 [
pLight->Specular.b = 2.0f;
J$ n5 n- D/ f( Y0 r
// á?oˉ
$ l4 E- `. I3 B+ K8 Z' v
pLight->Ambient.r *= 0.9f;
5 m) u$ Y- r/ J7 U* F. m+ f: Y
pLight->Ambient.g *= 0.9f;
. ?) a) Z! ?" _4 H+ P2 @2 U
pLight->Ambient.b *= 0.9f;
9 O& Y1 S. ~6 r& o) }3 b! `/ J4 ^
3 w* i" e7 n( m. I, W2 H
memcpy( &m_light, pLight, sizeof( m_light ) );
% p$ ?: ~% L. W
5 n/ L" x& a9 y+ K: w% n
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
! o* ^2 o& n3 T6 j1 F: r, t
pLight->Appear( m_pd3dDevice, TRUE );
8 V2 `2 L: U9 z, Q$ d
* t5 ~3 L8 B5 D2 K' x) K% f
DWORD dwR, dwG, dwB;
1 C) o$ i( t) O V' M+ _( X: b( R
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ ^! }9 q4 @' t* N% f
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ |4 }0 e' i7 B( I" K* |; Q
dwB = (DWORD)( pLight->Ambient.b * 255 );
6 j+ ^( _# P& B, g' Y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' G7 y- A$ K' z5 M2 x% _3 ? G
}
8 m* i& f) M. t* Y7 r3 S
}
* n# }9 w0 W6 K2 N* ^% W: E
else
$ U2 [, ^) P8 a+ Z; o$ L ?4 }
{
% \$ g _9 `2 E1 E+ c! s, R
if( pLight )
1 [/ p1 H/ Z, t" e
{
: ^+ E3 Q0 q3 n0 u* R, d4 i) a
/ R$ q) j+ c9 B3 L, }2 L. B
int nHour = 8, nMin = 0;
! F) _! b' {8 M; l9 l' H {
#ifdef __CLIENT
k7 w3 J) _* f% L; Y
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
3 o6 E% W) \. K8 V, `
nHour = g_GameTimer.m_nHour;
+ o: v m" N- J4 F1 J J
nMin = g_GameTimer.m_nMin ;
) P; c/ U4 J+ |+ O% }% K
#else
& x" f3 p2 Q: i* m7 C5 K
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
h3 V" J/ f) |! t0 Y: G5 |
if( m_nLightType == 1 )
Y& _* Z. c1 b' J# o# R
nHour = m_nLightHour;
! B% V+ @+ C/ E1 Z- V; m2 n
#endif
* e% K% x/ }8 `- w, z
nHour--;
+ j+ ]( t. U/ l* b3 _
if( nHour < 0 ) nHour = 0;
3 k5 S; s+ R' e h1 m
if( nHour > 23 ) nHour = 23;
! o m3 M4 e+ G7 S B3 b
' }- ^; B) I, M0 k; [
//if( m_bFixedHour )
; T" [' |# l; L3 T/ L
// nHour = m_nFixedHour, nMin = 0;
1 V: a. \0 v0 k5 S
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
; j# \2 U, X$ t* M) X& `& j# j* P
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
( L- R l9 ^7 d0 b1 ^
3 {! f4 A' B% |6 `5 b+ m
//m_lightColor = lightColorPrv;
) Z- U4 _* D+ K3 _6 b
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
5 F* g2 x) P: X6 N' ]' m; V
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
3 |9 n# x4 i5 y. S) o4 ?0 h
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
1 u8 I" L0 O2 g
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
& r- K2 z. Y( |
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
6 u2 D, _5 i }) k4 o. O
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
) d& t D4 y( T' u
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
' G0 r" @8 ~4 _# _! O
$ _2 a4 B8 v. C: T/ o" h- d
// à??μ oˉè*
* T6 N* H- K; T) W9 u
pLight->Diffuse.r = lightColorPrv.r1;
- v: O3 t _1 s u7 P" q
pLight->Diffuse.g = lightColorPrv.g1;
% d9 c9 V6 r1 ~4 t( V
pLight->Diffuse.b = lightColorPrv.b1;
; C! b- U2 a6 m: `
// oˉè* ??à?
, H% A% I e, e- s1 \
pLight->Specular.r = 1.0f;
6 M1 R- U* F) r. ]) |! f# }0 i
pLight->Specular.g = 1.0f;
# r6 D+ C Q( A( D$ X" y% O8 M5 e
pLight->Specular.b = 1.0f;
S4 q# X) e9 O' v4 m& c
// àü?? oˉè*
- u9 n! A* \. I* C" b3 d" W4 B* U
pLight->Ambient.r = lightColorPrv.r2;
8 b: Z8 G! s8 N: S A$ Y
pLight->Ambient.g = lightColorPrv.g2;
! u( r# h3 _8 i$ g2 Y
pLight->Ambient.b = lightColorPrv.b2;
0 o( w; [/ ^5 g; d6 K" Z" `
/ L) ^& T( e3 G( G
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
& C; @( o# O8 s3 C+ N4 t5 P
{
- o8 b. _3 U2 R! j' B
pLight->Diffuse.r *= 0.6f;
2 `$ p0 b6 k I/ b, H$ e
pLight->Diffuse.g *= 0.6f;
2 e1 H7 Z7 L6 C5 Z+ l
pLight->Diffuse.b *= 0.6f;
+ G0 g; }7 C, n1 Y
pLight->Ambient.r *= 0.7f;
- v0 ~; ]4 [8 i: I2 j6 ~, p
pLight->Ambient.g *= 0.7f;
/ h- ?) u- }0 w, ^2 K! }6 p
pLight->Ambient.b *= 0.7f;
4 g1 y% ^ ~( e5 Q2 V
}
: {; r6 } e: u
4 L P3 J+ ~, F4 u7 p' G% m: G
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 ~& ~+ Q$ E1 l" y6 T \
if( g_pPlayer )
& q* V k' I, c# @" U
HookUpdateLight( pLight );
* Q: }0 p6 i6 X8 @! J
#endif
& O. Y5 d" t9 q! g& H7 }
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& @5 d6 P/ P* y
8 q: S0 P* |; t
#ifdef __YENV
9 F5 n' i# L9 y5 B
pLight->Diffuse.r *= 1.1f;
- @! [0 D t ^8 t# Y
pLight->Diffuse.g *= 1.1f;
+ ~' ]% S; b! `' Y& O% p6 {
pLight->Diffuse.b *= 1.1f;
( @+ {! C& v, B7 H2 M8 |
// oˉè* ??à?
, L- l& s. h& k! O8 F
pLight->Specular.r = 2.0f;
: P: c) _3 P) b' j$ `
pLight->Specular.g = 2.0f;
% G9 \& d& d: u6 u' y9 t; A
pLight->Specular.b = 2.0f;
' n& V9 [7 ~3 G/ L6 k+ C; v% p2 c2 r
// á?oˉ
* v7 Q& V; Y! s% {
pLight->Ambient.r *= 1.0f;
9 U4 o* X2 i, Z+ u1 H0 N3 P
pLight->Ambient.g *= 1.0f;
6 X) }- M) H: ~( `7 x+ w. Z
pLight->Ambient.b *= 1.0f;
7 X7 x' ^6 J7 t7 p7 l, C; [4 \3 I
#else //__YENV
0 B+ Q; ~( P, D d" F9 x9 }9 ]
pLight->Diffuse.r *= 1.1f;
8 B: V9 a$ ^, `9 `
pLight->Diffuse.g *= 1.1f;
8 ?8 c7 r8 T+ z+ M. c- f
pLight->Diffuse.b *= 1.1f;
8 c% T6 G- I& }' H
// oˉè* ??à?
0 T/ S% d. F6 Q6 R% U0 `1 j
pLight->Specular.r = 2.0f;
: \3 }) F+ [4 Y% G/ P9 Z6 j
pLight->Specular.g = 2.0f;
& U" u& `4 \& g8 p& k( K" }
pLight->Specular.b = 2.0f;
2 ^7 e1 H% y$ T2 I% J w( Q' J
// á?oˉ
* J9 T2 _. |% ^8 U3 O
pLight->Ambient.r *= 0.9f;
* g4 G1 v6 l" {
pLight->Ambient.g *= 0.9f;
! L8 }; w2 j: P. B2 v
pLight->Ambient.b *= 0.9f;
. l) C0 [6 J; ?2 @) E/ a# S) P9 Z
#endif //__YENV
y0 \7 `7 g6 g' Z& T! }
$ {1 a V9 P0 F3 w9 X
memcpy( &m_light, pLight, sizeof( m_light ) );
0 I" U4 d8 ]" u; o( z$ A
' C& ^2 Z- l, {
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
, K: ^2 u$ F6 Q: M
D3DXMATRIX matTemp;
* @9 ?- F/ X6 C# Q* f" {7 E) u4 k
static const float CONS_VAL = 3.1415926f / 180.f;
. H% ?' H' F" U) J+ G
- z) C; g: X$ t2 v% h# E
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
% p* C, k: s9 ~! [6 d2 V
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
3 k1 x, D: |* o& l3 `
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
( R q, s8 A+ \1 R, q
pLight->Appear( m_pd3dDevice, TRUE );
4 a4 h! L- j. p
) i8 k3 U. r2 E
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) L; p7 |8 Q8 @7 b9 }/ R) j* J1 G
// D3DXVec3Normalize(&(vecSun),&(vecSun));
- M* F3 V% j% O4 _0 ~: I! u, G( J* [
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ _4 L/ n, V; C) N2 S9 @' ~+ h& ?
# S s: J4 U0 t: v% y- D
DWORD dwR, dwG, dwB;
* q% E/ B0 P, ^* O, j
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 n/ R$ O- _7 Y5 u3 K
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 {' b: D# k7 y* G Z
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 R; N6 [' e+ G6 I
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% F7 } i4 p7 g: l8 y" }& y
}
1 b) z) X) y$ e
}
* m; Z4 @8 k; F ?
6 U, F# Y, l; f% y) K% t
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
- O4 v+ C: \" T. q0 Q: [* R3 j
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) );
* e2 O0 r4 @: O( U* V/ k
::SetLight( bLight );
( F: e: C" ?/ a- }6 X$ z8 g- s
6 n2 `9 z6 R. Q h
// ±ao? ?D?í???ó á¤à?
# \4 l! G; S! X2 w+ I
m_pd3dDevice->SetMaterial( &m_baseMaterial );
! I% z2 S2 T3 h' m0 w/ t" {7 r5 D
7 {& _$ Z# g) b$ a- h/ \
#endif // not WORLDSERVER
6 T4 e; H0 n. Q0 ?
}
0 A! z1 Q4 v3 D0 D
并更换
# X% x& c& ^' @3 M
Code:
' ~' y1 x' x; Q F( K+ Y i* P
__FLYFF_INITPAGE_EXT
* U' d% l7 [, o. C
定义
2 O+ P1 d: J" B" z) f) A) @
5 O0 _ O" [" o" K
. t, ^) c7 S/ Y: E* Z- U; E
1 K( U8 _- g" p; Z2 r3 [
% H0 v+ p% p: Y; o; Y- }) A
现在终于删除我的狗屁加速...
0 L8 R# d2 d/ _; C% r
& Q% K4 S4 G3 ^ n3 }' E
* k$ u, G, T8 {
* X2 O0 ]0 m5 E9 C* S: q
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2