飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
9 s0 n0 f( |, M( ]
尾翼:
2 A* Q$ a& s+ R& A' Q" W# _
- s( T$ [2 ?3 L2 R
代码:
4 H; l" J4 v: w7 c7 `' s1 w4 `# u
CWndAutoFood::CWndAutoFood()
- s* z8 r# E G
{
, \) c4 P8 u' l- e
m_pItemElem = NULL;
8 r8 v" Q4 e$ H1 Y7 |
m_pTexture = NULL;
; J9 _9 h- A9 J
bStart = FALSE;
/ U' t J" n$ C* R p8 R H
}
( N1 I7 A* H0 H% g( {# d
% c4 A. k! g6 n. H& `7 W, i! d: p" X
CWndAutoFood::~CWndAutoFood()
3 |. k+ `- h1 X6 F1 x
{
h" }7 F0 r. p( j
AfxMessageBox( "AutoFood ist gestorben
" );
- E) |+ D* S$ n8 S9 X
}
" n! N! E. Q* H2 O
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
# O2 l0 O# p7 r6 h1 k
{
( d6 C, P4 `) W/ ~
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
5 b. D7 w# v1 M2 |: v; v" H+ o
}
$ [$ x# F- s b, |0 G
4 T3 E0 o+ Q# m6 V# M% ]
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
9 x4 J1 m# h+ r- F8 Q& N( w
{
, m- ]+ k- l6 g, ]
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
6 M; \( f0 S6 g% G/ l2 K* X$ B# O
CRect rect = pWndCtrl->rect;
4 `% W. l9 h" D0 d0 G, w- g) J
if( rect && rect.PtInRect( point ) )
3 Z- l! g9 ]3 e& ]! I4 v# h
{
" r) |$ [" T! Y- L- S
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
' ]9 A( S' z- Q
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
1 A! }( v3 w, s" x+ @8 c1 t3 g7 S* y
{
/ C4 M8 Y2 S0 |1 B2 [- c
if( m_pItemElem )
1 d( H7 g( O. u, ?9 n/ I# G
{
8 B' s W; W3 F* Z; `: |
m_pItemElem = NULL;
Y' a! V; ? E8 j
}
0 _/ a. V k" ]- z
m_pItemElem = pItemElem;
: Y9 o+ R9 b6 B* ]! a% t- P1 L
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
: f/ H- u: D* O7 d' Z
}else{
9 v3 u7 u6 h: H0 @0 [: J: L0 h
SetForbid( TRUE );
) Q! ^- }& w3 d
}
`; k* l6 ]% n- a) r# |+ m
}else{
" f( ]/ g( h" P$ `$ c Q- }/ u
SetForbid( TRUE );
2 y( N- `4 X, S3 M l8 s, [
}
" k5 I% N5 Q6 L& j- \
return TRUE;
5 q- d6 a4 J3 ]4 L
}
6 e2 { c' E i3 q
' p" v6 Y5 }- h/ D
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
7 H8 b! F8 g l( g: P
{
2 _' @0 N" f7 C: x
switch( nID )
5 ~" W6 z* ]) d' O! x
{
5 e7 c3 ~ j7 R* V/ [+ A7 g
case WIDC_BUTTON3:
2 O% Z9 U9 o# s0 B3 k
{
. F+ T9 x# }: Q& {1 T& Z* p. A' Q7 c
bStart = TRUE;
8 M( u* w9 v' E9 D( y
break;
% a; c. ?/ k4 N) n, J* W, y2 x
}
9 g7 s% \+ i8 v/ N/ B' f/ ?
case WIDC_BUTTON4:
4 G! K# {1 p" x8 t4 p5 _( M" d
{
3 q9 B$ G' y# H1 \' U: h' S* b" w
bStart = FALSE;
, D" I% Z% v; ]; b
break;
, \' z. J# D, c8 c t2 E, t
}
- ?6 K1 \$ Z+ F1 ?
}
: o* B9 Z# ]" ?
return CWndNeuz::OnChildNotify( message, nID, pLResult );
) P& O5 n4 d' i& L
}
+ G# ^$ e/ v6 y f
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
7 I0 ~4 N6 z5 K( x
{
4 H' n+ f9 S3 n8 {: O) h9 m; u1 n
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
2 z# B! b' j" Q4 w1 ?' [
if( bStart || !m_pItemElem )
8 h' [' B: y3 N6 |1 }3 v
{
m" p! ]; b' Y9 }4 {
pBtn->EnableWindow( FALSE );
4 P7 D, ~6 M& ?1 q1 }) U0 t
}else
) n4 s1 J& z7 o% I) J
pBtn->EnableWindow( TRUE );
o, u- d2 G6 D0 C: N6 z0 w/ q8 o
if( m_pTexture )
4 v( x6 |7 C( N2 y
{
% g3 q/ ~1 E* |( H
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
: w) u' k: F7 N7 ^/ S( r% S
if( wndCtrl && wndCtrl->rect )
& s% ?, u" g& ^: w
{
) a7 a! X' Y5 L3 }$ k9 h7 Q
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
. X2 ?+ M/ }$ l b) y4 T- n$ r
}
2 G, x+ n. l$ j7 j6 ^' B
}
4 ?5 a0 d+ f% U3 v; _
}
/ L- q, Z9 R. a" m9 J3 L* y
& z) _0 Z6 v5 i$ V, O
BOOL CWndAutoFood:
rocess()
" b6 A0 N( S! ~# k4 D4 n- \- H
{
' G8 h( f/ P8 ~, U+ ~, a& l
if( bStart )
5 F7 G3 A! a6 q% j; T0 f9 H
{
8 l9 H: U+ s, I$ |) F+ y
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
0 m2 F7 L1 i* f/ W. |
{
2 A3 q9 t) W# K
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
1 v3 M+ ?* ], v3 B+ ~
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
* G$ n% j8 R0 V! p6 ~
}else{
/ `2 ~) i% ^1 q
bStart = FALSE;
0 G2 C- B( i3 J- L2 ^" Y5 T
m_pItemElem = NULL;
# r/ g$ R% b# n
}
5 l# o, w5 w' q, }
}
! V: ^- W% L" H+ V0 V
return TRUE;
5 x2 Y) u; l- [% ~2 L, C) o
}
* k( j5 C0 B3 e% V2 W
0 O9 `/ k/ g$ f
登录视频废话:
Y9 t0 V3 f8 P; K
尾翼:
: z+ v$ j: V3 c% d; i9 H( M
1 I E0 S+ Q' C& j+ d8 u- s+ y
代码:
5 n% o% O" F, u6 E/ n: [! T
/ B P3 Z1 x. W1 g6 {
void CWorld::SetLight( BOOL bLight )
& l8 A9 x4 f$ o9 c8 K# g
durch
6 D: Q. M. |5 N+ i8 r
Code:
8 W+ |) `9 }9 c6 n! \
void CWorld::SetLight( BOOL bLight )
+ \* _/ k3 T$ u6 ~ Z
{
; Z d* e" v0 R# H! p! ^
//ACE("SetLight %d \n", bLight);
$ I7 I( h h; b' O2 @- Z3 }2 Q) [
0 r" G9 C {$ e
#ifndef __WORLDSERVER
3 W( }/ q+ V- C9 ?
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
1 _9 @: ~9 h y* R+ v
CLight* pLight = NULL;
% V9 s9 {+ U+ z: K3 P; F; w! R
1 \/ F' a+ H) L9 \+ j% i
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
* O9 g1 G5 z' N
1 P9 X, A3 I2 ]; R) s8 W
pLight = GetLight( "direction" );
9 |: \) X) W2 {3 r8 S5 w
2 s9 Z, ^: |* ?' V7 z8 w7 k
#if __VER >= 15 // __BS_CHANGING_ENVIR
! n+ y, |+ V" D/ `4 |. A
if( g_pPlayer ){
& S5 F" R5 d4 W( U- T! w+ o: L1 I
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
' M+ @2 Q R5 Z; R/ E6 E( K+ w$ c
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
- }2 ^+ P2 q$ e! H
{
; `# }( y- A4 A7 n g% L1 E9 G
if( pLight )
0 v4 X4 z' K! w; [ ~) ?6 f" V
{
9 r) j6 w: h+ m7 L
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
$ y* t, V. x8 p+ E) s0 H% l4 L+ F
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
% C2 j$ Z' r2 u- ^- r, C) f
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
! M! k; l3 ]9 B, ~6 ~; c
. U! Y+ N7 @. W8 R. P
pLight->Specular.r = 2.0f;
/ a5 }8 `# ~ c8 |$ ^" ]
pLight->Specular.g = 2.0f;
4 ?" o% H, A% V" ?* n; ]
pLight->Specular.b = 2.0f;
& w, g7 }% c) }7 c4 I
8 s' o4 A+ ~6 o9 d1 m
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
* E% F, v& H( u" @' i& R6 T
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
& M3 G+ w# U# u9 I2 t* B0 s+ k! f
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
4 k9 X0 W/ t% ?
. I6 {" p" ]! s/ ?7 h/ I/ u
HookUpdateLight( pLight );
, _1 b; E& P T+ f: x3 F. c
8 R) @: w$ k* r6 v6 {) t4 R, F$ m
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: y5 O' i' f, J) Z# X
1 @0 s' j8 D4 `* [
pLight->Diffuse.r *= 1.2f;
1 m. I, L/ S C1 _" N1 s, E5 j4 A
pLight->Diffuse.g *= 1.2f;
! _. j& Z3 v% T- g+ _9 j
pLight->Diffuse.b *= 1.2f;
3 S: {% ~0 M" a; C8 P' {0 F
- z/ r4 B& f& N! o1 ]4 J, _7 T
pLight->Ambient.r *= 0.8f;
x+ @) ~: @" |, I2 S8 W# J
pLight->Ambient.g *= 0.8f;
. y/ U% t4 R3 X* y4 w
pLight->Ambient.b *= 0.8f;
# M- k& ?9 q& t6 g
2 Y% S* ~- @2 v
memcpy( &m_light, pLight, sizeof( m_light ) );
1 y1 H8 X) S( m( |' a/ n9 Z# t+ _8 n
6 x M; L1 N! P8 P. s$ B9 h
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
0 g' f( u) f4 ? o6 x5 p" Y% K
D3DXVec3Normalize(&(vecSun),&(vecSun));
9 s5 Y% d$ p0 a' _
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ ]8 [' R3 ?: l) M! j0 ~
pLight->Appear( m_pd3dDevice, TRUE );
: A( P3 {/ \) X1 b5 R2 u1 |9 E* h
X3 u+ c) O% [
DWORD dwR, dwG, dwB;
$ H9 p n$ s+ K v' k1 y
dwR = (DWORD)( pLight->Ambient.r * 255 );
! L" F: B& m+ O
dwG = (DWORD)( pLight->Ambient.g * 255 );
& m% d* ?( |: f o# M
dwB = (DWORD)( pLight->Ambient.b * 255 );
" {6 N2 D# d& C- T
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
8 t7 H5 F9 w! p0 Y* W3 H
}
# D% p: p- }, t9 w) v0 w
}
; u/ d3 ^2 G: C6 I; u
}
3 L/ U7 H5 W' J9 A' v; t( D
else
# o8 r3 e+ K6 y. D! _) V
#endif
: n/ N5 j+ c- G/ L+ Y$ n
5 @: y* W3 |" P6 u1 P6 T
if( m_bIsIndoor )
! O# h. Q: { o0 @, ^! {
{
/ i4 ?. x- T2 n" H7 b
if( pLight )
3 L }" f% e, |1 p9 y# u8 d3 O
{
5 \; c' b( S8 W9 w) d. u
// à??μ oˉè*
. J% j f3 O& c) I2 y0 o' W- i
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
; B& D3 K6 q! W7 q+ ^' [ @
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
. n* V4 f' e% d4 I
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
$ i! f( q" e$ N9 |0 L
8 I0 _0 r5 E4 D( s
// oˉè* ??à?
; e1 C! v; f; I T, l/ g. C" h
pLight->Specular.r = 1.0f;
' A% `- `7 c7 o" W
pLight->Specular.g = 1.0f;
7 D6 L5 ?3 q8 P$ n
pLight->Specular.b = 1.0f;
) ?( K# {3 O. d( y
// àü?? oˉè*
& m! O3 s) ~$ d
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
0 ]; }% \: O" O8 Y. n4 X+ c9 d
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
, C# `4 q( J! n, T3 I
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
N$ K" T6 x* T& o: [2 k
* R# _$ k2 e1 [5 E' T, \$ n
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
0 t6 s0 [3 h1 \' h: I$ ` w# O! l
{
% e0 ]& |& T/ T% P. E2 w
pLight->Diffuse.r *= 0.6f;
: V6 [$ M% r) q x1 n, i
pLight->Diffuse.g *= 0.6f;
) a* w) p2 X7 t
pLight->Diffuse.b *= 0.6f;
( h3 s. b5 L. i% Z9 Y: P
pLight->Ambient.r *= 0.7f;
8 D. J: u( b8 p7 U! n+ g
pLight->Ambient.g *= 0.7f;
{3 \; {4 R, H I- |
pLight->Ambient.b *= 0.7f;
3 E- j% K9 l( x. b
}
% {1 q# `2 `- I. S- {
. o/ M( b. n" r9 j% A# o- s
#if __VER >= 15 // __BS_CHANGING_ENVIR
( e D6 t0 d# g+ Y+ i
if( g_pPlayer )
; V5 C& d. s& Q/ _6 n5 |) X
HookUpdateLight( pLight );
: ^; W6 A7 n) k3 g# M3 m" q
#endif
. L4 ^, m1 E/ G, E4 f4 _
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ J" h: {* N/ {3 {
: j5 U" c5 W$ |& L0 A' G! O0 F
pLight->Diffuse.r += 0.1f;
0 u5 L P4 e% F# p! x! B- r; s
pLight->Diffuse.g += 0.1f;
( l2 P& ^( z. u- g/ ?, j
pLight->Diffuse.b += 0.1f;
* \! ?& p5 U( ]
// oˉè* ??à?
! r8 z* S+ y+ B: |+ Q" T) K U& g
pLight->Specular.r = 2.0f;
: M$ N# {& d& P1 ^. l3 c, H! s) A
pLight->Specular.g = 2.0f;
7 F2 m5 ~6 @ f4 y+ w. o* ~
pLight->Specular.b = 2.0f;
' Z9 B2 L$ d& c% P/ S+ V
// á?oˉ
; I0 }8 B( N1 L9 i! Z( c* T: A
pLight->Ambient.r *= 0.9f;
* j, Y7 z( f$ }+ N$ g. h/ F1 F
pLight->Ambient.g *= 0.9f;
' E, s( y) |* i; f8 `- N+ d9 r
pLight->Ambient.b *= 0.9f;
. A3 ~0 x! {% X3 q( o1 }' j1 o
- H9 u( P6 \# G3 Q; h- R! @
memcpy( &m_light, pLight, sizeof( m_light ) );
/ l4 x z3 R/ D8 H
8 e6 ~# C& i+ M
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
4 b( B% e; D8 _, \1 U
pLight->Appear( m_pd3dDevice, TRUE );
9 I- I: v2 A! U- m+ L
% P( P4 v$ s- @+ C
DWORD dwR, dwG, dwB;
1 d7 O/ g4 W5 |6 }) C- B
dwR = (DWORD)( pLight->Ambient.r * 255 );
/ {# v0 ?( ~4 Q# F
dwG = (DWORD)( pLight->Ambient.g * 255 );
9 C8 o0 R3 Y2 a8 i5 ?/ {9 m/ b3 b
dwB = (DWORD)( pLight->Ambient.b * 255 );
% a; d/ U; X/ r5 q) E- i1 }
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( F- o3 l( M! q' s
}
/ J2 M- e5 ?# i( G' S
}
, I' |: B: F" P8 ?9 i% p
else
) F" X7 A$ R% x) w( M7 U
{
6 Z# a* K' a' x$ v( }8 L# x; g4 [
if( pLight )
# d& E" p% E" x( p
{
* t2 N4 `) p F7 x
1 o1 e4 v/ X* N9 C [/ l
int nHour = 8, nMin = 0;
$ ]- [7 F6 H. p3 O) _6 ]+ e
#ifdef __CLIENT
8 ~3 p4 V5 e* M9 B7 |
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
+ S# t+ D0 f, t/ K4 s
nHour = g_GameTimer.m_nHour;
N" ~1 j3 s& E: f+ a+ x
nMin = g_GameTimer.m_nMin ;
- b0 b& M3 n- ]: }& d. Z+ v
#else
, H" W% z" U% b! I
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
6 ^5 t6 P* R/ k, C7 M+ }3 U
if( m_nLightType == 1 )
' K8 Q8 b( y( a7 S& y y
nHour = m_nLightHour;
1 Y( r' t5 a+ j. Q& E% e
#endif
& N% I0 ^$ |9 W$ |2 w% [* U9 x2 a
nHour--;
: l* Q4 B/ r: C" l' V& u2 R
if( nHour < 0 ) nHour = 0;
& }7 L7 L& A9 J' y: K0 M y
if( nHour > 23 ) nHour = 23;
$ Y; ]- p* b H
, [4 k* H# F1 Y0 O7 r
//if( m_bFixedHour )
( `& }0 ]" H6 D. y! f+ W
// nHour = m_nFixedHour, nMin = 0;
b, W' C5 i! e3 r, i: f: l
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
$ M' ^7 A' c8 d V6 V
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
3 W5 _. U) L$ _" t
) o% ~4 U# `! D# C' y( H
//m_lightColor = lightColorPrv;
. o5 I; {$ A( Y8 k# P9 r
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
; L+ [6 S1 Y: k7 ~* x
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
3 }/ S3 x$ t9 }! ^& j# F* L1 ?* ^
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
7 ]3 [6 b/ v' K d
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
% Q4 c9 c) V# ~1 p: h
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
o, N/ a& p! K8 L9 v" C
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
! o J m. `' J( r
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ w7 v+ f7 \/ E2 h) l8 B8 b
9 n( E0 B0 s5 a3 [- l1 S+ u6 i
// à??μ oˉè*
! g: P5 x. d, Y0 r/ l$ O0 r2 J
pLight->Diffuse.r = lightColorPrv.r1;
9 t6 S9 T. |# y j
pLight->Diffuse.g = lightColorPrv.g1;
$ ?/ P/ [% @7 q' a. Z+ W* i3 e& c) x M
pLight->Diffuse.b = lightColorPrv.b1;
4 h# }9 {6 Z+ e3 n; z: m; |6 M
// oˉè* ??à?
) U& o3 C6 K- Q+ `
pLight->Specular.r = 1.0f;
9 F% f9 v7 E! I( k l" k$ t, F) D
pLight->Specular.g = 1.0f;
8 R, T$ h C5 z9 }2 J& N7 l1 Q
pLight->Specular.b = 1.0f;
8 l( \& K0 T$ c+ Z
// àü?? oˉè*
5 i0 Z6 ?8 g. q6 q" [
pLight->Ambient.r = lightColorPrv.r2;
0 V' X8 H7 x5 ^6 p+ ~9 N
pLight->Ambient.g = lightColorPrv.g2;
6 i2 ?# g n7 C4 H5 X2 `) s
pLight->Ambient.b = lightColorPrv.b2;
" W& L5 k) N. x \; M; S
( F, F" ]0 r9 n- v- b) h2 s) l
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# d: h3 }+ F% I8 X
{
8 d$ u1 Z8 P& R5 H* ]! {
pLight->Diffuse.r *= 0.6f;
$ C* |. l8 [+ D+ s: w6 B
pLight->Diffuse.g *= 0.6f;
% V, X2 J& p: J+ u6 ~/ P" d
pLight->Diffuse.b *= 0.6f;
8 q: `& B3 B( [' {# L
pLight->Ambient.r *= 0.7f;
: V2 G" M. l0 y( [
pLight->Ambient.g *= 0.7f;
$ o; u- k% y; K" F3 |9 i5 e- a
pLight->Ambient.b *= 0.7f;
: @" e* B) P5 n/ T3 _
}
9 E% P5 z9 O8 }$ e
2 \8 ]5 U& H8 {, K
#if __VER >= 15 // __BS_CHANGING_ENVIR
4 _5 c/ F! z2 U) C
if( g_pPlayer )
5 f; `- O5 }: T
HookUpdateLight( pLight );
9 e! G4 W# V( \+ d7 z# _7 a7 @) X
#endif
: {& |/ y# R' g* g; U b
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
! G: H/ S0 f" s6 F! J7 C
! ]% T1 |1 }4 {& I
#ifdef __YENV
2 }5 W- W @. I+ ^& X) f
pLight->Diffuse.r *= 1.1f;
+ W5 w' v( p& j
pLight->Diffuse.g *= 1.1f;
( z w& T: i4 {) K- }" [
pLight->Diffuse.b *= 1.1f;
3 V5 N' B `/ |9 i
// oˉè* ??à?
0 b/ G/ \" L! x' F7 c
pLight->Specular.r = 2.0f;
2 |8 x; @9 x9 Y& Q. H' }% m
pLight->Specular.g = 2.0f;
, Q' i+ R. K! B5 B/ t, o9 \
pLight->Specular.b = 2.0f;
6 {1 v6 V/ e% Q2 ?% Q
// á?oˉ
% Q5 `2 c/ Q3 J7 i+ s" S
pLight->Ambient.r *= 1.0f;
5 Q. }1 |& P2 e) ?8 R1 u
pLight->Ambient.g *= 1.0f;
, G' O& Y/ M# B% T( G: B N5 a9 g7 E
pLight->Ambient.b *= 1.0f;
3 Q5 ], E( n+ K2 g+ Q5 u- f/ \' W R
#else //__YENV
6 |% J4 T- f( ?" j( _6 ~5 m) E$ \
pLight->Diffuse.r *= 1.1f;
, C8 o7 H9 ] l2 W z8 O
pLight->Diffuse.g *= 1.1f;
0 z$ f0 [. d6 e+ r
pLight->Diffuse.b *= 1.1f;
: m! s% {9 X i' b6 K
// oˉè* ??à?
! g$ U% n2 h4 \
pLight->Specular.r = 2.0f;
H5 }! J0 A' f, p- Z
pLight->Specular.g = 2.0f;
2 X( h% m+ q) Y
pLight->Specular.b = 2.0f;
) ]! _& d* L4 u4 c' X& b6 r/ c
// á?oˉ
0 ^: H2 b8 Y) J
pLight->Ambient.r *= 0.9f;
+ i* s/ ~& \. q+ d1 Z8 n; P( M u; H
pLight->Ambient.g *= 0.9f;
% e( y P: j- q5 g
pLight->Ambient.b *= 0.9f;
& C6 S$ F$ ~. b, T/ N/ t
#endif //__YENV
+ H' @1 r1 a4 [* Z6 o" p
; A# a# @- Q% c* Z* ]
memcpy( &m_light, pLight, sizeof( m_light ) );
0 ~; T! K0 M, X! A
5 x0 l' U+ b$ |( I
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
2 r1 J6 ?5 i6 {7 Z) V
D3DXMATRIX matTemp;
- Y! k+ ^, s/ Y
static const float CONS_VAL = 3.1415926f / 180.f;
8 u, ?6 w3 Y: E* n: R6 t* g
; i- j( h; N" X9 `0 n7 Q9 v
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
! ~& U/ T- {# N' ]( l0 `8 w Z
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
" g3 n1 c: x, j' L* G
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
- A2 O$ t9 D' y7 y* S: F: S
pLight->Appear( m_pd3dDevice, TRUE );
7 D2 k, @- h& P8 t
' t2 N2 r; _! N. }
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
( N" E; @/ S2 X- E0 L5 N* D
// D3DXVec3Normalize(&(vecSun),&(vecSun));
2 @. m$ R- k6 _! [8 q
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ u0 N* E' r4 V8 Q. M
0 B7 g( b# R3 S' H( l0 R
DWORD dwR, dwG, dwB;
7 D: S8 P1 o( \- T- z! s# g- y5 u
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 n& w/ f8 p: E6 y
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 {- b& |6 `2 P: H3 l
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ |1 }5 L& B5 P+ u
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; x O( b. l/ x Q) _2 ~% a2 P
}
7 u, d" M/ m) u9 f* n
}
0 K/ R0 H" ^9 K
- B) k) M- d$ z% h$ S# r2 w* s+ J
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
/ S* r& d; G8 [0 M v* g1 w) ^/ ~5 a# a
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) );
' w+ t! ~) U$ C9 R: h" u
::SetLight( bLight );
, p7 q$ S" J- r
2 I6 o3 u5 O/ I: K& l5 N
// ±ao? ?D?í???ó á¤à?
1 B' L8 n4 h$ ^( |2 _' Z
m_pd3dDevice->SetMaterial( &m_baseMaterial );
$ Y2 C- N" ~. n0 Q9 z; v, x
# z% h% l- @) Q, N6 {; f
#endif // not WORLDSERVER
' z' m; w) t3 I# ]' j* Y$ p. e
}
: V C" y. g l2 c
并更换
$ r2 ]! K _! e# L3 d3 z
Code:
- w* P. F; ^, V0 @- { \
__FLYFF_INITPAGE_EXT
6 {1 m! Q$ I9 y2 y p% |
定义
, d) ]2 Q+ i% R( y, c% o! D
5 {) d5 z, {# m3 [; G, H7 Q3 h
0 l* Y8 Y/ K9 e+ v: T
6 @. y1 w* W+ b2 N. s8 k; `2 Y
7 e% l, z$ y7 y( Q
现在终于删除我的狗屁加速...
; Z8 j! O) O, c+ n: E g ~
4 A, z$ g% c) `
) q) s% R/ A: l0 K' d( ?3 M* y
$ Q9 N. y" \9 B, R- @
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2