飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
+ @6 Z2 o0 Y: g4 {; N# E6 S
尾翼:
3 X/ g( D1 _" D! n
) Y% `: ^, U! n1 E
代码:
# g. d; M- }# F6 N t) |
CWndAutoFood::CWndAutoFood()
: e F& t/ X/ |* j# s% i/ y2 B
{
# A1 k/ ^. j& I9 ^+ M
m_pItemElem = NULL;
' d1 D4 U, X- P2 a4 h/ L" W
m_pTexture = NULL;
8 n* L& u, r5 G" @/ a. {) K
bStart = FALSE;
7 i- h* v1 X- ?- F
}
$ ]' D7 K8 N1 \6 s8 U' }
7 i5 O2 L1 q' S& k+ I( J
CWndAutoFood::~CWndAutoFood()
6 h! A) q: u7 b3 M
{
' y+ _( A0 u2 l9 \ I/ ]! E/ L
AfxMessageBox( "AutoFood ist gestorben
" );
5 G6 n* O( E/ q: D/ c6 ^
}
, ~/ S- E4 ]4 r9 g. R) `. i
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
# K' S$ M/ j: o
{
' c- x9 ]' K7 y. x- d7 d' ~! M
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
$ P& H2 A# g8 _- m0 K
}
- K, I& y! o+ d4 ]) I8 R
9 R: P" r' P& n, f6 u1 E: c( B
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
! p1 T3 h# y# w( H' y7 O
{
! m* |' A9 e" `
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ ~' L$ F' B: L2 b" w
CRect rect = pWndCtrl->rect;
. J7 n5 q; I2 P5 C [9 |& `
if( rect && rect.PtInRect( point ) )
# @8 k" V* Q2 W- Y3 r8 \( z0 ^
{
8 k6 a! ?* [" x+ q
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
3 V, ]. @; y! f8 Y" q9 \
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
- D- `6 h, H# T9 d7 }& c. c( X' b6 i
{
: Q7 Q) H1 s4 Q/ H( B
if( m_pItemElem )
* J/ @( `- S* D6 u2 F- |
{
) o7 U( E; l4 g$ h! W: _2 Q$ N+ e
m_pItemElem = NULL;
& l9 L) I4 d* \) ^" o1 q
}
* D; Q/ J+ u3 t1 |
m_pItemElem = pItemElem;
F0 n( g" n3 _
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 j2 ]8 R3 z5 r; W
}else{
6 p# [* T% g% |+ p/ @ D+ L
SetForbid( TRUE );
+ z6 ^0 h6 i2 N, a& a
}
. d% X3 d+ B6 J0 q- h+ k0 B# O
}else{
$ h4 j, @+ J8 F1 e0 l+ f/ {
SetForbid( TRUE );
8 [5 @4 k7 E; {; F! q& Q
}
) n [6 u: @# t
return TRUE;
' N/ v" Z2 i" ?! U# W! w
}
8 v) U$ J2 Y+ e# w
) m. l6 p, {% O
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
: L9 X7 S1 z0 m- F8 Q
{
0 P( g; B( S+ } G+ d6 X3 E* G* r
switch( nID )
: h3 l( D! {: i0 B. N; e
{
/ d! u- ^6 @ H9 d" w+ Z( {8 W0 v
case WIDC_BUTTON3:
! m: r6 J# [* N7 v9 v( H2 G
{
9 I" l; W$ B* l7 w3 z9 W" O2 q. ~8 }5 t
bStart = TRUE;
- x7 p% ]" U6 r |. |5 `* n g
break;
$ U E; Y) @2 `
}
) h5 n% n7 F0 o% D& @2 A$ e2 b+ }& ~! ? Y
case WIDC_BUTTON4:
" e: R( K$ e1 g( m. z
{
+ e0 A4 ?1 j. i( {( Z6 l5 N6 M
bStart = FALSE;
' c" h1 l& i5 Y( J7 g" d
break;
9 u, Q- G0 y( z9 m+ u
}
4 U- e* T4 ^9 s
}
2 e X8 g* s" a Z' i' v
return CWndNeuz::OnChildNotify( message, nID, pLResult );
4 M) o( P2 U4 b4 p7 E
}
H3 B+ I( J* k+ P! ^. i
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
4 q& K4 }: u9 ]/ G
{
) L$ Q4 n1 Z+ L& a D( U' [$ A
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
/ m D- R; R% K- L* K1 w5 p
if( bStart || !m_pItemElem )
$ l! P# y8 ?$ c& P9 c
{
# ^% |3 I6 S! L5 B9 M, j
pBtn->EnableWindow( FALSE );
1 b5 ~+ `0 [: Z& Z4 c
}else
6 c" R& D" e. E+ ?# K4 p
pBtn->EnableWindow( TRUE );
+ v% F$ z2 J: h' b" d. `
if( m_pTexture )
: `. R; A' ]; s) P
{
& P1 b1 T* Q( l5 r5 e3 [8 Q4 ]
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* z# R2 \$ T9 h
if( wndCtrl && wndCtrl->rect )
, ?' ~, `% ~7 T( Y3 w6 f
{
4 z) o# @+ S. W0 p! v6 |# {
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
# ^6 r0 m) D* a9 R. ~$ K8 E% p" a
}
+ R$ b* D) V0 |) X2 A, x$ F
}
+ \ ~& k( {9 ]$ }+ C) k- M
}
, @) q' [. ~1 v; g
! Z6 p1 q i0 {4 B' F3 v5 ^+ x
BOOL CWndAutoFood:
rocess()
" H$ L9 _$ d3 x. W# C8 I/ `
{
5 z9 ? h, D7 ^7 F# O
if( bStart )
# n2 N9 B. b8 Q/ i9 { n0 U
{
( z5 y8 T- s9 y' Y7 T. C/ X
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
; A6 R1 _( q( W6 C+ M5 U) j
{
# K8 O% T3 c6 s* @7 U
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
& b y8 @# L5 w
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
0 Q. u% l: L: d0 W5 N) T$ H
}else{
2 h6 o, }9 I0 k3 {* k% x
bStart = FALSE;
( D. P7 U- h+ X0 v S
m_pItemElem = NULL;
# V$ H3 }3 I- }
}
7 B0 Y, g. C0 F7 `. y
}
+ f+ Z9 X& P" ?) Q) P% l
return TRUE;
* v3 z+ W5 x. F1 n+ z, G9 X) f
}
4 H+ m9 n7 ?3 |- i) D( w
( R6 ~ H0 y- I4 [
登录视频废话:
# @2 S* Q3 L6 F9 r! m7 y
尾翼:
9 M0 {9 G6 Y; S* {; O, d
$ F& {+ E4 [* J
代码:
/ b; H! C" K: ~' D, W. v/ J H
) v1 t. Q! F1 A7 F1 I
void CWorld::SetLight( BOOL bLight )
* Z+ Z. J4 B9 | h9 S4 R
durch
, J4 C4 m3 J( S V
Code:
k- I+ v# G! X* n; }8 I# C
void CWorld::SetLight( BOOL bLight )
6 A' @% t6 r6 }/ o7 O/ v
{
% u( N# j, B/ q/ p. d' T9 p
//ACE("SetLight %d \n", bLight);
' P6 [+ c! G F0 M
8 Z) [! T' Y- D
#ifndef __WORLDSERVER
/ N4 H7 l0 w- N/ F0 H# T& H, L
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
9 k9 u. r! t3 x/ [8 H
CLight* pLight = NULL;
( o! s$ A- h% k# P) G& k6 _) x
9 r5 s' M% a2 _+ U% P! `
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
# T( a8 K0 S! ?
- V4 A) G* i$ m/ j: j
pLight = GetLight( "direction" );
8 e/ x( @6 d( ]6 ?" V1 l/ R
" H1 L$ D8 d, }% R
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 U% \; b P: |7 A3 v
if( g_pPlayer ){
* J) p; r5 `& X- w' h
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
) P" N" K2 s7 L" ?
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
9 K) a2 i2 v! s9 _
{
5 l# r8 Y$ ^5 O* t5 s$ k
if( pLight )
+ J1 R# d$ n, k( e" J+ v
{
4 q2 h: x5 g+ g5 T
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
8 w( c! z8 G, _
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
- B! X, t3 R/ ?7 c/ U4 w
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
# j8 _; O/ I7 j; l) q
8 V9 r% e5 q. h' T
pLight->Specular.r = 2.0f;
2 E5 k% x1 a' E# F# W. M0 g4 h
pLight->Specular.g = 2.0f;
/ A1 L+ i& E' {9 d) O
pLight->Specular.b = 2.0f;
5 Y4 S" L( {" k. U$ [
, _% m% z8 D7 M* A
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
1 t' k( D( O3 m7 n5 u
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
1 b- U; I' N& X( V& ] u
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
( L5 v4 N6 Q# V2 ^* z
* X, _; O. b( i1 S) O
HookUpdateLight( pLight );
' }/ |3 N0 w3 C8 @& G( k9 A
6 S+ e9 ?' F: q" S
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ v' s# u0 F4 M- a% t
2 q1 Q& N9 { H" \$ k
pLight->Diffuse.r *= 1.2f;
' u% N# F# s- N4 I
pLight->Diffuse.g *= 1.2f;
" c% ^5 O' G# D, K
pLight->Diffuse.b *= 1.2f;
5 c5 X& a& Y+ H& o: k
8 a( _% `* }0 u& D% Q; E, o4 `' t+ |
pLight->Ambient.r *= 0.8f;
0 z' ]; d& b5 _0 O0 Y
pLight->Ambient.g *= 0.8f;
' W& F9 ~/ I9 A
pLight->Ambient.b *= 0.8f;
8 X8 e. O& T& \* m! j
7 e, ?6 @5 R `# U
memcpy( &m_light, pLight, sizeof( m_light ) );
$ G( Y, e2 g/ }4 Q- Z! U
) I# |6 |9 F* g& J
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) G) x1 p1 F( T* u# R
D3DXVec3Normalize(&(vecSun),&(vecSun));
" U% Q5 U2 d2 P/ Y8 }! p" V
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
7 u, G K# Y) k# `9 x
pLight->Appear( m_pd3dDevice, TRUE );
9 G$ {2 [ J7 _; o+ o
# a3 k( A" ^! q
DWORD dwR, dwG, dwB;
4 l. b! g: W' v* `3 _# o/ N- y
dwR = (DWORD)( pLight->Ambient.r * 255 );
" J- _" [. K0 e* s% M5 J! V
dwG = (DWORD)( pLight->Ambient.g * 255 );
L/ z0 T; h! Y% C& N
dwB = (DWORD)( pLight->Ambient.b * 255 );
0 j' O' G+ {% E8 c9 _
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- ?5 ]2 y. t6 f4 F t
}
/ G1 A1 Q, E- W! Q) A5 s# I5 p. A
}
/ i! l0 |& @. ]& E1 p0 X
}
6 ~, {7 K, J( M2 L6 o
else
8 }- Z6 \7 i( `& b/ B) @* X5 P5 D
#endif
: k4 e6 K6 h) X6 o
, V+ p) [5 w* ^2 a
if( m_bIsIndoor )
4 G# g( Y% b* p
{
- P5 `4 m, m$ s! w \# @/ T
if( pLight )
" C) j1 k" q* k+ _( y8 X/ H& H
{
6 c* v( C+ B" |1 t+ E" E2 X; A7 N( i
// à??μ oˉè*
/ t1 c$ E* y% o" T1 x8 v
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
7 }1 g: s' L# W Z
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
2 {3 Y! ]" B& O
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
" S* u8 f# a% n U6 m; Y& j, L: d
/ i7 S' y1 Z* x; u3 x+ F# y
// oˉè* ??à?
- P/ r; Y ~: U; p
pLight->Specular.r = 1.0f;
# r6 @5 I1 b( ]
pLight->Specular.g = 1.0f;
* \3 ]8 v+ N! j7 [
pLight->Specular.b = 1.0f;
3 s, T5 ^: ] ~- C2 \/ A
// àü?? oˉè*
, f% {. k; D2 v
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
3 @& }' T L; v* \
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
/ z" }* x$ x0 A- O; h
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
2 d. D, \- v2 s! P" m* _
. G# ^ ?. f5 Y3 k
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% [/ l! M# q4 r/ Y: x, J' B$ h
{
/ G' J; w1 u) q/ D$ v _
pLight->Diffuse.r *= 0.6f;
( |- u. d2 i( i) n" k
pLight->Diffuse.g *= 0.6f;
' J9 D. }, T6 ?
pLight->Diffuse.b *= 0.6f;
* U% m' [* @' s7 X8 n
pLight->Ambient.r *= 0.7f;
+ T8 a5 Z3 k# i2 |; O: H; |- }& C/ N
pLight->Ambient.g *= 0.7f;
3 d: G; T" H4 v- P6 F
pLight->Ambient.b *= 0.7f;
/ [0 P" K' L; q; w% D. e
}
2 h, ^2 s* A/ B+ C3 K7 ^: `" U
! i1 [0 V5 q- q1 d
#if __VER >= 15 // __BS_CHANGING_ENVIR
# b. Y4 k3 P$ X. o2 s/ }/ i" o
if( g_pPlayer )
5 k' m2 n. @# |4 c p7 J) l" H
HookUpdateLight( pLight );
/ G5 s* J, a2 z( l% ?
#endif
+ Y7 H0 Z' }% F/ k0 C
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 o8 u/ T9 a. [. d2 {/ G+ _% C% k
" I& G; Q! M) k
pLight->Diffuse.r += 0.1f;
& J, X3 v" M; C8 p* y- a' Z" ?
pLight->Diffuse.g += 0.1f;
* _$ B$ d" L# I5 r* o
pLight->Diffuse.b += 0.1f;
( j5 h8 N& X8 w. o
// oˉè* ??à?
, x$ B% p9 v7 W" z: a+ ^3 d
pLight->Specular.r = 2.0f;
: \; z. B* u' j7 |
pLight->Specular.g = 2.0f;
7 s7 R! R+ T/ k1 H
pLight->Specular.b = 2.0f;
2 C/ B Q n8 I( @- n
// á?oˉ
! G/ C2 P. s, q. K+ K
pLight->Ambient.r *= 0.9f;
% M3 @( f2 L& @0 Y. w) W4 ^$ X3 V" V
pLight->Ambient.g *= 0.9f;
/ _7 {' O+ P j$ G' i
pLight->Ambient.b *= 0.9f;
$ f6 o5 p$ c K0 k5 D
3 ~8 p- F. u, Q7 x6 R
memcpy( &m_light, pLight, sizeof( m_light ) );
5 k8 K6 u/ V' X4 C5 [, h
/ Z# N" K( m" k' x1 [
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
_- @( T+ Z' A" f
pLight->Appear( m_pd3dDevice, TRUE );
: ]7 H% G t3 V8 p& F w4 E n
0 Q9 @; F9 l$ s- C+ L# s9 l
DWORD dwR, dwG, dwB;
7 a8 n4 ^6 P4 ~3 r8 P' `
dwR = (DWORD)( pLight->Ambient.r * 255 );
g; Q- g9 G) K, \. E, Q
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 F; e8 A/ q" C
dwB = (DWORD)( pLight->Ambient.b * 255 );
& j, @) c# u+ O
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" U: G! u$ l8 v
}
1 i' p8 Z( C. _9 h* x. k+ n+ N% t
}
$ Z5 p, I9 ], A; [: Z6 `
else
. d% @2 p, A, k" w9 A8 R. Y
{
+ e8 p t0 s3 `& X- U( Z) y( A
if( pLight )
- |( H2 H' v& P# f" j
{
0 ]8 ~+ U5 q0 J7 b. y6 b0 e" u
* q( R+ d: E, h: j
int nHour = 8, nMin = 0;
& C9 |) W& s% s6 ^6 B: B) I2 Z; h
#ifdef __CLIENT
5 ?5 x0 Z! u% |
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
. z7 B d! ]" D5 v
nHour = g_GameTimer.m_nHour;
3 {2 i- |' q: K7 Q
nMin = g_GameTimer.m_nMin ;
& M' `8 {% s5 O6 K! @4 R2 j
#else
+ N# b& }1 V ^+ l
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
7 H+ i, h. Y& y% c
if( m_nLightType == 1 )
- R- Z. b v2 X8 i K
nHour = m_nLightHour;
8 ^5 u, A |0 S) P& o2 k5 `
#endif
( m% D! [1 L8 V0 d4 \$ X1 e; Q1 G
nHour--;
7 Q+ Q7 @- N9 V; ]
if( nHour < 0 ) nHour = 0;
+ S) a3 z7 A; ^& S j- {! L
if( nHour > 23 ) nHour = 23;
2 M+ E$ n4 s, ?" ?/ m+ J! Z% t
8 E4 x, |, k8 v! F) ]+ l1 F
//if( m_bFixedHour )
' ~, a. x c; U3 y& m" j
// nHour = m_nFixedHour, nMin = 0;
0 R+ H, S h! a' R
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
4 L2 I4 M, J6 p) u R8 q
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
6 C. N0 n4 ^9 U$ b& K
- Q6 T- V* G2 i1 B) _- Z [
//m_lightColor = lightColorPrv;
+ L. @# i: K: }- B5 T& t/ Y
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
5 [) N) i- g a' D
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
3 z) G) s! c! T5 t4 `
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
$ l. ?+ v, x+ `. B
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
4 H/ g3 R% M6 H6 j) W2 b' B
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
& G) |8 q8 j; q
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
8 z# @% W2 u* t6 F
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
# [0 U2 w2 U; t4 ~" U
- u2 d3 c# H# z
// à??μ oˉè*
3 H4 Y) o( B5 p
pLight->Diffuse.r = lightColorPrv.r1;
& U; k% r+ v! z: K/ R; { t
pLight->Diffuse.g = lightColorPrv.g1;
7 q1 E/ o. i+ d, Z1 R j
pLight->Diffuse.b = lightColorPrv.b1;
% D h3 b. ^- |
// oˉè* ??à?
0 D& m' M# R: P! M
pLight->Specular.r = 1.0f;
0 g8 s; U" W6 g5 ~$ w( J5 h
pLight->Specular.g = 1.0f;
. q$ f2 s( ^1 v) X
pLight->Specular.b = 1.0f;
, J5 l& t+ ~1 E0 l! |' M- X6 N
// àü?? oˉè*
. d# ~+ d% q% z0 U2 r
pLight->Ambient.r = lightColorPrv.r2;
$ g7 u7 Q4 |. C K
pLight->Ambient.g = lightColorPrv.g2;
# b8 B% t! q% i7 w* Q/ ?
pLight->Ambient.b = lightColorPrv.b2;
" j/ E& H/ W+ B7 G8 _# D
. b, b+ E6 ?5 @$ l1 i
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ {: E8 p) P& M# B m* K! S
{
/ A. `7 L1 B( k
pLight->Diffuse.r *= 0.6f;
3 C/ n$ F# r6 U0 n& Z' x
pLight->Diffuse.g *= 0.6f;
. D# u4 E' T* j" v* C5 f
pLight->Diffuse.b *= 0.6f;
8 u$ m6 ?) _* O1 A( @
pLight->Ambient.r *= 0.7f;
: X2 h, l6 A' B' j
pLight->Ambient.g *= 0.7f;
! ?3 a9 A) }9 u7 E! |
pLight->Ambient.b *= 0.7f;
3 s1 m! b' S; Y; V) T0 T% X8 R* o, e
}
, {# C% {% G7 V3 c
! a# T* e/ J; x/ ^: }1 J: ?
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 [7 A3 k, F) C! ?
if( g_pPlayer )
8 Q9 S% ^7 f$ m7 s6 K3 @- ]/ y
HookUpdateLight( pLight );
9 D( W% L- j) p" B. j
#endif
5 Z- { h2 X5 m# n$ Y, I7 h. H
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 v6 J0 A2 f/ ^/ m$ a* V4 H! l' \
# C( A4 {# m1 b b/ ^& ?
#ifdef __YENV
) m3 m. @3 {4 s) {. L# c+ r9 _8 w8 r
pLight->Diffuse.r *= 1.1f;
% b8 Z* e& J1 c
pLight->Diffuse.g *= 1.1f;
M( B% C, y! |; K8 m
pLight->Diffuse.b *= 1.1f;
% d+ D/ D0 P0 n- I7 E' | r5 d8 ]& |1 z
// oˉè* ??à?
4 P- t3 U& X9 [$ o3 W
pLight->Specular.r = 2.0f;
- ?# e# N5 k8 ?. T6 [7 {8 N
pLight->Specular.g = 2.0f;
7 J2 o7 E; v. a% l' ]7 ^' N
pLight->Specular.b = 2.0f;
r3 o" j7 a6 A8 g, _
// á?oˉ
2 K7 B% v1 ?# ]" J
pLight->Ambient.r *= 1.0f;
, ~/ }% L( p7 V9 P/ V3 {" g
pLight->Ambient.g *= 1.0f;
8 r, e9 X& R+ I; X, _$ T* h7 A
pLight->Ambient.b *= 1.0f;
* F! _" D7 n- Z& M P) K; M/ ^
#else //__YENV
/ s, T/ d) z' A& ]* n0 L
pLight->Diffuse.r *= 1.1f;
1 F( V$ N4 N! }5 b# M
pLight->Diffuse.g *= 1.1f;
+ L& q8 s& P# T% \% e1 u
pLight->Diffuse.b *= 1.1f;
# a/ \' s: v, z: Q) E6 g
// oˉè* ??à?
1 I# B; r* R8 \ {! h
pLight->Specular.r = 2.0f;
n( D9 ]3 T9 w, X. P8 `6 i+ b
pLight->Specular.g = 2.0f;
, `+ o, q. j8 ^& a5 M0 K$ v6 h
pLight->Specular.b = 2.0f;
7 w; i# ~+ u T+ n7 [2 t2 v. D( f# t
// á?oˉ
& P3 E2 w* J+ f! E8 H. m
pLight->Ambient.r *= 0.9f;
7 p! Z- r2 ~6 n; c$ o* {; H9 t* D: q
pLight->Ambient.g *= 0.9f;
( Y* a* E& n% z0 o$ r- h3 r5 m7 {7 ]
pLight->Ambient.b *= 0.9f;
- q+ L8 O9 S5 U, ^( o
#endif //__YENV
1 N& \2 k0 o0 t) c2 t) c6 z% F
Q! l- |# F$ K8 }; T/ ~
memcpy( &m_light, pLight, sizeof( m_light ) );
) D2 e6 [( G2 _) T7 g% J @% n
' u+ a5 }" b) S. U4 c) P+ i# S n% X. o
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
. M, I8 T' V$ Z
D3DXMATRIX matTemp;
! i: V5 A/ R/ z7 M! x4 {
static const float CONS_VAL = 3.1415926f / 180.f;
( Y/ m- W6 m- x; m- _" h& i. _
, R1 j5 U6 T: Y# Z& t5 s$ o
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
! _. ~% N9 N: V8 U5 M, c2 ~
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
6 Q* `" q- h& Y V3 @% x$ v& Z
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
& @" r$ [' \: f/ Y- i4 k S
pLight->Appear( m_pd3dDevice, TRUE );
# y( X$ m& k# Q# L$ [! V B& j
. [4 @# I* e& M ]) y
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) D4 |' B) p" W
// D3DXVec3Normalize(&(vecSun),&(vecSun));
( f6 C, |7 e; A7 G
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# A5 y' K! G0 y5 I
; u' W2 X4 z- m% z6 |
DWORD dwR, dwG, dwB;
, b6 N* x+ k6 X/ z' x
dwR = (DWORD)( pLight->Ambient.r * 255 );
! o: t/ s9 A$ | Q& n0 k
dwG = (DWORD)( pLight->Ambient.g * 255 );
" V% w- o q8 E, l; b3 s2 t9 M
dwB = (DWORD)( pLight->Ambient.b * 255 );
6 Z: J: J' t% w0 Y8 ~, B
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
+ o" V7 M. m5 J8 v
}
/ ]- c7 R) I' k' J
}
* m# y* \# J+ {$ v
1 M- x, H0 C( Y) r
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" A7 N: P, v) n) j a
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 W5 c7 \0 g4 p ]! k
::SetLight( bLight );
% e5 J% h( _8 S( ~# S
( X* C4 A; C% @5 I% k
// ±ao? ?D?í???ó á¤à?
8 [8 p6 ]+ h3 q. o) c* V: z! b' d
m_pd3dDevice->SetMaterial( &m_baseMaterial );
* l7 X0 e' w0 S( r& b m
1 _9 H- K4 F6 k
#endif // not WORLDSERVER
# {( R) t$ ?. y
}
" g! L( P# l: y) T; U% @
并更换
- v$ D, P9 J' ?1 K1 e2 A; n8 D* j
Code:
( v$ x4 @% j4 X: n( }
__FLYFF_INITPAGE_EXT
& o# h) k( I" S3 n
定义
- |- |( u( o& c5 w" n. P' w
6 x5 g+ A* c4 v4 P# _0 q# P
7 s0 r0 V) {, Q! G
, J) N4 ]& W6 o6 S5 c0 X9 t
" R. i7 G$ f2 h2 A4 T; S$ U8 u+ L
现在终于删除我的狗屁加速...
0 W. Q* }; S* @# a, T5 s
5 j2 b p6 b5 M0 |7 b- l5 ] x
\% i( p. }* `, k, @6 U# m2 B! F
! T/ Z6 j- c! j* H6 Q
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2