飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
" ~5 D! r8 ^, i5 ~, n* C% [ J
尾翼:
* G" ]: x. r! A& \; b
. C; Y( k" S- T
代码:
# ]" F" R7 B' ~- A
CWndAutoFood::CWndAutoFood()
- u0 J& _, g& i; Y4 i8 \& K3 J
{
" ~, O" I: q6 f$ h I9 S
m_pItemElem = NULL;
0 l9 h% p9 o) x/ g e+ @+ h" E
m_pTexture = NULL;
, H0 G& J0 R( }; r
bStart = FALSE;
- W3 |2 R$ t: u( z
}
' P4 {$ F) S: r4 Z. E7 t
# I# b$ }8 Q# \ s
CWndAutoFood::~CWndAutoFood()
1 c9 ^6 N- z0 n0 T
{
* q# }% k/ Q# H7 c
AfxMessageBox( "AutoFood ist gestorben
" );
, ^6 q( _* k, H6 y: {
}
3 x; O8 F6 `9 X8 w
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
7 B# E0 o. S: q& [
{
. C( d6 G3 E2 Y8 L8 _* I
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
' S/ L; e' [( T3 P
}
4 X/ B$ ?3 ?3 o" S
0 W' Q/ w9 f' X1 e- f5 p) d2 ]
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
}6 p, ]1 {. i! E: E
{
. U( S5 v& p* j" g# b' D) m
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
8 s6 _1 Y+ v- z9 t* q
CRect rect = pWndCtrl->rect;
& K4 {3 o1 m5 c: ]9 i
if( rect && rect.PtInRect( point ) )
& F m% o8 W! L4 [( z( I9 x& q
{
: b: }6 X2 |2 @' i( u! t
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
) W' ]4 g! m( \6 D- y: v; ?8 y
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
! J- i n2 _: u8 b
{
8 ~" x p6 C7 f' e# F2 _
if( m_pItemElem )
/ i" C7 Q. r; Y5 b
{
. q) G( E) w5 d1 ]) B7 X
m_pItemElem = NULL;
3 r# J. r7 y- [, Q; J: i1 m
}
( {, ^) B& e% c( j, ]
m_pItemElem = pItemElem;
/ |0 h0 D3 V8 B8 q
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
t' U) V5 `4 z5 o7 R( i
}else{
8 d* ]6 R q: L
SetForbid( TRUE );
b+ E- j. [3 i$ M) ~
}
j0 v+ ]/ K5 r
}else{
! R& E! W5 l& Q0 A# K9 t. r
SetForbid( TRUE );
) q4 L+ \& {$ k) T% s. O- ?& ?
}
: b) E( W" S5 a0 i9 s
return TRUE;
7 `+ v, o% t3 ?0 y
}
/ l5 P+ r7 M9 }: S( c5 _
" Z8 z3 }( V& c: a, V, a: P# |. ^7 L, P- S
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
) i: v7 b3 a8 {8 d4 V
{
1 Z' d- M& J& R" T, w; ~4 |, F4 w
switch( nID )
* @% a3 i3 ]- y7 E" J& t# Y
{
! Q, c ]# F3 C+ ]& |) [
case WIDC_BUTTON3:
5 ?) f* [7 e' p. L
{
7 H% `0 ~& j% E1 H+ I- e
bStart = TRUE;
: F$ E; E9 T6 w
break;
7 {/ i: \. t: Q, y7 Z' p- V
}
5 l' w& g/ A9 ]. O
case WIDC_BUTTON4:
' Z7 D7 \7 Z5 {, P9 x& P9 o/ i8 b
{
( i' a' k$ r z( h3 ?7 m' X
bStart = FALSE;
1 g" m) X; J, a) K: x* C
break;
1 ]( c! L6 K7 C, S4 q
}
( m# f' N2 ?; O8 t; p ]
}
: y4 @6 c6 K" A y/ \: @
return CWndNeuz::OnChildNotify( message, nID, pLResult );
+ v2 H3 P. ~6 s' I, v
}
8 c" Q+ l1 M- |
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
G+ ?, e- U4 \) \% s% v8 W% l
{
4 {- k! J$ c* j9 A* A, e) }" E
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
) B+ @/ k+ u7 z; b1 f1 r
if( bStart || !m_pItemElem )
8 o1 d q8 ? H5 l) X" p
{
: i$ A4 x- ^% p o2 `
pBtn->EnableWindow( FALSE );
. A2 j0 M* O8 s7 c/ V
}else
" W1 O" P9 A: q2 C5 t
pBtn->EnableWindow( TRUE );
: u [* i# ^, m" a# B
if( m_pTexture )
- i8 K" m1 g5 i$ f- R
{
; u( B2 d" t) e+ Y3 Q
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 }! C" k8 F# O
if( wndCtrl && wndCtrl->rect )
! M5 }0 U4 X: n% N2 U( c2 ]1 V
{
0 d8 i6 ]9 n4 H1 ~; Y# q
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
; t/ f7 L4 B8 v
}
& [( K% ^5 v2 P9 E9 n5 j
}
8 P" C, S; c5 B4 [* I! a7 B
}
% Q* i6 z/ G# T8 W) ~0 _ H; ^
9 J* H% e+ o$ J& k7 i, b8 _
BOOL CWndAutoFood:
rocess()
Q/ ^+ I9 J3 x Y C5 _$ |
{
' L. ]8 @" z5 W0 d! M- u
if( bStart )
* u; h" d# k1 K8 Q
{
3 S7 ~# s& n) c; Z
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
m% K; G) @9 v2 ?
{
) P2 E8 {1 r' K! z8 n" b9 w
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
7 ?* {6 i0 }- C B( N3 N
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
* S; i5 a' b7 a0 \
}else{
/ U1 l( y/ Y$ K m8 r/ s- w) H
bStart = FALSE;
( S) `# U$ ?" \9 ~2 g
m_pItemElem = NULL;
4 n$ Z) r5 Q, _7 p6 M
}
0 x4 {& `' f- H. S1 I2 c k
}
; j. a0 e: W3 u. R
return TRUE;
5 T$ n6 E2 n* k2 p/ d: D2 ^
}
$ N# W" q; l$ P/ F) z" ?# D
" d! M6 J1 D9 e& s4 Z
登录视频废话:
( Q% R9 X I; S
尾翼:
8 f# E+ ]5 y. T1 ~" f- o
* M- Y& j+ N1 K- v9 C6 V5 N. B
代码:
( J8 v. V! m1 [8 \5 [: j& f
/ \/ T9 Q/ D. ~7 G* _, ~9 b, }1 y9 I7 D
void CWorld::SetLight( BOOL bLight )
& m2 {- t5 ~" a9 p
durch
) u! h. G8 l6 w+ {4 Q: ^+ g+ ~
Code:
- g/ F+ y" m0 P
void CWorld::SetLight( BOOL bLight )
1 |. k1 C" \0 ?; q. d' I
{
& u# a2 W+ i S/ r8 D1 _7 n
//ACE("SetLight %d \n", bLight);
8 i/ Q" C0 F% K; t
# U# n& E3 b# \) ?
#ifndef __WORLDSERVER
* b1 _9 o2 A1 S3 d6 r0 \
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
( V# y0 o# a7 f( t! b1 ]( A9 @
CLight* pLight = NULL;
0 ]6 T4 V! r" b9 p7 U: ], |
1 @ G3 k8 L' A$ B
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
) s5 r" G/ z% H, a: R! x. F
+ o. l+ M! B8 l ~8 o
pLight = GetLight( "direction" );
+ W( s; k6 i. w3 p" F5 Y: U- ]- R
7 B5 W7 v! d. X/ B3 q: A
#if __VER >= 15 // __BS_CHANGING_ENVIR
: [1 p' i: Z! m
if( g_pPlayer ){
5 Y! t% z+ S! ^* n$ l8 v
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
, Q6 ]7 C9 G; F' k9 Z5 Q
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
2 D; n5 f/ ?# l9 S
{
* V' X9 ]1 p0 R9 o6 u4 E- y
if( pLight )
, S( F* ^7 v& U4 _3 b; x
{
3 t9 C' f) G0 i3 C4 }
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
) `: i- h: \5 J3 J; b( L/ H+ |9 I% N
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
% P: X/ a2 v1 C' L2 \
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
1 T4 w, b( J& X" w% r9 E3 k5 W
. K; p3 r/ c- l& g
pLight->Specular.r = 2.0f;
( f D/ P: A6 i& y& T
pLight->Specular.g = 2.0f;
6 S7 z. k" n/ t5 _& c
pLight->Specular.b = 2.0f;
& V. y. y8 o5 J5 S/ z1 v6 X
1 X, L7 j/ J2 S' P
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
$ C- a; Q! X p8 T, s( q
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
: H- V, m! V# r7 I) x/ B
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 v. x) D, }; r* j( W8 |/ ^
! c3 g' f( q- x) G' j- x$ D9 W* y
HookUpdateLight( pLight );
. v( ~" K) |- h% N. B: @
( f n/ j" q3 o8 ]( V- T1 n8 w: \9 d
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
Z% ^1 v r9 d3 Y3 R
& ~. [- b2 f# \8 \3 `
pLight->Diffuse.r *= 1.2f;
/ H% v: h8 J `' k% B1 v
pLight->Diffuse.g *= 1.2f;
9 v2 T* v) b; B! Y& D1 v
pLight->Diffuse.b *= 1.2f;
" n0 X8 d& f' j' k
; Y, u3 }* B3 E1 A7 z5 O" b& ?
pLight->Ambient.r *= 0.8f;
9 M) e# T) n+ T' i7 Z% U9 Z& v
pLight->Ambient.g *= 0.8f;
& M7 Y4 k/ q% H! H3 l) Y
pLight->Ambient.b *= 0.8f;
# H9 R& C) D4 G$ ]. x
( Y9 n0 W, a* _4 M
memcpy( &m_light, pLight, sizeof( m_light ) );
4 e/ z, _. Y7 @9 W
! Z* a: ] F% a+ s* d E( U
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
& \2 b3 l; Q* k( [ j
D3DXVec3Normalize(&(vecSun),&(vecSun));
- B' ~: d7 @& N3 T) D" Q
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 Z, @4 F+ b7 U
pLight->Appear( m_pd3dDevice, TRUE );
3 W3 L1 _! U$ P3 x) j
, o+ T+ l: t+ j! i
DWORD dwR, dwG, dwB;
2 k- U) Q: _! y- O* B+ [, g. y
dwR = (DWORD)( pLight->Ambient.r * 255 );
; y% U0 u' G7 D% ~" w' U3 P
dwG = (DWORD)( pLight->Ambient.g * 255 );
: S6 R8 u) U$ G- M0 _& y4 r! ?5 H2 E
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 m6 [. ^' H w: I
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ q* `4 g5 n' m- ~5 F
}
. r: N# c6 e/ t9 J, G
}
- ~, @" H) K9 u d2 _% y
}
8 ]7 @ W' L! ]% z+ z6 P
else
6 ], d, }: h/ H, V1 V
#endif
6 d& K- g0 b% h* A/ J" `8 v
# l" Q6 O0 S$ Q1 U; T' e
if( m_bIsIndoor )
5 C+ D4 j0 C; O* r" l
{
0 K+ }; Q3 g) X6 B
if( pLight )
3 {! s7 ?, \, n- i& c
{
3 i$ p) w# [" o
// à??μ oˉè*
' {4 m* f& c2 F$ x* ^7 ?0 a
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
0 |0 A& a2 Y+ W
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
B1 u% D4 R1 x
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
" p: V! ?/ z$ B4 F
1 q' d9 V: F, a8 }7 L' J
// oˉè* ??à?
4 R M+ C! z1 J3 J9 T' S
pLight->Specular.r = 1.0f;
' T+ `2 y/ T1 \0 L
pLight->Specular.g = 1.0f;
& b; T$ R/ I2 X/ h/ _3 C n( d
pLight->Specular.b = 1.0f;
+ a2 ?7 s/ @# M i$ ~
// àü?? oˉè*
- k8 E( f$ @ \. k" E: C
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
: c1 z. o W7 h0 m _: J; } }
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
2 M0 e$ i- c1 w
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
`, Q/ u( Z; ]0 l$ L
& h6 ?0 ~# \2 N
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 J5 w" x; T9 Q- O7 b& M. y
{
) Q( Y7 E4 H' S# r
pLight->Diffuse.r *= 0.6f;
1 w# k8 S3 C; T% u
pLight->Diffuse.g *= 0.6f;
$ X; O: u7 l5 U1 S. U8 Z
pLight->Diffuse.b *= 0.6f;
: w9 I4 X5 {9 b7 k
pLight->Ambient.r *= 0.7f;
7 J+ S7 S2 ~+ t) P* `
pLight->Ambient.g *= 0.7f;
, P% N8 X, y) c9 C$ }+ m5 }
pLight->Ambient.b *= 0.7f;
* W$ Y! T5 j. w) @+ ] {. {) Q( x2 d+ x
}
/ D, ?, z! ~9 y1 u6 w) i
( d7 [( Y( P/ s% Q* b
#if __VER >= 15 // __BS_CHANGING_ENVIR
) {4 X4 u. @8 A6 g1 y
if( g_pPlayer )
8 F; m" Q9 q6 }6 {
HookUpdateLight( pLight );
: j/ N4 I) ^3 m& \9 c
#endif
4 M$ \" E7 h; d+ A
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# n0 w- F+ ~' W8 h$ e G
; E7 }! `' z, D( t, B B/ h
pLight->Diffuse.r += 0.1f;
/ D' g8 f5 t/ I7 L
pLight->Diffuse.g += 0.1f;
/ _/ M g2 h. u( z- `
pLight->Diffuse.b += 0.1f;
3 l* D, }' M0 W
// oˉè* ??à?
- H# |% ^9 ?. h% y
pLight->Specular.r = 2.0f;
! a2 U' e8 I4 s& N' w7 o
pLight->Specular.g = 2.0f;
- [# r! b3 _/ B2 K' `5 f2 i5 S
pLight->Specular.b = 2.0f;
. h) {- u1 Z. \2 v4 }
// á?oˉ
K1 U6 Z5 p3 \3 y
pLight->Ambient.r *= 0.9f;
* X$ t3 W$ K" B' B5 N* G
pLight->Ambient.g *= 0.9f;
/ U! L1 I3 \$ N3 B$ _; S
pLight->Ambient.b *= 0.9f;
: r7 b8 A) x. y( L, s6 Z
- i: x. c p/ l5 p7 v& A
memcpy( &m_light, pLight, sizeof( m_light ) );
) X- g. |! q2 S! N0 N: U
4 A9 O% Q8 P5 s5 S! W) b" G
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
1 z, h8 P1 E3 f i% n+ I9 o0 v+ k
pLight->Appear( m_pd3dDevice, TRUE );
6 H- ?4 [/ Z6 M5 h5 z0 c
5 X# a7 c- \2 Z6 v/ @+ E$ `/ {
DWORD dwR, dwG, dwB;
/ g) u7 N) Z; c% i" a8 u
dwR = (DWORD)( pLight->Ambient.r * 255 );
' [" s+ p2 s: A, a/ M
dwG = (DWORD)( pLight->Ambient.g * 255 );
- r0 `) m. s7 n# {" E/ n
dwB = (DWORD)( pLight->Ambient.b * 255 );
, K! f- @5 f3 i: @: o' L3 y; r$ ^0 _
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 N9 Y$ E! W7 ^; d$ R! Q8 q
}
/ e4 ]7 p! V7 `" a* ~
}
- u1 k5 I$ Q0 L; a
else
+ O* r$ Q9 Z& }2 @% w# e3 R
{
% x+ n$ k/ T% _9 ?
if( pLight )
7 @1 H5 w2 S; y, t0 q2 B
{
( s6 `5 F, q3 ?7 H, `
% b9 T- w" P# c/ a y
int nHour = 8, nMin = 0;
% a# C- g ~$ O8 e2 v2 T1 f
#ifdef __CLIENT
4 t( u' v2 v. D* j. O
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
' C: J4 P: ?7 Z0 J7 k
nHour = g_GameTimer.m_nHour;
; r0 Q5 L3 X4 j& ~! Z9 e. E
nMin = g_GameTimer.m_nMin ;
; I' Z+ d( B. y: |( ~
#else
2 B# g8 Q/ n3 R: m# m
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
: r; {. {$ W* i O- s/ {, m4 C
if( m_nLightType == 1 )
0 w) ^# s; R' [4 p3 r; _
nHour = m_nLightHour;
9 X4 A% o8 B ^5 t- ^8 q, j% M
#endif
8 n! b+ a9 }0 J; C) n. O3 p3 h% a" \
nHour--;
3 d+ L- K, ~' e, l! S
if( nHour < 0 ) nHour = 0;
- E5 {" W* L* r4 y0 G7 L: \% ?9 V
if( nHour > 23 ) nHour = 23;
2 V- [ V. A5 s9 O# I6 @
% I* D \' r4 k( m
//if( m_bFixedHour )
9 W. F8 L9 }1 m: E) M/ ?2 p k
// nHour = m_nFixedHour, nMin = 0;
. J1 R& n7 C. i
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
. v5 W( ^+ l* E, e$ S
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
# D! i' K( q2 l' v# s) t& U
- r7 L6 {' u, y% `
//m_lightColor = lightColorPrv;
: I& ]/ x$ }) y9 v% k" u2 P/ k
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
+ R* Z" i- X6 g5 n$ v' i) x7 a
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
' \" j* F4 ^9 E
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
" Z& z0 a: l7 t' J
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
+ q* n* U, O9 ]* k" `
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
V+ a& @ C- q2 N
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
% V( ]5 c; M$ `. P
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
. @0 \5 u. G7 D4 z* X
! T4 p" @6 y$ `6 h M1 b# L) {
// à??μ oˉè*
" C- E/ g# c/ f4 @
pLight->Diffuse.r = lightColorPrv.r1;
' Z9 t3 o& x- t) D" T
pLight->Diffuse.g = lightColorPrv.g1;
) m- H1 l; F' o* m/ ~+ ]. X
pLight->Diffuse.b = lightColorPrv.b1;
. \6 \) i( _. F/ S+ z2 M4 J
// oˉè* ??à?
`2 X' M9 ?* a4 B) M
pLight->Specular.r = 1.0f;
3 {9 P1 ]8 C& P8 f. A
pLight->Specular.g = 1.0f;
' [/ O! [1 V! E3 e% a
pLight->Specular.b = 1.0f;
9 g7 l9 l; [# c) Q
// àü?? oˉè*
* v; R/ n1 q2 K
pLight->Ambient.r = lightColorPrv.r2;
* S! h/ r8 u# Q4 e( V8 b
pLight->Ambient.g = lightColorPrv.g2;
- |7 w" n7 x: k! w! a
pLight->Ambient.b = lightColorPrv.b2;
5 q6 J& C/ u+ ~( {7 x/ ]. T1 j* d1 ^5 {0 P
3 U L* y" t& ^/ p% |
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
2 d0 q( w4 A: X) R
{
2 K* b* `4 @9 f4 k2 O9 [
pLight->Diffuse.r *= 0.6f;
" N0 {& _+ Z6 _! f* c( P0 t5 A0 S E
pLight->Diffuse.g *= 0.6f;
3 U) u4 M5 Z* A# g7 E" o+ i- J1 y/ i
pLight->Diffuse.b *= 0.6f;
3 a: W" \$ o* V8 E1 P6 F! m" y
pLight->Ambient.r *= 0.7f;
) V( j7 U7 ~0 U$ b' y0 q
pLight->Ambient.g *= 0.7f;
; }- ?+ T, r! j$ Y) M
pLight->Ambient.b *= 0.7f;
/ h4 F( h8 k& S
}
& f3 J" u% |, y- O z0 O
' |+ N) N& N) H& q$ W: [2 l" ^
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 |4 X/ A c9 F2 v# V( G$ y
if( g_pPlayer )
; K. {& N' L1 g% B9 W- k- E
HookUpdateLight( pLight );
$ f* x& F7 a2 B6 i: ?* V
#endif
& U N0 y5 }, l) d, s! X
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 m& O5 D1 {% K& D, h
, H7 Z9 O& S7 f j' m
#ifdef __YENV
' ?. ~. V9 K) X- u/ b
pLight->Diffuse.r *= 1.1f;
& L8 V! Q/ S5 Z, g# y
pLight->Diffuse.g *= 1.1f;
' k8 u& q. E0 i4 m
pLight->Diffuse.b *= 1.1f;
/ A! y, ^* g, a! x" y1 s
// oˉè* ??à?
2 H* h6 H1 J: h) _
pLight->Specular.r = 2.0f;
! C% y. F P, x# Q! n* ], z
pLight->Specular.g = 2.0f;
* L# _% B0 U3 F( M# k( L
pLight->Specular.b = 2.0f;
# m& b+ t8 O- z& T
// á?oˉ
g! Y# f) y( G) W( @: q
pLight->Ambient.r *= 1.0f;
1 t a5 |# s* ]; B+ i3 @2 P% }
pLight->Ambient.g *= 1.0f;
& N+ y9 e4 }' }" _* k
pLight->Ambient.b *= 1.0f;
3 x' l+ V) n% S
#else //__YENV
/ b6 ]5 s& _+ F2 A5 F/ S$ M) j+ B
pLight->Diffuse.r *= 1.1f;
: g- ?$ d6 e2 K
pLight->Diffuse.g *= 1.1f;
1 M* E$ @- p7 Y
pLight->Diffuse.b *= 1.1f;
- m4 @, u1 O ^1 P' K' q
// oˉè* ??à?
: Z7 M/ E1 E4 g8 Q
pLight->Specular.r = 2.0f;
2 Y* H+ q% M8 N% ~6 x5 Q
pLight->Specular.g = 2.0f;
# w; e$ _- w) n1 Q- t
pLight->Specular.b = 2.0f;
" p* V! O, _2 F, f+ L) ~: F8 h# K/ e
// á?oˉ
+ }7 P y0 K7 ?8 p" }
pLight->Ambient.r *= 0.9f;
( n2 z' I/ e! b8 ^" _9 R6 d
pLight->Ambient.g *= 0.9f;
$ Y: Y$ [7 _8 c% m1 [- w- L
pLight->Ambient.b *= 0.9f;
4 ^7 U& w. Z% y5 }
#endif //__YENV
9 k4 P: y( H9 W/ z) Z: `
6 f. s$ j# m! V) b
memcpy( &m_light, pLight, sizeof( m_light ) );
/ m3 ~4 @' w# @' k( h/ O% n9 g
; E/ ?. l9 I& G# k* M1 Z
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
. f% D8 z/ H+ H5 a- W
D3DXMATRIX matTemp;
9 o& l- [# x" u3 u# `5 ]
static const float CONS_VAL = 3.1415926f / 180.f;
4 S+ h+ p( t! i+ @: G9 x$ Y1 P
) E/ T/ s. {: c) j; G6 \
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
3 l; m: x; T4 e6 X( ~
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
8 W" E' q0 N$ ^; W" P. L. u' t/ Y
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
n9 h! ^( V7 x% Z
pLight->Appear( m_pd3dDevice, TRUE );
* V* K, L/ B3 u% g# ^ t* J- B% W
5 j( U( Q) E9 O' Q. f
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ l% Y# \1 _) H! \ B1 P7 l
// D3DXVec3Normalize(&(vecSun),&(vecSun));
8 r9 f+ ^ m( w2 t* w' l
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. `% w. {: ?5 ^5 u( V7 W
. R+ [* v2 c& ^8 }: V' E
DWORD dwR, dwG, dwB;
4 G" s; E. i+ e' _' {
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 Q4 }! @5 [5 o( @5 K
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 L; `" B+ d, W& p* B8 U! Z) {
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ A* R. a& q+ U
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) O$ p5 e9 L ?0 k7 h
}
0 H; i' `2 b) ]0 ~, z
}
/ Y% z9 h' P& C( L, c
5 S4 Y6 d7 O4 V8 J5 F
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
h/ e, I+ K8 O R4 u
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) );
$ Z7 a# e2 e: o# {7 p9 l. }
::SetLight( bLight );
# h: X, S7 i6 }! N4 U
) m: h) U; C' f
// ±ao? ?D?í???ó á¤à?
/ a# z$ n' h$ h8 R6 v+ n8 ^
m_pd3dDevice->SetMaterial( &m_baseMaterial );
5 K+ f5 @9 G4 @& x
0 n, f) i7 b5 ~( G9 k5 v
#endif // not WORLDSERVER
& p# e, N% N- Z5 m! s& V+ g) U3 c
}
* V' o k9 v' O0 a/ h# M6 [$ j$ k8 q
并更换
, [0 \0 _# V; @! m0 N+ T
Code:
( Y R" o9 y) n; z/ Q
__FLYFF_INITPAGE_EXT
' d6 b# w- w# ~1 O# G8 ^+ M
定义
, w1 Z/ t! X6 L- |# ~ r
! a% H0 l+ e8 p3 W \
) h c1 B& J3 u$ e1 g# [4 e
! a/ ?2 o4 `. x' t
+ _# l$ Z8 ~8 B' N9 z+ y
现在终于删除我的狗屁加速...
- M8 i0 J B; d# \; E$ V
0 Q$ j1 k9 m( b' n& P: J1 O
+ F: u+ N% ]& V9 g8 T& V: A
: g4 `7 |& j5 e0 j% m: c
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2