飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
" H/ s: S5 r: N+ C+ x6 S `
尾翼:
, B' y, G. x, c7 h+ l ^4 j0 |
3 P, D7 M, c. w4 U
代码:
: n- a u8 f1 w( C* C
CWndAutoFood::CWndAutoFood()
. c- i# O: A/ E- O; {1 y8 ~. o
{
! t8 }% _. w9 C; {
m_pItemElem = NULL;
0 |: f4 v4 q% a6 Y- e9 k/ G
m_pTexture = NULL;
; ^1 R+ U, @+ {, E6 w
bStart = FALSE;
- x+ G+ I2 Z( \8 s
}
! f1 m; q9 X% w' m
A+ T+ F! Z, v
CWndAutoFood::~CWndAutoFood()
& y3 c7 Z1 @6 K$ d
{
v H; B* k# W, p: o, @5 v# g
AfxMessageBox( "AutoFood ist gestorben
" );
! q7 u1 |3 G8 _( _2 ?
}
: i& ^7 S7 R* j) o
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
5 |; W0 V5 M* p! B3 C
{
4 `! p4 p2 a% K
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
& z, f! v `6 _. t! i# G C( S
}
1 u' Q' T: Y3 o, D2 |: W- p
f8 w, {+ ?3 o6 i0 y* T
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
- W4 a1 v3 Z: t6 |8 [4 t) S
{
0 A% l- [( c, \* ~; L: W
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
9 t% i7 O* o1 ~" Y; x0 o7 W0 s& Q) `
CRect rect = pWndCtrl->rect;
/ n, s' L# `0 S
if( rect && rect.PtInRect( point ) )
6 h8 s# J) h Q* h; ^2 z
{
( N9 k4 _" {3 e' Z' T
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
9 [( z8 D% ~( ?& A+ V& u3 b: r
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
6 z7 G& [% A D; m: N7 g$ E/ d1 B
{
8 d* @ R! s9 t5 ]0 L
if( m_pItemElem )
' S, ~2 _9 ~5 J: u/ ?
{
8 L7 h+ l9 [2 J! Y$ k; m8 Z
m_pItemElem = NULL;
# [6 s- T$ d6 G+ m% V8 W5 ~
}
2 H+ s4 k9 S) o. h. d
m_pItemElem = pItemElem;
& s: X8 U. D8 H; O. i+ ^
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
: i4 l6 {4 p& I; h: v1 ^$ G, G
}else{
" s) p! ^* Y; Q- h/ w2 l6 G
SetForbid( TRUE );
: q% o: q6 h. _
}
- d4 g, x* K2 o% ~- d5 v0 s
}else{
& x$ X" |" j% R: }6 }% v5 v( g0 a4 B+ y
SetForbid( TRUE );
% J$ a# `# R2 P6 \+ e
}
0 ^; Q5 a$ c& ^! C1 s7 V7 X
return TRUE;
# F3 A8 |" X/ f1 T; ~5 p* H
}
) w9 w: e; {. W% I$ }
[ c5 [ ^0 U
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
% _' ?& s3 O: Q0 N2 [4 S9 a! g" c' y
{
" h% z- \2 E/ ?9 V/ X
switch( nID )
! ?( g0 t4 O8 {6 c9 _' J, h# A
{
- V4 z& x" I% e0 a
case WIDC_BUTTON3:
/ L7 c# q. H+ @8 b+ o1 Z
{
, F( p/ X4 N/ r, F3 r
bStart = TRUE;
* n9 M, m& I& s' p5 ^$ h
break;
4 M+ i4 R, g1 i9 L5 O% V
}
2 Q2 F) X! U7 a
case WIDC_BUTTON4:
# Z9 y6 N; J1 X7 B
{
% m- w# w5 s. u4 x& @) ?
bStart = FALSE;
0 \$ ?5 E, C7 q5 r
break;
/ C P: f( |+ Q( z
}
5 ]* D6 V* _, X& o
}
& Z z0 m; s3 W2 V
return CWndNeuz::OnChildNotify( message, nID, pLResult );
3 d) U& r' Y" ~7 k1 `
}
# m7 M/ n0 |1 T& K2 Z, ]
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
9 s8 H/ T! U% v4 ?+ y
{
6 [8 W) x p b2 m; |2 |
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
( f; y- Q' D; @5 p) M4 }0 F7 ^
if( bStart || !m_pItemElem )
! K( ? B) A( N" D
{
8 S, l5 S* T% d0 K: Y( g
pBtn->EnableWindow( FALSE );
6 n' Z0 q* F% Z2 X+ H1 u3 [. g* J
}else
0 w0 A4 m8 F) y
pBtn->EnableWindow( TRUE );
/ X/ S" H: R, y8 z+ P
if( m_pTexture )
0 Z; o* G" r" F8 o) D. v' `8 e7 L& `
{
) L* f: d& Z' A# S* Q1 K
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
1 d/ N7 ?; _' s& }4 {
if( wndCtrl && wndCtrl->rect )
2 H8 S5 Y A( k6 S
{
( {' U7 |2 D- X1 C+ v* A3 B
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
( ^( L. D" V" Y8 V* i0 P& n$ R
}
) `& G H' a/ Q9 X+ P
}
* B# C' M. r' T) ^# X
}
q) i8 P+ l0 Z {7 S
4 o: c I! S9 r. n5 n
BOOL CWndAutoFood:
rocess()
7 G1 X h' @( ^. w/ \
{
- Y/ g X" d/ m, a4 _
if( bStart )
0 X0 _; P6 Q/ V h
{
( V$ @0 C: o: w$ p% l. l, j
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
* L ] i+ N N% }% ~
{
8 P' v2 u- y. o5 A/ ~
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
; o) y+ @ ~! R. ^/ ~
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
# X8 o) A( O( h1 T+ T
}else{
* M2 z- o9 D P, w) j! Z
bStart = FALSE;
( y; y' u+ y) {
m_pItemElem = NULL;
0 d5 d6 G/ |* \$ G
}
$ Z; J6 `$ {+ [" \" A# A. g
}
/ D+ j0 B& v6 N4 B. y
return TRUE;
6 }6 E$ }0 Z0 v& \$ _7 |
}
: t8 i7 ^7 @* M+ @2 `, Q
) R; }: z* ^& J
登录视频废话:
( n, d( {( c& S0 d r
尾翼:
9 y7 r+ v+ ^3 N
; B- Z" P( {3 g* s. O1 ~
代码:
5 Y* X) Z( T% t. _$ b
# c# p4 E' A: O+ A. W7 B
void CWorld::SetLight( BOOL bLight )
$ r0 A. _% t+ J ^" W) L1 r
durch
9 {. |* q v% V+ Y; t
Code:
7 R3 J7 r5 q. x" s8 K* q
void CWorld::SetLight( BOOL bLight )
/ z% G' S$ Q# |$ l: o2 g8 p: W" U
{
; x& j6 }* |; ^* P3 ^% e' c4 u
//ACE("SetLight %d \n", bLight);
. g3 a# c+ @. N1 r1 s5 v4 H
. P, J1 H2 V$ h
#ifndef __WORLDSERVER
7 o$ t# Y9 I( d t! U9 E% z# f
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
7 f1 `6 u; M+ \, D/ U$ m0 ~$ N
CLight* pLight = NULL;
7 g* R+ M; g! t& H
# }' b) K$ D. r" @" @- i, P
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
- |, ^8 n; G: I/ S; d
- K% e3 ~# K' M2 m' u) l
pLight = GetLight( "direction" );
$ W2 M- `5 K; C
7 J4 F7 E( @, d* N: e: H7 O
#if __VER >= 15 // __BS_CHANGING_ENVIR
, F" A& v# z/ y% _7 N+ q, e
if( g_pPlayer ){
7 y) V4 o+ o4 S0 V* m
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
" I: E. e* C9 K) R6 v z& Q. l' H$ S
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
% B8 [( p% i6 j8 q& _
{
6 D$ z& U+ S4 P
if( pLight )
9 X7 n" v, A( I
{
) R2 E9 l+ ^" }* ~2 \
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
4 `" |5 [# B! g( p, ^3 l7 n
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
) q* I3 c( b4 s
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
4 f6 O+ k" H& m1 S# ?0 ]
" g) `4 e/ I2 L& S4 u
pLight->Specular.r = 2.0f;
8 q7 D" H' C9 a& a( y% V, I) |8 O# Z( L5 X
pLight->Specular.g = 2.0f;
- W0 [ s; w8 C, `/ o
pLight->Specular.b = 2.0f;
7 |& t; X7 N2 ?+ [" a" n) T
0 I5 O4 z1 j& Q" y1 w8 `
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
* }! s1 d8 \7 l6 q2 f" q9 F/ p
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
+ }8 W3 S) f6 E/ o, l. l
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 B2 b. ?8 B7 L+ m1 I% @: T" M( Y
! `% U. _: D6 H* j1 i* d& d
HookUpdateLight( pLight );
" G2 R4 D A. D% P8 h
* O1 u& z* \9 Y, D. Q' c
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ w5 E+ b6 F' Y' l5 ^
9 P5 j" h% _2 X2 y0 m; r
pLight->Diffuse.r *= 1.2f;
8 `$ P; G! M: r' v8 q
pLight->Diffuse.g *= 1.2f;
$ ^. O- h# x+ d( G$ j [
pLight->Diffuse.b *= 1.2f;
' U$ D1 F4 z/ W1 W; T% c! y4 t
" n- ?- i Q5 N, J2 P( B+ X! o
pLight->Ambient.r *= 0.8f;
; l% d2 o# A' b+ n1 t* ^, v" C6 ^
pLight->Ambient.g *= 0.8f;
% [3 M" j( y7 u8 \! x
pLight->Ambient.b *= 0.8f;
/ C2 F0 q2 H" \' e- k
) ]; q* ?, P" Z8 d! L9 J
memcpy( &m_light, pLight, sizeof( m_light ) );
' |" o' T6 I* f- U/ O; Q/ {: `
) O5 g1 @8 m, Y7 ?+ e2 B6 M! P- F r
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
6 {/ j7 E+ f, Q ?4 F
D3DXVec3Normalize(&(vecSun),&(vecSun));
' x$ i5 Q h1 U
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 L( q" k; t# g# g
pLight->Appear( m_pd3dDevice, TRUE );
+ v- k0 Y4 ~( y2 Q$ Y9 ^- e
1 n9 K: A/ B9 r; T
DWORD dwR, dwG, dwB;
2 @! K3 t& |4 Q/ I
dwR = (DWORD)( pLight->Ambient.r * 255 );
: T% [; i3 Y* X- f3 i, d& C
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 b0 x0 D9 z5 S( b
dwB = (DWORD)( pLight->Ambient.b * 255 );
; L: c: ]( A6 s1 _& n
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' Y% o/ g0 p( g" S. ?1 N
}
' V u$ `' z7 Y2 B& ~; c g$ n7 f
}
1 v' n* W6 c$ `# |. H8 S
}
/ }& s; W- T) l# g- J, L2 @$ D
else
) `0 q# p; M, Z
#endif
" R; A/ M: F6 r- L% d1 x
5 i& f0 O6 X3 @0 m
if( m_bIsIndoor )
: v# _" `, f" V
{
- J& K1 E) b B3 V: q5 `
if( pLight )
0 @* A: m, Z9 i$ R9 }/ }
{
; X& T- k& y. @/ T! |
// à??μ oˉè*
2 n* S) g# G3 D3 ]: C& V3 v
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
6 v5 I: Y, a/ W+ X* {" o3 N
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
' ~; B; s* ]3 a
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
" H4 ]% v8 F# _2 x a) K; p
6 ~+ I" H# f0 }; O) U5 g0 S
// oˉè* ??à?
7 }3 J5 x, h" E$ F
pLight->Specular.r = 1.0f;
: S. V; p2 f; i: a" z0 e4 l- S
pLight->Specular.g = 1.0f;
* k, h" \3 z3 v" g' M
pLight->Specular.b = 1.0f;
) b+ _) v+ }: s
// àü?? oˉè*
1 k! ~+ H" b; ]* L0 Y; p4 ?
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
% O9 N* j; H3 U! ?; I& O
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
9 a( T9 }" _- P. {) \3 ~
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
, M: f" S& R6 x0 C6 y
/ j, B/ P! f" p G3 T
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% ^; \: x4 ]+ x% q7 t+ x$ Z& `% L- ]5 E$ f
{
7 d8 p2 y4 l5 c' D$ [! W: w
pLight->Diffuse.r *= 0.6f;
: e5 e- {+ D7 ]: K( h
pLight->Diffuse.g *= 0.6f;
3 @7 x" x2 o8 t. j+ v" X
pLight->Diffuse.b *= 0.6f;
. q9 R7 f9 ?* X& G- y+ [ }3 b6 T& \
pLight->Ambient.r *= 0.7f;
$ f2 L- ~1 J, k7 y5 I+ s+ D
pLight->Ambient.g *= 0.7f;
! U ]8 H; r5 y A# f# S. v, g
pLight->Ambient.b *= 0.7f;
4 v' ]8 {+ i" l
}
' I- {! R0 B; y$ ^9 j
- b; l, q- E0 N( U9 [; _& f9 b
#if __VER >= 15 // __BS_CHANGING_ENVIR
: }4 N9 |7 V7 C6 Y8 S4 I
if( g_pPlayer )
3 }; i" j1 T: X7 D S, \" ^
HookUpdateLight( pLight );
) O' m1 w. N# Y0 g$ S7 A0 s7 [
#endif
& m& d4 {9 y5 h
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; u0 P% F, S& j9 I/ x* Y
- b5 Q) O! O! m( v' }# O0 L2 n
pLight->Diffuse.r += 0.1f;
/ v- }8 u3 }- E) f
pLight->Diffuse.g += 0.1f;
! v5 B& L% f7 A+ b% x! m; o
pLight->Diffuse.b += 0.1f;
. y; q" ]7 I& Q3 X
// oˉè* ??à?
# A+ {7 {6 U' S6 W7 o- U" r V( E
pLight->Specular.r = 2.0f;
& T2 k3 @& Q9 @% ~
pLight->Specular.g = 2.0f;
+ F3 t/ P: D/ d; R; a4 X- e& N
pLight->Specular.b = 2.0f;
) X# P$ Z r3 r, \2 C" _/ l( \
// á?oˉ
5 F- _# W3 K; j0 q
pLight->Ambient.r *= 0.9f;
2 W2 i1 B" u* S! \7 b, n6 d3 q/ [, R
pLight->Ambient.g *= 0.9f;
+ P- }, X, Q6 G, y
pLight->Ambient.b *= 0.9f;
4 l$ U& X$ q; Y* v+ B2 { d9 F7 J
7 I) j- s4 e8 [( Z1 a
memcpy( &m_light, pLight, sizeof( m_light ) );
( }: s1 _/ V" k6 N5 Q) T
w& C, F8 C- S% o
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
2 r. I9 Z$ o- h% y& \/ i
pLight->Appear( m_pd3dDevice, TRUE );
( l* l& h. |7 Q, A
$ y" r) G8 }6 i# u" S1 Q2 {1 B, P6 o
DWORD dwR, dwG, dwB;
0 c( _" _! h1 a/ a4 R, [
dwR = (DWORD)( pLight->Ambient.r * 255 );
, ]+ F1 {: x3 u! ^# [8 K9 B! z
dwG = (DWORD)( pLight->Ambient.g * 255 );
. |8 ?( a W5 `% t' `
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ Z7 W' u5 e1 C$ g
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# I# Z8 t+ s: U) j! A
}
% @5 }) h& O7 f( c* m
}
8 U L8 a y) l* ~7 L1 J
else
, O, f/ ~. B/ F' ?8 A/ ~
{
|* E& C/ s) }$ q! W) ~3 Y1 c
if( pLight )
& D# ?6 Y* `# ?
{
Z% g2 M# ~$ m; q* J
( Z1 h T2 q" c& D7 Z3 |8 q, u
int nHour = 8, nMin = 0;
+ x4 \' ~/ `: i7 |) |9 Y
#ifdef __CLIENT
- |5 r0 [& T' k. @ F7 M
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
# U! Z1 q& V; {( R8 ~7 m! g0 n
nHour = g_GameTimer.m_nHour;
7 t/ p: V3 L* x& S6 [" [9 I; T6 U
nMin = g_GameTimer.m_nMin ;
* R# ^2 f4 [0 \$ j: v" ~& _2 `
#else
/ I6 q9 f% R0 O8 \# O8 X' p
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
4 S; t& s* g) J+ v2 h$ D+ b
if( m_nLightType == 1 )
( _; F: R* _/ c( j5 h
nHour = m_nLightHour;
9 `/ }" v2 m' T$ D! P
#endif
4 z9 B8 L8 a' V) ?0 q0 U
nHour--;
- S( G( N3 z: ~
if( nHour < 0 ) nHour = 0;
* g, Y8 r" M. Y; e
if( nHour > 23 ) nHour = 23;
) Z1 r; L5 L; P: {& A: J/ T6 V
% k7 N _7 G) g8 p, `! M) @& _/ y
//if( m_bFixedHour )
% Z/ @$ D- m% ?. I O6 X! g
// nHour = m_nFixedHour, nMin = 0;
; v. I6 D5 N) d; o
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
A) p5 [( T1 Q
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
. e/ U! [6 A1 P9 U; e* {1 ~
; k; Y- v6 B4 C) O D
//m_lightColor = lightColorPrv;
8 Z* J3 W, F* G/ w. k
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
% A0 z' s) R+ Q" t
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
$ M6 _4 l" N4 W8 P
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
2 U. I h0 v# _, N
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
7 a' Y& t* t/ B4 q ~9 u
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
, d0 A u* |5 ]3 O8 M I
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
5 A$ a. I, H/ @* v/ |0 o2 H
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
% k9 A" C2 h7 F+ Z8 |
! \# I) Y7 j. x: ]3 d- W
// à??μ oˉè*
+ R3 f) [$ a0 Z& _0 S' `4 K# F9 V
pLight->Diffuse.r = lightColorPrv.r1;
- E' @3 L# B" h- ]' ]
pLight->Diffuse.g = lightColorPrv.g1;
" f/ w; z# e* o( w: r2 k+ y5 G
pLight->Diffuse.b = lightColorPrv.b1;
! o4 F% L$ j- |+ G$ p- V
// oˉè* ??à?
, p0 Q" L1 Y& ?. r
pLight->Specular.r = 1.0f;
[: k! A, m& c& J4 A& Q4 u
pLight->Specular.g = 1.0f;
+ a2 |' \0 S) f- n+ x: C
pLight->Specular.b = 1.0f;
9 ^3 n& V+ u5 h( L* q
// àü?? oˉè*
" x& T& { K" \" G" z0 a& p, r
pLight->Ambient.r = lightColorPrv.r2;
- z( M# X, D' L' ^( a
pLight->Ambient.g = lightColorPrv.g2;
7 H i; S3 f7 W6 c5 a7 ?
pLight->Ambient.b = lightColorPrv.b2;
" x, X3 \1 S q# \+ v7 A! t* `
, `! F/ N/ \$ ]1 n0 c
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
- ] U: d! d- f4 A0 c. f; W! [
{
5 r- C, i* @2 V9 Y
pLight->Diffuse.r *= 0.6f;
8 L- b: C: a8 u. `% v
pLight->Diffuse.g *= 0.6f;
: v( `" R: U* {6 \4 A! z
pLight->Diffuse.b *= 0.6f;
4 H3 q7 V h& M8 H# }1 X
pLight->Ambient.r *= 0.7f;
! j1 f/ u% U+ a7 G
pLight->Ambient.g *= 0.7f;
7 j- U4 j- }, D, y5 w
pLight->Ambient.b *= 0.7f;
# L; z& ^& f+ z5 O# [5 l5 b: H( f
}
9 x: K& G d& H5 P8 e5 G
+ M! m" F5 x* f# N% F3 u
#if __VER >= 15 // __BS_CHANGING_ENVIR
9 ~- L" h- d9 A- l5 ?) P* T" a8 S8 t. ?+ i
if( g_pPlayer )
; o+ L6 w0 y6 q! r
HookUpdateLight( pLight );
# O: t8 R! i b& C: f9 t
#endif
: M) g, H% V/ |
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) B0 I/ B" h; j' O0 x* u! G8 g" S
6 y3 L+ g z6 Z7 k( N+ Y F
#ifdef __YENV
$ Q1 S* B+ C/ s; ~2 A: Q' f e5 b/ W
pLight->Diffuse.r *= 1.1f;
6 X. V- z9 @5 a
pLight->Diffuse.g *= 1.1f;
# q+ i; s) E0 E4 j+ J0 M( A' B
pLight->Diffuse.b *= 1.1f;
! C& ]* v5 T j8 G$ o! E$ g3 p
// oˉè* ??à?
9 w% a9 @( r+ g. H3 c# }
pLight->Specular.r = 2.0f;
& W4 s$ b$ z0 M. b, v( e, c; z
pLight->Specular.g = 2.0f;
6 I7 X8 ? P$ g% l$ n3 k+ ^) f, N
pLight->Specular.b = 2.0f;
* j% a" \6 v. _4 `
// á?oˉ
2 G+ O( @, C4 ^7 ^6 V( R% v
pLight->Ambient.r *= 1.0f;
9 S: }; b$ `# a0 l0 `: C
pLight->Ambient.g *= 1.0f;
2 @! g9 ^; X0 E4 T6 @+ f+ b, t2 l8 \
pLight->Ambient.b *= 1.0f;
5 c$ O) Z4 Q" L o% b6 b
#else //__YENV
$ G$ R3 C0 `7 ~4 J& u3 s. m
pLight->Diffuse.r *= 1.1f;
) A: }2 q( A7 {8 D% b. ?9 Y
pLight->Diffuse.g *= 1.1f;
/ p0 t' P7 E- _9 H1 x1 x% ^
pLight->Diffuse.b *= 1.1f;
# a: Z, A: E0 F1 ?2 t8 T
// oˉè* ??à?
( h7 |1 ]3 N. D4 I3 m1 G3 _
pLight->Specular.r = 2.0f;
( q9 j% g; i) J' V" w- S6 d+ m' y
pLight->Specular.g = 2.0f;
/ ~& ^) r$ P! F& ?9 o! S& P$ O
pLight->Specular.b = 2.0f;
, B6 P! ^ l' ?( k8 X) _- a
// á?oˉ
# ~! e5 e$ m6 j( j; E" G* s& z
pLight->Ambient.r *= 0.9f;
" X0 ^4 H8 F# m
pLight->Ambient.g *= 0.9f;
- X- Z5 Z# i9 T3 B( W# l" b
pLight->Ambient.b *= 0.9f;
3 l/ ?! Z. T, P8 b9 z* m0 G
#endif //__YENV
. L+ V4 A4 n' c1 W
# S, }! |7 z; T9 i: D
memcpy( &m_light, pLight, sizeof( m_light ) );
( a/ y: l$ x) ^5 _. ?' i# `
! H+ C8 L& u$ Q
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
% k% [& k+ o3 q F
D3DXMATRIX matTemp;
& g( E% e# V' Z( G& A$ o$ b
static const float CONS_VAL = 3.1415926f / 180.f;
5 r f" k a" J7 _
/ l+ T! E, H# Z! s( L6 Y+ o# Y1 X
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
% s0 Y3 M- m5 a. B, o
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
$ P4 y4 r3 @$ s5 r' d
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
) d- u! ^3 V- {& ^" o. A7 ?
pLight->Appear( m_pd3dDevice, TRUE );
9 x6 ]& L+ G4 i+ X1 q. E
( Q8 Q! o. d L
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
+ Q" _# \* b2 {' g, {1 @1 U; ^
// D3DXVec3Normalize(&(vecSun),&(vecSun));
+ [$ l B1 y9 S% u L, J9 T: N
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
4 Y4 V: [$ W2 }- v
& L/ l: |3 g1 ~ X7 W) A9 J& @8 }
DWORD dwR, dwG, dwB;
0 z* X2 U% m/ ^) k4 ~) C1 p
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 S5 V6 h& m5 K$ w1 C
dwG = (DWORD)( pLight->Ambient.g * 255 );
9 M4 T: Q9 `; V+ n
dwB = (DWORD)( pLight->Ambient.b * 255 );
) j0 `- m2 w2 h7 j) x6 R) |% G6 L8 F. Y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; r1 a$ y; R! L& ]/ a8 T( s' ~
}
2 N/ X$ n2 p( T4 ^" m7 w) ?, H4 ?
}
* k- o- N' x; F( D+ T) i4 q( {0 b
+ ~4 G# x2 f, Q: K9 b) q
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
6 i; f/ d) U( B) h
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) );
8 k: n S; [9 N$ D, M
::SetLight( bLight );
+ W# B0 d0 z" R' K) @7 ]* ?
% |- I7 w8 N' Z
// ±ao? ?D?í???ó á¤à?
$ e5 R& b) I/ y: [
m_pd3dDevice->SetMaterial( &m_baseMaterial );
" m9 T0 l, g/ G. T; j4 L
; D0 Z' B5 y9 S% b+ N% Y
#endif // not WORLDSERVER
; b' B0 J/ d% |3 U4 m8 F) T
}
. F" \; Q% {5 j- V
并更换
5 Y+ o' q/ G1 c' H6 b
Code:
6 w3 c3 E: Y* f* u6 L
__FLYFF_INITPAGE_EXT
8 j4 _% s7 a1 b
定义
5 ^2 H. D6 G5 ~# X( R2 T
! i. q1 O @# H
) Z$ E2 \4 n* T% K
b2 c. W% Z' X# q% [ v& D; w
1 g F2 i: j4 W/ [( [
现在终于删除我的狗屁加速...
1 L0 a1 y0 L& \8 Q
9 c. M- B4 ]/ C% l
5 ^* f& ~, N2 c
& G8 k( D" @2 {* @9 M, E+ b
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2