飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
( ]* y0 Q# B8 m0 X- X. X/ I# F
尾翼:
* K3 C1 j/ f& U! b# W- i4 h0 p
6 X3 U; x8 o3 s8 f4 |
代码:
6 W6 A4 ?$ ^9 u$ p9 \: }7 g
CWndAutoFood::CWndAutoFood()
5 H* ~; R6 a0 O/ J, j, D# a0 D
{
; i% B& [! `5 k3 {6 \" V+ I
m_pItemElem = NULL;
& u( |- D8 O$ S- r/ j
m_pTexture = NULL;
4 S% ?2 v1 v# O- z
bStart = FALSE;
, A! w. m/ F& i3 [) |/ g: X8 F5 ~
}
( j2 M! N# n, {# E$ }
- K% i3 J( |) Q5 n$ x6 k. [- w; D% ^
CWndAutoFood::~CWndAutoFood()
b8 g% [0 I5 i5 ]- z
{
* b1 ~6 L6 F* `3 L" t) h. y9 r/ C
AfxMessageBox( "AutoFood ist gestorben
" );
* I& n) m; N* a8 d
}
# i. L4 V0 Y C$ [
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
' S: \& B% ~5 R1 l, s: L
{
0 [8 U6 r* \' O, l% j! T! V
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
% N! P+ n0 A, |0 P% ]8 [7 Q: S
}
( r% N: S1 {0 }! `7 t
. I( T" C7 o. Z- [* I
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
% o8 C" q4 g6 q2 \
{
' V7 b/ L* u9 ^" r2 B# p9 T* ~
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. f3 G# E: E1 u9 I
CRect rect = pWndCtrl->rect;
% T0 \5 F& `2 ^) |; l
if( rect && rect.PtInRect( point ) )
* @( J/ _0 `: C5 t* d% R* |
{
( V8 F; P3 m! q) x
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
1 w* {- L* b5 @) A, ?7 m# w2 I
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
* l9 y. I3 y1 r5 R
{
" A9 r& Y' U2 l+ J) X, O, v
if( m_pItemElem )
: X( U/ v% `2 o& i* s$ m4 i7 D) i; b/ K
{
a& h2 u6 h d4 \; r; s
m_pItemElem = NULL;
( R. L, ~- C" d% |
}
* ]3 [0 ^" ?% j
m_pItemElem = pItemElem;
: m! Q4 L# [' ^8 q& i
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
, Y' y0 \ {' _) z$ c
}else{
- r; q. m- _% v6 l# R" T2 h! s5 L
SetForbid( TRUE );
% D$ n9 e* U& w
}
! X4 a; p( E. j( @+ w- `5 J2 R
}else{
, T+ m6 ^2 z7 m5 L. u
SetForbid( TRUE );
% d! h: i* B: \/ s& `' l4 d1 D
}
3 F3 w- G- G7 L# y
return TRUE;
$ a5 w# k4 l# J8 R" m
}
' n8 Q% R. N3 L; l) U" Q
2 f. D, c6 B9 G* s; m
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
# u$ u# y& L7 A$ f' w3 w
{
7 _" L6 ]5 Q% d& n
switch( nID )
$ d. T( o# B# P2 G& S# F( T8 C8 M6 R6 k" H
{
. j* w' U6 P. l
case WIDC_BUTTON3:
% C% L! }; A2 }' j- ^- _
{
) N3 n. N# Y& m
bStart = TRUE;
) j- p2 v- i' N5 A4 _" h
break;
. B* N E1 s; V1 u
}
# G7 \, y( j+ \6 `# N/ e
case WIDC_BUTTON4:
" P# q7 W7 j7 ~: }
{
- O3 {- Z, g0 f* }2 K% p5 k
bStart = FALSE;
) Z* T4 c- x' q
break;
, o- T& ?1 s0 O1 c$ w7 d+ l
}
8 [5 j+ ?8 w+ N$ S! z* @* Y
}
% w8 \: N9 D' a) Q( k! {3 Q% t
return CWndNeuz::OnChildNotify( message, nID, pLResult );
# g4 b+ [8 J, v! j6 X$ _7 f) p
}
3 w- u. i+ j5 [
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
' s9 z- ]0 h1 h9 u
{
& r' j9 F6 O# R# F+ Q
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
6 w1 _8 O4 w3 R- A
if( bStart || !m_pItemElem )
, \! _# f* w7 E2 ~) `
{
! m; d7 C+ a+ y2 q, \3 D
pBtn->EnableWindow( FALSE );
+ a3 a; N. G, H# L* @' n. c
}else
* Y" J7 P, s/ m8 x9 E/ J
pBtn->EnableWindow( TRUE );
5 R+ [2 G0 c# F" w
if( m_pTexture )
! e* A7 B9 t( a. N% Q. K" x, ]0 ^: y
{
8 q( e1 X9 i! H( Z9 ~
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 X# J' j2 H! l2 X4 ` M& _7 U2 O
if( wndCtrl && wndCtrl->rect )
9 n. I% H, |) a, M
{
4 g: S# s- H0 u0 @8 R
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
$ a* k" u* l' u
}
9 R Z) |& n! H7 P& k
}
- `# a/ w7 [# ]) J1 _
}
( b7 Z) j, e; J, q5 r
4 Q5 N$ W3 b" g; l/ A4 X
BOOL CWndAutoFood:
rocess()
# T/ y/ o2 k) Q# r4 \
{
6 c7 v7 j, v* A0 O5 G0 }6 p# R
if( bStart )
8 N+ ]6 o& f6 j! }
{
* {+ r2 q F- E/ ?
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
' d* h7 i* F; w( N* L" c5 L' f4 `
{
/ B- x! w9 z' e% Z0 M0 q5 k5 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() )
3 d! v# [4 v! J: B3 ?0 [
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
6 \# }* W* G* y2 K
}else{
/ r% p3 t5 I2 @8 ?) [# s, M
bStart = FALSE;
7 _$ Z+ ]$ ^5 L( y6 b
m_pItemElem = NULL;
1 I) V% B; {2 ]. [
}
9 T5 [1 i+ b9 L: P* ` a) u
}
0 @( V J0 x8 w, I& ?; C p
return TRUE;
( U8 a. j" k# a' Q9 \& r! [
}
6 O' Y8 i0 I+ m
" s& g, l/ V+ Y- i
登录视频废话:
2 K3 M' C' @0 i; s$ I
尾翼:
. {( P7 h! h' F5 n) S5 y
7 d, F" w6 u: {9 k: s5 v% H' r& ]
代码:
5 D% G/ }) J( f% ~3 e1 T2 y
) J: N) s% |2 N
void CWorld::SetLight( BOOL bLight )
% m! O Y9 Z6 O8 @# e. o9 F/ Y
durch
% w g; |$ V& n
Code:
* x" n5 N) _6 M$ ~# c( y% i& n3 ~
void CWorld::SetLight( BOOL bLight )
! ~; x; h) G( P; N! W+ n& J+ t
{
. K& `$ s. f( _$ z- k7 p; h7 E
//ACE("SetLight %d \n", bLight);
; w: ]6 w4 a( r g3 O: d! t0 K! ^
) l) y5 G2 p9 a3 ~- d6 c! `
#ifndef __WORLDSERVER
$ |1 F' D$ I2 n% d; P6 ~, K* h
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
2 z( Q/ s W; `4 M6 @: \
CLight* pLight = NULL;
- {6 n' G# g5 U( x7 o
6 D4 U' ^1 _9 s
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
]4 ?5 H9 Z/ Z' r6 c" O/ Q! M' k
9 \9 M F6 D2 C- r
pLight = GetLight( "direction" );
. S* H: j* s- k0 E
# W; I" U2 r! J5 T
#if __VER >= 15 // __BS_CHANGING_ENVIR
" U9 s' i; g+ v5 i B
if( g_pPlayer ){
+ ^! [/ |( l. I
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
3 A9 A$ {1 W" J% p# Z. R
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
/ F! X$ g/ D2 A9 [
{
7 K t/ Z c8 c r) Y9 h6 r
if( pLight )
3 N% L6 ]2 {; Q2 a6 T; S
{
0 h$ |1 }# K9 ~$ J
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
2 L7 J; Z1 u/ q
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
& F- \1 X2 c: Q$ Y2 {) B
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
: D' W: d9 b: J+ W0 e
4 v4 R/ h) n: |( {4 g
pLight->Specular.r = 2.0f;
7 ?9 y$ e9 {" Y
pLight->Specular.g = 2.0f;
" o$ m& X: m! i( ]3 o5 i2 F
pLight->Specular.b = 2.0f;
+ N. V* R! \) N; }/ b6 U- e. a
2 c8 V9 e9 p9 Q+ d# \( m
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
3 `: n2 \8 i1 j; L0 N9 ?
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
* B: Q5 b: O _4 P9 A2 x
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
3 \# P& Z! q" x# c+ l3 \* n2 w
, P& j7 ]4 d& [+ b. A% K. C/ u
HookUpdateLight( pLight );
/ g0 m" k9 H- a; t9 k" ~8 y, p7 `
3 B( N# Z$ Q" m& y8 g
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; }) _3 Q% ~2 O w
0 {4 x3 j2 j: C& @; X* V1 B: ^
pLight->Diffuse.r *= 1.2f;
/ K% U, }6 ~# L. K
pLight->Diffuse.g *= 1.2f;
4 z$ j$ K& k5 W3 T
pLight->Diffuse.b *= 1.2f;
6 S" R3 U! w, l& k
1 b& n8 F, r A, P& U7 J. W4 `
pLight->Ambient.r *= 0.8f;
0 h/ m" t) f1 i' {4 h
pLight->Ambient.g *= 0.8f;
9 t# ]# K7 t' O( p% `9 e7 ], N% H
pLight->Ambient.b *= 0.8f;
* t; w. D8 A6 Q
4 E: f# r6 Z0 q7 r v$ f) A9 L
memcpy( &m_light, pLight, sizeof( m_light ) );
9 `" A5 `) c& s1 `1 x/ Q2 {( F; s
. l R0 e0 g6 Y& s; _2 j- V
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
( `% W# t' u5 B3 T9 J/ \
D3DXVec3Normalize(&(vecSun),&(vecSun));
) n3 _- E- G" I$ }( Z2 T. r: K! ?
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
; ?8 \9 u2 p$ v( l
pLight->Appear( m_pd3dDevice, TRUE );
8 u) W5 o0 e4 c4 e, o) p5 {$ `. w
0 B9 v5 Y4 k- c, x( c3 _; f" \
DWORD dwR, dwG, dwB;
* d/ E( S p* G
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 n6 ]4 Z4 |. G; G
dwG = (DWORD)( pLight->Ambient.g * 255 );
, y# M4 Y# M9 D( P0 B
dwB = (DWORD)( pLight->Ambient.b * 255 );
& V+ R& ~& o: w' k9 Q# w1 @
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 f. |2 J1 V9 R0 y& k
}
. {. o" \4 d$ L [! B+ U4 u2 T: j
}
6 d" D6 X3 f+ k" M( ~
}
5 j6 v0 f, Q' j0 b, ^) \
else
1 p2 [2 J# `4 _1 a3 E# n
#endif
7 o1 P8 V1 L/ d b3 j1 G; t
* v; \0 j- J; n: b& q8 a
if( m_bIsIndoor )
: g. T/ M! w% ~* ]2 ]% x& d9 A9 S
{
' ?( h. [; X3 d' P/ i# O
if( pLight )
* N7 m- [" Y$ c2 Z4 [
{
% D9 s7 a/ [$ N+ K4 M3 S/ ^( {0 ]& K
// à??μ oˉè*
: x) b* N% [% w2 r8 P5 V( R6 i
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
' Q/ C. u0 S$ Q$ j7 G* c, h9 q
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
r5 H$ l9 X, l# F$ z
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
! u" [# t5 ]- l8 R* I, K
2 x( A V* p# @8 B& Q L9 J# k
// oˉè* ??à?
$ D' @/ I6 Y/ o+ z7 |8 Y
pLight->Specular.r = 1.0f;
) j( E0 {5 j6 n# Z; q7 ?3 k
pLight->Specular.g = 1.0f;
. t5 E. e7 t5 Z" a8 O" m
pLight->Specular.b = 1.0f;
. e% @5 B2 P1 c; G- a I
// àü?? oˉè*
( A6 p% Q3 Z! \/ ?& @. `- I! c9 `- Z
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
$ N; Z! C: A) k6 I
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
6 a. j* N, d! b8 `; ^, J$ a
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
/ Q5 N$ [8 b* T# u& A( y9 a- a
+ a% J" Y8 X; i. G! m) d U" e
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# c! ?: R1 a# z2 J
{
% H6 ~3 u9 k; Y9 b1 s
pLight->Diffuse.r *= 0.6f;
! w: t& X4 i' O
pLight->Diffuse.g *= 0.6f;
' e/ t' p6 D( ~1 \9 y- H8 C* k- L
pLight->Diffuse.b *= 0.6f;
+ x7 \" g: g `6 _; p7 a) c. c
pLight->Ambient.r *= 0.7f;
3 \$ w3 a8 h/ U4 \' l" a! t
pLight->Ambient.g *= 0.7f;
' b; G+ N6 l' z+ B
pLight->Ambient.b *= 0.7f;
7 H: J. S( M% Y. p: M% z
}
: `, w. q4 t% h4 ^/ `! d* x0 h
8 q* w2 |! z! P6 k P8 K/ |
#if __VER >= 15 // __BS_CHANGING_ENVIR
! `) j1 C* ]5 l' v- ^* L
if( g_pPlayer )
1 @8 m/ h$ m) m0 Q7 ~: |9 q% E
HookUpdateLight( pLight );
, l, A3 m, e* R, D1 p* p
#endif
' ]* W8 }& F$ g c0 S
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) |0 v9 I% F1 J3 s
- |; c* B, _7 X; ~3 r* s
pLight->Diffuse.r += 0.1f;
* O$ d- {* @3 q" y
pLight->Diffuse.g += 0.1f;
4 Z4 }( _8 v# L$ C
pLight->Diffuse.b += 0.1f;
. \8 V% G2 O0 ~3 c
// oˉè* ??à?
8 D8 P- x) N7 B
pLight->Specular.r = 2.0f;
3 h: K1 H+ \7 O: S6 J
pLight->Specular.g = 2.0f;
3 G. j& g( V2 [3 x- C
pLight->Specular.b = 2.0f;
* T+ \8 A& _: @
// á?oˉ
7 T! a6 G- d4 W) A
pLight->Ambient.r *= 0.9f;
( L+ s' a9 i6 S' ^6 X
pLight->Ambient.g *= 0.9f;
1 W5 E {% ~5 h4 }2 s
pLight->Ambient.b *= 0.9f;
) W- J. P' M) u. F% s
/ D9 h) V: M5 `* E2 L$ h& w8 M
memcpy( &m_light, pLight, sizeof( m_light ) );
9 d0 l8 h ]: m1 u: N
- \- O5 K8 D0 C3 o z/ P' {/ n
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
& i3 L0 ]' C+ k) [' e* q
pLight->Appear( m_pd3dDevice, TRUE );
: u' D8 v! |- k: p$ P6 d. J% n U/ D
9 Z \# g" a, @8 ^' Y
DWORD dwR, dwG, dwB;
4 j8 Z Q6 P4 H9 @8 l7 Q% l
dwR = (DWORD)( pLight->Ambient.r * 255 );
: K$ x9 L( V% | G9 J7 Q
dwG = (DWORD)( pLight->Ambient.g * 255 );
* k' d) S- I E3 {$ T' e- w* b; z, T
dwB = (DWORD)( pLight->Ambient.b * 255 );
& Z: m0 Q8 J6 g2 h% T, g. z
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( t& [- I; D( G: f0 V( h
}
! L! }( k' s: k& z% N& s: E
}
+ p4 O9 l5 ^. U) S5 Y' h8 r
else
0 i/ I! Y1 L% o/ i
{
: k$ I! ?0 F( T
if( pLight )
( q$ U3 D! D/ t$ T. Q
{
3 D: A, p) u; Y7 I
, R4 B- V B" _2 I- c' y& Y% M
int nHour = 8, nMin = 0;
5 Z" R$ Y2 l( L; s- o
#ifdef __CLIENT
/ V" y+ s- Q$ o+ {* X
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
3 V4 N- Z2 _# G" G7 H" z- |) n+ K
nHour = g_GameTimer.m_nHour;
) ]8 |- V; |0 b
nMin = g_GameTimer.m_nMin ;
9 ^& V* @, g1 f$ X/ Y1 t: z
#else
% [4 H4 i. C$ L4 e. z% y
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
) F5 ^" S# }2 f
if( m_nLightType == 1 )
; _) \ Y2 T$ e9 G+ r* \
nHour = m_nLightHour;
7 J$ S3 v& Z2 y; F# Z
#endif
* V. N7 @4 M" P" Q- ?" n
nHour--;
" c- Z: k% S' b; S6 q
if( nHour < 0 ) nHour = 0;
( j$ E/ ^6 N: U5 ~
if( nHour > 23 ) nHour = 23;
+ @8 s* i; L k4 j( \! o1 o
& n, ^# H: B8 Z) _) ~: ]8 O/ b
//if( m_bFixedHour )
. p1 ]# \- a% U/ Z+ s( q
// nHour = m_nFixedHour, nMin = 0;
6 a6 M* z* r/ ?- Q) D+ B
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
+ q/ _( j% C' X2 @* V
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
^* a1 W5 A4 e& B, ~" e
1 e; u, P1 _; C) d
//m_lightColor = lightColorPrv;
! [# G2 ]7 e6 o; f
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
2 c0 Q( X/ l' S9 y& a& c; f/ r+ }1 \
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
9 C7 T U& s" T) ?) I9 p4 }
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
( c# q p: R# v2 g
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
/ N7 z% i! T/ s, K2 i3 U3 O
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
% W/ a1 x6 y" h6 M0 {( U- @
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
5 M: P. c: K4 j2 J5 {
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
$ m9 u8 [6 A( R: S3 o; l- R, b
+ C. K( X- c7 R: c: p
// à??μ oˉè*
- K8 \5 x# n5 b) a. |2 M
pLight->Diffuse.r = lightColorPrv.r1;
! S' K6 r9 v2 s7 ^
pLight->Diffuse.g = lightColorPrv.g1;
. I) F2 h2 Q7 k, U( ]
pLight->Diffuse.b = lightColorPrv.b1;
9 t6 w7 }+ }8 O0 o+ n
// oˉè* ??à?
' c8 z1 k c/ B
pLight->Specular.r = 1.0f;
. t, a4 n. [; s$ B) ~
pLight->Specular.g = 1.0f;
' D. Y/ k% \" m8 `, W$ v
pLight->Specular.b = 1.0f;
' _5 ?3 i' R5 {. {; I9 Z
// àü?? oˉè*
! G; ^6 |7 b1 n ?$ j9 N
pLight->Ambient.r = lightColorPrv.r2;
# I9 N9 N/ T/ v7 Z
pLight->Ambient.g = lightColorPrv.g2;
: f( v; l8 i ^+ v ]- f9 c
pLight->Ambient.b = lightColorPrv.b2;
% h; F3 T& R! A4 t
( V) u7 {/ O+ b
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# U8 I0 k% O* p8 s$ W
{
5 @9 t) L! s/ b, F9 q
pLight->Diffuse.r *= 0.6f;
+ s+ v3 U# @5 ~
pLight->Diffuse.g *= 0.6f;
7 @# f, X' e- i+ v |
pLight->Diffuse.b *= 0.6f;
2 s( G) H1 E5 p
pLight->Ambient.r *= 0.7f;
- \4 T& Q- p7 `
pLight->Ambient.g *= 0.7f;
/ J4 I+ {. n" R& }9 [- j
pLight->Ambient.b *= 0.7f;
r/ E% x0 E+ B6 h' r/ R/ J+ d# q6 x! v
}
9 k3 {' }' L3 Y: w* H- Q, W |6 y$ `
/ A: t) V" w6 q0 S0 |
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 p% K( {) {6 }5 l
if( g_pPlayer )
4 W% y% m! f5 \% l/ n* q
HookUpdateLight( pLight );
* Y5 U2 |$ Y7 w* `; K1 k E/ a
#endif
/ I& ]; Y9 k( M4 L% E0 c
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% r' \6 F4 R/ Z& ]# H2 {
: C: p$ _! b. I1 X
#ifdef __YENV
( U- n5 b" ~+ L; y# v
pLight->Diffuse.r *= 1.1f;
5 b; p" \9 b# B: y
pLight->Diffuse.g *= 1.1f;
$ [, `2 u/ u* `
pLight->Diffuse.b *= 1.1f;
- `1 l" T6 D6 w/ L& k
// oˉè* ??à?
8 J. U# w8 P) X! Q: w7 N% }0 _' v
pLight->Specular.r = 2.0f;
. {% X& u8 {$ C, P% d7 @
pLight->Specular.g = 2.0f;
+ o6 i+ N/ K% `
pLight->Specular.b = 2.0f;
( O4 l1 {) n. J! B; t( c
// á?oˉ
- g" ~1 H; g' T* R8 y
pLight->Ambient.r *= 1.0f;
! T/ f6 x$ m& C# ~( N/ ]0 A' ~
pLight->Ambient.g *= 1.0f;
& N( y& N- {. X- a$ h
pLight->Ambient.b *= 1.0f;
, S& W F6 {* b# y% D
#else //__YENV
! c" c8 o/ E* T8 S G. l
pLight->Diffuse.r *= 1.1f;
0 u1 }! k1 J+ E8 D: ~6 p/ B
pLight->Diffuse.g *= 1.1f;
' v, Q- g/ Y. y2 @+ d
pLight->Diffuse.b *= 1.1f;
) [& Y+ [$ a( y7 u# J
// oˉè* ??à?
( E8 Y1 _5 C) r& B( ]
pLight->Specular.r = 2.0f;
% ^+ s) s3 d* B( s, a
pLight->Specular.g = 2.0f;
: l4 D* b+ p3 Z k
pLight->Specular.b = 2.0f;
0 z" M( s; a) w" Y
// á?oˉ
6 w/ ^/ J! j- c, W2 I
pLight->Ambient.r *= 0.9f;
2 r( z! f/ E$ i
pLight->Ambient.g *= 0.9f;
: a, d4 u3 \% I% Z
pLight->Ambient.b *= 0.9f;
7 v5 c' f# r4 N" T- T; i3 p
#endif //__YENV
# @ n9 F" @! X1 z# x# P. L0 y
, d& d: k$ G! X8 r/ y1 Z2 G
memcpy( &m_light, pLight, sizeof( m_light ) );
; n* n3 _ k; \: z5 i$ S
0 S( }) n- N" _9 i1 T
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
: }0 @% H+ r' G4 J6 B$ f. y8 T
D3DXMATRIX matTemp;
/ O$ G2 k0 q1 J* \. F
static const float CONS_VAL = 3.1415926f / 180.f;
# H S; A3 c( ^3 Q& v$ l* b2 q: ~5 M1 O
" A6 p7 P3 c( Y8 d( p
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
$ \: q- a0 b" H1 L$ p
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
- m L7 {& \& ]+ P7 v2 |1 F
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
) f: s' Z3 l; N( n3 E; \6 G5 c
pLight->Appear( m_pd3dDevice, TRUE );
& \0 F0 [. ]$ g; T5 ~ n
- q2 w& L% E" v2 [
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) b' n7 [0 O8 _/ ?
// D3DXVec3Normalize(&(vecSun),&(vecSun));
' t2 a: ]+ z( ?5 |
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
- G2 D) t- \5 c4 v1 l* z5 b6 l
: A' x8 ]4 w$ c: L, ?! K0 z
DWORD dwR, dwG, dwB;
/ E. j5 T1 a. [ y
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 e* E2 o$ @1 a, O
dwG = (DWORD)( pLight->Ambient.g * 255 );
5 {8 q6 j0 j* e F. G2 d% z# ?; Z
dwB = (DWORD)( pLight->Ambient.b * 255 );
- a5 M- B8 u* a: j+ j1 L
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* a. p# _% f5 y8 d6 Y
}
2 Y. N6 ?. @6 l& @+ p* v% F" l6 _9 R
}
& A! C7 |( q: k
3 g7 J1 e n$ ?& L
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
4 O$ y/ D$ o( 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) );
& @% l) H) {" ~/ z6 O0 S9 `& G
::SetLight( bLight );
2 ~- f% n9 A g% l& _4 ~1 \# E
7 ^* s% E; }1 z; F* Z3 S
// ±ao? ?D?í???ó á¤à?
8 h6 N* O( r) R& o) X* H
m_pd3dDevice->SetMaterial( &m_baseMaterial );
; g F+ L, i C2 M! \; H' \
/ N$ v5 s% k5 d) R9 t/ E' U# M$ D
#endif // not WORLDSERVER
0 T8 v4 `) B' W
}
- V# E: [: ^/ q# Q
并更换
7 ]/ i8 c2 i- [6 V* g
Code:
1 q- [9 C3 q7 N' t5 T
__FLYFF_INITPAGE_EXT
2 R/ F2 I/ N2 X8 {' H5 o1 x1 R
定义
" ^- t: b* S# S. f t" a
2 g$ C/ H! Y9 f% E
& b. \/ P# U/ [1 N
# M* d- L- [% A) ~, Q. q
: `6 \3 v) G, Q" K5 t
现在终于删除我的狗屁加速...
# Z3 B0 G" B) P: h) r9 Q8 S
% z4 P9 R/ R# t/ I
0 h4 k! g' i' k+ \. t N" }6 G5 m
& x6 B4 x! j1 i$ @: I8 P6 B
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2