飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
1 ? p) c; L, k( Z* }& [# M) |# e9 L
尾翼:
" A! E7 C* y+ _' F e# T4 [7 n- b: i& M
5 P2 {/ V1 P0 J3 e) V
代码:
' ~2 `3 E+ z+ U2 ^% X+ d& M( Y
CWndAutoFood::CWndAutoFood()
( |& z6 T) m' X. v6 r
{
/ P# P$ ]& Z' b; M
m_pItemElem = NULL;
6 X# U6 c" v7 S* x" F
m_pTexture = NULL;
# c4 x6 U9 Q7 m( P( o5 U
bStart = FALSE;
: O$ e# H5 A8 e5 ?3 l; ]$ m
}
7 K, d4 D: z5 b% e
1 x7 h( a, C$ _$ ^- K
CWndAutoFood::~CWndAutoFood()
3 B* w% x* E0 u) F
{
0 L3 b& n& q; H
AfxMessageBox( "AutoFood ist gestorben
" );
/ o( H5 s( x9 _9 a k6 P
}
2 \* Q# q& [2 i6 I. w, k
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
/ b: R! [$ c5 l9 O7 W
{
- M& j8 a; O; M# w8 L
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
+ b6 m( ~' t* L5 Q- ~$ q# n4 [
}
) {( K! m8 L9 {& y U+ k+ A8 D
* U U4 W+ v3 C
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
1 L6 T' y! p: a3 E) V6 P8 M' V5 V
{
1 A: ?* H8 A, E6 l! k! |
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ w; y2 ^- v$ J' w
CRect rect = pWndCtrl->rect;
& E) m) B, e$ e) d! O
if( rect && rect.PtInRect( point ) )
9 `) [. J* y6 [3 S! E
{
, k! _. l# O7 V" W" X
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
0 x) p" _- K! z% T' i9 |
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
; ?7 a/ g# Z3 ]% n; t
{
0 x( ?/ X2 v# X/ H1 R$ J
if( m_pItemElem )
, K# _, f H+ s5 S! c9 g2 r
{
2 h$ ?9 R: p5 _2 @. J
m_pItemElem = NULL;
8 |1 i- b8 [: U6 @, t
}
) k) l# |: M: F" a1 E
m_pItemElem = pItemElem;
! y2 @! h1 I- o% v7 ^6 f" I
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
9 k( Z4 h4 I. _; B4 E. ]
}else{
5 ^& l P) N3 `" v; G! F: ^
SetForbid( TRUE );
6 |3 }8 e) s3 s" G! ^9 s% v" U
}
8 ]- C- ~. J3 h2 P G x
}else{
) ]% `2 P! u& q: S4 ` V
SetForbid( TRUE );
, F& |6 q' z1 I2 w
}
1 g$ V$ J {( h3 c- e
return TRUE;
2 ?8 w" R5 |. x' c& n
}
2 }3 b* d/ B4 _- A
! ^7 E; F+ x' u6 t8 }
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
( b/ V6 q+ T. Z( o+ c! S
{
4 J+ X& u2 [& x; s
switch( nID )
- n! ]! N7 m4 s7 m
{
7 E& u/ {4 e+ Q9 G/ G
case WIDC_BUTTON3:
, b# t; c- Y! ]5 m: C
{
( K. ~7 r2 d9 J/ n# ?
bStart = TRUE;
& C' u/ a" |9 h5 U/ c4 ]9 u7 |
break;
, c1 e/ L' e& r- T' U1 F$ f
}
2 u6 J4 b9 u$ ~( _$ ~$ w7 q
case WIDC_BUTTON4:
* ]' r& u' ~( F0 c
{
/ n1 I0 B' }, ?/ p; i" k0 t j# {
bStart = FALSE;
0 B! ?0 r7 Z5 G, j" U
break;
8 e' J0 V$ _* b
}
+ @. y# C" Q( l% [
}
S; V4 d o( [7 P7 K. d7 s
return CWndNeuz::OnChildNotify( message, nID, pLResult );
% A0 q# k q7 |* Y c; Z
}
$ [1 ~4 D1 m5 n/ J: |3 t1 K4 L( O ]$ }$ R
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
8 m. h% g7 N$ Y& w/ a- r. G# k) f
{
Q! D' W9 |$ d- v5 Y2 P5 ^
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
" R8 j9 A" V) W
if( bStart || !m_pItemElem )
) c5 Q" N p& ~$ u
{
" d% C1 ^' o% k
pBtn->EnableWindow( FALSE );
" _" }1 J* o, l+ @1 V7 {
}else
! X5 s' K5 j' ?3 B% W# h" r- n
pBtn->EnableWindow( TRUE );
0 g" [& ^" v& ~! y! i; T* {
if( m_pTexture )
9 B6 Y& g# ]7 r' i9 N
{
* n' ?+ J* a {
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 y. p h( A Z4 C
if( wndCtrl && wndCtrl->rect )
4 H1 ?% B5 m) C' [' Y9 t$ ]3 g* P
{
( z X1 j: o9 K
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
6 e& ^1 {+ a6 d8 _$ y G1 W
}
( y* `& J+ S& [7 x+ _7 ?+ T
}
, @0 R! U) E, o5 h
}
+ b, \! F2 w! Q6 T1 K; B
! ?8 x8 i& _: A/ B
BOOL CWndAutoFood:
rocess()
G$ S& \& r" c: I( L' s% I
{
* \6 ?1 ?. ?' Q+ H# X5 c# h
if( bStart )
( ^) _! L( t2 L
{
' M: y9 G4 K2 R- P2 w! r7 N+ `
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
! E N+ b0 B1 |0 ~+ J
{
4 s' [- C7 I# H; Y; q6 P2 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() )
. w6 M! u j8 N2 c5 u+ e
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
) ]6 O1 k, m* i7 |6 B( D# I
}else{
' I7 z% a% J' r
bStart = FALSE;
4 i4 x* G8 v" L8 ~$ B4 D
m_pItemElem = NULL;
+ k9 M4 ~0 c+ J1 p8 F8 w6 x
}
& x( M. X8 Y+ O, Z3 f( M
}
+ j o. C4 D, S/ U, y6 _
return TRUE;
L+ P5 P+ H& @7 C! s5 j" i8 `
}
1 h7 U3 @3 d0 m' `
9 |# y' I# q: p: ?6 r
登录视频废话:
% g* r: s3 F ]7 Z! [: ]
尾翼:
, u+ Y9 `/ c/ o3 u% Z
. s/ V# {" D$ O8 e8 h- _
代码:
5 z2 P5 F j) P6 [) |) y0 z
! a1 X$ _; T! S; h+ [
void CWorld::SetLight( BOOL bLight )
i; r% b9 j o$ f p7 U: U
durch
* O" b b3 u0 K
Code:
& r7 v. C; y% \5 @% |
void CWorld::SetLight( BOOL bLight )
2 m* t! y0 ~3 m) Z3 S' W
{
( ?2 s3 [5 ?! j7 |# g' O
//ACE("SetLight %d \n", bLight);
3 \0 W9 E; T4 R! b4 x u
j7 A& `& G" l: c4 X
#ifndef __WORLDSERVER
* A* x: O; B0 r% `4 n# r
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
( i9 U2 c7 c3 U* l/ g$ R) K
CLight* pLight = NULL;
% }, h/ Q2 u) @' S/ D; B
: S: E4 y- l1 O, @
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
m) o' f, ^- G- _& Z3 F
0 }( p. e' r% U
pLight = GetLight( "direction" );
7 \" x, C0 n: b! z; C5 Y: K; A
6 G& y, d* q. P& h
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 D s1 S! K, p4 \
if( g_pPlayer ){
) Z1 I+ Y& e0 G C
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
4 w/ X- M- `- N% t1 l
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
, u6 E9 O2 q" Y( k* E6 w
{
5 v! y) b4 |0 |% p4 ~/ `
if( pLight )
( H# ?5 s: D8 r# t3 @$ L
{
. d" w7 T2 O( a7 B
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
4 K+ ? x' U4 `5 P3 q- R
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
$ Q6 J K @3 D9 S# m$ m; m7 D1 B7 y
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
v; v- s4 c! ?! [; p% q" T
. O; @( R5 D* B6 }- F
pLight->Specular.r = 2.0f;
$ }3 y+ x N s& {/ p0 u" D
pLight->Specular.g = 2.0f;
5 o7 R( ?2 {8 @
pLight->Specular.b = 2.0f;
, Z3 R& j l2 |8 t B9 v
! T5 W. B2 L+ l& N; o
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
0 f% X4 q8 N% O
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
# J2 C* ~! G9 U6 l. `* F% F3 u. a
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
]3 E! v- m' `
9 x6 S; d4 s5 E5 x/ [+ B
HookUpdateLight( pLight );
# y. f9 e7 Z$ Y
# u+ n& v& V+ \; s1 U7 d
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# Z, n7 p/ P- N3 x8 k/ K
; \4 m9 c2 C5 z8 A
pLight->Diffuse.r *= 1.2f;
! R% x" _/ \3 i8 H5 L% n9 P. k1 p
pLight->Diffuse.g *= 1.2f;
9 Q0 g+ Y; N$ g# f# `
pLight->Diffuse.b *= 1.2f;
1 p* u( T" N! ?/ V, N; B
) d) I) N" E# D. u$ N2 l4 H& {% ?
pLight->Ambient.r *= 0.8f;
1 q4 R4 i0 Z# Q& n6 T' f( d7 T; i$ Y
pLight->Ambient.g *= 0.8f;
# X8 [1 b% r5 y' [' J/ w. a" C
pLight->Ambient.b *= 0.8f;
' ~ g+ X, g! x' w; L. B9 \
& m# c* L4 q, C5 a
memcpy( &m_light, pLight, sizeof( m_light ) );
$ y$ d+ w4 W) j
! k/ }' I- U" m4 H# f8 B6 U. i
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* v Y( ?! d9 W2 Q. X) ?. j
D3DXVec3Normalize(&(vecSun),&(vecSun));
% a" E H4 Y2 B O
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
( S7 A* G" z: t' Y9 }
pLight->Appear( m_pd3dDevice, TRUE );
0 R* i8 [- v: N% `: q7 q1 j
' ]5 V/ ~# b" W3 g: t8 e! g
DWORD dwR, dwG, dwB;
) s5 A6 _' Y# z5 O/ q
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 Y0 F) g. D; W6 f7 C) T& f* C: Q% s
dwG = (DWORD)( pLight->Ambient.g * 255 );
" k3 o+ Q* V6 Q! V* G
dwB = (DWORD)( pLight->Ambient.b * 255 );
" b0 W( L" J9 m1 F" p/ R+ v
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ z4 K% \- L J
}
$ W; f" y) u1 x* A/ d2 n
}
" H4 H% Q4 o1 h+ K# q
}
8 o- V- C5 Z( e/ A9 Z9 W
else
" t# G* e3 R S) J- A' N8 ]2 a3 v
#endif
. V* e7 @0 V+ g
6 Y% X N. o$ U3 [# z. {1 V
if( m_bIsIndoor )
) O/ X `9 \& f) m0 _9 [
{
3 U s1 T0 o# }/ W5 K4 u* \
if( pLight )
. v7 M3 Y, o z; F) N6 f4 o3 D* o
{
; z! |- Q7 G( ]; ]' O
// à??μ oˉè*
$ n- q" L' R+ @7 Y
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
" a; [ ^! u9 p2 U" ~9 Y
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
3 w d( T5 {( O6 Y* s4 N2 O
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
1 K" R/ G" [! }! M
h# I6 M: a! Q6 b: x- R$ b
// oˉè* ??à?
; [0 U3 W: E, n
pLight->Specular.r = 1.0f;
/ t3 L. m0 g4 c* W& N. B
pLight->Specular.g = 1.0f;
- Z7 B% u1 U/ @2 l! o
pLight->Specular.b = 1.0f;
3 n' w0 q3 K# n9 g+ \- i
// àü?? oˉè*
6 ?! D# F% v( w6 L7 ?2 R0 a
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
8 g; K6 }% l* `
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
" j) R8 P- p: ?$ I
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
( i& [6 T# i0 h
5 m: m! M9 @! E# o1 k3 Z
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! |$ H/ s, l0 t, Y N
{
* r; ]' y6 D+ S- Z; b) T8 b
pLight->Diffuse.r *= 0.6f;
' U% `! y$ ^( d$ R4 ]) l
pLight->Diffuse.g *= 0.6f;
# ^5 q) o' S" Z! z. ?* U5 y
pLight->Diffuse.b *= 0.6f;
( s7 z; Z e/ c
pLight->Ambient.r *= 0.7f;
; s3 ]1 z z% W- B, O
pLight->Ambient.g *= 0.7f;
$ y: h, ?% [! ]
pLight->Ambient.b *= 0.7f;
0 O, Y& E0 e0 K- p8 Y
}
* ~7 Y; L; j3 g6 E
+ b* {0 O { F5 D9 f0 g$ [
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 Y+ p, e7 z( n t% v4 p- U5 j
if( g_pPlayer )
& X- u+ T8 r+ F' n
HookUpdateLight( pLight );
, f; R/ U- B, Y% |! s3 ~
#endif
[5 [* _9 k- P. l. w# s$ z7 D
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 a( H. I% B% X
- l) X) ^) s; `" J5 o1 ]
pLight->Diffuse.r += 0.1f;
: R7 W7 O4 S" h2 r4 I O6 i% P
pLight->Diffuse.g += 0.1f;
# j# f/ m. `+ Y9 s
pLight->Diffuse.b += 0.1f;
2 B* U: ^5 K* C* y
// oˉè* ??à?
M' ~+ E8 Q, |' F2 p- a9 }% @* ]
pLight->Specular.r = 2.0f;
) w! f# v( P& j" I8 Z+ k' K
pLight->Specular.g = 2.0f;
, M3 s7 W- w! ]
pLight->Specular.b = 2.0f;
! P! i. }8 j% k( ]
// á?oˉ
+ c6 |: E& A) v
pLight->Ambient.r *= 0.9f;
T c" i% l- d2 h3 O; S
pLight->Ambient.g *= 0.9f;
, R# B: j/ Z z, B
pLight->Ambient.b *= 0.9f;
1 ~! y. y5 X" w; i7 t
: |2 C' T# P6 w C2 u: X
memcpy( &m_light, pLight, sizeof( m_light ) );
?6 [1 f' i- t
1 R" x) F# I9 ^5 g$ y- \+ n
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
( V6 R/ @" N) m v! p( Z7 u3 v0 f; t
pLight->Appear( m_pd3dDevice, TRUE );
" H! O+ L' O" v3 F3 g( q4 n5 ]
! H4 L/ U; d* c: Y* d! g4 F# V5 L& I
DWORD dwR, dwG, dwB;
* R( R3 c6 m. J, F
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 n; j( Q2 j7 g# T! g: i/ H% s F
dwG = (DWORD)( pLight->Ambient.g * 255 );
`+ I. i0 j( [/ M$ d; o
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ [: \/ q, [, U* F; r9 V6 n \
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 b4 O0 R! N& j6 V: A2 A# d+ x, z
}
( m l5 w$ p% ]2 ^' _
}
& S# [# X7 ]+ J+ g) I2 B3 |; F) W
else
2 u- @+ l' z- T* d) z3 w
{
( j6 V1 M' Y7 B7 ~7 V
if( pLight )
3 w6 b0 [7 ?6 w- A3 N% R
{
5 T& V( w- q. I. Z# `5 Y: I
: g, r$ \. Z) ]9 r+ f) e2 h- c
int nHour = 8, nMin = 0;
: l0 B3 k2 p" T
#ifdef __CLIENT
0 r, J- o3 | B! S& }! V8 Y3 @/ J! J9 ]
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
6 I& W! b( w6 [: I C. K! Y% e
nHour = g_GameTimer.m_nHour;
( e% z; Y3 f. _' A9 N0 e! m6 s
nMin = g_GameTimer.m_nMin ;
' D# ]1 g, ?( d( c
#else
- {7 P7 a' d+ P# {) x
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
! f" l% c. A& j* \7 n
if( m_nLightType == 1 )
0 t0 B) _/ ]9 X0 v
nHour = m_nLightHour;
- t3 B7 H( Z7 T& V3 n: R1 _8 d4 L
#endif
; r/ l; O4 P$ Y. Z) F% w
nHour--;
! u8 X1 W' p+ R, q3 G
if( nHour < 0 ) nHour = 0;
! Y- t; w; T. y# O" j8 m/ R5 X5 J
if( nHour > 23 ) nHour = 23;
2 [: H2 d- X7 M. H5 f- K
) U2 p$ ]1 n0 y' b2 ` @) }$ I- o
//if( m_bFixedHour )
5 n2 T* E- P, U
// nHour = m_nFixedHour, nMin = 0;
/ _3 G* f. G1 T! i) f% x/ |5 O2 F
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
* _! v; o( B6 t0 [! L
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
# I9 K8 T; }' D( `2 z, a0 I* y3 c
" E% U9 T6 I" l1 w! Z7 I& p7 Y
//m_lightColor = lightColorPrv;
( P% a+ @" q7 o; w0 [6 p. n: B% A5 \
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
# }9 K0 L6 @0 x, C
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
; s% x1 l2 n! a M
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
/ K# s: X0 f4 j, F5 `
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
! G! i$ w! y7 \
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
7 z% E2 F6 }) c6 I7 N" h" X
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
1 x9 y0 y( ~0 Q! Q8 E" K
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
# @/ v& N. _: O& y3 }# e
5 u. h d- c+ u( S: I4 Q
// à??μ oˉè*
5 z5 u6 X V# q8 N" X% |
pLight->Diffuse.r = lightColorPrv.r1;
* u' E& `8 Y9 E9 R. B( u/ ]5 `
pLight->Diffuse.g = lightColorPrv.g1;
- g8 t; i. x& o+ c9 ^5 i# M/ Y
pLight->Diffuse.b = lightColorPrv.b1;
9 x6 [3 R% ^7 J* L3 B$ g, K+ P# s
// oˉè* ??à?
! x$ W a$ b0 I2 G x
pLight->Specular.r = 1.0f;
. C6 `, _$ x; v
pLight->Specular.g = 1.0f;
* a* {1 K; F7 p
pLight->Specular.b = 1.0f;
- O. C* C2 `' j3 }4 |% A
// àü?? oˉè*
+ g* i- g. e- V
pLight->Ambient.r = lightColorPrv.r2;
' y! |& v# \. `+ X, Z
pLight->Ambient.g = lightColorPrv.g2;
9 U6 B1 V$ ~" x; z, ^' _& E( m
pLight->Ambient.b = lightColorPrv.b2;
& c) p0 N& D$ Y% j) g' R6 [
. g# C1 ]- W1 @7 m4 L4 b, j
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
2 V2 J2 U$ b5 h" ?2 b6 S9 U
{
; C! D6 K' h% |2 U
pLight->Diffuse.r *= 0.6f;
. w7 S4 Z+ m, n) W- u
pLight->Diffuse.g *= 0.6f;
' Q! a U! e }8 c- k
pLight->Diffuse.b *= 0.6f;
& m% N. |0 {4 f7 m1 D4 h% i. U
pLight->Ambient.r *= 0.7f;
0 A- r9 x% ^5 r3 W$ |
pLight->Ambient.g *= 0.7f;
0 u5 ]% t' G6 w, s, y. ?; k% y, {6 N
pLight->Ambient.b *= 0.7f;
. {# J- k$ G, v) u! r5 L0 Z/ y
}
" ?" v/ z5 l% {$ Z/ ?9 g
% _5 e8 `! s0 z' M: M# R% X
#if __VER >= 15 // __BS_CHANGING_ENVIR
, m! H9 x% F& I( H5 g/ ^' a% g
if( g_pPlayer )
7 B3 D5 G% v; t) f6 w
HookUpdateLight( pLight );
( ~- {3 c S& R
#endif
$ `5 P0 l% ^ k0 \
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 V9 v( a0 W- y/ G' ]9 h/ d, G% @
: d0 ?: I4 \2 P3 N
#ifdef __YENV
. u. \3 v8 b ?; v7 j- R o
pLight->Diffuse.r *= 1.1f;
* J) G$ }, ~/ s; k9 t$ [
pLight->Diffuse.g *= 1.1f;
G8 n4 ]% Z; T
pLight->Diffuse.b *= 1.1f;
N' h8 J: \. F: k# O N( k) _ _
// oˉè* ??à?
' Q3 _: `& D6 S }$ i& G# H" @
pLight->Specular.r = 2.0f;
; o7 P5 c0 i3 \ n6 n& V
pLight->Specular.g = 2.0f;
" A. U6 S4 h" f3 H1 n; E
pLight->Specular.b = 2.0f;
% i0 Y& w0 R7 t) @
// á?oˉ
0 s' L7 F7 x% x) F) b" f) c
pLight->Ambient.r *= 1.0f;
% n" |* i7 x5 ^$ b v) \
pLight->Ambient.g *= 1.0f;
1 p% p B8 R- |
pLight->Ambient.b *= 1.0f;
6 W6 u |) A2 G+ ]! t
#else //__YENV
% ]* E; v8 q. U% b) h
pLight->Diffuse.r *= 1.1f;
# q y8 v6 l o) u$ {
pLight->Diffuse.g *= 1.1f;
: Y1 d3 z$ g( J& G9 [9 \5 }+ `7 |
pLight->Diffuse.b *= 1.1f;
6 t* k2 ?4 o, S A' I' N+ L5 Z0 n
// oˉè* ??à?
/ K2 h: l" x8 _, w* C& |0 w, w9 A( K o
pLight->Specular.r = 2.0f;
5 G+ M H7 P/ m7 N" r
pLight->Specular.g = 2.0f;
1 c& ?5 \' p( R. U. s
pLight->Specular.b = 2.0f;
5 ?0 P- J# T7 C" I4 }
// á?oˉ
3 @; T0 h Q2 H8 p8 f
pLight->Ambient.r *= 0.9f;
- t E1 |, T8 x6 l6 D$ C$ e) |
pLight->Ambient.g *= 0.9f;
8 u8 @; p0 H1 l3 Z% x) I1 d! B; z
pLight->Ambient.b *= 0.9f;
1 A; ^7 u; x4 k! @0 e; N6 S
#endif //__YENV
# z+ c" \4 ]' ]" F" E- M
- s- J9 Z: f6 e8 `' q
memcpy( &m_light, pLight, sizeof( m_light ) );
2 J1 o% u; Z* G9 }
- O* p" n: e& F/ l) n- h$ U) D
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
3 v$ M/ L; C/ S& d! t
D3DXMATRIX matTemp;
& {7 m, |' B" e1 T8 {% J
static const float CONS_VAL = 3.1415926f / 180.f;
0 w; y; i8 T! r/ A/ b x$ a" t
# G- W8 E- c" A# R" }5 l4 G& Z$ V+ n
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
2 R& _" n. F( a
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
+ j* m! D6 t' B
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
5 }: F* U+ q, a+ [0 Q
pLight->Appear( m_pd3dDevice, TRUE );
. D: ~1 v6 r. e7 _
) B/ c# a* m! ^0 {. ]/ R' e
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
, G5 w! F3 ], w( L
// D3DXVec3Normalize(&(vecSun),&(vecSun));
. J( [! O( z) P& t8 v$ Y
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 C; X3 A9 a- r" X) n8 }
3 }5 c1 A: g) U E1 V3 G
DWORD dwR, dwG, dwB;
5 Y4 ~6 z$ v! c5 d& O* I
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 G6 M' i8 i( g7 F* w4 T; ?
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ Z* z/ b/ X( \" P, Q
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ G' K- ?, Z; z! G5 f# H) f
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
7 D0 I; r& ?( O% i5 T8 C
}
0 C1 D/ o& n5 F7 K# d- g
}
' p# `" z# G+ c V, k7 G& |
/ N7 N! M, }5 ^- I6 R
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
: x2 O7 q( }; ^5 B# 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) );
# j( [8 r5 |4 D S2 v6 [' O
::SetLight( bLight );
2 A0 T1 k7 `) G9 ~* y
; `7 v4 ?1 c, U" Y$ V- L; ~
// ±ao? ?D?í???ó á¤à?
7 S5 U- Q0 B9 f) e, q
m_pd3dDevice->SetMaterial( &m_baseMaterial );
4 I/ c3 ?3 O. L& ^7 h' x8 L
6 Z7 d$ Z! e1 X% [) v% S) i
#endif // not WORLDSERVER
0 B6 k0 m- ^0 B
}
1 k* a8 |! Z i& ]
并更换
! Z6 I' k$ z! B
Code:
6 N% l4 S* m) M) V+ Q$ V0 s
__FLYFF_INITPAGE_EXT
$ b' m9 r9 h7 r2 o
定义
9 Y" a& f) E- |# T
" Q/ A0 T$ V# d* S) @: n! J1 B% S- ]
# W# J m# z! B" O8 t4 {: Y
! I0 Z" e% E- h; _( \: W) N: Q
: Z; h4 [8 D5 o, z2 r
现在终于删除我的狗屁加速...
1 P* W6 z( v) D0 x1 w3 n
: o) @8 r% M- p! H5 s
# ^7 w# }# V! F* n/ g6 C
+ l5 Y$ X0 V- O7 n7 Y
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2