飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
( T" k. t' A3 W1 [2 T- f. i
尾翼:
4 T l5 h; ~$ O+ i! C* {
: ?& |7 K/ Y: o1 j9 a
代码:
: Z; a& W) T8 V! Q" F) A6 u
CWndAutoFood::CWndAutoFood()
* b$ c. T( b+ B c
{
5 f/ y; V m! j( X8 o
m_pItemElem = NULL;
5 O/ @1 o! w& {# V `. B- Z
m_pTexture = NULL;
7 A( L$ X; c8 Z2 X1 c8 L0 a$ g
bStart = FALSE;
' t5 Y6 h) o4 ^& K- w ~& E
}
8 z# P/ {0 ]* v
9 P0 u0 X0 r( A: ?! |) F6 C1 D2 c
CWndAutoFood::~CWndAutoFood()
3 R0 W/ }7 ?, c
{
6 H# O- M; |, ]. Q" w
AfxMessageBox( "AutoFood ist gestorben
" );
; y4 I6 M' b9 n' v8 p: o
}
% ?0 E& ]( ^: o& p. d1 K8 j' a* V
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
% U+ p9 I9 O" r- W
{
/ s/ w3 V3 ]2 l1 O
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
' }; f2 L5 j4 T
}
3 B9 S) D. ~/ u
+ l8 e# S2 Q6 l
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
2 r9 C9 L3 q% M/ X
{
/ Y3 l$ d3 G" B
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
2 ~: {, f5 g' ~% M9 f( f: ~# f
CRect rect = pWndCtrl->rect;
! Y$ ^0 o* R* o- p1 {0 x9 |
if( rect && rect.PtInRect( point ) )
9 W$ o1 `& ^/ E6 s/ n
{
2 o7 k9 E) x- C1 U! |9 Y' t/ g
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
2 |+ }8 s" J( j
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
0 j" H$ ]& F2 C D+ ?
{
; c8 Q3 L& M |# l9 h- W! r# z
if( m_pItemElem )
[* D) n. i1 M
{
( p* I- }4 A% V
m_pItemElem = NULL;
3 d( w* A( C3 g. K. W( p0 K
}
3 t! i4 ~# R( p9 c% X
m_pItemElem = pItemElem;
( c3 a. I- Z; [/ A3 {
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
0 D9 O" c8 L1 h, k2 L R' @
}else{
, h4 m" E/ ]/ @3 |5 L
SetForbid( TRUE );
- P: o% I7 s k/ e" w
}
2 J3 }! {8 N; c1 e$ p. y- | n
}else{
( q6 i, m- G. j
SetForbid( TRUE );
* [: |' D8 _1 a
}
5 a) a' e- Z3 l' t6 H: u
return TRUE;
) R* Z8 v1 O6 t+ s# g% `" q5 {& z7 L
}
$ m4 q" Z* v, o: ]
) u7 W! V1 b4 T" x6 O0 [
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
# Y: G6 b+ E! n+ a- i# a
{
8 \( K0 R( d3 C9 E
switch( nID )
" f$ X/ Z3 W, S5 ~( H2 b! K
{
* q# Q% p( X/ [) E: p
case WIDC_BUTTON3:
/ {) E1 @& V# o$ r
{
1 [/ X' E7 A, {; x$ @! s0 J. |; W7 n5 |
bStart = TRUE;
- F3 P4 p: t& ]7 O% c r
break;
8 p5 N$ o9 R7 H! f8 f7 u6 U9 P
}
& o- ^4 F. d0 {9 j4 i9 O
case WIDC_BUTTON4:
% ?: [: G- w- D4 \! o6 N1 H( u
{
, [- Y$ C# g8 I( w3 o
bStart = FALSE;
5 @2 \/ s( L3 |
break;
) u# O1 }/ x/ y0 z: M# Q
}
* t+ Y/ d$ M! b: d5 @" R" ?+ ?' @
}
8 P5 {# n( x( A. s
return CWndNeuz::OnChildNotify( message, nID, pLResult );
/ t8 ~6 H8 D$ _8 _
}
( F9 `, a, {" A7 n- P+ V M3 H
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
7 |) K" _# Y/ V# {9 X' a! p0 s3 E
{
) K9 G$ t- n7 v; o9 j
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
8 t0 K, F- u$ k7 W# ^* j$ Q
if( bStart || !m_pItemElem )
! m& n1 E1 C0 D( p7 _5 A" `
{
( [5 o) t( m6 D( T- o, r7 }
pBtn->EnableWindow( FALSE );
1 M/ {' x2 n1 `0 H; y
}else
) W* n# H& N+ f8 e2 V/ D% O
pBtn->EnableWindow( TRUE );
1 h, W g4 `% K3 A
if( m_pTexture )
- y! ]9 `5 c+ n! G
{
+ F j. w2 ~+ a. N/ O8 \
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
6 _" f: E. t( E% s( F% C @0 g
if( wndCtrl && wndCtrl->rect )
* _0 a5 l, Q( t7 Y' O; n% _5 x
{
( e6 j* }1 X: A8 r, H0 k0 r6 B
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
! s1 |& }) \2 t7 B( u
}
& A; [& i5 W6 t9 Y m# \3 u% Q
}
5 E: {) ? z" d0 g- q* V; K: z- P
}
* c2 T* _8 V" \! |% h* V1 P# d
, x- r3 ~/ r, _- I) {& F M& f
BOOL CWndAutoFood:
rocess()
: l4 H" L( |) t2 T& j5 n' h
{
8 @' }/ {9 a I4 N
if( bStart )
" v4 H* ]/ G, q( F5 Y) y4 O
{
5 z' V) e, M5 R/ j
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
0 w: O6 m& `0 \4 B" y% E
{
~0 i# Q/ G' ?5 d/ i+ \5 b
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
2 m, G, l" L+ V9 H( I
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
# O6 ^" s$ J& h
}else{
$ T2 e# w! S4 i
bStart = FALSE;
3 N/ U4 ?+ t1 i- n# U! O
m_pItemElem = NULL;
. p; C% b3 _2 w
}
$ ^" H9 i& t3 v+ \4 R3 X
}
! Q9 _0 p2 N5 p4 B# H
return TRUE;
: T8 b+ t7 t" D& D9 c' X, @
}
# Q& z1 e! k% y; ?6 J8 t# e2 s+ R
( D- D3 a' ~: x0 X, G3 J
登录视频废话:
! L: L4 ]5 A# t: z* K/ ]
尾翼:
. n6 o4 U1 m$ r
+ m& g$ U, [. R; O1 ]: { D
代码:
+ }! ^, L2 p' s3 C4 a5 Q' f
+ o S- Z" N1 X2 v% F5 h
void CWorld::SetLight( BOOL bLight )
8 Z" r& g! A% ^2 h; l' k
durch
% R# a! `1 N# @, b
Code:
- X1 m9 E) O/ h) Q$ J; Z
void CWorld::SetLight( BOOL bLight )
$ G A* F3 T" _; o" u2 i7 a3 ~
{
1 w4 E: A; Y. V5 s* K7 {1 m! b8 O
//ACE("SetLight %d \n", bLight);
2 O! P- P8 |! E2 a" ^
: ^5 ~, Q7 Q2 J
#ifndef __WORLDSERVER
' u; W6 i; e( S6 c0 H4 {
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
/ j" \7 o) H; k1 Q( Q
CLight* pLight = NULL;
2 L9 B" X7 e( s# N
2 I3 E, N$ D( F) V! o, T7 Z
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
& H$ _9 r @# G( R1 @7 Y5 _
7 K2 ]3 a& M& \# i7 n2 b
pLight = GetLight( "direction" );
8 R$ h: d$ J% \1 T# }
! {; U% |7 M& l# c3 L k6 B
#if __VER >= 15 // __BS_CHANGING_ENVIR
8 @- b. \/ Z9 i
if( g_pPlayer ){
: i+ [3 `1 s6 G1 f( f
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
* F- }- R8 e" y8 I) ^
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
" y; S1 P3 V* V& C8 n$ Y: J n
{
/ h" p2 w9 W( z& F& c
if( pLight )
0 [) `. f: ~9 w m# D( x
{
3 l2 J4 y# \ i
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
8 z$ p7 z( C4 C* Y, I! K
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
, l {! l3 f# k! e
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
/ L f$ ]: _0 @( _4 K
1 `5 t* ~7 t& R. _' Q9 n
pLight->Specular.r = 2.0f;
4 h K' V! m* M; Y9 w
pLight->Specular.g = 2.0f;
% f7 R& w! E) l; }9 `
pLight->Specular.b = 2.0f;
8 w% C; \) p$ k1 |, R1 |
! l8 d4 H o! l. R; E/ j( d
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
# A: o5 v( j' d+ c6 I8 e3 a
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
. t$ t7 G* w, u; |" I
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
: w0 B2 d8 v0 t3 \
% f8 ^0 Q8 f" }8 m
HookUpdateLight( pLight );
+ w- A5 C- x8 Q, S! s4 m
' V3 T" E5 Y) i# f( y
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 a2 v* z! @+ \( t/ }* L2 b
: J, o, {$ S; e& @) s
pLight->Diffuse.r *= 1.2f;
. @0 ]* _. P' s3 R
pLight->Diffuse.g *= 1.2f;
j) E, ]0 E- L. I2 ~
pLight->Diffuse.b *= 1.2f;
% J, q0 J5 F V; I0 Q. T
4 }+ g4 o5 n8 [& d; T" Y% @, \( o" m
pLight->Ambient.r *= 0.8f;
# X: A: {5 k* e8 H3 C/ j) i' m
pLight->Ambient.g *= 0.8f;
( f( Q/ I* ]/ b9 M% {
pLight->Ambient.b *= 0.8f;
_( C8 d; k M
! b6 ^+ e( ]. r, ]
memcpy( &m_light, pLight, sizeof( m_light ) );
4 Q0 O0 A. Z1 ~* [+ D- e0 F
# l% _/ b2 P2 f" e9 d6 S$ |" r
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
- _8 F* Y8 Y; D. o) C8 L
D3DXVec3Normalize(&(vecSun),&(vecSun));
5 X# O# W, y, [& l4 g/ g3 r9 p
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. y" i# `* f7 d$ |; v/ g1 R
pLight->Appear( m_pd3dDevice, TRUE );
, G$ v5 g2 }/ f5 t) a5 K. F
. |6 }0 g' z3 I0 W2 P \0 t- S8 @
DWORD dwR, dwG, dwB;
& A# M% q/ [% p8 z* n
dwR = (DWORD)( pLight->Ambient.r * 255 );
- m6 h+ C/ c# a! M6 g: j4 T% O8 Y
dwG = (DWORD)( pLight->Ambient.g * 255 );
# f; j/ e6 o8 u
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 ?9 ~0 ]* {9 V1 t/ N7 ]1 U
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 v2 p+ \6 M x8 Y( ?
}
7 A+ t0 |5 G! o
}
7 w7 @! m: m9 x% k2 ?) J
}
; P5 W) [( p( l" ^
else
0 l$ s1 K: ]% D0 C5 u- f- a) }
#endif
% e$ ]3 h: l1 [' D, ?$ C. R
3 K" t4 ~9 Q G* g$ l
if( m_bIsIndoor )
" u3 F% x7 H+ U
{
3 e$ R/ @' G6 B4 ^
if( pLight )
1 d6 `* }4 }/ y- D+ L5 D& c
{
; \( \" c) u2 X+ k2 V# q
// à??μ oˉè*
% |6 E; w5 G3 n& G/ s% C# U
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
4 j D, R+ S+ }/ m2 P$ u. r
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
4 l3 d4 @8 n1 `+ r6 s
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
/ r8 g- A% Y8 x1 k5 L$ L
' ~' L* D, y( ]1 V+ A1 a
// oˉè* ??à?
( q& ` F6 r: L; K9 e4 R
pLight->Specular.r = 1.0f;
1 t }! \7 `7 @. c
pLight->Specular.g = 1.0f;
d$ y: \1 m% u3 S8 b/ s# _
pLight->Specular.b = 1.0f;
+ j" \5 [3 T6 @% w- M
// àü?? oˉè*
! K8 l/ q* x$ `: h# P
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
% V" T; d" M: c/ l% C
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
6 S& K! `) L5 a) P
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
/ t6 Y! k$ q8 i! x& c) l
0 K+ \0 [9 z8 E. ^$ `$ s
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 M; [7 x6 N5 Q" @1 U# t
{
: B! [, G. N! T7 D! W$ d% F# U
pLight->Diffuse.r *= 0.6f;
6 K5 ~: M% |' D; M* B1 f
pLight->Diffuse.g *= 0.6f;
& }* R+ u% ]% f0 m
pLight->Diffuse.b *= 0.6f;
, d, X4 ^9 w, s* y& @7 D
pLight->Ambient.r *= 0.7f;
+ C# N; Z' H$ C: O9 g. a: X
pLight->Ambient.g *= 0.7f;
- D% T- a1 s0 V; F
pLight->Ambient.b *= 0.7f;
# I. c- Z7 F$ ]7 X& M
}
) p- m. W/ W; v/ |( {
! E# D J ^8 E2 t9 Y" K
#if __VER >= 15 // __BS_CHANGING_ENVIR
' _' J1 O; E8 r/ v
if( g_pPlayer )
' P2 A1 M) G# p+ {" K
HookUpdateLight( pLight );
# Q; z9 P& g5 q: ^6 T2 P
#endif
3 n6 f p4 ]2 d5 `$ `' W
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" e- i, N1 k- m3 j7 ?
# H' b; K* X* f4 Z, G6 H
pLight->Diffuse.r += 0.1f;
1 e7 F+ n i( l7 A
pLight->Diffuse.g += 0.1f;
; [* l4 `( ^1 ]9 r# n7 c
pLight->Diffuse.b += 0.1f;
( ]& _" L) ?% D
// oˉè* ??à?
5 j" j) v$ v) ^( b$ [
pLight->Specular.r = 2.0f;
2 |- q' j8 B) y) \0 ?3 u
pLight->Specular.g = 2.0f;
% e% K2 H! _! M/ ~: e' I
pLight->Specular.b = 2.0f;
9 i" P9 I+ m- M, H( c
// á?oˉ
) p6 Q5 q# e5 x- a' G
pLight->Ambient.r *= 0.9f;
( j3 i/ s- @; Y n% D
pLight->Ambient.g *= 0.9f;
$ m1 ?. M1 m. [
pLight->Ambient.b *= 0.9f;
! m' v/ ?# ?' p' r+ l+ F
# `! c+ O- ^& _5 F2 j) Z2 p6 H: O
memcpy( &m_light, pLight, sizeof( m_light ) );
4 p1 \6 a7 m$ m3 }" i; g- G) I! [: |0 W# N
7 c8 i q/ B Y5 s
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
' m/ v" T- h6 U2 I/ ~& D
pLight->Appear( m_pd3dDevice, TRUE );
+ D9 a4 @1 ~! ~: u0 Q
0 l2 ^# k( u$ o
DWORD dwR, dwG, dwB;
0 A* L+ N' s6 b( Y* i/ h J4 s
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 `# k# H% i8 c% ~& i1 \
dwG = (DWORD)( pLight->Ambient.g * 255 );
% ]# ~( f4 W6 K
dwB = (DWORD)( pLight->Ambient.b * 255 );
% M1 h; G: B- P9 [$ }$ X/ M
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 r" D3 E; D: r; I
}
- T8 R. |8 ]0 E0 ~: n% S, P
}
& @! m1 H( X& t) Z) L v% ~
else
. P- K& u% D' q5 Z% l; {) B' T* z6 ?& {; g
{
9 [2 C& Y1 B4 s; e8 i
if( pLight )
# V( v: Z' |: D+ p' c3 r, U
{
& b& z5 ^# _2 Q5 a3 q& f, w
6 b1 E$ E0 z% g! L/ {
int nHour = 8, nMin = 0;
9 N+ O. I u- `% }3 m1 `# P
#ifdef __CLIENT
& Y- ?* t" A6 I9 _; R
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
y* O7 a, U2 w+ t( \
nHour = g_GameTimer.m_nHour;
; |5 a, g2 l# b1 [
nMin = g_GameTimer.m_nMin ;
( m0 t6 h$ n5 s6 ~5 h
#else
& r5 ?& Z5 S& t
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
, O7 u# ^& A5 i9 G% s
if( m_nLightType == 1 )
5 w1 l& ~- _" \. n9 R
nHour = m_nLightHour;
j7 |& w" r; ^5 v- R/ o
#endif
* `. {, K" m% q5 h/ ]7 o9 \
nHour--;
' y, K8 m6 P$ y: f1 I# I: P
if( nHour < 0 ) nHour = 0;
. e' Y$ K; B4 {0 _3 o
if( nHour > 23 ) nHour = 23;
# W% p2 p, [: f5 h |
6 ^6 ~6 w! i) f- f! Q0 k! W y
//if( m_bFixedHour )
! m& c& J8 \) b% l, w9 L0 b$ C
// nHour = m_nFixedHour, nMin = 0;
5 y$ V: @8 N% C; w, ?/ w- ]$ G! ?
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
4 e- R. e9 b8 x5 @ F9 L/ I3 W1 `; f
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
) h. V: _, E+ O9 J# o1 f
7 h4 h2 @! y6 ^, g; K8 j& j z& V. a
//m_lightColor = lightColorPrv;
?2 |3 \5 @: o9 T: f0 h* z% Q
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
6 R: ^! N* i2 N# o, E& h' r
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
4 j' u: B% ]9 E0 {7 @9 \0 Y4 r& _& K
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) H2 ~) s) P6 ~1 h3 d: r
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
' @7 V' N+ L6 f1 L
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
?! Q) G3 T) @& e% Q
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
6 n6 a0 J+ w4 b# R3 m% O1 o7 v
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
9 V# h T# k; m) F9 G
2 y: I9 e0 @ W
// à??μ oˉè*
- k' i A/ @8 W( r
pLight->Diffuse.r = lightColorPrv.r1;
2 o$ }- R! M. i7 S
pLight->Diffuse.g = lightColorPrv.g1;
! b2 s7 W }+ O3 \6 t
pLight->Diffuse.b = lightColorPrv.b1;
- J' ` T+ u/ x* Q
// oˉè* ??à?
6 b/ w' d, @" Q( z M
pLight->Specular.r = 1.0f;
1 Y" f+ }8 H/ a
pLight->Specular.g = 1.0f;
2 v2 {4 N, A: T
pLight->Specular.b = 1.0f;
l1 W( @) L2 b6 Z$ g
// àü?? oˉè*
; u, g6 Y$ [; |2 A, S9 i+ p i. w
pLight->Ambient.r = lightColorPrv.r2;
8 Z3 }& j8 s% h. Z- M' s# k
pLight->Ambient.g = lightColorPrv.g2;
4 R! N' j" m0 m* r3 h
pLight->Ambient.b = lightColorPrv.b2;
2 R/ S& r; h% o! I7 m! n% Z) v
, \( [( k0 h* o. @0 y V- R+ t
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
$ n; t$ C. n0 T
{
6 L/ u& t8 B& \ h7 h+ _7 O
pLight->Diffuse.r *= 0.6f;
( n! z, ~/ S( U1 Z( g l2 t1 [* J
pLight->Diffuse.g *= 0.6f;
( m8 {7 z( B1 N5 j0 G) w; [* W
pLight->Diffuse.b *= 0.6f;
! v) x$ p7 }" f. i% a: R3 y
pLight->Ambient.r *= 0.7f;
: Q# T7 S, F0 V5 v( }
pLight->Ambient.g *= 0.7f;
3 w# p% m6 T# l) i
pLight->Ambient.b *= 0.7f;
8 [( j7 U4 h( D! W j
}
. P& Y1 o, G& E) c0 @5 n
- K4 i* v1 N: a. \; L
#if __VER >= 15 // __BS_CHANGING_ENVIR
: I. ], j% Q) o3 _- F/ h
if( g_pPlayer )
/ Y( z2 j/ H- I* Z8 u
HookUpdateLight( pLight );
2 v5 T8 ], g6 Y( H: L% C3 C
#endif
* Y5 n0 `+ Z0 v, ^" a T$ ~
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 W; t/ f8 l) f
; S8 D( A! E" }$ c7 Q
#ifdef __YENV
1 b% n6 l- i5 u0 _
pLight->Diffuse.r *= 1.1f;
% Y# r& V. I7 M+ ^0 R% _
pLight->Diffuse.g *= 1.1f;
9 n8 ^ K7 @8 N' s% Y1 r. J2 W# E
pLight->Diffuse.b *= 1.1f;
" ?7 }. m" \: w% c
// oˉè* ??à?
! A8 q7 k( }2 m& v! G
pLight->Specular.r = 2.0f;
, ]0 r. r- C( F9 f5 |- w
pLight->Specular.g = 2.0f;
b) m) d7 e; a. T O& _
pLight->Specular.b = 2.0f;
9 \) q. G. s; }( c. ]6 X: ]' C6 A# ]
// á?oˉ
2 _/ p$ @: ?6 G7 c% F1 ]
pLight->Ambient.r *= 1.0f;
7 A" g8 _: w% [7 ] P A
pLight->Ambient.g *= 1.0f;
, s& J5 `3 a3 E; }" S
pLight->Ambient.b *= 1.0f;
, U9 T; M) O7 S! C" f. Z* L/ `; W
#else //__YENV
, Q7 e2 W" P: L5 i. S+ O
pLight->Diffuse.r *= 1.1f;
( l: x: J9 s/ m, l3 ~; F
pLight->Diffuse.g *= 1.1f;
+ _( }. U1 f, p) r8 ^
pLight->Diffuse.b *= 1.1f;
A( N! _- b {; C5 d: f! |# M
// oˉè* ??à?
( l ?4 P/ Y! Y
pLight->Specular.r = 2.0f;
8 H' Y$ ?# _6 l m& I3 a9 v5 |
pLight->Specular.g = 2.0f;
( @# [4 S; V3 X2 Y# i
pLight->Specular.b = 2.0f;
) v0 [7 ^0 ]( u* b
// á?oˉ
$ f) b3 A) U; X" j. `/ B
pLight->Ambient.r *= 0.9f;
! f/ a: V- _, y+ z2 X
pLight->Ambient.g *= 0.9f;
+ c& }8 [! x) S2 V2 B) N$ f6 a
pLight->Ambient.b *= 0.9f;
+ J+ P4 |9 v9 k d
#endif //__YENV
0 t7 f4 K' \8 r7 T6 w0 }
% ]! O* b6 S# D$ ~
memcpy( &m_light, pLight, sizeof( m_light ) );
/ A5 c2 z. i7 N4 w
" ]* g9 n; b9 M; B
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
/ Q( l! T& M7 w/ l1 s, l7 a
D3DXMATRIX matTemp;
3 f9 x# X5 Q F7 o# ^' F/ r
static const float CONS_VAL = 3.1415926f / 180.f;
2 R' m& f+ Q( t) v
& m5 }7 [# t) f) o3 Q& d
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
/ _. u3 {/ [+ g3 T5 C
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
4 W, b- X4 {8 N% ~$ f1 ~4 m
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
9 Y; p' w$ |9 Z; g5 }& j
pLight->Appear( m_pd3dDevice, TRUE );
7 }; F- h! U3 H. H
0 X. g( s9 }5 ~* y
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% ~1 N5 p: V5 m' n+ {! W
// D3DXVec3Normalize(&(vecSun),&(vecSun));
$ u/ G/ |! E; A: n4 B& j9 j
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
f( |4 b4 h) G# n; E
! {) Y7 [. K) @2 ^, r
DWORD dwR, dwG, dwB;
4 X0 D) d& A( r2 f/ j
dwR = (DWORD)( pLight->Ambient.r * 255 );
- q; C: c& {3 b# k/ j; ?& r
dwG = (DWORD)( pLight->Ambient.g * 255 );
! |! x& E" S! K- h# v8 j! J
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 [! U# A2 G0 @% J! e
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# M: w# M3 Q" m, o2 l' y9 z
}
8 [& F9 K+ K0 K% \
}
( M3 t: t* \3 A
8 F, y$ I! ^% i& o
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
1 N0 j* N/ V4 f& q: w/ [+ A
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) );
) V8 o1 Z0 }/ f3 I6 y: q/ z
::SetLight( bLight );
8 ~. p# a& A8 p: a: e
- D, e" f, ?( n. x' u7 |8 A
// ±ao? ?D?í???ó á¤à?
: H- d* x+ Q: P8 C! K* |
m_pd3dDevice->SetMaterial( &m_baseMaterial );
+ r* y# m4 L4 R' y; `5 }$ I
/ U j# `- s$ O& r
#endif // not WORLDSERVER
9 g* J6 C9 x: d# \
}
' t" e: J/ T. r' {
并更换
- r' @4 t$ @8 E$ z
Code:
" o" `& m) j' e8 k- q. }- U1 M
__FLYFF_INITPAGE_EXT
$ H8 l0 \; v6 b+ o5 s0 v6 G, w
定义
: A6 t6 G5 {6 `
% n! i, {# s/ J& w2 \/ k, L
# \8 b. _2 Q' u. T$ p- t
5 b0 B- v3 |6 _* t' A
7 c# ?+ M) g" R! m( |3 r6 |3 y& N8 `
现在终于删除我的狗屁加速...
S" k1 a" N3 Y. e+ A0 N
2 Q$ G! B. }: h- Z. ~; K/ z
/ R7 G# W4 q6 Q* w# o f; d* A
, S+ }% j3 C( d. E, t2 K: o; `
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2