飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
% r' W5 t+ U5 v' @ `! A+ M* ^# n
尾翼:
* q9 @! K* x* L! D v7 \
. x. N0 T: ?" ^0 P( t
代码:
$ g* A6 t1 }) u8 ?* `
CWndAutoFood::CWndAutoFood()
* ?/ N. @$ Y z& p* X
{
3 `0 n: k7 G! }0 i" o3 t
m_pItemElem = NULL;
3 k6 N5 x/ V Q6 K
m_pTexture = NULL;
( O H# N a4 J! m, S. @( i9 r6 c( m
bStart = FALSE;
3 N7 @. C' K. U' J4 @
}
7 ~/ i' ?" J! g# B! w Z
* m1 j X+ t; Y- p
CWndAutoFood::~CWndAutoFood()
2 P% [! T& F% a) ]. N$ {2 m
{
6 c$ u4 M J$ i8 A
AfxMessageBox( "AutoFood ist gestorben
" );
- g2 n! X/ d) S
}
: O- t) v0 q4 Q
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
( n0 l3 y0 `+ Z: @! J
{
% V+ U1 b% y& M# M; `" F& ~0 Q
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
0 z7 w" Y) u* `
}
* S' E; w6 E2 R6 T: }
$ i) E! E# x2 V: R5 M [) u% o
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
9 H, b# R9 d- U, Q5 I& z) b
{
* J1 E, _& X% w% Q
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" ]: f+ Y# a& W$ s# b6 g
CRect rect = pWndCtrl->rect;
7 J" w$ D, W8 n4 N% Z1 K+ W
if( rect && rect.PtInRect( point ) )
B" Y) ]0 ? Z# i6 R9 s+ Z6 C% D$ ]
{
& ]8 H9 C( g( s! P# l
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
. ~0 U5 }7 E' B+ W# {
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
1 P7 S) Z9 Q9 D |; X
{
5 D; e7 f/ t* ~
if( m_pItemElem )
, C0 s- _, m) N; g
{
, b! V+ L S" @- B# o) _
m_pItemElem = NULL;
4 R H3 i& p; J( c6 b7 r& S8 I6 e7 x
}
- @! O8 ^7 @" q6 n. ]* }/ z
m_pItemElem = pItemElem;
/ ~+ q. T. _$ L
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
( E' T3 A- r- w* U) q) v' e
}else{
) G: v9 d$ r/ b a* y
SetForbid( TRUE );
1 ~" Q, j4 D6 H& V \2 j0 {
}
9 w" |4 z V2 R+ O. {
}else{
6 y: l" i% h! q% H% @/ ?9 k, J, e
SetForbid( TRUE );
8 j- Z% X5 S) @0 D
}
2 g8 j7 }. G6 p4 G
return TRUE;
: k2 P4 Y: x5 Y# I4 f) u
}
4 V! f( J! T$ i; u* l* e4 ]6 E
, g+ O0 L1 ?: ]
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
# z1 Q( h w6 ]+ Z/ O
{
9 u, U* ]4 Y( o) A* O/ Y& w2 X
switch( nID )
9 b* n- |0 D3 H9 W) k$ R
{
0 [" p8 n. T9 O1 _( j8 j/ n) ^! e1 l5 l3 U
case WIDC_BUTTON3:
( T9 y: g- C N9 u
{
* W3 I, @& N; J3 i( [1 T, A
bStart = TRUE;
/ ]2 J8 B2 l- u
break;
4 x" e9 y; W1 _6 u, A
}
6 P4 M- q% v' g; b9 b
case WIDC_BUTTON4:
# {! N" Y! {3 Q/ z. p3 ?- R( s
{
# M; c1 v$ t8 }3 b
bStart = FALSE;
2 |" f( ]! q7 k% E7 [2 S! S
break;
2 F5 g0 R( p Y+ N, s: v* U
}
( y+ c1 E2 d! H" N
}
5 F, ^* g3 _& \$ N, ?6 I
return CWndNeuz::OnChildNotify( message, nID, pLResult );
+ S. [, a* m3 @0 D
}
/ u. z" \/ m7 y7 e; o
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
2 M% [( o3 X8 W; Q2 \3 z3 l- I
{
1 K, f, a; R! q
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
$ e4 O- ~* [% V' _1 J+ z
if( bStart || !m_pItemElem )
0 W& H$ X$ h' b% M F0 I
{
8 u. d* Z2 d) q
pBtn->EnableWindow( FALSE );
6 {$ m, z- L: I6 z: @. ]# }
}else
6 ]0 _6 r% D a9 t
pBtn->EnableWindow( TRUE );
4 _0 i0 e& @9 h) Y# ^! P
if( m_pTexture )
& \7 O" E6 o% C4 K7 b4 D+ y( ~
{
& y1 n5 X0 B- b: s* H
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
4 [$ f% \! I5 ^1 }: V" m/ G2 F
if( wndCtrl && wndCtrl->rect )
3 o7 f) y/ N- b) k$ _$ O
{
4 A+ u, _3 v% U l4 A/ L# H9 p
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
2 I! y' L( j c1 o( q' h1 o
}
( i) _. O: G/ j3 l
}
$ L7 ]: q& }2 ~4 v# [! N
}
( \* C1 n' P+ W
* i1 w/ ^4 X. v; @; o6 E- I
BOOL CWndAutoFood:
rocess()
* Q6 v: U* u e$ g$ [5 H' k
{
! `$ P$ Y; ^; L, q+ t
if( bStart )
4 x& f% P6 d3 j3 J( _- c* W
{
* ~$ P$ `# K4 i. J
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) D a# Q) @' f3 n# W$ y" Y
{
# {$ M' U/ K+ D4 V
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 H% t7 m. Z: Y6 p% v. Z" L
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
* Q+ [# @7 {+ }
}else{
5 J- X. ]2 Q8 m! T; ?# O% ^+ R
bStart = FALSE;
3 e) a( b% w5 m* p1 |- X0 w3 ]
m_pItemElem = NULL;
$ o& d. B; X5 Y& X
}
3 B- w2 m1 _. W; H8 w7 I
}
* g$ t+ h3 f, B
return TRUE;
: z# c( D3 {/ e' P& b
}
- [' s. V4 w# S+ N9 F' {. c9 Z
+ ]' v2 ]/ y4 P+ o9 P
登录视频废话:
( i0 l* {- R# c( I' I- |' ]8 v0 E
尾翼:
3 b8 \0 Z" y4 P. E0 P
' T. ~7 ^& Y) [4 P$ E
代码:
+ T" d5 B* Y8 p! @
4 m! C" C; l5 l1 a% e: K0 y6 W
void CWorld::SetLight( BOOL bLight )
; N3 Q" z$ R- D+ e% i0 |
durch
# u2 l" F& U2 n) P' Z' C
Code:
1 S$ X" V, j% M& b" c2 v
void CWorld::SetLight( BOOL bLight )
! v; j) u8 B: {( g$ H+ a
{
2 {0 { [2 i9 V. v( ]( q$ I6 A5 g
//ACE("SetLight %d \n", bLight);
8 h& X$ e0 A1 G* }
. t; J8 W' j# L! E; @! X6 N
#ifndef __WORLDSERVER
+ @; t. Z2 l% Y- X- z+ | z T. N
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
' ~; X" b0 C4 _0 n. F* C
CLight* pLight = NULL;
% m" `$ B6 N. w. Y0 h
3 U1 K8 }- v8 I4 T/ a
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
1 }) D% J) z# `/ z
% B; D# k- d, d+ n/ s1 C. j9 U$ d
pLight = GetLight( "direction" );
& A: D- M0 n/ h! g% s
5 i; o6 i7 D% _# Z. `2 z$ o
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 u; _6 ?9 I9 p% P
if( g_pPlayer ){
: R4 V9 x) k4 x* [, \* B
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
4 a7 a1 F+ v% h2 ~4 ]" F
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
; \4 u7 A8 @9 k( Z& I
{
0 y7 }5 |: P$ A% R1 w
if( pLight )
) y7 H% `! O! b" Q% N ]. d
{
; l+ Z; V7 t( \9 r& [7 T, M
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
4 K# X, U8 O* o* B5 s3 x, x
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
/ M9 y1 r# d0 d' y& N
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
' X! I$ K* K1 X7 }2 T: e. _- n- B
* |" W3 J3 _- U6 k C1 ]
pLight->Specular.r = 2.0f;
! d0 G0 @6 Q' Y6 A- D5 C
pLight->Specular.g = 2.0f;
2 N5 Z4 w8 y8 l Z& B0 J. w' A
pLight->Specular.b = 2.0f;
0 D' O6 t6 M b, U
- k9 s% m0 D, ?% L- R
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
0 L) |1 q# I/ w: U/ v2 o- U
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
0 ^4 y$ s! o& |5 D
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
7 h3 w4 H8 N( x7 ~/ a' n \
# i% k: X# h! C, i* `' |! x! W
HookUpdateLight( pLight );
, L$ m) [# e7 q$ K. W7 j
/ c! [2 w0 _4 @0 c2 R
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 {( G ~% W0 Y8 X; q, p K' f2 J
+ U& F( x, t p7 K N
pLight->Diffuse.r *= 1.2f;
$ `/ K3 \! ~. k' Y! @1 j
pLight->Diffuse.g *= 1.2f;
9 M0 t I+ G2 l D( j q+ r2 S
pLight->Diffuse.b *= 1.2f;
) t5 {/ ?! @& r% F: c" D
( N' _$ q) Q) |6 ` v5 a! b
pLight->Ambient.r *= 0.8f;
' Z) E' ]% V; h
pLight->Ambient.g *= 0.8f;
3 O A2 ~1 X8 ]+ X+ K
pLight->Ambient.b *= 0.8f;
4 l, l1 Y0 B" Q! g5 K; \; O
5 w$ D0 o* j2 c }
memcpy( &m_light, pLight, sizeof( m_light ) );
) b, D3 V8 c4 B. }4 Q
2 D$ Z. P4 j! ~
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
6 w( {3 C6 z+ D) O9 U
D3DXVec3Normalize(&(vecSun),&(vecSun));
' x* K" O: `/ f9 J% j: V: f
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, v8 H3 j& U2 Y4 ]8 {6 h
pLight->Appear( m_pd3dDevice, TRUE );
0 u8 V2 V0 N2 U- ]7 J
1 G, F4 E- l1 R; n' E- N1 k/ b
DWORD dwR, dwG, dwB;
* E& c, I6 a& b$ _1 ^
dwR = (DWORD)( pLight->Ambient.r * 255 );
! [ `$ w! W1 B9 q; ?
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 ^. y3 C% P" {" W
dwB = (DWORD)( pLight->Ambient.b * 255 );
) S$ n V9 q1 b. E8 T0 I' n
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 ]4 [" X& ` x/ a
}
4 z8 K2 U& [7 O6 c1 L9 P# `
}
% W& o6 y. O! x/ r) s
}
# f* ]9 m- p8 ^. z5 u! g' Q9 l5 G
else
& N8 M7 X, H) F1 `
#endif
! X# S9 M! \0 @& P# x
8 r" ?. f/ I5 q. h
if( m_bIsIndoor )
4 N& w# A. j4 r- [; j1 t( q z& f3 K3 t
{
/ e1 G5 Q2 Y( p
if( pLight )
2 t2 g, R" H3 Q8 ]
{
1 q# y/ Q" }1 f3 n5 R
// à??μ oˉè*
4 A0 O# I, d Y9 O( I
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
4 n ?; F5 n+ } ]; G) r
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
) [& T+ y- U/ Y- \
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
; ^1 p! O2 C9 n
" E7 g& H3 q* C; F$ K5 O& W1 E$ G
// oˉè* ??à?
& V1 T1 H, A! p5 x) F" A2 W. t7 X
pLight->Specular.r = 1.0f;
% ~- w m$ u. d8 y+ j. B5 l) ~
pLight->Specular.g = 1.0f;
7 U" y! u g! A! o9 f9 ?; R
pLight->Specular.b = 1.0f;
' v/ e9 o! C* X4 q4 K
// àü?? oˉè*
) }1 o+ |% i+ p' S/ }: K. G
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
* r3 A! Z/ \8 I2 ^4 B
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
# f5 T3 F X7 S& l
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
( Q" J: X8 J1 X6 x
Y1 l* Y. _ H1 [$ V
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
6 m* y9 V' u5 {9 L/ N
{
! n5 P7 {) `- P7 B5 K- @( t1 ~
pLight->Diffuse.r *= 0.6f;
5 V, I' m- l( W
pLight->Diffuse.g *= 0.6f;
# h+ {2 F0 g4 ?4 {1 k/ n
pLight->Diffuse.b *= 0.6f;
# Q2 B2 m7 W, f* ?
pLight->Ambient.r *= 0.7f;
$ r7 [: @+ O4 ^$ A4 H
pLight->Ambient.g *= 0.7f;
0 ] g$ b. u; Q2 y; j: D
pLight->Ambient.b *= 0.7f;
+ e \5 R( ]5 _ H( F
}
) S$ R: s" z2 z
% z" J( D' H% X$ }& b: Y7 c9 d
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 }/ K7 Y; \; ?. o7 S% { m
if( g_pPlayer )
( O- C5 i) v7 r' O
HookUpdateLight( pLight );
6 }- l2 I, D6 [; e1 K5 w
#endif
' N5 G O4 c" [& |9 z4 t
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: E) |$ \, X- J% E
5 b! O' z6 {% p7 d5 G/ b
pLight->Diffuse.r += 0.1f;
9 O& }$ F( o1 q. H
pLight->Diffuse.g += 0.1f;
! K& P6 y3 c2 o! r3 w' k( T: M
pLight->Diffuse.b += 0.1f;
$ C$ q" K( v& a7 t# ^ O) h$ I
// oˉè* ??à?
$ m. K! c' e7 _" s7 w; Z
pLight->Specular.r = 2.0f;
) l2 h/ ~, a# o9 _+ r+ l5 J6 L& ]
pLight->Specular.g = 2.0f;
3 r: y# I$ f7 V0 v$ W: @& r+ j m8 x
pLight->Specular.b = 2.0f;
0 `: a: ^7 t% q: p7 i! @/ H+ V$ w
// á?oˉ
5 [/ L9 U( }+ a3 A3 n' w, x6 R
pLight->Ambient.r *= 0.9f;
' T4 t6 T0 r# |
pLight->Ambient.g *= 0.9f;
! a5 c$ t; | h4 L. Q H
pLight->Ambient.b *= 0.9f;
) p; ` S! I* J4 g
, D" o1 P$ y; t2 D: E3 q) ?
memcpy( &m_light, pLight, sizeof( m_light ) );
0 }% Q! z4 l/ h8 p# c/ n# M
' S/ m6 N: I2 c' ]& L x
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
# A1 t+ E) a6 Z3 I: J8 ^+ J4 }' ?
pLight->Appear( m_pd3dDevice, TRUE );
: }: y6 v/ R+ w% I5 L) p; { P
/ o- \1 }4 m9 K3 _: F
DWORD dwR, dwG, dwB;
/ ?, I/ K0 o/ Q% ^1 T
dwR = (DWORD)( pLight->Ambient.r * 255 );
" _3 ?* q F3 n7 D$ m
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 S {4 G' Z9 q3 K
dwB = (DWORD)( pLight->Ambient.b * 255 );
& v5 s& |% h. S* u0 h
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 a+ ~0 l4 a v& E* Q& Q5 v
}
/ t: H& ~! S3 V2 u% V9 r
}
4 [/ K/ m; ^0 O% s, n& F
else
; t d+ M6 Y3 r$ f" Y7 @; N
{
5 W- Z; k/ R/ S6 \, X0 T% \) Z1 |7 ^4 K d
if( pLight )
$ z$ Y9 I% Q! Z7 y( K
{
0 q! z. f! d. Y8 m5 C6 g# i) }
( x* M- ?, T, D. P! `# f( ?0 w
int nHour = 8, nMin = 0;
( h1 o2 U9 d0 _; {( R- ^
#ifdef __CLIENT
5 e8 d) ?# z4 B- u5 k
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
E1 k( u, C9 c" l1 F4 p3 L* D
nHour = g_GameTimer.m_nHour;
5 W1 r' N# c7 B
nMin = g_GameTimer.m_nMin ;
) j2 u! b) E" A/ H
#else
& s- C* V2 v. v5 R2 E% N" K$ H
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
1 }* U8 I& f% ~% R0 S# k
if( m_nLightType == 1 )
]- ~( u- H1 p: \3 q* R( H: ], ]( v. S
nHour = m_nLightHour;
; _. M- |4 e3 l4 D! _9 a6 e
#endif
6 N; e# l9 o8 [; N" J
nHour--;
$ e7 a* e% h0 R7 w; |% j1 E8 N
if( nHour < 0 ) nHour = 0;
0 ^* I1 C# ]+ H2 [0 w
if( nHour > 23 ) nHour = 23;
0 T }* ^# E. J f4 ^) e0 i
g9 X4 z, `6 V' J" {
//if( m_bFixedHour )
+ X% I3 Z" `- N
// nHour = m_nFixedHour, nMin = 0;
. @3 K* G0 t$ k% x$ P, y
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
7 @5 u# |3 ^1 [5 J7 |
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
( ^- ^" Y, `1 y$ T$ T- N
: z9 D: s; P9 n% o8 d# l
//m_lightColor = lightColorPrv;
$ `/ c9 e. x' F- p! S* H8 e5 T" x
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
# G3 H* j' o2 o! |9 B
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
0 C* f2 h& a0 Z8 o: N# \2 e
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
2 d9 T3 k4 c( S" I
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
2 u8 i! M- k1 k7 V, b( O: S* \3 ]; H& o
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
; i: y1 {; y# d, C' L4 Y1 @
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
; e, p& L& n6 ]5 m, \
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
7 N9 \3 a) u- T ^
" @+ d$ g! z0 o8 E; n
// à??μ oˉè*
$ w) R8 v5 E" Q* o; B$ G b- ]
pLight->Diffuse.r = lightColorPrv.r1;
5 J0 E9 z5 v1 U: A7 V
pLight->Diffuse.g = lightColorPrv.g1;
3 C* R! B; _) y9 n) n* ]
pLight->Diffuse.b = lightColorPrv.b1;
* Y9 s- O. A5 Y' k& ~/ W
// oˉè* ??à?
i% j3 c' ~! C( R
pLight->Specular.r = 1.0f;
- z. D" i$ e0 x' t) G. {
pLight->Specular.g = 1.0f;
# k3 w* T) X% N& G/ G3 m
pLight->Specular.b = 1.0f;
; c4 n; h/ u% u+ q# s
// àü?? oˉè*
) T: _. h2 w9 F6 ?4 u/ X/ @- m
pLight->Ambient.r = lightColorPrv.r2;
7 `% }4 S _, b! s+ P& Q
pLight->Ambient.g = lightColorPrv.g2;
, I( i) @8 ~) \" i
pLight->Ambient.b = lightColorPrv.b2;
6 p0 U6 B0 Q/ C
2 l2 M# g# T2 P4 O5 E! |8 g0 z
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! K; h7 ?9 l6 | r9 q. ?
{
* P4 t$ j# I+ V- x% d6 e
pLight->Diffuse.r *= 0.6f;
6 j8 K: e1 k1 _3 u
pLight->Diffuse.g *= 0.6f;
3 I, W) X" R0 g. ]/ w, U+ {
pLight->Diffuse.b *= 0.6f;
' g3 f2 l* S- G: `' S2 x! z" r
pLight->Ambient.r *= 0.7f;
. v* N/ t% Z' k) E7 O( s- M, t4 I
pLight->Ambient.g *= 0.7f;
. e# s8 l5 C% [) _9 @& q/ x
pLight->Ambient.b *= 0.7f;
( O; w" d" {2 y l9 Q7 A
}
" n* ]5 x' @9 N! t
) D/ p, |& [6 Q" J x) O
#if __VER >= 15 // __BS_CHANGING_ENVIR
" J, s3 p! v! }8 A3 M
if( g_pPlayer )
$ P* H+ `- N9 P$ e, F
HookUpdateLight( pLight );
! o- |+ M" \* y5 T; A9 i6 r
#endif
! O l0 k9 X8 t, T3 j
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# V" t- C& L' H5 C8 Z% G
( g* A3 s4 Y4 g% J7 U; y
#ifdef __YENV
( v: ^+ C H. K
pLight->Diffuse.r *= 1.1f;
2 }2 n6 |/ L9 H
pLight->Diffuse.g *= 1.1f;
/ S6 e! P" v6 i+ C0 Z! H4 O: L
pLight->Diffuse.b *= 1.1f;
3 w0 D) h: y2 h2 S& u4 L( ^
// oˉè* ??à?
L. y$ u: }. z- L! ?
pLight->Specular.r = 2.0f;
* j/ d3 z/ ~2 F% @& g" h
pLight->Specular.g = 2.0f;
& V6 g# O% k. A' H: c8 w! I
pLight->Specular.b = 2.0f;
/ F2 g2 G* x8 D3 n
// á?oˉ
7 Q; R3 v w1 A( A$ J. U
pLight->Ambient.r *= 1.0f;
0 p$ K7 l5 {+ d
pLight->Ambient.g *= 1.0f;
R: i m. @$ W
pLight->Ambient.b *= 1.0f;
9 j+ A# \ K; E, {6 t4 d
#else //__YENV
W" S6 Y, K% l
pLight->Diffuse.r *= 1.1f;
7 E( |) ]3 }" t& \( T! G3 R# N" K/ a
pLight->Diffuse.g *= 1.1f;
: |) p5 H8 E/ B8 j
pLight->Diffuse.b *= 1.1f;
+ F1 @$ e" \& n; D7 Y
// oˉè* ??à?
8 g J4 d6 J3 Z. K% V {! o0 m
pLight->Specular.r = 2.0f;
8 o6 W/ l+ l4 D x) Q- q$ }8 J
pLight->Specular.g = 2.0f;
6 [9 |' P1 o- I7 s: T
pLight->Specular.b = 2.0f;
) a8 M5 x: m) A
// á?oˉ
5 s4 |+ p. U. J8 _0 V& w3 h
pLight->Ambient.r *= 0.9f;
5 }6 t* u1 m1 S; ~ f7 ?3 }1 \+ ?
pLight->Ambient.g *= 0.9f;
4 D; I8 ?( E. d8 c9 O9 Z6 N
pLight->Ambient.b *= 0.9f;
% r9 J1 h# q* I
#endif //__YENV
; k8 Z- W' V, k5 x& B
, t6 c8 Y' d) K
memcpy( &m_light, pLight, sizeof( m_light ) );
: {7 O9 ]$ z+ U6 |! C" \) J
! L m( A9 ]/ R; ?, d
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
0 G+ ?7 r* n; W$ Q
D3DXMATRIX matTemp;
8 H: ^2 @, A- }) r, |/ \9 ]% @* R
static const float CONS_VAL = 3.1415926f / 180.f;
7 @2 c- [- }- \2 I, T
+ v$ S2 \. t( u: `! \% |
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
: @1 g& O& [/ M6 Z0 T7 z) G
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
8 T+ `, p4 B- g- u1 l
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
; E5 D5 ?4 ]# t
pLight->Appear( m_pd3dDevice, TRUE );
" `$ \. ?! l U) G
& g3 o/ D* X0 j+ m+ ? M
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
6 q% Z/ l* Z4 A. U3 ^9 b0 E
// D3DXVec3Normalize(&(vecSun),&(vecSun));
( \8 D# I- z4 z2 _" S
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
8 ?' V; j% l6 s5 B3 {- s. ~6 R
* F* s+ M+ z% V2 B% h: F
DWORD dwR, dwG, dwB;
% G; ~# r |. x0 ^
dwR = (DWORD)( pLight->Ambient.r * 255 );
: I8 G* ]0 s6 t0 o3 Q0 W
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 i `& D) w+ o
dwB = (DWORD)( pLight->Ambient.b * 255 );
; s# l( j! i. ?0 {- ]6 m& C: b5 A4 _
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: M# E' N$ y# Y' u/ D/ R8 _
}
" [( M6 S% y. ~8 Z) T5 s
}
% k3 ~ ^& E/ P8 @! |5 S
3 M# o8 h; C& T) i
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
( H4 B1 C* G$ x# D9 [' c: F
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) );
: V1 \2 \/ z5 f3 g9 l2 k
::SetLight( bLight );
% M! _/ `8 q) a! S9 g
, l+ O T/ E2 g7 M! s
// ±ao? ?D?í???ó á¤à?
7 _9 L2 y" c( b8 r0 U( E
m_pd3dDevice->SetMaterial( &m_baseMaterial );
2 a7 ~$ H8 H7 I9 t# F! J
# M$ w% z+ m6 y2 W
#endif // not WORLDSERVER
. |$ n/ Q0 P9 y1 m( v/ }
}
$ C9 ~# D4 `, U) o/ }
并更换
5 }3 i( V1 N! R: U
Code:
; K9 S3 [( m d3 ^
__FLYFF_INITPAGE_EXT
9 e4 O+ @6 ~: |9 P: c8 `
定义
5 G3 x3 W/ U. w
) G. ?! D; p- p7 D0 E5 N
$ b/ E8 M" o: b9 G1 B- Z- [
' D7 l2 p$ e8 q# @6 b4 G
& E! S- C s% a+ I: C2 P) ? q8 m
现在终于删除我的狗屁加速...
% T9 R6 R' V) ]3 H, K
. L/ i8 f# K3 J" w3 w3 C. ?
7 C, ?" S- w8 A3 ~ r, ?, R
# D: x, G: k# _/ o3 G
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2