飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
: B; ]4 [2 C; d4 |" p8 C0 s) Z$ J+ v+ o
尾翼:
* b+ c3 R2 q# S* n" r9 L' n
$ u/ R) }& _. B9 c {1 M
代码:
6 H) ]) v7 a1 I
CWndAutoFood::CWndAutoFood()
7 c- E* y3 D& ~! B9 V M. |
{
3 A5 j% @0 ?/ i' i- C0 @6 X2 l
m_pItemElem = NULL;
2 v2 Y$ {% J# r9 t. q8 k
m_pTexture = NULL;
5 B1 |# ~) ?" k# t6 G
bStart = FALSE;
# y! `$ ^ {# `+ Z0 N
}
5 q i* i. d0 h" F/ R: C
9 e. h+ d( q, T, d, H$ V7 A/ T9 r
CWndAutoFood::~CWndAutoFood()
# e) ]2 d' ~# |
{
, D9 `. q9 e; a2 b! S3 ~) W
AfxMessageBox( "AutoFood ist gestorben
" );
. V: ?3 ~0 |2 B/ h( p/ x0 o
}
8 v) l% f4 e4 B# h2 B, C$ X
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
5 g! y' W) s" b0 s! Q
{
+ G) E2 y" B1 k9 L; g2 w3 w
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
% G4 I8 _: B: S5 s0 @% o0 ]
}
5 ^6 `7 S: o# W" |' P! N
# M. i; }1 [$ o7 H' q) [
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
$ X- C, w( A, |4 S. N' N
{
8 h2 [2 O/ r y% @0 z
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" t W: u1 r. \$ @: j
CRect rect = pWndCtrl->rect;
0 {& Y1 ?3 I2 i+ O, F1 a. z
if( rect && rect.PtInRect( point ) )
. G. d; Z! l, i0 Z- R* }
{
! [$ p9 ]' }5 |; U0 K
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
' x/ g, G+ y( ]; Y! H
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
/ |5 [2 O% J0 @) \3 H- I
{
! O7 z. G' j& I2 @) D7 Y' w6 i
if( m_pItemElem )
% w* @/ X* T* r5 v* O* V4 |$ ~, [
{
& x$ n J, \4 z. E
m_pItemElem = NULL;
$ j6 j. M1 t _- D7 ^
}
p5 P: n* |. {& I6 M+ k
m_pItemElem = pItemElem;
4 O7 u7 k. l# P. R7 Q
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
: H$ `& z$ Z9 {9 a$ A1 N
}else{
0 W3 o+ p" g% R. P; a" X) ]
SetForbid( TRUE );
+ H9 }' w' o% T0 F5 L3 O
}
+ C" p- Z F! z6 i
}else{
) C8 p( k9 ~2 q- H* X
SetForbid( TRUE );
0 `6 G7 c; v. ]# F1 y
}
$ l. l8 x# S( V8 U
return TRUE;
' r/ A% j/ b s! b1 r0 M
}
% P% T& [ M* f3 b. z- G
3 W' c3 _( @3 E$ R
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
( ]8 F- A2 R4 ?8 c
{
& @- z$ b: Y+ P+ _4 [1 X
switch( nID )
$ h5 w* D- \ j! [
{
+ ]4 n1 c0 p$ N0 x9 a2 ]2 Q. \
case WIDC_BUTTON3:
+ N# S- S& C, }6 j- R4 Q
{
- C% O1 ^! U' g' Q- z
bStart = TRUE;
9 C* K2 s6 j& D: Z: U( C
break;
2 f9 `$ j" P+ N: [) Y. M" R
}
8 O: n( h# T/ c+ }8 T5 w
case WIDC_BUTTON4:
0 b8 ?& N7 C6 H& ]) T
{
$ l" r: U% T3 B' F
bStart = FALSE;
, L9 c& p9 d2 J( x3 b
break;
9 A2 Y* B5 Y" w' P
}
/ b4 C7 [& K/ R o
}
, { p* z, [7 B; z: c4 W
return CWndNeuz::OnChildNotify( message, nID, pLResult );
7 y2 y6 ^: b8 n$ l
}
! @2 R) q" D5 @+ n- e4 T
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
/ G+ r4 G% f4 C
{
# u% L! S6 p/ T- K7 H$ i
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
: R0 v* ]4 _& N3 i1 l7 _7 C
if( bStart || !m_pItemElem )
8 ~: L* ~8 t' u
{
+ C* A0 g7 Q0 x5 r
pBtn->EnableWindow( FALSE );
* @. W. a/ B8 K2 W6 v2 [. o
}else
: S" }8 ] ^& D r
pBtn->EnableWindow( TRUE );
5 Q8 H* {- W2 g; P; m0 v* C" w
if( m_pTexture )
. k9 }) {, C9 w9 M2 E/ }9 d
{
/ |6 b6 V& A" F5 k
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! U5 U5 H7 m$ G/ S2 m1 r
if( wndCtrl && wndCtrl->rect )
% s+ U8 m9 c+ w0 N
{
3 A9 U$ H8 K8 e: a' n
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
' U- n4 G. u6 G5 B' u% [
}
1 p$ P. Z" E% W6 _, ]
}
2 {2 K: F. R% x2 z2 ^" K( ?
}
# C. C3 O+ _' y! g; O/ V
$ O4 o% e* E: h% |, G5 X# ^
BOOL CWndAutoFood:
rocess()
d- D9 w/ M% ?6 s$ `* y
{
' J) B$ I% t" Q
if( bStart )
5 c. ?0 [& B. H9 a5 k7 T ?) Z* k& j
{
( v( q# e6 {' d ^
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
/ m" N) P# c6 s5 D( W
{
/ c( w/ E, [+ _
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
6 F$ n3 D, l+ I/ c1 |% B
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
, E' o$ {, D% u
}else{
8 r$ J Q) _6 D. T
bStart = FALSE;
; q' v7 o& R+ U- }+ w% A
m_pItemElem = NULL;
8 D8 M: r% E0 M0 P) R, X
}
c3 u: B: N$ r2 u' U
}
7 k7 G$ f7 w' N* g. e
return TRUE;
* }, ^/ ^& `+ w
}
, T, ?7 \4 v$ }# v K
" ^/ ^$ F" `8 J. h5 T3 r
登录视频废话:
, T1 `# u. L: J( M/ Q
尾翼:
# B6 E H, J; L) M% M$ A
4 I9 o* t% m- c: p$ n M
代码:
4 @6 ] T( a2 t3 f9 U9 y
$ z, V' `# }- {2 x, y* _
void CWorld::SetLight( BOOL bLight )
O9 [6 J- y$ c4 w$ S4 j2 l3 _
durch
3 Q: H5 g6 N/ W2 q# d
Code:
, T* i) V' b3 W" ?( e
void CWorld::SetLight( BOOL bLight )
/ ] t- s; N0 t" t2 e5 K+ y" ^0 T$ V
{
^. S' P! n! |, U
//ACE("SetLight %d \n", bLight);
0 t G7 T6 @' `2 T
K- u! }+ G5 g& w
#ifndef __WORLDSERVER
' M# y0 S4 u$ c. T7 R6 |
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
1 x9 E$ G: A' T3 S9 W! B' Z
CLight* pLight = NULL;
, h# k" L7 f3 R6 t6 s$ ^3 a
& S1 k7 C8 _6 O' n! \3 M
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
( @0 C, V7 \! b4 e7 V4 f
5 @9 q) ^$ j9 H9 V, J& w) g: B
pLight = GetLight( "direction" );
u9 s! P! Y4 {+ t2 V
! n- g6 R/ {$ e" l0 G6 w! V
#if __VER >= 15 // __BS_CHANGING_ENVIR
" D/ P9 n2 f2 }5 f2 r. C+ J
if( g_pPlayer ){
5 X; ]: i& R. Q1 q' z
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
" Z F# ~4 V' H4 y6 h. l) r$ J1 |" J6 M
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
" k" }' ?0 k6 u+ g. V+ F- w) X
{
/ k9 s% e I; \4 B1 r% E: k8 |
if( pLight )
! Z+ a3 E7 A- X) |
{
5 H6 ]0 @- s: f5 A
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
4 M9 \' g2 `& Y8 f
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
% U* ~8 W, P/ B
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
' g2 u& L% a' O) s* e% {3 i
0 X+ t8 L2 r* r; `8 y1 B: e5 I
pLight->Specular.r = 2.0f;
5 a( H" N- i* H- n
pLight->Specular.g = 2.0f;
* n" c1 ?# b& c$ M: d- }
pLight->Specular.b = 2.0f;
/ H9 o# J% r6 w
6 Q! C; ?. c& b
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
' }5 J3 n% ?/ s [
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
( r8 b: E# z' X5 p, V4 |
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ D3 b4 {; e2 I; K0 ]
- w4 r. u. v2 E* q* f0 z) a, R# x
HookUpdateLight( pLight );
0 w& F* `2 U5 W7 {2 X
: a3 A0 [& m. y( ?# ^3 k6 d
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ M+ O2 ~) b6 g _% `
7 i; @7 M8 d3 v6 g6 m
pLight->Diffuse.r *= 1.2f;
" v: s$ U) E# S* T% R. E; n
pLight->Diffuse.g *= 1.2f;
! h; J& M7 u8 z# {6 N; c
pLight->Diffuse.b *= 1.2f;
: w: i/ H6 d3 i3 r
8 C0 ^, @* Y7 J6 L! B/ k
pLight->Ambient.r *= 0.8f;
: k# W5 V. A( g6 O6 s
pLight->Ambient.g *= 0.8f;
; O @8 T' g0 k* F0 d( V$ Y
pLight->Ambient.b *= 0.8f;
" l0 y) W% N5 c, l# r
* l$ q3 _ b; _2 x/ z# R
memcpy( &m_light, pLight, sizeof( m_light ) );
6 \3 Q* l% A, l. G+ U
7 z2 P& J7 [; U7 {% [, |8 J/ ]: z, o
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: [7 J! p: a: A: `. B
D3DXVec3Normalize(&(vecSun),&(vecSun));
% J3 U7 h6 o6 G& |8 A
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) J9 ~; l1 k3 Z3 |) x5 A0 M5 i) l
pLight->Appear( m_pd3dDevice, TRUE );
5 c9 q3 @7 G: g& a
$ g/ y% n1 }. Z8 g
DWORD dwR, dwG, dwB;
. H+ R" q5 g' B3 r% L
dwR = (DWORD)( pLight->Ambient.r * 255 );
) y7 x/ B# q g( x
dwG = (DWORD)( pLight->Ambient.g * 255 );
& K7 p2 F0 e5 O2 ?& C+ k& I
dwB = (DWORD)( pLight->Ambient.b * 255 );
0 n' g" I* `6 V) s% ^
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 e+ t* j$ b) i/ [. r3 m: T
}
6 X. k* K' O: k9 O0 ^( b; J9 N
}
" s% q8 @5 n1 G# S0 q
}
0 [! r6 s: l1 m
else
% ?6 C4 i" c* X! i" v
#endif
* e# l7 A) `' |
4 B- w* E9 D" X
if( m_bIsIndoor )
[. R4 A$ W: I' M
{
! g! J1 u6 s3 ]6 G
if( pLight )
3 d) Z+ l( V4 l. C* P
{
2 O0 q& D# l7 }* f4 P4 ]
// à??μ oˉè*
; c& Y/ n8 K! A+ P8 n
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
$ Q3 L( \& A' A1 d2 O* L; }
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
! y" a0 ~' R, c% C* B' W1 W4 P
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
: c& v6 w. m0 h! ~+ t. @( y
/ F/ V/ I: A7 p# C
// oˉè* ??à?
8 f/ p; W; C1 t1 I0 ?/ U
pLight->Specular.r = 1.0f;
' U$ i# f, \+ t, S7 D
pLight->Specular.g = 1.0f;
, m# o1 S; T- |# M. J
pLight->Specular.b = 1.0f;
% E( X- n$ ]6 h4 O
// àü?? oˉè*
2 X+ B5 q; X' Q. v9 b! y
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
) L! D- B- J: \$ q
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
, a @( \& p3 r- S1 _
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
1 R( w; t9 H" o7 {% v
z$ b& A+ n! t! b; v7 D
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
( }; s, F9 [! a
{
; w6 N- [% x0 b1 f) M1 j
pLight->Diffuse.r *= 0.6f;
3 A& O+ q! l+ Y' u E
pLight->Diffuse.g *= 0.6f;
* @( c; w2 ?- u0 y6 {1 f' R' c
pLight->Diffuse.b *= 0.6f;
* [% D- s4 c) Y
pLight->Ambient.r *= 0.7f;
' B6 D# E; a1 n* Q h0 ~! p8 P
pLight->Ambient.g *= 0.7f;
1 c: ?5 L9 I6 C' y
pLight->Ambient.b *= 0.7f;
6 @' _2 H$ r) X {2 |. U) k
}
0 C7 h/ L3 Q7 h) c! I7 E
5 _4 M. d* D5 K$ U
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 j. I# ~% U# t/ i8 Z; |9 T2 e
if( g_pPlayer )
" t, X1 T& ]- l" @9 m- U ~* t
HookUpdateLight( pLight );
( q$ |, i) c5 P. f
#endif
/ O' U: D3 b& k& m3 v
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" g- T. [' s( v' h7 F
3 x6 d$ Z$ {# H1 |
pLight->Diffuse.r += 0.1f;
* f2 {& ~$ ^) T- w+ G) m
pLight->Diffuse.g += 0.1f;
( p, ]. U6 g9 H7 S6 b
pLight->Diffuse.b += 0.1f;
* R) B' i! K$ R4 l/ Q$ P% q
// oˉè* ??à?
4 [% X- ^+ H( {1 _. n
pLight->Specular.r = 2.0f;
' ]! p# W9 b6 X
pLight->Specular.g = 2.0f;
5 ^3 {/ A. c9 f$ j
pLight->Specular.b = 2.0f;
5 s5 S. s% ?* M3 B- z% J& Z% C& p5 m
// á?oˉ
$ Z5 g! ~" ~$ M8 W& A
pLight->Ambient.r *= 0.9f;
# ?- L( L7 B( i# V. @' S& q4 {" s
pLight->Ambient.g *= 0.9f;
2 {) |& m% P, K# K5 L* k
pLight->Ambient.b *= 0.9f;
0 g7 T" z+ @8 l' Y
; x7 I1 X$ {- G' i% Y% Q& b8 {- x
memcpy( &m_light, pLight, sizeof( m_light ) );
8 ^; e3 i7 ?+ |9 I9 z2 E( @& k+ t
1 m1 }* A, n) o6 p0 ?* L/ A
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
3 O! K/ f% m! i1 W+ j- G1 a8 m0 v
pLight->Appear( m_pd3dDevice, TRUE );
& e* [' j; e: ]! T: y- T$ u
' _( s, Y* ^) a- X4 p: h5 W6 f
DWORD dwR, dwG, dwB;
6 D7 E8 h- G& X3 L. p, b
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 S/ w- B1 p- [$ Q s, @
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 W; l9 x, _/ [9 W4 d5 F4 I
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 i I4 }, [8 ^0 z4 V
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 Y: R8 U P+ H
}
* q1 p) K& o- _- }" z
}
e: t, c" ?( I1 F9 M' w
else
_# s( ?$ t3 O/ c& u
{
$ J4 J; }! f( {) \9 K# f1 l" ^ G/ ]
if( pLight )
7 Q) ? S7 I/ H
{
7 H4 k9 U' N i
Q* R3 x5 g# U4 I: z. K0 o
int nHour = 8, nMin = 0;
+ _- \$ W* r2 t
#ifdef __CLIENT
8 C, G" w. u# Y; B) N+ K2 U1 o1 S% }5 I9 e
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
. [, N/ O8 s8 D. [! i% o3 @8 V( F9 c5 Q1 G
nHour = g_GameTimer.m_nHour;
$ m* U! y+ x+ S: q5 g- ]5 ^
nMin = g_GameTimer.m_nMin ;
1 c5 ?; c* s, K6 e0 m2 x
#else
3 r4 R9 Z& C2 I( Y
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
9 I( f* H) }- [: U" w
if( m_nLightType == 1 )
& I0 b- G) T. b4 t
nHour = m_nLightHour;
# C7 x- [- J$ T1 q- F
#endif
0 h' K1 |2 j. {. B' N! U
nHour--;
9 H. I" F3 z8 Y* s. K* a L6 K
if( nHour < 0 ) nHour = 0;
$ r7 J I3 z5 |& z8 C
if( nHour > 23 ) nHour = 23;
4 L; a1 `/ a+ D7 H( V
0 L$ x. f/ K9 g0 t _
//if( m_bFixedHour )
/ r8 V a. G) b+ X" O$ F
// nHour = m_nFixedHour, nMin = 0;
, l+ s* U( K) @
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
+ i: c$ t4 p* @9 ]) A" l
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
/ I: \4 R) S* w* R
! s ?9 W$ Q. e7 w4 Y
//m_lightColor = lightColorPrv;
; m2 t4 c% n5 E! Y9 @ ?7 W1 S
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
0 d/ P7 S$ t0 ~" g0 i
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
4 K1 E$ E0 p5 r2 ?& N$ u3 ]+ p
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
# h8 e, _! h8 m1 T( K4 t5 o7 r! \
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
5 d+ N1 ~5 r' }3 x/ }3 t$ ~6 t4 |
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
c5 E+ A7 B& a* o& p: M
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
. v3 f9 L; E4 [- W
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ I+ a+ x; S& Q1 k! [! |7 L2 @2 v6 o. {
) a( N g* G9 ^. t4 g
// à??μ oˉè*
$ C+ k# r8 i3 ~4 m" W* l
pLight->Diffuse.r = lightColorPrv.r1;
* h% N o( w) ~& s
pLight->Diffuse.g = lightColorPrv.g1;
* ]7 g6 g3 {. v" t, @2 x, ]
pLight->Diffuse.b = lightColorPrv.b1;
; o( M7 Y% q, e3 s& [
// oˉè* ??à?
6 Q) Z' Q: o B# }
pLight->Specular.r = 1.0f;
% B% j- X! n3 y! g' S. W
pLight->Specular.g = 1.0f;
: r( E5 w4 @! H: e: v
pLight->Specular.b = 1.0f;
8 N B5 ?5 {/ c7 H3 {9 U
// àü?? oˉè*
6 V$ ], y) m6 u+ D2 @
pLight->Ambient.r = lightColorPrv.r2;
. y9 J/ w& M6 G9 B9 V9 s7 w
pLight->Ambient.g = lightColorPrv.g2;
( f" W: Q/ m1 Q. O
pLight->Ambient.b = lightColorPrv.b2;
+ U5 }8 D) I. s: I1 v$ u
& b0 Q; _, \2 k7 L- d7 d
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 W# |. D3 @! G2 Q* @& d
{
. p0 X9 V- g. f! J9 e
pLight->Diffuse.r *= 0.6f;
4 h. P7 Q# F& P n* i' R
pLight->Diffuse.g *= 0.6f;
& v3 }/ y( q5 |& \" n/ m" w
pLight->Diffuse.b *= 0.6f;
# K( H4 V8 _9 S. i$ i }! a
pLight->Ambient.r *= 0.7f;
! g- f1 I* u& Y l( k2 R
pLight->Ambient.g *= 0.7f;
2 @& c# S. ?! |7 [: P% c
pLight->Ambient.b *= 0.7f;
1 R" H& T: [# `
}
& t/ }/ l2 ?8 I0 H! b" _
( S, D+ F% m9 |$ ]- B, p4 G) ^! j8 h
#if __VER >= 15 // __BS_CHANGING_ENVIR
: D5 e4 l6 T/ }: r1 d& F% e
if( g_pPlayer )
" F) f( W# @1 f2 R) v! \9 I
HookUpdateLight( pLight );
# M) g7 R, i( e, F9 J! l2 \
#endif
. P3 A( g$ X% Y( v) q; t- _
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) R& B, F' h+ {) B( h
* u% q, D7 f$ T, y( D) V
#ifdef __YENV
% t1 Q! | p& Q$ g! |5 f
pLight->Diffuse.r *= 1.1f;
8 w2 h- S3 ?( c% i
pLight->Diffuse.g *= 1.1f;
2 ?; r4 U/ I0 a1 F) u5 V1 n
pLight->Diffuse.b *= 1.1f;
) K7 m6 G; S* ]) D* _
// oˉè* ??à?
: ?# q/ K9 `3 \. R. v
pLight->Specular.r = 2.0f;
) t: i( ~# x. N$ `% z9 \7 |
pLight->Specular.g = 2.0f;
7 B( i. w, u% l* O
pLight->Specular.b = 2.0f;
' o+ e6 G8 G* Y- c5 t. K7 X
// á?oˉ
! y; R4 u5 K' p1 R
pLight->Ambient.r *= 1.0f;
- T( s$ W; W, y6 p2 e: o, I8 Q
pLight->Ambient.g *= 1.0f;
) }9 v- x4 R8 m/ d( G
pLight->Ambient.b *= 1.0f;
" G$ P" z+ I( d: z
#else //__YENV
7 C- ?3 k. S& ?9 z+ F5 i5 g1 B
pLight->Diffuse.r *= 1.1f;
0 b: ?0 w& T9 u! F1 g$ O
pLight->Diffuse.g *= 1.1f;
8 L4 `( l h0 p
pLight->Diffuse.b *= 1.1f;
z* Z7 [, x, w% V
// oˉè* ??à?
; g3 \8 F8 F* x0 A- e
pLight->Specular.r = 2.0f;
$ Q; k j' g# K( p( J; A
pLight->Specular.g = 2.0f;
; g1 H) N8 m7 W/ B1 M
pLight->Specular.b = 2.0f;
3 r, R& U: {& w% p0 ~2 O' V
// á?oˉ
' z( m. d! o4 r# q# r
pLight->Ambient.r *= 0.9f;
, l8 {! Y& M' w4 k8 Z! A9 n
pLight->Ambient.g *= 0.9f;
3 m% ]4 T( z# u8 Y& @8 [4 U' s! C
pLight->Ambient.b *= 0.9f;
) K+ }9 \( R4 I" Y! P1 [
#endif //__YENV
7 T4 i- {5 n: H' b
" Q9 ]* h7 @) i( g f( Z
memcpy( &m_light, pLight, sizeof( m_light ) );
P, w# U _* b
- Z0 [+ e1 v% `7 S E: r) _1 u
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
: v. s% r: M8 \: V5 K
D3DXMATRIX matTemp;
. [) j1 d! [4 a Q( V) |+ ?
static const float CONS_VAL = 3.1415926f / 180.f;
" ?+ E9 S) J! v) O- {$ \
( {+ r! f# y4 w( j/ i
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
6 f- T) [4 R! ]7 n# G; \
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
. v4 j# ]* |2 k8 i2 D0 h" h
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
; T- f6 E3 A P2 u6 d& p2 H
pLight->Appear( m_pd3dDevice, TRUE );
6 z5 T. a6 E; P- q# X; l' }
! ~% e7 d3 T) A
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 ~) ^" d: v4 H6 ` z6 E, I7 k
// D3DXVec3Normalize(&(vecSun),&(vecSun));
0 K" U" f! @* ~2 \: E9 K5 n5 D4 O
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% P8 `0 ?4 O" L9 u
8 S0 ?9 J8 q* t0 S) T; I2 o
DWORD dwR, dwG, dwB;
' I# b" d+ U h
dwR = (DWORD)( pLight->Ambient.r * 255 );
% ~. m5 i) J% G0 a
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 v& h. o( k! f i( V0 d
dwB = (DWORD)( pLight->Ambient.b * 255 );
( @- J( v6 R! h% V7 E
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* X& i4 t) k9 R& k- d; ]( }
}
! k1 m6 q8 J; S6 z2 ^6 J
}
" S2 M. w& m" P, X8 s# F) _
: Q$ s4 k2 k8 ~) K1 l0 |' l
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
. S: z4 w- {0 W! r5 P3 X$ E# E
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) );
3 Y7 |' y* ^2 A: q1 Z
::SetLight( bLight );
) r0 z, ~7 F9 O% i/ I# I* f
4 E4 J/ r! o1 w* K. R
// ±ao? ?D?í???ó á¤à?
5 d. W4 E$ S$ s9 h
m_pd3dDevice->SetMaterial( &m_baseMaterial );
) f, w, l4 w4 H$ ]! Q. C* A2 ?. }
8 D, _7 |. `) V5 X4 b- _7 H" D& s2 v4 e
#endif // not WORLDSERVER
0 p8 U: m/ C8 Q8 J
}
8 l# P. F% F5 Y' |" I, `
并更换
, `% t; \. f7 L, P6 x
Code:
7 }9 l5 f, R2 H- |3 h# N6 v6 [
__FLYFF_INITPAGE_EXT
) [, Y) b# P1 R8 [) h
定义
+ C: R9 e: l E. b: } c
! ^# d& M, n* j2 o% [( O) t& W
& v$ W& G8 F Z, `7 }" t/ x8 u
6 O' I- ~% c" H& H
; Y1 v! h% K# o# M6 }
现在终于删除我的狗屁加速...
0 E k1 H5 J9 p( W5 x
# s3 o+ w$ K1 ]" s3 L: ^- i
) j5 g, ~; R7 U% a/ z- K( w
3 k! Z+ S3 ~) k8 T% U7 }6 U
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2