飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
- z; Z7 \9 E) i; A8 y
尾翼:
" A$ l# U/ `( O& E/ o5 w$ y
% d! \( }' A0 u ~( q4 I
代码:
B* M8 A( l+ z3 q. j) q9 S# F
CWndAutoFood::CWndAutoFood()
9 [5 ^ ^4 R% V4 ]
{
7 Q" k4 M4 A+ I) l7 n
m_pItemElem = NULL;
7 {* {# C; W6 Q: Q R% G. o, t
m_pTexture = NULL;
" S' h' H+ k& `; G# W& z
bStart = FALSE;
, ]# v1 Y0 t: W
}
& ~9 {- P/ h2 R9 O5 Q4 X
4 X8 y* G9 C% f* N- Q
CWndAutoFood::~CWndAutoFood()
% Z! H/ z7 z' c
{
6 t+ ~% |* v; w
AfxMessageBox( "AutoFood ist gestorben
" );
0 r5 o0 ?% w5 Y- o9 |
}
- t, c0 E* T0 P' P
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
: M' O8 V6 p" j1 q
{
5 Q; j. F5 C1 v1 p
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
) D: _) w, ], t5 c9 Y j% B2 }
}
2 }. D! W2 z) e1 u6 n& g: S4 H' E
. N p' p" s" l [
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
' G) n* x, M, @( t9 \( `; K
{
& Q: t5 K, q9 n- W$ i, r/ k5 L
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
7 [* _+ u$ x+ J* q, q
CRect rect = pWndCtrl->rect;
; \4 S4 s- U9 c3 M" |7 f
if( rect && rect.PtInRect( point ) )
; `3 U2 g5 L+ f# ^, l0 W& c( e
{
7 f9 C' y( {) w- q9 y" r' l* F
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
6 M# b- A. n# {0 u. F4 ?: w
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
, x. u F+ y+ [/ u. A
{
! S: b3 |2 O1 `5 g/ S! x" V2 x- M, o6 {
if( m_pItemElem )
/ d. A- t2 ~4 P$ I0 t: t
{
& f* @. {. g# q' Q6 S" d4 Y1 _
m_pItemElem = NULL;
0 X2 ?( L8 W: x7 [! B
}
' v# X3 W3 @4 ?: l# V
m_pItemElem = pItemElem;
: z+ O8 A- ?5 b- l( N0 Z* c
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
: }2 x, Q$ d5 `; Y
}else{
$ r+ K# N; G7 X' f6 s
SetForbid( TRUE );
6 |+ g5 ]8 y2 W; b. |) ?0 ]
}
! G. Y& {4 T- Z* M- m5 y9 C
}else{
1 I; @. T" n6 p1 n+ y5 x: p
SetForbid( TRUE );
# ]) m9 \; F1 R H1 N* T
}
8 r f9 i5 H3 I9 n
return TRUE;
7 a3 K& p6 m5 l4 h9 o: R
}
1 d0 p; y) O, m, O& ^6 {# }
K+ r+ x5 g9 i
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
. H M" a7 i* ]4 S$ T8 J
{
+ w' t, v& I. X! H
switch( nID )
R# i$ F' _) k* k1 H
{
+ ~! l: |) c. G3 Z- B) q
case WIDC_BUTTON3:
' u9 W1 S" @0 W; J* [! t+ ~% K8 u
{
% r$ `, r& w9 H. p1 s
bStart = TRUE;
8 l! n/ n, w7 y, J- ]* g
break;
/ V: u6 `0 g% ~" F
}
& M8 R9 Z$ ^" L9 R4 i; k; P- t& w
case WIDC_BUTTON4:
! @; o; [/ q: i% J* n
{
! }9 d5 l6 ~1 _% ?0 @# B
bStart = FALSE;
) V9 K5 C1 J; }+ h5 g0 r
break;
$ E+ k! }/ ~4 c
}
3 E o" i* K4 ]* N$ m: P
}
+ o% o3 B$ k9 ^" c- \& z5 Q5 y
return CWndNeuz::OnChildNotify( message, nID, pLResult );
( ?/ `! I( ?3 V- `. M p$ q) K
}
9 s1 ?* y, M/ G# p& i
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
q% Y& H c4 i7 d! b
{
2 p8 {; d; x5 P4 |3 `3 ^
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
5 r5 y3 `8 A; j$ ?0 R7 }
if( bStart || !m_pItemElem )
b0 m6 S2 G9 U. z) f8 R0 h! \( V8 J
{
. U7 r& E2 Z& F. X7 t) D8 |9 c
pBtn->EnableWindow( FALSE );
2 j( a4 s s$ ^
}else
3 d. k8 u4 V6 d6 s* b
pBtn->EnableWindow( TRUE );
$ O8 N% {% S% c+ s3 b
if( m_pTexture )
: Z* q. T% D* h
{
$ O8 i' F+ _# r- \
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- V' q0 J) j. O' N3 ~4 P
if( wndCtrl && wndCtrl->rect )
. I c' K u Z5 R! ^: M9 ?
{
1 t" v' r/ s U" m
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
, G7 c; S3 k7 d7 ?! B
}
9 V- B4 ~ u1 S% u% c
}
7 T) h+ L" N8 X; x3 @0 T: L
}
0 ^. m- W& T9 G' Y# Z% j* M
1 C9 Y7 p% j' `5 ?* X- h
BOOL CWndAutoFood:
rocess()
9 w5 g0 z- w ^/ u K, J( s1 x
{
. z9 z+ M3 a+ s( u/ g2 `2 J4 l. E
if( bStart )
' w: V! r3 b7 `' V+ [# Y
{
9 n3 E" h, ~$ U& f
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
. q- r' d% L* ` A
{
. V5 w i0 Z+ b
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
4 q, f1 i5 C$ y- W, R5 |+ w* h
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
2 g% o1 s- T0 h% X/ c
}else{
( s) Q* r/ p3 K4 h' I u7 K
bStart = FALSE;
: y0 K9 l8 p1 v# p" ]4 q* F+ ~
m_pItemElem = NULL;
7 Z5 K: V, a+ g ]
}
+ X1 c. y5 V K( U7 f
}
+ k" Y* Q4 Y' l
return TRUE;
+ C4 h4 _, W3 t; a* u: \) U- E- Q
}
. e$ ^% g: k& t9 J- t! {3 B
- H; o; [8 E; ~8 V
登录视频废话:
6 u4 d; w% D0 }
尾翼:
/ v0 Z8 \8 l/ T: [/ j3 _! y. N" f" x& h
3 c9 X6 {3 ~% _# ]
代码:
# V* A3 _& u! |; b) z x+ k
5 t0 m0 s2 C4 s
void CWorld::SetLight( BOOL bLight )
: a8 }3 G9 \# A9 h) J* j
durch
! K" p# p) g- D: m; g$ N0 B6 U) C
Code:
( v! ]2 [( X! P6 }
void CWorld::SetLight( BOOL bLight )
4 e. d7 S' m9 p' i+ ~) ?* ^
{
4 ?1 Z" _* e' x/ X( J3 r T; c. ?
//ACE("SetLight %d \n", bLight);
) f3 l* W( x7 U1 g
1 ], O( m+ a7 Z1 J6 b9 ~! i
#ifndef __WORLDSERVER
9 w/ Z9 z( n. C9 u- T2 D% i( w
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
( _0 B" @- F# s* y/ r1 ]4 d% F4 K
CLight* pLight = NULL;
2 P. J9 O9 z s8 v
^8 [# O1 W+ O0 n- r
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
: G! q6 k8 q! P1 c$ H! d
2 X. M4 e( Z' m1 m) M9 h3 ~
pLight = GetLight( "direction" );
" y' W/ R/ w' F9 G+ P# i
( i0 ?8 T( L* n& {! g3 F9 D! |
#if __VER >= 15 // __BS_CHANGING_ENVIR
" @7 `% F' t/ ~
if( g_pPlayer ){
) o, K. }# s- W7 q5 s
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
5 u/ k; @3 H2 A0 S( s; P. D
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
1 |# I' {' ?, H: | S X
{
. [2 o; d; t9 V3 P( t+ i
if( pLight )
% G/ I+ S7 Z/ f+ f) m3 r
{
7 _% {2 K: Y0 S* [
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
. u6 m. \& i8 |6 ~ n
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
. t0 L+ `: a, E' C5 o s
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
7 Z# _: f6 S8 `; A" V+ X' S: \, D2 g
: b i1 |( R2 E/ ?7 S% Q
pLight->Specular.r = 2.0f;
; ?/ ]( d0 ]. ^8 a
pLight->Specular.g = 2.0f;
7 t e$ b7 [. V( @. r
pLight->Specular.b = 2.0f;
. s3 N9 F- @ I" }0 a
- b+ r5 M$ i8 a
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
0 n+ T! G1 Z, L3 ~ D
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
* M: `+ a$ c3 G- ~! h; H
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
' J, p" M) u1 N4 G4 G9 X" D5 i
: t7 z; I; c8 e& T0 P! O9 S
HookUpdateLight( pLight );
) E5 b" m( t, V; f4 ?5 T8 \. H
, n7 x* v( a4 H
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" Z$ M6 Y1 x" R* n, N
- J% c0 y; Z# h
pLight->Diffuse.r *= 1.2f;
$ ~3 i, ^5 Z8 ~: Y
pLight->Diffuse.g *= 1.2f;
7 @/ s' z, E4 H
pLight->Diffuse.b *= 1.2f;
, k) z; C* I; P( O* t3 P/ z
* Z& a$ B& p. N: E
pLight->Ambient.r *= 0.8f;
) J5 H4 p8 V5 L9 f5 r4 n, _) P
pLight->Ambient.g *= 0.8f;
& e6 k! z% m$ A6 R7 c5 b
pLight->Ambient.b *= 0.8f;
0 w8 v3 k3 e- Q( n. F
+ v% F, [2 C0 }8 }2 }4 P) r
memcpy( &m_light, pLight, sizeof( m_light ) );
+ X( v! j1 A& l
0 z6 j; n6 {4 R8 R' C, h
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
. W7 `0 I7 r3 r- }+ b
D3DXVec3Normalize(&(vecSun),&(vecSun));
8 ~1 i. u& c- U3 x6 v% n
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
* g+ \- Y- A$ O. P* e
pLight->Appear( m_pd3dDevice, TRUE );
c2 C+ m* S) z$ }, y2 E
* O# y( ^' S# I. @$ e
DWORD dwR, dwG, dwB;
0 w2 b u& K: J% s; I/ F
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 K5 d1 }2 H7 q( ]2 T+ f
dwG = (DWORD)( pLight->Ambient.g * 255 );
& B; m+ c# Y: @8 L0 x$ {
dwB = (DWORD)( pLight->Ambient.b * 255 );
% t# a8 i. A6 L/ T* |% [' Q/ ~1 l
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% n- H: B# t7 V& y7 _ }2 i5 s
}
* a: Z; z0 Y( \0 }3 }# y
}
' ?; l+ R* ?! b
}
: _$ O* \7 K7 C
else
8 L, C7 I" P( L9 s9 r. K) b
#endif
; u3 h. o& o, T* g# a: F
8 C" N2 u9 {9 i. `
if( m_bIsIndoor )
% Y( q; `2 y% D/ c) ~
{
J. }2 ~' L* i2 I3 I
if( pLight )
# U6 h' \% w# Y1 S( }
{
; L2 {% q! O2 d6 Z L2 ^
// à??μ oˉè*
8 n! ^6 r3 Z+ u; @' m- _$ @
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
- d9 I, v( d8 t' D* f
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
0 G6 d( L/ w" P! g. @
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
. S% c7 ~/ \4 t! ^$ @; u
L. A0 r( [* L8 Z2 {5 q
// oˉè* ??à?
; H/ N. X/ V. e9 m
pLight->Specular.r = 1.0f;
9 G$ D- V" `, k
pLight->Specular.g = 1.0f;
, U) `$ o2 F* H3 \ G- I, k. R9 D L
pLight->Specular.b = 1.0f;
5 [. p6 F# w5 o8 L. H
// àü?? oˉè*
3 J) ~$ d) ^" a/ ~: [- C
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
, V9 M4 _/ F. I0 q# r1 S
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
! e5 L) Z; V- f6 m, x
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
" g! t$ m2 y5 `5 [( s
5 B2 A! l+ u% q( B
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
1 g( _! q/ i/ z* ~$ R
{
6 R+ I+ \& j/ D- l" j
pLight->Diffuse.r *= 0.6f;
) l( c) U2 {. i5 v) j
pLight->Diffuse.g *= 0.6f;
3 g2 p! V5 q2 T1 W+ ]: @2 j; p4 C
pLight->Diffuse.b *= 0.6f;
! n5 A" g0 [; m% J
pLight->Ambient.r *= 0.7f;
: E! r+ ~% R. I ^& F- h: a+ b
pLight->Ambient.g *= 0.7f;
6 G7 N% g' |9 E9 N
pLight->Ambient.b *= 0.7f;
; }6 V# W7 `8 h
}
# i! I$ u2 L* Y+ ]
1 E9 ]/ S2 U/ l6 S& c* K0 e
#if __VER >= 15 // __BS_CHANGING_ENVIR
. \" s9 l0 I' _/ r. o% x
if( g_pPlayer )
6 t) R0 e7 ]' g0 o# R
HookUpdateLight( pLight );
- j6 u4 n4 O) b7 w. i
#endif
3 g3 B% K8 P2 c" H8 c, @+ J3 W, R
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# p, D; f* @$ o D
( k& ?0 ] N* y$ I
pLight->Diffuse.r += 0.1f;
; S3 z1 q, H5 m7 e4 z7 O' I# R: ]2 Y
pLight->Diffuse.g += 0.1f;
, L2 v% ?. X1 D6 M
pLight->Diffuse.b += 0.1f;
# w" p. x# ]6 N% [& C8 X
// oˉè* ??à?
' X {0 \- F: y1 P& }" y& o
pLight->Specular.r = 2.0f;
, d" X0 a8 I8 ~; h9 n; K
pLight->Specular.g = 2.0f;
, {; n' W8 a: }* i4 j
pLight->Specular.b = 2.0f;
* p* ~+ v7 q- e; I3 h2 q
// á?oˉ
, v9 h: y9 B% B1 g
pLight->Ambient.r *= 0.9f;
- c% ]$ H' e/ {, o1 n# j
pLight->Ambient.g *= 0.9f;
: j5 `! l* Q- A! b/ o* n
pLight->Ambient.b *= 0.9f;
/ l) n1 i% p/ ]6 X
3 n, p. s0 g4 l
memcpy( &m_light, pLight, sizeof( m_light ) );
( R7 a9 I! f4 I* H4 @) z
. V, S7 s/ O. r8 `/ `4 Q6 E/ o
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
, i: X9 U* F- p0 e* W
pLight->Appear( m_pd3dDevice, TRUE );
! x4 w: g0 V0 d( C/ R1 l: S
& T6 Y& H+ b' ]+ E. N6 L% N
DWORD dwR, dwG, dwB;
+ n' l5 x# P$ B( u$ w
dwR = (DWORD)( pLight->Ambient.r * 255 );
! G7 A+ y/ I5 Y' p; A
dwG = (DWORD)( pLight->Ambient.g * 255 );
$ d s1 @8 |+ D" K' V4 Z k
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ h% d2 T( k2 z$ m& ~3 K
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 ], S2 {# R& I+ i0 ^! E6 ?( [
}
/ d- _! N; }6 m& q7 U
}
; v, i6 _, y: j3 m2 O; Q7 a
else
* L4 C; l% O- c4 `0 K6 R, F+ K
{
! k/ G- A# ^. M/ ]+ ^
if( pLight )
5 L* \7 ]) A3 z& A2 [8 T' V* |, ~
{
8 d4 L; t( b( v! V6 ?. a
V0 u3 f* l( [# @
int nHour = 8, nMin = 0;
6 J/ U% g; A& x( t/ P; V& M
#ifdef __CLIENT
8 k" S! e8 I, }
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
. `: y4 H2 I& I1 w7 f+ S* c
nHour = g_GameTimer.m_nHour;
+ K- p9 q5 L! U" N1 \& v
nMin = g_GameTimer.m_nMin ;
1 \7 I* R2 ?3 g) M5 _; g9 c
#else
" Z) j" k* Q/ Y+ c
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
, W+ h5 }: `' t; r( S9 }
if( m_nLightType == 1 )
" m6 U; n/ ^' E3 U
nHour = m_nLightHour;
0 d* Q2 e! |6 r
#endif
" G+ b8 z! Y2 m& I
nHour--;
" }3 c6 N$ u% } G1 _. b
if( nHour < 0 ) nHour = 0;
/ h2 U) S9 q, d$ ^) J8 x1 W% @6 k, S
if( nHour > 23 ) nHour = 23;
" O5 E- {0 q1 O) [8 J) B( o
% x+ d' j9 {( D3 O: l( Q3 m
//if( m_bFixedHour )
9 u% ?2 n8 h+ ^- g! u' |
// nHour = m_nFixedHour, nMin = 0;
4 j- q2 U2 d |3 ]# f# \
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
$ T7 {! z7 b9 N R& U. E- ?, w- T
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
/ A3 x u3 Z; w" n7 g& h
1 ~! }, ~3 B) Z% K, J
//m_lightColor = lightColorPrv;
6 H L: W$ A0 s
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
& k7 T7 F7 f+ v, L' t7 \/ z- @
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
: h% P% s& a8 I' Q3 C6 v6 k f
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
( B& X6 K" B; w2 u7 B$ K- t4 ?
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
# U0 J% V7 y: u) u: W5 i7 s
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
+ x' ^' f! L1 ]
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
% p) ?# ?+ r0 v% a! Y/ G J Q
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
3 g9 j! H2 f9 F* a
. r) o' l/ `, j7 _
// à??μ oˉè*
9 H' E }$ _" k
pLight->Diffuse.r = lightColorPrv.r1;
" p9 i+ z* ?' K% ~( c+ z
pLight->Diffuse.g = lightColorPrv.g1;
9 n- }) Q ^+ y+ V( I; G
pLight->Diffuse.b = lightColorPrv.b1;
7 n) Q( o2 V1 p: ~" A: v* A& m: q
// oˉè* ??à?
% D% a# o; `3 ?* r9 v$ r
pLight->Specular.r = 1.0f;
) R( J) S- @0 r/ V# [. v2 {: `" F$ @! k
pLight->Specular.g = 1.0f;
4 ~4 h8 T$ \9 ]& R
pLight->Specular.b = 1.0f;
% a7 T/ X) `% X
// àü?? oˉè*
g9 [1 Y6 u6 o* F
pLight->Ambient.r = lightColorPrv.r2;
- P" c, d. X$ v# q& c& g; V
pLight->Ambient.g = lightColorPrv.g2;
/ ~. C. R- C- [7 i" G# H5 M
pLight->Ambient.b = lightColorPrv.b2;
: h9 T P ^& ^* ?% W
6 x# e/ l% n5 n8 @, ~
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' `% T6 t: r* e" {- M& i" x M
{
, J, U& j5 i% b. @; d7 t
pLight->Diffuse.r *= 0.6f;
, d" C" Q4 c2 ^) Y" a0 ?- e k4 ^
pLight->Diffuse.g *= 0.6f;
( z1 Q; H! p9 q& p8 D- Y
pLight->Diffuse.b *= 0.6f;
7 Q' O* R" f' p
pLight->Ambient.r *= 0.7f;
" o; b7 n( Z V( _# |; C8 `1 _
pLight->Ambient.g *= 0.7f;
9 }% ^' D/ ?( z6 a
pLight->Ambient.b *= 0.7f;
& c5 J( W+ Q1 s h" C
}
1 j% v) e2 Y' R5 ~
- Y5 \5 ^% E, C1 H5 g& w8 H
#if __VER >= 15 // __BS_CHANGING_ENVIR
& Q7 h8 x/ s2 g3 g% F
if( g_pPlayer )
- B' D# d4 \" V! u5 b# x
HookUpdateLight( pLight );
3 j% i" Y/ x' |; B8 Z1 m; U5 b
#endif
6 H; S3 A0 \ }
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
h2 r9 |$ A$ k/ h- b5 t
+ Y% T# \/ d+ |
#ifdef __YENV
8 U' b* i; Z- S( E2 H) O) D
pLight->Diffuse.r *= 1.1f;
" `# D8 ]% \0 k+ }' I2 e
pLight->Diffuse.g *= 1.1f;
. `# i) |, x- e2 @
pLight->Diffuse.b *= 1.1f;
( r" z7 ~( e1 c' _. r" t% o
// oˉè* ??à?
& C. g1 f% X) e, T3 d
pLight->Specular.r = 2.0f;
( O6 _$ o6 b, h+ {
pLight->Specular.g = 2.0f;
: G5 A6 [) @! V& V9 b0 E
pLight->Specular.b = 2.0f;
! R' a' p/ Y0 s k/ X
// á?oˉ
, S3 @3 b& G/ X
pLight->Ambient.r *= 1.0f;
3 N- K+ x! t% N/ H1 {9 p
pLight->Ambient.g *= 1.0f;
; _ B% K4 s9 B9 d* _/ O: q
pLight->Ambient.b *= 1.0f;
8 `/ [( k8 M8 j1 n
#else //__YENV
' J! x2 ]. u1 }( L! c/ v/ v
pLight->Diffuse.r *= 1.1f;
2 c7 q, k( o0 x9 q! ~2 S3 E
pLight->Diffuse.g *= 1.1f;
% L+ ?2 @6 f7 n. c/ N# N' m
pLight->Diffuse.b *= 1.1f;
, y4 Y" p/ s4 G( d& D. D& z8 ^
// oˉè* ??à?
, ^7 K9 y( n4 `- C! \3 x
pLight->Specular.r = 2.0f;
( q/ O- [7 u6 `$ D
pLight->Specular.g = 2.0f;
2 e* H! v2 W. ^) I
pLight->Specular.b = 2.0f;
6 L- ]1 y0 N$ H/ p0 f
// á?oˉ
; R& h4 I+ T- @+ ~9 K& _
pLight->Ambient.r *= 0.9f;
( }3 a" y/ C. _7 X, k
pLight->Ambient.g *= 0.9f;
' t/ A$ r/ n9 |9 m; W
pLight->Ambient.b *= 0.9f;
8 p( v2 L' Y1 r4 d
#endif //__YENV
4 d+ F5 Y0 i o
a! U; s% L- K+ F5 |; m
memcpy( &m_light, pLight, sizeof( m_light ) );
1 a1 [. b, e7 i, j' ]
% N w+ S! W2 t1 J+ j; U1 X
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
# s7 p7 L1 ]1 S
D3DXMATRIX matTemp;
# e& X& O7 C2 K% z1 i' _
static const float CONS_VAL = 3.1415926f / 180.f;
3 `& L4 q4 R0 ^# \; U5 J# K9 F
% @" Y' q6 N6 G6 Q& G; a: V
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
W( k4 x# g3 ?& s' Y4 ?
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
6 j- ]8 k: G0 J! z) I7 f3 S, t
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
4 y' A! \3 B! }5 G( n
pLight->Appear( m_pd3dDevice, TRUE );
% s* F* H# h2 x: Q
2 y' `6 m6 q/ A" {/ A% `* A
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; [+ x5 K. v! J9 t; U3 Z5 E
// D3DXVec3Normalize(&(vecSun),&(vecSun));
3 M% T5 _; B: I" ^" j) c
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
" |' W, z5 w. s! i) y
) V- ?- W. _1 T, j! W' Z" [! H% O
DWORD dwR, dwG, dwB;
/ z0 R- @8 w+ I/ n* C. D
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 B8 f( b% n2 p: q r8 [
dwG = (DWORD)( pLight->Ambient.g * 255 );
2 b p4 E5 {1 @( t. U8 |( U* q
dwB = (DWORD)( pLight->Ambient.b * 255 );
- C0 n6 O/ V! v; ^( P# u9 t1 E) p
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
8 I w6 Q5 ~& r6 d
}
- D! z3 x+ [; Z6 W; u& K4 c
}
3 L0 O) n" ?" [4 [9 l
) s) N! }& r: k- l. D
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" E) N* h: P5 c0 c3 r) C
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) );
& D4 L2 i* m/ z
::SetLight( bLight );
: O Q& H" } }+ [/ a* F
6 ~0 y4 a# `4 N; I [) f$ \: i
// ±ao? ?D?í???ó á¤à?
8 D. I* S4 P6 r$ E
m_pd3dDevice->SetMaterial( &m_baseMaterial );
2 @" E2 l( F* X" G" C
% L9 n4 J3 ?& ]5 z# ]. I
#endif // not WORLDSERVER
+ \4 N: M! i2 o, ^; Y1 X2 y
}
8 A* D; w; p2 Y `5 L5 L5 o% L' G
并更换
! Y) `( j% _- h, l! L' f P) |
Code:
0 G U# G' p3 d7 Z! p
__FLYFF_INITPAGE_EXT
) q& O, H6 P2 a1 W/ A' x8 r
定义
0 d0 n+ T* b) L* O4 w6 V j$ f: ^
/ t2 { v- p! L' [2 O. u, k
1 |$ i+ t4 a% Z+ J
6 f& E) o3 k8 |' O( m' x+ i
$ _' `/ C0 _1 L9 k
现在终于删除我的狗屁加速...
" v1 K3 Q6 o1 W4 N, }# ]/ s
6 t6 {6 Q8 y# g% J4 e/ _$ ?
6 Q3 J* V0 ~# l2 J- o/ f
7 X, |- H/ v# d+ \1 i
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2