飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
8 |2 | _, N4 C5 y7 q2 i& l
尾翼:
L" Y; ~/ @' b! j% l
5 T4 P' |5 s f* x' b
代码:
$ A) }$ S( m. N& C. B
CWndAutoFood::CWndAutoFood()
& k/ O- s- b2 M& R5 W7 f3 P$ K- x. E
{
9 ]$ W& `1 _, f: b
m_pItemElem = NULL;
: G$ B' L1 D( e
m_pTexture = NULL;
5 a6 l2 @: v! _7 J/ ?7 m z. f
bStart = FALSE;
/ O* u: ~0 a/ j. x+ ^3 @4 q
}
! a- m( t7 |) l y' t5 ~; o( `0 ] J
6 D1 M: z4 L4 i1 G) E( P
CWndAutoFood::~CWndAutoFood()
5 m6 }! ~: s; Y* ]9 u$ z$ F
{
9 [8 K$ G" }" M) l, H
AfxMessageBox( "AutoFood ist gestorben
" );
) |: J8 O# {/ _- ~6 }6 v! u
}
7 o2 h, ^$ Y4 @1 [# O C
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
. ]7 X& T+ X% t" Q1 F9 q
{
3 h* g. u4 S+ c% p" v
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
$ C2 m6 @; @$ C1 }6 [
}
3 z7 B+ t4 f; }8 L; K2 M8 y6 t- I0 Y
/ H7 [# W% q8 u$ S6 m7 u+ v
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
# F0 G! t2 L: ?, o1 w; c
{
X4 P) b/ b( m. h
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ b1 V2 S, b$ c: O
CRect rect = pWndCtrl->rect;
' v5 {- C X0 O% |' p
if( rect && rect.PtInRect( point ) )
2 b! Y: H; ]9 W+ k
{
6 K8 P5 L4 ^( P) b8 A8 l( B8 y* c
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
4 v; B9 g$ k% T& b, S0 Q
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
" B& i' S `2 a7 Z7 _2 I! y6 w' U
{
( E/ g% S* N7 C4 a9 a
if( m_pItemElem )
( X) H: H x5 l, k! J7 v0 L
{
, B: H8 m" \3 f/ `9 _
m_pItemElem = NULL;
+ ?! x7 B X4 E$ r7 L" a$ _
}
( C) A' Y i3 i1 M) ~
m_pItemElem = pItemElem;
/ H' A7 ?3 n" p+ z. a; ^2 p n9 B
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
# ~8 k* X3 y: S4 ~, C! H
}else{
4 {! v$ K* F& C1 a. Z/ G) ~
SetForbid( TRUE );
B! Y2 i" w% o X3 T3 d& K/ t
}
: N' Q% g. l4 D7 G
}else{
# K" j) E( ^% L+ o9 d1 N# l
SetForbid( TRUE );
2 n; E& S4 I1 c) l8 q; V
}
* A% O# ~, z5 X1 x. @- O
return TRUE;
8 r3 [7 i8 H- K
}
/ {; c) q2 x/ T
+ c# i0 [8 o8 Y- M3 v
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
( p! h! e2 P! S: H
{
P1 F" o( j: q, U3 B1 i
switch( nID )
( i4 L4 g9 T4 A7 Q1 O* S$ p
{
& h, c& u, Y& T1 n1 E
case WIDC_BUTTON3:
6 i* t$ ^- M& h4 ~
{
: K2 x3 }5 p( l5 S
bStart = TRUE;
! z% T$ u, I) Z& \. _# S
break;
" _. W# {" Y: b8 M3 X
}
+ I% t, T1 I. `- n- i5 `9 ~9 f
case WIDC_BUTTON4:
8 r$ O7 `+ f' F7 b2 M; c! M
{
' {0 J' ] J/ P3 \& z1 f& G% n& R1 q
bStart = FALSE;
}2 M6 }9 | K/ I- s+ l2 r
break;
. T% t& X% F6 f8 |7 N
}
* Z6 T3 U/ V6 Q' b. y
}
5 z7 v3 D3 E4 I" e1 Z
return CWndNeuz::OnChildNotify( message, nID, pLResult );
* `% x2 l: v7 z8 R' s, i
}
; @% ~( k9 c6 h" l4 W
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
* d8 t' ` S; V7 P1 \& g! d
{
I3 i' `# S' J. ]6 u' n5 v8 n
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
5 G7 P/ l& A: T) A$ o A
if( bStart || !m_pItemElem )
* k' }7 m9 B2 Z
{
& T( T+ R% n+ i0 ?" _
pBtn->EnableWindow( FALSE );
7 H1 Z r/ t" R( ? E
}else
, M$ X" m [- g v- t
pBtn->EnableWindow( TRUE );
" [6 B! s* W5 \% S8 _
if( m_pTexture )
5 M0 G" t+ `/ j, E/ ^
{
1 G! m- t( `9 _+ U0 ^' }/ U2 {
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
2 L2 [7 h4 P: C( Q6 |& i0 [* T
if( wndCtrl && wndCtrl->rect )
/ ^$ X* D6 W4 S* H/ Q2 @
{
3 x/ X$ b0 l5 C2 q- p( A7 e& D
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
& k& T- Q9 V8 E/ X2 K; Z# M
}
9 ?! c$ R. ]( q T# G# z% I& V
}
( r7 R3 |9 l! \ E
}
% ~0 o b- e2 _0 L* X& e$ l+ |
( q/ g0 w: z8 B+ |2 S
BOOL CWndAutoFood:
rocess()
% Y1 R0 j K6 \8 N
{
1 @2 K& z( _0 S6 R) B* _
if( bStart )
l( n# l S" O- g
{
5 _# [: w# u: w! z9 G" J3 a h
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
/ Q# G+ C4 l8 V! E' c
{
. F3 C0 N- y8 R
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
$ p- V, ~" e, S, r W: R1 ~5 Q
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
4 p( S" g4 l4 U5 O {0 S
}else{
% A" p1 Q5 v: r/ e; p+ X6 h. K1 C- w
bStart = FALSE;
' M- W i x: k! L9 C: W
m_pItemElem = NULL;
- W, e" K0 S5 r* b, k
}
6 V0 V0 l3 X v" X0 ]- u" ~
}
! ~8 I3 `7 ^3 g! p$ d+ ~+ B; O
return TRUE;
1 n3 a( b8 U# V
}
: d; ?1 q. Y7 l# x
, H& o/ E- G, M. M% k
登录视频废话:
* k% G: q( ]$ L! [- u- f
尾翼:
" I! A, t% x! T% B( B$ H
2 |) Z4 J* z+ M
代码:
6 {# o2 M9 \3 ~% ]% E
3 G5 l( ~9 K" E6 H8 ], _4 V
void CWorld::SetLight( BOOL bLight )
8 v1 _ C2 Z' H$ E2 y" w
durch
" w4 e" @8 K9 g& x/ G* r l# i
Code:
9 s. B6 i! T3 u% U$ N K
void CWorld::SetLight( BOOL bLight )
K+ x) w$ R v4 B- c- _
{
/ J/ r' \' c+ N2 a% y6 S8 q
//ACE("SetLight %d \n", bLight);
9 R( p8 y/ m: Z g7 J3 p$ [: c; Z
- r0 l+ m' }' W0 C/ o2 x
#ifndef __WORLDSERVER
V, B- k! O. J4 h! }
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
]4 V2 ^+ w/ e- D$ I2 }8 W0 i
CLight* pLight = NULL;
, G2 k: u, @4 `+ U& P0 ?* W
) n$ ^ k" h* B8 J6 Y/ G
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
4 Z: G1 ^7 e& P& o6 {
4 Y) `# }8 U. c* E& j. O
pLight = GetLight( "direction" );
% g/ M1 M% j) Q
' @% q% V2 X* V( g
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 @, B) j9 p( Q7 w5 X' x
if( g_pPlayer ){
: Z6 K1 X$ E2 I
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
$ S# w. H9 I4 K1 Q+ `
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
( _6 K# R7 Q" l$ P
{
* Y) e7 M9 c9 n1 V9 ~, f( E8 c
if( pLight )
+ L4 m' q5 o. n- q4 ?
{
1 g# X# y O) f8 Y0 x
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
/ h( I* ]$ [5 e- M5 x. U0 r
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
. ?8 }+ ]& w: [' j2 \7 {
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
- A1 [ ^- {, c
6 O. Y& ?% Y7 u
pLight->Specular.r = 2.0f;
: s# t3 M( ?4 L2 w0 Q
pLight->Specular.g = 2.0f;
" W# [; J5 ]* x8 c5 a/ @
pLight->Specular.b = 2.0f;
/ X/ y1 i$ Z0 l+ l) d6 o2 U
4 u J3 |9 w4 `2 g
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
! w: h1 F: b# s' E8 Q! v4 r/ U. g" O
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
8 C s n2 q6 L5 _6 x" O$ e4 N
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
7 h- R: G7 \& P
& f% G( A M9 h$ _* J. e. _
HookUpdateLight( pLight );
3 f y$ Y: f* o
0 h8 Z9 X* f2 |0 _" K
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' ]7 L; B. ]& Y) M3 A5 w7 S
5 }7 m+ Y2 B% {( P
pLight->Diffuse.r *= 1.2f;
( |2 ] o" m$ j* K3 e1 C6 Y0 m
pLight->Diffuse.g *= 1.2f;
4 B! [; @5 l7 }9 O, B0 n
pLight->Diffuse.b *= 1.2f;
& W% _7 `3 b# w8 T5 j! r4 x U
v V+ _7 Q; R( q/ D
pLight->Ambient.r *= 0.8f;
1 d" [. l9 `$ \" D# V* u: e& j
pLight->Ambient.g *= 0.8f;
3 A+ W/ `% j- h7 I+ z7 b: B* e
pLight->Ambient.b *= 0.8f;
# P( o+ B J- H. A/ R' c5 N
3 ?. C& C8 q7 k* N6 l
memcpy( &m_light, pLight, sizeof( m_light ) );
1 c0 a0 t* l+ }8 R8 h
, r; i$ o$ V) \
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# u2 k1 B1 y; v
D3DXVec3Normalize(&(vecSun),&(vecSun));
3 ~1 x' l+ _7 A+ n
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: T" S* J3 J/ o3 C. s1 v
pLight->Appear( m_pd3dDevice, TRUE );
) @+ z! F- C1 ^8 Q
2 F8 F+ D, t1 w+ g! }
DWORD dwR, dwG, dwB;
; s8 q5 z- j. A4 t& V# K w
dwR = (DWORD)( pLight->Ambient.r * 255 );
) \# N Z+ H0 e% B3 k k& x. C
dwG = (DWORD)( pLight->Ambient.g * 255 );
& b1 W1 K, E* t) H' J4 @( J+ {
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ W" ?$ F, Z. V9 L/ L; x$ a& [& i5 O9 Y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* |) c' [5 F# }/ ~: s" F
}
1 b4 Q1 U8 H' V
}
# V3 n; K4 g; k$ |) d) f
}
, K& \4 E" A1 i; n5 L5 J
else
6 o: b/ K; ?6 n# U# c8 a/ ]
#endif
, h% P4 C. @+ C/ \0 }! ?
! }4 i4 t3 k! Q' @
if( m_bIsIndoor )
+ D, s6 G# F+ H( ]3 W
{
. F' q' M# q, n+ c& h q
if( pLight )
- {/ j3 a* n* ], a/ y: ?
{
3 l5 r6 c* ~6 Q- H* a: ]7 R M% Z7 p
// à??μ oˉè*
% s5 n) S) e ?$ @- |
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
: e! y0 M" s1 V+ s- D w. E" Y" q
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
6 B6 E3 h! K% u
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
8 |# x; n3 v! P0 c- B- K' D3 o
' h% H& u# }* I! Y8 {
// oˉè* ??à?
" M8 o: s V ^* b) `2 I% t
pLight->Specular.r = 1.0f;
. ? u/ `! S- D
pLight->Specular.g = 1.0f;
( B' n7 ~9 I1 z9 `
pLight->Specular.b = 1.0f;
6 h8 x6 a7 _% e7 n& `
// àü?? oˉè*
6 {5 j) ]8 H3 [0 d9 ]
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
* g. E( S1 j) {( c3 U: n0 |
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
) P1 `- Y/ z: j. X9 ^. L5 Y
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
- t+ I( j9 t5 Z. ~- b7 }" _# ~* Y
. _! i9 [6 ~' S+ e7 a
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
2 k4 G3 ~* p/ S
{
0 p: s+ P- y5 g4 {. V" v* M' Q
pLight->Diffuse.r *= 0.6f;
$ ?& k" z8 X: \( V4 k/ v5 p
pLight->Diffuse.g *= 0.6f;
3 j1 `5 L, l# m8 D/ a$ X
pLight->Diffuse.b *= 0.6f;
9 t( M9 j" ^+ p; V. h* T$ [
pLight->Ambient.r *= 0.7f;
+ U r( w$ Q7 D6 t4 T
pLight->Ambient.g *= 0.7f;
/ U: z" P9 ]; c! x6 c
pLight->Ambient.b *= 0.7f;
! r* w1 v6 M; X R. h+ X2 k
}
8 Q( @) J( C5 ~1 M( g
7 o7 a, o7 e% @, S6 g& \9 }; U( L
#if __VER >= 15 // __BS_CHANGING_ENVIR
) w6 d, r, u1 T8 P2 R4 ?. H) J
if( g_pPlayer )
/ q% I# V- ~. m. v, H! X! L+ \4 w
HookUpdateLight( pLight );
_6 W3 S4 a3 F8 d; C
#endif
. Z) P) b. d" C) \' A2 P
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% `( \& q0 v$ e; q0 [8 q/ ~
+ x L; c7 \' D1 T* ?( F, z# Z6 S
pLight->Diffuse.r += 0.1f;
+ {6 d, t- h) F4 }2 m' E
pLight->Diffuse.g += 0.1f;
; w" _! a0 }' O) h& ^. N( X% w% v
pLight->Diffuse.b += 0.1f;
/ G9 j* I+ q1 ]
// oˉè* ??à?
& r5 Y1 Y0 n8 F/ I) I, ~
pLight->Specular.r = 2.0f;
. b. w& C5 ]* E3 p! [
pLight->Specular.g = 2.0f;
' v# ?6 w/ k. Y! T0 g/ h" A2 _) {9 R
pLight->Specular.b = 2.0f;
2 H- B7 q$ @; `4 b, z% m0 _
// á?oˉ
4 |# J$ {1 M( q4 r2 j8 z
pLight->Ambient.r *= 0.9f;
% u" }8 Y+ V9 ]
pLight->Ambient.g *= 0.9f;
' w7 H, `: i- u3 u0 _
pLight->Ambient.b *= 0.9f;
+ u: _' h0 ~* V! f
" }, J: @4 [2 A# ^2 F2 l# m0 u
memcpy( &m_light, pLight, sizeof( m_light ) );
* p. F, S* `: Y* d3 Z H
# s7 i1 w; j0 K4 w
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
0 m1 V6 ?; h9 A3 i0 U e& z
pLight->Appear( m_pd3dDevice, TRUE );
* M8 E: k5 N% G7 ?
% t/ Z, V, _; k; `6 {
DWORD dwR, dwG, dwB;
8 {3 l$ Z, V! ]) [ i6 Q2 P
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ V1 ]3 O; s: o4 M7 O
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 q6 T( q6 z1 r/ l& r7 ?# Y+ O
dwB = (DWORD)( pLight->Ambient.b * 255 );
' [" [& d2 A6 N! x
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* P8 |7 m+ l4 g6 [* s! F6 t: e
}
. B8 m- B6 H6 i" S: t' g- Q# R
}
, g P5 z9 D$ T8 W3 X
else
5 C/ c, ] T0 p+ S3 l7 d3 g
{
% A6 p: s$ b% |* R, P
if( pLight )
4 X4 P4 t+ H8 e* S) @# {1 p
{
2 e' m- }9 u$ q2 j
* M$ |: K) d4 c4 Q, o8 }
int nHour = 8, nMin = 0;
/ s4 u' {% k) R) S
#ifdef __CLIENT
' J/ B5 n; O6 j% v* ?5 r2 j
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
2 O8 M# t. T J) \6 }4 p x: }0 R
nHour = g_GameTimer.m_nHour;
1 j$ @( O, D5 g) K
nMin = g_GameTimer.m_nMin ;
/ T! `* H% a2 z$ |" u
#else
( Q1 l0 f' P& P* G |- o; X$ O
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
, g2 [' n1 W* [9 i
if( m_nLightType == 1 )
+ }5 C* j! h' M) w+ @
nHour = m_nLightHour;
' m9 D3 f0 J1 P4 ^( k
#endif
# I6 i0 h% ~% l* i
nHour--;
% d) J! q8 b1 x, v8 _0 ^
if( nHour < 0 ) nHour = 0;
0 L, D. P7 y+ R t( O, \' ~
if( nHour > 23 ) nHour = 23;
0 O+ z; U- P* ?4 [
' U _4 ?4 ^& C
//if( m_bFixedHour )
( A0 `, t! }, W) _ x2 X
// nHour = m_nFixedHour, nMin = 0;
% _6 E! D& p$ S% p, b( m; `; M
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
% c2 D4 N) W+ C; s
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
7 v3 C5 Q' h+ m8 w ?
& o' r" o& O7 s7 f
//m_lightColor = lightColorPrv;
/ P' q6 k' v$ O' E+ e, l( G
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
0 {( u; T! b7 C- L
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
% w: D* e3 F7 p/ x0 w; L0 n" m: u5 ?
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
0 H' {) {9 \( n( V# s
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
1 i5 ]) Z r, V' ]
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
" N! a& N0 t# h8 Y
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
9 o3 ^( j6 E1 ^+ w/ q
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
2 ?: }& ^; Z C& H! C' V
9 R+ C7 x+ k: w# d
// à??μ oˉè*
) B7 S; ^* _+ [. I7 h
pLight->Diffuse.r = lightColorPrv.r1;
# |1 a/ c+ m& J: o' {; ~! z
pLight->Diffuse.g = lightColorPrv.g1;
1 o3 m; s/ }3 C* b) t
pLight->Diffuse.b = lightColorPrv.b1;
; h+ ]7 N" \% S% G5 e
// oˉè* ??à?
+ R+ j. f, h; I2 {/ k% {0 ~, {, m' s
pLight->Specular.r = 1.0f;
4 k7 ~7 U5 v& W, T6 C; W
pLight->Specular.g = 1.0f;
& k# V( @5 N& k; ?0 p% Q1 t
pLight->Specular.b = 1.0f;
& M+ U! b7 e7 \ W/ O! l3 d! [" P
// àü?? oˉè*
% {2 a- E4 ]% E& B" W
pLight->Ambient.r = lightColorPrv.r2;
/ G- \; h' e8 q5 j7 }& s+ G
pLight->Ambient.g = lightColorPrv.g2;
: M c2 u2 @8 I' F% q5 S/ k3 Q
pLight->Ambient.b = lightColorPrv.b2;
1 b7 a! I/ ~6 i& h2 X F; s
" P* @; m8 ~7 l, L, V3 ^, |
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
" |! i/ O4 j* ?. Y0 @3 O
{
! D3 E" h; c9 s( p) d
pLight->Diffuse.r *= 0.6f;
. }7 K& J2 p. i7 w2 M' b' g5 Z, C
pLight->Diffuse.g *= 0.6f;
7 m! v- f. T' l
pLight->Diffuse.b *= 0.6f;
6 t7 a: E% R5 |# p7 y
pLight->Ambient.r *= 0.7f;
j# b4 W/ z* X8 g+ j9 \* x% x2 P
pLight->Ambient.g *= 0.7f;
: M+ Z- p6 e6 R6 @- Q; r
pLight->Ambient.b *= 0.7f;
( Z# ?& _' U1 }8 U4 b/ G% ~
}
8 r8 L/ K% x" @9 _4 _* z
4 v0 X2 S6 w* u( o- L- f
#if __VER >= 15 // __BS_CHANGING_ENVIR
D a' g* z* g/ g9 o
if( g_pPlayer )
$ I& |4 m$ [: u. \9 h1 |( D
HookUpdateLight( pLight );
9 x( p7 r. |0 c4 v
#endif
9 D' \9 k+ m0 S0 p# }
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 _6 R2 _/ ]: o' d
; C3 B K! T% n9 W2 w! ?
#ifdef __YENV
. ^8 g; O) t Z' x5 [1 B! |
pLight->Diffuse.r *= 1.1f;
$ w V+ d# P0 c4 v
pLight->Diffuse.g *= 1.1f;
9 D$ `$ G3 A _$ t9 J( c5 |
pLight->Diffuse.b *= 1.1f;
2 b, K! b( t7 Z2 E3 H
// oˉè* ??à?
! I) g" Q: k9 ^" V
pLight->Specular.r = 2.0f;
% K" V6 [& ^" x" ^ L' @
pLight->Specular.g = 2.0f;
; O |, [' p; N+ Q; Q
pLight->Specular.b = 2.0f;
# N2 c6 p: L, ]! e/ n
// á?oˉ
9 Q7 J9 o% q4 D H5 b. B
pLight->Ambient.r *= 1.0f;
, I3 E* l" Y. e K8 c) r& r$ u
pLight->Ambient.g *= 1.0f;
3 I) L; ^9 z: [1 a
pLight->Ambient.b *= 1.0f;
b# I. }0 F& M
#else //__YENV
7 j0 m: h2 F) _6 }1 o+ Q
pLight->Diffuse.r *= 1.1f;
& @9 U) h+ @3 i
pLight->Diffuse.g *= 1.1f;
/ G8 Q* ?( @# P+ K3 l( r0 C
pLight->Diffuse.b *= 1.1f;
5 i5 @0 `7 j' f4 O
// oˉè* ??à?
- s( a$ z; l' K/ h4 k9 v2 v
pLight->Specular.r = 2.0f;
9 I: r. U* p- t
pLight->Specular.g = 2.0f;
6 U9 m* G2 b; ^+ O
pLight->Specular.b = 2.0f;
7 o& H; }0 l$ h( ]9 E$ t
// á?oˉ
8 A% X5 |& v/ g: P) b) @
pLight->Ambient.r *= 0.9f;
( k/ ]& @4 f5 m
pLight->Ambient.g *= 0.9f;
e$ J4 P( i, J& l, g3 _9 w: r# s3 F
pLight->Ambient.b *= 0.9f;
9 b# F+ ?& Y: k
#endif //__YENV
' W# W& b% m0 v, R1 t4 X
) j* ]3 I3 J5 K/ \/ }
memcpy( &m_light, pLight, sizeof( m_light ) );
# r9 v# h f/ J. t: N1 \
# V" j6 z* N) _8 ^) p$ P1 X& K
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
% y5 y0 K: |: S; C( R
D3DXMATRIX matTemp;
5 @( o5 t0 m* ~/ H
static const float CONS_VAL = 3.1415926f / 180.f;
* n1 W8 q3 p' ^0 D
) j' K" T# W6 `" P9 ~# k
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
! K, M% @! w8 M% W# M1 w
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
8 f0 k# {$ H% H; B/ ?- p
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
% L/ v9 P( B& M) l
pLight->Appear( m_pd3dDevice, TRUE );
6 o4 s* z8 A( F/ u5 g* o& M+ R
2 p, S2 Q) e( a
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: f9 C5 `1 S; v H: w
// D3DXVec3Normalize(&(vecSun),&(vecSun));
, {& |: t0 X. j4 e4 ^
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
" Y- f: J+ @. T2 ~
; ~. f1 r! h8 v; E4 k( m' Q" H
DWORD dwR, dwG, dwB;
, s3 \; u; m+ ?
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 f6 C& D1 j, h( u5 Q% l, ^6 x
dwG = (DWORD)( pLight->Ambient.g * 255 );
) {" L: P6 w1 d* h$ g+ B
dwB = (DWORD)( pLight->Ambient.b * 255 );
( h5 E8 f( H9 |4 s4 R3 s1 ~
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
+ {1 `& g* w8 [8 B) ?2 ?% z$ Z
}
5 y8 K) S" S- y3 Y/ V
}
$ u* K6 Q( L; a6 O5 N2 J* N
) Q4 v3 L3 m% b5 p- Q
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
: w. b; z0 s! H, W. B- F0 W. o' e9 l
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) );
6 A3 u/ U8 N2 n7 }7 B( k
::SetLight( bLight );
% v& t- D8 s8 h/ v# D1 r7 S
. {# n* r, i- ]+ O
// ±ao? ?D?í???ó á¤à?
( @' i/ n6 U2 g( H! [2 g, j
m_pd3dDevice->SetMaterial( &m_baseMaterial );
; q. O! ]& ]. A# s
7 z% {9 D* r4 d2 Z) M
#endif // not WORLDSERVER
+ l1 |( m% n. e
}
7 y& Z' n$ T3 U. u) o
并更换
; M- G5 W: k" r* e4 d+ l/ @
Code:
& O* j, l8 [, O/ R3 b. a
__FLYFF_INITPAGE_EXT
6 E' ?! J- g$ ~# D( r) y: z7 f
定义
0 g! u5 `. g7 [1 e$ U
" B- ]) t0 V. @) I& a/ E: J
; u4 _' S: `' I* Q7 S
4 i ~; R8 u" t8 h( F8 V
; y7 N& G" L h' I/ v, O9 P
现在终于删除我的狗屁加速...
0 s; G `' Y( w* X
# u; f: D$ ~" D6 e
! o+ L" P/ n$ @) S
/ B4 r$ f2 s. Z* A' V/ Q$ H F
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2