飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
8 g5 l `$ G% P) l# c# V3 s8 N7 }; g
尾翼:
0 T4 K6 v4 U, {/ h4 D' I
, Z% w5 x+ h9 |7 U: I9 X
代码:
o3 R2 |3 M! [. X' |
CWndAutoFood::CWndAutoFood()
( o* R2 e2 u& H2 h5 o
{
; y4 U, H! ?6 V' ]
m_pItemElem = NULL;
7 C4 O9 Z5 }; w- w B9 J7 }' D
m_pTexture = NULL;
$ O; ~$ W& w; M, ]. E3 l7 _& O1 p
bStart = FALSE;
0 i2 y3 D4 `4 e7 i% p" T# ]
}
l, t, X# z! N0 N( g+ O
9 W+ [7 P# v+ R( C
CWndAutoFood::~CWndAutoFood()
2 `! p2 T$ Y& [& t
{
! d5 s& w. L% b- C
AfxMessageBox( "AutoFood ist gestorben
" );
1 P$ G6 V) y6 A- i
}
+ M# u7 X1 M1 F4 i+ v3 T
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
5 I$ Z f- k. u! `6 A
{
7 }" a& g8 F5 I3 p1 m
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
% C! w4 z% S% T y, @
}
3 L( b4 _, K- J: l8 N' M, G2 s, `1 s
# L/ [3 [! e( E
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
) Q) c6 Y' D# W* \
{
8 s/ e, ^+ h r& O, H
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
7 O, y* N5 m0 [, @
CRect rect = pWndCtrl->rect;
0 b5 D0 C' X$ M, t
if( rect && rect.PtInRect( point ) )
7 O3 B& a" [& H: E/ W
{
% v' A I; r& v% K
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
; o0 R" `3 _) Z! \; X
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
; h' _. a5 x# B" O
{
/ ^: C- P4 u. Y( X6 v" O" |8 x* ?
if( m_pItemElem )
# d* `! d' \6 `& Y2 u8 ~; V5 R) b
{
9 e+ p6 v( P9 ?$ ~. a) B' m" z
m_pItemElem = NULL;
3 u& F3 p F) K5 b* D+ d
}
; h8 q& W! F. p
m_pItemElem = pItemElem;
" c; ]& }9 w% f( V/ A( Z, Q! i% Z2 ?
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
0 I" _6 s& L% l# o" Z
}else{
4 `$ {6 ?3 @* c
SetForbid( TRUE );
4 G# g& `/ B/ s9 f! G
}
& U1 O! ?5 h4 b% G( G- T- {
}else{
3 Q4 y3 [* y2 ?9 q; w) i0 M! b
SetForbid( TRUE );
# R' f' w. }' P. l, E) n; R- J7 j" e
}
7 R2 V5 Z, H$ T5 r7 q
return TRUE;
3 ]; z7 n {1 T. x. `
}
! t6 h& L; i$ V5 l' g
* U5 R/ Y K: ?4 b
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
5 j% p k/ Z4 l5 \
{
0 C" E' t3 T3 O
switch( nID )
3 Q: {; [8 k" j& l0 y, V
{
3 `4 Y/ M/ T: E/ k8 M, c
case WIDC_BUTTON3:
& n2 O @* T) @$ @& |# N
{
( A% F+ r' X3 F: B" P- R! W
bStart = TRUE;
$ G/ z+ f6 [9 F' \. g( v$ C! N
break;
7 a% i7 \- }" u) g# n$ K& ~
}
: ?& J+ j7 |8 u, H* p* K
case WIDC_BUTTON4:
+ M) R+ U) u" m' p2 R
{
% r2 a0 ~* w3 X$ |
bStart = FALSE;
* W( h+ W! b9 T8 ~* h
break;
+ U5 K9 s0 V- b3 G+ _7 r
}
, `7 Q) V7 G- P# Q; G
}
7 p1 o+ B. I. b" k) `# j$ u' O Z; \$ p
return CWndNeuz::OnChildNotify( message, nID, pLResult );
) V) B! W0 _4 C6 f1 x0 A, T. ^* p* ~
}
% _# M9 _5 i% `; F7 K r
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
: w0 ~6 Y9 ]7 S5 J, e8 ?# q
{
r6 ^! y, k* Z- N1 ^6 Q
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
, I: y- B6 R# @4 B
if( bStart || !m_pItemElem )
- q- r7 w6 Z% t$ c: j
{
: s" ]/ J, S7 A, Y. B9 T
pBtn->EnableWindow( FALSE );
; a' `3 [1 _) g9 `% X1 h( X
}else
: t! @* d& [( F" h, `8 c% A7 O
pBtn->EnableWindow( TRUE );
' D* J4 e' V( s& u& ?3 R! ^4 [
if( m_pTexture )
1 u% [5 Q, @* ]: a6 m6 u
{
0 v T; h2 E. z1 t: i# u2 D
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' ~0 r# b' q6 O) T
if( wndCtrl && wndCtrl->rect )
+ i; t: V* l" U- f$ Z
{
: S5 p( W8 S1 J" D
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
, \; K2 A' |3 n% K
}
/ l, h3 Z/ ^4 d6 h! G L
}
/ S. M" p8 A: ^9 o" D
}
3 p6 L" u) j6 }& D3 F+ D
; d Q# M1 F/ `; Z$ p" P: c- M
BOOL CWndAutoFood:
rocess()
% m! g: h/ t- p9 }5 S9 x5 \
{
9 ]3 X2 Q# o% B0 w
if( bStart )
- a3 S1 R6 H+ n% J
{
5 ?" }' K$ m9 @) v) d: i4 f2 u
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
5 Y, e9 f" F5 [3 \8 Z; i$ \9 a
{
8 P Z) k) c8 @4 ]4 L$ T9 e9 P5 ]
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
4 Y4 `& r- i% y* A* L
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
' M3 R1 M2 G0 z+ N1 [. f" I7 A
}else{
# s, X. b' y6 S+ Q2 i9 H
bStart = FALSE;
' [6 p- D i* P0 Y2 {9 W
m_pItemElem = NULL;
, J2 [2 ]6 b) U) T$ P
}
, @5 b3 {( ]8 Q- h1 _! K
}
7 X+ e7 @ v6 g' w* a; [
return TRUE;
Q; l( z5 z4 _
}
' C: W. c! s" B) I) s) o5 ~* y# d
1 ? C( F5 A, v% o& s4 m& D
登录视频废话:
8 e. `1 R9 c2 U1 ^5 W
尾翼:
! ]# ?: _) W @8 o Y5 @
- [/ ^ o; H! \) u/ L
代码:
) f7 c1 j( r' Q) ~& n- q
. ]' [, Z: i( Y* N2 V
void CWorld::SetLight( BOOL bLight )
4 Y D/ J5 G# @$ e- Q9 Z7 i
durch
; q7 K4 ]! ^ B' F
Code:
! y- h% e. @6 u) {7 r- r2 ?8 b
void CWorld::SetLight( BOOL bLight )
* J% o8 h1 V( Y
{
0 p5 ]6 C5 e7 y# K2 t
//ACE("SetLight %d \n", bLight);
! Z6 Q' l: K. K0 m
9 }5 h; l" X+ i1 W) b
#ifndef __WORLDSERVER
2 S, s) V! j& `, @5 E
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
) r6 u* i3 b2 {! b0 F
CLight* pLight = NULL;
' {2 ^1 F. c5 U# e- M& r8 B6 Y
6 p9 r+ u0 A5 @) e9 T
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
0 P4 Z0 R O& w1 u9 c
: Z9 h- e# A4 x+ _3 D/ c% O
pLight = GetLight( "direction" );
) U+ D( u. q7 Y
$ Q4 [) a: u2 t" q. L8 {
#if __VER >= 15 // __BS_CHANGING_ENVIR
! n2 Z& E: ^' M
if( g_pPlayer ){
7 n. T* A9 e0 p% ^4 X
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
4 {# E2 J* T. T' v) A: A( C
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
* i! P6 B1 p# c r: O6 O% s
{
5 ]. w# W1 W) t4 x% C
if( pLight )
! Z$ s. D' ^4 A1 I8 t; A: K
{
- F' A1 \ j7 ^. c
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
% g: U2 A0 Q8 O
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
& I8 E2 @! F3 P" K
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
' q* B( I3 P8 [# Q3 z3 \- p8 Y
7 c$ S' z8 h R/ v& c3 `
pLight->Specular.r = 2.0f;
# x7 b P* X, g+ b {2 s# {; g/ a) U
pLight->Specular.g = 2.0f;
# I2 ?* ?% D3 r
pLight->Specular.b = 2.0f;
w" m* z' ^# L% s' X6 E
" i5 b1 N- g# E9 M J
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
2 ]' }1 g0 ]0 s. v$ _
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
. p S8 c2 x$ A7 \
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
2 F# t4 G* g! Y% z
4 ^) H' Y3 W' U$ v) z; f
HookUpdateLight( pLight );
, v# k5 |7 D$ _+ {( }+ ~* m
$ b) x# z7 Z' n* H; G, {) @( }
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ |! L4 q, M8 p! K% ^8 }! W
2 M1 o8 ^2 f5 N- F k- b5 s1 V
pLight->Diffuse.r *= 1.2f;
; ~- H6 b8 f# `8 ~" W6 a
pLight->Diffuse.g *= 1.2f;
% ^( g7 [5 f! k' U8 c# o6 ^, t, a
pLight->Diffuse.b *= 1.2f;
# B* M! A B* t
6 {7 ]0 c6 v: q8 n8 y
pLight->Ambient.r *= 0.8f;
8 R! ]1 l1 a8 D+ U9 |: M
pLight->Ambient.g *= 0.8f;
0 }. r8 q& p b% j0 s6 N' w* d
pLight->Ambient.b *= 0.8f;
: u8 W- q% a( K
+ \2 l" x) }% G% W. @7 n8 n: j4 e
memcpy( &m_light, pLight, sizeof( m_light ) );
0 W: U- @- W3 }0 \' a1 a& [; {& I
8 |) L/ n7 u3 c; |6 M H3 v: M
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
$ W1 a3 V" O6 F3 k- x6 N
D3DXVec3Normalize(&(vecSun),&(vecSun));
8 ~# J7 R/ x) G6 J8 t @6 k0 a
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, O4 s2 I- M; y* Y; O! O/ t
pLight->Appear( m_pd3dDevice, TRUE );
, Y" e ]) W7 k* \! `
8 R* F; I. _+ |! C, B
DWORD dwR, dwG, dwB;
1 h# e5 C6 |2 H: Z* j5 Z
dwR = (DWORD)( pLight->Ambient.r * 255 );
% y( E$ M% k9 s, j h3 j
dwG = (DWORD)( pLight->Ambient.g * 255 );
' Z$ C4 A- f- z
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 S: S; X. v9 C1 }. }" h& S: y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* _) F- v; I1 ~
}
. b% C# s8 y% h& @8 ^6 g, I
}
) i/ t8 t- ~; y5 h: k3 S' A" s
}
+ O, ?+ g& h6 l' b
else
6 J+ p+ \% ?2 z5 h
#endif
- D+ ?0 ]9 W% C* j4 g
" H; z: u# k9 w" B6 D2 Y3 I
if( m_bIsIndoor )
7 b1 H j! v7 E0 }1 Y
{
% }- ? Q8 {4 |' m ~8 H2 x
if( pLight )
$ j' Z0 g7 r7 i$ p1 h v; r3 h, t
{
X4 Z5 p! z& b4 f
// à??μ oˉè*
1 `$ E6 x$ F* i, S; H1 _
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
, ]9 d; c* S' E! u4 m ?/ L1 F
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
$ P% U$ Y/ @" g0 J' k) `
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
2 T) T5 x. D, b! ^4 ^3 @5 N
& I% _2 y; R& A1 t, M5 n0 O
// oˉè* ??à?
' f2 l; W( t" c i( p! t
pLight->Specular.r = 1.0f;
3 s) M- x& v- t* T9 o8 \, v0 N
pLight->Specular.g = 1.0f;
, |& K6 X4 [. z
pLight->Specular.b = 1.0f;
9 x, t6 X! ^3 T, X$ i3 n3 z
// àü?? oˉè*
( B$ U" n! M, V* p9 y. J
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
6 A% o1 {% z# p, W5 W3 s/ `1 u
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
; ^+ y9 ]2 o9 V
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
2 {) R. C: W& d9 t+ B
# @. h3 \+ T# d% B/ C
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 F6 i( s1 H9 y# P/ x+ l$ t% ]
{
7 E3 |9 S" x* G. ^ X! b/ W# Z
pLight->Diffuse.r *= 0.6f;
0 |+ {+ A: k' M' T
pLight->Diffuse.g *= 0.6f;
! E/ y- C0 V" V$ ?
pLight->Diffuse.b *= 0.6f;
9 A' H% \3 E) c) \, r, u, w2 m
pLight->Ambient.r *= 0.7f;
0 z, I, ]( b+ I$ [ G0 L4 L
pLight->Ambient.g *= 0.7f;
2 j4 U5 e' t& E, F
pLight->Ambient.b *= 0.7f;
u1 G k( R3 s: g+ }8 O4 l0 d' ^
}
4 m, D# _& D& |# ]: `$ ], S4 P
9 D; e; E P+ i! t# H
#if __VER >= 15 // __BS_CHANGING_ENVIR
; ^! n' S5 [& z$ c% E
if( g_pPlayer )
! H9 K& `4 N$ C* N! s" {# m, T
HookUpdateLight( pLight );
' T2 }! r+ b& q' C5 @
#endif
* G. \, K+ h: j5 n4 H/ n
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ L% }6 ^$ A$ Y4 |/ K, t" f, n( _
; o4 d; [% c$ K# z0 N
pLight->Diffuse.r += 0.1f;
- K' |2 w. Y4 ^
pLight->Diffuse.g += 0.1f;
: Z. e. z' q7 H, I* z0 b0 Q
pLight->Diffuse.b += 0.1f;
) l8 e0 M% O' t% ~ P0 z
// oˉè* ??à?
7 M! ], g! r/ V5 g8 n, D. A8 `
pLight->Specular.r = 2.0f;
9 b9 X9 a) e( w& j; P8 n
pLight->Specular.g = 2.0f;
. x" F7 t- e: u2 k0 h
pLight->Specular.b = 2.0f;
; ~ [& K" K% Y
// á?oˉ
% x1 @8 S# f8 m- B
pLight->Ambient.r *= 0.9f;
& f( U& g. J# ?6 d& a! a, }, R
pLight->Ambient.g *= 0.9f;
' _* S+ x1 U3 E0 u
pLight->Ambient.b *= 0.9f;
. t0 [4 N' Q& q" l. l7 \' N
+ T4 [# y2 u0 }7 ]- r
memcpy( &m_light, pLight, sizeof( m_light ) );
2 j& a: y) m0 Y4 g
' i9 M) \' Z7 k- T
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
8 \# s; u7 w3 K& }7 F
pLight->Appear( m_pd3dDevice, TRUE );
- S$ a# ~6 F9 t. Q1 Y0 o+ z
' a( s9 c0 @6 l9 O. n" P
DWORD dwR, dwG, dwB;
8 v# p' u, _2 V# o; d% u8 `
dwR = (DWORD)( pLight->Ambient.r * 255 );
: K, ?+ |& I% Y9 C6 V; ]
dwG = (DWORD)( pLight->Ambient.g * 255 );
# L2 x# e9 ^$ ~( f- n* T
dwB = (DWORD)( pLight->Ambient.b * 255 );
. D: U( f( Q; h5 g i
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ p8 y- L9 J! _, x* b
}
1 d9 o O8 j* E( w# |- ]
}
) m3 j+ v3 e* Q: f( C! y' K9 w
else
, F+ v9 A7 B2 |2 L# S6 ]
{
( ?2 {' i. K" g+ X. R4 ~3 d% ?
if( pLight )
' C9 i+ r! \: l8 ~0 f9 i9 u8 P
{
, e; B3 h! e1 u3 W) o6 t* ~
8 n0 v' ^! a- ]' M" k! a
int nHour = 8, nMin = 0;
0 p" d+ ~# F2 ]3 e
#ifdef __CLIENT
( K# O9 [9 f7 E# P+ r0 h8 q( u6 t
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
& P3 Q/ ?' \" x; @
nHour = g_GameTimer.m_nHour;
! G) Q$ I% X! H
nMin = g_GameTimer.m_nMin ;
: J- f9 ?; E4 t/ {% q D
#else
8 F' {$ V( i8 A& V7 p* N+ D
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
. X- V X+ v7 W- O9 F3 _
if( m_nLightType == 1 )
- Y g( D1 r: e: W' ?, k; h. r
nHour = m_nLightHour;
0 B; X6 X: @# `9 J/ i5 F( u2 u L
#endif
! h5 X0 G- E! A8 [1 Q6 y+ E3 {' `
nHour--;
1 u5 V- a8 G: L- W
if( nHour < 0 ) nHour = 0;
; o; Y6 ^# h/ |# l
if( nHour > 23 ) nHour = 23;
- X% G- a1 w* Z l' i, t
# R: K" {$ d* A8 Y9 P% z
//if( m_bFixedHour )
8 o3 ?, F* z \$ ?+ W0 d, M5 y
// nHour = m_nFixedHour, nMin = 0;
& {; A- D6 N9 H; a- b
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
6 A8 N6 x7 r4 ~: F
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
$ v3 ?1 I; {9 ]6 t; V( [+ b3 `# m
7 ]' A1 P- x; Z. q$ J, W- C! B
//m_lightColor = lightColorPrv;
) T/ N& ?: `2 v: z6 K! d% J+ h
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
$ Z$ L, Z* O/ J8 v4 Q7 ]4 `
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
! X3 x5 m1 R" h$ h. ?3 h, D5 i! m& F
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
/ R2 k- A7 {1 ? o% C1 w
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
, W8 n4 `. {4 i+ B0 c" v; W# `1 _$ W
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
' x* P& Z0 I6 s7 G: y
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
+ t/ L! I+ d2 X# Y& z5 l1 w
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ f5 f+ ~" c; Q3 j9 \* Y% ~
: f+ A+ B; x# _$ e4 ^+ e
// à??μ oˉè*
8 o: o2 P- J0 q( S, @& f
pLight->Diffuse.r = lightColorPrv.r1;
5 N& W' o6 l0 {6 |' {( d0 r
pLight->Diffuse.g = lightColorPrv.g1;
" Z! h9 \& s0 `: B
pLight->Diffuse.b = lightColorPrv.b1;
; O: `- G1 l" ^& C+ B) P+ m
// oˉè* ??à?
4 I! M# F9 @" h# u& q- ^
pLight->Specular.r = 1.0f;
- ~1 @+ z, I1 |% P4 u& @
pLight->Specular.g = 1.0f;
9 t' b0 O* d$ Q' x6 N. i# {1 @" M
pLight->Specular.b = 1.0f;
6 [ ^$ G7 o# S) K, R0 n" y# }( R
// àü?? oˉè*
1 J7 g7 B6 _: ^# A5 z& \, |) y! W) w
pLight->Ambient.r = lightColorPrv.r2;
% x# W+ {4 E0 v# t
pLight->Ambient.g = lightColorPrv.g2;
7 v2 H) W8 R! S9 z( l. P6 r
pLight->Ambient.b = lightColorPrv.b2;
: I6 J% ~7 i: e# \& ^
' E3 }' ]% z! y( w1 k8 I$ {) K
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
+ z; r# d8 A; d, v1 l5 C5 ?: K
{
. t) Y) E, G! A9 g' J
pLight->Diffuse.r *= 0.6f;
% L6 i ^# `& ~" W# v8 F& d
pLight->Diffuse.g *= 0.6f;
* f1 y% Z! S: Z$ T' z l9 e
pLight->Diffuse.b *= 0.6f;
7 ~/ U8 ^# C' M: k" {% \7 x
pLight->Ambient.r *= 0.7f;
& M8 j( N3 a6 F ]
pLight->Ambient.g *= 0.7f;
3 f( n6 ?$ G! N/ e2 p0 \ A, H
pLight->Ambient.b *= 0.7f;
: H1 }7 l. m6 K6 w. j
}
: y! ]6 } m, H) w
" k! X: L* H& C& U
#if __VER >= 15 // __BS_CHANGING_ENVIR
) M; K7 J* j% _( k# Z
if( g_pPlayer )
0 m5 @8 ^% d5 j7 i; K
HookUpdateLight( pLight );
0 P f$ I& S/ g9 g6 I. e+ n A% N |
#endif
- \- L# l+ T' y. k% I
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 C1 H, j7 e3 n; h# O
- N2 \5 q* E$ t' ], e( ^& `
#ifdef __YENV
( Y ]9 g9 T7 c% d. N2 J n
pLight->Diffuse.r *= 1.1f;
. g2 d1 b9 b3 p
pLight->Diffuse.g *= 1.1f;
# y# X* ~3 |3 c. d+ K. b/ p. u: d& m
pLight->Diffuse.b *= 1.1f;
% y" B3 a% n3 y7 ?2 n
// oˉè* ??à?
6 X) w7 z4 \9 [. Z+ W* a
pLight->Specular.r = 2.0f;
( P. } I- V9 e- |
pLight->Specular.g = 2.0f;
" }% s% W& V: i* ^9 P& I8 d
pLight->Specular.b = 2.0f;
) }$ g& H1 g! U" C
// á?oˉ
8 n( G$ h% ?- f2 m
pLight->Ambient.r *= 1.0f;
! Q5 i- `+ ]* i4 Z* q# X: B5 j, e" l
pLight->Ambient.g *= 1.0f;
* ^2 `! L* D. k1 f
pLight->Ambient.b *= 1.0f;
; E" g$ I+ x' J/ D! M
#else //__YENV
" T. V( I$ C+ s% G: Q6 M1 G
pLight->Diffuse.r *= 1.1f;
7 `+ z$ o8 z( U. j' \0 o! n, I6 _
pLight->Diffuse.g *= 1.1f;
4 Q% B* {& v- u; ~! V! E
pLight->Diffuse.b *= 1.1f;
; K+ I$ [- ]& [
// oˉè* ??à?
, {+ k7 m1 U6 _$ ~7 {5 A
pLight->Specular.r = 2.0f;
' w) L6 ^& d' s5 R" W
pLight->Specular.g = 2.0f;
5 u& A) t4 K4 O+ k. w- M0 Q
pLight->Specular.b = 2.0f;
) _8 v {. x4 C
// á?oˉ
0 D" |6 v: w( ~ t% }
pLight->Ambient.r *= 0.9f;
$ Q$ l* S" s5 H- t
pLight->Ambient.g *= 0.9f;
, N. F3 X+ j6 q9 e4 I
pLight->Ambient.b *= 0.9f;
$ i, j: M; E2 \# O' Z5 I
#endif //__YENV
4 ?/ ~: M2 a* B5 T$ |( ~
" A0 y* T, _: o0 Y/ ?$ i
memcpy( &m_light, pLight, sizeof( m_light ) );
# S: N2 o! U, f! ~
9 q7 N8 f( r$ E0 d; Z& C( i
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
. i# ~ b; D6 v2 C- j# v% V
D3DXMATRIX matTemp;
2 ^# w4 [* a7 ^6 X3 I5 w
static const float CONS_VAL = 3.1415926f / 180.f;
% x( H% ^4 R% P! W- s
8 c0 @% V4 o' W# f4 x# d; g2 P
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
4 z7 ~8 ~& p6 ~# x; a+ q
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
6 E( h+ a& D" P# U) i" F
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
0 g f1 z* r( w6 L6 ^5 |" p
pLight->Appear( m_pd3dDevice, TRUE );
+ V: [2 J( ~4 y0 {
: W! `1 f. F) `) u% c7 D
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) R6 y; F9 X0 m* D' G7 y0 i
// D3DXVec3Normalize(&(vecSun),&(vecSun));
; [$ p: j. R# n! F. [# E3 ^
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 m4 X! K* N: x: |
+ v7 t7 a! ~" r2 G
DWORD dwR, dwG, dwB;
% e; v* H' \& R2 c, W* p- N
dwR = (DWORD)( pLight->Ambient.r * 255 );
" q& y; u- J- A- V
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 _+ S) F9 H/ T. k0 |
dwB = (DWORD)( pLight->Ambient.b * 255 );
% t) G5 x6 v2 L9 d0 M
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
U6 O* ^; A2 `% o- u
}
: Q0 r% O& c, l1 F2 N
}
0 x* ]* b% n* ~; `
" y3 B5 m8 d2 @% @; ]' U
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
& Y* L2 Y" M6 r0 |
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) );
" X) s6 ^6 @: [$ Z
::SetLight( bLight );
* a) b! _ ~* o$ j' [7 b/ v) \- z$ f
- m: e0 {* R! M! h
// ±ao? ?D?í???ó á¤à?
& [3 c7 D7 R0 H: v
m_pd3dDevice->SetMaterial( &m_baseMaterial );
& B2 J$ Z5 _1 S8 D+ H5 U0 n
k6 ~! v+ U/ `" T
#endif // not WORLDSERVER
& G5 u; W& T* l4 w
}
+ Z7 a6 s* T1 ~3 ?4 J1 ] y" m2 X
并更换
& X! w0 Y: C$ u) l
Code:
; j6 [1 M2 X: x! m* V3 c1 K
__FLYFF_INITPAGE_EXT
( z4 O) _3 v# E+ `
定义
: _1 k- x- X! G$ t E
7 E( D/ L1 S& }3 q
" F& M8 S/ @( s, ~* Q( a
8 |* m- `& m- ~8 s
. _; J6 n" p- b; A: O& J
现在终于删除我的狗屁加速...
: z* |. P( ` O1 c; K
, `" z) T2 D5 c5 B# p8 m" m
2 i, q+ p; _- c4 Y& |
& a% M, s, Y4 q, e: B' Q0 m5 t
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2