飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
( J( z" p) X7 R( _8 R: E$ W6 @
尾翼:
, a0 d3 [: T/ f6 m+ m$ n
$ @3 ]4 l1 r0 B5 H# P$ A! L
代码:
. t' d% Y2 C( H6 N! w2 J2 O# z- _) G" c2 H
CWndAutoFood::CWndAutoFood()
) P" I2 H+ h- x9 u5 J0 S4 W6 c& Q
{
3 m- h; {+ d* G' e0 P
m_pItemElem = NULL;
. N {2 Z7 G3 l! G) Z
m_pTexture = NULL;
0 v2 c8 k4 ^$ A6 n4 D
bStart = FALSE;
x U% e: X) h$ q& i9 z7 q
}
$ ~5 X& C0 w* `/ u5 s1 F2 i8 x
8 n* a2 G9 T, L) J
CWndAutoFood::~CWndAutoFood()
4 V4 }4 U# x2 E
{
2 W1 ~! m! M( c5 A
AfxMessageBox( "AutoFood ist gestorben
" );
4 b& c4 T. i4 E3 ]. Y
}
( Q& h+ a/ h1 {% P4 E% s
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
" k; Z0 ~9 z0 _
{
" B3 A" m- A v' n8 h8 G
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
9 n* V2 k% y" G: {
}
$ T: ^; j! D6 w% D4 x0 b6 w! h+ s
: ^! C! n! }# V- G7 |( ]
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
6 D8 t$ J6 b5 Y
{
8 w5 l4 a1 E: o! s, L- `: Q( K
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
% [* o" M/ z3 j8 W/ L2 ^8 K
CRect rect = pWndCtrl->rect;
# }7 [0 |+ d/ p2 k
if( rect && rect.PtInRect( point ) )
7 A& v5 a7 O0 j
{
$ Z$ L3 j4 w( x5 T+ z/ M/ C: z
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
7 \, X9 p: b0 h+ |% d- u! B' i/ Q
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
' b" c l7 z: n( A# }
{
% Y3 Z, `; N2 X8 S- Z
if( m_pItemElem )
# S; ]3 d, v6 T+ d" t7 e
{
$ \! D& {: ]. f4 C4 I
m_pItemElem = NULL;
$ u6 H0 U, }, f! g( c
}
( r$ U5 t" M# r9 H4 P1 }/ ~$ |" Y1 b
m_pItemElem = pItemElem;
# ?6 j' o2 E7 Z
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
/ Q: ^5 g4 z; Q9 Z% z" k/ h: n
}else{
1 r( O8 V$ e& p% a
SetForbid( TRUE );
) S% {" ^. B+ S1 K5 w9 [, Z
}
! t) O( j+ r9 V8 k
}else{
- r X4 E$ m! j9 ?9 u9 T
SetForbid( TRUE );
: ^: ~6 f# d- n; \
}
9 i' w# b: L9 M% [2 v
return TRUE;
/ v: }7 A/ q1 {) o7 z) S
}
3 I3 P; a& ^" Y
8 t( r* I$ M; b& U7 g
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
R6 u3 C( q- g& K Q
{
$ ?: p0 F& f) @
switch( nID )
4 }7 Y. T7 x$ X% j
{
8 t& y+ D: B" X8 `) }/ G
case WIDC_BUTTON3:
8 H5 V# c8 D8 S- N4 Q, j( N9 K
{
4 x3 | ~8 ~+ N0 t# i2 f
bStart = TRUE;
0 O# M& O W6 s4 k9 R
break;
+ E1 t! e/ S; p. ^; O) T
}
; n& Q' {: k% e; u' S5 e
case WIDC_BUTTON4:
3 U/ \. h N5 s
{
" a2 w7 V1 `3 a' i4 a3 Z
bStart = FALSE;
; h; L- h) K# M6 U. z
break;
3 j+ c6 y5 [% \& G
}
: a* [9 _2 Z" ]* n+ `: W
}
; W$ q+ W. w/ S5 K& y
return CWndNeuz::OnChildNotify( message, nID, pLResult );
8 l! ^7 G8 `& z1 g, U) q
}
) k I; u" |9 ^7 o9 ]# `2 ]0 X9 V
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
; N' R5 I- [3 N/ C9 |
{
- f6 _* F1 R7 h0 r. X. i) i
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
% Q7 c* ?9 {: }. |* A
if( bStart || !m_pItemElem )
; o9 G) }; m9 `' g
{
& h b4 [5 k/ {8 L, x/ c
pBtn->EnableWindow( FALSE );
4 y) n0 X- x0 F, d
}else
& I; h0 I6 |1 G; d k7 i
pBtn->EnableWindow( TRUE );
: R- m5 z9 k& E R/ ]
if( m_pTexture )
" n3 J# N- n- v1 B/ R' y$ X3 D
{
P0 u$ R* C1 `$ f% d
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
) K; W$ L. Q6 R1 i: q/ D
if( wndCtrl && wndCtrl->rect )
Y* S: u/ V: m# Y: {& e$ |3 J
{
2 E1 s; ]$ ]/ N
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
! u$ Y% ^& Q8 e3 a1 Q; Z
}
9 b O) G7 f% }1 r( ^
}
0 t& P/ ^9 X1 R4 C% e; P& a
}
8 H' H% P; @+ p6 k- x
& W3 l6 E: n/ i( q; P
BOOL CWndAutoFood:
rocess()
5 l6 x$ L9 C* | L8 w* P8 f: Y
{
0 p; R% ^ K+ q, v- k8 h
if( bStart )
: L2 ?2 J' k3 v
{
; ]2 L+ x0 e! F$ G8 w. h- l
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
6 m0 X- J* S" k
{
3 v# h% l" X V- [' Y
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 w6 n2 r; F; A& V
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
% l1 U% u2 C$ q' x0 `
}else{
& ^: @8 p" T6 i# Z2 O- d
bStart = FALSE;
$ S6 t) H E" z7 y( r
m_pItemElem = NULL;
5 ]; Y) X+ A4 R v; m/ C
}
* G0 C# [6 T6 _3 Z) ?" R
}
5 |# `; k. y2 L! I) [. ^
return TRUE;
( W4 [- O( A+ | H
}
3 y& M# q. M' e
4 y' b" {+ w. x6 I# G% m8 K. B
登录视频废话:
3 a9 _ O/ ^& t* i/ }' l) E d
尾翼:
2 z; t. z4 {$ U' h" O* M- Z1 _* a
8 G# ]+ F4 m. n- V" a. }
代码:
+ f4 Y/ J5 r* P% C
- k6 ]" r; d% ~- l5 X( O3 k
void CWorld::SetLight( BOOL bLight )
- k/ {7 L, `: a
durch
3 n3 a; Y/ t6 K$ r
Code:
1 _! m1 a& V9 K) L0 ^
void CWorld::SetLight( BOOL bLight )
o- @. F- K( r! z# d; C( S
{
u) I3 f' M" \. a% B& `2 s I
//ACE("SetLight %d \n", bLight);
! \/ L& d0 B3 S7 i* [% \
6 I* O) B/ ]/ I! Q- s$ B' Z
#ifndef __WORLDSERVER
- P9 G5 v5 [& H9 f( E
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
) ?1 Q1 F, R' R" Z3 U5 L
CLight* pLight = NULL;
. H+ Y- q/ k& k3 z
2 T$ v: z3 D/ Y& k$ Y8 K8 F4 E
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
2 h/ R0 i# E5 j$ f/ |
/ M$ ^& E' a! n7 J# p5 w* U, A- H
pLight = GetLight( "direction" );
0 R8 R# U) s* j0 F% W( I6 H7 |4 G
, A" g1 Q" s3 A: g
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 i- z2 i$ P8 ^0 Y4 u: \
if( g_pPlayer ){
9 _4 p4 ?4 S. m
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
1 z$ U" Y. G* h& U
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
4 |2 \7 Z- F7 w7 \2 O1 A
{
* b1 m. p/ x0 j5 k7 @3 i. W' x6 K
if( pLight )
! |% t; {4 e# U" J6 G/ j
{
& a: t% Y2 r/ U6 e
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
; q" m! y8 W5 h, t
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
. ?; B' v w: t; ?# D
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
9 a7 V [( }; A$ V; Z: \! Z3 J6 B
& j: C" |5 ~: N
pLight->Specular.r = 2.0f;
# n! f1 [3 v1 Q, A1 K1 ^4 d
pLight->Specular.g = 2.0f;
3 _% U; d, ]' ?7 p% r* h4 P
pLight->Specular.b = 2.0f;
. N( ?6 a9 _/ C* i {" y
9 M6 T5 _+ S3 \! [
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
4 T% p f6 D$ K2 @) y
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
3 I; w ?1 G, y- h
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
; f3 E' s3 P; b9 t! J
$ ] _. E" _2 O+ J/ k
HookUpdateLight( pLight );
2 t/ f. p* U1 m% Z+ P& ^" D7 B
3 c, P2 i* v5 S3 E
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 @0 C+ T$ {9 ?& D
/ l( d' {) }# A; D
pLight->Diffuse.r *= 1.2f;
/ o8 g1 Q& @; \; G+ @% |
pLight->Diffuse.g *= 1.2f;
) ~2 H2 i; z5 ?$ R; G+ B
pLight->Diffuse.b *= 1.2f;
: O0 N# }) W4 h8 G# u# U
! T- e) i" K* G @2 G
pLight->Ambient.r *= 0.8f;
7 R" Q% ~, L7 @5 r4 j6 f2 T
pLight->Ambient.g *= 0.8f;
' t, \4 `$ s/ ^& e8 L
pLight->Ambient.b *= 0.8f;
0 f/ ]( ?2 u4 Q) X
6 Q/ x* _: Q4 B. n
memcpy( &m_light, pLight, sizeof( m_light ) );
# w( L- m% X2 {( ] V6 p- ~: `
+ B* v: b! ^& t9 ?0 V
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' c5 {$ g3 W/ ~) L. e8 I# Q. s
D3DXVec3Normalize(&(vecSun),&(vecSun));
: f- e" s( a/ F( o
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
& `" ?- z1 G8 H4 |
pLight->Appear( m_pd3dDevice, TRUE );
5 l# d8 o3 F2 Q( o( j
7 l/ c* V" P* K
DWORD dwR, dwG, dwB;
3 a% H+ I8 [6 e# z( W
dwR = (DWORD)( pLight->Ambient.r * 255 );
& B9 A0 ?4 T/ p! ~3 g
dwG = (DWORD)( pLight->Ambient.g * 255 );
C" W0 `1 @& I7 T5 L0 b/ [) W' j
dwB = (DWORD)( pLight->Ambient.b * 255 );
* Y/ {5 T# G3 u; P% X, b0 t/ [$ O: P
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
7 ?( B1 B8 ?! u- a/ h
}
5 z9 h- T1 A, c6 v. Z
}
- N: z' Q3 s- O; z; ? G
}
! m3 y5 u! ?( e: ~3 `
else
3 w* M- r0 Y( F
#endif
+ H8 Z2 {$ b" p; B7 t
5 r1 K, E) U# @( i) q# @
if( m_bIsIndoor )
& z+ Z$ b# D: t9 _, x/ X
{
z8 \' \. X- _, }4 W
if( pLight )
, c3 N" X) [6 c- \' X4 X
{
0 M! }4 G( l" u. k0 R% ?3 S
// à??μ oˉè*
( Q, ^4 E/ G4 n, q* D- F
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
' e& M& s7 l1 u8 q' D
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
! l* o! G f5 k" H
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
+ v% I9 S) N# Y$ g' d, _
4 A# J7 \0 g w* _
// oˉè* ??à?
& n" I/ ]$ R* n% T7 c
pLight->Specular.r = 1.0f;
; f6 r/ v# X% t2 v: ^
pLight->Specular.g = 1.0f;
( M U _" ]/ a# |2 \1 K
pLight->Specular.b = 1.0f;
# U! A! J" W# x9 Z; @
// àü?? oˉè*
8 k/ m: S; W! ]* E. s! Q$ B* \7 B% k
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
; ], E( }6 F& A) t, h2 a* E! e! Z" z
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
3 f4 E5 d: x) n5 f+ H& S1 b
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
: V& S# L9 E8 n2 K, t# T' X+ Q7 A
2 H% j1 {' [4 F3 Q. X
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! h* E) H- M) y/ J
{
/ { e" Z8 v4 F- @' y5 m! G
pLight->Diffuse.r *= 0.6f;
- M! k+ v9 o6 n% W |4 H0 Y. J- T/ O
pLight->Diffuse.g *= 0.6f;
- T5 e+ c6 [! k R* u# G! s
pLight->Diffuse.b *= 0.6f;
& F$ t2 X. q' ^6 [: g% O
pLight->Ambient.r *= 0.7f;
" `9 H( t5 Z* i B
pLight->Ambient.g *= 0.7f;
$ @* `' D- M, q+ _( J8 S+ r% t$ F
pLight->Ambient.b *= 0.7f;
1 F8 @8 t' s5 U) {
}
; n/ L, R+ A+ i
! |2 W' T: J( t3 u
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 }6 V5 n* F7 J5 u0 H/ Y$ K
if( g_pPlayer )
; j; q4 d, n& T, L% T. B9 z
HookUpdateLight( pLight );
! I a$ h% \% F; d7 G4 t
#endif
' I4 u3 ]6 s6 x
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" U+ G$ F( {5 n' u
; w$ ^' y5 O6 T$ X& a
pLight->Diffuse.r += 0.1f;
( K$ k. q% C6 n: V$ A' ]
pLight->Diffuse.g += 0.1f;
+ d; p& |' d2 p* \- L
pLight->Diffuse.b += 0.1f;
6 H* v j5 |% B( a$ B
// oˉè* ??à?
) ?4 U& m& q; v6 w( ?/ l
pLight->Specular.r = 2.0f;
{" x9 y. Z# r1 r& t9 j
pLight->Specular.g = 2.0f;
( P, e" [9 l% x Y0 H# x& ]
pLight->Specular.b = 2.0f;
+ v# y3 R ~- v9 p( c
// á?oˉ
0 l: `7 X8 a& A0 q
pLight->Ambient.r *= 0.9f;
! ]9 j0 A3 _: E; p. y; N
pLight->Ambient.g *= 0.9f;
: h' }$ `, h4 t
pLight->Ambient.b *= 0.9f;
8 ]; R. r l z; V! ]) r3 e
0 {8 F* g6 h# y6 r7 V M
memcpy( &m_light, pLight, sizeof( m_light ) );
) {( x* ^% e J! P( B% i
) P t/ w% \4 Z# O) E2 v% Q
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
, Q7 y7 T5 {1 F+ g( a1 |
pLight->Appear( m_pd3dDevice, TRUE );
3 G! C$ Y# d8 M% C7 R6 @
; |3 R' Q8 _2 |6 a# |; Q; j
DWORD dwR, dwG, dwB;
* m E2 j4 W$ G) u A5 Q* p) Y
dwR = (DWORD)( pLight->Ambient.r * 255 );
/ T9 ?/ A3 p S- S
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ m9 _' \' R2 o# _. a' I
dwB = (DWORD)( pLight->Ambient.b * 255 );
! Z) {' h0 V1 x
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( i7 I1 @. p# R% ?2 m& h- ]. [4 h! d" h
}
( \1 w0 A; K7 ]
}
1 Y$ B; j$ J8 K! ]* |- J* x
else
. P- w0 y4 y7 C3 G( `" Y
{
6 s; q+ _: B# I5 ?
if( pLight )
3 `3 @; F3 A9 S+ V* l8 N9 Q- D
{
4 [) x Y& G1 K3 k3 Q3 y# d
8 ?: v8 b* Q: R0 u
int nHour = 8, nMin = 0;
3 M# B$ N0 f: y
#ifdef __CLIENT
" p4 t# q7 L2 B+ V
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
$ }+ M- l0 T' |0 v
nHour = g_GameTimer.m_nHour;
" ?0 {$ q* w3 N# S* F
nMin = g_GameTimer.m_nMin ;
: Y+ P3 b% @; g& r
#else
& V2 q+ I* Q4 a2 X
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
8 [ X/ K/ r1 d" V
if( m_nLightType == 1 )
, C" F9 L/ ^6 f: }: K
nHour = m_nLightHour;
$ \' Q+ Y, Z" V
#endif
, H2 \) H# K7 G# m7 m1 b
nHour--;
' m0 x6 x( x, m9 B; F) o( Y' ?
if( nHour < 0 ) nHour = 0;
% P7 j9 x# N4 @* K
if( nHour > 23 ) nHour = 23;
2 w+ f* a1 S9 j, u& V
. M9 j" f" g/ [: E" Y
//if( m_bFixedHour )
: ^, ~2 G3 c% v- t9 P2 w( }
// nHour = m_nFixedHour, nMin = 0;
+ Z4 }+ S. h" O
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
; x- n9 ^: o8 g* F$ t6 @: x
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
1 D3 I9 Y9 G+ y6 y! c6 G% G
H2 w- E- M, {8 b2 v
//m_lightColor = lightColorPrv;
) j; g, ]1 Z: X7 ^
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
* E3 o$ T! K: s
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
& Z; I' c c/ M6 n, c1 h# R
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
! g2 R( j" g/ B" ^
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
: Z/ D5 v& x1 @3 _8 s# p$ ]0 L+ f
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
" H" m6 [0 x3 Y; v4 ~3 i/ i
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
* O6 r& ?1 Y& {
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
4 S0 i; C. _6 |; C o
+ n6 G( o/ M3 L7 f3 W/ l% D# Y
// à??μ oˉè*
: h4 f2 X8 j6 H% }0 p; |' t
pLight->Diffuse.r = lightColorPrv.r1;
0 m9 V* B( ^% M) p6 j+ g. B9 s
pLight->Diffuse.g = lightColorPrv.g1;
9 j& N; I- d* y1 g! I$ M9 ~# J
pLight->Diffuse.b = lightColorPrv.b1;
. n8 t# n N2 L1 m8 s u5 t
// oˉè* ??à?
2 N% b( n" f" ?1 z6 B( f6 z, T
pLight->Specular.r = 1.0f;
x1 n$ S0 b& u
pLight->Specular.g = 1.0f;
1 b2 [7 B: @$ }# q* `- N
pLight->Specular.b = 1.0f;
( P/ X- S, \& b0 E4 Y5 N% a3 V0 ~4 n
// àü?? oˉè*
! l) J' y" p5 B
pLight->Ambient.r = lightColorPrv.r2;
" n7 j8 R1 v( F* o
pLight->Ambient.g = lightColorPrv.g2;
9 l$ m2 ~* w4 k9 l# F3 U" q0 F+ F
pLight->Ambient.b = lightColorPrv.b2;
0 B) u" \% H3 o2 s6 g7 ^) V) ~
# k- S, M x! [+ W( m
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! R' j/ ^& v. F
{
( W* ^! k4 w1 i' ~ Q( F r N
pLight->Diffuse.r *= 0.6f;
4 ?6 ^6 v2 Y! R
pLight->Diffuse.g *= 0.6f;
; O+ ^8 p; p7 x& W) e
pLight->Diffuse.b *= 0.6f;
! G$ v; D) q5 x% x8 D
pLight->Ambient.r *= 0.7f;
( Z! p! a5 w) y8 ?
pLight->Ambient.g *= 0.7f;
% R/ s9 o; Q- h
pLight->Ambient.b *= 0.7f;
3 [ ] O3 K' ^+ M( O0 @: y: ?
}
2 Z9 D& u0 e1 _8 J9 |+ e
+ q/ _0 l4 O' z0 V6 D
#if __VER >= 15 // __BS_CHANGING_ENVIR
' |3 k9 D+ }# U
if( g_pPlayer )
4 ^- e; z: [, \3 ]2 H$ t6 x$ d
HookUpdateLight( pLight );
9 q1 O, o% R* z& R+ l. y
#endif
+ X/ v# P, a. K- s8 E& F8 o
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& d% |) f1 F: q- ?
' \! D# O* W k7 W/ G' F. n, U9 t
#ifdef __YENV
4 W( L* ~3 i1 V( O6 `1 j3 L
pLight->Diffuse.r *= 1.1f;
, F0 y5 L7 v7 Y- x3 Y
pLight->Diffuse.g *= 1.1f;
( W a4 h2 r B) `5 Y. C+ ~+ r
pLight->Diffuse.b *= 1.1f;
$ I) n2 R3 L h1 ]5 |2 X1 k
// oˉè* ??à?
/ t: i; E7 x/ P# Y6 F
pLight->Specular.r = 2.0f;
, n9 H/ U0 s7 y2 I* M
pLight->Specular.g = 2.0f;
+ _4 `! w' F$ G, c* X" \2 Q
pLight->Specular.b = 2.0f;
" z6 B3 | ]3 h4 I8 x4 e; x
// á?oˉ
0 ~7 O: C- l) s& W( r2 S& S
pLight->Ambient.r *= 1.0f;
9 o9 g9 _. i3 Y: y8 m8 O3 k
pLight->Ambient.g *= 1.0f;
/ L& D1 x) R0 E: y# f. M* y# {
pLight->Ambient.b *= 1.0f;
* j# m& L; r3 _, A* f
#else //__YENV
: S; Y' a; t8 L9 Y d7 x
pLight->Diffuse.r *= 1.1f;
) e. p2 [ u3 M( @) ?' y
pLight->Diffuse.g *= 1.1f;
) M8 @. v/ O8 q6 p, [ z; R
pLight->Diffuse.b *= 1.1f;
9 y/ j, F' Q, Y% a* `1 v$ f0 w
// oˉè* ??à?
' z) c* {6 W$ a F
pLight->Specular.r = 2.0f;
2 O4 ]1 c* v2 U* n; y( h. v
pLight->Specular.g = 2.0f;
4 E6 H- }2 L: |9 T. {
pLight->Specular.b = 2.0f;
5 p# e7 d' o: W% h/ L2 k" k7 V- f
// á?oˉ
6 g, a: B4 H f/ y
pLight->Ambient.r *= 0.9f;
4 d8 `3 ]) r) j; A j6 K5 I
pLight->Ambient.g *= 0.9f;
' [/ D$ `- D/ ^; l$ ~0 h7 @
pLight->Ambient.b *= 0.9f;
* @4 g3 T# k2 _( ^7 |
#endif //__YENV
/ d& X8 v, _- a3 e: q5 l
' Q2 z6 M% D3 ~* ~8 G1 h& E
memcpy( &m_light, pLight, sizeof( m_light ) );
( z5 V; i" [/ x9 B
8 \4 h! x0 t1 {5 g2 u A
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
' }; ^6 c! l; t2 ~% A O
D3DXMATRIX matTemp;
8 Z6 z3 @, D, i& I" V
static const float CONS_VAL = 3.1415926f / 180.f;
. Q6 Y: l0 y2 ]& C+ R5 J0 G' k: G% u" s
9 S! V+ I% ?5 q8 {' D
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
3 a, Q Z& z' Q7 ]8 e
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
! Z. W: [7 q# k; [
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
4 J0 k# ?4 v; J# }5 L, U6 S' g
pLight->Appear( m_pd3dDevice, TRUE );
- o/ F' v1 O. c* o
! t2 \2 |& ?- |( @5 m5 D; [
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 x) D2 Z! W( a( W. n' n" W
// D3DXVec3Normalize(&(vecSun),&(vecSun));
2 h! T9 Z; O3 w3 T& n
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ `: f: G1 ?/ r9 V7 X( L1 G& `. D# t
3 b6 R3 ?- |7 s& N% K; v
DWORD dwR, dwG, dwB;
* A" k+ g( e4 L% n5 u
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 Q W2 `3 P5 n. L- s5 x5 N
dwG = (DWORD)( pLight->Ambient.g * 255 );
9 ~' ^( \& f0 r) I e
dwB = (DWORD)( pLight->Ambient.b * 255 );
. g; g$ M0 ?& J A- r
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 W) R. q" n. c! ~
}
1 R) }6 G) \4 o6 M4 ^6 h
}
7 X; {: P7 ]/ _
0 ]$ Z: N, H2 Q# ?2 u$ M5 |
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
5 H6 Y6 T, }/ y9 f- 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) );
g, x3 }1 ?- E, u- ~) y; A
::SetLight( bLight );
, ~7 C* g, f7 l1 l$ \
1 }$ I* C( u# h/ {; o5 l F
// ±ao? ?D?í???ó á¤à?
7 Z4 u8 [. }: k1 B( j1 `5 M7 r5 F
m_pd3dDevice->SetMaterial( &m_baseMaterial );
! Y. R9 x! i8 l1 H' A) V2 b/ D
+ s! _, s7 U' I& o1 a
#endif // not WORLDSERVER
; ]* |2 w( k2 [+ L; }3 x
}
D& |4 T8 [7 q h4 C6 _# s8 n' j
并更换
: B! a" x% u. g7 A8 K# ?
Code:
, z4 G0 X4 N0 N* _. E" I
__FLYFF_INITPAGE_EXT
r& Z. N Q2 w% u
定义
6 E* C6 m+ s3 [- S1 A
: \& q6 _% l$ Q
! f0 P8 r0 q$ S! F: A5 G
: ]# H# L/ A; q2 D, Q- R% `
: ]6 R* x' s) j! N/ t. ]: c( W c3 r
现在终于删除我的狗屁加速...
8 i) E( `2 n7 ? r( V; E" m
6 b9 n& Z/ `9 m! t( y) t
2 _8 s" ]8 E8 k0 H9 d- |4 U
8 }2 X% t3 R. n0 Y
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2