飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
5 ]- U! _0 D7 J
尾翼:
- B6 W2 @- M5 q5 M& [
) U" y4 S \! _& a; j
代码:
8 e6 a8 X0 }4 G; Z
CWndAutoFood::CWndAutoFood()
$ n7 H- b- ~8 r7 T" i/ ]
{
2 r' Y" s5 e/ u% C2 C
m_pItemElem = NULL;
/ C6 { W- i& g8 F" Y7 o4 U
m_pTexture = NULL;
4 j% \! O b7 x2 m3 K. r
bStart = FALSE;
! e- Y: y4 A8 Z/ b0 w# r
}
6 y, Z( e9 C# j
/ Z0 b" v7 j. K" Z3 H. I# U3 x
CWndAutoFood::~CWndAutoFood()
& G# D9 ]: j- z h" L
{
, Y% y; }2 j* E- |
AfxMessageBox( "AutoFood ist gestorben
" );
9 H4 I- X1 o# P3 u7 T: w1 `
}
: ^! D# a9 D+ `* r
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
, f. Y0 c: v+ T v% B
{
4 T; k7 c! A* }7 j% d8 \1 @- \! v
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
2 `+ S A0 s3 G! X8 a8 l
}
; E3 W$ ~( \& P9 J! D8 T; ~
+ f5 d) _: ]8 f8 g* H
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
! ` |8 ^! e; E: ]: \/ c- H$ `+ i
{
9 L( F5 ?& r7 l$ K
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ V1 Y5 c! E) O3 B) f
CRect rect = pWndCtrl->rect;
7 u+ g \$ W; e
if( rect && rect.PtInRect( point ) )
/ ~$ `6 i$ `! j6 M; X! i
{
' F6 W! }- C/ f2 _% @" Y6 {
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
3 q) u% s7 J, r! N6 }( p
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
: Y) q9 t. {0 ~3 F$ Q" w
{
/ ~+ |' ?1 S$ s; r% m
if( m_pItemElem )
8 ]! g7 [. D* N E
{
8 b2 b3 S0 {& ]! J
m_pItemElem = NULL;
. w; D ^( u* `1 `, Q* n
}
6 @* u& ?( w7 }! }* i/ f8 J
m_pItemElem = pItemElem;
# y' E. b* a0 n3 n9 ^8 [1 t
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
4 y9 `- n) }; I6 s
}else{
( F9 c% k6 b: x/ ]4 Z0 S- H4 ~- j
SetForbid( TRUE );
( V; B7 D' a1 r+ \ ~0 R. R9 L# {9 p
}
- i2 w0 n1 v" A" @& T1 p
}else{
1 V" m6 L( o' ~5 }- |2 L
SetForbid( TRUE );
( G2 b% s, B; J( u6 E- b
}
9 x4 { {! o( I7 b
return TRUE;
4 \5 j$ ~9 w' k; I0 s6 Z' p
}
% O2 B0 P8 A, c* j9 m! L& f. \; T
* ^5 c. N0 k2 Z: i4 ]9 k
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
: p# |; U& y" L- ?9 h5 [# p' ]4 j
{
$ k7 a( T+ N8 d3 M
switch( nID )
" o6 X7 [3 l0 F3 ~
{
$ `& T/ H- L7 x6 t
case WIDC_BUTTON3:
5 S" j" V4 }% `! N5 ?9 z4 h7 Z
{
0 O" v: I& [8 V& d3 i7 G2 i
bStart = TRUE;
# [9 O9 {" ^/ J
break;
, o( @) E$ `$ P& Q3 j1 j
}
3 c/ h2 B$ G" K; [! o
case WIDC_BUTTON4:
3 X% P1 O) b1 p: |
{
! L0 j* {4 r$ m
bStart = FALSE;
' x( m3 L& B2 [ \' B# X5 V
break;
/ y7 V# Q7 Q( R1 J/ f3 q; R# _
}
. y# P% {0 y. ^0 Y
}
# D+ V/ z. [( m e* L/ W4 e$ G
return CWndNeuz::OnChildNotify( message, nID, pLResult );
. ^0 C2 b4 m9 k' k6 O+ \& `6 g
}
1 ~" S& m% @( T5 V! j
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
2 g; K1 {4 P. m6 ^5 j9 w1 i
{
* m W4 q. S2 L) G* B7 K& t7 ]" u7 ~
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
3 X, f. ~0 x$ h/ a
if( bStart || !m_pItemElem )
0 ]" c9 Z2 r$ N/ t+ j1 x' l6 u
{
2 [' s4 n. } U$ X
pBtn->EnableWindow( FALSE );
3 ^2 U; ^* m9 I7 a
}else
+ L4 b* L. t; X. S
pBtn->EnableWindow( TRUE );
' d U8 G/ L) H3 r2 k! {$ V
if( m_pTexture )
. ?7 f3 r H+ @' R7 C
{
) _1 Q+ r" ^ T3 _! {
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" k! b( _' }8 D; i1 p$ G8 c
if( wndCtrl && wndCtrl->rect )
! g0 r0 F1 p- ` Y
{
7 o" O" `* X/ l) W
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
" m9 u& @% E1 U# ?$ ^
}
B; j( V! m1 h# c# j% L
}
8 ^7 c8 W# w5 Y
}
" @0 z7 N/ h$ S0 G! a( D! s
8 j; e$ [6 k$ ^0 {( Q
BOOL CWndAutoFood:
rocess()
r+ A2 ~9 E8 ?. I- Z% U1 e
{
# P2 `) M: N+ o
if( bStart )
- q9 t2 l8 \' V' l
{
3 j6 }) K! K- g: e2 M" T& l
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
3 l% H5 @6 {1 j) J+ ]
{
: T+ j l0 {& w! m
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 c9 U* f# Y& U2 o
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
$ ^& j0 O2 N. {6 d
}else{
8 a" [) j# l& _1 s' ]
bStart = FALSE;
9 \2 }3 a1 A0 O" l$ P
m_pItemElem = NULL;
7 N5 ]. K- ]! D; O1 N: y
}
, f4 k; p* E* q0 ~5 m
}
8 G$ i! i* ~/ v) g0 s2 h
return TRUE;
& ?5 ]# y' C; d/ g
}
3 |/ e2 V4 X) ]* l: v/ V0 C; |: e
4 \. s$ k( w3 Z7 O" r' _; s
登录视频废话:
* Q& y5 ?4 ^- g7 C1 B! x( E/ |- G' X
尾翼:
9 P$ ^8 \. Q. w6 E. U% M* v
3 R. J) b( g# P0 [) k' l
代码:
: [$ |4 K% P: l$ l$ y
; x9 ]7 J0 \5 E$ A( a' T) q
void CWorld::SetLight( BOOL bLight )
7 v& s. X4 P& n: F3 u
durch
8 {" G8 H$ N# ^
Code:
. w7 Y" h2 r" Z& Q4 i$ S- f9 z* j
void CWorld::SetLight( BOOL bLight )
5 j% L" @6 U) p6 ~" s
{
' Q& v2 W5 e4 A2 U3 V+ t
//ACE("SetLight %d \n", bLight);
% I3 C6 \2 V8 l+ F
) {5 R, q5 u) A4 _8 ?; N" c6 k- m7 i
#ifndef __WORLDSERVER
! C# U$ n" M" I
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
3 x2 O2 v% c$ t$ L
CLight* pLight = NULL;
9 O Z" |( ^1 m: v" M3 L# i
- o D& H: s5 S2 |2 P% ]
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
+ e! [6 W3 R( D# ]3 w0 E" H% y8 c
# r6 n5 Z! l7 h6 p* l: K! h
pLight = GetLight( "direction" );
4 _( s+ }% v5 k$ c. V
2 u1 A7 c' B" T8 z) e
#if __VER >= 15 // __BS_CHANGING_ENVIR
" o& W# e, \( i& x2 B
if( g_pPlayer ){
8 @. `2 f: F& O- ?9 ~) z
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
" R# t9 | r1 j& \# J
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
6 l" K- C* `& r5 A) t) ] z
{
( C v% M: B' c# r. n6 [
if( pLight )
+ E$ q/ u7 y# b; b- I& ?
{
6 E' G' J6 l6 J* \
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
6 P7 g4 } A# p: q- ^
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
: M/ B( j( l J- ~: K6 J1 F, ~$ M, F' r
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
$ T* L2 H' C# g7 z' j$ ?/ x
+ N1 H- j/ f. d" N3 @1 N
pLight->Specular.r = 2.0f;
. u2 [" |8 c0 z* A5 `! |. Z# K
pLight->Specular.g = 2.0f;
5 T1 H4 g* ?5 s$ ^# S+ S, P
pLight->Specular.b = 2.0f;
! r& q7 |/ `& ~ k
, G% B2 j2 N" i* P* p
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
! n, J1 V' u: V: @) k# b3 M
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
8 m% Q, N* P' V) N
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
, X& H2 I" \5 |3 c* z5 ^
+ n( t" @) ^$ C. n! I; d
HookUpdateLight( pLight );
; G9 D, j0 V" P' c
; i! i/ C: U2 A6 l& ^8 ~: f- \# [
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
- j: @* }$ k$ Y' P/ M
* r3 N8 u3 D+ h4 Z( w/ j2 D* `
pLight->Diffuse.r *= 1.2f;
) R; `; X4 l8 s; w. Z
pLight->Diffuse.g *= 1.2f;
& P- F6 ^4 v7 i+ ^
pLight->Diffuse.b *= 1.2f;
/ m( M$ m: Q- G M" d; a' f
! W# y9 j- A& O0 K
pLight->Ambient.r *= 0.8f;
) M( o/ W5 A+ V, \
pLight->Ambient.g *= 0.8f;
2 B" d" a4 a5 P- {5 Z, |, v
pLight->Ambient.b *= 0.8f;
7 ~9 s7 c0 @- h
' z4 r% p) s3 @- k, c1 n
memcpy( &m_light, pLight, sizeof( m_light ) );
# O# ~/ L9 }- u2 o& _4 ~
- b. i! T) k) U, h3 L/ y
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 M: Z5 A0 \3 i8 P
D3DXVec3Normalize(&(vecSun),&(vecSun));
8 `/ H$ i' K) N, \0 G- _7 [6 Q
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
" a G) { L- t( e4 N
pLight->Appear( m_pd3dDevice, TRUE );
& c5 \; Y# C7 U) E D5 p4 M1 r* y W
9 V1 n' ~$ E% _# B( @
DWORD dwR, dwG, dwB;
; A+ w" D& O- `! l6 B' @, F" ~
dwR = (DWORD)( pLight->Ambient.r * 255 );
# z+ t# D! _" U7 {* X' ~& r
dwG = (DWORD)( pLight->Ambient.g * 255 );
# I2 D+ j# |1 j$ l& T
dwB = (DWORD)( pLight->Ambient.b * 255 );
4 @. h I5 H5 J6 B( M# p, z
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 p3 V! g/ S# ~5 x/ a' @
}
* T0 q; x7 Q% N1 R
}
% x8 e: |4 e. y6 J9 Y) k
}
/ I4 F* E9 E9 y4 K: d
else
, y6 ] ?/ W1 t. ?) I& o" k& _
#endif
/ B. l3 X3 e7 K/ L8 G; M% _
. ^' i7 |" D. H
if( m_bIsIndoor )
0 i) Q/ B6 U3 Z
{
1 t: v2 _5 [, v0 Y
if( pLight )
, `: F2 V+ @. M/ k, `$ y
{
- R' X' h9 U# G$ O
// à??μ oˉè*
! L0 h1 w7 F/ U. R. a2 E4 g( H
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
% r) V. c0 D3 }* k4 q
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
$ |1 V' M. ]0 ^
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
) n$ U7 i* y8 p. V5 u
$ ?4 b Z/ t$ b. u
// oˉè* ??à?
' ?& v2 `' l4 q9 A
pLight->Specular.r = 1.0f;
* n; r- f8 n# |" u7 a
pLight->Specular.g = 1.0f;
/ @8 z7 M' B. y. O
pLight->Specular.b = 1.0f;
% g3 O2 J6 F7 |: \8 G
// àü?? oˉè*
3 `# R! T% q8 v* t
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
* a8 }- X8 M" m- I- X4 N& j& v
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
4 b% F5 D8 g6 d+ h7 p% O. S
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
7 {) K" q; F9 V, ?. V
3 E& X9 u5 P |. Z; X8 ]( q% L O+ d
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, @6 [ B# V6 Y Y
{
{2 L6 L4 E) D9 |, N* Z; `* D6 H
pLight->Diffuse.r *= 0.6f;
8 ]& x& W1 D9 f. H. ~0 f
pLight->Diffuse.g *= 0.6f;
( T; y8 U6 h+ r2 N- I
pLight->Diffuse.b *= 0.6f;
2 d' m# Z( ^9 F8 q' S: Q
pLight->Ambient.r *= 0.7f;
) c! ?9 i5 M ~* D3 H
pLight->Ambient.g *= 0.7f;
) \: B* V8 f4 ]/ d3 o
pLight->Ambient.b *= 0.7f;
( i$ ~2 Q6 T$ U: @
}
; b8 N% _6 J6 ? u G: m- d6 D
) A( S q- c W. J: X
#if __VER >= 15 // __BS_CHANGING_ENVIR
* R0 w, \0 I2 P. q# D
if( g_pPlayer )
Y8 N3 t6 k/ y2 ]6 y
HookUpdateLight( pLight );
9 ~1 |) S' `2 c) O, s; P
#endif
) b: F2 j7 _6 X# y* F" G. d
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' p$ q/ L: P& T2 o4 L, d V
) A, p& n) ?) m$ c+ R
pLight->Diffuse.r += 0.1f;
. o0 l2 B2 k- @" }: Y
pLight->Diffuse.g += 0.1f;
1 {% Z ~+ w, g5 ~( @% {
pLight->Diffuse.b += 0.1f;
" ?% f0 B! i( c, ^3 F6 A
// oˉè* ??à?
7 a/ [) E/ W7 d( Q
pLight->Specular.r = 2.0f;
+ b+ r$ s. {, K( d+ i @
pLight->Specular.g = 2.0f;
) J M$ J7 d" c- E _
pLight->Specular.b = 2.0f;
1 w$ R) y9 n7 p2 I! t( _1 }4 c7 [+ _
// á?oˉ
5 c& F4 u& r1 G0 m9 b: K" m
pLight->Ambient.r *= 0.9f;
. P% |6 ~% i/ e* Q* z9 |5 d8 d
pLight->Ambient.g *= 0.9f;
' ~6 N4 b* ~( Q% G0 f' M
pLight->Ambient.b *= 0.9f;
# w6 A& G. b% H4 x P: t2 E
% j3 x' ]+ O* w9 v, ^
memcpy( &m_light, pLight, sizeof( m_light ) );
0 d/ f- n2 P0 r6 p1 [
^3 X5 x8 |3 h
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
3 \; n7 J2 X1 O* R" n% }$ z3 K
pLight->Appear( m_pd3dDevice, TRUE );
' }) K% q! w) N3 O. f
/ ^; j7 i/ z% q" L u% @1 l7 U
DWORD dwR, dwG, dwB;
8 I; i6 b/ {& p3 H
dwR = (DWORD)( pLight->Ambient.r * 255 );
# f( N! s# e% t' g8 ~2 _. M
dwG = (DWORD)( pLight->Ambient.g * 255 );
# Q* Q9 V( d! U3 B# U, }/ x
dwB = (DWORD)( pLight->Ambient.b * 255 );
4 J! \ r' ^, H- Y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
d# a: F# a& o" q3 Q, U
}
3 c9 C: m' D7 u/ |( u, {7 ~
}
7 v' X0 v* k) a4 t9 v
else
) ?2 b$ p/ C+ j6 ~
{
K- F( _# M( e
if( pLight )
z0 F2 i& y2 h* O
{
6 }% n: [( Y3 ^0 x
" V T |% X' Y0 O- Y; n% ]
int nHour = 8, nMin = 0;
# L1 ?7 r j6 I( F/ t8 X
#ifdef __CLIENT
1 m* @) T* Y+ b7 [
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
# p2 W0 [" _# b! \- e: L* a
nHour = g_GameTimer.m_nHour;
+ b) s3 t, _/ `) {' N
nMin = g_GameTimer.m_nMin ;
4 }# l8 m, D) S. Z* D
#else
* E) o2 o& U3 _6 q$ E) w/ q( c
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
+ ~ C; o% P( o1 X/ z" {
if( m_nLightType == 1 )
# H; a$ s8 s/ h: m
nHour = m_nLightHour;
: a5 h7 T6 T& o$ s* X+ \
#endif
% n1 p/ W; p9 L0 Y* s5 h
nHour--;
3 U G' P3 E1 `
if( nHour < 0 ) nHour = 0;
+ W5 r5 Y/ B- V# A0 `. P' {* g
if( nHour > 23 ) nHour = 23;
- s" `! c- w% u; Z! E+ m
$ e& h5 R e% b2 e5 L
//if( m_bFixedHour )
# ^ j: r _8 e. t
// nHour = m_nFixedHour, nMin = 0;
' Q% ?+ G5 N# v7 j8 A
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
D+ m6 ^2 O# Q, l' z& k
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
. h ~0 @/ [9 y6 @
4 \7 ]: f2 X7 K- g
//m_lightColor = lightColorPrv;
3 ?( l8 T) M; p! [6 J
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
5 ^ d/ o9 ^* f# x+ k
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
$ [5 A. P Y, t7 k4 n: [, V$ L
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
. g7 J2 d- i. W8 K7 L' x
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
0 j5 L- Y( s) V8 H- g9 ]$ \
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
" p+ I3 C3 ?) B
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
- O; @7 D2 P$ W5 {1 v& q1 `6 b
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
+ G. ^4 Z; I. ?
a0 D# y5 e3 w0 N, C
// à??μ oˉè*
2 U) X3 C! J6 @) }* |0 x
pLight->Diffuse.r = lightColorPrv.r1;
# u4 A( N* p' x" B( }! s
pLight->Diffuse.g = lightColorPrv.g1;
! ^( p6 t- x6 v9 g0 X
pLight->Diffuse.b = lightColorPrv.b1;
2 d2 J: e* U. T$ F8 M& u$ N9 z. V) z
// oˉè* ??à?
2 l' u' ^4 z& _3 j) P
pLight->Specular.r = 1.0f;
4 C( z$ ^6 A% T- {# ?
pLight->Specular.g = 1.0f;
* _9 l) K$ i5 R6 p$ U( _
pLight->Specular.b = 1.0f;
6 Y# u+ g c5 \5 n# x) Q
// àü?? oˉè*
/ q+ r& C, L% G' B" I' q( {8 N
pLight->Ambient.r = lightColorPrv.r2;
- c: }& ]% |7 d
pLight->Ambient.g = lightColorPrv.g2;
& i" B1 Z, a2 c, y8 Q
pLight->Ambient.b = lightColorPrv.b2;
4 X; R/ D7 k0 ^' G5 d* @
$ g. a: P7 ?$ g" l, s6 K3 `
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% p4 G' Y0 h) @% r ?2 W
{
' N8 f. a0 } h' I
pLight->Diffuse.r *= 0.6f;
1 s; A' Q" N* \. e
pLight->Diffuse.g *= 0.6f;
* @& r& U) E. p9 ~( f# @( p
pLight->Diffuse.b *= 0.6f;
) f* y* F' a7 Z4 a1 o: J" b0 T
pLight->Ambient.r *= 0.7f;
8 }4 F, q0 E5 T, k. U% }8 i+ t
pLight->Ambient.g *= 0.7f;
# x V. L- g: k5 J
pLight->Ambient.b *= 0.7f;
' F" I2 \$ q+ ~. L, ?# }1 f' M1 D! R
}
- j3 @* |& v2 y& i
* `/ `5 U, S! W, |! `$ u1 x* t6 X
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ I) m( `' A* N7 I+ }
if( g_pPlayer )
# s4 L; a+ G8 v
HookUpdateLight( pLight );
& k& ~ G/ `) e, G
#endif
9 R) Q% N8 H6 F# B/ D( b
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; n) [7 G: S( _0 `8 b
; d* S/ z" \! {2 S' C
#ifdef __YENV
9 z7 Q9 V5 s8 ] {& T
pLight->Diffuse.r *= 1.1f;
4 k- `# m7 S3 W+ w4 O+ B5 r
pLight->Diffuse.g *= 1.1f;
; C2 d# P! ^& T0 Z+ |; B p
pLight->Diffuse.b *= 1.1f;
+ C/ [+ `# P) Y8 U
// oˉè* ??à?
2 f2 v1 u# s" d$ S+ V6 c3 J
pLight->Specular.r = 2.0f;
( o- ?4 z0 u6 h- G9 e
pLight->Specular.g = 2.0f;
2 G8 W+ b8 i& U! t4 a
pLight->Specular.b = 2.0f;
# r k }% k" ], [( t* k
// á?oˉ
4 }0 B) `& y# x) Q; A
pLight->Ambient.r *= 1.0f;
# C. O; v, ]3 p9 D$ ]/ e
pLight->Ambient.g *= 1.0f;
) I* q6 `7 M6 K3 ?) L
pLight->Ambient.b *= 1.0f;
9 A8 i9 j) Y* b- E
#else //__YENV
/ Y( w V6 y' X! ]! O
pLight->Diffuse.r *= 1.1f;
6 m0 q- u( x* N$ J
pLight->Diffuse.g *= 1.1f;
2 q: M! ^7 K- ?' O7 g( K
pLight->Diffuse.b *= 1.1f;
( Z5 o# H, O2 E1 ?+ n' a( o
// oˉè* ??à?
. z- }9 K5 E$ j( n0 u* ]. C) o. h
pLight->Specular.r = 2.0f;
1 D9 O+ w% u6 d1 @- l( ^
pLight->Specular.g = 2.0f;
' h# I2 j/ C" R
pLight->Specular.b = 2.0f;
/ k8 o5 O2 L; n+ X$ T, h
// á?oˉ
& ^3 `: ^" B$ s/ \3 ~
pLight->Ambient.r *= 0.9f;
6 W; Q9 h7 j% F; K5 r$ Y
pLight->Ambient.g *= 0.9f;
/ ?% k1 k: }( V" P- |3 y+ a8 U9 o
pLight->Ambient.b *= 0.9f;
! q. ?- n h/ Y& H. H u
#endif //__YENV
4 l+ ?6 W; n5 G& a# c( g' t
- M0 |1 B* C( r1 {& g
memcpy( &m_light, pLight, sizeof( m_light ) );
; f. |, r4 y1 T8 U V7 l m
3 ?7 o. c: r4 \. ^. J( b, H/ O5 B* L6 s
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
2 i7 O% T1 w2 B+ d& S! _1 N( C$ c
D3DXMATRIX matTemp;
: |$ Y6 [+ k9 a; I+ j3 r, ]" {
static const float CONS_VAL = 3.1415926f / 180.f;
% c# ]" O+ Y4 C; p* S
- f+ @5 c- [; w- K
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
Q' p4 y8 u: U; u1 R; c Q
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
) A0 o. Q" F& j; h* z; O# L+ x
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
/ H6 s; g5 M; d6 H; a4 B
pLight->Appear( m_pd3dDevice, TRUE );
" P: }" l7 a$ }1 E% C7 F
$ V. m) ^2 _! P6 T9 r
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
8 p& l9 M- s# t' b. Y- K
// D3DXVec3Normalize(&(vecSun),&(vecSun));
# U/ a5 G2 H) G$ C* a$ _$ X% l
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
5 t$ \% N1 M1 {' {+ i% M- H( w8 S
- D/ B5 `. `- A# E* l& _
DWORD dwR, dwG, dwB;
9 w( o; ?6 X6 d5 r' O# V$ Z% u# d
dwR = (DWORD)( pLight->Ambient.r * 255 );
/ X: A7 Z: K- J2 i: s4 Y9 n* L5 u8 W
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 ]4 H, g- l! g
dwB = (DWORD)( pLight->Ambient.b * 255 );
4 C8 w. i9 H7 y) Z4 j6 Q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
& ^4 K2 \! _1 n/ c, b
}
# K4 g0 t4 n9 q- R1 p
}
6 Q6 ?; [" h, ~! P1 J1 R- U
9 V$ ]9 V0 ?7 U) R' R$ C
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
- t. _' F/ H0 h9 J! r1 O
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) );
4 D2 q9 @- C+ R4 z8 a
::SetLight( bLight );
, @+ a$ U! h7 o9 o v8 U
- E7 p) k/ A# i) V
// ±ao? ?D?í???ó á¤à?
: {& X; I( G" z
m_pd3dDevice->SetMaterial( &m_baseMaterial );
' V! @5 D; H2 m
1 Q/ W1 a |8 h3 D8 c9 ~
#endif // not WORLDSERVER
; _5 N( V h4 l
}
5 i4 M- B! d, m8 ]; y. ?5 A- C
并更换
, }3 m1 Q3 }2 A/ H( e0 v$ r8 l+ X
Code:
9 U: Y( Y" p1 D, t4 U4 ?
__FLYFF_INITPAGE_EXT
% Q; i l% B: v2 }4 i
定义
) U4 E5 ?4 V: w5 p; y. C6 j* _- C; n$ g
: |) s" t5 B9 `
5 g1 K/ |8 H( g: h& q0 m9 @
8 s$ s# v, i; h* n: J
0 n8 l+ z7 _: B* w" p
现在终于删除我的狗屁加速...
! k1 j0 A, Y9 U0 S3 I
. E1 Q0 w9 y& T& O. G% Z
0 M7 ?& g: O; t+ n. b F2 _
% j9 Y3 d: I6 S( V
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2