飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
' ]1 C. g% _( I2 l5 \# ]; a* \' c" U
尾翼:
' i) _: t# B7 f' J4 F, p% z
9 T# s1 ]& r V/ R. F
代码:
/ h: N3 j4 F" Z: P& r* m
CWndAutoFood::CWndAutoFood()
/ y- g8 W' Z2 p1 |( ?
{
1 P3 b; H: e# V0 C* h, J
m_pItemElem = NULL;
4 ^, ]# U! r' a% J5 X" d
m_pTexture = NULL;
, W/ g- Y6 g2 z
bStart = FALSE;
0 ^8 h* L0 h: v$ C
}
& H* f; h* D9 t. a0 B
5 h" G8 |) A- ^- D8 \+ k
CWndAutoFood::~CWndAutoFood()
+ Z% F# @ N, O4 t# e
{
6 T5 z. g# c0 e2 z
AfxMessageBox( "AutoFood ist gestorben
" );
- ]: B8 h% k+ Q3 L' t- N$ {
}
L' A) P" L4 _% M) E8 Y: j1 g
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
& ^) y8 b8 w* H( y& ~! \, [- }
{
* Z6 v% C! N/ s" T0 A8 `8 b4 \* f- y
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
w) t; H8 {7 G
}
$ R9 N1 U! b. l0 {
% q w6 M: C( l" ~6 Q
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
. W T9 E/ {/ f, P0 D
{
4 v1 |* l2 [ U- j; k; P) M& ?9 W
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. z9 Y9 x; F5 f' ~3 {* g
CRect rect = pWndCtrl->rect;
4 Z2 h' [: `3 s
if( rect && rect.PtInRect( point ) )
, z0 s1 h9 k3 O7 J
{
h7 h1 [( j3 K# m ~3 g
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
0 S4 B; E' G8 y1 N5 P
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
, D. R, s c, w! }
{
* b! A0 C$ r8 _& d( u$ i3 K
if( m_pItemElem )
- [' ^4 R. K, J. n* a% y. o5 ^
{
c7 x) c+ g5 a' L
m_pItemElem = NULL;
7 B( w: l j3 |9 c) f
}
$ H* N) d* w9 o+ M5 o" ~4 U1 o3 q! w
m_pItemElem = pItemElem;
6 L" b/ t) H$ E+ A" e
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
" ]8 k4 i( s0 X! s4 P- f& |
}else{
$ b! }8 p" @' e( @& T! t V
SetForbid( TRUE );
& p s2 e7 c; f7 Y* a
}
1 d d- N2 N3 ^. R
}else{
% c( g- m4 C$ p% d" X8 t
SetForbid( TRUE );
1 v9 _8 ^4 i3 r% |$ I. {5 t
}
! f+ I6 C, W4 C
return TRUE;
7 @2 Y& V' O2 E
}
8 W( q2 W5 V$ a3 K0 }
+ M/ m u$ q9 k4 i% ~4 y
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
) v6 [' y' \( n7 Y/ A0 o
{
# E) @/ E) m) S4 V
switch( nID )
1 s7 ~$ ^: E! f: b" `$ U
{
+ ]% t6 y- k- f8 H: Y
case WIDC_BUTTON3:
1 X8 ~4 F2 Q: K% w }+ ?
{
0 S; ^8 ]9 I( x# O1 `7 j3 t3 I
bStart = TRUE;
, u' c6 U' g+ B) N$ v6 f3 `
break;
5 w1 K. m5 ~+ i9 w1 u; {/ E: d
}
. {6 T( m6 j' b$ b
case WIDC_BUTTON4:
- v9 }- {5 X( H
{
. o' H) L0 M# U, }
bStart = FALSE;
1 }0 ~' T) [( \% r, S `- I
break;
0 P) k6 b. g2 [5 O y! h$ ]/ C
}
7 }8 B [4 X9 E6 r/ ^& Y( {# e
}
9 @) G$ P% s- N# u8 t
return CWndNeuz::OnChildNotify( message, nID, pLResult );
9 j& v0 S9 z- W( N7 H0 N* G
}
; K. M5 Z$ Q0 v- G
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
/ s e0 r9 Z& d
{
; P2 U: m1 h2 L7 e+ c
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
& p! f8 Y6 A7 U* B1 R
if( bStart || !m_pItemElem )
8 a* D. O. b: U+ k+ A: O
{
# _* F) @: c/ _# k! [5 w- ]5 `
pBtn->EnableWindow( FALSE );
* S5 q+ M3 b5 M. g# B
}else
% ~- W' e3 l% D( H
pBtn->EnableWindow( TRUE );
; e- K4 k9 X) K3 k; j
if( m_pTexture )
9 \4 e( A' } ]2 @+ m) O% W. P
{
/ {' k9 G7 A1 f
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
) S" A6 U1 h; h
if( wndCtrl && wndCtrl->rect )
' @* z$ _* B! i8 P" \
{
, g/ v. F4 i* t- v" L2 n
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
; ?1 P, ]* z3 I) n$ M' u
}
5 ^/ {9 a' X- W( N) _! s) e9 j: j2 k
}
4 Z4 I$ o7 L; I O9 D
}
$ h- g9 P8 T; y5 C8 ~
5 l K# {: D1 b. y) v
BOOL CWndAutoFood:
rocess()
8 g5 t6 P3 M' a- S; X
{
: r8 k; n) P6 w# h) `
if( bStart )
0 i" m! R; T1 \6 s2 t2 C( t
{
& {/ C0 K2 k1 g6 i% n+ ~
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
- d6 f* a5 i* {0 t# P3 V% {
{
- l% q7 k$ B8 t3 a. g- f
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
3 `: k9 m7 n' p- i, i+ {
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
" L0 `. @& s7 |+ q$ U/ T8 o
}else{
2 I* w; u2 J, k Z& T6 C: D: s
bStart = FALSE;
5 L r) A* {0 {. M) \
m_pItemElem = NULL;
7 ~ ^2 u2 P+ c6 i0 j
}
0 T) U+ j! x% S% k0 z- w
}
2 H) G, U' T8 J" \
return TRUE;
3 j7 I6 V$ J# h, K
}
' U, F/ c5 k$ _/ s
. e* B) }8 f2 R. ^$ Y Q. Y: ?
登录视频废话:
; R3 X4 v( {" c- r) E
尾翼:
' e8 y8 a: z1 s) r
6 A9 o! ?- i9 {' S# p5 u% o
代码:
! O( B0 u5 i: a. e
% M( ~6 L4 U9 \/ j( k$ C$ \& |" ~: J
void CWorld::SetLight( BOOL bLight )
; W+ q3 A; ?7 Q) f2 ?6 ?% l* ?
durch
, W, E$ h# |6 H* e4 o$ n/ S
Code:
; K4 \# {1 ~+ f) [
void CWorld::SetLight( BOOL bLight )
0 V, s" x% E6 V4 v' g0 h2 p
{
5 I& [- O% `3 A8 W
//ACE("SetLight %d \n", bLight);
6 p) I% A& [* {
1 V5 J! ?# _- s
#ifndef __WORLDSERVER
3 u S- n6 Q. _* U' i& s; h
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
/ `6 @" \8 Z+ k3 F. E
CLight* pLight = NULL;
1 o, @ y" \$ b5 ~
. N. U9 I" B, _! B
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
e6 G! V0 R: p
0 _1 h' v. g) w+ A
pLight = GetLight( "direction" );
7 n- A D, t& q2 H/ c* a) L
* f- L# Q( b2 X/ p
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 U+ o2 I; f; ^- R* h/ ]+ _# a
if( g_pPlayer ){
/ R5 R8 b0 t g! K0 S8 d. y
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
! S' ?) m6 [ l& i6 E
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
7 D: r% N2 c. t1 C
{
: m: W% F* t4 U# t! \( a
if( pLight )
* F0 Q* j# v& F, s6 M
{
" E- `9 a4 o6 A6 H
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
# \1 V- N3 I& L) N: e( I( X: W
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
! U, d: o# g% J) t% T/ ?: s
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
; L" P& j; B3 J. o* p
: q1 u" d$ w& z7 _& V
pLight->Specular.r = 2.0f;
# z" X& [. a, _4 w
pLight->Specular.g = 2.0f;
! R/ ]8 w! _% U m+ R5 u9 Z7 n \+ c. K
pLight->Specular.b = 2.0f;
& L8 Y+ r- ~1 D& i
0 P$ e/ @" `: ]6 y
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
5 V% w+ B7 D: y" t, D. J
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
0 ^% z0 ~* |4 M
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
# ?1 i; x O: n# `
& r: @! \& j2 M0 S' L
HookUpdateLight( pLight );
1 D% X) n: M7 M, z" x, Y
B8 J( d+ j9 P0 @) P
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
r7 t3 C6 v2 e2 [3 X* B6 G1 X
! r" d' n8 c' q8 G
pLight->Diffuse.r *= 1.2f;
/ b/ v2 H8 M" Q4 Q$ q
pLight->Diffuse.g *= 1.2f;
: B8 H! U, _' N( L, M6 P1 p
pLight->Diffuse.b *= 1.2f;
" a6 k9 D% }; o% U! L
! G+ g" g/ ^7 a# e; M# v
pLight->Ambient.r *= 0.8f;
6 w% e7 y5 I {* l
pLight->Ambient.g *= 0.8f;
# ]7 I/ L f# `1 g% E
pLight->Ambient.b *= 0.8f;
' p% m! n _" I# j6 O
7 {# r9 }. i3 R
memcpy( &m_light, pLight, sizeof( m_light ) );
( j; L: g2 R+ H: e
. Q t+ {# h0 V& n7 i
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
! O i8 c4 L e( j- B l
D3DXVec3Normalize(&(vecSun),&(vecSun));
/ |7 I2 E" o" y7 M. T
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
8 V* f7 M& q4 d- ]6 m+ D) ~ d" p
pLight->Appear( m_pd3dDevice, TRUE );
* _9 k5 i7 v2 D: {0 E
) i. r& [$ T# T. S$ y; O
DWORD dwR, dwG, dwB;
& f! U7 p6 l$ K* \. t! i, L, Q
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ f& L3 ^, s$ B! O4 j2 |
dwG = (DWORD)( pLight->Ambient.g * 255 );
& z" N+ |( Y/ Y! z! B! x! c
dwB = (DWORD)( pLight->Ambient.b * 255 );
, B$ u' E7 @3 g: q7 b7 _8 _! f
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; p( E s( b2 o- [* E. Z7 k
}
, o& z$ C& ~% {1 v
}
) ?( {$ X; W1 u1 `0 o
}
?% n3 l, P+ |+ T% U. c6 {
else
" y# X b- S1 u+ A! h
#endif
" G' b0 O6 R4 o% D7 g
' e3 j# h7 O o4 H
if( m_bIsIndoor )
) [2 n- L6 N* l$ D* g: \
{
+ G* n4 H! B$ T; O! m
if( pLight )
- ]8 A3 r; o- B, R% K# u/ F
{
' e0 q4 l! x# b' G8 P! G
// à??μ oˉè*
% q. y3 Y+ h' i( x
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
; P; Q. K. N$ ]+ D, r- t3 z. M
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
& D {. s9 F5 M2 U/ q- u
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
* `3 N* ^: l) X, M3 f8 ^+ x
' S# F( `1 P! }" h. Z/ B" w
// oˉè* ??à?
- l4 M# z z+ [. l
pLight->Specular.r = 1.0f;
2 R) T, C* K! C
pLight->Specular.g = 1.0f;
s: q4 q( R( F) c8 w9 J" w
pLight->Specular.b = 1.0f;
2 u e4 l5 B, [2 |6 s7 i
// àü?? oˉè*
( Y: P" E, w( G) {. O0 I
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
: O. D# ]* ?. K
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
! [' ?' |) W" S3 W3 Z
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
% Q$ o* G4 Q' y# f- I/ u: n
- [% K- K8 `: @ B% Y- |
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
8 K+ e O( Y* s& W& m1 b
{
* c: @5 |" W6 @6 p
pLight->Diffuse.r *= 0.6f;
. M5 e2 f# }7 L8 n. h$ i
pLight->Diffuse.g *= 0.6f;
# k: e, {; {: y% W7 `$ y
pLight->Diffuse.b *= 0.6f;
* Z% ]$ I% ?8 a) l, X2 E
pLight->Ambient.r *= 0.7f;
+ U6 D7 |+ C B% F2 Q1 R/ }1 h
pLight->Ambient.g *= 0.7f;
: @+ N$ i j# J9 C/ B w
pLight->Ambient.b *= 0.7f;
) y+ K, ^- q( Z+ M5 @( u9 F
}
$ _: J8 ?8 b# w8 \" ^
1 {; o: _9 L9 V5 F8 C2 k
#if __VER >= 15 // __BS_CHANGING_ENVIR
, _: g2 y0 u" \ d
if( g_pPlayer )
: W( E( z2 C5 ^1 F- Y: ^
HookUpdateLight( pLight );
* n" X( i J7 l3 B/ L
#endif
% Y& W$ \- y! z1 C+ _6 ?+ v5 a& f( s
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
( a D, B" x0 V& O" U% R
4 C% X% x" T: W H$ b
pLight->Diffuse.r += 0.1f;
! z6 J# O n9 j% ^) y
pLight->Diffuse.g += 0.1f;
; x% m" G1 |8 {' Y P
pLight->Diffuse.b += 0.1f;
4 x* \# p$ z. L+ M7 c( K k8 u& R6 [
// oˉè* ??à?
5 l8 V1 P+ P2 R& b4 A( h
pLight->Specular.r = 2.0f;
: H, b; A1 j [1 c7 \: w( Z
pLight->Specular.g = 2.0f;
$ t$ i8 l4 g# r- \4 {
pLight->Specular.b = 2.0f;
5 _" N) _" L8 Z3 U/ l
// á?oˉ
% K$ K' ]2 f. Q6 n' r1 x" {: |
pLight->Ambient.r *= 0.9f;
' p4 D' \; C. h' [1 w
pLight->Ambient.g *= 0.9f;
; N3 L6 i( a9 |$ m+ T8 w: B7 A
pLight->Ambient.b *= 0.9f;
, ?' L" e+ b$ J1 N' g: n) {
9 a9 h: S& @& z' U! h: q
memcpy( &m_light, pLight, sizeof( m_light ) );
3 j7 u7 n2 c( l: B) m
" C3 m9 q8 O# k" `! V
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
6 a" ~' A- Z& f# o4 L
pLight->Appear( m_pd3dDevice, TRUE );
% {! Y: ?2 }- \3 m5 F$ J
7 M. B4 k) q, Q0 y
DWORD dwR, dwG, dwB;
1 f& a: w0 y' U5 d$ m) \1 g
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 v( M5 D; b0 r Y$ a, [
dwG = (DWORD)( pLight->Ambient.g * 255 );
4 L! ^ P S5 c2 r: u! i
dwB = (DWORD)( pLight->Ambient.b * 255 );
: B H7 G" m. w! i; P7 v; K
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ d7 |3 d, k1 _& z
}
9 |. m" x' ^( g B2 U
}
! A' o1 M: {0 m' U
else
2 x9 m0 ?1 l6 L. o% n0 ~8 E4 P5 B$ A% ~
{
0 C# w' Z3 ^# e2 S# t' ]
if( pLight )
. x+ B2 @) H" S! r
{
' n4 H" w6 T8 H8 P- Q% A
, v6 X0 m! p9 N6 s- \
int nHour = 8, nMin = 0;
1 J) K' [( i% I% e, H: f# v3 u
#ifdef __CLIENT
9 c& u4 F& I5 _/ L
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
9 I5 h5 j; |. Z2 ]3 W
nHour = g_GameTimer.m_nHour;
3 M' P, v1 _, G' e
nMin = g_GameTimer.m_nMin ;
. S- g4 v3 `+ B1 a
#else
/ a2 W8 }8 l' v" G M
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
$ K i. v3 u: p! Q( W$ Z
if( m_nLightType == 1 )
/ M! {, B: A4 ?0 E
nHour = m_nLightHour;
- Q6 g) n8 g5 i- I L! N$ D
#endif
* B8 Y( J( d0 V( Q. L
nHour--;
, V/ ~1 h4 l t5 Q9 |
if( nHour < 0 ) nHour = 0;
- o+ V5 _- C0 u% M# M
if( nHour > 23 ) nHour = 23;
; N% X9 C7 P/ k# R
. ]$ t& x9 U& l# i. ^0 F
//if( m_bFixedHour )
; P- T& V) J7 ?+ h7 z) c! F
// nHour = m_nFixedHour, nMin = 0;
# s" t- y8 S# R2 Q
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
8 o" h7 l- ~& k( y
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
4 g% z+ q) o: \+ c7 Q* T. h
2 ~ h' L1 q3 R6 w* i$ I
//m_lightColor = lightColorPrv;
6 z/ |6 U' p6 f; B1 P
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
5 W' v- S% H8 q! L. R8 Q/ M# \9 e
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
0 l( s& T+ z" T m+ \" Y% f q
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
+ v4 v- }0 i s2 |, z0 P
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
7 D6 h3 B/ f% [% l6 D3 o1 M
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
9 t4 f, F7 ^, p/ c# c) X, e+ s ?2 `, \
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
1 p/ N% V) Y e+ A ^
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
! S' B) e1 e. I# l, _8 j& {9 j5 Q) C7 M
) K8 M- K$ ?- C# Z E! t
// à??μ oˉè*
1 k% `) {2 M* W( `1 b- e* Y
pLight->Diffuse.r = lightColorPrv.r1;
! u0 t. I8 U' A# m$ x8 v
pLight->Diffuse.g = lightColorPrv.g1;
% w; f# C1 W4 d4 e' P
pLight->Diffuse.b = lightColorPrv.b1;
! z8 [+ J0 L" J
// oˉè* ??à?
# | D8 R( g- R3 A
pLight->Specular.r = 1.0f;
; C4 X* G6 _6 b( l
pLight->Specular.g = 1.0f;
$ o! [: D* \8 k9 M$ C0 Y
pLight->Specular.b = 1.0f;
! [( L. m: Y3 c6 ]
// àü?? oˉè*
7 d( Z$ d9 _# v. {3 E3 @5 D$ {
pLight->Ambient.r = lightColorPrv.r2;
. k/ j0 w& T, \6 F$ o
pLight->Ambient.g = lightColorPrv.g2;
% r* g+ C4 ^' u ~+ j+ C
pLight->Ambient.b = lightColorPrv.b2;
" O7 D* X& w/ H; ?, H9 ]4 ^8 _0 w8 I
# j$ F( K2 ~2 V4 ]. d: A+ G! y; s& |. r
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% ?2 C7 ^2 |/ ~+ t
{
. W' h/ B2 s+ h" B, s
pLight->Diffuse.r *= 0.6f;
4 D+ m0 X% \1 F: m* r+ p4 z( d& l6 a
pLight->Diffuse.g *= 0.6f;
, Q1 t& J! A9 Q2 G, N( J3 m
pLight->Diffuse.b *= 0.6f;
/ d/ Y5 g5 A+ Q1 c
pLight->Ambient.r *= 0.7f;
% x2 a7 F1 H; x2 Q G3 p6 V, _8 r
pLight->Ambient.g *= 0.7f;
1 S) D5 B6 B D1 n% V
pLight->Ambient.b *= 0.7f;
- I6 p$ T& W- Q% g% O5 G: N# w( _ x
}
$ y2 s( Y+ d, h8 G( m+ w
+ i$ W( C/ @$ ]6 _' x* m' ^9 W' B
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ u+ X# ?8 e' T. x
if( g_pPlayer )
3 O7 l+ D/ f# g
HookUpdateLight( pLight );
8 B0 u+ E9 ?0 M; U
#endif
+ n2 p6 t: X, t+ P5 l
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
( I5 D3 @, g; J/ o/ V$ [ R
) d% i: m' F: D& g7 r: f1 G3 g/ `
#ifdef __YENV
: G/ x/ @/ D/ ^" T' @4 R8 M
pLight->Diffuse.r *= 1.1f;
3 e7 L- o* N) F, h' g9 z- o0 m: E
pLight->Diffuse.g *= 1.1f;
/ S" z3 M9 P% C4 Q0 p$ v
pLight->Diffuse.b *= 1.1f;
/ W6 K+ w' H6 }2 }. G, P- w: ~& ]
// oˉè* ??à?
% B: o* k) \6 I m* E5 R
pLight->Specular.r = 2.0f;
7 r, ?" z) P7 {2 p* ~
pLight->Specular.g = 2.0f;
5 W+ {- ~3 V& Y0 w2 S }: @
pLight->Specular.b = 2.0f;
% s1 i, E5 W" i& H+ A* ~ |. s- D9 _
// á?oˉ
# p" H. a) e# ?+ d6 K
pLight->Ambient.r *= 1.0f;
+ `6 x7 n0 W% @% }. }
pLight->Ambient.g *= 1.0f;
+ t7 b: U& h3 R. S, V4 w- R
pLight->Ambient.b *= 1.0f;
$ |; F5 A7 Z0 X0 q
#else //__YENV
# f: L$ @# t- O6 Q0 I) v
pLight->Diffuse.r *= 1.1f;
3 `8 D# R8 U8 H. e; K
pLight->Diffuse.g *= 1.1f;
# W1 \# G: C# C$ [" ?# e/ ?2 Y. T6 r" D! Q
pLight->Diffuse.b *= 1.1f;
: P5 {5 E$ t# w A
// oˉè* ??à?
* k: D0 u# h7 ?2 a3 s: c7 q: z+ D
pLight->Specular.r = 2.0f;
: j* k# A2 X' ]
pLight->Specular.g = 2.0f;
, g! h0 A, i+ t5 q) t. t% M; h
pLight->Specular.b = 2.0f;
; l {1 F- E" g( u
// á?oˉ
1 g* e" H# D) x: L+ i
pLight->Ambient.r *= 0.9f;
/ Z1 r2 E/ A' r4 p a5 T* C1 m
pLight->Ambient.g *= 0.9f;
+ k3 B5 ~) w" c2 z" r o
pLight->Ambient.b *= 0.9f;
( l8 q5 X: I9 ^; g0 M
#endif //__YENV
* P; x, J6 t+ U7 ~7 A% m
% {6 o. p, P Y6 ?) I
memcpy( &m_light, pLight, sizeof( m_light ) );
( y( T- W1 [2 u5 `4 d! W: ]0 ^
6 \/ z, @3 _4 w3 X6 Q6 B
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
& z! j, t1 k( w9 z) x) @
D3DXMATRIX matTemp;
* N! b7 l- V/ f. C
static const float CONS_VAL = 3.1415926f / 180.f;
2 ^* w* ]7 v' P5 n1 i8 ~
' ]) ^) O8 v7 I8 n
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# b9 m$ d2 l5 S% l
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
9 r9 A8 i, j6 k9 g1 n9 z7 g
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
9 U/ H' @$ \: C
pLight->Appear( m_pd3dDevice, TRUE );
+ m7 i3 J: d; W2 Y
0 g. s, E; x5 `# J/ J; S0 p
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" G1 T1 i4 m5 `, H
// D3DXVec3Normalize(&(vecSun),&(vecSun));
$ x# K- l$ P, |
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 q8 Z& _3 t: x3 c) }+ U. V/ o
( P. W7 G; }/ F0 R0 E# k( ?& }7 O
DWORD dwR, dwG, dwB;
6 L) h: Z, g, z; n$ s7 X
dwR = (DWORD)( pLight->Ambient.r * 255 );
( _( b. }9 y1 C' x/ |; e2 y
dwG = (DWORD)( pLight->Ambient.g * 255 );
) H2 l1 |& q: w5 Y V6 v- ^ L0 c1 \* v
dwB = (DWORD)( pLight->Ambient.b * 255 );
# u+ s1 R1 z1 u. x K
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 x" n+ f& i ?- l: Q* P, \
}
6 i+ B( Z5 q. r) ~8 T3 [1 W
}
J J# m4 M' f; w# f$ S8 g
, J4 F4 S3 i' t9 Q# G
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
& d' T' s0 i( C: 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) );
% y. `9 W4 t) v h) ~
::SetLight( bLight );
) c9 k! M$ T4 P% f) F
' X% V$ r2 E% [ R" ?
// ±ao? ?D?í???ó á¤à?
9 j" k# N# N: L" P: c
m_pd3dDevice->SetMaterial( &m_baseMaterial );
' \; x; o. d, @8 }0 Q- X$ G
" V3 m$ e F8 p
#endif // not WORLDSERVER
b$ e- V2 @. \& I1 m1 i
}
8 i5 w: ?! D) S
并更换
9 r4 y0 f: C |2 J1 J
Code:
3 Z& P" E; Y8 v& O4 ]
__FLYFF_INITPAGE_EXT
3 [5 W( Q* n4 \4 d3 n$ @
定义
8 W! e( m( b6 a1 {3 k* G. Q
7 S3 Q8 d4 Z+ s- E/ X8 q
3 j* q1 I6 G5 G* R' ~2 R6 |
/ y' @' K3 f$ a( p# c
+ m0 f0 {7 e. d( K/ B7 i4 w+ \
现在终于删除我的狗屁加速...
2 ^2 F6 T& z, X; M" {2 G
, s* z# z' y" t3 X& U
" E% a2 s( z' |; K2 e* r$ r' }
; v; `% o& R! C, S! X" ^0 e1 ?
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2