飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
: M5 X9 u5 o) J7 b- F
尾翼:
1 U. c, U6 `6 a) H& H# K9 r0 F
- ^% Y3 s9 w9 } ^5 o+ I) K
代码:
1 H9 a* ]1 N8 Z# y
CWndAutoFood::CWndAutoFood()
! W% g' h+ [8 {/ Q
{
% j3 E* F# Y: a0 K
m_pItemElem = NULL;
# {4 _4 D. g' q$ {
m_pTexture = NULL;
# f4 V, H% s1 L, F# }
bStart = FALSE;
$ V- e( J. ?$ q( v) f2 w0 Y; w
}
% J+ {% V5 K `( R6 B% O7 Q4 i
3 q( l6 g r0 j5 f2 A
CWndAutoFood::~CWndAutoFood()
' o P9 o5 d& I9 @" x
{
, s: D4 Z6 ?( \4 ]6 R8 W- ^4 i' H
AfxMessageBox( "AutoFood ist gestorben
" );
# F7 n- L4 c. a& v9 L' ?
}
! a$ t, P% a9 x: {* o# \
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
& i6 N* u( h9 G6 R
{
- a2 A6 j; A! Q
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
$ w' X; P& o! p( c+ R
}
% M* `5 {6 P N
6 f$ J( |$ ~3 S/ Q4 F( J2 n+ A
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
* R4 A3 L5 ~' L$ l4 [
{
. e M% e, d& D: _: U; t3 ] w
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" h) y3 [- ?) N% M+ ^+ ?
CRect rect = pWndCtrl->rect;
) H) {# n2 [3 U9 \9 q3 M
if( rect && rect.PtInRect( point ) )
' k% ?% [' G4 l! h' I' z
{
3 E2 f( T+ N9 M+ G5 O$ Z
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
. [ b6 g5 w8 o1 Z7 S/ F& l
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
7 z8 C, L1 ~, Z
{
$ l$ i5 n( n" [9 [$ _
if( m_pItemElem )
& ?9 O" }* d& w6 z: F
{
* h4 Z( V' S% N: I* M+ Y
m_pItemElem = NULL;
. J P0 L- i+ c5 D4 D
}
" O. j: u6 l8 S! |: `) I+ x
m_pItemElem = pItemElem;
" u1 N' ^" F1 F2 |0 t
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
& F0 |8 ]3 N, c% o" z: {
}else{
! t( Y1 Q5 Y6 x! m' q: n# Y" k& Z
SetForbid( TRUE );
7 p: k& U# G+ L7 ^" R; Y; s
}
1 b4 p1 k8 N! v
}else{
$ V; M7 P* L8 Y$ w& Z! c# b8 s7 ]6 z
SetForbid( TRUE );
2 k! m9 i; M9 w6 A' b: c/ m- d
}
d" @8 M( |8 N7 E
return TRUE;
- \8 W4 ?+ B" }
}
" `9 ?2 D: _( T3 f* A
% O* r' G" ~1 W1 \
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
2 q5 ^& ~7 q' G3 T3 X
{
7 t% v1 z' f; g0 J' B: |. T
switch( nID )
W3 E8 E% l. s8 g, f( U+ _( H1 Z
{
) ~: J9 P1 N9 W/ r- Y9 B- O0 F. n f
case WIDC_BUTTON3:
: d+ u$ O0 V( h
{
% @: s1 b- h* F) N& z; m" ]7 i
bStart = TRUE;
" ?7 j: b5 M& c3 x) @! }
break;
0 O( e+ ^% ^/ R4 V
}
) _+ Z% Z% }% n
case WIDC_BUTTON4:
" x* ^5 K: q D5 W5 B' }7 Z1 n
{
, ^3 }) O4 c+ Y5 P/ c
bStart = FALSE;
' ~& l) g2 V1 c+ Y. m
break;
0 j; e j/ D2 ]9 n
}
! K8 |8 L; h% j3 R# g( }1 Y. j
}
9 }/ S4 v+ Y U; [0 Y: k6 m3 z! N
return CWndNeuz::OnChildNotify( message, nID, pLResult );
- |1 Y$ {0 p+ X4 y, M& V& L) u
}
1 i. I# J. v' M X" [* Y5 B
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
& J6 ^) T1 P' n: U
{
T* o9 Y4 M5 v, I/ f( s' p! P
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
0 A$ N0 H5 e5 t* X0 G( K9 C
if( bStart || !m_pItemElem )
- `7 m8 I" k2 Y
{
% ?( e5 g R1 K/ o3 y% B# H2 v
pBtn->EnableWindow( FALSE );
) [0 G2 A* c# V! B( e4 Y
}else
* |0 M0 r5 r. C" Q4 Z
pBtn->EnableWindow( TRUE );
5 T/ X. k; m. M- p9 K# _' {
if( m_pTexture )
+ R0 U4 Z) z' i! p7 e( H$ s
{
" v8 ]% ^3 }' K% r" g
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. Y& p. F0 ]$ d7 B; x* m- h
if( wndCtrl && wndCtrl->rect )
T, }4 @/ K! c' V- Y
{
* p3 N, n$ f8 y
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
4 s5 \+ F' N0 n9 p8 S+ w' V6 @$ J
}
0 d* }: R, _) ^1 A& A
}
2 d6 O4 t6 X8 t/ l2 h
}
' W( N! r! J+ c1 c' N' { v) P
t0 G' |4 R% h' S( \
BOOL CWndAutoFood:
rocess()
; E$ m- u) X' C
{
2 H6 z i$ v3 _" ~! Z9 N9 |+ b
if( bStart )
- n3 e, j- y8 Y" p4 f7 W
{
, @/ F3 u+ ?9 r
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
; U+ m& j9 h2 E5 x! h& s
{
' _# p9 n9 w" M" p& \
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
$ p1 Q# i/ S: M- `' u
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
4 F! V* g! d; Q. G
}else{
- m7 ]6 K7 p% s$ e- c3 a
bStart = FALSE;
+ p: W; v3 W& s/ \8 \, j6 Z
m_pItemElem = NULL;
/ G: X3 F/ N+ u) s4 r# Z U
}
) L8 } }5 ^9 E3 ^( g( j
}
& h- E1 }5 V: v `
return TRUE;
& J2 d7 B* ], v" `7 X
}
, o8 v( \6 Q \$ w. m0 U; _% v8 P! E
2 s% L8 a9 Q& j" z+ q; V
登录视频废话:
; k6 F" Z% h6 s' C9 r
尾翼:
8 ?0 _0 j1 g6 f1 U8 v
5 e0 p3 O3 @% X) E3 W
代码:
# W* F5 m. Z! a" N1 L0 F
4 I8 P5 R& Y& m9 r
void CWorld::SetLight( BOOL bLight )
' q+ i1 U$ ]2 S, E, c% m7 u' A& C. f6 O
durch
& r# \4 O: F8 \! m0 m- [
Code:
, `6 j! H0 |2 ?7 Z% B W$ F4 ^3 w9 M
void CWorld::SetLight( BOOL bLight )
. O& m+ D, q9 i% P. W9 c$ p V
{
5 L q& h+ R! N; ~! }2 a; |
//ACE("SetLight %d \n", bLight);
# A8 v+ `; ]# @
+ ?4 t9 ?# `) a8 O6 u, I
#ifndef __WORLDSERVER
; m/ E! B6 s* o! F3 _
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
$ n1 [( D( H- \0 E" p& W ~9 p7 j
CLight* pLight = NULL;
1 l% [& D* ^8 U, p# Q( m8 b2 e
- p! t3 w' E( x0 f2 j
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
! {$ N3 F5 k- A1 i! t+ p/ M! O
5 q/ a( ?2 F% K& f& s4 V0 {
pLight = GetLight( "direction" );
! @2 V7 x, e# V, E; b6 \$ V$ a0 o ?
5 M# V+ [; Y0 u$ E+ Q" C' P( d
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 W J/ S( F7 M2 m0 E* `
if( g_pPlayer ){
. E3 L- |* a0 T W. y
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
3 g1 g: p$ m: c& X# a) B9 k3 W& ~' l
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
\4 g. M0 v9 Y- _" ?# r2 D9 `
{
5 x- M$ R6 @3 e. e) R
if( pLight )
: ^% m9 Y# N/ I# ?2 e; d, i+ F4 S
{
T' o; C4 i8 g9 B9 N; K2 n1 H& {. n
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
' H! f5 }4 I' u7 Y5 a% l
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
* _2 l- z" Z; K$ l
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
& J, F7 ?: t5 M( b8 H% y
9 W L; C2 W; p- A$ U& ]8 i( n
pLight->Specular.r = 2.0f;
: x2 n8 X2 V8 \' ~1 P/ W
pLight->Specular.g = 2.0f;
$ u0 u* a6 B- [7 p9 e: ^, Z
pLight->Specular.b = 2.0f;
0 G" ^& I; t* G, b
+ ?& w8 [; \; H9 S; M ~
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
" P* g3 U2 K6 l( k3 M% J4 C- I) S3 t/ K
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
3 O0 F, ~% k: r) f4 V
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
7 ]& y6 n( `! P( {5 [8 r6 j
7 D6 U& D6 O1 r$ x# w3 J- |6 E
HookUpdateLight( pLight );
9 F% m+ c [2 R. g6 m/ H3 [. M
' b3 {8 H' z# o+ l$ O
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 z6 f5 v/ C a4 p% m% F; s
2 ?! E, h; h k- B# ?
pLight->Diffuse.r *= 1.2f;
# q2 D3 T( H1 p/ Z% o
pLight->Diffuse.g *= 1.2f;
; h! ^, G, _! W, g. Q/ i# p
pLight->Diffuse.b *= 1.2f;
- ]2 A+ m2 A0 V& K Y
( j5 r" c: c4 y/ }
pLight->Ambient.r *= 0.8f;
/ C+ R; U! z/ R# l* Y- w8 {
pLight->Ambient.g *= 0.8f;
5 I" r _- F2 T. E
pLight->Ambient.b *= 0.8f;
Q0 \' g" {- j' H$ W2 _
) `5 k$ b* X( a
memcpy( &m_light, pLight, sizeof( m_light ) );
1 h) P7 H& Z: u& t) G
) k5 n; l3 |' m$ G, N4 K0 B7 J
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" ]) {; {: `! r) `
D3DXVec3Normalize(&(vecSun),&(vecSun));
; l% F# |5 q8 v- {
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
6 Z3 I& c( w# X0 v6 R9 S, A* R F
pLight->Appear( m_pd3dDevice, TRUE );
! }% U2 v& o8 p; R% ^; \9 M6 V; n
' V& i! E, K! W; M$ w
DWORD dwR, dwG, dwB;
, m) z5 i. f; M$ O8 J
dwR = (DWORD)( pLight->Ambient.r * 255 );
9 e. @! ]$ x0 z$ q* ^( b
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ i" S% q% S: Q$ X, K7 m% _
dwB = (DWORD)( pLight->Ambient.b * 255 );
- ^. O: i4 K2 X0 I7 h% l/ {; a
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% O& o o9 F8 r0 \; ]
}
8 y1 Y2 Q9 A0 [' v
}
, I8 W/ D3 A8 J* e8 n0 d4 p' {" e
}
/ e; g+ m+ |7 l. o0 O% H
else
. \( Y0 q& x/ l( }
#endif
) S+ V* m* r, d% H
3 ?8 ^8 C2 ]/ }
if( m_bIsIndoor )
5 A; {1 ^5 q d5 f
{
x) T3 Q6 N- e( C; H
if( pLight )
5 X6 e% N3 m4 e! Q! [2 U
{
, M0 k$ b6 V- Y* \5 F# k
// à??μ oˉè*
4 ?4 @! y& @+ i; ^7 i4 D
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
, b. f: C/ o' R+ h4 W/ J& W
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
: O( x# [# v- r
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
/ u# B3 p1 I/ V% P4 {, N
! g& h% c/ L9 R7 T2 W
// oˉè* ??à?
3 }9 Z! |/ r% }# M
pLight->Specular.r = 1.0f;
& s( l9 G* T7 `! x2 u
pLight->Specular.g = 1.0f;
/ y) s6 R: [- t2 R! o1 S- f
pLight->Specular.b = 1.0f;
4 W+ J& x* K. E8 S" e
// àü?? oˉè*
) m$ u- D' o* Y& m7 P1 c
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
7 n5 A p) X5 w8 j+ G
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
# d7 K6 F* ^: J! t+ Z
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
; u6 ]( ]! t4 F/ E* W
' |- {4 J l6 j- Z6 H. i; f
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
+ e, V- V, A, {/ R
{
& ?* M. o1 ^4 ^3 Q, ~
pLight->Diffuse.r *= 0.6f;
% F& T( ^2 M/ k' w( [! q
pLight->Diffuse.g *= 0.6f;
) ]/ G+ d8 M4 p6 [( R( b" i
pLight->Diffuse.b *= 0.6f;
4 h k& z b5 y$ p& c, n: h: O
pLight->Ambient.r *= 0.7f;
/ M% U- Y+ W1 q& A2 Z( d' m
pLight->Ambient.g *= 0.7f;
( p! f" S/ B7 Z* B- F4 X
pLight->Ambient.b *= 0.7f;
2 C; F& E4 V$ ?! _& n
}
- w# z! }# v/ |- |+ b3 [2 S# p. O
9 ?8 z8 A# ^) }1 ^# e/ y
#if __VER >= 15 // __BS_CHANGING_ENVIR
: Q- C! {0 V& [4 E
if( g_pPlayer )
) t' s E# C" D& O6 u$ Y* y' P
HookUpdateLight( pLight );
# n4 u* K: }3 A) ~) Q
#endif
/ o2 e) e8 S; ]
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% l; a1 P1 s; Z) W/ r
5 y, [1 B0 D6 ]* D, F" Z! ^/ D
pLight->Diffuse.r += 0.1f;
0 u* F: @$ T5 G' x
pLight->Diffuse.g += 0.1f;
$ E( [: q# }' [4 l5 v* s( I/ a1 l
pLight->Diffuse.b += 0.1f;
* \) n+ q+ v- m% w2 Z
// oˉè* ??à?
( e m# t2 M3 \4 ]
pLight->Specular.r = 2.0f;
% ^/ g" @# q: D b. l8 L- F$ A
pLight->Specular.g = 2.0f;
$ {9 E+ f' T2 L9 }- E% s: {* ?
pLight->Specular.b = 2.0f;
9 ]5 N3 C n) s; S q
// á?oˉ
& X# i y/ ?# W1 E4 C- T8 W; {
pLight->Ambient.r *= 0.9f;
/ C9 B: B( w0 Y/ {. O
pLight->Ambient.g *= 0.9f;
1 L, p$ f$ U6 v3 g8 Q g& u# d
pLight->Ambient.b *= 0.9f;
1 K/ z& I a% J6 o
) ]# a9 Z) V M6 Z
memcpy( &m_light, pLight, sizeof( m_light ) );
7 L) X2 k2 |* ]8 K5 d& h+ Y0 b3 ~9 a
. t0 u1 O, ]# e0 S
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
0 w( ^4 S& t) Q& f" B' I
pLight->Appear( m_pd3dDevice, TRUE );
/ b8 p% M1 A/ K" s
7 E5 u. m+ U' ?3 J/ K
DWORD dwR, dwG, dwB;
4 A% v% `7 E. q, q
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 v, X# q1 V6 o2 j# ?5 A! A) l
dwG = (DWORD)( pLight->Ambient.g * 255 );
. S0 L4 ]3 t) }" u
dwB = (DWORD)( pLight->Ambient.b * 255 );
# G; p3 F: }3 G4 f9 I! Q+ A
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) J+ V2 Y; b, o
}
: Q& O) {3 R; Z4 |
}
: O) O( c6 y8 O# s9 q# E5 d
else
0 D( H8 I" T) }: c" {! L
{
$ [: U3 f+ V t8 G# a
if( pLight )
, Z# s" O- k0 m
{
, e. l, H. r5 n$ v
) h1 v2 b& _5 E9 m1 E' q# @
int nHour = 8, nMin = 0;
* y3 k: N4 P3 E9 K# N; M
#ifdef __CLIENT
1 J: \6 ]0 C, u# W: }
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
9 R9 G v% s. u9 Z
nHour = g_GameTimer.m_nHour;
/ z$ h4 ^ d& ^5 K6 z* |
nMin = g_GameTimer.m_nMin ;
8 a" n7 s( _' X% A q# x/ s
#else
- h; F6 f2 X( i; u) B
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
( X3 W+ c* t2 w. r$ ~' f) t
if( m_nLightType == 1 )
d. a3 o( a0 k- N
nHour = m_nLightHour;
/ a% X+ t5 `( L1 J v
#endif
" k7 _* ?7 u% I: U/ `: ?
nHour--;
2 Q9 A4 v; g5 U# j6 P( y. k- u" w- I# U
if( nHour < 0 ) nHour = 0;
+ X" |4 I6 U2 ?5 Q5 v) k
if( nHour > 23 ) nHour = 23;
; y o+ a& B! {8 T
7 t. K9 a2 k1 \$ D* z
//if( m_bFixedHour )
0 j+ y( v( J0 ?/ W
// nHour = m_nFixedHour, nMin = 0;
- i' W6 L; `; @
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
) m2 M! y6 q. K6 @2 R
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
4 s A' l% c+ C1 N( o0 z6 ^* c
. P3 `! C; e* x# z
//m_lightColor = lightColorPrv;
5 b% l! I7 m! T$ y* Q
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
! J- q) v' ^1 |4 d2 T% y7 S
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
4 O4 o0 z' M+ R/ `" i& k3 ]4 L
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
- u* A) }; ]9 a9 g
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
8 t) P8 a6 F, Y- k
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
1 X6 q$ H4 M8 p
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
- J3 _. t6 t2 g0 |/ v8 l
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
: P, ~- N! |8 W8 n6 Y) {
4 }8 N2 R9 D! X+ b3 l
// à??μ oˉè*
; Y# ]6 A0 ?7 m1 \6 g1 {. O
pLight->Diffuse.r = lightColorPrv.r1;
! v+ }" @: `3 Z; x
pLight->Diffuse.g = lightColorPrv.g1;
+ |* b5 F3 A! w. b2 s
pLight->Diffuse.b = lightColorPrv.b1;
; U1 B A1 I/ s& Y+ V$ g
// oˉè* ??à?
& p* X, e) f- X
pLight->Specular.r = 1.0f;
1 l: d7 I j& K W$ g
pLight->Specular.g = 1.0f;
) u% e: E' v5 A/ t0 ]6 S+ q
pLight->Specular.b = 1.0f;
# L. k: M8 L$ g* u1 M4 w' S2 i
// àü?? oˉè*
+ x3 ?3 z$ s* T E( [) Y
pLight->Ambient.r = lightColorPrv.r2;
5 ?: j6 a5 D2 m1 F* m
pLight->Ambient.g = lightColorPrv.g2;
8 H, z+ u3 d z% s. l' [
pLight->Ambient.b = lightColorPrv.b2;
% T; D8 Y4 s. h7 f$ H1 Q
! w$ `3 M% z4 t
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 o u; n+ P4 J) ~ D8 N
{
; H+ D1 C: r5 _- W- W; ?, b3 Z
pLight->Diffuse.r *= 0.6f;
9 a5 F- Z1 @( T: P
pLight->Diffuse.g *= 0.6f;
- C2 U, ~4 s0 r' x' U) k
pLight->Diffuse.b *= 0.6f;
8 y" z! r: Y; z9 D4 H6 m6 o8 J
pLight->Ambient.r *= 0.7f;
/ |+ \0 k! \/ G, T0 ^1 I9 q
pLight->Ambient.g *= 0.7f;
/ I! @5 D) `/ }, M7 m- {, S9 Z
pLight->Ambient.b *= 0.7f;
$ D( r9 k1 A# i" y2 s
}
+ q( {. `0 ]7 g* v; j
4 K' c6 z8 ^" `7 A
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 F* i- T5 R1 t" v+ {/ P [
if( g_pPlayer )
( _) `! y# B( t8 e3 o
HookUpdateLight( pLight );
0 ?9 b _+ g D2 ?% B# e/ K
#endif
, Q3 ~/ k! f% g2 c
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. k* i$ q% v: b A2 L
: j- E, A9 u) G- m3 {4 F6 L: V' v# T
#ifdef __YENV
; N( L& R v8 ~% _
pLight->Diffuse.r *= 1.1f;
! X1 t y) X# q, Q- {# z4 @4 t! s
pLight->Diffuse.g *= 1.1f;
+ y; h2 i% Z7 r8 W! M- z) x! {
pLight->Diffuse.b *= 1.1f;
' E# Z8 @9 F# w; B
// oˉè* ??à?
8 A: C, T3 K- _3 c: ~1 f
pLight->Specular.r = 2.0f;
1 \2 l i/ p9 p7 X1 u d! G1 U
pLight->Specular.g = 2.0f;
0 a; {* [- H& f$ _
pLight->Specular.b = 2.0f;
! t' K C. ]3 i! a8 G& S! @
// á?oˉ
! D' O$ V7 f+ N5 ^( s
pLight->Ambient.r *= 1.0f;
: j( C9 b5 y4 g) |0 G
pLight->Ambient.g *= 1.0f;
% A" @: c1 o0 I$ N0 F0 {% G/ Q
pLight->Ambient.b *= 1.0f;
8 T9 R6 e7 H2 V" T( Q
#else //__YENV
. d0 k) q; k, x5 V
pLight->Diffuse.r *= 1.1f;
: _$ I# a2 R1 `8 B
pLight->Diffuse.g *= 1.1f;
: `* w' J( L* F- u
pLight->Diffuse.b *= 1.1f;
3 y( |4 s* E/ h6 w) w) o( K
// oˉè* ??à?
$ }) W, Z8 Y: F! [8 \/ g
pLight->Specular.r = 2.0f;
# j, \9 J H2 a+ \2 j3 O
pLight->Specular.g = 2.0f;
! I% K1 O& c3 q; }2 \4 {5 R
pLight->Specular.b = 2.0f;
# p# B; _9 B% c \4 m, [
// á?oˉ
) K% D; D9 e6 f4 G' {
pLight->Ambient.r *= 0.9f;
! f7 x- h. C5 j# |3 L* S$ p0 k6 t
pLight->Ambient.g *= 0.9f;
3 o& g2 ?' X- x) h% D
pLight->Ambient.b *= 0.9f;
; |; H+ t" t) c7 {% c- ^
#endif //__YENV
z8 J( T, l& o' g2 D
* K0 I: ^. [; z: m7 G- u
memcpy( &m_light, pLight, sizeof( m_light ) );
& k. c+ h. c+ |' E3 U, R' Z5 t
1 b* d8 f( ?; Q0 V7 G7 I2 |2 p# I
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
! k5 o9 p& Q1 |) |; } y1 ^, l a
D3DXMATRIX matTemp;
% r; D. m6 c) m# {+ a; Z
static const float CONS_VAL = 3.1415926f / 180.f;
" n1 |5 I2 l: I \' r' @
& [& u+ ?" ]* N7 R2 s" `+ s# ^9 U
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
% f( j! ?+ h; H/ x# R& a
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
r1 Z; m9 v6 N. C' `3 }5 b, v3 l! Z% t
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
5 f3 X7 e% D$ V& x) I! z( u, u8 {* s
pLight->Appear( m_pd3dDevice, TRUE );
r, b% X2 @% `5 k( q; z7 Y/ {
$ L ?. F% X8 u9 f
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
- b& w/ v+ @4 t* a* q
// D3DXVec3Normalize(&(vecSun),&(vecSun));
4 m! p6 Q$ F% i2 m$ @
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 r/ V) p1 W% E3 p* ~/ a" e
, [, t( W6 ?$ P; L
DWORD dwR, dwG, dwB;
! M* v' F7 L, F% Z
dwR = (DWORD)( pLight->Ambient.r * 255 );
% r% o" n- j" m2 s1 z0 Q
dwG = (DWORD)( pLight->Ambient.g * 255 );
) ? R& v' Y+ h/ T- l* x d. ~
dwB = (DWORD)( pLight->Ambient.b * 255 );
* ]: k* ^" {. a4 _
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( F9 C) o" M$ ?+ E% P' G/ s! a, M9 F
}
3 K4 Z( p- y* J
}
# C0 O4 |" v, u/ X% q( b4 r1 B
3 T8 _/ l7 Y* F+ l* j) D5 @
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
, n/ _* m2 }4 B& N) {
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) );
; C7 g8 B& D) b5 F0 h
::SetLight( bLight );
$ a7 J0 r3 t u$ e) @+ F( ^. s
9 R6 G' |$ P8 U8 v% T* \! u
// ±ao? ?D?í???ó á¤à?
, T4 Q" p8 T: f# T) L. H& Z
m_pd3dDevice->SetMaterial( &m_baseMaterial );
3 X7 e1 M# B( H$ y
# n/ ?+ i( y N! V) V/ O: X$ B
#endif // not WORLDSERVER
5 i( H6 F% D; C+ b$ a
}
/ P9 U: W8 a; x3 \+ P( g4 ^( N
并更换
# M8 j* N% E- c# m: V
Code:
# r# B6 X9 j7 N* W" T, N
__FLYFF_INITPAGE_EXT
4 o) @+ g* U8 u, L
定义
6 G" E- q! t7 S A( X" ]
: f/ v g) K! G: I( N/ J
" C p( W4 ^8 j' ?% N9 H
7 A5 g5 n, U/ a' }
* p, ^7 `1 o7 @' R/ h, o! o+ S' D& B
现在终于删除我的狗屁加速...
8 C; P5 |7 W. P( _# r0 S8 p- x; R1 q
4 ]% F) R+ s) ^
4 r9 S( y2 A) R6 Z: f7 X
/ J) R1 o [* R, v0 E* e5 |
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2