飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
+ n0 u6 C' \& u7 i5 g$ y) Q
尾翼:
) a, W8 i \9 n+ l" C) E! A1 L
% @8 `9 W! V' n, p
代码:
5 ?8 W6 j6 H" S1 @( s- u: C
CWndAutoFood::CWndAutoFood()
" j6 T# h* Y- j# A: d
{
# w. ^/ Q5 L8 B) S' e
m_pItemElem = NULL;
2 d* P D- u% _# \! ]
m_pTexture = NULL;
: N$ F) k* |2 @# b
bStart = FALSE;
0 [$ Y. \( S* {( q
}
2 I2 i3 d6 f& \' l1 y* g) y6 B! z
8 D; r, j) x& n7 x* W" \ l, o* d' T
CWndAutoFood::~CWndAutoFood()
; X( s+ n2 Y9 h" g' k" x6 B
{
" a9 W0 L; n% i( v0 c& N j1 o
AfxMessageBox( "AutoFood ist gestorben
" );
/ {9 G6 G! |$ d1 G8 f
}
4 L5 h# l/ P8 b9 R
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
; B1 T; Z) l4 N) _
{
# R P$ v5 p/ r' {' v5 }2 Z
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
) j$ w1 T; |/ e, t2 \
}
. t( f% |( s3 `* o
/ L# o( ^+ C7 V {- L. N
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
4 W7 V+ }' B7 [0 V
{
, | Q9 Z8 q- c4 _! W1 d- R
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
; y0 j- Y" _6 b5 S
CRect rect = pWndCtrl->rect;
, b7 w; V5 s. _& Q8 U% r$ \. S* I
if( rect && rect.PtInRect( point ) )
) \0 l3 a0 b8 b
{
0 O6 p. `2 e/ J- J
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
K# o3 R5 }7 }1 e* @
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
. _( S T4 r/ ?, _" O0 e5 K) ~
{
6 l$ ]2 g# G7 |
if( m_pItemElem )
4 [5 O% ] [( a! p* {' ~) U; B, O
{
- Z1 o5 U: o# X9 k' `3 Y
m_pItemElem = NULL;
* W* v! C! o6 a# }: |8 H
}
7 K/ ^0 c- f3 u$ C$ c+ ~
m_pItemElem = pItemElem;
( H4 L$ j' o' @) K& q/ \0 R3 X
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
& A! m. C* A, J3 L( m q
}else{
' {, [% ]5 l5 r9 O9 J$ Q
SetForbid( TRUE );
- d5 a: Q( Y4 _2 S+ \
}
/ g0 L4 l4 ^* F, q9 q
}else{
/ G: e8 U" Y" N Q0 O- f2 @
SetForbid( TRUE );
# \8 S- Q6 u4 j, `) m9 Z
}
. Y5 Q# Y* i U6 a
return TRUE;
& @0 E) ~7 h o) {" g( r
}
# S/ f; D. O! Y: x. O0 ]
( Y1 ^4 |- M" a# V7 D6 y5 Q9 _4 B4 o
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
+ {) I/ b. b- {& m# k$ W; f
{
" V; H2 V# r+ c! u I% P: t J- a
switch( nID )
$ k# o$ ~1 U4 K+ s: s
{
/ p" E5 y3 f% y# D
case WIDC_BUTTON3:
, r+ J3 y$ E0 M. G# ^+ C) j
{
& h( k, y. |( o% Z7 |9 F% ~- _) K
bStart = TRUE;
& Q0 H- y% ~( ?$ r- S7 e" b
break;
; a$ V T8 o7 u0 J% _0 L0 x* L
}
- n, e4 l% U* O
case WIDC_BUTTON4:
9 A5 h( M5 W: j+ v
{
. @; K/ |* X5 |' [0 B* B
bStart = FALSE;
' B3 t; H% n& H
break;
, V! M/ g" a) V+ A2 p- h7 U2 f
}
7 O+ f4 C3 i# R0 ~: w# C
}
h6 [& L% |7 E, v) _5 k
return CWndNeuz::OnChildNotify( message, nID, pLResult );
5 z+ H+ l! ~8 X" c6 Y7 A
}
0 s- v8 L: k( w, s) b3 m2 s" i8 N
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
) |. b( q5 ]+ t% d7 j8 e1 V
{
6 S/ |, D6 N* v# \- X
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
5 U6 _8 d+ m# f0 h9 k7 I
if( bStart || !m_pItemElem )
9 e0 `1 \0 H5 [
{
9 ? o$ E2 u/ O( j% Q# p
pBtn->EnableWindow( FALSE );
& \: a) n4 ? k3 w
}else
' c' u! X# W3 Y f6 E6 x2 q% d
pBtn->EnableWindow( TRUE );
& I6 U( \( X% g# }
if( m_pTexture )
3 `5 s& I% g; k- `
{
: M+ T p1 n" S
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 ^ V5 k" A4 O* x6 j
if( wndCtrl && wndCtrl->rect )
* N" L: `3 f5 E, `' }) R
{
: E J/ V! _% P3 t1 U
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
) l. |( q7 o( w$ b( e
}
1 u9 f9 n2 v' @6 G* y4 _- `- @
}
8 |; z: g `3 o( V4 h ^
}
d' F8 }! [7 O0 z0 y- y, g
7 x, t/ F$ j( L$ L5 {
BOOL CWndAutoFood:
rocess()
) l) b$ U9 R& k1 q
{
# B9 ]4 j/ U3 z( f+ b( v' d
if( bStart )
: j% u# v+ S$ h
{
! U/ D1 w( v9 V
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
6 B! h- E: g, @6 y9 w0 ? M
{
& q" o5 U8 [9 }! f$ z
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
0 b) R" \7 `2 u6 s% @6 Y" P7 M
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
9 V' E* M. v; G6 p% K- A+ B
}else{
/ f" ]! j* i9 }: V
bStart = FALSE;
1 }% t }/ R" |5 i
m_pItemElem = NULL;
# Q" r/ Z( l7 O
}
2 |* c! c/ y2 v) Z7 \+ P
}
3 @3 r3 I# x1 ^9 y- v
return TRUE;
0 K. l. _. a8 R/ {# c8 ?7 N5 D
}
% ^ n5 L M" W1 w# ^
# e8 {% ]0 O0 \. P) o
登录视频废话:
0 d, r# j1 i6 ~9 e- s% U
尾翼:
5 ~2 b( u& `0 H5 D2 G7 a
5 c9 L+ r( G' X7 ^* d
代码:
% z/ g R- O9 A0 K' s
4 y/ ~2 W0 s& D2 C3 B
void CWorld::SetLight( BOOL bLight )
/ Y8 ^' w* G% c% q
durch
- k" g0 x4 f K% n
Code:
0 i. P o7 f7 V# Q: \) O/ r3 \1 C+ m0 B
void CWorld::SetLight( BOOL bLight )
$ T; Q/ o. t+ K: g) m2 s
{
* z& V1 m+ y1 I5 B/ B( g
//ACE("SetLight %d \n", bLight);
) ?' c( r9 d4 k/ D- E" C7 s
8 _$ x, h6 _) y- m5 f
#ifndef __WORLDSERVER
- S7 D$ T T- b* a( p4 S
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
4 h2 E) A* o! x$ P* k5 @' P: R" R1 S6 d
CLight* pLight = NULL;
* ~. q# U5 @( X% V1 h6 s; \0 A m
$ J/ l& G# {: t9 p; _
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
( R! L( [. a, R; ?& Y* f
& W0 v5 e& Y9 H7 F% Y
pLight = GetLight( "direction" );
4 w% V* C% d, [2 p3 L0 Q/ F
" S* c0 E) ?9 A; B0 C7 {
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 E5 D2 `* l p- F* G" s
if( g_pPlayer ){
1 {) T# t0 i4 g: q: n- {4 N
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
( c( j. k$ Q' z0 d& E
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
Q1 D: Q8 O/ p, ]' C# j3 C5 q9 G8 X
{
1 n0 q3 g! D: l: C0 d1 |# F5 }
if( pLight )
! D1 L6 z+ q Q" {' f
{
7 m( L9 C2 ]. ]. g
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
3 f6 m4 d, ~3 w* v0 x
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
, Q( Q. W" y- f, b) H
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
. K: @: Z" @1 [$ f; b1 U9 g
+ |; R7 Q9 f# e0 b
pLight->Specular.r = 2.0f;
R& ~/ g2 K. p! N3 F( X0 F
pLight->Specular.g = 2.0f;
$ R5 j! V/ B+ @' d
pLight->Specular.b = 2.0f;
7 F. m' b5 |# B9 W
5 a- J8 C8 F9 b/ G( d: x& m1 J! J
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
0 q9 V9 h H- p3 k. a
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
0 v% {) E7 i4 E% ^# D' o* Y
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
* ?, p6 \5 I* Z k
9 b# u* i6 I" [( s6 W" j) }5 M/ [
HookUpdateLight( pLight );
- U# H" l; W1 h& ^9 _- p% C
( Y! ]* {4 x$ h+ n7 p- \, u
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 B' ^- ]2 R/ |& e: H
; b |" A5 I k" T9 `$ n# }. a8 h) G
pLight->Diffuse.r *= 1.2f;
0 o9 Y4 g* Z8 H7 S3 C
pLight->Diffuse.g *= 1.2f;
' g$ e% s9 r2 C8 D
pLight->Diffuse.b *= 1.2f;
0 h7 j& f$ S" i& Y! R8 O1 p( R
2 s6 d3 I9 t! f7 X1 |
pLight->Ambient.r *= 0.8f;
" h8 d# W8 _; c
pLight->Ambient.g *= 0.8f;
$ k; v7 ]8 F6 O) K0 \
pLight->Ambient.b *= 0.8f;
8 p- D# q T! [6 ]9 n3 A
$ N2 t+ B* H" m( r; j
memcpy( &m_light, pLight, sizeof( m_light ) );
) q$ ]" b4 |, Y5 D
# J4 c5 C/ R4 U
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
0 R' g: {! @7 p* {7 G2 |* o+ ]0 \
D3DXVec3Normalize(&(vecSun),&(vecSun));
$ ]' L6 v- z- o5 E) T
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 p: J# c6 `( ~' A2 n8 [7 X
pLight->Appear( m_pd3dDevice, TRUE );
& \. I! N5 B3 u& Q5 J
7 \1 N, k4 I* `( Z* Y7 a
DWORD dwR, dwG, dwB;
: r b4 g7 a6 y5 S
dwR = (DWORD)( pLight->Ambient.r * 255 );
, M" c: L" z. f7 N
dwG = (DWORD)( pLight->Ambient.g * 255 );
( L8 A1 T% _0 R/ U
dwB = (DWORD)( pLight->Ambient.b * 255 );
5 D/ s2 ?0 M3 ^8 N
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; c8 ^4 D! @' r0 O; g4 ^ V
}
2 ?% N, t7 X1 U3 C% ^" @
}
F- d% W9 u4 E4 E$ |
}
1 y# [- f8 q) p$ @3 R) l
else
! u" N+ W6 P7 O$ _
#endif
$ I; G& J4 t9 U& e& f7 v! U* E- e
2 }( @0 ?9 G' N @5 R
if( m_bIsIndoor )
' ^0 ?6 ]+ s3 A: L3 X2 F- Y
{
/ W3 a# z) a! D! r0 |9 J7 i
if( pLight )
9 S% G- n8 r9 ]1 N' W: o% Y
{
3 |1 `; a! }4 q- B' a$ ?* j: Q
// à??μ oˉè*
9 U* ~# a6 h5 [) l
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
9 d! A ]7 ?* X0 m, S; H u' q
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
m8 y, V7 M4 S2 m; |; O* s$ X
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
* x+ v9 i E& C( W
K3 t& m; ^3 f7 N
// oˉè* ??à?
; N- B$ _/ l/ z h, i% x1 ]7 A4 c" g
pLight->Specular.r = 1.0f;
- N6 V$ r3 M/ o+ _
pLight->Specular.g = 1.0f;
# |- ]/ f4 a1 y& l$ i
pLight->Specular.b = 1.0f;
; M5 g" `# Q* ~: ~8 X
// àü?? oˉè*
% f: m, x/ S* e. u- M9 r) \
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
" b1 }! ]; a% `2 w i. A$ I
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
: s4 m& i3 ~8 w5 }
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
4 T: g0 f% G$ g' s$ m( q1 o w
6 U; m# a) K1 f/ J: h/ i* g
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
. u* e2 i9 k/ S
{
w0 _! N" l9 i; k- Y0 f
pLight->Diffuse.r *= 0.6f;
# w# l* Q& d7 q
pLight->Diffuse.g *= 0.6f;
5 Y& I9 M& B) O! B$ G* P
pLight->Diffuse.b *= 0.6f;
- f6 [/ H7 v2 Q6 C3 W
pLight->Ambient.r *= 0.7f;
: E( Z. ?* B! e% I9 l
pLight->Ambient.g *= 0.7f;
3 q9 j1 e/ |5 U1 a+ B1 u- \
pLight->Ambient.b *= 0.7f;
4 t% l" d- G, U
}
# ?( {" A7 K! U; x) e' b
* D4 `9 Q* J$ X& ^
#if __VER >= 15 // __BS_CHANGING_ENVIR
) R/ g& H; @8 z0 V) q
if( g_pPlayer )
$ w+ c+ E: B9 L/ q8 m$ V$ n5 k
HookUpdateLight( pLight );
. Q$ ^4 C5 X+ O: w; k
#endif
& c( o. Z" l& ]+ w6 t( W4 X6 P8 D
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 }7 @7 `% n, ?* {' ]6 h, X- h3 I
$ B2 h& o6 g. T' T
pLight->Diffuse.r += 0.1f;
! h- l( A$ J" {3 J& p- x
pLight->Diffuse.g += 0.1f;
( L5 _# U d y
pLight->Diffuse.b += 0.1f;
1 |) O! v: Q* Y) n" _" Z% {
// oˉè* ??à?
; _" g/ H6 _/ p% P. r: ]
pLight->Specular.r = 2.0f;
- d6 p' J7 f5 r1 ^
pLight->Specular.g = 2.0f;
9 |. r" O# U/ |5 j4 }
pLight->Specular.b = 2.0f;
6 \, I" f C0 p j/ i8 U
// á?oˉ
* f5 ^8 T/ w# O5 q
pLight->Ambient.r *= 0.9f;
8 Y8 `& t5 {7 l0 {- \
pLight->Ambient.g *= 0.9f;
' ]; b1 P8 t1 b6 m
pLight->Ambient.b *= 0.9f;
& _8 M# k' T2 y% k* M% j W: l u
' [" i, `8 m) |6 Z' k
memcpy( &m_light, pLight, sizeof( m_light ) );
( p6 P! d+ V! }" e& ~2 W
) h. O/ H, ~5 q5 _4 }& R' r. n
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
# \ f6 k0 a! G) n. h' p
pLight->Appear( m_pd3dDevice, TRUE );
6 x, l# F! p2 G% p
- `' U0 E3 ~! q
DWORD dwR, dwG, dwB;
' ?$ u* x) L( }# ]5 E! r0 r% f: N
dwR = (DWORD)( pLight->Ambient.r * 255 );
* ?7 R, H" W9 `8 q! J6 L
dwG = (DWORD)( pLight->Ambient.g * 255 );
& A Q6 G9 a4 s& o4 |
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 ?0 u- B! D w! v1 V
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- q) x( z& p, y: ^
}
8 \1 v% N5 a+ L3 a
}
. t4 [0 P2 O+ R& a& o
else
6 Q1 y/ ?: _! b6 c& J }
{
" i% ^: S Q9 S r2 ^
if( pLight )
1 {2 F3 q6 `9 G' W& D
{
# ^" c# B# Y& x. D, v0 n
2 w% V, G9 g$ e, Y: y
int nHour = 8, nMin = 0;
- q ~1 |( ~( O- j
#ifdef __CLIENT
! H8 I5 m( b) J" ?0 y% z: G
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
4 N; u! c$ f) b: s( H0 R
nHour = g_GameTimer.m_nHour;
$ @+ h# z9 e% d
nMin = g_GameTimer.m_nMin ;
! J$ u) [0 K) s' V2 h6 A
#else
' J7 m }* Q# I, o" n0 y& s/ }
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
9 Y& I T# ?# @, T- j5 u
if( m_nLightType == 1 )
+ @4 x3 u1 i& \: p4 z# y
nHour = m_nLightHour;
/ v5 b& Y4 c$ q8 |: Q1 G. e# |
#endif
+ [% l3 e- j5 g
nHour--;
! \& S6 Y. P5 H* p
if( nHour < 0 ) nHour = 0;
0 E0 A" `' U( }1 u& P
if( nHour > 23 ) nHour = 23;
& ` g2 |, z: u. R
& W' d" u$ m$ G! p) @
//if( m_bFixedHour )
- s2 z$ m7 B# V( s9 ~
// nHour = m_nFixedHour, nMin = 0;
( j, L: s' \( Q( e4 t
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
$ ?& V2 P5 C5 B+ @* F& x
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
2 N1 ]& B5 x0 i$ K
0 F: i7 k, b# g
//m_lightColor = lightColorPrv;
. y% G3 C8 d1 _8 W. ^# o
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
+ \3 Z; L; d& ^3 x" t9 s
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
$ U9 V( Z0 n p' q
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
- \" \9 i9 U# S, V. T7 f3 o
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
+ K' b+ |) }8 F! E) u7 a
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
. }1 j' N% A4 J3 x+ l7 i# i
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
$ F+ a$ X4 q8 `) e" a5 U3 n
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
5 [& ?+ Q0 k0 K0 X& j0 M
5 {- v# n7 C/ O4 j `
// à??μ oˉè*
* I) s4 k/ Z2 ]/ ` c7 S
pLight->Diffuse.r = lightColorPrv.r1;
* i+ Q# K6 @! r% Y, Q
pLight->Diffuse.g = lightColorPrv.g1;
4 o$ ^! i1 A* ? B- m' L
pLight->Diffuse.b = lightColorPrv.b1;
/ L+ X% H8 G7 V( S" O5 s, M
// oˉè* ??à?
2 m2 M4 C, T7 C
pLight->Specular.r = 1.0f;
: d7 W7 o" A+ l& L1 H5 X5 }
pLight->Specular.g = 1.0f;
& A8 r7 F$ z1 L$ P" D$ Q
pLight->Specular.b = 1.0f;
$ M j/ P- g- \( l
// àü?? oˉè*
0 o6 z- v( i9 z# ~3 x1 p1 d4 K7 n
pLight->Ambient.r = lightColorPrv.r2;
0 e* a1 d: _" H5 ]
pLight->Ambient.g = lightColorPrv.g2;
* ~4 x/ x+ h" l' [! e
pLight->Ambient.b = lightColorPrv.b2;
5 x6 D, k: t6 M( P+ K
: X$ R! J; }( I3 c- i
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
) W: g' X1 L" f0 m
{
1 V1 B1 u8 D" y
pLight->Diffuse.r *= 0.6f;
1 o( I) K+ S/ u' p' V/ t! @
pLight->Diffuse.g *= 0.6f;
8 t. e N% @% z, C+ c$ X! y- T
pLight->Diffuse.b *= 0.6f;
+ S7 c8 {1 ]) R1 c5 V3 i$ A
pLight->Ambient.r *= 0.7f;
% ]' i1 f: k1 p: V! n) z$ b
pLight->Ambient.g *= 0.7f;
5 ]/ L( b& i- Z& T* J
pLight->Ambient.b *= 0.7f;
. @4 M& ~+ q" M) Q5 d
}
6 p; ~; C3 H# J5 g& k
$ t5 d5 d" q" ?" g& T5 g0 K. n5 e
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 \0 Y- h- I$ E
if( g_pPlayer )
+ N! J# Q/ N M* f4 M8 i5 t; r H( ]5 f
HookUpdateLight( pLight );
: i8 j) Q3 e; G1 r4 _: r- ` T& Z
#endif
/ M% o+ p* M& J# @. |0 i
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
( s! P# K* _" X
# ?9 y7 P. ?9 G4 k3 p) U. Y, L, o
#ifdef __YENV
{' l: X, }9 B0 Y
pLight->Diffuse.r *= 1.1f;
2 ]% Q% X4 z+ X6 S2 r! D5 |: p
pLight->Diffuse.g *= 1.1f;
4 r( b) l+ g( w
pLight->Diffuse.b *= 1.1f;
( e1 F! q. x! x! b
// oˉè* ??à?
' |; u$ u" v* v( f( [
pLight->Specular.r = 2.0f;
" ]+ C! P4 R% E! G: D% L8 [: e( ]
pLight->Specular.g = 2.0f;
( E* V8 e) w. y3 }# [4 H% A! x
pLight->Specular.b = 2.0f;
, B2 q5 I" {! J% c4 r9 X( m- \
// á?oˉ
* \) M0 {5 `# z# R+ o3 k! y& U
pLight->Ambient.r *= 1.0f;
: Z' Y7 P2 i1 h+ `
pLight->Ambient.g *= 1.0f;
$ V: r$ X: b) c( `) ], N2 L
pLight->Ambient.b *= 1.0f;
* G% \8 X$ o" W) B! z6 D/ k; V
#else //__YENV
# m0 k7 p2 c7 e" e
pLight->Diffuse.r *= 1.1f;
' g- e2 s4 D5 W" s4 I
pLight->Diffuse.g *= 1.1f;
% C# V: o' z4 t; O1 D$ N2 [1 `
pLight->Diffuse.b *= 1.1f;
4 l$ [+ x/ Q- H, s
// oˉè* ??à?
, M) Z8 T) F; s7 \* ?
pLight->Specular.r = 2.0f;
, L* R5 e: k: y) `* G
pLight->Specular.g = 2.0f;
' O9 ]0 P4 u) v3 ]
pLight->Specular.b = 2.0f;
0 d- \0 C- U! @4 V
// á?oˉ
5 f8 W# m( E% g+ C1 o1 g
pLight->Ambient.r *= 0.9f;
k( ^, x2 M* [: j( ]3 P! [0 h
pLight->Ambient.g *= 0.9f;
8 r; E2 y. ?* m( t: x \0 a2 C
pLight->Ambient.b *= 0.9f;
" j% U. t& t2 D. l' _9 s, b3 X
#endif //__YENV
# T$ k( L1 t& D5 u- ]( x3 Y
6 w# B8 q8 E1 z; ~
memcpy( &m_light, pLight, sizeof( m_light ) );
. G% Y, ~- P* ^; B9 \# l7 Q
9 d7 A5 T0 F! |4 Z" X Z" Y; Q
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
6 {+ G; M% Z/ c$ M
D3DXMATRIX matTemp;
8 k7 l6 P8 [6 V5 s7 U4 m1 D
static const float CONS_VAL = 3.1415926f / 180.f;
: Q" F" b6 c. M7 O1 R! u/ }
. S g" P1 D9 T% W+ E3 t8 S
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# A- f) t: k/ ]5 O# u
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
' _* X! u0 ]6 T) E6 G0 `7 G: o
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
# Z; z6 T! C6 |4 f4 B1 }' Y
pLight->Appear( m_pd3dDevice, TRUE );
( B8 }& t/ D9 [# t
0 ?7 \/ j* m5 _% V
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 U I% n% R0 z: `1 a
// D3DXVec3Normalize(&(vecSun),&(vecSun));
7 c& r: s C$ G4 c( w, o1 J! c
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ N M3 s$ p6 z( g2 n
( u0 J$ K* r* x8 n# `
DWORD dwR, dwG, dwB;
4 Z& t- O3 ^$ ~5 v
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 [: n. j1 V7 b1 }) B3 \+ w7 S3 k
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 a% Y p' K! u- W% [
dwB = (DWORD)( pLight->Ambient.b * 255 );
]* G2 ~! W" O8 u& @7 t2 c7 b
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ a7 F7 R3 X3 b# t0 W- j/ Z
}
! o, R: F7 L' B, S+ d1 F! ]
}
) l. O; l' m* b! ~. D: b/ T
% A5 z/ Z4 R7 B+ d. U+ d9 e+ u8 }
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
0 j( N% q5 q" ^/ u
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) );
7 Y% r4 Y5 Z* ]; Z& O: z) U
::SetLight( bLight );
. _: b% ^, X2 F$ ~' O4 m
1 I' s6 ~ t' P! n. ~+ w6 S! o& w
// ±ao? ?D?í???ó á¤à?
' ?! z+ R4 J" ~0 x8 X
m_pd3dDevice->SetMaterial( &m_baseMaterial );
3 n9 z& B' D: J, E" {
% J2 C. \0 U% T1 ]
#endif // not WORLDSERVER
; ~& B3 @0 s1 j! S: }7 a
}
- `* ~0 I: t4 _: P# p; W( _
并更换
6 Q# i7 L6 }9 J! r; A r9 ~4 d# `
Code:
J& D. w# S) r- U( n/ r
__FLYFF_INITPAGE_EXT
' ^! X! P& w. B) Z) n0 q8 {, L# P
定义
9 X' P9 n# l& L8 l& a" B
! _% t7 f a: E& e& n$ [. M( ~/ d1 _
: H) _5 s+ z; o! @. v1 c
+ ], z3 u- |% k' `
: R5 X5 P. I3 B, P7 Z. Y
现在终于删除我的狗屁加速...
& F' ?/ j: K" B$ ?/ d* V
# U! P! e, c1 j+ r& B2 [ c
! c/ F1 U- n7 w$ s
( r* I( \. m% z2 O* r g8 O
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2