飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
8 z- e+ r7 C/ ?1 Z
尾翼:
& P0 W7 U K7 m ]0 O# x! u# c
: `- J: _( J5 ~0 N* A
代码:
) G8 F9 J3 m3 ~* I& d0 I: M& k l( R
CWndAutoFood::CWndAutoFood()
4 }- Z: c: ~- d" d t- z
{
: w- t7 G$ Z1 A" H+ H+ l
m_pItemElem = NULL;
?) ~) v# o% p' p; R; o2 Q4 O
m_pTexture = NULL;
, g% n A/ Z; D0 x& ?/ @$ A
bStart = FALSE;
6 z& X, a# l! W3 S3 V4 p
}
" \) i3 ]3 q5 w, t2 i B5 }$ g6 O
, ?; d7 X' g" u8 n' n
CWndAutoFood::~CWndAutoFood()
# a) t3 ?6 y; M7 h% L3 F3 Y# o
{
6 Q$ a9 T# c4 x7 C
AfxMessageBox( "AutoFood ist gestorben
" );
' y3 ?0 }( p7 z( t
}
1 m% }/ R/ C# J% |% `* l) f @
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
! W7 A& J: S# U6 v7 ^
{
; x: T/ y+ n2 ]# }- ?6 u
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
, N$ T( [0 p. G y( }! H' c
}
; z+ P) B* ~, C1 M
[3 L: {) l# ^* h
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
' }6 l9 {2 b. t. h4 ^. u- ` \# N' m
{
1 k" F; m9 v# u, {. x; E4 W
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ ~% n) M9 T- O, R
CRect rect = pWndCtrl->rect;
* D9 u0 \+ _7 S/ [7 S/ W: E; z& v
if( rect && rect.PtInRect( point ) )
7 \& U' K/ F* G0 m
{
) k9 h- J4 w1 c* S3 Y; j
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
* j. u7 R; {: m5 t
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
' I1 i9 [& L- I5 R4 V; Z+ O' V, M
{
4 f- O6 p) J( L8 O2 N
if( m_pItemElem )
$ K# V! x, C6 {' s
{
" I, e1 n. F4 V9 L; B* O$ G1 d D
m_pItemElem = NULL;
, G, \9 p, s0 }) h& P. J! Z( a
}
) t* X' S( Z9 r) V) `
m_pItemElem = pItemElem;
* N2 ]/ \* V1 J- {8 ]) k: H4 T5 K
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
5 U# I0 q! p5 w# r2 C, h
}else{
* n' M. p) L1 }/ N
SetForbid( TRUE );
* ?! N; x; {2 n, |# x# ~1 {
}
% g( o, }* E0 `3 u7 ]4 h. Z; P& m* k+ \
}else{
+ S8 O( [$ M- y7 n
SetForbid( TRUE );
+ j) Z( H3 @9 m% f/ ]0 s
}
2 G9 d/ N$ _5 w: y
return TRUE;
- }% z9 \8 G, ^6 T. j8 q
}
# L" O% J4 M# H3 h0 Q
: l K6 |7 ^2 w1 F% ]! q/ z
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
1 _: N- j; U* V+ f! Y
{
7 k; m+ K9 ?" M# F# D+ O
switch( nID )
& ^. J, I# H6 b* l) y. T7 N
{
: L$ `7 C6 f: G! e9 Q+ L1 |
case WIDC_BUTTON3:
5 q* {1 q! Q* _9 r& F0 g8 P8 Y9 s4 q
{
: n' W6 [$ x6 x
bStart = TRUE;
) j& S* b v: Z. e8 g! n2 Z
break;
( r+ z8 Y! ^0 y
}
* Z" E# c! X9 @( Y. ~3 Q( R# P
case WIDC_BUTTON4:
0 i" t p) y/ N$ g5 J
{
$ P- y3 a# x' M1 b r
bStart = FALSE;
6 r8 u3 S! H. y4 z* L; `9 U1 l5 f
break;
) j5 @0 r6 A+ i. W+ X
}
1 r1 o f! W0 N. `
}
S9 m& ^, f" F. X3 J
return CWndNeuz::OnChildNotify( message, nID, pLResult );
7 u8 B0 l$ V* P0 D/ O
}
* c# A* n. D7 Q8 u0 b: Z0 N5 q
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
3 [; a% n! d( _# q! I$ u1 s4 ~
{
4 q* z+ M3 Q5 l( S$ m% h
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
/ @ t: M1 I/ w$ a" a
if( bStart || !m_pItemElem )
! B) p0 D5 d. W* ]
{
7 X q2 S* ~% V' U8 e7 q
pBtn->EnableWindow( FALSE );
4 N) N* v# O1 e k
}else
7 b: b* d! r; R4 f5 b; k- L
pBtn->EnableWindow( TRUE );
$ P$ r! i/ Y: f+ R/ W
if( m_pTexture )
3 [9 x' c" C( w9 r+ M/ v* I! ]( \" K
{
; ~. {( }4 W" j" H
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' f0 Z+ J T% G2 a/ u O
if( wndCtrl && wndCtrl->rect )
: H8 R3 a; H+ P0 K% c1 q
{
, O3 p) m- G. a+ h8 e! p
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
0 \% @* N g4 ?. t8 K
}
7 I+ i0 d' J2 ~* c7 B7 e
}
! l: O7 b' `, ~7 s4 T# \- o
}
5 `) c/ z% t6 d, Y2 E% @% [
# y* B) L1 _3 I' E; C! d: j
BOOL CWndAutoFood:
rocess()
- k4 _# n* ~9 `( B# {
{
* Q) q. f! U9 z" M
if( bStart )
$ i; w, I+ a6 u% E
{
5 @. ?% U9 ` p! U; ^% O+ d# D/ R
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
# J& `% x( W2 h
{
* r' ^. `* I5 r" i9 g7 c9 r
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
4 T2 c& i' o& l' u9 J: }
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
2 }" A5 B! n( h H8 y W- L' k0 B* Q2 w
}else{
, n9 C/ b, `# m
bStart = FALSE;
* ~, y7 O" U( t* M
m_pItemElem = NULL;
0 A% o$ h2 V+ `, s# U
}
1 X: y9 p% U5 _ @
}
! a5 D) |4 }: l# L& O
return TRUE;
5 Z4 _8 M1 ], y" c3 n8 p4 C9 \# |
}
2 J7 [* w% P! [$ I7 ^% b% h
& {$ l6 K( w0 w( S+ X' Z0 \, c1 D
登录视频废话:
4 e. x6 F# ?8 M, T& G! z* M
尾翼:
8 y3 I m: ` C- R% v. P
& Z) |) Z1 W- m* }% I. ?9 H7 H
代码:
& { o3 U6 ?( Z4 a; _# D8 \/ I
5 K" p9 k- d9 n/ O/ S: ]
void CWorld::SetLight( BOOL bLight )
* E7 I" h8 W* \& b; B
durch
9 L7 J7 L3 o3 Y# p0 x
Code:
# ]7 M' w( U5 [) G
void CWorld::SetLight( BOOL bLight )
8 Y# B* t" X1 Y+ u# Q0 Q
{
" F3 l/ F6 q" y9 i+ r8 g O6 \/ V
//ACE("SetLight %d \n", bLight);
' j) ?2 {: z2 r4 _/ T+ J/ t
+ T* d, s! w3 C" C9 V, h8 G
#ifndef __WORLDSERVER
6 A/ ~" }5 \% ~4 e% Y( j3 _( [$ _
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
+ J: a# R! {! t |
CLight* pLight = NULL;
2 c% M1 ?" ?4 J
; h) S/ t: o* m3 |: y' l7 a. x
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
' g$ Z' C H/ B; }# U
3 P# ~: W; P' M* V# p! c
pLight = GetLight( "direction" );
! w& @9 D2 Q/ a( D9 Z
" g' N0 m0 w% ?! r5 C* v
#if __VER >= 15 // __BS_CHANGING_ENVIR
. {2 Y$ g6 @% h9 I
if( g_pPlayer ){
$ I, s' }2 C9 B( d q6 y7 ]
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
& B$ `+ D/ f+ z8 U
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
6 P( m% v" P+ [
{
( t; v) W3 J( V) u/ l* o+ Z' G
if( pLight )
/ p5 V; I2 T6 D8 R
{
: p1 D% r2 o0 E9 v; A6 [
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
8 Q# x' F a* r0 w
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
2 f0 N* ?5 ^8 j6 k& g( g
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
* V0 L$ t# ~ B+ f) j
5 }, O3 u# O; N4 ~# A/ {3 A/ B
pLight->Specular.r = 2.0f;
" r7 F; o, T4 `1 E4 E# S
pLight->Specular.g = 2.0f;
7 _5 j8 l' q1 ] ~2 B% T
pLight->Specular.b = 2.0f;
+ `- q7 B% o( t& R4 D
/ ^4 V6 @6 O; U
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
+ @/ r$ I3 F8 h$ K) O# p, D
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
0 n: {4 a3 q" L5 U
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
' W- l( k) C/ t
: t1 [0 U2 F) z* R9 ~) c
HookUpdateLight( pLight );
7 H/ u% a! s8 U( Z; r# l
% N9 H; o _9 [8 A) x3 S* L1 p# w
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ n/ e* l" N! C X% @9 [
7 M4 {" Y# A) C. k, l4 J. G4 P
pLight->Diffuse.r *= 1.2f;
" n+ Z7 D0 s& t/ d) V
pLight->Diffuse.g *= 1.2f;
7 I9 H1 E, d" k4 P
pLight->Diffuse.b *= 1.2f;
. T, f( c* }+ Q
; C: W) A% `, T% [/ n
pLight->Ambient.r *= 0.8f;
7 W& J" M" g8 O4 O/ r
pLight->Ambient.g *= 0.8f;
" K1 m# v6 u, x
pLight->Ambient.b *= 0.8f;
( {4 e8 |) [* q
# s0 H# v. N0 `$ h
memcpy( &m_light, pLight, sizeof( m_light ) );
* ]) F- ^9 X6 O" T, i
* Y' z9 F! J" V9 ]
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 w. R5 s5 V t' F; k2 ~% X9 w
D3DXVec3Normalize(&(vecSun),&(vecSun));
( P1 Z8 r7 Y9 K! q
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
5 ~ [2 a9 ^% ?$ n% S6 H
pLight->Appear( m_pd3dDevice, TRUE );
. c, D. v* _0 L, q- q, V/ P4 ^
l) y0 ~# C# ]& _7 M, Z" g
DWORD dwR, dwG, dwB;
) b$ W( ?$ X# y1 N
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 n! x0 i5 P7 d8 x' M6 R' n" [
dwG = (DWORD)( pLight->Ambient.g * 255 );
- w0 c9 q/ b! q' P# k
dwB = (DWORD)( pLight->Ambient.b * 255 );
6 ^: _! q' @1 A P8 |8 A& `! V
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! P4 N' q; z3 j
}
9 `+ n4 n b3 T4 w4 O
}
( C; q" J$ L+ ~. X! x
}
: d7 r, s8 x" {* S: B8 G+ }
else
& \# u: C1 S/ W7 Q6 R) n
#endif
% m4 T" T. }0 t O8 X6 S
2 z3 l0 Y' k8 q! ]
if( m_bIsIndoor )
6 j# n0 i/ |# E6 @
{
6 R! I4 I' ?' X1 c
if( pLight )
3 e: U3 q l2 g9 c7 H
{
2 O3 ~9 N: x) P& r; [; H
// à??μ oˉè*
+ n6 l. F9 |9 ?2 R$ \/ w; i, m
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
+ k# O4 ?9 S/ k
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
5 F/ p) ]4 Z$ D3 @) ?
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
# |4 ]4 k' J5 F: G4 u9 L
7 ? i* v+ K/ U. M8 _
// oˉè* ??à?
3 \& T! C4 O; N- l( G
pLight->Specular.r = 1.0f;
" K5 U: w" F1 o: x# w8 Z
pLight->Specular.g = 1.0f;
X1 k8 H9 j) F! g% H3 W
pLight->Specular.b = 1.0f;
+ z( U, q6 ?; D
// àü?? oˉè*
/ ~5 m7 y* A. {" N3 b' @4 T
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
3 [1 |, z* A- {
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
% n: m- t/ V8 W
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
: v! g4 h2 d6 h' b
8 j7 L# r& |2 K4 S, e: B* P# C
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
1 J' n! H c* G k9 X
{
) f' ?# g$ t! |1 M8 |0 E
pLight->Diffuse.r *= 0.6f;
5 b- O" }5 [. b i2 S/ v' a
pLight->Diffuse.g *= 0.6f;
7 R2 K1 X. j) ]+ n4 [8 Z
pLight->Diffuse.b *= 0.6f;
& H4 N0 y% C Q0 V, z* v' S+ H" x* B
pLight->Ambient.r *= 0.7f;
3 E, c2 Q0 O/ k' @! P* z
pLight->Ambient.g *= 0.7f;
6 L) Y3 b* @- R' j8 @( l% {) }
pLight->Ambient.b *= 0.7f;
. t$ t7 c" n( n3 x$ w4 ?0 P: |% r
}
( }8 {7 h" j: M7 T6 B; F% i1 n! v
; ~$ r5 ^- _5 a; Y, }$ Y/ N2 w
#if __VER >= 15 // __BS_CHANGING_ENVIR
) N7 N) a: d) `$ ^) X" j+ M. s
if( g_pPlayer )
) a6 @1 V6 ]( F: Z3 M
HookUpdateLight( pLight );
4 [$ S9 @$ p \8 S3 c- ` l
#endif
2 _" e3 M4 d# H# i* d H& H
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 l; h! p% a% Q) O+ C
( X5 v& n! W0 E' ?, Z5 |9 q) G
pLight->Diffuse.r += 0.1f;
( [+ {# w( w6 z5 }: ?
pLight->Diffuse.g += 0.1f;
# G- q+ k" k" d" e$ y, [8 S1 B6 J
pLight->Diffuse.b += 0.1f;
3 M' A4 H b* H& f8 h( |7 h0 g
// oˉè* ??à?
4 R# X3 n+ R7 N; q5 H- q& e
pLight->Specular.r = 2.0f;
l" a3 e. w' |# F" {
pLight->Specular.g = 2.0f;
% n9 @+ O" K& w+ j6 q7 W
pLight->Specular.b = 2.0f;
3 C+ `" t, r( q4 f9 s M- l5 |
// á?oˉ
. [) j: \/ y0 ~) O3 Q+ U7 G
pLight->Ambient.r *= 0.9f;
( Y! [/ I+ V3 Y$ O
pLight->Ambient.g *= 0.9f;
( q) y7 T: x, \( @
pLight->Ambient.b *= 0.9f;
7 p+ _+ }4 T' Z7 A% x5 Q
0 e" E$ K y/ s
memcpy( &m_light, pLight, sizeof( m_light ) );
6 H0 _. d* C& p& y0 a L
- K" r9 g* V6 e4 w7 ?$ {
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
3 b4 N) J9 B. k
pLight->Appear( m_pd3dDevice, TRUE );
' O, } k7 j" O* A8 I) G, b/ j* J
# T6 r% \( Y. M7 v
DWORD dwR, dwG, dwB;
, Q L8 x- c7 k: X* x! S% g
dwR = (DWORD)( pLight->Ambient.r * 255 );
& n+ Y, W6 e n2 W
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 X. x" t/ M9 L1 l& @2 F8 B
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 l9 j+ N, Z0 ?# [4 j
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
, s- W8 V/ B/ G" B& f
}
' g' N/ y+ N+ ~* h( j
}
) [. e7 T# l; W% O% o" n
else
5 @' N. \" [9 W5 J; z- V; A# H
{
: O9 m% P- h* d
if( pLight )
; L7 r. S s2 q& I+ j
{
1 v4 e" P# P& @3 w# w# ?6 p" P
4 s5 F T8 `2 `$ t2 f
int nHour = 8, nMin = 0;
4 x6 l! ^; w" A4 ^1 w# }$ i
#ifdef __CLIENT
9 v' I7 c/ k- _1 ? C
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
! P8 S9 q# n x% ]" C: k1 u
nHour = g_GameTimer.m_nHour;
2 K" m, d" M. z
nMin = g_GameTimer.m_nMin ;
3 U" @$ [% C0 S& W1 N
#else
$ T; _4 W: F0 T" L% \$ Q
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
1 K M6 M% x: o2 g) q
if( m_nLightType == 1 )
# a2 a4 g9 Y- S0 ^# _
nHour = m_nLightHour;
0 B' ~# P. }* a9 q, y% [
#endif
) p; d8 ~8 s' ~' U. U5 ]- ^
nHour--;
2 }- h5 l3 A( s9 W$ R* D$ l
if( nHour < 0 ) nHour = 0;
; u9 [) o/ D& r" N' m
if( nHour > 23 ) nHour = 23;
- V& P& d5 Y5 J% w( K5 \& ^
' G8 y6 y+ X* E3 U- @. `2 }" l' C, N( K
//if( m_bFixedHour )
8 A' o$ E/ j* H
// nHour = m_nFixedHour, nMin = 0;
9 _- f# Q6 K) e3 T2 N( `% }. n" X
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
1 U3 X2 [& Y% |/ B
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
& r$ j% z- O9 o, u3 ]- M1 i
4 @( o" X% p* v; m
//m_lightColor = lightColorPrv;
+ e) Q N L8 n) O$ R9 ?! w
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
: P9 |% w7 N/ U4 Z1 v
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
! M( |1 v3 X- z7 g+ ^7 V
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
" m9 }$ L8 d& B' I- `
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
4 S6 ?' V! a: k2 @
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
/ t, I- ~( O0 }. ]3 i/ A+ |
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
5 e2 C3 z6 e7 l
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
4 }. S$ a& J# p- u
; s* B( @8 m# @" e
// à??μ oˉè*
9 z- Y# y; m2 \4 X
pLight->Diffuse.r = lightColorPrv.r1;
" U7 f; T0 @: {! W4 O
pLight->Diffuse.g = lightColorPrv.g1;
5 D- l1 p2 F2 H) f) d/ ~0 k) N
pLight->Diffuse.b = lightColorPrv.b1;
0 Y- U( F5 }1 \0 I
// oˉè* ??à?
; Z5 x w; e2 o
pLight->Specular.r = 1.0f;
( ?# p( J9 R( W7 ?1 _9 m
pLight->Specular.g = 1.0f;
2 B0 Y" H+ U- i$ M& C
pLight->Specular.b = 1.0f;
, r3 B/ a$ E( k) i7 d2 |! i, X# a
// àü?? oˉè*
1 f* |# x `; [* n7 W
pLight->Ambient.r = lightColorPrv.r2;
W0 L4 H. F' E, }
pLight->Ambient.g = lightColorPrv.g2;
: G4 s3 F' c, j/ @. N$ x1 {
pLight->Ambient.b = lightColorPrv.b2;
- Z. w5 v7 b. x+ Z/ f
' X5 d) X w( f2 {" F. p
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
; i# P& L4 |& O2 U, u
{
# \3 @) h0 p* u$ w
pLight->Diffuse.r *= 0.6f;
* f+ V3 y% V+ @( T; B/ \
pLight->Diffuse.g *= 0.6f;
) X7 _, {( a% I. V, f4 C" |
pLight->Diffuse.b *= 0.6f;
* `# i& t8 e+ R8 D8 U' g
pLight->Ambient.r *= 0.7f;
5 w! b" l, r% {
pLight->Ambient.g *= 0.7f;
7 @! z l) X+ Z; } i" ]
pLight->Ambient.b *= 0.7f;
4 ]% P3 [5 `$ i) f2 w; q/ h
}
M. A/ A& s6 b! Z/ z5 w9 V: [
. _$ N- Z+ U- i" d/ k1 ^) @
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ l4 Z* r6 w7 z5 u, x
if( g_pPlayer )
8 C2 p* m' }% _% ?- a; ?/ ]
HookUpdateLight( pLight );
$ y/ ?3 \4 B, d
#endif
; E% v. B; q% _8 m+ h4 z
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
, [9 i. V+ F8 {* H7 k6 D
; ^! Y1 H7 a+ S! L* J0 G# Y P; ?
#ifdef __YENV
- \9 {; s$ Z8 O% _0 G3 ^
pLight->Diffuse.r *= 1.1f;
9 R, Y/ ~& u* p2 t1 l- H+ X; t
pLight->Diffuse.g *= 1.1f;
) k% Z- M: Y ?
pLight->Diffuse.b *= 1.1f;
, R8 m3 z' W9 K; w J
// oˉè* ??à?
4 }; M+ u7 q# ?1 O
pLight->Specular.r = 2.0f;
, y) w {' E! y! c6 N' L
pLight->Specular.g = 2.0f;
5 E! b) n# { t i& u
pLight->Specular.b = 2.0f;
6 o9 c0 ~0 l8 G d! [2 Y' ], C
// á?oˉ
& F" ^5 a, k; v0 c( v0 S
pLight->Ambient.r *= 1.0f;
+ }: H# S% o8 b' F% i
pLight->Ambient.g *= 1.0f;
& Z" D" |# u6 p* W+ L
pLight->Ambient.b *= 1.0f;
! g) m! j, E) K, n8 T9 U
#else //__YENV
2 C6 }: l5 F, M6 \% L
pLight->Diffuse.r *= 1.1f;
( f; z# `/ Q0 U* l. Y! D
pLight->Diffuse.g *= 1.1f;
9 ^' \7 {+ s- I% R# R8 C
pLight->Diffuse.b *= 1.1f;
5 ^& \% x3 A/ z) U! s( K
// oˉè* ??à?
8 `/ |0 y* Y7 E. l9 W, P& A; d! i
pLight->Specular.r = 2.0f;
) l5 A0 S3 u& y- \2 [+ i3 Q% {
pLight->Specular.g = 2.0f;
: S1 A9 p4 e- j1 T) W: X
pLight->Specular.b = 2.0f;
8 _5 |( J5 b5 M, u F/ l2 Y8 D
// á?oˉ
+ b8 f' b; B4 m$ Y
pLight->Ambient.r *= 0.9f;
* k6 b# P* h0 W- l! D' q' [9 Q
pLight->Ambient.g *= 0.9f;
5 ~" \/ P" A: i2 x2 p$ d+ |. w5 a
pLight->Ambient.b *= 0.9f;
1 v5 n* ?. Z6 V4 _
#endif //__YENV
, F0 t, y. }3 |. l! t- ~
) @0 k$ Z" P' h: J
memcpy( &m_light, pLight, sizeof( m_light ) );
& D$ I0 @: Y" s; o
; q% ^, d; b0 |+ d
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
+ U" ~- b" B3 p8 x1 ~5 N- z3 U# Z
D3DXMATRIX matTemp;
, q+ k# T; x% a1 t) M! J9 B5 |
static const float CONS_VAL = 3.1415926f / 180.f;
' E2 }/ U. f$ ]6 {0 R1 H" S' B
( G+ ^! F u1 ^/ f3 L3 d) E% D
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
_: c5 G6 U8 |4 `
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
" B8 e* @; X# e7 x, L
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
9 {$ K# t9 o9 E/ ~; [4 g1 F. a
pLight->Appear( m_pd3dDevice, TRUE );
/ {, Q; z0 H7 d! m S: c6 n
* Z6 Y$ d. B0 [. I$ v5 w0 [1 N6 J
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 o m7 C# l8 w$ o) I$ `
// D3DXVec3Normalize(&(vecSun),&(vecSun));
; T+ A* w/ Y1 O, \: D3 G& r
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
' m$ w5 v2 T/ J9 t% e) i
8 X7 R( |) b- Y
DWORD dwR, dwG, dwB;
3 x* ]" K# K& H& D* S' |1 [- @
dwR = (DWORD)( pLight->Ambient.r * 255 );
& E4 i9 Y. V* u
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 O3 e9 n6 `3 R h% r, n2 V. K+ k$ }
dwB = (DWORD)( pLight->Ambient.b * 255 );
% t N8 F6 f: y2 E
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' T& b8 f3 J9 j! y5 n; l+ \5 S/ w
}
0 m: D0 Q* R* n# `" ~9 m& x7 H- l L
}
* e# ]+ y" Z1 I
5 o) g4 V7 y% D
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
2 ?& r {/ b1 T/ h( S: h5 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) );
% u! h3 [- ~3 `
::SetLight( bLight );
( P2 V i+ ` f% ?; P- I
( u% i+ l4 u( A+ Q8 f
// ±ao? ?D?í???ó á¤à?
4 w! k; N5 }6 W2 O) F
m_pd3dDevice->SetMaterial( &m_baseMaterial );
) \0 k9 p2 q+ b0 h7 F
$ m5 a9 `( ^ y1 z
#endif // not WORLDSERVER
& k6 F' J8 `/ x
}
5 w9 v+ u8 a- Q
并更换
i; j# j [+ S7 P7 T9 C) b; V
Code:
) e( d9 n" x' A. W v2 F
__FLYFF_INITPAGE_EXT
+ E! D' ?& R! Y
定义
& Q9 W; f" Y$ a
O. ^; B- w& k7 l5 c7 R" v
8 {* W( {* |- J+ t# W% z
; | H: K; P) S/ h
- \& g5 T5 [1 K0 M1 C" O' z, [
现在终于删除我的狗屁加速...
6 o3 I/ o+ n7 F \9 I& D
( O, a: j) A# T- K( m g$ Q
3 T3 M' r% c4 ?6 w1 o' ?
/ f; U4 L4 q, y* w! Q$ [
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2