飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
5 }2 L; a+ r. n
尾翼:
3 g! j* q8 z9 u# D E$ s
) w$ _/ _0 a' D# ], V
代码:
. h, N* N& `( n5 u0 q3 Q1 m" `
CWndAutoFood::CWndAutoFood()
* V7 O, o; b7 u, N
{
/ i4 U9 T1 b k2 w$ y3 ?2 j9 J
m_pItemElem = NULL;
7 H) e# @" B+ c# I9 V9 O+ C
m_pTexture = NULL;
9 S& ` M, f' X X+ m2 _0 z
bStart = FALSE;
, |: i0 n+ d: l4 P. @
}
/ v' k" X" D% r& S9 k h. J
( J+ H5 X7 |* y) m* ]- i
CWndAutoFood::~CWndAutoFood()
) A5 P* M% s- u$ z+ A! |/ ?
{
3 Y8 [. |6 @1 O% R! n* e, y/ |$ E. @8 u
AfxMessageBox( "AutoFood ist gestorben
" );
. q1 i; a' K, r3 Y; }
}
2 J& [+ |1 ~, M: D0 d# I
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
+ Z; g* r$ s& S# Y6 G# G# d- v) `, x
{
! f8 F3 c7 O+ Q3 `
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
. W$ q3 {- E9 i" k8 K3 E/ Q
}
" ~8 I* G: @9 h
1 L) D! X' \9 i
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
4 r3 i, c1 x! o) B! b( f
{
/ B, z9 i' C* h; H/ m
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' P- R i' }; e0 a5 Q$ P
CRect rect = pWndCtrl->rect;
, ^ X4 s, G! j% M( C
if( rect && rect.PtInRect( point ) )
+ Q; l. b' @, k: T5 }0 H
{
8 q9 y2 T) g8 m; G
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
9 P* w g* P5 {- {- }' G7 X0 v
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
% c+ @; @+ y! ^; o' p# F5 X2 C
{
, H8 J) U! N0 G! s& Y1 ?
if( m_pItemElem )
' O4 U1 ~; @( i
{
+ J8 A {; j1 r0 d7 \% _
m_pItemElem = NULL;
# @7 _) O8 ]2 z
}
& E- t( R$ H5 E- T; J, r
m_pItemElem = pItemElem;
; I$ q+ `3 O# o2 E* q
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
* i+ X( N1 b7 [
}else{
5 |" R/ P# i6 J& i2 }2 P
SetForbid( TRUE );
* K7 X+ {/ \* Y8 q& \0 y
}
; L6 i0 k+ k/ H- [
}else{
2 h, W7 [) R1 M/ G, j* X' A
SetForbid( TRUE );
/ I) i0 I% y8 C* ~: u( D( Z) y* _
}
, ?% R7 O4 m+ `9 q: _
return TRUE;
& @" N# h$ m* f8 |
}
0 t. F( E1 D* }$ \4 `
, t7 j# i; X; d0 v" V; o5 M1 Z
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
6 ^, T% Y. ]8 V7 b" l
{
! h/ t* n! T& ~" r, a$ \
switch( nID )
, m7 E+ k# p1 u. m$ h8 \* `* z
{
, ~/ o& D7 u. K2 O0 l; f
case WIDC_BUTTON3:
' Q- F7 `% E, ]& A( k" Y
{
2 I) q. U. H x- t+ o
bStart = TRUE;
( t' _% e% a' V4 J) Z( X* l9 s
break;
: m. h8 y6 J8 Q$ h4 W7 P( }
}
9 d$ Q! L* b z2 T- c' i
case WIDC_BUTTON4:
, q& S- Z9 D7 y# O& ~# d( ]
{
7 X' s" e7 A7 S4 C% Z5 V3 l( ~+ Y4 b0 n
bStart = FALSE;
B( v+ e2 \4 C: d) g2 h2 C( b. {8 }
break;
$ p, ]# y/ g: ~2 V5 q+ [0 _
}
; C; T8 |7 [ w: i( \* Z
}
( L& S. z" j7 }; h6 }9 @/ O
return CWndNeuz::OnChildNotify( message, nID, pLResult );
( {* w$ `, U2 M4 ]6 S, ^0 ^
}
& }7 O: Z8 |( @4 X _; C7 j! o
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
& V7 h$ o, p/ r( a
{
5 w# t! ~; k1 l, b
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
/ ^0 P) N# E9 E# W+ ]
if( bStart || !m_pItemElem )
3 _# c$ I+ M `
{
7 B0 b3 l1 ^; f" O% K
pBtn->EnableWindow( FALSE );
! u3 V1 l. [9 E! ]+ t# Q7 @, Q
}else
; l) K- L% F# ?& f8 Z* @
pBtn->EnableWindow( TRUE );
! t; K( |0 H+ A, o1 y* q
if( m_pTexture )
2 I! s" z" r# |4 \8 _, }5 f Q
{
: l, {: m/ N M5 |6 V
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ E2 `% z- t# y" r% S' [" Q
if( wndCtrl && wndCtrl->rect )
6 y q2 n, k% p4 S7 E
{
7 t7 h& A; g2 |& }5 r
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
$ g/ \9 Y8 S/ o8 \. N
}
6 X8 u5 e- v5 d; O U+ P
}
d) K9 l/ U |& O
}
; C/ L( |, v1 F& }' y5 O
" }; f& |5 i( T: Z3 A
BOOL CWndAutoFood:
rocess()
: U9 O9 W" [+ X/ B
{
! z2 P9 }+ P2 a) g9 ~( Y8 I( E
if( bStart )
: Z* m5 V7 w( Q: O6 ]
{
* `# a5 V& Y& H$ t9 F+ I
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
2 A# Z7 G2 U* O- q% G$ q1 R" D) z" q
{
4 `# F" q5 M% s
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
5 n6 y$ i7 ~1 X
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
% q( @& ]' ]& S5 v% e
}else{
" J8 m' Q! y! L7 Q( N4 O
bStart = FALSE;
* Q" t- P7 H/ r' u' k, B- y
m_pItemElem = NULL;
. ~3 }0 H6 j# K9 C8 b) @/ l
}
3 K( Y, N, }* Y9 Y5 J% m' ~
}
& D& U8 f3 y5 ?( N- [1 ?
return TRUE;
9 O, l! Q& S. k @0 \: C
}
1 c, Q: M; A# H
1 |9 Z7 _7 ]+ h/ \2 G) [+ z
登录视频废话:
+ {) x8 h' X" Z9 N' ^' f
尾翼:
# y8 M! V$ a2 x, a) I8 K
# e, N8 O: p: y* ?6 @- i$ J5 @
代码:
$ h4 ^" V9 n7 s
) N- B, n( u# R( h2 f- g
void CWorld::SetLight( BOOL bLight )
" N; y; f/ |7 ~ g0 u
durch
+ T8 C* j. Z' K0 z
Code:
4 i- M! V0 M* K$ z
void CWorld::SetLight( BOOL bLight )
2 B; a0 _1 p/ m0 w0 P% m
{
; ?) n# L. d0 d M! g" S# b
//ACE("SetLight %d \n", bLight);
" D+ M$ A4 J- A# a& F+ _3 w
2 R( d/ c7 w( O- q; J: y
#ifndef __WORLDSERVER
6 Z# m [( {" q8 H' `% b( W/ p
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
4 d6 @9 x. X. V, i% ?5 n+ P+ j
CLight* pLight = NULL;
" S5 j" l2 k6 Y4 s4 X
3 J# A: C6 o4 X- Q2 Z
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
7 `% Q2 z+ V% S, n. q5 B0 G
) c1 R7 \* g1 q+ R. r' E2 I% I
pLight = GetLight( "direction" );
. ^% I! [) d0 K
* p. _8 i* K, }. ], }/ `- R x- ]# V; v
#if __VER >= 15 // __BS_CHANGING_ENVIR
9 X' n* N: D r* D/ w: ^5 ?
if( g_pPlayer ){
5 ~5 s8 i# ^ P) l6 h- x4 F
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
" d K( ?& t' n
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
8 s) I6 z4 b2 A# U( `
{
# V6 m: Z4 d5 C4 b
if( pLight )
* ?1 |" i0 L! q4 J k$ _
{
7 o( i) s+ r" r) X& A+ r
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
: l* z0 I- v4 |: s! y9 Q8 P8 O
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
, Y7 [3 H8 k3 q" z+ h
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
7 M W* D' {: M+ N
+ q0 L* Q- r- O, k: X
pLight->Specular.r = 2.0f;
% d% E/ ]4 U/ S2 w; P) ^
pLight->Specular.g = 2.0f;
4 b$ r+ o6 V& O5 ~/ Z$ n
pLight->Specular.b = 2.0f;
; `) X5 C6 a' W% t4 a Q; @' i- V l
8 I4 a( {( ]8 B$ \9 b9 ^4 b" R
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
8 \8 Y( \+ k; _# h7 s% L
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
6 \$ [' D" ?6 b0 q' E
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
2 d5 I! k$ {8 W& _/ X" K
& [- B0 n2 `$ N
HookUpdateLight( pLight );
3 h$ a# w! D6 J, I
/ V2 P0 Q7 E# R8 v, S- h, P- L- g- }
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; @9 c3 j6 Q7 [: m( G# }4 W
" I) o+ M3 k' \- o0 p, M" ~; n
pLight->Diffuse.r *= 1.2f;
, T" X7 _& z9 ~8 d. G
pLight->Diffuse.g *= 1.2f;
; U! x6 D! S8 m5 r9 B% j( J
pLight->Diffuse.b *= 1.2f;
6 j2 x- K& ]: z6 u, z# B. b4 r/ Y
1 e W* |" W- d" }/ ?/ d& Q% A* G8 \
pLight->Ambient.r *= 0.8f;
1 s9 ~# N( D& a& v! f
pLight->Ambient.g *= 0.8f;
; W5 |7 k; r2 j* H9 ?# s5 @
pLight->Ambient.b *= 0.8f;
1 E" v% n0 V1 n& B/ B
7 C) w8 ~- ~% K! N6 F$ ?5 C
memcpy( &m_light, pLight, sizeof( m_light ) );
/ e' y6 @ E' s+ i4 ~' ~2 K2 ?
; r" v9 F0 ~ }1 L
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' `7 x# r& ^1 n s& R1 c/ _5 X, c
D3DXVec3Normalize(&(vecSun),&(vecSun));
/ R4 T+ o4 X) l6 m
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! g' l- M h/ }) B
pLight->Appear( m_pd3dDevice, TRUE );
7 J) C( Z8 @& b5 H9 l
/ Y3 A. C4 m1 v: [% B2 O
DWORD dwR, dwG, dwB;
. G) G6 X' Y: e% c8 M; g% j
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 r0 {: J1 s4 g8 m" n2 v
dwG = (DWORD)( pLight->Ambient.g * 255 );
# Z2 `3 n* L1 d, ?7 J& q' x( F
dwB = (DWORD)( pLight->Ambient.b * 255 );
0 q. l) X# q% F( y0 g) R. H4 W
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! _* H' e+ h8 J0 Z$ i
}
- j+ J; ~9 E. z& C7 p% s* R
}
$ B8 e6 }2 e6 _; L! \# H9 Z9 ~
}
& Q: M, [* ?1 p
else
4 c( m; L Y4 u8 N
#endif
/ L" ^7 F' V8 Q) {: b$ L" |8 v" A3 p
, @) c. J% J! y/ `
if( m_bIsIndoor )
4 f# P( v+ b9 a k: {4 D
{
- s# N+ v4 y: T! {6 L% b, E2 r
if( pLight )
" Z. @6 f4 v1 |( H' p$ Y
{
9 N2 [- w) M! _
// à??μ oˉè*
$ `0 J% q k* ]: q8 _
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
2 m( t" f) {; p, H: V
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
9 Y. D1 U7 ^' ^9 D% v
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
% f% Y) F, v# H1 p+ d* u$ X; s
- m4 q1 p( r3 _( Z
// oˉè* ??à?
" i: ~8 \) j9 A
pLight->Specular.r = 1.0f;
! w4 O7 e9 i7 S0 V" z& \
pLight->Specular.g = 1.0f;
6 u P: V) W# h+ z. m9 m
pLight->Specular.b = 1.0f;
" O% w% O& y. }/ m# z
// àü?? oˉè*
# u: U3 d! C( ]. d8 Z$ A& { b
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
% |6 C5 c# \* p4 k" f& L
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
# I5 g6 u/ I. B" w/ \/ i' E/ \& y
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
( k Z5 w+ O( l$ R9 X
" i2 J! S6 |8 @
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% y3 @. @: j! U+ \: w& Z
{
3 A& Y0 Q a O7 |, a
pLight->Diffuse.r *= 0.6f;
* L+ j! {6 m5 v$ n
pLight->Diffuse.g *= 0.6f;
' l7 p4 p* h8 @7 w# H% F
pLight->Diffuse.b *= 0.6f;
5 V+ X4 b2 @7 g( d
pLight->Ambient.r *= 0.7f;
. R( j; _9 } A( H* g! [
pLight->Ambient.g *= 0.7f;
2 E/ A3 X& N' F1 h4 _
pLight->Ambient.b *= 0.7f;
2 p: i* ^7 t8 a& B. g
}
. a$ b/ C9 c6 r8 U1 i
; N$ h, M* D# [: u9 Y
#if __VER >= 15 // __BS_CHANGING_ENVIR
! y& B, G& o6 x; D3 z! |
if( g_pPlayer )
+ M4 a! v @7 [5 v7 q0 N0 h
HookUpdateLight( pLight );
* J6 N7 e6 u# w/ D
#endif
3 W, k3 \# B" o2 Z
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ g( i$ `4 V8 `1 R i2 G% H; L2 W) r* \
% Q# o# N6 h* v! C6 g3 L7 i
pLight->Diffuse.r += 0.1f;
# @- b5 p+ ~0 j8 |2 w7 c! s
pLight->Diffuse.g += 0.1f;
8 A6 {1 g8 S2 h3 R1 c- w# a
pLight->Diffuse.b += 0.1f;
# m( |# A0 V4 w* s( U
// oˉè* ??à?
$ ~+ P9 h/ {; T8 E
pLight->Specular.r = 2.0f;
' f; C/ } D# i) j( M' R
pLight->Specular.g = 2.0f;
/ s% C1 j: j6 M& q# S; D1 Y$ a& s
pLight->Specular.b = 2.0f;
0 P7 j' k @) h- u5 U1 J4 c7 v7 O
// á?oˉ
5 y Q+ k7 T: B/ h& U( M$ i
pLight->Ambient.r *= 0.9f;
, r7 s4 T2 L* d S
pLight->Ambient.g *= 0.9f;
- [7 u0 I t" ?0 V
pLight->Ambient.b *= 0.9f;
+ f. P S" Y9 t* F" d
6 j) V) B$ k& u! {9 K9 r' B
memcpy( &m_light, pLight, sizeof( m_light ) );
$ X" N' }2 u8 o' @
0 n" r9 k6 I2 h& B
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
: }( Q$ N. l( o
pLight->Appear( m_pd3dDevice, TRUE );
) I5 n" z6 q! _
: w3 y$ W+ k, P: g/ [
DWORD dwR, dwG, dwB;
( q0 P ?, F7 A, V2 A: J. f
dwR = (DWORD)( pLight->Ambient.r * 255 );
T& }/ B, V9 J. J0 l3 J2 J
dwG = (DWORD)( pLight->Ambient.g * 255 );
, F$ R/ {- x: A- m+ F
dwB = (DWORD)( pLight->Ambient.b * 255 );
0 o1 |) w0 x4 i+ u
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) G! A1 t* L g" _9 V6 {
}
5 k/ o+ }! V! ^0 T9 i* D; @
}
% S7 ~/ x9 Z( a4 N
else
. |2 H: h5 L2 x. ^9 X2 V
{
( L- R, E1 i+ P( l* N. p
if( pLight )
7 k' i: X6 [* s/ ]( u8 v
{
' I2 c* ?0 a0 W/ @* a9 [
; O0 L& P6 K9 P
int nHour = 8, nMin = 0;
) _) X+ S- g* T5 D7 x
#ifdef __CLIENT
4 Q1 v! p) m7 |" D j
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
5 c$ ?% k3 Q9 `8 A( o! ?( c
nHour = g_GameTimer.m_nHour;
! x3 n: E; T5 c
nMin = g_GameTimer.m_nMin ;
0 W; O% }* o% J3 b1 W
#else
9 J1 W* A7 d; u5 e# _/ W1 s
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
! l# b, m' @4 e3 ^) [5 _
if( m_nLightType == 1 )
+ ~/ x9 Z6 l' m/ ?# k R
nHour = m_nLightHour;
# B, }2 q$ {) d* L! q
#endif
: v% m3 @* a( x
nHour--;
3 A, R+ h6 u3 v: E; r1 Q
if( nHour < 0 ) nHour = 0;
- R" G# ?8 t- t! G& u$ \
if( nHour > 23 ) nHour = 23;
7 ^5 e& S9 I! E3 X' w% U& \/ f
; Z/ J) s G+ z) f# a/ X
//if( m_bFixedHour )
! N& G6 p% X8 E5 L+ V
// nHour = m_nFixedHour, nMin = 0;
9 l5 q, c0 \1 I# v
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
6 h- _9 A. O' v0 { M( A, L1 C3 @
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
' I. R0 A" i0 f2 s
. I" a2 P8 l ~* {
//m_lightColor = lightColorPrv;
( `* B; y& D& a" o( p$ l7 f/ n
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
, [* x+ s$ f0 ]: s6 r* ]
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
e% m& Q% R% a/ ~) T+ M" o
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
9 h. {' O' M5 [0 _+ Q
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
; d( V% {9 F! Z9 h& D" ]
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
; H! C/ b, L' r/ B8 o4 v
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
f( q1 T' E# g
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
8 ^/ `/ j+ t$ x
! T, V6 t$ k/ m9 {1 F; c: V
// à??μ oˉè*
( Z4 q Q: L8 c' S
pLight->Diffuse.r = lightColorPrv.r1;
' P3 Z- b& C; W R: B& {* k3 P
pLight->Diffuse.g = lightColorPrv.g1;
4 N U5 p2 q( l& H
pLight->Diffuse.b = lightColorPrv.b1;
0 H" u; L1 ~( m% g* P
// oˉè* ??à?
! B/ l+ g$ y! \! t1 x
pLight->Specular.r = 1.0f;
) v. e/ l+ z8 ~' D) w! h
pLight->Specular.g = 1.0f;
# K% @" C2 A! ~, v: P4 Q- }
pLight->Specular.b = 1.0f;
; z1 _, [% ~. m, L3 j7 k
// àü?? oˉè*
; x7 l, U+ A4 z1 ]& Y- [ K9 v
pLight->Ambient.r = lightColorPrv.r2;
0 m' w/ P0 V" P% a* K) a( ~, R
pLight->Ambient.g = lightColorPrv.g2;
1 C) I, h/ q2 t. T
pLight->Ambient.b = lightColorPrv.b2;
9 T2 a/ l: t6 o& v3 Z+ W* y6 ?' H( v* _
. _; D |" ^* i4 K8 Q! J1 r2 c
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
( L7 j) w4 r: f' z3 b) m3 ?
{
* P2 V' o8 w% d$ X1 E7 W( O
pLight->Diffuse.r *= 0.6f;
4 p3 Y/ W3 t1 N ?
pLight->Diffuse.g *= 0.6f;
2 h# Z+ j" R' B' x; b
pLight->Diffuse.b *= 0.6f;
/ F: r) P) \0 y% D y
pLight->Ambient.r *= 0.7f;
1 o1 @! s8 @" d2 o D
pLight->Ambient.g *= 0.7f;
( k* U' e9 o7 T' J: D
pLight->Ambient.b *= 0.7f;
- @! c) h L) |7 v* x& e
}
) z6 u( d3 v) B6 E. B: L
) v5 x3 f6 d |* P' h' m) `& a
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ G. I6 I4 P0 T" f& H
if( g_pPlayer )
6 ]7 `4 z( f4 j1 Z) T, j4 `/ G
HookUpdateLight( pLight );
M; K8 W; T5 K0 G% H
#endif
* g6 I9 O6 n% A" F$ ~* K
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
( e3 K) A h, D
& z `% ^# c3 [" I8 l" K
#ifdef __YENV
; o; M; Q: y$ Z* `
pLight->Diffuse.r *= 1.1f;
! [/ I/ o6 U0 n
pLight->Diffuse.g *= 1.1f;
6 P' X- u$ B w
pLight->Diffuse.b *= 1.1f;
- j3 q' f& |9 i" ?' {
// oˉè* ??à?
' E+ x' P; s1 P+ N3 {0 L
pLight->Specular.r = 2.0f;
4 a# K i* f7 f) q" Q6 A7 u0 S
pLight->Specular.g = 2.0f;
?0 ?. E" T( _: O8 Y
pLight->Specular.b = 2.0f;
. ~( N5 `1 N2 J$ k6 d" q- f J: b+ F
// á?oˉ
; `6 n# ?0 X' c2 O c& d
pLight->Ambient.r *= 1.0f;
6 p/ A5 U3 P0 w, V
pLight->Ambient.g *= 1.0f;
) _8 c0 ^# a$ @+ s# Z
pLight->Ambient.b *= 1.0f;
/ K0 {$ B$ o' J, s8 S
#else //__YENV
% n1 w. a g; M2 X. `! [6 e4 v$ C
pLight->Diffuse.r *= 1.1f;
" O# c+ P1 ?; m' A
pLight->Diffuse.g *= 1.1f;
, ]! i! L' m0 N0 j+ v! a% ~# U
pLight->Diffuse.b *= 1.1f;
5 o% R. N1 g9 v$ ]4 m1 @
// oˉè* ??à?
8 W, a/ ]. m/ l5 `
pLight->Specular.r = 2.0f;
8 W6 H" c t7 Z# Q' R
pLight->Specular.g = 2.0f;
" |" W/ E8 M) Z( x8 y
pLight->Specular.b = 2.0f;
2 p: f8 N! ]; r& j
// á?oˉ
0 G& t; A5 i8 P3 }
pLight->Ambient.r *= 0.9f;
7 f n% }3 H' v, l+ W' U
pLight->Ambient.g *= 0.9f;
* b; i6 J" Y+ R# u# }$ j' D, V
pLight->Ambient.b *= 0.9f;
4 X* U3 s1 C2 F
#endif //__YENV
2 |- s8 Y/ ~2 U" {: ~$ Z
7 i, ?# N. Z9 y
memcpy( &m_light, pLight, sizeof( m_light ) );
" `! v+ y3 V) l+ J( y" Z
% |- Q. W0 [ v. a* K; q3 \' n
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
0 d: y2 P1 S: \( Q, w7 r2 o2 Y
D3DXMATRIX matTemp;
/ k m- N' S. `4 ^& D3 V
static const float CONS_VAL = 3.1415926f / 180.f;
1 d6 J' v+ i) i1 E! T/ c
; k- T6 p# @' U; q# n
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
; B' U. v/ R" U; g6 f- w
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
$ Z7 W. H8 R Z$ P* f
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
6 A' `6 `' x/ O2 B/ p# Q
pLight->Appear( m_pd3dDevice, TRUE );
6 `; a: Y) g1 D1 k$ j9 O
6 ]4 o: ]' K9 ~8 Q1 Y
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
& _ a7 Y: K$ q' m, z: J5 a
// D3DXVec3Normalize(&(vecSun),&(vecSun));
6 _9 l# _$ i. {, M
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ K6 b) c4 F( N- ?7 Y3 y1 |8 W. O
% W; K n$ Z v) J. `
DWORD dwR, dwG, dwB;
$ |0 B* `2 H5 _% q1 {2 n4 Z
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 y+ B1 n0 p9 }$ [
dwG = (DWORD)( pLight->Ambient.g * 255 );
" j3 ]# P- q5 Y0 b4 a
dwB = (DWORD)( pLight->Ambient.b * 255 );
. q9 J4 y, p! S. `8 U/ A
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# h5 v8 ?7 M" }: Z1 e _
}
' m+ _4 v0 K2 T$ a" Z
}
" J& k8 v* _8 C% L x+ P5 R F1 L
/ E- M1 W% ]/ ^1 C: L
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
`! D; } ]" m
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) );
3 c4 T! T% A) i, o7 T
::SetLight( bLight );
$ f3 l+ E! n* |9 G
# d% M+ t }' |" u; j
// ±ao? ?D?í???ó á¤à?
$ C- Q" l2 }) j" Y9 n
m_pd3dDevice->SetMaterial( &m_baseMaterial );
2 n: G2 ?* w2 J4 A3 D
& t8 N& ~# N/ }4 n4 o' w7 q9 T
#endif // not WORLDSERVER
7 L6 k# r8 b. _, p
}
9 c4 n# Q& Z% m9 Y
并更换
2 W) \5 W# [% ] Y+ s
Code:
8 y1 `$ j$ j8 @* k" v
__FLYFF_INITPAGE_EXT
- J8 M2 W3 E; M0 M! q1 A' n
定义
& S- g& b! x* N" R/ Y* u3 Z
1 P4 f4 [7 ~7 I' q& o- \# P' q0 |
* w: k& P' k; R" u+ t, f. J
+ Q/ p( ~8 G1 x" y
6 K" V) {1 l, u O: \0 Q
现在终于删除我的狗屁加速...
! ?2 h7 D2 l& r! n
1 k1 C# u% A& x2 j4 L" d
6 k( Q# z) Y7 y- y& }! p3 Z
) l6 K) @$ q. a% B
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2