飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
1 D8 \/ v2 ~0 o, X
尾翼:
* H: e* P) m. f" l6 f: m
. }& P! C% q+ R! O0 ?( E' _
代码:
6 B+ z; Q: r$ y. _$ l
CWndAutoFood::CWndAutoFood()
- G+ a; M' b+ v$ J. p$ h4 }
{
3 r4 r- X* a; W1 P1 f
m_pItemElem = NULL;
% J2 M: M. Q8 f; ?1 n) `' z
m_pTexture = NULL;
1 p4 @) t' h$ J7 Z8 |
bStart = FALSE;
* I5 J! C' w. N# ?1 [2 r& g/ A
}
, M1 B* s+ ?+ {" f# C& C
4 e3 y9 t9 ]: M2 X t
CWndAutoFood::~CWndAutoFood()
) k( P1 s" ^' [4 U- R" p
{
; z: l) o( {2 c6 {7 S
AfxMessageBox( "AutoFood ist gestorben
" );
/ h# S0 p/ ~ A
}
2 ~9 w; }7 D `* a
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
, \" ~, E5 f) r ]+ Q
{
9 I* h: ?2 b8 q( ~* q
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
/ t( L( m9 v# u' b* q! w
}
4 ]6 u& K! y2 N1 Z- S$ Q
' j" y0 C/ m- ]1 y- `/ {/ w* [
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
6 H2 c; b; H$ W1 Z0 y8 I8 y2 }
{
8 S; X5 G. F& {5 |4 R9 B
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' I4 d/ q* X6 E% N- n( Z( B
CRect rect = pWndCtrl->rect;
$ Q U4 |& e6 {' c
if( rect && rect.PtInRect( point ) )
) j3 N, w L- o8 K* a) ~* h
{
; B" E3 x4 R0 z
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
7 u* c. \( G j% O; C
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
+ G+ Z7 H9 }) U5 I
{
3 h+ C0 s8 v {
if( m_pItemElem )
; J) |. T/ I+ ]9 l# j8 U* W( _+ Z
{
* R& c; _$ R) m
m_pItemElem = NULL;
; P7 K' D; P$ m6 u8 P; X/ K
}
& y! |; X ]* X, S6 j
m_pItemElem = pItemElem;
" t9 Y0 p- m" ?" Z, S, z/ Z
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
, g+ H- X6 q/ L" m+ F
}else{
6 b: e; z' {' v4 A. C' R) \% A
SetForbid( TRUE );
& G2 } x1 B& \# ~" Q; `* d3 n0 @' Y
}
, T9 P2 q" @5 p: E
}else{
4 Z. Y4 p% r! E9 B S
SetForbid( TRUE );
+ [4 }1 _% |+ K1 {
}
9 K; y! B+ u \& H2 j
return TRUE;
: J0 v* I* H/ w2 B) D1 q# G- W
}
& F+ n8 u% w$ X; I
1 S- `1 u) h. t2 p* E8 _: D1 ~
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
& d) J/ D8 B: _6 s) q) |
{
: S2 Z. C0 D T) d
switch( nID )
% C5 |" v3 o& `8 R! N
{
6 A. \: r6 V* l7 B9 m. Q) v6 G2 X
case WIDC_BUTTON3:
" \! k; E5 h7 j; ]$ N3 I$ x* x ~# ?- F* l
{
1 b1 Y1 r" Y6 _9 V
bStart = TRUE;
. G' |3 E: u. k1 @5 C$ a* ?$ L
break;
) d# c3 }" o* Y' w! I
}
, ~2 O1 v" j& M8 i q
case WIDC_BUTTON4:
7 h( q- _( [1 h( p9 d6 q
{
0 ]' G; y2 \( Z; s" v# r
bStart = FALSE;
) P" e9 M: k0 @$ V! r9 ?) \
break;
, D* M; I& S* P/ v
}
( A" u2 l4 E1 P$ ]# {6 _% J4 v
}
' h" z) o! V) G8 K7 R+ E
return CWndNeuz::OnChildNotify( message, nID, pLResult );
! E3 F: C$ g& b: N1 O$ }& J% `
}
1 B9 w; I" j! a; J2 `
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
8 g5 C/ [- E9 d; F4 z
{
4 W9 Z, N2 g" A; P: S# i
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
8 O# L- _0 W: F( R8 S! R
if( bStart || !m_pItemElem )
' ^/ n6 f0 k J" D3 i/ {
{
. I. A3 |1 Q- P; l+ x
pBtn->EnableWindow( FALSE );
$ ~, V P, \3 g( M
}else
$ i( P0 s, a2 U6 u' ^
pBtn->EnableWindow( TRUE );
( k* }) V3 L* d6 m
if( m_pTexture )
# d' r, n$ z- F3 L& Z
{
; D, H0 X. v' q$ W: L
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
9 Q# n& k7 ~1 B) `) y
if( wndCtrl && wndCtrl->rect )
7 t% K) f9 [) G4 l
{
7 y, L5 c C0 b# n: L, I
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
' X) {& A# P4 Y
}
) L R7 L( w& b# q
}
2 p# h% K+ x) C! G
}
! [3 M4 ]( s+ W7 U( d4 s
1 u4 }" h+ \8 U1 d
BOOL CWndAutoFood:
rocess()
. v$ M w/ _% F0 ~4 Z
{
- Q7 o- W9 d& M$ s
if( bStart )
- }& I' W+ R' E9 a
{
. F/ y% e- v% b: U# Y1 G
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
5 K$ T, I" b0 I( H& n m
{
) J0 Y1 Q: W0 M7 L) P' V
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
: E0 K" P, T2 J! t% Q
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
& k, D# E* N& u( t
}else{
# p( I: N B0 `2 W% P
bStart = FALSE;
. P6 c% p* F5 i0 [: j2 g+ _6 w
m_pItemElem = NULL;
9 o k. N4 I, t; t8 b
}
0 P8 G+ ]# N3 g( F
}
/ r; @4 T0 ]# p( {7 M+ k
return TRUE;
2 a( U; n' |2 @6 B
}
% `' u% |9 `7 a( q0 s9 Z- \& @ ?
; F% |3 C, U* r2 S' a' K
登录视频废话:
3 L: L' q- f* ]+ B
尾翼:
7 _* Y6 m. @$ Y
; k( m- Y1 t% P9 _, ^) q: L4 i$ u" i
代码:
: k1 x$ a. h" X9 Z/ m: s7 a
' @9 ? E2 j7 o
void CWorld::SetLight( BOOL bLight )
9 i" C( @% r* Z! L+ n
durch
% S. ?+ G: h% K
Code:
) M; C# O( I( d Y! R g' W8 L
void CWorld::SetLight( BOOL bLight )
1 o- z6 q }# A/ ~
{
, a( S$ w5 d- Q7 F- ~7 W4 x
//ACE("SetLight %d \n", bLight);
1 l9 Z) a; U/ d0 J1 f* ?
) E) ]& l. P$ }$ J6 |
#ifndef __WORLDSERVER
4 k2 E/ u! L, Y; A# E* m9 ]
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
/ h- d+ l8 x' m O
CLight* pLight = NULL;
' w6 o1 w) x# U
3 S$ c( \7 s' a+ S% w
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
8 {7 Z* r) C/ E% Q
: H2 y' N, L t6 ]; e4 x
pLight = GetLight( "direction" );
( w* h% d0 H' ?4 k8 k
9 t( k' A: \* W% G; Q
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 q1 B9 k4 H( v$ M
if( g_pPlayer ){
' B4 v* u w: [' |- ?
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
- V% Y1 c. u5 O/ ?( k
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
. t% g, Q& J+ _- M7 Y4 l
{
5 f) a) O0 F8 S( m& b6 E2 `+ V1 H
if( pLight )
* L) h0 H, d% D1 `: D/ j) @
{
: n$ l* P3 V; M1 c3 J
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
# ? P& R! t' x. \9 f
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
& v; l) H& S3 F4 N; W' J
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
b# ^) z3 h- f8 u9 b
% g1 R6 J2 f" v) \) r% d7 U
pLight->Specular.r = 2.0f;
5 \* ]7 o, A: C5 k( K z; b4 q
pLight->Specular.g = 2.0f;
6 M2 Q6 S1 Y' }2 w# R3 }
pLight->Specular.b = 2.0f;
4 ^7 z9 c+ X5 f) p3 f
$ j- M' |( z. ?9 v! _7 c6 H
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
: g! u4 y1 X9 Z4 Z
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
. J; h& R4 z5 s
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ |, G/ d, f9 Y: e2 j
3 q% Y- ~; V/ A3 o
HookUpdateLight( pLight );
4 g! `& i8 y0 b! V* a
% R1 W" N8 q# |- o# h3 r
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 l) k% g+ N* w) q3 N
+ I5 m$ v$ l! u3 P8 F4 x) Y
pLight->Diffuse.r *= 1.2f;
. t: p# G' v' {6 W* w3 C, Z5 g' o
pLight->Diffuse.g *= 1.2f;
0 \4 q" N5 R$ l6 m o0 V6 G+ `
pLight->Diffuse.b *= 1.2f;
5 h; |, F! U8 A: j! G# l4 n0 c' w
0 c+ L- A* t+ Y1 H% [3 k
pLight->Ambient.r *= 0.8f;
Z: _+ e0 b- N0 T
pLight->Ambient.g *= 0.8f;
3 Z! o7 b$ V: p: ~5 C* z( @
pLight->Ambient.b *= 0.8f;
& u% K0 r& r E& k
5 ^& U: f4 v1 P) i" C, x8 H% j
memcpy( &m_light, pLight, sizeof( m_light ) );
t* @ O. l& `: U* t
* X: _3 |8 S4 v! G- t' @ x' @% `
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 ]- [4 Y9 k: `" Z. T1 B' P1 _( [3 Q8 o
D3DXVec3Normalize(&(vecSun),&(vecSun));
D! c" `, J: ]$ E Y
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# X/ z" l; p- Y) S/ z3 c
pLight->Appear( m_pd3dDevice, TRUE );
, a( \7 z1 _# K2 X2 j
' x5 E9 C% u1 c3 F* a; g
DWORD dwR, dwG, dwB;
* E% R6 t m3 N, `4 K% P
dwR = (DWORD)( pLight->Ambient.r * 255 );
9 v! t+ b$ F- @3 D- i+ P$ w# C( G
dwG = (DWORD)( pLight->Ambient.g * 255 );
, P0 m5 m; ~: t( l+ P, Q% c/ _( ?
dwB = (DWORD)( pLight->Ambient.b * 255 );
( N( @" @9 {7 m5 n, y7 j: T J* x
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% a) s' Z1 h$ H/ x9 W; n
}
/ c4 M2 i; ^- B6 W/ |* K+ `
}
! Y) {! @: S D
}
. ]- J' D( q7 E* M
else
* I7 w9 F) ]% ]
#endif
9 Y3 T7 s( C) W6 x7 m1 q
' O4 A# t% f0 ~# C. x% A
if( m_bIsIndoor )
, b0 E S9 A5 M( y' ^
{
8 q# N: F+ A) E' h
if( pLight )
# Z5 {$ O: U) N$ K7 o7 v$ k( M
{
; h* m1 o+ t$ ?( @$ V+ j1 g
// à??μ oˉè*
% z4 M" m( o8 \1 K \# B$ e; O) l
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
* c' @3 V! t3 R# ~& k8 y5 S
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
- ?2 ?* O; n; X& s0 B6 y
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
- C# _) \. |! D
# k$ r0 x. Y# f. W3 ? [: H5 o; x
// oˉè* ??à?
( }) B/ e+ |$ G+ K/ h' X
pLight->Specular.r = 1.0f;
2 g- y. F+ B& i& R/ l4 N
pLight->Specular.g = 1.0f;
2 Q8 J7 X$ Q( N: T, k! e" r; T$ L3 y
pLight->Specular.b = 1.0f;
8 W: P8 O& `9 C- D0 |# @
// àü?? oˉè*
. {2 n& k2 m& t( c( S
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
6 u% h$ T; g' m/ V
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
$ v5 B7 u7 U e! V- r
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
' g/ y* a; I- i( r: ~; f# z
, f( q1 o8 x2 I. y) v8 G
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* r$ F0 |& q2 n! r& b9 ]
{
2 A' x4 I1 L5 z1 x+ G; {, b
pLight->Diffuse.r *= 0.6f;
7 [% n5 t; B3 n1 b9 E& B" L
pLight->Diffuse.g *= 0.6f;
3 k" Z8 n. R: a# L- o
pLight->Diffuse.b *= 0.6f;
* B& K) [6 y% F5 h0 T
pLight->Ambient.r *= 0.7f;
% S/ I: n! A; U2 w' U! F
pLight->Ambient.g *= 0.7f;
* y8 m$ y, r: ^% Y# @8 @. M
pLight->Ambient.b *= 0.7f;
! {( l) a( Y# {5 y4 D7 A: t
}
9 R( O$ R& A, n" ~- ^
" ]! x% S0 O/ Q" @0 B! F& O
#if __VER >= 15 // __BS_CHANGING_ENVIR
: ]! P! v! l1 {5 j; H
if( g_pPlayer )
. s( B# u" P; z# t$ E$ J* |( Y
HookUpdateLight( pLight );
6 u6 x5 ~5 B/ K5 a; @ v7 X
#endif
- ]& M& ~: ~5 v7 z
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* M, M% M( V% o6 Q$ c' b& [ g
2 e) |# F. ?. f+ L: c: o, u+ j) c
pLight->Diffuse.r += 0.1f;
I2 b$ y& [4 q% p0 c' e
pLight->Diffuse.g += 0.1f;
[, B- v+ ?: z
pLight->Diffuse.b += 0.1f;
0 t8 U9 e9 [: M
// oˉè* ??à?
: G# `* ^( R4 j
pLight->Specular.r = 2.0f;
. t5 n; b- ~4 ?, B/ S
pLight->Specular.g = 2.0f;
" y; @4 Z8 i0 k
pLight->Specular.b = 2.0f;
& z: n" l' D7 `2 I9 d2 L
// á?oˉ
) ]- Y4 f2 Z: J
pLight->Ambient.r *= 0.9f;
( z v+ b4 y0 R$ H( |0 ^. d/ E
pLight->Ambient.g *= 0.9f;
( @# ]) H0 z5 }) p' e+ l
pLight->Ambient.b *= 0.9f;
) j& F' x. Y g4 y
" o( m r0 h- h, A, I& A
memcpy( &m_light, pLight, sizeof( m_light ) );
7 W6 Y; q2 L; X. M; g+ W! p
. L* }, R( @6 y# [9 t5 y
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
5 u/ i x# R) K, _
pLight->Appear( m_pd3dDevice, TRUE );
" |; \4 w- h3 w
9 {% ^" ]* K6 a3 `% z
DWORD dwR, dwG, dwB;
1 r2 }- D' u1 m) q, C
dwR = (DWORD)( pLight->Ambient.r * 255 );
: z, v9 K1 r4 L, d Q9 N3 U
dwG = (DWORD)( pLight->Ambient.g * 255 );
& q/ w/ f' t- E' W- u. ?% `
dwB = (DWORD)( pLight->Ambient.b * 255 );
! b- J S0 N9 |, q$ A
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
9 H- h! m) C8 ]" ~
}
, V: q; o0 ]9 e J* P
}
: w5 h8 U4 ]5 Y) X# x
else
/ c: Z; C5 g2 M* w; D
{
* k$ J5 {) F0 t% l
if( pLight )
) G8 l( U/ x. v
{
6 {! a. t T& n6 w3 ]$ u" s
) C; S( T& i5 M2 Z
int nHour = 8, nMin = 0;
- `- u, [4 T" F
#ifdef __CLIENT
! v, J" p& u, \" E
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
, G$ Z7 s/ H) T1 {# Y. I
nHour = g_GameTimer.m_nHour;
+ o, D, Z1 J( u- h+ I% D/ g
nMin = g_GameTimer.m_nMin ;
2 `9 @" u8 h) E/ W: J
#else
' E# m$ v: a& W% Q
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
$ Q9 I @4 r/ J2 [4 S Q9 Z* w
if( m_nLightType == 1 )
' ]3 g E s" W' y
nHour = m_nLightHour;
4 a! ]% q# k' X2 U: l
#endif
9 ^6 U- A; |9 L* \8 E* g
nHour--;
6 f2 b) R+ m: I# V. K3 q
if( nHour < 0 ) nHour = 0;
1 M' e/ ^. E& g- j' J; s4 y
if( nHour > 23 ) nHour = 23;
: n1 G) [) W& m% \! j
, S4 {3 s! q9 _1 I/ s' v1 m
//if( m_bFixedHour )
: N- f0 Q# X# {- }5 Z
// nHour = m_nFixedHour, nMin = 0;
- I9 f$ z' L* U8 v; F' h
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
1 |% o& n5 T9 G) f% T6 `; h% S7 t
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
0 y: H# y! w) ~/ u1 V6 T/ @
" l" d* W" P7 k9 F
//m_lightColor = lightColorPrv;
0 y' T3 b) u. I# l9 q9 |
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
% U2 P1 o8 `2 C& L: \9 M
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
) L' K3 P% \9 Q
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
# [+ z9 A+ j9 T/ W6 }# c& u
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
+ H8 R0 I x% o! [- L
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
; v% n" K Q; q( _
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
/ G+ ?0 L e [* [$ ^! g
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
' x* z# _* v" B2 a9 {
5 `2 N, Z6 @1 L( l
// à??μ oˉè*
. h5 g$ W0 T9 L. R: Q5 i1 Y; E& S
pLight->Diffuse.r = lightColorPrv.r1;
5 j2 d0 H4 w- }1 ]- w
pLight->Diffuse.g = lightColorPrv.g1;
0 G8 X+ }1 t# h, f1 p
pLight->Diffuse.b = lightColorPrv.b1;
8 J9 X7 D* ?. F% r( o% r0 E- l
// oˉè* ??à?
/ X; C; k$ v% ^4 ~4 ~: y+ s4 B
pLight->Specular.r = 1.0f;
( `: U; C! l7 i: Y
pLight->Specular.g = 1.0f;
5 e# u3 Y, D( @" q: H
pLight->Specular.b = 1.0f;
* y) {0 N8 N% [/ T$ o1 |$ A: }
// àü?? oˉè*
( b7 w5 K/ x8 ?7 N* D* t, w! ~
pLight->Ambient.r = lightColorPrv.r2;
, U& t/ }; ?4 u
pLight->Ambient.g = lightColorPrv.g2;
/ H$ I1 A3 F% N, U& V. g$ J
pLight->Ambient.b = lightColorPrv.b2;
" k' g h O8 n1 r& h+ c; k
4 z- I9 m! x( s, z' Y
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
+ Q) I# u! P- g+ s* ~
{
2 b0 |. [! R) Y$ y& i( {
pLight->Diffuse.r *= 0.6f;
! i C& L8 F- u
pLight->Diffuse.g *= 0.6f;
' C1 K7 q- _) Y6 R0 r8 H
pLight->Diffuse.b *= 0.6f;
+ G6 l( }) O# d
pLight->Ambient.r *= 0.7f;
! `; a! i v% E) l" j
pLight->Ambient.g *= 0.7f;
9 b: {' M( X- x7 m8 Y
pLight->Ambient.b *= 0.7f;
9 L4 G% ~% m4 J
}
% w/ v# G& D6 h( {4 B
; z, }; U% `( s& R
#if __VER >= 15 // __BS_CHANGING_ENVIR
, b) ~1 A8 \2 C$ g
if( g_pPlayer )
- S: d1 h8 T W }, e7 X. i
HookUpdateLight( pLight );
8 ?' l- W' Z1 K& L1 p0 d; N
#endif
+ L0 h% i+ k( S: x
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& J# ^, h/ ]0 y. {9 Z# G% H
- k8 ?4 [& H, C+ n! P
#ifdef __YENV
4 c6 @1 m& I$ H# b& x' p
pLight->Diffuse.r *= 1.1f;
: A6 Q& O) ]$ ]. H2 j4 `1 S
pLight->Diffuse.g *= 1.1f;
+ |* G. r0 [# S
pLight->Diffuse.b *= 1.1f;
3 W$ E" S% r) N8 c
// oˉè* ??à?
# U: e! X. w" b) Z7 Q1 y) Q- d
pLight->Specular.r = 2.0f;
7 {) W6 m$ T4 y: U
pLight->Specular.g = 2.0f;
- o- i; H0 U, p J7 v
pLight->Specular.b = 2.0f;
3 }* A7 L' J0 D. M
// á?oˉ
3 W# z0 i7 h3 G' U* }% m; k
pLight->Ambient.r *= 1.0f;
0 W" ]6 e; A3 d3 L
pLight->Ambient.g *= 1.0f;
t: s) V, i* t: N( ^: N7 k. e3 R
pLight->Ambient.b *= 1.0f;
; p# a; M) u$ h' [4 k3 _& M5 t
#else //__YENV
% M- L0 W# w P3 o8 y& I
pLight->Diffuse.r *= 1.1f;
7 @4 |% w* o3 N* ]# G
pLight->Diffuse.g *= 1.1f;
8 x3 @8 X- r0 X
pLight->Diffuse.b *= 1.1f;
1 f$ F- V" R B, j) J- v& v" l
// oˉè* ??à?
& i: {/ I, _6 ~5 [ b; G
pLight->Specular.r = 2.0f;
* x& @0 m( w# k1 @6 R
pLight->Specular.g = 2.0f;
7 N2 Y1 G9 ]4 A x% b! x" w, V1 e/ {& V
pLight->Specular.b = 2.0f;
* H. H4 f: y0 L6 H' k; Y
// á?oˉ
# S& K4 ]5 l" v& g9 R0 B) H2 c/ h
pLight->Ambient.r *= 0.9f;
: E* N, ]4 f" Z' ]+ Z: O- n
pLight->Ambient.g *= 0.9f;
$ c! R. J! X# h ^0 d2 Z
pLight->Ambient.b *= 0.9f;
( B1 A D k2 q k2 R$ s. W) M
#endif //__YENV
; [/ g8 ^9 `8 I' }# n8 w) Z
& n; H6 F! ^# u7 ]0 ] y
memcpy( &m_light, pLight, sizeof( m_light ) );
$ A6 r* L9 l$ t' K9 k' \7 W
6 F o6 {* s2 {8 `- {0 y; }
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
6 t( q0 V* \5 a* T$ j3 U$ B# J
D3DXMATRIX matTemp;
$ }1 {9 F! ~1 ^3 X" n3 C
static const float CONS_VAL = 3.1415926f / 180.f;
& K' u. t& M0 H* f& F( j
$ R, ~! V s) V
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
. X! z- E. N" x. ?& q. ^9 J9 \
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
9 }+ e# O3 _! t, J( c# v$ {
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
- i6 h5 r# s8 _: F; X
pLight->Appear( m_pd3dDevice, TRUE );
' d& e3 {5 v' G; {6 I
& ^, F) M: ^: k/ e1 J! e
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; F/ u; F# @2 u6 h6 A$ M' F
// D3DXVec3Normalize(&(vecSun),&(vecSun));
! K! w, K- u Z. H! H
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ U9 W: S1 j# t! }
( V( W+ c9 P6 N- n# F* D- x) S1 c
DWORD dwR, dwG, dwB;
+ d; j6 e* `: R% L0 }
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ _9 ?$ ] T0 [% s
dwG = (DWORD)( pLight->Ambient.g * 255 );
$ P5 o6 I6 H4 k/ @$ n0 Y9 D% j1 l% I
dwB = (DWORD)( pLight->Ambient.b * 255 );
0 C5 a- I: ^* @9 I9 A6 z" C
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 S, B" D$ p+ D% J) I
}
0 y! @3 A7 w: x% }6 r0 I, c9 [ l0 O
}
, d3 ~/ `0 L, G- T5 F
. W, d( [1 ~; ^7 Z" \( t
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
+ [( l7 r1 n# q, t& h1 _7 B! M
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) );
. F# t. u' p7 ]& X4 g
::SetLight( bLight );
% d# [% k$ u4 n4 {) p: M+ o' h" w
" n& m3 y/ I, q( r
// ±ao? ?D?í???ó á¤à?
! ?# j+ ?7 P. w0 k& Z" r
m_pd3dDevice->SetMaterial( &m_baseMaterial );
; n7 i7 A$ y) }( W. L6 @
3 C1 N, ?6 O! a, {3 F3 Z+ H6 ]/ d! t! [
#endif // not WORLDSERVER
. Z3 P7 ]6 T8 C( a
}
6 q; w* v& Y$ b/ }0 q: ^' B
并更换
2 { ?1 H4 V3 C. O1 K( D, ~
Code:
& R/ s' v9 S3 |/ F: k) A$ ~: m y9 k
__FLYFF_INITPAGE_EXT
. Y: D3 N. H1 }3 F+ o g( [
定义
- z7 b3 @! W* x8 g: ~7 }
4 P/ F% p" d6 R1 d. L# H- R1 W
; Q" ?9 A; I) @6 Z* s
[2 i& r0 b$ j7 f8 o
5 `5 n6 u3 ~, A- }
现在终于删除我的狗屁加速...
. f. d f$ q+ _
* M+ f) _; X) o3 P/ t
; ` f4 ^& q+ r* V8 P' g
" P+ a S! o- W: R4 c" ^; @8 t! s4 U
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2