飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
& }1 y3 \, k$ Q4 f$ ]! W7 |
尾翼:
: V X3 F3 N" o& H/ w; Q, W
2 U: c2 i( f& U8 D
代码:
2 l" u, p m4 m
CWndAutoFood::CWndAutoFood()
: N4 z; ^! e6 k& H2 C
{
" N- C* X$ W2 I" H
m_pItemElem = NULL;
( f+ z# M2 k# k4 a: R
m_pTexture = NULL;
* j0 T5 X1 E+ A0 \- R
bStart = FALSE;
- ?2 e6 u, _) m9 E7 y& {* J
}
( E" W7 t ^( y% y9 @" C
5 ^9 e; y& C# ~/ ~
CWndAutoFood::~CWndAutoFood()
/ f# P( f5 x' X# S
{
0 `- |1 j' C6 F* a6 a3 ?- E* G5 [& ]
AfxMessageBox( "AutoFood ist gestorben
" );
3 t9 J! p; p$ W! Y5 X
}
! Z' L/ [; F1 f* T; h, e
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
, H8 G9 H4 P- O/ s x2 N
{
9 q* R" ] {3 E9 X
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
j( z ~7 ], u
}
7 }4 s9 E; Q( {# G7 \0 R
# z2 O3 g4 P9 s4 r2 l. j
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
% I# y, k. R S- Q% r1 Y3 l& O
{
/ j) S- i. g% N- M% N2 q
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
$ Q3 O' v! J* Z) `5 s4 }8 l w* Q
CRect rect = pWndCtrl->rect;
( ?: R( ?( r7 p* P- t8 u
if( rect && rect.PtInRect( point ) )
& r, Z/ Y1 O! F5 s, S
{
5 {6 \! ^ R0 O) ^# z [
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
4 a: [, i( H; c" n+ j
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
/ R% y8 J/ z, O2 v2 v
{
: d9 ^7 _' y4 B! p; b5 Q' ~
if( m_pItemElem )
6 g' ^+ {" u9 @1 u8 Y6 P
{
6 ~9 R8 E. j. b( L! S, M5 z! \$ M/ {' V
m_pItemElem = NULL;
+ B `# X7 Z3 W5 e
}
$ S0 l/ Z" @+ L8 V
m_pItemElem = pItemElem;
% w) O: g1 {0 p0 B# _2 B5 u" S9 v
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
2 X' B9 r9 J- ^" {7 E* }
}else{
3 I) R; D! B/ [' `9 A
SetForbid( TRUE );
' a& c6 o& x; C% k7 A4 L
}
1 T }5 W4 _# ^/ \* k: c7 w1 [
}else{
9 v( {) Q% ]( p) E% q
SetForbid( TRUE );
0 T5 S" _2 ^7 `1 e: T
}
5 [' d. @5 r% o' ~4 M+ E
return TRUE;
% R. c* v5 o( A
}
8 Q( F' d% g1 h! O6 ]
! Q) Q F5 n+ u# F- J
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
: T3 t/ S E! b2 b
{
d9 W+ D% i2 p9 O4 F& J
switch( nID )
# y% r6 M5 @+ B: b8 ^0 y/ E' h: e$ q r
{
4 X3 J& x' R" |) T) Z
case WIDC_BUTTON3:
8 e1 w" w& \" h# E( {
{
0 Y7 U* j7 F' ]- e# y4 J3 M4 Y
bStart = TRUE;
# ~* ~4 T3 x& j& C6 f$ \, c
break;
0 G; R- k s$ a5 r
}
% d3 k s9 D. m+ j- a
case WIDC_BUTTON4:
6 a6 F+ H9 |# J
{
t* q' |9 c" K' @ R
bStart = FALSE;
. f4 Q- n! G0 ?
break;
. ]; ^2 z/ u* m
}
( Q5 ~. b( w6 I6 K5 t d3 V; u$ f
}
& [! x$ E5 r1 J g1 Y& U& O
return CWndNeuz::OnChildNotify( message, nID, pLResult );
( H' T( z+ j3 i4 l" _+ V# G- S
}
* _4 ]' G) w) U
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
: c0 v; p) C: T% h; x, u2 R
{
* T0 H. @ A* v0 u
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
, e5 O/ V Y# n" {: B' }% L; Z
if( bStart || !m_pItemElem )
0 w( R+ B1 O" `0 _* h" u
{
! S: A7 ?6 R1 S9 k+ L3 [. A8 g
pBtn->EnableWindow( FALSE );
( ]$ Z; v, ~+ V% P. k3 q3 k
}else
i9 u" ]/ m+ Y P
pBtn->EnableWindow( TRUE );
% Y8 |% |1 f8 w! o/ i; r
if( m_pTexture )
- m& p* n+ o7 } q
{
; j. @: j# H! e1 b I. t2 a8 Y
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
: |9 N$ n) L! a- a' A+ m" Y7 a1 }4 c( T/ R
if( wndCtrl && wndCtrl->rect )
8 ^+ a1 @3 w$ Z
{
4 ?5 C0 c" r/ Y' l2 i) r
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
: V) Q3 k% [- A: [- p( r
}
6 z. I" X3 N* r9 t
}
) w" e' h' C, e7 z2 j! Y
}
/ S+ Z; `) @) p4 c% h6 z
m' J& s; C1 X2 @" c3 {1 U! x
BOOL CWndAutoFood:
rocess()
# |! a- U" @) F( z
{
3 F6 g7 W7 q$ r$ D6 ~
if( bStart )
3 n5 p! {/ ]1 S/ G
{
* B2 l$ c, C7 C6 U t4 A) W
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
& V/ Z& n# m+ G$ M1 ?. ?3 z, ^
{
: w$ _" @7 e- L: o
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
9 q5 W& Q9 s/ |6 N
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
% M/ }$ [! E$ U
}else{
+ |' f( d2 C% k9 i
bStart = FALSE;
" q8 f5 y1 X4 J2 F0 T! H
m_pItemElem = NULL;
: G3 F( s3 h: O* O( N; n; O% n
}
0 a- ?" S( `/ ~7 F9 ?3 d
}
: H `7 w# s8 _' M; I- i6 q
return TRUE;
/ t% `- \! F5 }7 U
}
8 L' z ]2 M+ y8 {- q
1 G" q" D, l! q1 V
登录视频废话:
5 ^7 U0 v; l/ w1 ^9 `# Y
尾翼:
5 R% d4 k* `' o6 F
* M2 M0 j7 H3 q D' a: e
代码:
& z7 |2 c9 [$ w8 Q4 o* J7 L G
, z' U) [ L. X' x; A' q
void CWorld::SetLight( BOOL bLight )
. {% |# |% ^. P( B# a2 b
durch
& z# @+ Z- e4 D- @: _
Code:
% X" X6 S3 ?8 w" q# [+ k: F
void CWorld::SetLight( BOOL bLight )
+ z; P* x% q, m/ w. r7 M
{
/ R* `1 U& e2 A' }
//ACE("SetLight %d \n", bLight);
% X$ S& C* l T$ }0 l. W- {7 l! S
) r" i* E7 j) E9 B7 n
#ifndef __WORLDSERVER
8 Z0 }: \' A' r& v
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
7 D% O5 n; L1 M7 M! {% P
CLight* pLight = NULL;
% F9 d8 r; ~4 J* o0 E* R
D4 F; y$ n" y5 v y
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
( ~: `: X* M$ l* p9 i
8 Z7 V) T7 }( ?# U
pLight = GetLight( "direction" );
S% m& J0 L( l. D
( [5 o! z( D& b$ R& h. M
#if __VER >= 15 // __BS_CHANGING_ENVIR
8 w h r1 \4 ]' l, j7 v6 Z/ O
if( g_pPlayer ){
( k5 w2 F( n7 G( U# c
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
. ~7 y9 A& g3 r3 i. W8 N
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
, {3 m* ~4 l( C3 ^8 l+ u
{
. W1 f' @" C L1 P7 W
if( pLight )
1 Q( e, g' h5 h. S
{
8 F; ^( ^% f8 g' q! a& P, O9 p
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
2 }2 k1 w; V) r- L0 |3 @
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
5 @# \: `% f0 T, i9 S
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
! e( i3 ]( q+ o0 K2 G, J
6 r: c+ V' l. D$ `, p
pLight->Specular.r = 2.0f;
7 P; k0 k$ M9 ]
pLight->Specular.g = 2.0f;
0 [3 i! `. ~# p+ V
pLight->Specular.b = 2.0f;
. P2 F( |4 Y! y4 `6 e9 H
$ |$ M9 n& {7 S5 m
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
! R* q* V9 E1 S- k
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
: c6 B; Y) s% C8 {- [9 V
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
, C8 W6 T0 ]8 n$ t
8 n( a' ?" _3 c5 P
HookUpdateLight( pLight );
" Z; i/ S, K1 i M0 `+ x5 j
2 s: {2 g$ i# A! T; q' z$ ?. `
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 R9 l( y( h1 g. c( U( _# t" k
9 w9 B- D; Z7 V2 M; g" s
pLight->Diffuse.r *= 1.2f;
$ [9 v9 p/ {" [, U
pLight->Diffuse.g *= 1.2f;
- ~; B# M/ K, s9 q$ w0 R! M
pLight->Diffuse.b *= 1.2f;
9 g% F' o" b. s
) g+ X2 b$ p. j( I- L1 ?/ W
pLight->Ambient.r *= 0.8f;
9 I) Y3 X5 y! ]7 {0 }
pLight->Ambient.g *= 0.8f;
* V& O& q) ~ ?% [+ T0 _
pLight->Ambient.b *= 0.8f;
+ J/ W0 @/ s; [
4 u! t0 }% R, ]+ d' S- I$ U7 r5 m
memcpy( &m_light, pLight, sizeof( m_light ) );
8 p6 p' N; N' G) {2 f8 m
0 F1 x W" }8 T6 s% {' f; Q
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 \. ^ ~5 J3 s6 q8 J1 x5 H
D3DXVec3Normalize(&(vecSun),&(vecSun));
- `+ o. ?& {4 s: U
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 B$ ^/ N0 [, P6 N) s
pLight->Appear( m_pd3dDevice, TRUE );
: ?& K8 v% ]$ Q" B |6 B3 N, N s( [
' K9 ]+ i, i/ p9 F3 X5 o# ?
DWORD dwR, dwG, dwB;
3 h5 h+ ?; N7 i% c3 C+ }$ G
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 G# z k Y# |; d. U: K
dwG = (DWORD)( pLight->Ambient.g * 255 );
' R% P# j5 P& r, e' O
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ r: o( n+ g9 T4 ?( A. a. ^& F3 X
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' T/ }, e5 t7 J7 Y9 v: S, r
}
0 T6 ~7 P$ L) v4 X& @4 n7 H1 C
}
Q6 \ W( R. g0 y9 R4 o3 \
}
6 o' m) |7 |4 n' k3 U3 x/ X
else
: X! u6 a% p" ^5 s' R& h
#endif
. \0 h; w& J/ Q/ |6 V; ]
% t: ~% _* q( u, W/ \
if( m_bIsIndoor )
: R) F( c' r" f( N0 x+ K
{
8 Q3 f, h% G; c1 |
if( pLight )
- B; \& z& K0 _, s( Z$ q: d$ A
{
, o' `! e }# b7 i% K
// à??μ oˉè*
" Y2 H6 Y; W$ m% _
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
. L& k0 V, x, x) r r' v
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
. ]& S f3 t" h" Z+ k
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
1 w% }! l" X, L; M6 l
/ a9 R4 Q A' J. O) z
// oˉè* ??à?
$ \, |$ ~' u% I* [' |0 ]
pLight->Specular.r = 1.0f;
: V, c5 E+ j$ l0 I
pLight->Specular.g = 1.0f;
- E8 A7 v2 Y- w) M3 w1 c% W( ^; |
pLight->Specular.b = 1.0f;
" v7 v3 T0 a: W6 w, D7 Q, g7 V
// àü?? oˉè*
) o# z4 c: ]6 |" s- B- Q
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
: i3 H( K" a$ B, |
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
W4 t( p0 ]+ t9 q1 N6 P; b9 v
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
9 l6 V6 d. {$ t
4 d% y- v* h" B* B# d" @: f
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
$ c/ d7 d& F0 @' M C& ]
{
" N0 M- b l" ^
pLight->Diffuse.r *= 0.6f;
, m5 f" o3 u9 U" b
pLight->Diffuse.g *= 0.6f;
6 p6 ?8 g( q s' H9 |+ ]- q
pLight->Diffuse.b *= 0.6f;
8 n. V" R, S# I' X
pLight->Ambient.r *= 0.7f;
) }! E) M, \' {( {
pLight->Ambient.g *= 0.7f;
2 l/ ?5 l9 ~- a' H0 Y6 F/ U5 b
pLight->Ambient.b *= 0.7f;
j; y4 X; Z: @& z. {6 R
}
7 Z. s, W* d2 _( }+ a
7 [( X8 E/ c! y$ J/ E8 V6 L: U; s3 F2 U
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ [3 } @: f2 G- a! Z
if( g_pPlayer )
6 j k- i* L% i! ?' K$ M
HookUpdateLight( pLight );
. [6 }$ q* r4 r$ e
#endif
: A @8 G8 v# b
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' p2 d0 r: @7 V2 i% n/ g# t
s, i ~! X& F/ e: }
pLight->Diffuse.r += 0.1f;
* D3 [! L7 U3 q& d
pLight->Diffuse.g += 0.1f;
/ x- V$ @' Y3 O T
pLight->Diffuse.b += 0.1f;
% y/ A y9 e0 K/ a+ J
// oˉè* ??à?
" [) R% n6 i f. M! Z
pLight->Specular.r = 2.0f;
# v6 _! W4 B2 p% Y0 ?4 @1 b. ^
pLight->Specular.g = 2.0f;
4 F- ~- j6 P( H( w( ^+ u" P/ u
pLight->Specular.b = 2.0f;
! O$ z4 t( ?& Q8 N. H% ^8 X+ f
// á?oˉ
% C# O5 e6 A* j5 I1 d7 u2 J
pLight->Ambient.r *= 0.9f;
. H; U( q& q2 h O3 ?/ ]
pLight->Ambient.g *= 0.9f;
% j% R9 D- H- ]4 J) ^
pLight->Ambient.b *= 0.9f;
/ [5 I/ _: v0 d5 H4 N9 R; ^. t
0 P0 Y: E+ G( G1 U# C0 ?$ P
memcpy( &m_light, pLight, sizeof( m_light ) );
6 @) O# b- x; t( s
* j u8 Z7 K$ _, y# ~0 y/ X0 U
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
( t4 e, c+ C( ? L
pLight->Appear( m_pd3dDevice, TRUE );
' P( `' B6 z9 h& Y1 {+ p
" E- S5 b! s$ W" n d8 r
DWORD dwR, dwG, dwB;
( O7 ~$ e% n# J1 ]0 @9 O, W
dwR = (DWORD)( pLight->Ambient.r * 255 );
- v: W& Y" K0 Q! ^' v
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 a1 x( g! D+ l$ g
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 Y1 Z1 T8 q: Q6 }; ?& |! w! h
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 ~7 m% i1 a- @% Y; K
}
6 L) @% ~: x: {! o$ [( A& O, I
}
8 S7 q5 U7 y) q$ q" `
else
& o; s6 z7 H1 [. m; U
{
% {; x q0 D' c8 W x* C) x
if( pLight )
: Y* x- ]5 L/ Q; [# l8 l
{
2 o9 {9 o) n1 t" R# B3 p
5 v) h+ Q% Z0 e
int nHour = 8, nMin = 0;
. t9 i; ?& h, W' ~
#ifdef __CLIENT
3 n* X+ r; l; Z! _4 n- t( V
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
; i& ]. e) c E5 j' k. Z2 Y' V9 {+ @
nHour = g_GameTimer.m_nHour;
/ k8 s9 |% E3 q/ }: G) k2 N% n' L1 b
nMin = g_GameTimer.m_nMin ;
, G" u# D; Y; j
#else
0 A3 O7 D$ b# P4 {7 D+ \6 P4 D2 C
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
7 ]! y; V, W+ D- \* V5 O
if( m_nLightType == 1 )
2 |5 \0 [5 n( @6 S" }
nHour = m_nLightHour;
" z3 j6 G% y6 E Q0 c
#endif
- ?0 Y& W* g! ^+ e4 r; m c- b
nHour--;
) z4 X" V# |7 T
if( nHour < 0 ) nHour = 0;
% a- t0 d4 g$ o. _0 ?) D' |2 I1 P+ G
if( nHour > 23 ) nHour = 23;
3 V9 \6 a6 R+ W# d0 `$ @0 h# o# F/ B! L( v
; `5 R1 Y1 u7 _- ]. o: q1 ^' z
//if( m_bFixedHour )
7 H% Z2 B& j6 c# K$ d
// nHour = m_nFixedHour, nMin = 0;
; ?: q1 M, }' z
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
# a' _ u" f2 j6 @/ S- J; ?
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
8 o# m d) P/ h
, s% U. A5 S' Y" \$ t1 P
//m_lightColor = lightColorPrv;
' |/ F+ _8 A( y
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
: y1 M: y7 w' F
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
3 K% H# l( h* A( V8 B" [% r
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
* e* x, A; R$ L* y0 k5 O
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
9 P# F1 ?7 q+ t5 [3 M
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
+ H% C& k' t# [
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
}% p7 `. s. P6 O2 l7 o
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
) R2 g) o) ]% Z* A# G
1 W5 ~/ ^: ]4 e8 D$ V$ m2 G
// à??μ oˉè*
. v7 K& u0 c' d" S+ Q; M8 N
pLight->Diffuse.r = lightColorPrv.r1;
( D- D! I$ K0 V6 Y ?# Q4 u1 l
pLight->Diffuse.g = lightColorPrv.g1;
H1 X' k: l& @7 L5 [ E
pLight->Diffuse.b = lightColorPrv.b1;
8 H* |3 P. f% O& x3 Y* \
// oˉè* ??à?
& |2 ~/ H$ G8 s* B N: D
pLight->Specular.r = 1.0f;
/ Z& c" l+ w: W/ h' J+ i; K
pLight->Specular.g = 1.0f;
/ d H4 c% e( k* s5 O9 f
pLight->Specular.b = 1.0f;
) B9 N- H, G# t, O
// àü?? oˉè*
3 {) f# e4 I) a$ W) Z* }
pLight->Ambient.r = lightColorPrv.r2;
, n" \; q0 z7 J2 K$ w8 V
pLight->Ambient.g = lightColorPrv.g2;
% S' C% Q) y0 J P9 p5 F
pLight->Ambient.b = lightColorPrv.b2;
! J8 a# ]! K1 q8 D$ ^
8 W; ?+ \1 J* }& [
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
8 P9 H$ R% j* l" g0 e% {
{
, @% h5 s- r# a0 s- D
pLight->Diffuse.r *= 0.6f;
/ H: R' r* b" E0 _( e/ J( w" e7 X4 B
pLight->Diffuse.g *= 0.6f;
! p, ?* g+ m- u1 O. ]( n. U
pLight->Diffuse.b *= 0.6f;
) c. J- ]0 F2 M- {6 A9 u
pLight->Ambient.r *= 0.7f;
0 k; N7 J8 G( j# A: _( d9 D/ u) Y
pLight->Ambient.g *= 0.7f;
* g0 j ^4 |, h& o U m
pLight->Ambient.b *= 0.7f;
6 ?: n* e5 J; _2 W m
}
5 N! \; h! K3 ?' a3 T
0 m' X! L+ D! K7 s4 \$ U
#if __VER >= 15 // __BS_CHANGING_ENVIR
& A- Q& x* Y8 F( ^+ _
if( g_pPlayer )
, v0 i$ a, Y y# n0 _5 G+ s
HookUpdateLight( pLight );
7 h# B, h/ d8 F) m% J B6 {
#endif
5 {+ ` G9 g1 P5 N
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' i+ j/ t3 `; V7 t
/ D2 ]3 q. v& _
#ifdef __YENV
: _! h5 S% L% d" C
pLight->Diffuse.r *= 1.1f;
& \0 ~5 I3 s$ m: r/ X
pLight->Diffuse.g *= 1.1f;
1 {- t) ?4 Z# @
pLight->Diffuse.b *= 1.1f;
9 V, v1 Z7 v/ G" N8 H" J+ x1 g
// oˉè* ??à?
, I( v% _; E" W3 a& f T# @9 Z
pLight->Specular.r = 2.0f;
" t9 P x L! W' c
pLight->Specular.g = 2.0f;
5 S/ a# f1 F/ R. P. {& ?/ _
pLight->Specular.b = 2.0f;
) T# c0 ^5 V" j8 z( v: W& R
// á?oˉ
0 _2 e9 z! Y( {% s0 n% C/ t
pLight->Ambient.r *= 1.0f;
0 R1 b6 a8 ^$ @
pLight->Ambient.g *= 1.0f;
% v8 G- F) o# `0 b3 J, h4 d _# C
pLight->Ambient.b *= 1.0f;
9 f6 P3 {; j- o
#else //__YENV
9 e' A7 C2 b6 i1 g6 Q
pLight->Diffuse.r *= 1.1f;
5 |3 K8 t- b& x4 l- N8 x4 B
pLight->Diffuse.g *= 1.1f;
7 y7 [( A/ y0 |4 M, |' s7 o! J
pLight->Diffuse.b *= 1.1f;
& H4 u1 f& k+ E. ^" D& O+ G+ p
// oˉè* ??à?
7 H/ n, n& K* d
pLight->Specular.r = 2.0f;
! f s+ k8 t( v
pLight->Specular.g = 2.0f;
( T, O, a! V% V1 r
pLight->Specular.b = 2.0f;
" z! P' Y0 A9 o3 z* ^, c3 D* }
// á?oˉ
$ C! t i* U2 ^" I9 q% P6 ~
pLight->Ambient.r *= 0.9f;
" l0 W A0 G: ]( S2 h
pLight->Ambient.g *= 0.9f;
# v) a9 |. `1 e) k- s
pLight->Ambient.b *= 0.9f;
3 {/ _2 |, l% A4 p* p9 L% r+ A$ a
#endif //__YENV
; X5 Z6 h- r6 c* a1 ^
* M4 R/ A' L; v4 q
memcpy( &m_light, pLight, sizeof( m_light ) );
0 X2 y# `( L) @, e. Q
2 C0 ~9 j! j' a6 m
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
, j' [* I+ W2 i6 S2 g3 j0 d' Z# G3 y" d
D3DXMATRIX matTemp;
! g/ f* Z6 m) `
static const float CONS_VAL = 3.1415926f / 180.f;
; |7 N+ a7 Y* @
" B$ S7 _6 Q7 {6 \! R! Y ?
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
+ Z2 T. i7 m+ O7 I
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
9 p+ ^* G5 V3 L, Z
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
& n1 A) y! d) b' \- v
pLight->Appear( m_pd3dDevice, TRUE );
7 |) V% m- n) Z% b( q$ E% G
- B+ o7 v5 P/ A% G" P' ]
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* T. H1 m$ h Z9 [
// D3DXVec3Normalize(&(vecSun),&(vecSun));
0 }+ z7 |# H) `, w# E
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
8 d# @* i" [$ c$ j v P" m- j
m# c7 n) k( T; X4 t8 P- d
DWORD dwR, dwG, dwB;
! w( A* g3 f& K2 h
dwR = (DWORD)( pLight->Ambient.r * 255 );
; k2 j# q0 H0 c+ w2 n
dwG = (DWORD)( pLight->Ambient.g * 255 );
" W' f2 L+ i' ? t" r% u, p/ i
dwB = (DWORD)( pLight->Ambient.b * 255 );
2 T8 Z- L! e# k" I. A6 m% L5 q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 E B' U/ U% b$ N6 v0 b6 u
}
! ~" T3 E5 P; P
}
) y' W7 _& T! j+ b6 q( I- v
/ n" a5 Q0 p) h# _ _7 x3 E
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
* O( Y' a- a* \6 i
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) );
* M2 q2 N( ^, S" C' @
::SetLight( bLight );
4 J2 Y$ ~* @# V6 L& W
) E1 S \# x; {/ C
// ±ao? ?D?í???ó á¤à?
7 i1 j4 Z! E3 w0 |
m_pd3dDevice->SetMaterial( &m_baseMaterial );
" r Q" Y& }- U i a( ?
5 i! b1 d0 M6 y: c' v% I0 y3 [3 B* B* N
#endif // not WORLDSERVER
m' Z. Q" B' H
}
0 c1 z: y) f( v6 r
并更换
7 {( R) L3 t. ~ Q
Code:
. P' ^2 E" `( w
__FLYFF_INITPAGE_EXT
, X; D" k+ [, E! t0 k9 [
定义
& g. c9 ]8 o" Y5 k
; c% g3 u( O2 e$ H& ~) @% Z8 A
9 o) }+ y& j+ Q" G
6 S% W/ k8 A4 b. h
. R5 s! t# \! T, `: L) K
现在终于删除我的狗屁加速...
: y- ?* U/ S3 u; s- E8 W9 a
( ?; _# D; c `: \, u" m
% } J" \2 T- @" V, h
0 n( x& R \& t n
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2