飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
8 \3 E% F" @& d! ? ^* P* D
尾翼:
2 i; q4 O, p* e) _- z6 t, h) }
( H- l9 B3 F) R0 x7 e% V
代码:
( y: i6 l& D0 ?) B
CWndAutoFood::CWndAutoFood()
7 {4 I& a9 {4 ?( [& I2 D
{
* a3 R* \$ w8 @. W2 M/ i$ k
m_pItemElem = NULL;
1 q0 ]/ L" d: F' ]) m7 b' c
m_pTexture = NULL;
( Q' L% @+ o u& `
bStart = FALSE;
# V' K6 S" N$ R j. h# I- Z6 h
}
$ f1 k! y* `: d- p
6 |. @4 [. Y y6 W* a
CWndAutoFood::~CWndAutoFood()
' O7 ?+ z. \" G
{
* z! y' [8 O" r2 j
AfxMessageBox( "AutoFood ist gestorben
" );
8 X) _8 N1 {( u6 v
}
0 ?; u* K) I- f2 ]) O) J: @
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
6 H4 X/ ~, P6 f4 v/ l2 D+ ]+ D
{
' }8 ?& q5 O$ Z7 c: \, T; t
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
, w, d3 T+ T2 S+ h6 h8 ^
}
! ?$ ]4 |% _/ ]& k
: }6 V8 K. H0 `. Z
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
. d) |6 }! w/ u9 ~7 Q! g( G
{
" E: R. C6 A3 u( r2 o2 L
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- _, e3 g$ B) t. _& c" I' N
CRect rect = pWndCtrl->rect;
" |: k* |" t% Q% S7 W
if( rect && rect.PtInRect( point ) )
2 V: r# Z+ m& K R/ T" v
{
1 F4 r% Y( \! t2 m
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
) x3 s) [9 \* Z+ [" W- x/ c8 C
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ j4 B- {+ N1 P5 j. \7 ^
{
3 \0 A0 Q2 }& p2 e3 F0 k
if( m_pItemElem )
( J/ c' o6 p/ N, G$ `& F6 S
{
& k/ ^( C7 _; e$ _5 F9 ]6 ]" y/ L
m_pItemElem = NULL;
6 i4 H9 m( t) T% x% o% F3 N
}
7 X/ U3 w+ O* M9 s3 h& K/ Z1 e4 M/ L7 M
m_pItemElem = pItemElem;
p8 e8 F9 k& F5 a! ?/ p
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
9 S' o, p" G+ N' ~3 w
}else{
4 C$ J8 u, |3 z* x. ~
SetForbid( TRUE );
- o+ n [+ _+ _! P( |
}
9 f G% Q& Q; \' D# ~, P: r
}else{
U/ c/ @( N1 k/ Q) e* c" s2 ^' a
SetForbid( TRUE );
2 ]$ n5 J$ Q0 S% q. w# I
}
$ ^3 c- b6 L) A( \
return TRUE;
' Q1 C) Q3 A7 u3 m$ U |8 u$ X
}
# E$ _, g* \, T* P8 S3 v" t4 Q
+ P, p* U; [. M/ ^8 Q5 E
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
7 i2 ~) k9 O" |
{
) ?/ [$ e8 W' Z" {8 y
switch( nID )
0 g" S' y& w0 Z, L' v
{
, |# L! o V9 `& _! ~: C/ M
case WIDC_BUTTON3:
9 }8 ^; d3 L4 y, b" R
{
& T! k% O0 a9 t) x7 ^9 D, e' |
bStart = TRUE;
2 Z# {, T# T. R8 i3 u. I5 z
break;
4 Q5 L2 d. u3 i" n
}
! @$ H+ {; U7 r( t( l' Q8 o& f3 H
case WIDC_BUTTON4:
& P1 K1 `4 C+ |$ E8 M2 K1 F
{
9 z! f- n' c7 o: w' Y& h/ o6 M# q
bStart = FALSE;
9 f+ x- J, c; u9 g$ G6 Y
break;
% ?& a$ e2 D6 }7 K, N' @
}
1 ]. B, I- `7 s1 l$ I
}
9 t: [2 v% M1 y+ d/ i
return CWndNeuz::OnChildNotify( message, nID, pLResult );
4 g; g! u+ i2 x. ?
}
2 z0 N Q! _5 i2 b) B" m, r: {
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
$ `5 X* D9 `5 Q& o. Y* d" w
{
1 f9 L5 w) n" q$ Q) F* r
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
. ^+ ^6 ^/ @" Y8 u" ~6 L7 @8 m& g; I
if( bStart || !m_pItemElem )
/ q- s$ m+ i8 y1 Q1 @
{
" j( `" l5 f- \" X! {6 B2 r! V0 S
pBtn->EnableWindow( FALSE );
! Q1 y+ B1 E/ q) l8 k
}else
# q7 B( Q) X( v. |- H
pBtn->EnableWindow( TRUE );
% w6 s* ~' e3 s* f
if( m_pTexture )
" T3 n- E; V: X1 d8 y" ]
{
6 d( @4 }) m1 Z9 y* c$ S/ g
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
; F7 g" Q6 R# O! I0 ^! D% Q
if( wndCtrl && wndCtrl->rect )
: l0 q8 }! a" p0 y
{
r. o7 v, {" \
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
7 l3 U7 ]# m4 j& w j7 N+ d
}
- `) T" |1 ]; l
}
) g0 @& N+ e7 `
}
3 h8 [+ q, e9 \$ J. N: W
3 X+ O- \3 ]8 X. G0 ~1 c! W" g! u
BOOL CWndAutoFood:
rocess()
% I, L( Y$ {. r3 a1 z1 r- ~
{
& ^% m2 j) F9 E, ^+ v; H- s- N1 ?
if( bStart )
6 M) J( @6 Z; O2 ]: Y
{
2 F( p) L% p" ~ |9 |5 r) E
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
$ S: L K: T0 l' i
{
2 {, }9 r9 B. t5 p$ l% h! L
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
2 |5 a3 u- q6 i
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
9 [3 ]6 g: Z1 Z5 W8 L
}else{
& J z; {2 g2 y
bStart = FALSE;
3 K2 v) o. k* e
m_pItemElem = NULL;
) W. ~ o' B1 b5 W$ S
}
' ]. G/ }6 r4 u: Q$ Q5 T( K
}
3 ~5 E# L2 e4 `7 B$ I5 |# }3 Q
return TRUE;
# R# b' g: b2 h% S
}
6 \5 I$ k; x* q4 g- P- ^( X* O
% E. w6 B4 ~$ |2 n
登录视频废话:
8 z( X& N# p! ~4 h* f0 ~
尾翼:
' a9 f) J5 q G1 T( Z, d2 Q; e
5 F# M4 ~& |" C/ c2 i7 D8 S
代码:
5 \% }/ H" c. _& I1 G8 a5 q0 l
7 G6 d( W5 g1 Q, l' ?9 E
void CWorld::SetLight( BOOL bLight )
5 @: s" \" v' d0 s
durch
) t0 y9 p$ h1 K6 M
Code:
% H3 q; U( B# E K$ j; O5 J3 }" X0 @
void CWorld::SetLight( BOOL bLight )
& W7 h5 a" Q; K/ O
{
$ K% @( O- Z! C
//ACE("SetLight %d \n", bLight);
! \% l, z" z3 s
) p- g1 H. s) L4 Y2 T; `3 s- t1 w
#ifndef __WORLDSERVER
/ f+ I' W- ?7 g7 p
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
, M6 h2 l; V4 T0 Q2 B# i( L! C, c! `
CLight* pLight = NULL;
! }4 }; x" J v0 y! ?& `. w
# H$ j, L7 J1 `5 ~
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
. Q5 M% q1 I! C0 @
" b1 v5 j% J# q7 `& A K
pLight = GetLight( "direction" );
B$ u6 D0 p) J
" D" B: e1 S* c% `% `4 {0 T) f
#if __VER >= 15 // __BS_CHANGING_ENVIR
4 G9 ~" M; C2 d% Y$ {( P, L
if( g_pPlayer ){
! g, S9 s8 }8 t* ]& K& W) H) }
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
% ~* b- G5 G0 M
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
# q) K& }$ W5 u- x i5 P& P' g
{
* p! X' y6 E. D1 ~! I
if( pLight )
. F3 y. ^$ A0 C6 L9 W0 c
{
/ M2 c% K9 y8 m% L% X, p6 i
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
1 X, `% G( A+ Y1 p* o- G2 g4 @
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
2 q$ y, Z5 T" `+ n$ {) n o& }6 \9 E
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
5 a f6 i2 @$ G% M% K
) K' H2 B/ ^' P( t5 ], e) q
pLight->Specular.r = 2.0f;
9 w- T( c2 D/ c7 S$ g
pLight->Specular.g = 2.0f;
% C! L6 ~. Q9 b' Y. T$ E
pLight->Specular.b = 2.0f;
G/ u3 \ {/ g, h
. V% C1 a5 f. I+ K. \* R- ~/ ]
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
' C A. N4 e+ L' x. Y
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
7 D) U- o- {: N, J( E; F4 N) c
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
( U0 @% G' e/ W+ |5 X
. i( L. ~5 _' {7 F ]& V; }
HookUpdateLight( pLight );
+ @0 A+ X# s; H
- r4 p# w; U) Q
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; c0 n2 U, G& h2 N: K% U& D
: L2 j& ] P+ W1 F/ }* m& M
pLight->Diffuse.r *= 1.2f;
) I5 a" Z# \: f; @. b& R+ C
pLight->Diffuse.g *= 1.2f;
/ N! ]# C6 a4 ^' T4 [, s
pLight->Diffuse.b *= 1.2f;
2 h* G% E+ }' T0 K2 T, z" b% E# M
/ h j* f$ z f: W
pLight->Ambient.r *= 0.8f;
8 o. o8 q# P) c2 W# p$ s
pLight->Ambient.g *= 0.8f;
3 n1 o$ f1 E3 K7 D: @) I/ P
pLight->Ambient.b *= 0.8f;
" f* o) ~- @' u' b4 _/ b8 f
7 v3 I, L, B8 _( t W) V% b$ Q' ~
memcpy( &m_light, pLight, sizeof( m_light ) );
, B( z: |3 D+ `' P' L& i
* {' c7 v9 M+ H9 ]- H: V9 d2 j- b( Z
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" g% h" Y, l0 I. X& P1 h! w
D3DXVec3Normalize(&(vecSun),&(vecSun));
O; Q0 @+ \0 S$ u
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
- }% R# K) ]* n# t
pLight->Appear( m_pd3dDevice, TRUE );
7 L8 ?" s5 g7 s" S+ u
; W( q9 m$ D' E. m( `* n8 l
DWORD dwR, dwG, dwB;
$ H1 J- M% k e+ t
dwR = (DWORD)( pLight->Ambient.r * 255 );
- |) V# v5 C7 H$ Q
dwG = (DWORD)( pLight->Ambient.g * 255 );
9 y2 C3 c) W7 D
dwB = (DWORD)( pLight->Ambient.b * 255 );
, @) G+ ~4 E+ T ?9 U _" O3 e
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; _4 a4 K5 G6 ]! Y& Y9 D
}
: F# n: f# P# P( D1 e& Q
}
. [( n' \+ X+ t, o8 ^6 q
}
% k. ] W( k0 f( ~
else
6 x$ A4 r, w! \+ @$ c
#endif
0 {' j$ N# }' L! F2 K5 K
: B' J8 t: V2 \' i" S0 K
if( m_bIsIndoor )
! M# G+ _7 e+ b& N$ G; d
{
. r+ P" O- d P1 E" l" P' m6 k
if( pLight )
3 F2 t: _# \8 P7 e+ z! Z( N( z( y
{
$ V; C' U0 E9 C" T$ s9 }
// à??μ oˉè*
" Z: ~4 \: t" M6 j( q
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
$ J% x# w# [: U1 W
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
0 `" E; J# j2 z6 s
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
- M$ t- l7 H6 ^! h, r o! A
S6 M& E: B) B$ C G) u) X
// oˉè* ??à?
' ]/ y5 V0 l2 s* J
pLight->Specular.r = 1.0f;
% e" @* j" Z( C5 l
pLight->Specular.g = 1.0f;
) G& ]( o- k2 m$ f6 P! h6 X, p
pLight->Specular.b = 1.0f;
1 {5 l7 Z' Q) V" ~$ t( I# N1 O0 n
// àü?? oˉè*
. ^7 t9 K# Z- o& [
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
+ d1 `# [8 @7 k, j9 A
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
+ l3 h) C1 s0 ]: o1 j6 e% @
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
7 h! r- w b+ K e" p" B# Z6 G' t
8 S" C' I( m( O: n* o: V
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# o K- ~' W' Q
{
- a( [' K1 c5 ^. w
pLight->Diffuse.r *= 0.6f;
; E7 O/ b- ~7 t( v6 _! [3 Y1 @0 H
pLight->Diffuse.g *= 0.6f;
5 Z. }/ N g7 c! z& e
pLight->Diffuse.b *= 0.6f;
8 Q' ]2 o& |3 [ U6 i7 G% M
pLight->Ambient.r *= 0.7f;
0 ?) M% \/ \( K% ?9 }1 U$ l
pLight->Ambient.g *= 0.7f;
: h3 r* I9 U- _: H# Y" h* T& e
pLight->Ambient.b *= 0.7f;
/ J3 ^! o B+ J; R
}
1 m2 q4 ~* Q' D2 W; q
y" q- s$ \, ] u2 i2 c* s+ u2 O
#if __VER >= 15 // __BS_CHANGING_ENVIR
0 G# d; m( L/ X
if( g_pPlayer )
2 B% j. X7 P0 P, Z' a; k: `
HookUpdateLight( pLight );
) e1 m: z7 u4 O
#endif
6 S' T" g8 ~1 |& h h+ `' ?/ O
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
( X: D2 S' q9 ^$ Y0 h3 c
) _% b! |/ L9 c" O4 b' V
pLight->Diffuse.r += 0.1f;
$ \; b; t5 H9 T
pLight->Diffuse.g += 0.1f;
8 h T+ B o8 O$ v' O
pLight->Diffuse.b += 0.1f;
7 {5 y5 ~4 F1 T3 J- i) P& t
// oˉè* ??à?
S/ s4 r/ n# @& l! i' A
pLight->Specular.r = 2.0f;
. e- q3 i+ z2 S
pLight->Specular.g = 2.0f;
" T4 {) q8 Z2 s& C. v
pLight->Specular.b = 2.0f;
( `" J( v6 f4 V: ?1 M
// á?oˉ
$ h7 H5 ? U! W* ]
pLight->Ambient.r *= 0.9f;
2 O+ D% ]3 E/ I
pLight->Ambient.g *= 0.9f;
5 @) B( b0 H3 Q# g
pLight->Ambient.b *= 0.9f;
/ v# K9 a: q# B- w
, w) k/ U4 j5 z" r* X9 F5 Y$ s$ b
memcpy( &m_light, pLight, sizeof( m_light ) );
# |7 \6 o8 w8 M3 Q1 s% H
- Z. g& g6 I! {. `+ E
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
! J, ^) Y- n$ m7 l6 Q9 f
pLight->Appear( m_pd3dDevice, TRUE );
4 r, a' F, i# ^& S. b, ?3 g) ~
% J3 J5 A4 y1 i4 t, ? H) w3 b) e1 o
DWORD dwR, dwG, dwB;
' X1 D5 a+ R) h" A+ j5 X. j
dwR = (DWORD)( pLight->Ambient.r * 255 );
! j% l' E0 X6 c7 d
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 A8 D# ~# \( F( X
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ O0 Z3 j2 e6 c1 ~! a
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- I) K- q9 v( c0 L# e+ y6 U
}
+ j" D: m' l0 m( `; [( h8 V/ }
}
0 [' W8 `' W, V' A' P" ~
else
& l( B4 ~ [; _- R
{
$ R% R5 Q8 J1 m8 b8 b
if( pLight )
( p8 S, ~! d$ l+ I
{
4 s/ s! ?- l, O9 A# n
( ]8 ^( {* L5 W7 B* W q) j9 d4 y
int nHour = 8, nMin = 0;
% C- a/ J u; S0 p; L
#ifdef __CLIENT
# h7 f4 V% i5 K' R) s# d
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
( V+ b% R6 c/ O& N9 p, N5 U" H" p% P
nHour = g_GameTimer.m_nHour;
! g4 k% ^& V, _ |8 `+ m2 N! b' g
nMin = g_GameTimer.m_nMin ;
. N9 I% X9 t4 v: M4 W
#else
J# @8 N# p& e+ b3 w/ H; n4 S
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
7 ?) |- u, v; r& G
if( m_nLightType == 1 )
" m+ l6 \0 M# ~% l
nHour = m_nLightHour;
1 N: l& z% y% a* D, I
#endif
8 g1 |3 c" I1 A2 e
nHour--;
- A) g1 v) n( E5 g7 @! ? ]
if( nHour < 0 ) nHour = 0;
+ w; c; l# R# b9 G3 p
if( nHour > 23 ) nHour = 23;
! d8 y4 c) y, D& t0 R2 e, I2 _
. U L+ j; J" n3 M4 E' ` I
//if( m_bFixedHour )
& o4 w+ [/ n: l1 o! {, {
// nHour = m_nFixedHour, nMin = 0;
$ G2 p9 M# x4 e- ` f1 L5 ~
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
. w/ h/ V2 v) {; P$ K* m4 k
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
+ [) a3 }0 |% `* {- @. Z: r
8 {8 [8 a' t5 F# g$ o
//m_lightColor = lightColorPrv;
9 y f w0 y1 {( `/ j# z1 f2 ~8 ~" H
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
# }1 v) }7 A, }
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
. A& n& \2 n, ~- {$ N
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
7 v m8 g1 x8 L( B6 c+ ~5 y7 f% j
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
2 Y; a9 p( W, u+ b' V! ?, D
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
- i# E# x9 V- E- H! T
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
, f; ?1 E! t2 X/ ?
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
0 [3 O A6 e! s" |" N2 T
- h B. s& o8 j/ v" e# Q& T4 D. x
// à??μ oˉè*
, w# N+ m1 N* _( A8 F
pLight->Diffuse.r = lightColorPrv.r1;
% }. H+ q8 S C2 Y4 G+ Z: m3 |3 d
pLight->Diffuse.g = lightColorPrv.g1;
! j+ v s: D+ n* o2 I6 R8 f$ O
pLight->Diffuse.b = lightColorPrv.b1;
$ x7 s. W; o- Y7 F) r/ J" Y
// oˉè* ??à?
- S0 n$ E/ M3 p/ n+ L2 l5 c8 r
pLight->Specular.r = 1.0f;
1 S& X" L2 v) G; |* _3 `$ m
pLight->Specular.g = 1.0f;
- L1 n/ i, q8 D! k' \
pLight->Specular.b = 1.0f;
( O% V: M* `& }' X; K7 B
// àü?? oˉè*
0 g: e+ U9 p+ S" r
pLight->Ambient.r = lightColorPrv.r2;
( A7 w2 e* P2 r8 `7 f9 T
pLight->Ambient.g = lightColorPrv.g2;
/ T, W! \+ O3 p$ C% z
pLight->Ambient.b = lightColorPrv.b2;
* A% V. k4 }2 k0 _& Q# G
: {7 u) y3 T' X
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 Z i( C" ^( z9 H% P/ r6 T
{
' w( K- D {0 q" w3 f* K
pLight->Diffuse.r *= 0.6f;
; [7 |1 Q R0 E' u" G# o
pLight->Diffuse.g *= 0.6f;
1 D+ ], q8 g- A
pLight->Diffuse.b *= 0.6f;
. u& P. L7 `- A5 }1 A' C
pLight->Ambient.r *= 0.7f;
( S$ u7 o: I- ?% N+ I \* l
pLight->Ambient.g *= 0.7f;
) [4 |$ u% k6 B" q2 ?# @
pLight->Ambient.b *= 0.7f;
* b0 c( ]: s/ N5 S/ M O* f* P
}
# O$ E5 z5 S' J& j
( n6 N) U$ K: @# `1 h' M7 }; C
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 ^% l6 o, y. t" e% g3 Z5 X
if( g_pPlayer )
5 h1 J) e$ Y- Z4 o; n
HookUpdateLight( pLight );
2 R" E# G2 p3 D! x
#endif
9 f) ?# {' u" H) g Y+ {% A
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& R8 A2 S( w% S
* _# v2 h! R- s9 m, c1 ]/ a2 B
#ifdef __YENV
, W* P R0 b: t/ F7 ~0 C
pLight->Diffuse.r *= 1.1f;
' k+ h, E- A; @! C, b f5 p' \/ N r
pLight->Diffuse.g *= 1.1f;
: I; t G$ @2 j- t5 `1 h3 \
pLight->Diffuse.b *= 1.1f;
0 _# z: k6 [6 n, r
// oˉè* ??à?
4 c8 Q3 L! K* C- @4 t+ l* V
pLight->Specular.r = 2.0f;
/ I5 H- O% `6 h: ~! Z* ~( ^! O
pLight->Specular.g = 2.0f;
+ o( O+ Q6 V; X& x: H
pLight->Specular.b = 2.0f;
' C, y6 `+ W0 J2 I, c$ x+ w
// á?oˉ
: s, J/ O0 D; C R" u3 U
pLight->Ambient.r *= 1.0f;
6 W7 \+ Q6 `3 X
pLight->Ambient.g *= 1.0f;
4 i! F) j) k3 m) o
pLight->Ambient.b *= 1.0f;
9 C2 P( s! }! \) Y
#else //__YENV
1 s, w5 V3 x/ N- i
pLight->Diffuse.r *= 1.1f;
9 l N/ X# J) P* h8 u" R
pLight->Diffuse.g *= 1.1f;
- d( x: U8 ^" }" u8 R; F
pLight->Diffuse.b *= 1.1f;
$ ^0 V- P7 V# M" c7 x1 _6 R6 g
// oˉè* ??à?
( n( [. Q ]8 x; a" s1 m+ \
pLight->Specular.r = 2.0f;
- O% T# Y# U# }8 m% V
pLight->Specular.g = 2.0f;
; o& y; T# D- ?
pLight->Specular.b = 2.0f;
% k% c& }3 X: f( V/ n) P
// á?oˉ
& m# U x5 a0 Y8 B. f8 M- C8 m
pLight->Ambient.r *= 0.9f;
3 U, _. u6 x0 y% @
pLight->Ambient.g *= 0.9f;
6 V% Y, J: K/ l3 e: c
pLight->Ambient.b *= 0.9f;
0 r3 a% |; K7 D( S! J- `6 s! `
#endif //__YENV
! T' m$ `) U( J; x
# t2 U# @+ X9 V$ {% r
memcpy( &m_light, pLight, sizeof( m_light ) );
' C: ?' ~' w% E' q
6 u) [' U X0 ~
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
$ l4 E/ G" D6 S. h" r h
D3DXMATRIX matTemp;
; \" ^( V7 @% M6 F% o" Y
static const float CONS_VAL = 3.1415926f / 180.f;
/ e+ M2 m9 v' P, k
$ p7 c0 R- z+ Z
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
) k" E+ j L4 n0 z8 ^
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
1 b3 P+ \! I# i$ D* L Y$ q. _
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
+ N" Z: y" ^6 }/ Y! n' a
pLight->Appear( m_pd3dDevice, TRUE );
$ G' z$ c! ~8 ]1 U' n7 k* _
3 K s% `/ g$ w- Q, H6 }
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
6 n, }3 M* S* M V, _
// D3DXVec3Normalize(&(vecSun),&(vecSun));
! Z; [) w, k4 o/ q
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
6 ^* w/ Q% N, E
0 R3 \; L" w' P$ y* i% [
DWORD dwR, dwG, dwB;
2 c4 Z( _& {, c0 H& b+ J
dwR = (DWORD)( pLight->Ambient.r * 255 );
. U! [& k7 C0 K
dwG = (DWORD)( pLight->Ambient.g * 255 );
' T* ~. ^$ G4 C$ o1 X
dwB = (DWORD)( pLight->Ambient.b * 255 );
# g6 b+ q. b% |3 G$ V
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 C) ]4 l t& H" B9 Z! u' ^; E
}
- P8 f" f+ ~7 J1 P6 u
}
$ V: N, L: v: e# D! K& T$ w
/ z6 @, F% P% a; c1 @ }: L c
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
+ K: u- m" C5 o, ?% k
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) );
% `, U' \) n+ m2 a) \1 _3 b
::SetLight( bLight );
: R: r, v; M5 Y/ n& _
; @9 ?) v+ D9 X. r/ _
// ±ao? ?D?í???ó á¤à?
1 o+ k1 O' @7 t6 z& k5 T1 B* d5 @
m_pd3dDevice->SetMaterial( &m_baseMaterial );
8 F+ H u) v3 [2 T1 `
1 g, b% R: e) Z3 S- f5 j0 W
#endif // not WORLDSERVER
; m* {( v4 A0 z" d& R: u
}
3 {1 r( o& ^1 J& E1 E$ @ q, L
并更换
4 E6 m0 P: v; W8 O& k0 |" J5 x7 d W
Code:
3 _4 @# m( z" A4 ~* {+ V. P
__FLYFF_INITPAGE_EXT
, ^9 q* a* Z" f; R1 n- P
定义
9 l( e; `5 `& o/ D Q
( S( S; }* i) N3 W7 u
& O8 o: ]# t+ y! I' F
, o# j, i6 n8 F* c& E
* b; \7 f1 J- w
现在终于删除我的狗屁加速...
, F& Q: L+ l9 Q% L
6 c) b3 z+ V. J8 C h- V q- _1 v8 \
1 V/ C* ^: o% b9 _
, I2 w2 d7 Z) \: Q5 Z' ^
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2