飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
1 |% _% B% r" ^. c( m% I
尾翼:
, U9 x% m! {/ u
, E" n) k$ t/ ~! O# m
代码:
- W5 G6 n' m, a. h% m9 O, M
CWndAutoFood::CWndAutoFood()
7 |2 O6 V3 g5 g2 e# L, r6 J
{
8 P5 P: [" F t$ `% o1 Q: P: ~
m_pItemElem = NULL;
. d$ H5 n% n* C% r% q1 h Z, M
m_pTexture = NULL;
8 l. I, H/ M, ~3 f
bStart = FALSE;
6 x0 U4 X& s3 u) X. T9 i
}
: w8 M0 b% m8 ^$ p
. O; C; p+ A8 D
CWndAutoFood::~CWndAutoFood()
% U* T; m) j3 ?% B8 J6 {* c1 a
{
* {" o G' T1 O2 e& E. b4 A
AfxMessageBox( "AutoFood ist gestorben
" );
5 y) e8 p/ k. H; Q
}
& _) k- F4 v4 b* q. j# k
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
% Z/ w7 v: p% b& }3 G* l
{
4 w& }/ g5 R# I3 [7 [4 |0 ]. g
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
( Z ~9 u7 T1 G
}
/ e o9 k2 D$ E. q
8 y' c2 J/ e! s' T6 o+ t2 G5 `
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
/ w. O* J" N+ e: C- A E6 ?3 E* {3 |
{
' }) F, P+ [6 V
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
( Y& B0 t7 _" H. s6 ^8 t1 z
CRect rect = pWndCtrl->rect;
$ Y. X/ ?' E2 H e' A
if( rect && rect.PtInRect( point ) )
5 |2 B% |5 y6 {1 o: }3 _
{
, r2 z) l7 z9 d
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
- E: K1 _6 Y7 W$ h$ C( o
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
# d- ^6 y! \, A3 o
{
6 W4 B4 c. r8 Q4 T9 S! ?
if( m_pItemElem )
* c: u' L7 w X; h' n' M3 I
{
) d' @ |1 ?. v4 D" O2 \/ p4 e
m_pItemElem = NULL;
& U) u% T$ h( @
}
7 j+ {" l6 B1 l9 i x. C
m_pItemElem = pItemElem;
9 Q# E9 B2 z5 r0 j: R
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
2 h* i R6 t; o
}else{
' R; C$ F9 ~3 }0 v, T: o
SetForbid( TRUE );
$ e! }7 J: r% g; ]1 b' s5 H
}
. Y; [3 S" u2 T2 H1 O W
}else{
+ X9 K: W9 b: K5 p0 `
SetForbid( TRUE );
* ^7 x5 p6 k b2 f3 Z
}
9 f# j1 H" O# q/ K7 c
return TRUE;
7 D. Y+ e. ~3 l7 Z
}
8 a. R# E1 P% @* W0 B6 H+ o
]2 l/ R# Q( r& R+ Q. p3 u$ |
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
2 h9 v. H8 z# G, o& [( h8 U
{
. k6 w/ i$ Q" Y/ l+ ~- n
switch( nID )
$ e0 P8 B6 }: t- G2 |" x
{
8 u7 J' p* |! q" t2 s& l8 t
case WIDC_BUTTON3:
) h7 v% l9 ]% o' h) C4 E
{
; h% ]/ F9 R h* y% g
bStart = TRUE;
3 @8 Z/ e) ~$ k4 R U7 U/ [
break;
9 p8 V. M, L- I! `- w! T: u" ~9 s
}
4 t9 R& w& q7 e* I
case WIDC_BUTTON4:
: ~2 z" G, P- A
{
* A5 L, k" C0 w( x
bStart = FALSE;
8 G; c5 q- B! ]( p& Z! Y
break;
' X& x7 n. I; l4 i l3 y
}
, O) w) }0 e: i: [) z9 R
}
% h4 w: c/ G% Y: ~! X% ~
return CWndNeuz::OnChildNotify( message, nID, pLResult );
1 i$ z5 m! G) q0 V! {: ^
}
7 n6 a2 g/ B j6 m* C4 w
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
( w" W; y6 A2 q, e8 t) z8 J) u- k
{
8 G, g! D% E% A. S( Q
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
7 Z$ n' W4 x, ^: j- }" f3 U1 b
if( bStart || !m_pItemElem )
7 G: W+ F( V1 w+ o
{
: n3 d" Y* ]# t, g z
pBtn->EnableWindow( FALSE );
" F0 [9 q# x) E) D" E! E( ?
}else
% {: g! Z+ f7 ]# Z7 g, }# Y j
pBtn->EnableWindow( TRUE );
' d: f2 J `' L1 s3 [
if( m_pTexture )
* m7 o- s0 ]5 ~/ w V
{
/ W& P, j) ~" g# V( G G
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
7 q8 S* u3 a3 B2 |5 M
if( wndCtrl && wndCtrl->rect )
, f, L; _3 X0 T' T0 A
{
* I& [3 D$ F# J o2 ]
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
/ X' W' ^! |# R/ ~
}
1 u: |4 {! `9 \2 r: L
}
5 t7 B! h- N- j
}
1 G( p5 u1 g" h! k- G
( J2 Q( z( m# a A) C& i0 x
BOOL CWndAutoFood:
rocess()
, j$ a& i/ g2 k6 B; R9 `
{
% v ?" [7 _9 P. ^/ P
if( bStart )
- H9 u$ }1 @( ?7 @. u3 T& M/ ?
{
9 w0 h8 u J) Z |) v) I; ^8 Q
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
/ J' `) a' G; @
{
# r6 Z- M! |4 z+ O
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
$ C8 d! e" z' w( s9 H9 w0 w
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
0 a* T4 {* E, l! L* Q" N% d
}else{
" T( P0 u& w* g( i8 r3 h( n
bStart = FALSE;
0 |) c& C0 |2 D/ a: C* z
m_pItemElem = NULL;
/ U) Y; `3 p2 y! c0 S! c
}
4 D) S# {, T- L( F1 @1 s0 c" Q0 S5 x
}
, {3 D, [7 }1 j# J
return TRUE;
+ y1 E8 }( ~$ |) B% s3 E" G
}
% q0 L% Z- H/ h1 {3 Q
' x6 G* B; J6 r9 p4 D* N
登录视频废话:
( E0 Z7 [7 A: A% f
尾翼:
5 ], A% d' ]" r# s& o
% q* T5 V' P4 g5 R8 I9 K- f
代码:
% @3 n, h' r- ?3 v8 c: F d% P
6 G7 g5 @5 u4 x; K/ x
void CWorld::SetLight( BOOL bLight )
0 W; P2 r7 ~5 s( S; r/ _: l
durch
$ V' i( W( U% ~6 P
Code:
' F6 q% R, O5 J
void CWorld::SetLight( BOOL bLight )
. O# {8 K G; u6 O
{
! J& k* W' F( a7 u* N
//ACE("SetLight %d \n", bLight);
( c- }" y, \) Y
5 w/ T. r5 C- |" K" P
#ifndef __WORLDSERVER
* y% i8 [6 q8 S+ @: H
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
( S2 {4 o G$ f8 C/ ~! e' p
CLight* pLight = NULL;
6 R+ h; k: Q$ O* d5 b4 R& }
% i3 J4 \' a1 G: |/ o0 u( A3 F
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
+ F$ K* v( n" F5 r/ \
$ O$ W* K& H b9 r% S% n# V. r6 L
pLight = GetLight( "direction" );
. f7 \9 i7 _; m7 P# t$ e
" ]0 K% ^" M2 d; A, S8 Z7 D
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 @, K Y% K+ R; o: s1 s3 S8 [
if( g_pPlayer ){
& h0 G$ q1 k5 N# b5 p
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
. W. U* k0 E7 l8 u6 e, Y
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
9 }8 l$ F; Q" T
{
' ?( U, [* j) Z: L& c
if( pLight )
5 d- C1 I$ v2 ]
{
. `5 u* \' N5 N& D
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
9 f3 Y" Z' P. |8 N! k0 d, z
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
# p% y; |4 p# j
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
# D9 Q6 v, {# g& q% K
+ D' y( n& ~0 t g, H
pLight->Specular.r = 2.0f;
* E# H- |# E- W1 o
pLight->Specular.g = 2.0f;
" @, T# r: [0 u7 j4 Q1 n
pLight->Specular.b = 2.0f;
! j# d+ a* x' f, N
" N$ W9 M, p/ j# A, R5 p7 P1 K7 f1 g
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
. l' i5 A1 s, f/ p
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
' @; ~) w' F- m* @ W8 ~- |
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
. S, W- d i3 g5 P: _, @ M, X
7 E& t N1 [, x8 a% ~
HookUpdateLight( pLight );
# v, }" w- X7 I ~0 I
# `! S! u& Y* R
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 W w3 n. C9 C! l6 G2 A2 V+ E. a
' W8 c+ R% q- N' Z: ]
pLight->Diffuse.r *= 1.2f;
) Y) a- b& J6 R2 [
pLight->Diffuse.g *= 1.2f;
) i- n7 X* Z- p8 g
pLight->Diffuse.b *= 1.2f;
5 V2 J' ?- `; s. w4 O: R5 }. t
! l5 E5 Y% t% I
pLight->Ambient.r *= 0.8f;
+ M5 ~# J" u) o1 r9 l: [% j
pLight->Ambient.g *= 0.8f;
' k6 w! x$ }% i6 i* l; s4 I4 T
pLight->Ambient.b *= 0.8f;
, o+ R3 {: P& I. E6 e. t
4 N: d) O* |9 M/ W( ~5 v
memcpy( &m_light, pLight, sizeof( m_light ) );
# k& P% |. M# v; c4 Z
" x' T+ m3 ?- i" g A2 F
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% B) |$ r5 N; P6 M. c
D3DXVec3Normalize(&(vecSun),&(vecSun));
- `, q6 q4 n5 u2 T
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
" Z9 M9 Y1 L" \( N+ d0 @. P
pLight->Appear( m_pd3dDevice, TRUE );
5 ~; Q" N6 o9 f" T! A! W) X
}& U7 `0 K4 I
DWORD dwR, dwG, dwB;
# y& d( N/ D- y. R* y9 U: G
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 d( I1 v7 U* h( S: b
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 _- H1 O1 j4 L! @# B" J# Q
dwB = (DWORD)( pLight->Ambient.b * 255 );
: O* b+ a, V' V, P! U
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 W( P1 q6 w; a7 r( R o4 d! c
}
+ Z' f2 {4 [/ Q0 b& e
}
0 _' ?, e9 c- n: b. d
}
4 m- ~; U: `& b I5 Z6 j
else
$ i6 [% j3 ^; o1 S6 W3 D
#endif
6 D, U+ o# G3 [7 I- c
: \: f7 z7 K6 H n* P
if( m_bIsIndoor )
; X4 h, I, d% g
{
! L: Y+ i% x( P' V
if( pLight )
& ^- `9 y' v$ q+ [& C
{
j$ [! ^+ [+ [& W! T4 S: d
// à??μ oˉè*
/ E" l& X4 ^) @! d9 E8 H" i
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
$ K% Z7 Z Z" j% g
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
5 ?; d$ a% k- x+ b7 B# [
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
8 l1 e8 H) P' k- c# v! \
8 J% |* ?, V/ X. s w1 P5 m
// oˉè* ??à?
' P! c9 @2 O2 K- u. i% q
pLight->Specular.r = 1.0f;
9 }: V4 m& h9 n$ q
pLight->Specular.g = 1.0f;
# v" N- m) s% e$ M5 B9 N4 q# u
pLight->Specular.b = 1.0f;
* X @) t9 C& A9 l4 v6 i! ~5 g: ^5 Q/ l
// àü?? oˉè*
% } {1 @, q$ F' R0 P7 `: j
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
3 L# a4 f/ @- j) }" ^3 j& X' c; w
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
! `$ Q) o0 V4 m* g3 G: _8 f- ~: Y9 W
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
5 P; u m) r9 L# d: L( F! H0 ?
/ ^- p( Q7 H4 t( ]. V
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
( f9 f" x8 e6 S- g' Z
{
5 ~2 L( F! z; {; S
pLight->Diffuse.r *= 0.6f;
3 A+ p# a3 u* [
pLight->Diffuse.g *= 0.6f;
! v6 w1 x, S6 t# p1 s
pLight->Diffuse.b *= 0.6f;
- m* L* q/ g- @: \" k a
pLight->Ambient.r *= 0.7f;
/ o; ^6 T; V" J) J1 M
pLight->Ambient.g *= 0.7f;
, M- M- K# H1 ] u3 I% p
pLight->Ambient.b *= 0.7f;
& U( E/ b3 B; X& K3 R- N. Z9 ?
}
5 i4 f6 [4 t9 a$ Y \' t; W
2 _: M( Y* `' s( h
#if __VER >= 15 // __BS_CHANGING_ENVIR
; T" D' w, h, p% s" v' d
if( g_pPlayer )
- V$ Z; m5 W; [
HookUpdateLight( pLight );
Q* p, o% Z8 x6 ~6 D0 g
#endif
/ }) R3 F' c" _9 a
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' ?& [% T3 ~$ F# ^
z7 N) {6 l" m2 ?& i# o8 c3 v% w
pLight->Diffuse.r += 0.1f;
, S' k" L; |* b; ~% r
pLight->Diffuse.g += 0.1f;
2 N9 v# V) v$ G9 v
pLight->Diffuse.b += 0.1f;
' a0 @, {* L E' |9 x
// oˉè* ??à?
7 j+ l3 e. q/ s$ |1 m/ x' w. L+ }, ?
pLight->Specular.r = 2.0f;
- \+ L! o) t% f# G# Q7 t
pLight->Specular.g = 2.0f;
% t/ w$ \1 t/ {" B$ o
pLight->Specular.b = 2.0f;
* X$ P3 M, s0 W7 U
// á?oˉ
. n* u7 K3 ]+ q! A% a
pLight->Ambient.r *= 0.9f;
7 Z( r4 I% F. w% J. }( {# h
pLight->Ambient.g *= 0.9f;
1 e9 v* ?) D$ R8 k# `
pLight->Ambient.b *= 0.9f;
7 I) A! q; _: J9 ^! \, x( }+ c( z
8 \8 O4 l$ w4 o5 u
memcpy( &m_light, pLight, sizeof( m_light ) );
3 ^: s1 U& W% N9 h3 v3 M
/ n) O& I0 S3 m7 f
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
8 I* v8 W. ?! J7 y2 A
pLight->Appear( m_pd3dDevice, TRUE );
1 n7 t. W2 y ~" C# z- h. u/ A
& v9 I" f* D; V% B
DWORD dwR, dwG, dwB;
2 ], f: `2 O. T# v
dwR = (DWORD)( pLight->Ambient.r * 255 );
h+ {1 R! O, \2 h% V
dwG = (DWORD)( pLight->Ambient.g * 255 );
$ h9 }/ U! ^& d5 U2 Y5 ?; B
dwB = (DWORD)( pLight->Ambient.b * 255 );
( ~$ c5 i, `+ j9 k# Q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' ^+ S$ J+ _- {3 j
}
* ~0 t4 m( p$ B, T
}
2 N7 N- K9 ]* [/ D5 O- U
else
# \5 t$ g( t; L
{
+ s& s6 }% E1 a* w& W; C9 f' ?
if( pLight )
! G2 H; [, V9 m; K, n+ T
{
9 U8 f* h# N8 t& J/ I. R, R. O
0 s* r/ H' x/ C0 ]! w
int nHour = 8, nMin = 0;
/ i3 J* j9 x4 o/ H; {4 H
#ifdef __CLIENT
" X' ~8 W' s, m8 ^# \4 ?0 Z
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
, F5 `7 |2 n4 o
nHour = g_GameTimer.m_nHour;
# I# @% ?# }7 j3 o8 C0 }9 u) I
nMin = g_GameTimer.m_nMin ;
7 P0 ?6 J+ F( U+ m2 P4 j! \/ T9 I$ a
#else
* e' F6 X9 ]1 l. j! |
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
4 U; i1 o% R$ t) Q' J9 `
if( m_nLightType == 1 )
4 Q e* b, Q! `' c
nHour = m_nLightHour;
+ _8 \2 l. h* \# h* U: w
#endif
1 P2 B( h- `& S* @& R$ b
nHour--;
- r% |% _( t6 N( @ v# p- p
if( nHour < 0 ) nHour = 0;
6 J0 k: G+ P) M9 g4 T: x
if( nHour > 23 ) nHour = 23;
7 |( B% J+ u7 s% {9 ?
3 p4 m+ S0 J5 s" Q. F0 B
//if( m_bFixedHour )
8 o2 K# `* L$ ?
// nHour = m_nFixedHour, nMin = 0;
4 N1 ?, b% F$ j$ ], ]
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
! \: w o0 ]5 z" n4 j
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
0 O. N: R+ W6 `8 n; |$ p+ f v
5 d2 g' S2 G# c
//m_lightColor = lightColorPrv;
$ \. A3 v/ A" ?5 U; {
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
/ \ L2 Q- y" ~( e
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
5 U; J7 b( N6 A* f
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
3 j( ?5 E3 s- B: S( E
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
8 L" b/ [( X( z! D5 R% x
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
( q# h* Y$ T& X6 I
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
2 q# k7 C L- U4 c E* y% _- T3 u1 H
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
* N' f9 V0 i1 m% ^) _
, F: P; n- F4 z. W
// à??μ oˉè*
; `7 y1 Q0 E8 J$ i/ s) E# g
pLight->Diffuse.r = lightColorPrv.r1;
7 \, t5 Z7 F }2 ]8 T
pLight->Diffuse.g = lightColorPrv.g1;
6 i' d/ Q* h( a; i* w
pLight->Diffuse.b = lightColorPrv.b1;
, r# L8 N2 s% P* ^' h0 E
// oˉè* ??à?
: v1 ]4 c- q w& [
pLight->Specular.r = 1.0f;
; u q: \5 T4 k. I0 K6 ]; F7 D$ A
pLight->Specular.g = 1.0f;
; ?, \! A& a% I7 A
pLight->Specular.b = 1.0f;
$ _2 L( b2 O6 p, J1 _
// àü?? oˉè*
" E$ @: S3 t) J
pLight->Ambient.r = lightColorPrv.r2;
. ~; J& X& d: Z# S! t, n
pLight->Ambient.g = lightColorPrv.g2;
2 ^ \8 F1 ~$ N3 Z J$ R. e
pLight->Ambient.b = lightColorPrv.b2;
' H! v0 d5 D$ J; q
- J) s2 ^& o0 m4 p
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, M! @* H( G/ W; w; F8 ?# Y. J& r7 T
{
* Z. ?/ ^& e, x% n, k# Y
pLight->Diffuse.r *= 0.6f;
' |' h& n6 c5 W4 K* G* `2 f n2 f
pLight->Diffuse.g *= 0.6f;
: d( ]. o# }2 d
pLight->Diffuse.b *= 0.6f;
8 l+ k* H2 ?) g! m/ i- O/ n
pLight->Ambient.r *= 0.7f;
0 m \) A b4 a# F8 u9 f
pLight->Ambient.g *= 0.7f;
4 T% n0 h4 \* J8 I9 ~ a! \0 g( f
pLight->Ambient.b *= 0.7f;
b' l" _1 [ X3 _) I& L8 b+ c
}
/ ]* I- k: M( A, e
' f ?8 a7 n8 s5 r+ k: Z3 X
#if __VER >= 15 // __BS_CHANGING_ENVIR
" ?# t5 z. n: ]* z
if( g_pPlayer )
+ I7 F5 U) b4 r& \, t8 p
HookUpdateLight( pLight );
( J3 o+ q0 p* k
#endif
( p, _3 j! j4 b F) w3 x
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& B' H/ f6 u5 e) d
1 s/ Q4 V; }& P% f# n5 f
#ifdef __YENV
1 A0 S; a" j8 [1 A7 _% H% A9 w
pLight->Diffuse.r *= 1.1f;
6 J% }3 Y/ D o4 N9 x6 C+ V2 f
pLight->Diffuse.g *= 1.1f;
& d1 ~# w+ W. D' W+ C' z
pLight->Diffuse.b *= 1.1f;
) T6 s0 R9 K; `1 G4 A0 j
// oˉè* ??à?
* B1 M( A2 X0 \
pLight->Specular.r = 2.0f;
# a3 G1 D/ [7 c f
pLight->Specular.g = 2.0f;
/ E9 `! x1 V8 e3 \
pLight->Specular.b = 2.0f;
" d, r& O8 j6 R( `4 J
// á?oˉ
$ G1 ?- W/ Q8 ?* U" l
pLight->Ambient.r *= 1.0f;
& a! B" R1 L, A
pLight->Ambient.g *= 1.0f;
0 E& j" s n' G& X" ?( d
pLight->Ambient.b *= 1.0f;
. h e \' ~' B$ v( j& x
#else //__YENV
- Y- d0 I& B0 Z+ r
pLight->Diffuse.r *= 1.1f;
% Z. t" T6 R! ~3 Q
pLight->Diffuse.g *= 1.1f;
; P2 `. f& ^* m+ s
pLight->Diffuse.b *= 1.1f;
5 Q; P2 W9 {4 P5 Z) k7 h
// oˉè* ??à?
. K4 o8 I/ v- y- a7 P; `2 Y
pLight->Specular.r = 2.0f;
}" x8 t0 a9 `% R, O3 M' I( t: K( C
pLight->Specular.g = 2.0f;
* \% S. b; f, L" ~
pLight->Specular.b = 2.0f;
5 ?1 v* S$ t7 M' A" L' B+ O
// á?oˉ
8 d& w% F8 O, Q' Z' h/ [* `
pLight->Ambient.r *= 0.9f;
5 q" n1 i$ z: a; h$ Y
pLight->Ambient.g *= 0.9f;
$ I* o) o/ a) t9 v; ^, ~1 M; S
pLight->Ambient.b *= 0.9f;
" {& q. B+ F* y% \
#endif //__YENV
2 {! }5 t2 S2 U$ R, _/ u" k: ^( U
6 y5 ?* x) m7 q$ ]: r) i
memcpy( &m_light, pLight, sizeof( m_light ) );
' N) l+ U0 I5 C0 J3 m4 j
6 G. Z% H- d) W5 K3 @) O/ R: I8 N! T
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
% L4 A* }2 T- x4 ^' s+ ?1 d4 o6 e
D3DXMATRIX matTemp;
& c# j1 y ?; A. B0 T; y
static const float CONS_VAL = 3.1415926f / 180.f;
" h% e' O) U8 g$ a5 ~
8 x; K& E' Q# ^3 @
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
, m5 W) H( c8 l7 t# y" s
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
) H8 x- L- w. X: H' |8 w) X* T
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
5 `* b# z: A9 y& G% {7 y" ~. c( H: O3 q
pLight->Appear( m_pd3dDevice, TRUE );
) W/ _: W3 y0 j' `. r# v% s
1 i; M" i, J3 H
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
, V- J! ]+ P; b1 [! l
// D3DXVec3Normalize(&(vecSun),&(vecSun));
" `) L8 y* }$ T/ M
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
6 O8 |, u% _" x( G& T+ x; j' J Y
/ o* d. e* k$ I
DWORD dwR, dwG, dwB;
8 ~' `5 t" r/ O6 f" Q& l
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ U: T) m+ Z0 G" \
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 q1 V/ Q+ X0 C
dwB = (DWORD)( pLight->Ambient.b * 255 );
# N. i8 V6 z+ I, `
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( H. t5 v/ }2 Y J- W) C. ?
}
3 k2 I1 P5 n" b, d7 s
}
0 D4 a i1 @# G' C( O
7 Y8 e$ ^4 o x. W* s8 c
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
5 G5 c# P: c0 }
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) );
0 F/ A$ E- h" y8 n c
::SetLight( bLight );
7 P0 M" c9 v$ J. _' S( X
1 R8 |" t& I: F! p1 K
// ±ao? ?D?í???ó á¤à?
1 m9 _( F% s) F
m_pd3dDevice->SetMaterial( &m_baseMaterial );
0 ]1 P. N$ @8 T4 z- v, `9 n
: M4 s4 x# X# L' o- g8 h" t- g
#endif // not WORLDSERVER
" U x: P3 p' U: f: Y# M9 q
}
. I2 T* ?; ^& l0 {% M' X0 }
并更换
' i1 ?- V( f; L: c
Code:
; ?8 T: \. C; _* p2 r p/ i
__FLYFF_INITPAGE_EXT
# j" k, f, v! R6 ]3 P
定义
+ e0 |. t6 X; n5 B) \
; ] R& H4 W/ p' T
2 R* U; T/ q. z+ o6 i9 m5 n& |- J
9 I2 n- w$ h' U# b
U) h( f9 V. s
现在终于删除我的狗屁加速...
3 j3 Y4 G6 R, Y7 o* a; y
% \. y$ }7 D; b1 O, b
$ w' A) Y) `9 D2 V" }* ]
5 c1 a. [9 u; c, X$ q5 L! I
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2