飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
# P8 s+ P7 s$ a) D; L4 |( r
尾翼:
- X% T, K% L7 g" t j4 ^) x
) t q& c, v7 K# G5 a) Z- c
代码:
. P" n. \ g% I g, b
CWndAutoFood::CWndAutoFood()
- v, l4 F- m7 e; O) M# d5 Y3 ]
{
1 m: R) A- Q, j9 \9 b3 {
m_pItemElem = NULL;
z7 V! i7 f# F4 P; ]( m* h: g
m_pTexture = NULL;
4 k/ }! j i9 \9 Y4 m
bStart = FALSE;
: T* H2 g& J( t$ z
}
6 f1 L# X+ j) }/ J, h- m
: V: K# C+ u; C% A# @7 B& h
CWndAutoFood::~CWndAutoFood()
) n! g6 b+ b$ }# {/ h4 X5 {& Y
{
0 N: [; e8 p s8 Q2 c
AfxMessageBox( "AutoFood ist gestorben
" );
% P, t. S/ J; X( f0 O5 T
}
3 G) o5 V: E0 o- {/ f
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
6 q* w' k, y, O+ U: H: }& n
{
9 \5 y/ p. A9 D4 w$ p) J
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
; U# } T9 r- x, j% R( q* a
}
2 N* a8 ^# B" \6 y7 o
+ k' Y& V* u3 Y) a* O
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
9 J# D/ M4 P; l& g0 z
{
$ z5 A% b0 O9 }5 ^- d% R* }
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& D( f C/ ^! A5 X1 `5 n
CRect rect = pWndCtrl->rect;
t# g+ f1 a# J3 \6 R p
if( rect && rect.PtInRect( point ) )
2 s$ X$ V: @! U& U/ m6 z# y
{
/ k+ j8 f7 |2 x$ i; M6 v
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
4 r' b0 Y j+ @2 w; _4 w
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
) U) r4 Y. B- q9 d
{
& s, U0 V' c r( [
if( m_pItemElem )
( d/ c6 Z/ X, [* @% _5 v
{
: q; X9 A* V- j* Y& ^$ z
m_pItemElem = NULL;
! Q* Q1 ~, g8 x8 T
}
4 T: N9 D* c8 w# N5 ]
m_pItemElem = pItemElem;
- @$ b( t" b7 w2 O4 d0 y
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
6 z1 @. B& B# ?
}else{
1 g u+ `% l5 X5 _, X9 w( B9 ?
SetForbid( TRUE );
2 U8 c2 ~6 m% S0 a) O) `
}
+ V; r6 C, L& T+ L
}else{
0 [5 {8 }/ d" _
SetForbid( TRUE );
, O8 C. s/ f* `& @& C! u( ^
}
- ~- A4 M7 Y5 X! z
return TRUE;
( p' j4 f) Z* o; E# e' A' p* F. c
}
' s! u8 V( S6 c$ `4 W" r) E: P
0 N v { W: k ?8 E! s& E
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
! v. T4 D/ D' `4 c5 ^4 j& x1 e
{
% N' s7 I/ ~( q+ p
switch( nID )
3 v c2 A* K1 a
{
* j' N' }8 J. P! P, d6 A
case WIDC_BUTTON3:
/ S( x" v& I6 O% P0 K7 s
{
% c. M; H9 G8 r& D
bStart = TRUE;
: @+ A+ o, _, G- y' [3 c- o
break;
# _& N5 F U) w5 w+ b
}
- v3 H5 ~0 b0 t" P2 V3 m7 G
case WIDC_BUTTON4:
$ R8 D# u k0 w& w' Z3 Y
{
. J$ s+ @/ n* h! c2 Z: k D
bStart = FALSE;
6 G+ n, c$ O, h9 z) h/ z7 U
break;
% d3 o$ l% i9 G5 M# ~5 N
}
1 `# T* ?: K" K
}
# D4 ~$ K3 R5 P, Y+ Q6 T2 a
return CWndNeuz::OnChildNotify( message, nID, pLResult );
4 `4 ]4 x: g& v$ m
}
' M2 S: [" o9 S; q8 J
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
: c4 t( b( B% j+ r
{
2 b8 ` R7 W4 o% o$ ~
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
+ ?, P6 G4 W6 @. V0 W6 o2 i
if( bStart || !m_pItemElem )
5 g1 ~ I* T% u: M f3 `5 ]
{
& T1 i6 i1 N0 W1 @$ V& p
pBtn->EnableWindow( FALSE );
0 E" K6 u! k$ C2 T" ^4 ]) M& O
}else
: c y) D7 d8 j( g$ ?- S/ B
pBtn->EnableWindow( TRUE );
$ z1 A" W0 u: A
if( m_pTexture )
9 f% E7 v: H! _1 r1 m! v* Q
{
% [6 ]6 t5 K" ^2 {- D3 u4 ?
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 i( v. K- W( ^8 G" d- I9 C
if( wndCtrl && wndCtrl->rect )
+ q' @- M4 Y& t1 b7 J0 x; L
{
/ O. Q: D9 _3 I3 J, k8 [
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
! |/ j0 I# v3 g: q' I3 u# m
}
) |: K" B! y& v4 ^% }
}
6 W" @; a [& ]( N: X
}
( e6 r8 m; }+ f. E/ ^: s' ]
. u' X7 H! i9 s# l6 E* g5 Y. m* f
BOOL CWndAutoFood:
rocess()
, ]$ a, n; y" Y7 C& `! J: A; f% f
{
" J: k( [; j$ K- M, I- @$ {
if( bStart )
8 ], ]5 Q! v) E. L
{
2 z" v. ?* c: q8 f' Z$ x) d
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
, o$ a1 A5 U: B& f
{
1 I& I- m3 i! j# C. ? H
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
9 J& \# n2 j9 B/ h2 F1 ^ _9 E! @
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
( C% W, K- j4 I( O
}else{
& \2 u6 W4 E# a. c
bStart = FALSE;
. H5 x' k4 M$ D N( d% O1 d. a8 i* r
m_pItemElem = NULL;
9 a% ?0 A7 ]9 Q2 K- H% }% r( F' j
}
, [- k2 @2 B0 ]$ p( E
}
+ ~5 _* {6 Z' A
return TRUE;
" j' R: `/ z- o& p
}
; g1 {6 w& Q1 `: Y$ d+ s
- w% E, b8 D3 ]: P( z' H" ?
登录视频废话:
+ O% }4 F6 q# D9 s: v5 A5 G
尾翼:
( I* j+ I( _: F* @; o& A( n
, }5 Y. S4 D9 \& M1 r8 U; d
代码:
$ _$ C3 s f# @4 D. v0 g
/ M) T, Q P: Z1 @9 t; s
void CWorld::SetLight( BOOL bLight )
8 [1 O0 ?- ], _" w
durch
* j' H, r7 \8 U8 s$ x
Code:
/ M4 a; P+ n& ?* ?
void CWorld::SetLight( BOOL bLight )
( B: z5 s: o: y) g
{
! z& C9 j P& O, J- c
//ACE("SetLight %d \n", bLight);
" _7 m8 ^3 O; z& x8 V
- B$ M( @2 u. G! e
#ifndef __WORLDSERVER
% n$ a. p9 Y* T: R T9 V
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
/ j+ T0 F+ O1 |2 `
CLight* pLight = NULL;
7 D O& m* u, Q$ w5 |& Z: \9 T4 k
7 \- Z3 u/ ?: Z$ @! y* e1 M8 y
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
& x! x+ e0 ?# e6 N2 V8 n
3 k1 m" F f# A( }
pLight = GetLight( "direction" );
; H- m4 R3 S( M0 `1 G. I2 o
, m: y1 d- n! n
#if __VER >= 15 // __BS_CHANGING_ENVIR
; t: R w' e) z) ^5 O: R9 P
if( g_pPlayer ){
" h) Z' M2 N) \2 Y% F* h
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
4 V4 K( e% G- I4 I9 R. H X% V
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
/ g9 K3 b9 G/ X
{
' b( y% P2 L# D) f9 ?6 R
if( pLight )
% D" q) m8 L7 H5 K( R
{
* O+ Y, E( _% \* b
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
$ l' U; b* }( O/ |
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
- H5 Z7 Q& U( o2 o: n. S- B
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
% a# e5 K0 [& \. W" x8 j0 s' ^# X x$ T+ C
* x9 {' Q/ M. _& {. A4 r
pLight->Specular.r = 2.0f;
2 r) V* ]/ U9 S3 i% x k8 c
pLight->Specular.g = 2.0f;
& X5 _9 O( N5 P; Y* o! j1 C
pLight->Specular.b = 2.0f;
0 D E' G4 B$ |8 m1 p; s
: r+ v( U8 H; f
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
% I6 Y, V$ o4 ] ~
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
# c7 l9 ?: J3 n& V+ J: o
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
1 Z- F! Y% Z$ [0 F
( u6 I: C0 W' j8 x
HookUpdateLight( pLight );
6 ?: q1 I: n' a Q+ n( L0 X3 f% m
0 H( W( ?* t! f8 I1 ?. J0 g
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ D) @% f y7 G* j
1 T3 [- A' N( P- \
pLight->Diffuse.r *= 1.2f;
4 h4 j" T& J1 N( \: |6 S
pLight->Diffuse.g *= 1.2f;
7 F8 b# k/ B- j: f7 {; v
pLight->Diffuse.b *= 1.2f;
6 C, ?+ Y+ _" `4 ~5 \( i
# |' R, u* G. T7 ?+ U0 \- ?
pLight->Ambient.r *= 0.8f;
3 S1 ^9 a k% C k
pLight->Ambient.g *= 0.8f;
8 k2 ^5 G! `- I5 N+ b, \, u; F
pLight->Ambient.b *= 0.8f;
d6 P! j7 u' l. z0 J1 q( p
5 J4 {" Q+ o1 Q( }: t
memcpy( &m_light, pLight, sizeof( m_light ) );
5 i/ f2 z" s( z- i
" U: P7 B- Q8 o' r$ ^
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
& x+ A' y: o- @6 O( x
D3DXVec3Normalize(&(vecSun),&(vecSun));
, g2 x8 Y/ h, H+ w
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! A7 u# b# {2 ]6 Q& H5 { w
pLight->Appear( m_pd3dDevice, TRUE );
% R2 V) O9 S8 }4 v) ~; ~( o5 P
$ `5 N; V# E6 x' P7 n4 m: p8 K1 |
DWORD dwR, dwG, dwB;
4 o7 g4 A5 g- F* F3 I: X
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ b% ^4 o) g" ~, [% @4 j2 |
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 U% }5 U- C, _$ `
dwB = (DWORD)( pLight->Ambient.b * 255 );
5 D. K* Y6 r; ~
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; i; L. k1 P0 `: E' W
}
- ?% k& Y" O7 r& }, e5 B/ u
}
* X7 @3 F- q9 _, w% A. \
}
' `& D0 ?# y* x! c6 ~# W
else
! ^% B$ ]' k+ `5 h/ x& O, D* j
#endif
! Z2 `6 C: v' M9 }( W! F2 f
' ~) c) h L' G6 m' J/ I0 I
if( m_bIsIndoor )
. w9 ~2 H2 f! G5 _) X) i) {
{
{; [/ k0 @; B+ e
if( pLight )
4 K! F. b2 h& H) D- {) r3 d" {
{
# o( S' }5 T' m* {4 h9 a
// à??μ oˉè*
6 V/ p3 s0 P% M; \
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
2 D( @* w7 s. @% ~1 e
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
$ e8 X. V3 A) q/ l2 H( O
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
- G) Z7 |6 i) p$ f5 r
{: W4 q3 h, u6 X3 o7 f' K) e& ^9 b
// oˉè* ??à?
: J' X8 ~" `) c2 L& x4 }
pLight->Specular.r = 1.0f;
* I: Z6 H0 }: i( l# F1 C
pLight->Specular.g = 1.0f;
, q6 S* e' S% z3 z+ B! Y6 ^
pLight->Specular.b = 1.0f;
& T% k1 E8 G1 |/ r
// àü?? oˉè*
! p( `- q8 m S0 L. o
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
4 b) {4 k! l( s
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
) L. h- R+ y8 E0 V
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
- I% R9 B- n" S/ z1 M" [. j
1 Q4 y; l9 u) E8 C% ?- z* ?$ X
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
" ]& r' s/ p! x8 d+ U
{
& O Y' ^9 M& m6 D* @$ L
pLight->Diffuse.r *= 0.6f;
( Q( {% ~, j6 ] n; n& E& z
pLight->Diffuse.g *= 0.6f;
( B5 a9 }7 A2 ^" i( f, A
pLight->Diffuse.b *= 0.6f;
9 T8 ~. t: a" y
pLight->Ambient.r *= 0.7f;
2 }: D5 C8 K9 k8 o) s( U
pLight->Ambient.g *= 0.7f;
; T8 I) Q5 }; V- B" \% ~8 k3 `% }5 @
pLight->Ambient.b *= 0.7f;
' y8 z* H7 q0 [# ]$ V; Z
}
# Y9 D" Y8 l7 J. n9 c# Z8 ~
" a- X/ Y' E- Z
#if __VER >= 15 // __BS_CHANGING_ENVIR
' O( I2 L2 m2 I2 |+ m- d' u
if( g_pPlayer )
( W, c9 r' L% ?$ g! m
HookUpdateLight( pLight );
1 d: m+ q* p. F1 c* p" ?
#endif
3 B, F5 O# @; s4 j. R
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 G7 r m1 l* ?! d) X- e% R% ?
7 w- w+ K: o3 e
pLight->Diffuse.r += 0.1f;
7 z) N+ Q' v, z
pLight->Diffuse.g += 0.1f;
) z; n/ ?7 }% C' E: A$ o: r" Q
pLight->Diffuse.b += 0.1f;
( `$ p8 [+ O4 N6 L+ H* L4 W; [
// oˉè* ??à?
# C% j6 I, o m- a% S% V
pLight->Specular.r = 2.0f;
6 T6 t( Y' O b0 l/ N& @
pLight->Specular.g = 2.0f;
5 J8 P( K$ e$ B/ p$ k9 |; q
pLight->Specular.b = 2.0f;
' G8 \. Z, m: x
// á?oˉ
; M a) |& C$ ?1 e! u
pLight->Ambient.r *= 0.9f;
& `) X$ V+ b" |5 G9 ` @
pLight->Ambient.g *= 0.9f;
+ ?) D2 u( E7 Z! o3 c
pLight->Ambient.b *= 0.9f;
: ]3 @8 D1 o! s% S4 w
/ E# _" Z- C9 D6 W1 K0 T% R. v
memcpy( &m_light, pLight, sizeof( m_light ) );
" d m4 ?& ^+ L' H% v& P4 X6 t
% g& V9 j2 O* E4 _2 e1 i
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
1 _; S+ v$ Y$ s9 {
pLight->Appear( m_pd3dDevice, TRUE );
% _- U7 y+ n: ?" \3 h
2 W# R: I& I$ m- m, a" G0 R
DWORD dwR, dwG, dwB;
" |9 N( U# s* {( R
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 u8 F" }9 y( v
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 F# P+ J) h- Q3 M/ n1 N; \8 _, z, O
dwB = (DWORD)( pLight->Ambient.b * 255 );
4 G. f2 Y( } K6 B9 T" W# b1 Y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
+ n7 }1 W8 F' O& w
}
8 ~5 N Z6 C7 {1 F
}
; S I1 N" Y1 l9 [; h4 V
else
5 A. Q& M, L9 `# J+ R6 B3 `1 [
{
' u+ M8 M' Z. H C T! A: K
if( pLight )
) C+ Y% f% T {8 \
{
3 h6 d1 q& ?" ?* t
f+ S& \$ ^" L1 j4 }2 K3 k
int nHour = 8, nMin = 0;
G2 r4 P8 d. r" L+ V2 {
#ifdef __CLIENT
/ m' {) }$ S: {( x Q. D, k! E
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
- @2 E: n* M; Y" x
nHour = g_GameTimer.m_nHour;
& P+ s$ U2 S( L7 P" o- Q
nMin = g_GameTimer.m_nMin ;
2 C# \, u4 Q" e- |$ b5 R
#else
, }% T! D. Q9 ] h
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
$ f' ^% D/ z' _+ j
if( m_nLightType == 1 )
0 o9 F# M+ A4 {. |7 v, e0 T7 X! i
nHour = m_nLightHour;
( y, O6 N8 M( ^ ]* P
#endif
' ` U) Q3 Y9 L- U
nHour--;
; M. \0 A+ `& B- I- g: }) F
if( nHour < 0 ) nHour = 0;
7 F/ @8 W" Y0 Y6 t
if( nHour > 23 ) nHour = 23;
: W8 }, m; ?# p5 T1 x) }4 u( w
/ ` C: S' T. [
//if( m_bFixedHour )
' n6 M/ g+ d2 y4 e0 t$ V7 Q7 z( O
// nHour = m_nFixedHour, nMin = 0;
3 S( A: v) J5 @. t6 h Q! ]
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
. G/ K' E: o1 a) p7 j% }- I: {% ]
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
1 F( G) g+ i* C
1 R$ h; O0 j5 _5 j) u" w
//m_lightColor = lightColorPrv;
1 Z0 e& h7 M9 D, F+ Q# `$ K2 I
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
5 U, ~& _. b# E' a5 e+ U
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
- l+ E8 Z+ v( w7 {1 K* q1 ^
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
2 _4 s9 G$ A: t) f3 n. `' Q
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
( P9 \( f9 s) c; A6 h
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
/ q$ d$ o' D$ T3 {. l
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
' D x8 C; t0 b! `5 _
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
R+ U0 {# @5 f* O: \9 ?
) {- X( q7 k' i; F/ O, _
// à??μ oˉè*
/ l+ r7 u/ k- @
pLight->Diffuse.r = lightColorPrv.r1;
/ h& v$ K* K* L5 y. R s% M9 h
pLight->Diffuse.g = lightColorPrv.g1;
5 ^3 n! |. q* M r/ {
pLight->Diffuse.b = lightColorPrv.b1;
- w& e4 c: W7 u/ W
// oˉè* ??à?
' K- M) S0 @% P: ~
pLight->Specular.r = 1.0f;
/ J4 @* \, B- W9 c
pLight->Specular.g = 1.0f;
1 M6 Y0 T: m2 d$ B3 S- O6 L* w
pLight->Specular.b = 1.0f;
0 d( @" e. A: p1 l3 N
// àü?? oˉè*
( h8 c6 v& C' Q1 D( H8 V8 p
pLight->Ambient.r = lightColorPrv.r2;
; [/ m7 l' w2 |* w$ O( B2 n
pLight->Ambient.g = lightColorPrv.g2;
. W. p+ c. x- b" |3 l+ R% l0 W: Y
pLight->Ambient.b = lightColorPrv.b2;
. g( r7 {1 X D4 s2 i! ~6 Z6 i5 H+ r
! p' \% T! u) \
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
6 j/ [3 J# K8 [- R7 I
{
/ [7 z0 z' B. v5 O& r& O
pLight->Diffuse.r *= 0.6f;
( e1 x& M' e# W
pLight->Diffuse.g *= 0.6f;
3 z, S$ Z) X2 |8 T* S- R
pLight->Diffuse.b *= 0.6f;
* Q9 S' Q6 B1 S8 `* @, b/ |3 z7 X
pLight->Ambient.r *= 0.7f;
9 H0 u2 i8 J% ?5 P9 L
pLight->Ambient.g *= 0.7f;
, _, g3 J$ ^" N1 U1 }' s
pLight->Ambient.b *= 0.7f;
+ } ^- H K5 H4 T/ s$ _
}
7 w4 T$ D: J" g4 N) o- l, `2 a/ `
7 V! S$ j4 S: ]; j5 J
#if __VER >= 15 // __BS_CHANGING_ENVIR
* a2 V. ^; o. Y( U, C }
if( g_pPlayer )
: ^& `+ g# h( x1 P
HookUpdateLight( pLight );
: Q1 u8 |' Q( L1 b# n3 c
#endif
8 w0 S+ t3 ?6 A! F+ O, m
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 a% J$ l: `8 a+ i( i' u' c
5 K1 D! z* @( N3 k2 Q2 H; B
#ifdef __YENV
0 R3 Q! T: r/ y% T
pLight->Diffuse.r *= 1.1f;
% s" C1 |' t/ A l C
pLight->Diffuse.g *= 1.1f;
5 o6 K! \" _3 {
pLight->Diffuse.b *= 1.1f;
: l- W _, R+ w/ j4 k& n
// oˉè* ??à?
; g: O8 r0 h* C7 j) A7 |7 B, n
pLight->Specular.r = 2.0f;
0 q G" W! B9 J: |
pLight->Specular.g = 2.0f;
s ^# C! F6 Z
pLight->Specular.b = 2.0f;
5 O0 ?. x6 V, j( z
// á?oˉ
6 a3 c+ [. q' p6 k1 n w
pLight->Ambient.r *= 1.0f;
6 ~8 @4 [: g2 o/ t: }6 \
pLight->Ambient.g *= 1.0f;
Y" E- c0 {' V6 z8 m& M$ @
pLight->Ambient.b *= 1.0f;
) r' b1 U3 i* g( t. \
#else //__YENV
! Z- [0 Q1 c( R1 ?8 m- F$ O8 E7 V
pLight->Diffuse.r *= 1.1f;
6 E( ]: w: {' ~/ y$ n5 O
pLight->Diffuse.g *= 1.1f;
$ b# M0 v, Y, u S1 N
pLight->Diffuse.b *= 1.1f;
* X. c2 f9 f+ n6 J) ~
// oˉè* ??à?
8 ^9 `/ [+ s A1 g5 o
pLight->Specular.r = 2.0f;
. O, B$ R5 f4 T- R0 Q2 e! `% C
pLight->Specular.g = 2.0f;
& ^5 B8 ?+ ]( V
pLight->Specular.b = 2.0f;
; e5 E: J- a& G# ^, @
// á?oˉ
/ Y) P& {- y! O/ Z: E5 J# \
pLight->Ambient.r *= 0.9f;
2 d5 ]' k- `; t \4 X4 W
pLight->Ambient.g *= 0.9f;
1 Z/ ?& o" @8 w
pLight->Ambient.b *= 0.9f;
5 \* A9 C) \+ H: B$ Z$ f p
#endif //__YENV
3 S( X! Q$ r& {
8 |: u5 @: i; O# `! {, x
memcpy( &m_light, pLight, sizeof( m_light ) );
( O& Q) ^/ @. z9 V' ?
% Z$ W4 b z( y& x; e' k6 n
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
0 b0 R) k9 ]# n6 i8 t; z' F W
D3DXMATRIX matTemp;
% [" C+ o( |# S0 _8 ]: M
static const float CONS_VAL = 3.1415926f / 180.f;
) r! c0 [! O9 i7 I E4 n' C3 s3 F
& i7 V- k, e$ H. K
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
8 A% k K8 J+ @
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
1 U. `7 s9 p* {: }) A* J* C; A6 g
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
+ D' _/ i' ]2 K- G! q% L( b* p F
pLight->Appear( m_pd3dDevice, TRUE );
4 t0 a ^9 {" p8 o6 O9 N1 `% s$ T
' ~6 [9 R( {. D9 l+ f, p
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
! e1 T+ b* {- |9 }. G
// D3DXVec3Normalize(&(vecSun),&(vecSun));
& ~6 v( g: e" }3 z/ e2 O
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) u2 D" K2 R! y. @0 U# B
- G9 V5 k5 v Y; K
DWORD dwR, dwG, dwB;
/ N1 X; _# N* e ~
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 P9 O% E8 G5 z4 W
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ r1 p% z& E" F* W2 c v
dwB = (DWORD)( pLight->Ambient.b * 255 );
& s+ a: u- \7 D) `6 S0 @
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! G& J6 \9 N( C
}
. \8 {2 B& N1 K S! M
}
h3 W6 x" T3 Z1 b" H1 j1 e
2 x+ j$ n9 F$ }# y
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
* A2 K9 X9 ^: ~7 l3 n c, S
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) );
6 j! M9 O* G3 @: V# k% f9 S, p: e' l
::SetLight( bLight );
) s3 ^3 C4 t% }6 g0 D& T! v
8 w! A* X* M; Q
// ±ao? ?D?í???ó á¤à?
* [* u x: ?& w4 f5 R
m_pd3dDevice->SetMaterial( &m_baseMaterial );
9 ~) T/ h5 r$ W7 d2 h% C
- ?6 h7 S% b$ N2 t
#endif // not WORLDSERVER
: ~. ?9 [1 c: g$ m5 o; `
}
% p# }* o6 \& \1 q& T5 T D
并更换
; e* n% k# V/ c
Code:
$ Z2 J) G3 ~# I
__FLYFF_INITPAGE_EXT
( Y7 [; H1 i! u! {- @
定义
/ n1 [: }- s. |
0 I! [6 V; a3 W
! ^& ?( j* o8 ^! j; M6 u
% B W5 U4 s) `+ }1 u
; @ D U: |1 @) h- [/ `; K1 J1 H
现在终于删除我的狗屁加速...
. `( n, w/ h+ J4 b
$ O- U( Y+ ]+ v" T
4 @3 c' `8 K0 H- y0 V
2 j8 T* X5 ?1 B: Y. w" W
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2