飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
q# r# l! f: @ z
尾翼:
4 y' _4 q5 ^* [! m1 c' |
' b/ K! y/ q2 s/ [6 v2 }$ o% P
代码:
: m; S! m$ e! i" {; t7 ^* g& _9 l
CWndAutoFood::CWndAutoFood()
: J$ Z0 L' O& S8 F/ f
{
4 \0 @! X! i0 D# T+ O
m_pItemElem = NULL;
* i1 ^# _ j/ l; l+ R' \% W0 z3 ~
m_pTexture = NULL;
, U% d" D& T8 w. n
bStart = FALSE;
! O/ R1 H* F# v
}
0 z. X' V+ ]& e
# E7 g9 ~. k% M0 U
CWndAutoFood::~CWndAutoFood()
! _9 P3 I( S, G: j$ f9 U) _, Q, Q* W
{
9 o$ }7 C! Q' H) l6 e* a
AfxMessageBox( "AutoFood ist gestorben
" );
3 O2 u% w) z Q U
}
: q" B j; |, I; H/ j
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
5 s) S* i r2 a7 c( p; R
{
0 V4 U0 n; u5 Z* Y, T/ M
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
" }/ Q- m1 P9 T$ m: g6 ~
}
5 {6 V: |, \. K# W
0 B" O; `; [+ O
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
" ~0 p! _7 U, Z6 ^, ?
{
( I' b8 z2 m2 c( x6 e: ]4 t' O, @' {
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 T/ P" `; H2 s' p% I* l) ~
CRect rect = pWndCtrl->rect;
' f5 W* Z/ b* A4 c# P3 R
if( rect && rect.PtInRect( point ) )
+ d P0 ^: S7 J- O& y
{
4 U/ \" T) N9 b) p: y& x
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
+ q8 K! p/ i# F
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
# X, s5 h8 U: d* _8 ?) K8 v" S) E
{
) i. C( a( G9 m& h* _# X
if( m_pItemElem )
' ?" J$ o5 N2 s" n0 f) z3 V
{
9 ]2 Q/ z+ T5 g$ \) z* C" G+ l
m_pItemElem = NULL;
, C. H! n5 {* k( e$ E( d4 K
}
$ E; @6 b8 e/ i$ J+ t/ H7 W8 u% P
m_pItemElem = pItemElem;
' T5 _) x7 F, Q6 k: _+ W
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
2 a; M' I1 X+ l2 V
}else{
o3 i$ S, ?; i5 a6 z- H
SetForbid( TRUE );
: b( W0 |1 h$ ]" d1 k
}
\, S* k$ F# g9 `
}else{
) N, F0 h7 o6 ]- X$ z% ?" I# g# M9 K
SetForbid( TRUE );
( K0 y. @" d0 f& Y8 U4 Z7 C
}
* t7 @( A- c1 Z8 G* V5 U
return TRUE;
$ e& j& S8 o6 ?# M2 u
}
' S: ?0 f# O; Z5 G4 f
! W1 h0 R5 \* H4 U0 Z
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
) H* n; {, g* O S+ L
{
, d1 @! ^5 h2 }: P1 O. C [' c$ h
switch( nID )
# }; H" A! b1 T' L
{
& t/ k* |7 a% x; `1 k" @) Y+ [% W
case WIDC_BUTTON3:
# [0 j; E% D) c1 {% K' B# T8 y
{
# { f1 x, M, c1 u% L
bStart = TRUE;
0 q0 p& m8 S6 E1 T
break;
! W+ L6 {, C; A+ E: w
}
4 f! {1 d) I* v0 c7 e
case WIDC_BUTTON4:
( U. b/ l1 \- y+ F
{
; ~* U% a+ L; ?
bStart = FALSE;
' X# q9 f3 f9 g( b) w2 D: g
break;
; v' g' ]4 @& V1 X
}
0 R" x. g; ?. }9 w0 J/ w$ B
}
5 I+ Q* I8 k0 m2 P( w' ?3 F
return CWndNeuz::OnChildNotify( message, nID, pLResult );
' e4 b# Z# i2 S# Y; S
}
4 r8 H) Q5 z! Q# J; y& w
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
4 n8 U1 N2 Z; H! h* I
{
# x: M+ ?5 G3 Q: D8 n
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
* ~3 k D& o# v7 D
if( bStart || !m_pItemElem )
& ~% j9 s7 w( D$ P1 G
{
$ N8 d3 U, d. L7 ~
pBtn->EnableWindow( FALSE );
/ K& T# }- r% r Y4 a
}else
N, t" P9 |# M
pBtn->EnableWindow( TRUE );
4 s! p& G* j) t
if( m_pTexture )
P: W1 N3 J- P8 U0 q/ S( C
{
% S& R9 {$ x8 T y9 t7 M
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
7 \4 g" ?! I+ O# O5 @2 |! W
if( wndCtrl && wndCtrl->rect )
" X& u0 o- p3 W8 ^3 e: R. ?
{
2 W6 [$ w( y. k" \
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
' e0 S) p2 z! J3 h+ D
}
9 \5 A, l1 o) j9 j! t
}
0 Y8 b% R4 k, e6 Q& h _; Z
}
: l1 r- n* U7 P; o. V
- y7 @; u- M+ T# \, i# f
BOOL CWndAutoFood:
rocess()
8 F4 R; E- M8 \4 b
{
O" D" [& {, G1 ?/ M6 b5 d9 Q
if( bStart )
# |2 ~- t* m' w$ u3 }
{
8 g9 f4 s3 m6 O6 `
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
( w# t% k* G& {; s
{
7 `9 D; Z: o' J
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 S. w* w! n8 r6 O
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
8 l' z" I( g h$ R
}else{
% {/ o; K! l8 O( p N3 Q
bStart = FALSE;
# @3 G0 C7 h) ~: ~8 O7 N
m_pItemElem = NULL;
: G% M8 K9 K- A4 g+ {
}
' n; t5 B/ K& V' }3 Q. g5 i2 F, j/ l
}
) k9 M) v( u: o% C3 Z& Q
return TRUE;
! u! c& ]1 F, _4 @
}
- H2 B6 {) Y2 ], J2 t
3 B5 `; o. y% k% E3 R% P+ o7 v/ p
登录视频废话:
A/ G4 b# }$ L5 j% a* U) l- U
尾翼:
8 x, @% Z, H/ @
7 h/ ?: ~# V+ ~& X
代码:
4 G& M+ Q1 f- W# ^% R1 M' ~
- S; t3 E4 H0 q+ }
void CWorld::SetLight( BOOL bLight )
( q+ Z& w& S" b/ k2 z% B, _
durch
, i* ^" R6 E7 U
Code:
: S1 x5 q, J& H- C
void CWorld::SetLight( BOOL bLight )
2 B: w9 G, P, z) R% [
{
8 r4 u1 S! |2 x
//ACE("SetLight %d \n", bLight);
+ I1 W( N" {( a6 G; s
6 i8 z9 H7 K# R, W8 g5 i1 Q
#ifndef __WORLDSERVER
* F5 N. S& ~& Q! n/ u Z5 l& D
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
0 j$ M0 J! e- w! r8 `
CLight* pLight = NULL;
. G* t9 s5 F9 V. ^, k3 x* V
4 u4 O0 d. f& h
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
/ Q/ Z4 ~7 w+ n. y6 [! O/ O
, Z5 b/ \" h; w( a: o! m
pLight = GetLight( "direction" );
* e+ P1 i) S7 x9 J; U
3 a0 H7 z F! t% r! N; ~
#if __VER >= 15 // __BS_CHANGING_ENVIR
! U' `7 v I0 }: L% P# ~
if( g_pPlayer ){
. p/ u6 d f- t% [+ |, e
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
& X8 }1 P) ?/ C: o5 r [
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
* u1 B4 u2 Q% l3 o4 a: X; H6 P8 \
{
. ]9 q( e7 i- A! `, C
if( pLight )
' g% F# ] H" i* \% d0 L
{
( h7 ?! T5 y+ f d. F: I$ ^& D
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
9 B% }) D4 F, j% S$ e# x% h
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
) r4 Y5 a5 V6 b# z/ o% z) z
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
+ L5 x8 x' d. r' `. E) F
+ g9 H" a# g+ x+ @
pLight->Specular.r = 2.0f;
' w, [* Y5 p" _2 t7 I
pLight->Specular.g = 2.0f;
- h7 t; {8 T- S. W
pLight->Specular.b = 2.0f;
9 X) U* v/ v7 ^2 J; F' b9 L( G
6 k+ j) F: ^% `5 X
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
% I3 a- q$ f, }
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
$ b ~9 j2 }" {. Z
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
5 l; t; a' {5 J! Z
" @2 j' h" E9 k/ [
HookUpdateLight( pLight );
, p+ P2 H( I% s5 Z8 I% s; x" j. F
0 L/ B: _! l; |( ^# M. f |
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 |- \ Y4 b+ K
$ _7 B T# t1 N+ D
pLight->Diffuse.r *= 1.2f;
9 M/ w9 A6 o) }- e& A* H2 U9 z
pLight->Diffuse.g *= 1.2f;
3 [. b K$ s( V- E4 c, k
pLight->Diffuse.b *= 1.2f;
& F% y5 y! ]/ {2 h2 ]( P1 T
7 G0 @1 k/ ?2 Z( [' Z
pLight->Ambient.r *= 0.8f;
) f: g" D) v; e. z! f
pLight->Ambient.g *= 0.8f;
7 V% i W" N4 V) C" G3 X- k
pLight->Ambient.b *= 0.8f;
1 w& `5 L9 W N+ p% f
+ f9 h, A9 M/ j% L: V% c2 e
memcpy( &m_light, pLight, sizeof( m_light ) );
5 n) M* z5 [. Q
: o3 K8 [( c9 e! N x9 L: j6 A
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" k1 V. {6 [: }
D3DXVec3Normalize(&(vecSun),&(vecSun));
' K7 o ^6 W) O% }4 h. F% \3 M8 ~" r
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 n3 {6 E% K8 L% x7 C
pLight->Appear( m_pd3dDevice, TRUE );
# N, H& k- X$ t0 N
7 `3 D0 d% n8 c( Y, k' J! }
DWORD dwR, dwG, dwB;
V) O# P, P/ u( w O& R
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 @ J) o( q. V
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ g( \9 F2 R9 }+ B
dwB = (DWORD)( pLight->Ambient.b * 255 );
. n# p% ?7 W6 k! A
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 t C, _" t/ Q% [" A
}
# U1 h& ~$ A! i0 d' y5 n
}
$ i* Q2 A3 |- V: Q
}
/ b; Y9 D+ M& M0 {2 s' ^3 s
else
w. X% M" j1 e+ A
#endif
2 { a( ?2 }. Y' K
; l6 o% F! L2 g. D% @* I- T, G
if( m_bIsIndoor )
# k6 i+ m& A M: g* v) R. ]
{
' m" n+ _0 u2 Y/ X
if( pLight )
2 w( [5 G, }2 H l/ g0 o
{
% h( H+ s+ N1 A2 b- l
// à??μ oˉè*
: b6 ?2 w- j+ g; |
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
( b5 i& V2 \9 i: h% j
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
: Q3 n7 g H$ h
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
" r3 c; |6 x' o0 |% q: `; c
7 e" a% _; k/ g' e# w5 S
// oˉè* ??à?
' D( T! A0 `* O. R" Y0 |
pLight->Specular.r = 1.0f;
( t0 v6 e7 q: c. a3 H: w S1 E
pLight->Specular.g = 1.0f;
2 A/ Y9 ~% |. Z* ^& j0 A4 q. x2 T
pLight->Specular.b = 1.0f;
: }$ I+ ?5 i5 c$ S `
// àü?? oˉè*
1 \- T$ A' L! @1 h& Z, j5 |
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
: L8 F$ t, z* W1 Q
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
/ q' I7 m2 W t/ C5 t! A
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
$ |- {8 ~. r8 ~: _
- w- r6 y: H6 J& r& h d5 \$ E
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
; g* \0 g; l% e5 t4 H
{
# E. U3 q5 ^5 d/ w0 \- E
pLight->Diffuse.r *= 0.6f;
. I9 ?, j$ h b2 ^9 u
pLight->Diffuse.g *= 0.6f;
: z, h p0 ?9 V3 a; K% P
pLight->Diffuse.b *= 0.6f;
- T4 e$ y7 ~" X0 |3 W
pLight->Ambient.r *= 0.7f;
% r+ L' k( D+ r
pLight->Ambient.g *= 0.7f;
; F. V6 W& \5 p0 M3 G. _6 B
pLight->Ambient.b *= 0.7f;
" e& q% j" b# e" ?4 M G7 z% K; I
}
- u$ L/ ^& l2 I* h
' k# a6 M y4 k7 n/ w& J
#if __VER >= 15 // __BS_CHANGING_ENVIR
: l D* y$ Q' P& t. y& Y
if( g_pPlayer )
! C! d O* _4 n: l
HookUpdateLight( pLight );
0 `/ G: E3 P/ r8 X
#endif
y9 i6 `+ w# U/ `1 e. O
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ _: P/ A4 v3 X r+ } s
, P i/ s/ m. R' H+ b. Z
pLight->Diffuse.r += 0.1f;
& B# ]1 O5 l7 J' h7 f
pLight->Diffuse.g += 0.1f;
5 Z- @6 k: E3 ^! d
pLight->Diffuse.b += 0.1f;
. K; S5 A4 w) m5 V! B8 `* ?5 E
// oˉè* ??à?
4 q8 f0 b9 `2 Q
pLight->Specular.r = 2.0f;
* W: {! V: C* o( D. w+ D
pLight->Specular.g = 2.0f;
! i! M- k6 X% I0 Q
pLight->Specular.b = 2.0f;
2 ^% J- A" ~5 t
// á?oˉ
( p" A x4 u, @8 x- g% E* p0 L
pLight->Ambient.r *= 0.9f;
% h b. E/ K) Q9 s0 L* l! t
pLight->Ambient.g *= 0.9f;
- D# F3 E" z& e# y+ r) f
pLight->Ambient.b *= 0.9f;
9 v& y, X' M+ q, K$ V5 ]5 a) [
- P0 N @9 @. f" I- B# X
memcpy( &m_light, pLight, sizeof( m_light ) );
3 @1 u0 d- Z# u& p1 S& ^: x
9 T+ r% |1 Z$ f! ?( g u- _
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
/ j: T( ?" j- E% a5 ]4 {. i0 Q. g7 L
pLight->Appear( m_pd3dDevice, TRUE );
; w+ j6 Z4 X. ~+ t+ Q$ q8 |) b
% X0 l5 t0 K% \! g* I) I' R
DWORD dwR, dwG, dwB;
?1 ~2 D- I5 Q1 a) J5 {7 ~
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 i& d- x# R' O+ ^( d& U
dwG = (DWORD)( pLight->Ambient.g * 255 );
! s g, f" L ?" k$ {- k6 n: q
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 {+ @$ n" b* X- v# q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: o1 {% L0 \* k" k. E8 z! a
}
3 |, K W3 U; R( m
}
* t" w% v; T/ F# g
else
5 u* ^! D. d1 j9 ]
{
8 m, W* F7 }$ d" h4 E! g
if( pLight )
6 ]4 b0 p! A2 g1 w2 h0 `$ [- @4 n
{
" Y5 v0 _# {1 J
5 o( x9 H' ~, I; t$ D. O6 L
int nHour = 8, nMin = 0;
) g& c: _! y6 P
#ifdef __CLIENT
% A8 x% m2 z( B# y+ q! b2 w
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
+ h" @& ~1 _" U7 a K; G* M: ]
nHour = g_GameTimer.m_nHour;
: B9 h7 O3 T9 A8 _* c
nMin = g_GameTimer.m_nMin ;
) u5 ^) n0 \! o) d$ u
#else
. b) E" H, F9 j* F
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
& [/ I9 s1 t) X: @) F2 U! w! U
if( m_nLightType == 1 )
( `" O$ p# m0 s
nHour = m_nLightHour;
1 c7 A3 {4 T' x
#endif
: X: E6 i" i. @* J% N
nHour--;
- p6 p1 U5 H6 Y5 T0 a
if( nHour < 0 ) nHour = 0;
E! x" Y0 @# j# f
if( nHour > 23 ) nHour = 23;
) e0 ]* P2 `6 Y c( |# y
- Q @+ J4 H& f5 ~, Q$ C
//if( m_bFixedHour )
( c( ^+ P1 v( B/ _
// nHour = m_nFixedHour, nMin = 0;
9 J6 U, \1 V8 N6 }$ o5 @
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
+ i; R4 _) }6 w
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
1 n4 U3 L$ d2 ^, x% B
$ [) T* ^$ S W5 t( m% U" T4 x1 ?
//m_lightColor = lightColorPrv;
3 c6 t6 ~" ?5 m8 s# Q ?) P
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
: `; A: J1 D: e9 J9 |8 C3 Z
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
: K1 _7 T/ }0 f
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
. r+ X! H& V; {: C* e
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
9 e3 E6 d; A# e' g' X$ F2 B
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
7 m& K9 Q: j/ N. M# w8 Q: a2 ?6 O
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
( m9 G* f+ g5 |8 \ p$ J, w% c# D. ?
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
- y/ U' c0 K( B- ^! N
2 B- R" w" ?# S8 z
// à??μ oˉè*
9 h6 n8 L* b9 O$ ~2 r8 c
pLight->Diffuse.r = lightColorPrv.r1;
( x6 q' u' P% k( n( u x
pLight->Diffuse.g = lightColorPrv.g1;
. g; t2 |9 H# l5 T
pLight->Diffuse.b = lightColorPrv.b1;
3 ]( s E$ U& V2 ^6 o, c4 J; ?
// oˉè* ??à?
9 J8 N. v6 F3 ?6 y: s6 z2 W/ `% l
pLight->Specular.r = 1.0f;
# H# I5 W, [ l2 E$ y5 W
pLight->Specular.g = 1.0f;
: ?; j! W8 V4 i6 |8 X$ M
pLight->Specular.b = 1.0f;
4 z i; ?; y0 t1 I5 U5 n
// àü?? oˉè*
7 c8 p- f2 l; ]4 I7 u7 r* H
pLight->Ambient.r = lightColorPrv.r2;
4 {, ]! g1 W& S/ N: H0 D. ?$ J
pLight->Ambient.g = lightColorPrv.g2;
# w7 I4 R& L* _1 ?- N0 J9 k
pLight->Ambient.b = lightColorPrv.b2;
7 |- H. A2 v8 r& z
# P* ?6 f6 M- z; v* G. T" [- C
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 h4 Y2 D" h, U
{
' t) h+ s1 Q. W; a
pLight->Diffuse.r *= 0.6f;
' Q4 o+ i& `7 b- `2 ?. K/ G
pLight->Diffuse.g *= 0.6f;
8 k) P" k Z/ K( Z4 z
pLight->Diffuse.b *= 0.6f;
: O, L5 F9 e2 {0 ~7 e' H/ H
pLight->Ambient.r *= 0.7f;
; M$ Q1 Q: F: K B
pLight->Ambient.g *= 0.7f;
' k$ K, b" k' c# p% h
pLight->Ambient.b *= 0.7f;
5 H) D# M6 X. Q) z! A& R" S% M
}
2 g* x( k* g* \0 s* j; B
7 x8 {! G! P. ^( w! i& [
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ X1 O- h% y3 M* H$ I( w
if( g_pPlayer )
" ]% r9 n6 X: u" n5 t. I I
HookUpdateLight( pLight );
3 ^, b' j4 p! L1 I2 m5 F
#endif
, ]% l0 H# N6 r' D
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ L7 J# u/ l( @2 B, b9 L( W
6 A3 H) U K3 C# U9 P) g9 R
#ifdef __YENV
4 s& L# H& j: b& v O5 O5 v8 B) L$ b) p
pLight->Diffuse.r *= 1.1f;
) z, R5 U; ?9 q- n8 X" l
pLight->Diffuse.g *= 1.1f;
( K/ M y. g3 \" r" |$ ?3 p7 h
pLight->Diffuse.b *= 1.1f;
9 q T& a+ Q" f1 p* a& ~; o
// oˉè* ??à?
9 o- e' N5 x+ }
pLight->Specular.r = 2.0f;
- c- Q! p; F* R3 }% D7 U
pLight->Specular.g = 2.0f;
* Y+ N7 c( j+ n$ v
pLight->Specular.b = 2.0f;
! B' K* ~, v7 J7 n# u
// á?oˉ
* q6 f/ [$ c q2 p. S4 G
pLight->Ambient.r *= 1.0f;
+ h" q4 |0 S5 }: g
pLight->Ambient.g *= 1.0f;
# ?# s2 f( h5 r( B) Y( C* z
pLight->Ambient.b *= 1.0f;
2 l4 c8 |9 f! `. ^; A( I
#else //__YENV
) O2 [6 \, h. x" F% u: U3 v1 y) t8 l
pLight->Diffuse.r *= 1.1f;
) o$ R) p: z( Y' }
pLight->Diffuse.g *= 1.1f;
" p$ G% x, a8 {. p2 u
pLight->Diffuse.b *= 1.1f;
3 K- j6 j; S- Z4 a( P8 l: K1 H; G
// oˉè* ??à?
4 ?- M4 }" m8 y. b$ b5 `% k
pLight->Specular.r = 2.0f;
% p* E0 C1 _, L% M) J
pLight->Specular.g = 2.0f;
- m1 q6 H- B& p# t; f o
pLight->Specular.b = 2.0f;
6 e- ?3 r1 T2 y9 Q+ o6 ^
// á?oˉ
! H+ Q' J5 Z0 }$ n) k- K i8 }
pLight->Ambient.r *= 0.9f;
( E4 C7 e% S3 K9 B# u: g
pLight->Ambient.g *= 0.9f;
' a T5 Q4 H; m5 U( f6 j9 }2 v
pLight->Ambient.b *= 0.9f;
9 a, l: [1 O/ `
#endif //__YENV
& T+ t. H0 ]' _' e w8 B& o P
6 J; m+ t8 B7 j
memcpy( &m_light, pLight, sizeof( m_light ) );
* t" d- t& t7 \3 b0 ~/ q' Q
5 E' r& o; [2 A, ]2 J0 M9 ?) q
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
& ~2 I8 r7 Z+ K6 u* P0 Q8 |* p; \
D3DXMATRIX matTemp;
+ j& [1 ~7 z; ~) n$ c
static const float CONS_VAL = 3.1415926f / 180.f;
! Z) O. x: l; Z- d0 P7 w
6 q6 \# x+ Y: g6 |3 U
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
; l; v7 _2 h g
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
+ X- ^( ~7 o( ]" m% O
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
- ^+ \$ n- e( }
pLight->Appear( m_pd3dDevice, TRUE );
4 H8 H" Z( C2 E- Y
4 H8 f- H1 |1 d
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
. |4 S4 p% o, j
// D3DXVec3Normalize(&(vecSun),&(vecSun));
! V' W# E8 E' E. n
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
" A$ ^6 \# _ _1 ?
6 i& B" V6 ?: r
DWORD dwR, dwG, dwB;
2 g' V* i+ w, X+ T0 |
dwR = (DWORD)( pLight->Ambient.r * 255 );
l% N% k5 S) Z: t, v, T
dwG = (DWORD)( pLight->Ambient.g * 255 );
. z( w* |$ J" g* {% X9 l5 o
dwB = (DWORD)( pLight->Ambient.b * 255 );
1 J- o9 y1 j* g
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ N4 N7 U+ L2 W
}
% @+ }) e9 {5 ]/ ]
}
: }" l. P% ^3 i
9 o) D/ I: Q" p: E" j. G
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
0 t: l$ e P$ G3 v% x' P
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) );
8 w- z* l- \5 Y
::SetLight( bLight );
7 q3 P* P0 r. G: k5 L
2 o# Z1 g8 q/ R8 A$ `$ S
// ±ao? ?D?í???ó á¤à?
1 p0 o) g% P4 q4 e6 C$ \ L# K& D
m_pd3dDevice->SetMaterial( &m_baseMaterial );
9 j; ~& x) h& D
! y. R# f8 V* s- D5 i9 r
#endif // not WORLDSERVER
p1 [: N, h7 z
}
8 I6 W8 [% X% K
并更换
* J* s' i; e% J8 p+ N5 T
Code:
( N, H2 W" T) d. ~
__FLYFF_INITPAGE_EXT
. t( z( Q) I3 J B: m
定义
9 q9 @' |/ o' L W7 U
" \% u+ c# ^; B4 w y
6 y Z, s# {7 ]
; n. O% X E; [/ y& s2 _
; h. N+ O+ P* o
现在终于删除我的狗屁加速...
) @0 A+ n. y5 @$ y
% Z. i3 G4 C. K q7 i% `
- {$ |) i2 O, U d
: i2 l1 n6 A5 r3 a0 W* N4 C {6 s
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2