飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
& J- v6 C: Q& U, t* b( x
尾翼:
9 @: W# f8 x- {
& t6 Z/ D/ R3 P( t
代码:
5 R: y0 I5 ?8 ~; T$ J
CWndAutoFood::CWndAutoFood()
/ g8 y/ |( B; N: f6 Q0 ]7 J; ~% s, ]
{
p7 _( x& V: ^: V: r& b" c
m_pItemElem = NULL;
?" F% ` k/ G; g- a5 s
m_pTexture = NULL;
$ \- H( ~& R9 _6 d7 Y( I! E0 f/ x
bStart = FALSE;
8 c" t. w0 k |( F9 K
}
' d, ]: u6 b- @" T
! U, [# n. v) o; X5 J6 {. H* R
CWndAutoFood::~CWndAutoFood()
) t4 y J( \& @; B: m
{
! W q+ r6 w+ L/ J
AfxMessageBox( "AutoFood ist gestorben
" );
+ n. E) H# C2 j# [' L3 M( b
}
/ a1 Q! ]9 {0 t6 E" w9 [( j3 B
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
& z. P" I6 _+ Q5 b, y: x
{
C, l: z0 z* I! K
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
# I! m7 u# H1 ~5 C( t0 }
}
9 U* g& L" A0 ]9 F
6 C1 E& D) ~- n- N
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
7 l/ w7 t: z4 ^" P2 m* X4 D
{
0 z) i: c' B$ G* t7 s) S
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
4 s! k `- q, A7 D4 W
CRect rect = pWndCtrl->rect;
4 M. }) z, t7 `: c5 q u
if( rect && rect.PtInRect( point ) )
1 D# F) w* `4 }, x% [# O, C$ j
{
1 e$ G6 }! j* |* K, @7 v, C. h
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
: Q2 |" U1 H* E& s# c# ?
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
' e* H. f- U/ }0 }& b0 S
{
/ O* R6 L9 O7 J8 ^; P& R
if( m_pItemElem )
. x( Q# m/ e" h- q( s4 e8 D
{
+ z( r* \% }/ t @' I' Q% [" I; u
m_pItemElem = NULL;
+ J0 N* E- ~$ C1 i1 I0 R
}
r7 g5 i9 L7 N A s
m_pItemElem = pItemElem;
[. B3 e! H5 }' [' N8 @
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
2 c D: F) v, E; m. N- q
}else{
2 a# }# o3 b4 H; z, {
SetForbid( TRUE );
: P$ d8 ] j( r& o4 m, w9 W
}
" q( y5 u1 A2 K! u2 }
}else{
, U# R# g' n6 p7 [' _; V' Y
SetForbid( TRUE );
* {( q4 T( s: |" @& I
}
$ B$ F _ X! Y9 h! Q: y& d5 K# b
return TRUE;
1 C5 d% I; \7 c& A
}
: `* I7 F) U8 E
; Q8 G2 y. `& `0 ^0 m4 C( Y
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
! e* V( Y, x1 j! t, F
{
2 Q2 g+ u) I* u2 y0 L8 T1 [
switch( nID )
5 R. G, T9 l; s. n
{
8 X/ N" ~( p4 X! b9 c" a9 Y
case WIDC_BUTTON3:
2 G* ~2 m |1 T. n- N2 Y
{
/ J; ^6 I7 q& l# l+ u6 B
bStart = TRUE;
% } R3 [& l, m! ]/ u% v
break;
- `7 n. ?' x! z$ Q: _
}
$ z# v+ e% E0 q* p9 _+ P
case WIDC_BUTTON4:
# g8 c) Z! J+ ^& l9 d
{
) g0 S) W5 J: l+ A
bStart = FALSE;
/ V2 p0 I+ w/ f. f8 e
break;
3 f+ `! z6 ]/ n5 \/ C
}
3 x9 o/ _- a7 h5 O8 Q+ p; x+ i
}
% m8 d: h6 m& C' E: J: F* I! \" d
return CWndNeuz::OnChildNotify( message, nID, pLResult );
2 s# j n+ R9 S: V9 o! H4 n
}
% r, d) K6 L, j! m2 `
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
& x/ {! _: C( H/ k' |# }
{
# \ U. H( p' O! [& f9 Y
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
1 Z( h* L4 \* e
if( bStart || !m_pItemElem )
' t+ b$ g8 v% Q9 R
{
+ n; W3 K2 @( Y8 m6 x( T
pBtn->EnableWindow( FALSE );
& U3 |5 I4 X5 N5 e
}else
9 b h& U V7 Z7 }
pBtn->EnableWindow( TRUE );
: U7 K! |5 g& N3 P
if( m_pTexture )
" {6 S) n H4 E T) U* U, i- f
{
, o. ?- j5 g. W% g S: x% G/ R
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. ]: i/ V3 {6 r1 y
if( wndCtrl && wndCtrl->rect )
' E; l2 E: z3 g9 x3 j
{
6 ?/ s. L% p$ R5 [
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
: W* U" i# }0 o8 p5 r9 _
}
! z8 F3 \; u4 k
}
7 Z+ ]- d+ y: A/ A" ~! @" L
}
' ]5 L" m6 O* C6 s8 Y% h+ `) I
7 O$ e' V2 q3 W+ H
BOOL CWndAutoFood:
rocess()
8 D9 h9 D* d. g& R5 f- X' t
{
) E$ u8 Y0 m$ K. R/ w' { }
if( bStart )
+ `* O% U( @% a) ?; f5 R: r" h- D3 f
{
1 f5 @9 J) n9 R P- g; G3 U0 ?2 G. e7 N
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
6 @. ]8 P/ E% ]& K% Y* H6 X; r3 c
{
* V; v8 k u( k+ J! N% u! A1 y V
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
# o( n. `1 g* ]0 Y; Q# f
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
! D+ H- g$ Q7 [; K6 h2 i Z
}else{
" X4 y4 T8 s3 j: b% @( \
bStart = FALSE;
* n0 d3 m$ f$ V( f0 K. @4 d- V
m_pItemElem = NULL;
# }1 |, l+ N+ y7 t8 S4 R
}
3 G- ~7 Z, v( q$ Q+ }; f5 D5 ]
}
: e2 {9 p* R& _: k- Y L
return TRUE;
7 u+ y2 l5 f% N4 Y5 V# a
}
7 W$ \4 ? A7 r, j$ X7 o
, v3 ]. Z. `* ~
登录视频废话:
5 m8 G) {8 K( G1 t9 @! A
尾翼:
5 z1 N6 A) Q- A% P5 x1 |1 \
& c! N6 y6 v. U$ q6 | }( k+ k
代码:
2 K* s- ~, M1 [ r- o$ ^0 E! K
G& Z5 z) g: z A7 b
void CWorld::SetLight( BOOL bLight )
' ]* M& j# U. b- e
durch
' B6 g* b$ ~0 [& }
Code:
- Q/ ^* \: {1 ^" @. Q. u
void CWorld::SetLight( BOOL bLight )
0 p( C+ f% J% ^; i" d
{
d& `2 l5 x/ @: t" j
//ACE("SetLight %d \n", bLight);
+ i+ U4 q& @. `+ v0 t `8 k5 Y
& G1 k# k9 |3 `! X
#ifndef __WORLDSERVER
5 W; S; |6 ^0 I9 x C5 @/ B* P
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
$ i! w( x9 a0 d$ z$ ~; ]
CLight* pLight = NULL;
$ A$ [8 O( B+ F3 A: z* w
1 _% O& o0 K( Q+ ]
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
# f% s& o6 U, N1 n5 G$ j* M4 @
; `' R7 S. f& T: m5 G
pLight = GetLight( "direction" );
* I- y! Q- r9 T4 T+ i7 j
* X- H3 v" F+ v% T/ g
#if __VER >= 15 // __BS_CHANGING_ENVIR
& B5 j3 h$ H5 S) s# F
if( g_pPlayer ){
2 p8 e0 ~$ r& r3 a+ S% k ~
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
1 W+ S$ @" M t& D" X
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
* [+ d- ~, G$ o$ V7 @& h
{
- T" C, i7 [2 Y; X! V ~' w5 P+ \- m
if( pLight )
5 B9 v3 @- o& w4 K% h
{
: ^ Y7 U* m8 [+ }: o: c9 O" o
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
9 T G5 \- I* k( {* d8 ]
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
8 [3 \( o2 I" F; a) f3 L
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
& ]. N) Q J4 N8 O8 n
' e3 x7 O; `# J$ @+ @
pLight->Specular.r = 2.0f;
1 l4 b. L! n4 n7 \& h
pLight->Specular.g = 2.0f;
3 o( d3 D3 z e/ z( j5 V
pLight->Specular.b = 2.0f;
; w- `) y8 y J
: M% ?4 y8 n, n6 k. ^
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
/ x7 x g, i- _$ b3 i
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
0 i- g+ S5 F# h% s3 \# v
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
9 k. u2 \- h" @, P- G8 `
. r% e3 O2 J8 T- v# ]6 W
HookUpdateLight( pLight );
/ p* L! |( A9 {2 ]9 q- v
& v" h1 m+ l& Q7 e3 v! I8 R
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 k, s1 T1 a' n0 \6 e5 H1 e
4 M1 \+ ]7 f& G! n( i! Y) }
pLight->Diffuse.r *= 1.2f;
0 V, q6 M; V2 }# a1 V* }! ]2 O! j
pLight->Diffuse.g *= 1.2f;
" g7 k0 i4 j2 y" V4 u/ b
pLight->Diffuse.b *= 1.2f;
& l; R. K& f0 J5 Y* F* V1 N4 G8 z8 ~0 e
: T `- X) D& j" @' a
pLight->Ambient.r *= 0.8f;
, q2 j- s6 u5 V: I* W
pLight->Ambient.g *= 0.8f;
9 \/ E; o: O" P! T3 @+ a5 R
pLight->Ambient.b *= 0.8f;
& P6 A0 B; T! \" Q( p
6 E6 p. `: T- z+ s: v4 E
memcpy( &m_light, pLight, sizeof( m_light ) );
. Y! W: L8 B3 U# v
* L" X$ x% h8 R" _8 G/ e; B6 F' l
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
& G+ u( S; o* A8 C
D3DXVec3Normalize(&(vecSun),&(vecSun));
, r4 w" K2 k( a: m
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ u0 _2 `. u: n
pLight->Appear( m_pd3dDevice, TRUE );
# f, o. |) }$ m. f. J2 T4 L, s& q8 }
# T% y& I, J' x1 V3 d9 ` ~
DWORD dwR, dwG, dwB;
) Q3 G, }% E3 I9 _ U$ d( V
dwR = (DWORD)( pLight->Ambient.r * 255 );
- C( ` f: t1 g1 ?
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ b' o! F; U5 l' n9 _
dwB = (DWORD)( pLight->Ambient.b * 255 );
, U& A i( N* b$ _ e; N/ c
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( |- j& k( k" c3 e: Z6 d9 @
}
o# F% M( z/ \# q. X' V& r7 c
}
; U7 P- ?" G8 H# S
}
( ]6 r+ l! T2 m6 W7 }9 Z5 P
else
5 e/ S* ?) }' |8 `3 M
#endif
+ W% A$ F6 s4 X3 x! L: a9 K
: t+ y. [2 e. }; V$ o
if( m_bIsIndoor )
" _# R, t. d1 l3 _
{
: y- @" R& r# Y/ F
if( pLight )
( p' [* @' ?* a' u
{
, O1 H7 U! X5 L7 C& I' @# h) E
// à??μ oˉè*
& `$ U# [ v5 A% P; S! x4 O) j
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
. s0 L8 F# B& J
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
4 r8 f; P9 X& p, A6 l
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
; ]8 ~0 S( u7 [ p! K
' ^! Y9 J3 D' N3 b
// oˉè* ??à?
: y0 k( ^8 \0 n4 W; n7 F
pLight->Specular.r = 1.0f;
9 L. I* e0 Z1 w1 |3 K& v
pLight->Specular.g = 1.0f;
! |8 s9 l1 \+ [6 G9 `, y
pLight->Specular.b = 1.0f;
4 G4 [) z/ c+ c' J$ M
// àü?? oˉè*
6 X! {4 ^* _0 W% Y) Y
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
E$ r# J# p1 x. r( T$ t/ W& W
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
) |- |) Z5 j3 J: s% w3 @7 W
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
$ W/ u8 s6 |! U: A; A) n
% W: w2 a9 P' b) }" Y* F
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* F' f% y/ B- A/ L$ s' J
{
' T# J T+ D3 T5 M, L
pLight->Diffuse.r *= 0.6f;
; |" ?: X' x, E1 q
pLight->Diffuse.g *= 0.6f;
4 D c, h9 h( d3 K4 [& q3 V
pLight->Diffuse.b *= 0.6f;
6 b1 a* f$ p" c/ a& v( U
pLight->Ambient.r *= 0.7f;
3 p4 {' n* t" e8 K+ b$ `
pLight->Ambient.g *= 0.7f;
, w1 n b! c, e! m- J: V( k* E" O
pLight->Ambient.b *= 0.7f;
/ f; K9 T0 H) `
}
: S2 o& L' v' |, G7 R
2 D, ^0 d& L. m: w+ c5 Y
#if __VER >= 15 // __BS_CHANGING_ENVIR
0 P. q5 T. j% O* N `8 l2 Q
if( g_pPlayer )
: d! E; G8 z% X$ h5 Q% @
HookUpdateLight( pLight );
: z/ e H2 t& Q
#endif
q. D& m8 y$ I6 d* s% E
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& l1 T( Q! Y1 T5 U$ d6 @4 H
' E& w- M( V5 a9 [3 v+ G
pLight->Diffuse.r += 0.1f;
+ h$ B' ]8 v" ]' \$ x
pLight->Diffuse.g += 0.1f;
w5 S+ Y* o x* A6 \
pLight->Diffuse.b += 0.1f;
! s3 U& b/ q2 k2 F2 ^1 @
// oˉè* ??à?
2 e7 s9 M. T% f" M# O1 c
pLight->Specular.r = 2.0f;
) L8 v: ^7 M& J; M& d
pLight->Specular.g = 2.0f;
6 G9 P5 y; r* p; I5 G4 z
pLight->Specular.b = 2.0f;
b) A2 K! j' S: f, F+ A" U, l
// á?oˉ
% O* C3 \% j* x) ^
pLight->Ambient.r *= 0.9f;
7 S+ b. C3 P+ h% a# E8 o8 O5 N+ h' t
pLight->Ambient.g *= 0.9f;
- r& f3 H+ @ s5 M
pLight->Ambient.b *= 0.9f;
* U2 m- R" u* P2 F O3 @# X' N( w( B
8 F$ l, O& Q) i1 |5 v$ u2 U8 J
memcpy( &m_light, pLight, sizeof( m_light ) );
" A! u0 e' t' T" z- T l5 L
5 C" D: E2 a) N
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
6 i: u* n X- l& ]0 C
pLight->Appear( m_pd3dDevice, TRUE );
6 d( U# k' h7 g) [
6 e' n9 l+ A1 }" M" V
DWORD dwR, dwG, dwB;
& R0 E8 g0 `. A) ]
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 a! K6 h' G2 z5 U4 @& T
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 \( S) h! T% Y) N( u, V% T
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ O, ?9 j% j: J7 \2 R6 H# H' Y, B( c$ v
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ p) `+ K; ~+ ^# }
}
) A$ q3 {3 D9 _8 _
}
8 R7 U2 d, j7 p5 Y
else
$ }6 ]* ]5 t+ e! s3 g
{
9 ^) X/ l( p( @7 u
if( pLight )
. I7 y- W: I2 p1 k$ {1 P7 Z( [
{
/ ^2 ]& n+ c) t7 D( p0 d( ^
2 s4 w% s7 O; J9 z; d
int nHour = 8, nMin = 0;
" b1 {7 ^% f8 T' |, f; `
#ifdef __CLIENT
5 q6 t$ t" ]9 Y; s, y
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
7 N) g2 D2 y, h5 j& K/ W" ?5 U# X& m- s
nHour = g_GameTimer.m_nHour;
) u5 w( m8 `5 B1 v; z
nMin = g_GameTimer.m_nMin ;
8 K p$ A& z6 m p" P/ l
#else
2 @4 y$ O. G/ {( R }
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
) N0 o6 Z! `) _" @" E0 G
if( m_nLightType == 1 )
0 n! P' H5 z: T$ n
nHour = m_nLightHour;
+ M- ]# m/ h8 [. x+ ?! T* T- `/ h
#endif
% x& I2 U; d* Z @" h
nHour--;
" I, r Z. q: h8 @
if( nHour < 0 ) nHour = 0;
5 n, ^9 y* q- z4 C# S$ [
if( nHour > 23 ) nHour = 23;
) P) {7 E* a: v+ D
9 D9 a% C) C% P+ m- v$ p- I6 m
//if( m_bFixedHour )
/ i1 P$ |/ b4 }
// nHour = m_nFixedHour, nMin = 0;
& l0 K2 g8 S+ Y
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
7 O3 w* B; n5 P+ B
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
4 I" }1 ^4 I& C/ C7 T/ W! c
; O; A. x9 M6 c& q( S6 d# I
//m_lightColor = lightColorPrv;
+ a; X1 D- S: w* z0 c& C9 E5 _
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
5 n- Z% p/ p. B0 @! w! `
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
$ n1 U, o: j" w) k. K" N6 v( r: H
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
0 z6 y9 m4 `8 y F0 j. [8 F
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
0 d5 @, ~. E8 e9 \- s# P: O
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
6 B1 R W) m) A" Z9 m8 \ {
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
4 p, c' e% g: \* {( Z% X7 R
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
0 F. b! a! e6 p- j# A- U+ ~
2 K s# R8 q7 Q5 n! g) ]
// à??μ oˉè*
& y* }9 Z, |( L9 c/ c, F0 p4 j
pLight->Diffuse.r = lightColorPrv.r1;
0 x }# J1 u5 w7 {1 T" M3 h# o
pLight->Diffuse.g = lightColorPrv.g1;
L7 M$ R7 E, P' j0 t( c
pLight->Diffuse.b = lightColorPrv.b1;
/ [; M5 r! A7 Q+ n' L
// oˉè* ??à?
" @' |4 g* E, p8 L
pLight->Specular.r = 1.0f;
1 j! Z8 R" H. i6 |4 k. [
pLight->Specular.g = 1.0f;
) d9 O, d, j! f1 F& ]7 s
pLight->Specular.b = 1.0f;
: ?6 s% k5 d" P
// àü?? oˉè*
5 q+ ~; |+ B% _. ^# X: y/ u# o
pLight->Ambient.r = lightColorPrv.r2;
% M( x P: e. n: h) h2 d
pLight->Ambient.g = lightColorPrv.g2;
) V9 n6 ~& g% Y) S7 Z
pLight->Ambient.b = lightColorPrv.b2;
1 q0 q2 w7 l/ b4 ?- E
; n* b2 Z9 O u
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
: N3 g+ }! G' e9 F! N g
{
) l o: X+ ]6 z# z7 W; B
pLight->Diffuse.r *= 0.6f;
( N4 T& O; Y1 h
pLight->Diffuse.g *= 0.6f;
, L7 Y7 d/ z6 B- Y. `& e
pLight->Diffuse.b *= 0.6f;
! q# }* }. N) { i9 g& W1 X
pLight->Ambient.r *= 0.7f;
6 @" t1 R$ r. H! [: l
pLight->Ambient.g *= 0.7f;
, R, w3 }. d2 h
pLight->Ambient.b *= 0.7f;
- }( M- ~: y1 l/ l* D
}
! O1 z$ c, {0 ~6 X& G o; s( ~, @$ s
8 Y) y2 w+ L9 @, n3 |0 R7 h; a
#if __VER >= 15 // __BS_CHANGING_ENVIR
N7 P$ y3 C) m- }
if( g_pPlayer )
9 E$ @/ l; Y% M0 T9 y7 B; y. L; K
HookUpdateLight( pLight );
0 L V" F+ W0 R, @3 b* ^; k$ q( B
#endif
- r2 R, v; j: h
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
L% J# `2 W3 d: J( E. P0 _; U. f
* z) | |1 M3 n1 J7 \
#ifdef __YENV
6 d! Q2 @5 |/ D! f% u: q O% I
pLight->Diffuse.r *= 1.1f;
7 a) B6 \* [4 _4 X
pLight->Diffuse.g *= 1.1f;
3 K. h+ w2 a: ^8 h- o. j/ x
pLight->Diffuse.b *= 1.1f;
" C) I6 ]7 J$ r( K
// oˉè* ??à?
9 ?- X; ]% N1 A
pLight->Specular.r = 2.0f;
6 M, n, e, B9 }7 ?; i/ }1 H1 o5 Q: {0 W
pLight->Specular.g = 2.0f;
/ e' I% i& z# }( S0 p: r* _
pLight->Specular.b = 2.0f;
% `) n: f0 |7 A% m
// á?oˉ
: u4 s* \/ a% V8 b8 O2 Z6 l
pLight->Ambient.r *= 1.0f;
" O3 P; X' x2 K7 D4 S
pLight->Ambient.g *= 1.0f;
) f& M N. `2 L
pLight->Ambient.b *= 1.0f;
/ U0 l2 N6 H) C* Z6 U( M
#else //__YENV
. a( q- a4 i# j A. U. S: H/ }
pLight->Diffuse.r *= 1.1f;
# x! H/ p( L* V: Z
pLight->Diffuse.g *= 1.1f;
8 l$ ^& d% v5 v( }
pLight->Diffuse.b *= 1.1f;
" B% i. R8 L7 G* V
// oˉè* ??à?
" e2 S8 h% W- N4 |. B" S* w- Q
pLight->Specular.r = 2.0f;
, n0 q. x0 H5 _$ w3 Y# _, T
pLight->Specular.g = 2.0f;
; G/ Y9 y9 K( O& S
pLight->Specular.b = 2.0f;
2 o. Z3 ^9 r0 t# A
// á?oˉ
' {2 |0 o& F) J( u/ }
pLight->Ambient.r *= 0.9f;
/ h: s/ G: H9 C! q% B
pLight->Ambient.g *= 0.9f;
; f$ U' x, `: c4 B, ]
pLight->Ambient.b *= 0.9f;
1 C; r# K6 b) O3 t5 ^& N) \9 l
#endif //__YENV
9 P$ W' {: Y$ W8 D. K s$ x
# | j% Q* q k2 [. A8 ]0 H
memcpy( &m_light, pLight, sizeof( m_light ) );
& y5 y# P/ ~' v1 v$ u
9 i. |+ J0 g2 B! g
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
1 o# w! \5 l3 M z( Y0 |% X$ k0 \" [
D3DXMATRIX matTemp;
% h9 y9 }6 T( E2 W7 q
static const float CONS_VAL = 3.1415926f / 180.f;
( e: c# ~; m. w# j2 f4 E/ L2 p
, g5 o. h/ x( p% D F1 x
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
. H" \+ G4 e- ~. z+ a, ^
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
( K# n. |( I" K
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
+ e$ ]( s9 m( O' d7 {5 T9 J
pLight->Appear( m_pd3dDevice, TRUE );
2 ^, i. W; e" Q9 }
" o) b' m, ~. R3 v
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: p4 N3 O3 C+ M, R/ }% N
// D3DXVec3Normalize(&(vecSun),&(vecSun));
8 Q* \4 V& l; ?! E
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ S% H S, T9 U" _
+ K; ^3 c& F( Y1 l
DWORD dwR, dwG, dwB;
$ J! L% m9 q' G1 ? h
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ t0 f: k M; G/ x
dwG = (DWORD)( pLight->Ambient.g * 255 );
' O6 u) k# Q; J: T; b2 _( J
dwB = (DWORD)( pLight->Ambient.b * 255 );
- t3 q/ r Z: |, X5 h- u I1 I0 d( Y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! U3 p7 y4 f4 i8 ]2 T) l/ m4 R8 {4 f
}
) r' Y1 n0 h: O/ e
}
: [# o) k, Y7 K/ w, G) K
9 l- e0 s% I4 `9 A( z
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
. m1 I3 E; E! @
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) );
9 f$ a q2 \, X/ z$ @8 R1 @
::SetLight( bLight );
4 N2 p6 u7 B) ?2 d* {, F" |
5 M( w |6 B8 ^0 r* Q1 J
// ±ao? ?D?í???ó á¤à?
& l* X' s$ s3 Y+ e/ q( E
m_pd3dDevice->SetMaterial( &m_baseMaterial );
0 U& K& A* B" a8 i* f5 R9 d K
: f2 Z q2 L+ B
#endif // not WORLDSERVER
+ g4 S& c: ]( x2 B! _1 y
}
2 E* a0 j, O n/ z
并更换
# ]) t5 J$ o" P* w8 }
Code:
4 B# T& P7 T' y3 T
__FLYFF_INITPAGE_EXT
+ ^( E! S. I# [3 k: E" S- h4 i
定义
( U- ?4 s" S9 |0 ~4 h. p- l
- R) F( L! w- ?! ]) C4 F% v; ]
! J$ A) N8 y7 h8 ` z5 k$ V4 H
. g& Q# U3 M) W. z$ X
6 \9 Q* g3 [1 I! r# {9 @2 \
现在终于删除我的狗屁加速...
+ _1 Q1 U0 I4 ?6 d& B% I
, N/ g' e- N6 `9 j/ r
0 Q* y8 d& J& h& d
0 B& U2 D- v4 N5 N+ @! \7 P
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2