飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
; O1 A8 Q" J' n% ]& K0 T
尾翼:
$ _/ Q P* \% T
" J- o5 A) Q/ ?& s8 a: W
代码:
1 F6 ~( I& ?+ G, F8 [+ ~6 |+ \3 e
CWndAutoFood::CWndAutoFood()
* L0 a, [$ m _
{
) |: ^9 l$ r/ Q+ J. U! z* g
m_pItemElem = NULL;
. a& @; p* u' g* Q0 W# M
m_pTexture = NULL;
3 ~1 ]& z3 O+ z) s& n
bStart = FALSE;
& {5 j2 x2 h. i" E& k/ C
}
7 Y# F; I- ?% t6 |7 n
1 F7 N9 N) A' J
CWndAutoFood::~CWndAutoFood()
, \5 _5 d. Y. n1 L0 e( K0 u. l
{
7 g# Z6 @! Z, d
AfxMessageBox( "AutoFood ist gestorben
" );
; v' G! ^& l6 X0 o/ J" i
}
' z; U, d D4 s2 r. p% P0 }
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
0 U% b+ S+ I# R6 k8 c" ]
{
6 m3 B) p' d$ \* ?
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
B. ?! }- ~7 u6 P6 h- \/ h/ r/ [
}
R0 Y* D" U+ B
4 E' U; U* p2 t8 u/ N6 C
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
# s; w8 Y0 A* }+ x2 c
{
/ l* d- [& L( \8 D# W E4 {
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
}& t* g% a* G' m( R$ x
CRect rect = pWndCtrl->rect;
* k- E# w7 U6 _- t$ @! X- r
if( rect && rect.PtInRect( point ) )
- c. C% f1 f8 ]& u, |/ ]0 o
{
+ N p; X4 J; H
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
; V9 s3 A3 `) S
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 U/ I' H! V; A- o! K5 B* D, V
{
9 g" D. H8 V* ~0 y: r! {, T/ Q/ W8 c
if( m_pItemElem )
9 Z' D5 H0 A3 D* z s3 e
{
& N9 S6 [. u: k4 ^7 I
m_pItemElem = NULL;
2 [$ D# q4 t" w: W7 n) U5 M }; g
}
( u6 b, p' \- k/ \# H) m
m_pItemElem = pItemElem;
4 L$ q( D$ w4 R& P7 B" S
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
# A$ ], I$ ?4 C5 R. S: L9 R# S
}else{
7 \6 n2 U8 d5 t) v3 v8 O
SetForbid( TRUE );
2 L1 N( m: Q: ?/ u! j: H/ e
}
' l# T( o' c5 ]* j2 w: J6 ]5 s
}else{
2 t# g0 u3 s5 ?# b; Y
SetForbid( TRUE );
" v9 ~8 f- n* B: l$ h. c) S7 O
}
' n2 I/ p( v% A8 {1 }* I+ p
return TRUE;
$ A0 [0 P& Z) S& r
}
, ~0 M9 g( p" h( W0 n3 G7 C
; Z7 z0 j8 g+ w: L; I& [: [
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
, d& I" s. i$ t, r7 B
{
2 v+ P+ |7 y9 V
switch( nID )
( c u/ p3 E8 R
{
- l) }1 o$ ~# A4 k, b
case WIDC_BUTTON3:
1 C+ M7 ~2 _' l1 R! Y
{
! d$ v0 U' w1 p1 k& x
bStart = TRUE;
" D5 ]8 m3 S" z1 H! v) i
break;
& X* R- {7 n: Y- D# P
}
/ m3 r, V0 R: P# d# ^) Z; E
case WIDC_BUTTON4:
. K: S7 J" o6 r' w6 F9 Z& ~- G3 l
{
1 c" U [& x: Q+ P. A2 i+ u
bStart = FALSE;
0 Y) b+ d/ M. p* y- W
break;
" {6 e2 A. b5 _
}
( }: I6 ?. X; n5 q+ D" X/ |8 W
}
7 w# J2 A: g# n0 @9 v" q- X8 n F( p
return CWndNeuz::OnChildNotify( message, nID, pLResult );
$ P$ B! S/ J1 j1 S0 x
}
$ d9 C e3 d& M0 u: _4 O* N+ z
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
/ E; c% o% n" L, g% N
{
4 z; H) Y+ p M' U4 E6 ?
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
8 P; K) y( g8 c
if( bStart || !m_pItemElem )
( w8 Q# N2 n# X
{
8 A; [1 {, m, d8 d& B2 q
pBtn->EnableWindow( FALSE );
* x8 N. X$ V( H N
}else
( p/ ] B2 P$ E: B
pBtn->EnableWindow( TRUE );
5 |1 M. Q. G/ b4 c& p
if( m_pTexture )
2 E; ^- V" T( q( @3 c! ~7 \) v; b
{
+ I( o; X- Z9 n; b+ R
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" T7 M) |; M$ z1 D
if( wndCtrl && wndCtrl->rect )
D) Z. D8 V2 c. D$ Z" _
{
- Y6 ~, o% }8 l& T$ i# Q* B5 a
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
7 b: ]6 ?$ p8 o# q6 g3 |; s
}
7 n# M9 e, @5 _
}
$ z7 Q: u: `/ M: T1 y
}
. \3 q6 v( k7 g
4 c9 Q/ r5 n) T! n
BOOL CWndAutoFood:
rocess()
0 L9 M- n% P: O" c4 P/ a) P* H
{
, h4 x: A# J1 ^. X% ~* X* }
if( bStart )
N, W% [/ B2 U0 }. v1 q }
{
) y; R O; z7 |3 }5 _5 B
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
4 s9 f2 S; {7 y% O8 F
{
* B8 F, ^5 c& S
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
" I8 E0 U3 f8 S2 g5 \# j7 z
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
$ J: X# K# C* h* S+ O2 i, A
}else{
9 E! U$ [: M5 l
bStart = FALSE;
6 Y! j3 |+ {4 ^0 d M( R4 V6 X
m_pItemElem = NULL;
. }: E1 W6 `( z
}
3 }3 B% K8 m( p( m, S7 ^
}
( _1 j4 ?) B( A! x
return TRUE;
, p+ H3 g, o" n( ?
}
N0 ^& y I% N
: B8 L% g8 U/ R5 k" l) P
登录视频废话:
/ M; f) M/ \( J' c
尾翼:
/ @) c. X3 w" {, e" ?8 i0 F$ |
% I% M2 ~4 T) D' ]; Y0 T4 K) d
代码:
. Q k8 O4 I9 o" X. \
X2 @' T2 v J- a0 H% l6 D# \" c
void CWorld::SetLight( BOOL bLight )
' j4 A" W8 H4 K# x- p/ H! g p
durch
& Y% L9 r; G7 Y2 ^- {8 B
Code:
1 T7 e6 ]9 z, p% c3 K
void CWorld::SetLight( BOOL bLight )
3 T8 M3 |3 O% U5 u. c; n
{
" Z6 k8 O( F7 M! K5 L
//ACE("SetLight %d \n", bLight);
# Y& W& Z, K- L; w: O1 r
( o8 O$ X8 m/ F/ @
#ifndef __WORLDSERVER
( V# [& h1 ^# k" G8 S$ p( x" e
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
l: I1 m R4 B6 A
CLight* pLight = NULL;
2 t0 ^6 D* ?$ p; C7 N o
1 B, R0 j. Q1 P$ ~
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
. h F0 s1 T! ~9 J, S
, X- m. Z3 o: J! _. G) j) m
pLight = GetLight( "direction" );
2 a8 ^8 L2 D. ?' h) {4 j7 B0 ^- f
, D& R. }8 w; b
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ a% T$ V: |" A1 h
if( g_pPlayer ){
6 G+ v7 \1 { b; i A! @
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
& r% E5 {) d% e7 l3 ]9 {
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
2 g! H: }8 |+ f7 w" a# V
{
* ^/ I: Q# H$ I; `6 c
if( pLight )
. x U# w) H7 C
{
3 Y& u) Y( `) S" s
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
2 B! A. {9 k0 H. F
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
% N: q: L$ w7 E6 _! ?! ~
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
" P# t/ i$ @0 _/ y
3 q% n: X. w1 }3 w& X
pLight->Specular.r = 2.0f;
& W0 n. k' ]; m- @, o5 V0 Y
pLight->Specular.g = 2.0f;
6 z( o# s N. B! ~8 y
pLight->Specular.b = 2.0f;
, N& t0 w0 J5 _0 d$ v2 F2 |' O
! m/ t& K0 R" n& H% P
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
: ~6 x9 E1 B N8 s
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
0 D2 F# N* ^# I, ~4 i
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
2 ]* @. P6 G8 }/ P9 o: S
; \; o- z5 G n/ Q$ O4 n
HookUpdateLight( pLight );
4 ]0 b. v4 S& `) i
3 \$ [' P6 y6 }$ m% d
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ ^- O0 u% B7 |2 g. r: B
' F. R& E% ]3 L% ]
pLight->Diffuse.r *= 1.2f;
" _( C4 J8 e* N* }. i: k1 I$ {
pLight->Diffuse.g *= 1.2f;
1 y/ r8 Z% s: r
pLight->Diffuse.b *= 1.2f;
* @$ D4 m6 m! A% w! c: L+ E
" O) X) L% p% {+ I5 c
pLight->Ambient.r *= 0.8f;
6 O, A5 M2 v4 @/ `( n& l: Q" `; i- M0 g
pLight->Ambient.g *= 0.8f;
% `4 s, b* M' L ^ a
pLight->Ambient.b *= 0.8f;
# h& |; @0 j% W% j' q& y7 `
$ O ^) g' S1 H( q# ~
memcpy( &m_light, pLight, sizeof( m_light ) );
1 J+ O' b9 Z2 z" g
* b7 y6 k9 S! _: i! K: Y' l; o
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 s3 Q/ ~- U) ~, k
D3DXVec3Normalize(&(vecSun),&(vecSun));
8 i; Z7 ~ Z+ T& P: J8 {
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ v T: ]/ s7 n* \" E% k5 Z6 P
pLight->Appear( m_pd3dDevice, TRUE );
6 _/ J& Y; ~' L$ E
3 ]% `$ v) X$ k# q
DWORD dwR, dwG, dwB;
: ?" e, i$ ^+ H. N6 b
dwR = (DWORD)( pLight->Ambient.r * 255 );
- J i+ L( h* y
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ i/ R+ f/ y5 j9 s
dwB = (DWORD)( pLight->Ambient.b * 255 );
" x" ?0 x3 \7 H: T4 |: f7 k( T
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
n* \* v) B6 U
}
, a/ T( [! y( G! G" a) w) N/ r" ~
}
& a/ @3 B( V: ]. d9 M8 P
}
; d+ ~- E0 Z, F2 S+ Q2 z- B
else
/ j/ q2 B9 U. f/ w
#endif
5 a4 C. E! p( A) ^2 a7 c* Y
8 ~+ | h3 T& r& @4 B3 \. l
if( m_bIsIndoor )
' O- H1 f' B7 X
{
N- I8 V" v% Z
if( pLight )
0 ]% G% X0 B, ]5 Z7 v
{
2 w7 z/ G" I$ z& @7 V" J
// à??μ oˉè*
8 q$ F/ J3 h2 P0 [9 m4 p$ L9 ~
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
) H4 X7 a. ^0 E. I2 a1 F* D( J
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
7 o4 ~# _( o/ X1 j! R# }
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
' l# U- B0 ]9 Y! X
. A6 `, ~6 j$ u9 }
// oˉè* ??à?
; J" r) H( R) a$ ]
pLight->Specular.r = 1.0f;
$ l8 e% T# w& s( r6 ^% o# m8 O, Z
pLight->Specular.g = 1.0f;
. g+ i+ Z |# p# D K
pLight->Specular.b = 1.0f;
& B2 T3 p" l! j' c1 R! F
// àü?? oˉè*
. l1 _4 s# Q2 o' y% W, w; Z! |1 ]
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
, p+ Y# b0 y9 z; C- u4 I* a
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
5 \1 ~: v4 Z! Y; \& |/ ]5 K; Y
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
2 d' I* u* W2 m, X9 D
! F, v9 B: F$ {9 S3 K. z6 a
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
$ y9 r: t8 p/ G) @3 M
{
) | r" V( g. D d1 M+ A
pLight->Diffuse.r *= 0.6f;
; S9 N0 {: H9 B9 o
pLight->Diffuse.g *= 0.6f;
- C- o) w5 V( b
pLight->Diffuse.b *= 0.6f;
9 @& e, W) Q+ C8 K4 i9 w$ F
pLight->Ambient.r *= 0.7f;
, I/ {( C3 \2 W( G( }$ G+ p
pLight->Ambient.g *= 0.7f;
8 U, k- F+ v5 E
pLight->Ambient.b *= 0.7f;
; f7 d9 Y. z( m& X( g3 @
}
! W% D% k9 o2 t( e
+ e7 T* e; K: h
#if __VER >= 15 // __BS_CHANGING_ENVIR
% ` l+ }/ {) V1 n; ]+ r
if( g_pPlayer )
) u( |& _) B/ H
HookUpdateLight( pLight );
- h0 M" ~/ J3 ?9 J
#endif
! v) T/ K6 s. Q e* P
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
- M S7 k$ F0 x3 O
B! P7 f6 Z3 @3 X B+ `, C8 z
pLight->Diffuse.r += 0.1f;
: g4 c8 Z, l4 K: i. m c
pLight->Diffuse.g += 0.1f;
, J/ V; l% n* _! C. Z
pLight->Diffuse.b += 0.1f;
, I( s% i, u; n5 a
// oˉè* ??à?
8 y6 ~9 x& l% ~8 I2 R7 p
pLight->Specular.r = 2.0f;
9 W& j' M# v" y
pLight->Specular.g = 2.0f;
4 I1 c6 A7 S# [8 r& v, ~ K, c
pLight->Specular.b = 2.0f;
8 e+ E2 R( o; D$ w
// á?oˉ
: N- q& p y+ ]" I( x5 @# }
pLight->Ambient.r *= 0.9f;
7 `% H0 x; S, E
pLight->Ambient.g *= 0.9f;
7 {& Y% v! r* R
pLight->Ambient.b *= 0.9f;
4 J) q1 M9 Y2 F1 {; K
6 A1 [ v$ s5 d
memcpy( &m_light, pLight, sizeof( m_light ) );
* x% {% g3 M7 W7 G3 [# O' g& ~
2 G2 `* z6 _+ \2 s1 U3 k3 J
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
! V3 f! F* ^: {2 g# ~. F
pLight->Appear( m_pd3dDevice, TRUE );
. e @' q$ U" [* W4 k( `$ m. y
/ H2 Q* d% [* L" `9 A# Z0 M
DWORD dwR, dwG, dwB;
$ O. u7 F) F3 \5 `! g. ~/ j8 k
dwR = (DWORD)( pLight->Ambient.r * 255 );
' y* w5 ~2 p7 l% |8 q/ p
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 g% W; O6 u( X% m$ z8 l
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ p: u8 i: d8 j) }/ }
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* c( I) O) z3 w7 T4 W4 t
}
" ^9 P# c! p* W# \' X
}
v7 A1 e5 ~% i0 h4 I' g
else
* G& ]% ? ^6 V- o$ J
{
" h4 Z+ Z8 S [* x4 T1 @. B
if( pLight )
4 u5 p8 T5 [0 h* }% {" p) A
{
) U# D2 a* G3 B( d! X
5 N9 ^* p- r; R& X0 E! C7 z* k
int nHour = 8, nMin = 0;
: @& ~6 e7 f* U1 e& u& Z
#ifdef __CLIENT
8 n6 f% }2 _6 Q0 o; \7 U
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
b0 g+ p1 {1 c* J; \' j
nHour = g_GameTimer.m_nHour;
+ x7 @ r; D+ {. I" e. R+ Y$ Z
nMin = g_GameTimer.m_nMin ;
/ c) Y: J' B+ V, c E2 V# m
#else
" ^+ t$ z; ] G j) j5 S
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
: T2 ?0 ^) T: C2 F7 A
if( m_nLightType == 1 )
4 }+ Q# D4 Y: U: Q
nHour = m_nLightHour;
. m3 K# a2 v. p, H) z+ y% S
#endif
2 a+ S: q) v( J$ F. O
nHour--;
- x: t" @: M6 Q' N
if( nHour < 0 ) nHour = 0;
1 ]3 B K! n4 d
if( nHour > 23 ) nHour = 23;
1 _2 p! z8 O2 @8 `8 ~! o% R) Y
0 a( G: q; y( m! K( y2 M% u, n
//if( m_bFixedHour )
. b: F; [3 D w& M5 _/ ~
// nHour = m_nFixedHour, nMin = 0;
1 G1 Z+ r7 K5 O6 ?8 @+ r
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
. D5 R- ?" U2 Y; c6 h
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
R$ _7 E5 J) n
% T. }" n' X7 ~" A6 W& s* r
//m_lightColor = lightColorPrv;
; K+ x) H4 H! u: a6 N, G' R/ e
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
$ o( S5 e$ c* c7 s" z- U
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
+ M1 s: w- i9 S
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
( ^; Z0 Z3 n) V; N L" P+ M2 O
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
9 u8 s+ o- F) _' |5 n
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
+ H, D+ e; i% I j5 \
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
* [- Y' l) ?9 |; X, [
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
- ?1 E4 _# ]8 Q& }! K y ?+ r
6 S0 U7 g& I0 I. ]: G9 b5 V7 ~/ z
// à??μ oˉè*
0 y6 I8 w4 e% ~( K- P' G
pLight->Diffuse.r = lightColorPrv.r1;
8 D; B. w. x3 Z; c
pLight->Diffuse.g = lightColorPrv.g1;
+ ]5 ^1 q+ m1 W, T e/ v+ I- `- R8 B
pLight->Diffuse.b = lightColorPrv.b1;
& X" D2 g4 d, j
// oˉè* ??à?
" t7 [: |: [) {( W
pLight->Specular.r = 1.0f;
( V7 o+ Z4 h5 | P9 N
pLight->Specular.g = 1.0f;
( r% w$ a6 l" E0 b) H5 i) l: H# ?9 Z
pLight->Specular.b = 1.0f;
# e- h2 M+ @0 L& R+ A$ H" I
// àü?? oˉè*
; s: h5 r% j) ?& u; _* F
pLight->Ambient.r = lightColorPrv.r2;
; G3 R1 A7 u1 {" g
pLight->Ambient.g = lightColorPrv.g2;
4 C: o" ]; g5 Y6 l
pLight->Ambient.b = lightColorPrv.b2;
' b" u+ f& ]+ v( e
) Z4 C% j; r; }* t9 `
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
1 t" P% ~3 W0 E5 Q& p
{
% k: _; {* W% E/ G
pLight->Diffuse.r *= 0.6f;
. e3 \3 t- S5 y! H
pLight->Diffuse.g *= 0.6f;
9 q/ r2 ?+ t# I
pLight->Diffuse.b *= 0.6f;
( s3 \& P. j) J# u+ ?
pLight->Ambient.r *= 0.7f;
* C) ?5 n( j5 u2 Z5 }9 D
pLight->Ambient.g *= 0.7f;
% c5 \- w5 x- q! W5 q% c
pLight->Ambient.b *= 0.7f;
# L' V+ j! n3 f3 _/ H0 c8 ]
}
: [; q: s1 V$ T& s7 U& S# H
* m0 b& F8 o) I* q' h( a: j
#if __VER >= 15 // __BS_CHANGING_ENVIR
! m/ h7 T, `% T; A9 F+ j+ k
if( g_pPlayer )
: ?" b; G+ k4 S% R4 ?
HookUpdateLight( pLight );
- u( i0 b. z9 M. J7 u
#endif
% C$ U. r. _( ]! `8 S# l
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 b! x6 T, w6 j% L* e# `
- W2 o; O z/ k Y7 S; A
#ifdef __YENV
' A8 a5 e! b+ @: a3 l+ w' A
pLight->Diffuse.r *= 1.1f;
1 G/ i7 z% Z, d4 `
pLight->Diffuse.g *= 1.1f;
0 I+ B! r. D5 \9 r' o
pLight->Diffuse.b *= 1.1f;
" [. P1 I! D& t( p2 o
// oˉè* ??à?
! a4 z7 |( g& C! a1 G2 t% C f
pLight->Specular.r = 2.0f;
9 `5 Z1 p8 i5 G0 H, o# b |
pLight->Specular.g = 2.0f;
7 { r6 s- |- }6 Q* _
pLight->Specular.b = 2.0f;
8 H* t6 f9 R5 M$ { c2 [
// á?oˉ
, C% D) D9 ]" Z% b
pLight->Ambient.r *= 1.0f;
6 {0 W" C( m; g0 X2 @
pLight->Ambient.g *= 1.0f;
( X% r" |& \7 A: P* ~2 L6 a+ F
pLight->Ambient.b *= 1.0f;
0 ]5 |; ^0 Y! X6 @7 i0 D$ T9 D6 P
#else //__YENV
% [8 {7 Y; w& o/ G; T; Q/ H, `. E
pLight->Diffuse.r *= 1.1f;
+ v/ N6 s. e# F9 v
pLight->Diffuse.g *= 1.1f;
+ [; h2 J0 _& Y, P* j: q
pLight->Diffuse.b *= 1.1f;
" a x+ T: G) A" _8 z1 Q5 q
// oˉè* ??à?
) u, L$ k* S! _
pLight->Specular.r = 2.0f;
H& X k* d* F/ C' Q8 x; h- q: u
pLight->Specular.g = 2.0f;
& f( J' O! ?( ?; _
pLight->Specular.b = 2.0f;
+ x- S! R! Y1 V, j1 R. d
// á?oˉ
& g1 F- k* k1 v; ]0 s
pLight->Ambient.r *= 0.9f;
! L* A7 W1 s$ t k+ S* g
pLight->Ambient.g *= 0.9f;
1 p' g. K) }" o5 _1 R
pLight->Ambient.b *= 0.9f;
2 b' g8 T% T& u/ T' q# G0 W
#endif //__YENV
+ R2 \) w( \0 S$ e
8 I4 K) x# Y: }
memcpy( &m_light, pLight, sizeof( m_light ) );
3 E, w6 G% `! q
5 j4 ^$ }" n; L' d
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
4 E7 E6 S& |7 x
D3DXMATRIX matTemp;
* ^* n% [' H3 \0 B/ {
static const float CONS_VAL = 3.1415926f / 180.f;
& w: x0 y0 w8 }. N2 x0 @
3 q8 ?$ K9 N2 h$ \/ k9 m
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
7 M8 i) Z2 K9 W$ v4 B
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
: b! W$ N1 a" J8 B
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
( c4 t, o2 S) f, l8 ~6 X' r7 n
pLight->Appear( m_pd3dDevice, TRUE );
& I% N% @, V7 u+ y# M
' }8 M/ W. G8 _: |: P0 ^; v
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 W- j3 f3 e# u
// D3DXVec3Normalize(&(vecSun),&(vecSun));
0 X$ \$ E6 u) g/ ~0 d
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
& V% _% q2 E0 d" a5 g
+ }' _4 B- g( d4 {, c9 Y
DWORD dwR, dwG, dwB;
! b9 F' Q& N! u" v8 _6 Y1 Z
dwR = (DWORD)( pLight->Ambient.r * 255 );
! j" x8 n1 y+ h$ d6 f2 s
dwG = (DWORD)( pLight->Ambient.g * 255 );
# f/ E( j; F2 M% @0 B5 k
dwB = (DWORD)( pLight->Ambient.b * 255 );
1 i( x6 ]" M5 T% Q& R
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! t/ p, |3 R0 G8 Q6 W5 A, l
}
. e9 e6 A0 s' m9 M1 J+ A
}
, q5 w) [& `8 z1 F' D& X, N" i
P( z! L( n" R1 o
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
2 X0 @. f; Q0 a f$ R
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) );
7 L8 \" A6 c/ g( S' a4 ~5 l- J
::SetLight( bLight );
# y: z8 w+ |. n0 g5 N: x0 D
! p1 D% v. A! C+ x. D! y S5 S
// ±ao? ?D?í???ó á¤à?
, w& H7 R- B8 j) ]7 ?
m_pd3dDevice->SetMaterial( &m_baseMaterial );
p! _+ u# i- P# \# c2 Z- ]
7 S( j8 I) M' U
#endif // not WORLDSERVER
& V' G8 e; R8 A6 o
}
& D5 k4 o% E, J& Q1 i
并更换
. K% X& V7 z# j4 O8 A/ D
Code:
* p) ?" `5 F S! n
__FLYFF_INITPAGE_EXT
- d9 D; {# O' X6 p
定义
% \# x# }4 i5 ^2 t% I
7 a* c6 F8 X. n) A/ _3 f
' A6 Z) o$ Z- Y y* a8 E8 J
: [% d0 Q; y3 ]! W) u* Z
0 I4 b) l9 M9 R4 f7 J- G
现在终于删除我的狗屁加速...
' X! P' h, e+ S$ Z) [7 s3 N
% X; ]; y' ~& U/ L+ ~' s: ~& j
w% N) x4 \, p" j9 h
6 c3 I2 y: J& ~) t* R5 a: e6 i
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2