飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
) W" v- M- p$ R
尾翼:
" t0 v' ~. u# J( @3 D9 A" ]
. O/ V3 q( T: S/ I
代码:
3 b% l6 b$ ^- P% ~4 z+ ^
CWndAutoFood::CWndAutoFood()
4 E+ q! w) A4 t( }; n2 `
{
2 Y7 G0 g$ {) q1 B
m_pItemElem = NULL;
0 ^6 f' L% Y0 E- V
m_pTexture = NULL;
9 v, w/ s7 U$ T& n. F: I
bStart = FALSE;
C! a7 n) B" h% P6 o. G
}
8 y% n8 U. p, k2 \3 \) X0 X* G. B8 g" B
. p, y- Z4 e! n. U
CWndAutoFood::~CWndAutoFood()
* h" L1 M* G* f% W3 v8 G
{
$ c$ N( M+ C5 H; @! Q
AfxMessageBox( "AutoFood ist gestorben
" );
2 ~' x2 K: P1 {5 [
}
7 ^+ P; Q2 s0 O& e( Q
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
* Q0 O0 H) j. J" l5 `! z
{
, D, ^4 B( Z9 w$ T% x# T' j0 L" `
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
, |" i/ {5 b) C, _& d' n
}
5 ~& v3 R D$ A& o
* z2 S: K! ^; i1 C' i# Y, K/ s0 V
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
4 F; s) v5 u3 X d# D
{
, |9 P" Q O5 S) s3 N
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- ~& W1 v+ w5 x1 b2 f( X1 W) E7 Y
CRect rect = pWndCtrl->rect;
$ I8 t J9 k: E1 D# s6 \
if( rect && rect.PtInRect( point ) )
# P/ }% q! a; w9 d; n; |3 D% x
{
O4 ~9 O7 T4 i
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
; Z. J( U8 }8 ~4 r8 w) t
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
0 ~2 N, I, `5 V
{
& ~, ?$ Y7 K6 G
if( m_pItemElem )
, e# R8 Z' b2 n
{
* [5 { F ]/ r8 ?8 B! G- u
m_pItemElem = NULL;
+ y- [# h' P" O- \, ^" q
}
/ U- R1 a( O$ r4 G; M; H/ V. t4 H
m_pItemElem = pItemElem;
% `% w- W8 h/ q+ v L: @1 @+ s
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
1 u) d9 y( `4 u9 u3 F/ ]
}else{
7 d. W9 m n6 h0 l! K9 `% T3 z8 ]
SetForbid( TRUE );
+ E8 y6 [4 b& A7 @- M3 \* |; p
}
! X9 s5 p& J& e/ ]
}else{
1 a9 {& O" a' R: m8 O
SetForbid( TRUE );
2 }' H7 n8 s% O2 ]0 J
}
; g( d$ ~3 {+ I* ?4 K' D& j
return TRUE;
K+ R. k$ h/ I, Y0 |
}
! |/ U9 d6 Y9 |, ^% e
+ W+ ~# A0 ?! U: u
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
/ P' C: K- Z+ m f* V
{
/ G1 [9 Z0 x( z- _% h, ?6 j
switch( nID )
# [) y" w, y; j2 d1 E8 q/ f
{
- E5 S3 F( d" W8 q
case WIDC_BUTTON3:
; L& H7 W! U8 X" W: ^2 [3 X1 I$ x
{
5 |" f) q: d+ Q
bStart = TRUE;
1 N* `8 W0 V% E- W6 O$ B( _; w
break;
& p" H- l" M# G6 r9 p1 v& p
}
) {8 I6 G: r2 r! J/ L4 B9 p
case WIDC_BUTTON4:
) Q' e2 p' L* W$ a7 }, w/ V
{
! f! J8 ^; Q4 ~# h
bStart = FALSE;
* _/ e6 E. h2 r- X
break;
0 L; q# [! P( s2 a( m
}
& X5 H' I y: K' A3 x( K4 m
}
' b3 c! H/ ~$ _" {- Y- c7 p+ I
return CWndNeuz::OnChildNotify( message, nID, pLResult );
" ?# H* b& H( B6 l! F. f
}
; c5 I3 a2 s* D' c
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
1 ^4 O3 c1 E' m( s0 Y
{
+ g/ q- Q" H) U: N9 R) ]
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
|1 m2 x+ U% l8 A+ n6 a/ s
if( bStart || !m_pItemElem )
+ `" P8 z% `3 W" \9 X0 T
{
1 y" P! H! C0 i7 c, t. A
pBtn->EnableWindow( FALSE );
4 c' @. i. i6 o/ U, v$ v8 `
}else
" ~ f9 y$ k; ?1 H- _. m6 q$ a
pBtn->EnableWindow( TRUE );
& Z' B8 h( E1 _# n" }
if( m_pTexture )
) ~3 a: E m7 A. }9 j1 b# |
{
5 B) w+ s! F: a, ~$ r1 b: u
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! D% k! P. v0 ~3 O9 O: f9 D
if( wndCtrl && wndCtrl->rect )
: y7 N0 [* \6 o n! q% \; G( o! P
{
- h* e) V; u) y ]) ]' `# D
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
* ?7 _8 P( ~$ [$ L( Y
}
2 L6 s& ?, z) @" N1 f# Z
}
# g' u" [6 n6 `
}
: ^9 b O* H5 o" i/ F6 T; P
8 }1 q; Q2 _7 E/ G: t# G/ H( i
BOOL CWndAutoFood:
rocess()
8 Z" D) _: }% c' m
{
$ E, X# z. ^, `! ]
if( bStart )
9 Q! W I" U1 |2 n9 h% }
{
) v' Z2 a9 k6 ?) d
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
0 W( M6 [7 r; x
{
: Z) @. P; [, R% S* A. W
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
" M. @1 K8 W7 J9 [
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
" p0 K' W2 `7 Q4 y
}else{
% q) {) W- g2 C3 {
bStart = FALSE;
) l t% H: f% j; l! S2 V1 p# M/ R
m_pItemElem = NULL;
1 g9 \9 `! T) B7 {- [8 @
}
0 U) @: A7 v' c2 k7 W/ ~
}
, q+ @# o% l: f7 b7 x1 D/ D
return TRUE;
4 j# F$ g- k3 t- V! ~9 u3 V2 I
}
6 z0 ~. k+ J$ R2 r8 r) @7 F6 I
5 r3 Z, Z1 f3 N# K. q
登录视频废话:
2 a/ ~, |: _7 G+ E- x5 f; I
尾翼:
3 m0 @) \' M; N6 b. }* ?! Y
, I, B) V1 v* I" k* L
代码:
$ N8 K: ]1 P: r& Q
& _2 T. t. F8 _1 A4 P+ S
void CWorld::SetLight( BOOL bLight )
$ B* [ B- L. h
durch
' N; c( x# L' _ \8 m* O
Code:
2 B4 v, j- f2 t* J; z0 Q9 h* Q
void CWorld::SetLight( BOOL bLight )
9 b$ R+ a. m( k1 t4 {8 O3 z6 b
{
& _8 H2 }' B2 O- \& X! O0 _; t
//ACE("SetLight %d \n", bLight);
$ G* M3 V; V8 B9 X& l
( V9 |6 q" w5 D' \! k5 a
#ifndef __WORLDSERVER
3 v$ S, I7 r; {" M v
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
( C' o+ _" E( e- d: }6 J
CLight* pLight = NULL;
2 P! e# p5 i5 ]# N) C9 C
* D! B e, _$ G0 O8 N: K: v
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
% O1 T5 Y- T4 h, l
; @" I m/ m! D0 d7 T* z
pLight = GetLight( "direction" );
. k+ |0 Z4 C, I: E0 `' }6 e9 X
/ L8 U3 }! \6 ?) m+ G, Z6 f8 Z
#if __VER >= 15 // __BS_CHANGING_ENVIR
4 V! @+ ~( E7 B! b
if( g_pPlayer ){
2 M; N/ T' P5 }
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
- J# [- z! \* W6 ]
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
) O% [ z! g0 h1 T; I
{
& p" F. F* a1 y8 T T
if( pLight )
2 d2 K5 V6 ]+ w/ m& C( k! c1 k
{
$ B- I. l9 E# W0 D/ @, Y
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
/ E; }1 i2 y& c1 P% i
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
, Q5 l( @; e; H; n, L' A
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
, h* V0 ]+ ?4 g2 X/ W3 T f' A' R
. s" b# S$ d$ }0 y: P
pLight->Specular.r = 2.0f;
2 a8 z' @4 u9 P% p4 m5 C/ K9 p9 x
pLight->Specular.g = 2.0f;
$ }) ^! T3 g6 n, O0 X
pLight->Specular.b = 2.0f;
0 |% E% V8 C8 v3 P* H7 q- L% D
/ y. _8 }3 w2 f" A2 V; p
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
6 W+ f% {; m/ L# N+ c' ?5 M9 T7 {' V" W3 K
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
- R3 F' \! x; ?2 ~% X2 [' Z/ G0 q( h
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
5 N2 m+ U/ q3 a, w8 U: s
1 p7 H0 q! f# q N6 x
HookUpdateLight( pLight );
9 I* Y9 R6 D' [% I/ B# p4 ]
, I! {% @7 f# ^* p3 e+ m ~
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 Q- X8 k5 p ]8 ^3 N7 S
3 w5 [* a* |: C0 P k; N' A
pLight->Diffuse.r *= 1.2f;
8 v S+ l0 j3 \
pLight->Diffuse.g *= 1.2f;
4 h; O, q5 q; }0 n8 Y5 H6 J& x" m: {
pLight->Diffuse.b *= 1.2f;
5 Y* g" c) F) _6 h, h% b& h
" O7 }) p2 r, j/ E; y0 A3 i
pLight->Ambient.r *= 0.8f;
$ S0 ~% v2 I9 C* V8 I( L s P( L4 s
pLight->Ambient.g *= 0.8f;
% ?2 P! W) u- j0 M! X
pLight->Ambient.b *= 0.8f;
2 `. X$ {, N; U$ L; Q" M! b0 G0 u
- f% n4 M- D6 P0 v) g
memcpy( &m_light, pLight, sizeof( m_light ) );
\7 t3 U8 r$ o
* l# J! h2 r$ r4 y% u' u1 V
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
0 C6 z _6 ?7 {( w3 f" d
D3DXVec3Normalize(&(vecSun),&(vecSun));
6 B3 d6 `5 [- @/ N
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ P! x N! f- S+ X3 y/ ?1 s4 I7 }
pLight->Appear( m_pd3dDevice, TRUE );
* m, r* h; L1 K1 M) e% s2 K% X. ]
/ N1 N- ^9 H: q) Q3 m( C
DWORD dwR, dwG, dwB;
- R$ Q% r# r, Q! G* l) E0 ~, U3 y; t
dwR = (DWORD)( pLight->Ambient.r * 255 );
! G- {3 f4 N( e! Z
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 D: G3 F& V, |: Z4 }" `
dwB = (DWORD)( pLight->Ambient.b * 255 );
5 t: q1 K% `) G+ q/ ~* X
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
E* \! d: _- |$ B% `
}
3 c! s( i4 v9 V2 E8 k6 c% ]$ n9 f1 v4 s, V$ b
}
0 O9 `9 Y2 B- _* o& a" s
}
t: U- T6 H/ G/ o l- U
else
9 Y T% V! L9 Q" o
#endif
# P* l8 Z3 ~0 _. E
, ~! Y' H4 Z8 E# F. y$ i9 g+ l
if( m_bIsIndoor )
+ o& W" b* s) d+ g0 X" x
{
$ s$ n1 F3 H2 j' u+ [
if( pLight )
/ Q: u4 @9 b' S7 Z
{
* d% Z- }# j* {3 K
// à??μ oˉè*
! x2 |; v" J7 `- Q4 @
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
9 n( _; b* B3 H- A$ K" ]
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
9 o% u& H) q# V- v$ T. A
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
3 Q& W" i g" ~: u' O
0 v! ?) N/ B* }8 X5 N B
// oˉè* ??à?
: L$ d0 [& k3 i. z# t
pLight->Specular.r = 1.0f;
5 \* y1 [# K/ ]# ^
pLight->Specular.g = 1.0f;
: t7 Y) ~! @' O/ D! E; @1 q
pLight->Specular.b = 1.0f;
4 I: q# I$ v( S c4 S2 _) K( @
// àü?? oˉè*
& |# {; s0 }/ Q" s% y
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
' X' K) `+ H4 ]# S
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
( i& Z" C$ ]/ Z" c( H4 v6 B
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
8 |+ S, T1 f( |' ?5 e. ]: o4 {
0 R+ W2 p& y1 S H/ Z- k" V& L/ H6 v/ Y
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* S4 D2 I- o9 \5 M
{
& u# Z' z4 I% O
pLight->Diffuse.r *= 0.6f;
! c5 W8 n8 S, ^ E/ r7 Z7 p
pLight->Diffuse.g *= 0.6f;
2 Z6 O: U9 w# q1 a/ R/ g
pLight->Diffuse.b *= 0.6f;
6 a" t( J, Q. `8 h
pLight->Ambient.r *= 0.7f;
/ f% k0 o) L9 L
pLight->Ambient.g *= 0.7f;
' e7 u; E3 F% i/ S5 S* r+ j
pLight->Ambient.b *= 0.7f;
) ]5 ^# t' m0 i0 [* C
}
0 D" x0 ^/ U: O6 T8 J
8 g) Z4 S z' n
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 Q" l( p5 M9 W. z# L3 X
if( g_pPlayer )
* Z3 S8 {% Z& S/ l; A
HookUpdateLight( pLight );
. H. c: `* C( j) `6 [9 U
#endif
! s9 w4 P4 j: g& y6 g3 V
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" x/ ?& T* T. S; r
5 b' _6 @% S( e" Y ]
pLight->Diffuse.r += 0.1f;
3 ~. `+ ^1 H" Z& j i1 M2 D- Y; j9 D
pLight->Diffuse.g += 0.1f;
! ^; {8 N7 W+ {
pLight->Diffuse.b += 0.1f;
. B3 ?, V& [/ o- Y8 q# y0 s' V& x
// oˉè* ??à?
/ | x l! m3 K7 T" M
pLight->Specular.r = 2.0f;
" [9 |+ Z* g5 j- I9 t1 F5 \
pLight->Specular.g = 2.0f;
& q6 X! Y# l4 k
pLight->Specular.b = 2.0f;
; n( [' a% H4 f) K0 r; D; H
// á?oˉ
7 L6 V, C8 I* H [( t7 Z
pLight->Ambient.r *= 0.9f;
, Q/ j1 x, y) x1 F5 a' m
pLight->Ambient.g *= 0.9f;
' N0 N; I2 I' z; o* T
pLight->Ambient.b *= 0.9f;
$ X/ ?+ h& b% J4 T R1 m9 R
5 j. X9 f7 c+ Z# q% W) u% L: C
memcpy( &m_light, pLight, sizeof( m_light ) );
& G) K/ ~; x# p) ]( A3 e0 _
7 v8 p5 u( l# e
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
( @- y8 H. y* h% M7 E
pLight->Appear( m_pd3dDevice, TRUE );
# d2 ]! f# d9 E# m% U
0 C1 v+ ~4 B! k9 g( W! w2 B
DWORD dwR, dwG, dwB;
: M1 i9 {( S& w+ t
dwR = (DWORD)( pLight->Ambient.r * 255 );
# R& ?9 Y3 r! {4 _4 p8 e
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 S1 F- u* L2 [" @8 c- f! ~+ j$ c( L
dwB = (DWORD)( pLight->Ambient.b * 255 );
w: I' A+ [' ?
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( S2 _8 K5 f: o4 s1 ^2 ~2 I9 m% G
}
4 F. b u! a8 Q/ G
}
+ {8 S6 _& Q' p& ]- G8 I" ?
else
5 ^3 q2 ]& }# |; \& N
{
2 g' u' Q9 c6 b) j- y
if( pLight )
$ i1 K2 S& [9 n$ r, E7 v6 E" H, o
{
0 `& o9 B# I4 b+ y" x% d* u& g
, y2 U* O- v8 v' v+ N
int nHour = 8, nMin = 0;
+ X- C# w, \# \; E0 F
#ifdef __CLIENT
, O7 j( L% E) J- W- u5 Z9 B
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
+ M- B4 A; O% S
nHour = g_GameTimer.m_nHour;
& J% K, n0 e* }) q% F" X3 R% r( W
nMin = g_GameTimer.m_nMin ;
T+ L- j$ |; n3 `
#else
2 I- r. @$ g! o% x) X6 T
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
; I% W e9 E% C$ S0 n- T$ S
if( m_nLightType == 1 )
* m* z/ i1 G, N# D" J# C
nHour = m_nLightHour;
( L7 Z' |8 Y. s5 a
#endif
( B$ l6 \# w6 e8 W
nHour--;
% }; U+ S* ]4 c
if( nHour < 0 ) nHour = 0;
# l9 I( o2 r. y; |4 r" d
if( nHour > 23 ) nHour = 23;
5 G9 p7 I8 v" `# p
" E k9 L$ G+ ]! Q
//if( m_bFixedHour )
; S/ U8 G+ Z+ \
// nHour = m_nFixedHour, nMin = 0;
9 R. ~0 S" r6 x5 Y
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
( F1 i5 t4 x7 D/ U6 l! a. x0 O
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
q X- F+ C7 g% }0 X$ I' X1 r5 j% a o
1 F( @. w' u5 K; W* p' r
//m_lightColor = lightColorPrv;
$ d* P; Y/ `) Q7 o9 X4 q
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
# J0 g0 F1 h6 R) {: H, O
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
+ F8 D- ~ A; H+ e. c0 Q9 K4 `* s# V
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
# ]3 C2 U! i5 T. _- S$ S
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
# b7 _. K! \* ~& ]$ [6 E
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
: M1 M+ T6 w. m# ], l4 S
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
1 |3 U# e# ?( A$ r- k. q
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
5 y: U; r! C% j. Z+ i
. P2 b1 {3 l: ]% ~0 A) S
// à??μ oˉè*
# B+ W" _# E( n1 L- w
pLight->Diffuse.r = lightColorPrv.r1;
5 x& h' q6 c* {. c/ W9 U
pLight->Diffuse.g = lightColorPrv.g1;
3 s$ K' |- K8 ?+ w
pLight->Diffuse.b = lightColorPrv.b1;
+ z5 p9 B+ u9 X B, m6 V9 F) i
// oˉè* ??à?
1 K: m) f* v: |
pLight->Specular.r = 1.0f;
; }$ l" g$ Z3 \/ q$ ^- d/ d$ G
pLight->Specular.g = 1.0f;
w/ k- b' _$ a' a* [9 \0 P
pLight->Specular.b = 1.0f;
$ g0 U6 d) ?$ W% a
// àü?? oˉè*
* n& V1 O# S- K' E7 S
pLight->Ambient.r = lightColorPrv.r2;
" G: N R' e0 P6 y/ @" v& u
pLight->Ambient.g = lightColorPrv.g2;
2 g+ x5 O6 n/ d4 q' Q- t. S
pLight->Ambient.b = lightColorPrv.b2;
2 ^0 \" Y. D8 W* b
% [1 d# }' m8 \
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
$ ?# J( c; Q8 S; j
{
* R' M* d s0 W7 ^8 L7 I7 y; x
pLight->Diffuse.r *= 0.6f;
! x% y2 P2 o8 ~7 b
pLight->Diffuse.g *= 0.6f;
; u4 S) ~/ P" |1 y4 h
pLight->Diffuse.b *= 0.6f;
. E) E( j5 R- }1 }' | w
pLight->Ambient.r *= 0.7f;
: n5 X' U' f! \+ {
pLight->Ambient.g *= 0.7f;
) A) F' f" N- Y7 d y; x
pLight->Ambient.b *= 0.7f;
4 ~3 ]# }9 q- ]. w
}
4 Q& L# Q1 K G; _; E$ Y+ ?
' Y; {0 d; u. u- n
#if __VER >= 15 // __BS_CHANGING_ENVIR
" P) |% o( z. |
if( g_pPlayer )
9 y* u! p( \/ H% H! K e
HookUpdateLight( pLight );
/ R8 q7 a- r6 U2 R
#endif
6 Z# j- }4 r9 n3 V- H/ Q
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% X( Y, `! |' h- P: p
( N/ \+ L }+ _ h
#ifdef __YENV
9 ~2 s( w5 O& N. Y
pLight->Diffuse.r *= 1.1f;
% t+ h3 A* Z1 Z0 ~: e) z H
pLight->Diffuse.g *= 1.1f;
3 w% w- M/ H7 @, f+ m
pLight->Diffuse.b *= 1.1f;
6 {' j3 D2 R9 B1 W$ P
// oˉè* ??à?
B8 o& d' Q) U2 }$ e6 j2 a/ Y
pLight->Specular.r = 2.0f;
- a% R5 g) i; X- r( Y
pLight->Specular.g = 2.0f;
A, @6 U' _+ u2 d! @0 ~
pLight->Specular.b = 2.0f;
) @ S, C- W, j7 _- E9 Z- S0 K5 y
// á?oˉ
; h( c. y8 z% P2 [( k
pLight->Ambient.r *= 1.0f;
& T% V5 Y3 P9 P& _+ ~
pLight->Ambient.g *= 1.0f;
3 P3 B0 b% W2 g3 F6 d/ P7 f
pLight->Ambient.b *= 1.0f;
& M: J4 d! M" ?" D% O
#else //__YENV
3 I% A% w" s% C) ?) D
pLight->Diffuse.r *= 1.1f;
0 r" B7 {6 Y" m
pLight->Diffuse.g *= 1.1f;
5 i4 N+ o* T& ~3 b, s5 H
pLight->Diffuse.b *= 1.1f;
, t. C3 ?8 h S5 z. W
// oˉè* ??à?
, k3 q% y3 @: U2 o
pLight->Specular.r = 2.0f;
" W6 U, Z5 Y# o. H% \
pLight->Specular.g = 2.0f;
6 @6 x4 l+ J0 i9 l4 F+ d
pLight->Specular.b = 2.0f;
# H) A4 b. G' f1 n. T) ]
// á?oˉ
% I- }6 b5 f0 c! @$ ~0 k1 r3 ?
pLight->Ambient.r *= 0.9f;
) _* Z c5 @5 [9 k0 P
pLight->Ambient.g *= 0.9f;
6 C' G3 K, y/ {. ^
pLight->Ambient.b *= 0.9f;
4 p1 Q2 ~2 N% A0 U, P6 d x7 T9 R
#endif //__YENV
$ `) ?+ |/ q3 q) V
1 z- {, e9 s9 w3 K
memcpy( &m_light, pLight, sizeof( m_light ) );
/ T. ]3 s+ @# o1 d' Y9 Z
7 D! ^3 }# e9 Z
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
% S$ r9 \( ~8 R( Z Q2 s
D3DXMATRIX matTemp;
5 c6 u, `' h6 p: k4 J% r
static const float CONS_VAL = 3.1415926f / 180.f;
3 S7 e( }9 m! V$ ~; O8 i6 B$ o
9 @% H8 _9 Y6 V3 y: N% t4 r
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
* r* q2 p: {1 z- u% P. H4 H2 M7 r
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
# U& W2 G3 d5 w+ O* e
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
4 ?6 T! _* S* m3 U
pLight->Appear( m_pd3dDevice, TRUE );
# h v: Y# |' b6 u( [
# u& E7 M* T9 t# a9 Q" N4 a$ H; o
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# k6 ~9 L5 Q* ~8 M, I
// D3DXVec3Normalize(&(vecSun),&(vecSun));
" [4 c2 n1 I' D* x+ l) Q
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ P; W0 {; t, G
# B6 q' s. K/ G% ~( e2 r
DWORD dwR, dwG, dwB;
C4 ^" T) O- A: w; @: Y5 y9 V$ a9 d1 @
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 u2 [' @& Y: n6 K. I l/ _
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 d3 e( D, c! u2 C
dwB = (DWORD)( pLight->Ambient.b * 255 );
. Y# c, a7 c5 ]& c) p! g- y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 e2 f1 y5 p- ~! ?+ j# [
}
8 ~# s3 G: u5 R
}
) \+ z2 J" ~( F* {7 l, Y3 l/ J
# {/ d3 i: P/ h' G
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" i' [5 R. u( F8 q K- R% g; V7 O
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) );
& h0 J; t1 I {/ J; s+ T# T6 A6 @; v
::SetLight( bLight );
; J3 S e: ?7 X a; C' V* E
, [ c* [( Z9 l
// ±ao? ?D?í???ó á¤à?
: r1 ^, W8 X! ]) n
m_pd3dDevice->SetMaterial( &m_baseMaterial );
- I7 i3 k# g( I2 P! f S) @ z/ O
9 b7 a6 o' A8 z8 U* n& j& p; I
#endif // not WORLDSERVER
* A2 U: A' H# y' w2 R B2 p
}
7 q4 \& W& }, ^! H/ G# l
并更换
[1 N# e9 s/ ^2 z. S
Code:
5 D4 D( Z& S3 z
__FLYFF_INITPAGE_EXT
8 m9 c- p5 n& h3 e7 k$ [3 n( U
定义
' F2 T$ Y1 P2 L% \
6 g: ?8 @& E- Y3 H5 Q' R! N4 F3 g7 @
3 S+ S1 n( S# }/ m2 s* b
2 y* v7 R! \ b
) P' O5 d3 [9 ^8 O7 S+ f6 F* l/ m2 r* e
现在终于删除我的狗屁加速...
3 k: N4 g% ^+ z; i1 T% l# ]0 Y# ~
6 F! x5 d. |1 B o } x
) w* K- Y: |3 T" o/ [8 W
! f1 I# _& d3 F1 ^! T
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2