飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
/ k1 J7 y" y6 X; f. `
尾翼:
: z8 E4 D! m6 w l, l
7 ^6 W! n* }4 V; ?$ q9 G1 |
代码:
/ e6 j$ D: w& B8 v, y1 y
CWndAutoFood::CWndAutoFood()
: N: G( {0 X6 i7 ?8 o( X
{
) @4 P$ ?/ R* _5 B
m_pItemElem = NULL;
* |7 t/ @' r; M* A5 z( v
m_pTexture = NULL;
! W7 Z7 x1 D1 n3 M b
bStart = FALSE;
, T% t, d3 M1 F; K# e1 E
}
+ h" p: k/ r& } {% e# Z' \
3 w1 d) \8 Q: u
CWndAutoFood::~CWndAutoFood()
/ m# \7 y) y2 m) d8 w, ?5 g7 {+ f
{
' u8 s, d& y# Y. C$ j/ C
AfxMessageBox( "AutoFood ist gestorben
" );
) T& s, c0 H1 H" V" j1 N
}
' @! G- J8 N/ T5 ?' m5 [
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
* Z0 _+ _6 [* L& z
{
. ?3 a' A4 R" }8 b* s; K( S
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
7 T5 [9 {& _) s4 I8 _; j
}
" g; I0 H9 h) w
- P# B0 D7 I9 o# I$ a+ {
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
& T J' @5 u X) S
{
7 N, Q: l& W; D
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 B8 P }1 A; w2 { {! i3 W8 S# j
CRect rect = pWndCtrl->rect;
# g" `8 ^, R0 r2 j6 ]3 p4 I
if( rect && rect.PtInRect( point ) )
9 n+ J- v$ Z3 B" ^8 ~4 I9 G8 `3 h
{
$ y# S4 r2 ]2 C \; @- s5 B5 Z! N
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
: d6 k0 B; ^, A4 @7 m3 i" L
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
& R0 @1 w6 F7 B% m* |. d$ i3 u
{
8 }+ T/ i4 y e1 g, Q( [! [( d
if( m_pItemElem )
8 l0 e5 B& c5 p2 H; U
{
& N: d" _# z4 @- u- M& ]
m_pItemElem = NULL;
5 o0 x2 L5 I5 u
}
4 _, h1 m* p5 `7 E4 I, J/ X
m_pItemElem = pItemElem;
; I2 W) {( p' K: ]! P8 f
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 i( O! L5 t& o$ Y& ?( e2 f5 Q
}else{
( d Q/ |! l" d1 N
SetForbid( TRUE );
- s9 P6 D. f @4 ^% g
}
5 b5 f9 b3 q8 { i! Y$ P' H3 A
}else{
! G. m4 s3 Y# S( n4 s( a9 [
SetForbid( TRUE );
! i! J5 ?. G% ^+ c9 Y5 w0 G
}
( s* z+ V$ h, X; d
return TRUE;
% W3 z8 n9 n8 T* K6 h- B4 X
}
" e( G) X7 j* p1 J6 Y+ w" Y2 V+ ~6 H
( R# t+ }* B' O5 { M% z
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
# s Q* b$ b" I; A0 d* j, b5 p% r
{
3 v7 n j# P5 Y1 f' B
switch( nID )
( Y; ^$ K; f& X5 _' P+ B" m
{
6 @' W, E4 x0 t' \7 C8 |# w9 S9 o
case WIDC_BUTTON3:
' ~4 X L W, B( P" \
{
; P0 v3 M5 v( S3 b
bStart = TRUE;
y1 y; |# o( u; u/ y- T
break;
1 s. J& |2 i6 B. S/ E& o+ T1 w
}
6 r7 C- [7 \3 a. U+ f
case WIDC_BUTTON4:
0 x T! b$ x9 C( u0 M s
{
& p8 P' @$ S d& C! X: R
bStart = FALSE;
" |. x, i& b2 N4 e6 y! g5 D0 z
break;
, N3 J. }2 h' ^8 z6 e$ W$ W! K
}
2 U( r. P& n. J2 }
}
$ |; M! W6 R3 G& D5 O3 F' E0 D
return CWndNeuz::OnChildNotify( message, nID, pLResult );
& j F: Z( P* v" z0 t
}
/ |, |6 o* |; O- G* R; b
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
6 T: w6 Y$ s. h
{
3 f2 M" _/ P5 b) f0 N; m$ ?
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
% z8 L# r9 j' m
if( bStart || !m_pItemElem )
8 I% O; o7 a$ M& C. Y) N. H
{
! j* ^. g$ Z: U& B% B2 W+ ^' ?" q
pBtn->EnableWindow( FALSE );
, h. ]3 I/ U! K, ?1 k
}else
0 N5 X1 b1 L" Z0 N6 {6 F
pBtn->EnableWindow( TRUE );
4 D% {# K0 c% c) K& Q* E6 q1 u
if( m_pTexture )
2 {2 B. w) A7 `, {5 T8 m% ^
{
, d+ l+ L8 ?8 M
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
$ i) Y: J# E! H, Q! \- i9 L- F' f
if( wndCtrl && wndCtrl->rect )
3 Y1 {& v. h1 U2 Z8 Q
{
' l6 r8 w. m9 L9 U8 L2 r
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
, U' S# S: Q% }
}
* s8 X! [% w) s/ U
}
: X, p: ~ I% Y, ]+ a" a
}
" `) Z& p. U! V
3 g% |2 ?3 h0 G3 A$ r8 Y
BOOL CWndAutoFood:
rocess()
" T; V+ Z: v& F4 i& t3 i
{
1 b3 K- q f4 l3 q( s9 ~/ d
if( bStart )
: [" N) X+ c4 `/ Z% L" m$ @
{
/ b9 z' p/ _ ~1 ^! f h# x" M- T
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
' Q1 j: _2 u% |0 L
{
) B1 y/ D1 q. B/ O7 P8 X: a3 I3 m) i. 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() )
% ]9 L9 r- m" \' V9 b3 K/ h/ Q' {
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
$ O3 |& k8 K0 T* b
}else{
1 s4 R4 q% o) [% Y6 B' ?& g% z3 Q
bStart = FALSE;
' D: q7 \- }* \ p9 o3 T
m_pItemElem = NULL;
* n, J$ c7 z) J* k! M
}
4 R2 V1 N6 ~, d7 d) N+ H) _' q
}
[. L/ V$ ?0 n5 C
return TRUE;
4 ~: Q7 [. e7 O* F* H
}
' [( n8 |9 q" G- M( S/ M
$ p# m5 `# }" z6 t. q
登录视频废话:
0 x) Z$ R+ i4 N
尾翼:
, O4 Z6 y' }" p& w& c
( F# H; p3 M* i# g' ~) H7 |: b
代码:
. r, H# g& W/ g" B: f) e% \4 H
9 t$ y- o2 t: x
void CWorld::SetLight( BOOL bLight )
6 C2 ]3 o( ^; X
durch
, ^; `, }3 Q2 N. T# B+ R2 T
Code:
5 m) p: R% H7 j$ W% [' }7 l
void CWorld::SetLight( BOOL bLight )
, u! N, K7 z8 N! h* P" P+ @
{
" E! v" {* x2 V8 J. Q
//ACE("SetLight %d \n", bLight);
% a4 H% Z" U' s {3 z% q
: Q5 g. Y0 H% y' Y
#ifndef __WORLDSERVER
% R6 C3 j4 B7 ?3 \ v
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
& t3 _ k! q7 O T3 Q/ W) M% R
CLight* pLight = NULL;
' g& y$ ^( Z/ E: a1 E: p5 k1 S8 V
- X" F. Y# f+ Y3 e7 m( K
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
9 e4 R3 o4 O7 w
* u* }/ [- [6 O3 `- Y" f
pLight = GetLight( "direction" );
+ C2 o m0 E+ A, I' H X7 U4 S+ f
! m0 j* \9 o0 U& o+ Z+ R$ W
#if __VER >= 15 // __BS_CHANGING_ENVIR
' A/ V" _5 R% R- Q- V
if( g_pPlayer ){
! E$ \; o+ x: E% g
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
9 S+ D* a; {1 R/ L" u/ J
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
$ o0 m6 i9 \$ }* S4 y# ^
{
* E$ g8 d6 Y# s
if( pLight )
4 C: F7 O( [0 n7 t5 M3 I/ s: H
{
3 o a5 ~" y6 r7 l/ z" L6 D4 t. J
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
' g% x$ a' b, r. r$ k2 P
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
" f( z, L. o* k6 Q8 b& n2 A
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
. q. c: G: D8 a3 O u
2 y7 | O; x1 _9 g1 D4 C* Q
pLight->Specular.r = 2.0f;
8 D( k2 C1 h( k' v/ Q
pLight->Specular.g = 2.0f;
* l, Q1 i/ x: j
pLight->Specular.b = 2.0f;
4 l7 L, @' a: W4 v. j
. `4 U8 p: b0 e
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
* [% I/ d) F7 [0 k2 @+ E( k+ w- M
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
) M) k( m' ^5 ]$ z5 j
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
/ q/ n& `* \; K* ~! d8 L3 [; N
# F V+ ]: ^4 m. p ]* Q0 T
HookUpdateLight( pLight );
|4 T. P& i% F+ i
, k6 \1 [* g: p% x3 P
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# S; |: {! Q2 ^
% J, w% x9 o* W% G3 C- D
pLight->Diffuse.r *= 1.2f;
( ?# G( O% C$ ?) k2 q9 Y: ]
pLight->Diffuse.g *= 1.2f;
5 U K" t0 y* n
pLight->Diffuse.b *= 1.2f;
$ @$ R* y- }& z; M) _; |! ]
: |0 R7 G2 r+ M$ {# X1 X1 M" m
pLight->Ambient.r *= 0.8f;
4 p" r; m# y/ i" `8 K/ V* ?
pLight->Ambient.g *= 0.8f;
8 z2 Z( k B* d+ ^1 R1 G3 d$ {( ]
pLight->Ambient.b *= 0.8f;
3 r+ a) _( s7 u) Y- c! a! j. _
0 [7 {/ k) B: _0 S ?! d5 {
memcpy( &m_light, pLight, sizeof( m_light ) );
3 H v( W+ u2 q( B/ U
4 m5 h& d2 i$ ~
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
+ {8 d0 C1 x0 c' ^* k8 C! j" V2 l
D3DXVec3Normalize(&(vecSun),&(vecSun));
0 S* O5 g: X3 Z* g* l+ U
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
7 g0 z6 L" [6 n3 D U/ v0 `* }! N
pLight->Appear( m_pd3dDevice, TRUE );
' D7 R+ {$ ?% ^/ V' P# Z4 F% a) P9 O
7 X- b L& I7 ~8 s6 |! r, ?
DWORD dwR, dwG, dwB;
. x) b: e) z# T& N/ ]5 B; k+ x$ P
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 ]3 s/ j* {1 k: R, | n
dwG = (DWORD)( pLight->Ambient.g * 255 );
" A1 i: s, @* _; L% E6 |! l( G; s
dwB = (DWORD)( pLight->Ambient.b * 255 );
) j+ p* ]2 ?. q- t: A1 h# {2 A
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ z3 f9 W* i) |& p* }" O' g# V2 l
}
- ?! y2 |1 V: Q- m% E. e& f
}
: j! [4 a+ x' _# o/ ?& `' H( p
}
0 {- \! F% u* A8 ~" z+ r8 |
else
& v9 x# c0 h4 f: p
#endif
) J5 v- a' j+ k" ^
# L! c1 I7 K% [9 Q o2 Q1 Y0 m
if( m_bIsIndoor )
# o$ b; O- r1 X6 |- v- x
{
) z2 j9 ^" t4 C5 f& L+ h" d. i
if( pLight )
$ w) [: a6 c( w# H4 O1 W
{
% j' ?! |& p. h2 [: v
// à??μ oˉè*
0 u2 \9 I) G% p1 x0 P* ^
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
: L) d4 K8 q ]" f1 j
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
+ q8 t# u* D$ O) D: ]
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
) b6 n+ w9 H5 V0 U+ c+ O
; i' a& @, o( s2 f5 {) O
// oˉè* ??à?
1 |' D q5 Z& {. m, A
pLight->Specular.r = 1.0f;
4 J$ H3 T! Y$ |6 v: b; X8 u, O
pLight->Specular.g = 1.0f;
2 y0 D- b- g( [7 Y( J' G" Y
pLight->Specular.b = 1.0f;
0 @* {" y6 D! X% R4 d3 t* P5 i% {* ~
// àü?? oˉè*
2 E# B$ Q6 q4 M: `5 y; \
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
w |2 v9 Y5 Y: k* B3 |+ B. C
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
8 p6 ?! j! |6 k9 p; Q. i5 \
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
: P7 [. x: B% e4 j8 S/ l
" s% i% W, a' K9 t* r3 l) F# |% ?
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 F8 r, S7 b/ Z$ f' p
{
9 n" [$ ~: D" q& h* L' M6 i: y; d
pLight->Diffuse.r *= 0.6f;
) V, N+ n# u4 G6 E0 M; ]7 w4 L
pLight->Diffuse.g *= 0.6f;
4 D# J4 k9 R3 U% o$ d! ~2 J
pLight->Diffuse.b *= 0.6f;
. q) t# J6 t. C1 Q
pLight->Ambient.r *= 0.7f;
: A1 r1 W% t3 i4 E' I
pLight->Ambient.g *= 0.7f;
0 r6 c3 l- S7 W; U8 A% _- e- w" j
pLight->Ambient.b *= 0.7f;
1 v2 |" l' H' A
}
% h# j( k: T+ g Y% D- @
0 F5 P* j9 A/ K& {3 T
#if __VER >= 15 // __BS_CHANGING_ENVIR
; Z1 ~+ Z" T9 W
if( g_pPlayer )
$ l% @8 L# ^7 H5 s
HookUpdateLight( pLight );
0 {- Z. x1 b6 v5 E7 x1 O/ t/ z$ P* m
#endif
5 r+ t$ h# F m2 I! U. e9 s! D5 h+ G
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; `- F6 o9 r. l5 V& y
4 P7 T1 y, J7 ]
pLight->Diffuse.r += 0.1f;
- H# U6 d: H& C4 y# C# H8 Q6 r
pLight->Diffuse.g += 0.1f;
( Z" R& o [/ S" S1 G
pLight->Diffuse.b += 0.1f;
3 ]5 [1 V; f+ V, d0 C$ i
// oˉè* ??à?
. N( L/ o; g1 M
pLight->Specular.r = 2.0f;
! p2 K; p4 J; L, n: ]- u0 Q
pLight->Specular.g = 2.0f;
3 F: ?) \3 P5 N0 G, {6 U
pLight->Specular.b = 2.0f;
" O4 T9 a- ]% [$ T( l8 |( n
// á?oˉ
# F. y8 y5 j5 f6 Q7 c
pLight->Ambient.r *= 0.9f;
3 x9 G0 N7 Y+ Y7 U, _. o% N
pLight->Ambient.g *= 0.9f;
+ m. @# K2 [+ e
pLight->Ambient.b *= 0.9f;
@/ O% Z; I9 ]
- g+ X$ I7 ~1 A0 o, z5 Y5 j" O
memcpy( &m_light, pLight, sizeof( m_light ) );
+ `1 \7 y# n' c' ?' s; K; Z* }
) P4 \6 t3 P0 S2 M; m
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
+ Q' ]. \+ v; W* Z
pLight->Appear( m_pd3dDevice, TRUE );
; D4 y; l. P0 u, @5 v% E
: `4 Z- p) X6 r3 v
DWORD dwR, dwG, dwB;
2 T4 V. V1 Z' ]6 P6 ?# x/ `
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 |' [0 e; K. C1 W% {
dwG = (DWORD)( pLight->Ambient.g * 255 );
$ {5 q% H% I8 q5 s/ n4 {. F
dwB = (DWORD)( pLight->Ambient.b * 255 );
, \0 G: X% ]+ c& V
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 `4 f' D2 |) `0 c9 p* I
}
2 F, S( I- z8 h0 f
}
2 Z2 C' \4 C2 Q9 t4 x
else
8 o: y, S8 z6 M( z6 y
{
% A4 N- G5 X6 P2 m
if( pLight )
2 R: H" M( T- t6 K$ h3 z
{
3 @/ A9 r' k4 d/ a; E4 y
3 x! h* U) B2 [/ W* N5 l4 K* v
int nHour = 8, nMin = 0;
. I1 _1 N, a: m6 V# I
#ifdef __CLIENT
5 [ X7 H8 A3 z p3 ~
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
- w* w" i5 s. p3 _
nHour = g_GameTimer.m_nHour;
7 L4 ?: ]; X' B" e
nMin = g_GameTimer.m_nMin ;
- l& V: Q# w; T' r2 Q
#else
$ L' \% w0 N- n8 @- F. z8 g: ?4 ?
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
3 h/ A3 T$ y9 E! t |
if( m_nLightType == 1 )
. g$ S' [$ X S* B9 u$ m/ t) L+ o* f9 K
nHour = m_nLightHour;
2 D! v' Y/ {3 T9 t
#endif
- [; k* o: {" Q" H* z5 |# }+ R
nHour--;
E3 @+ S" l: _- a3 P5 ^
if( nHour < 0 ) nHour = 0;
- K0 |# K8 D! p* ~' J, }3 v. \5 k
if( nHour > 23 ) nHour = 23;
+ I3 y9 n$ [" _, L1 B0 ~
$ F) u9 n$ _ v2 l1 W
//if( m_bFixedHour )
* e' r0 t0 R! V& L" h
// nHour = m_nFixedHour, nMin = 0;
* `' C/ p0 S2 x
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
7 O5 y4 X* C p* x
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
" {( j8 ~2 @, S8 k' _% ^
, ~0 y" y& b6 o* m
//m_lightColor = lightColorPrv;
7 e/ c" v5 e+ A
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
! y1 f* v, t5 f- b5 J
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
E; p+ ?( U: U7 o) X4 K% x
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
4 O. Y! Y! ?: F2 B3 o
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
/ Q; ]/ A" l/ r( V
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
' a- ~" l' \1 s, H4 [8 i+ n- W
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
% `- o. [) W2 L+ h! o
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
' k& M. _# Q* y8 x. Z* F, l
6 ]8 m( X& Z4 E C6 j6 }) O# F$ C( k
// à??μ oˉè*
0 T3 o5 K: w7 [. r$ J+ o
pLight->Diffuse.r = lightColorPrv.r1;
0 O1 x, J: \4 l( r
pLight->Diffuse.g = lightColorPrv.g1;
& P9 p( ~' E. Z) H7 E( {8 p/ F
pLight->Diffuse.b = lightColorPrv.b1;
. l& \ p, M8 |6 J; w
// oˉè* ??à?
) K7 I/ Q- y& y. f7 L/ c4 U
pLight->Specular.r = 1.0f;
: A3 Z# R$ f! g
pLight->Specular.g = 1.0f;
1 l) o' m G& ^. m) v
pLight->Specular.b = 1.0f;
" {( Q+ Z1 F r6 f* s
// àü?? oˉè*
. e4 l h6 H; |1 t* a) n
pLight->Ambient.r = lightColorPrv.r2;
( u |, a9 W5 t/ F e: m
pLight->Ambient.g = lightColorPrv.g2;
+ M7 `/ V: o& c4 c3 i- W' X3 Q
pLight->Ambient.b = lightColorPrv.b2;
2 C# D3 @; P5 y$ o0 K
, f$ k( v5 I9 @' I" ? |
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 |+ a$ v% w% i6 d$ D
{
/ C: r! f5 T4 F6 ?) @! `+ t D1 j
pLight->Diffuse.r *= 0.6f;
' i0 Z9 G; K8 H2 ~+ ~% L& J1 l
pLight->Diffuse.g *= 0.6f;
5 n: T$ {* k2 K: T: ~, Y, g; } r
pLight->Diffuse.b *= 0.6f;
: i( E+ ^( I8 [$ { G
pLight->Ambient.r *= 0.7f;
# f, S$ a8 e6 A
pLight->Ambient.g *= 0.7f;
! E. S" U) ~% e+ c5 g
pLight->Ambient.b *= 0.7f;
4 h- S5 Q4 W9 [
}
- v* p0 v& V( ~+ b$ P
; b% {3 k8 N5 b' T& K5 S
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 c1 Z4 m+ F' d
if( g_pPlayer )
* Y* P) M2 f5 `9 }
HookUpdateLight( pLight );
7 U" F" f" Z9 K; X% q% q
#endif
8 f0 l9 ^. V7 u& D
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 C( M0 D9 ?) w4 ?+ c, n5 h4 S: V
g8 Y2 T6 r7 c* A4 |
#ifdef __YENV
* n3 P! u4 g) k0 S3 a
pLight->Diffuse.r *= 1.1f;
9 v; T. j+ l" g& E7 O
pLight->Diffuse.g *= 1.1f;
1 _# i9 I) @1 F9 M5 G# y
pLight->Diffuse.b *= 1.1f;
) n+ Q0 i6 C8 l/ v
// oˉè* ??à?
. f/ o+ f( g5 W- }3 u. z
pLight->Specular.r = 2.0f;
, E& @4 o3 U+ E; z6 l/ n# w% m4 W
pLight->Specular.g = 2.0f;
0 Z* X2 b: l8 u% |6 B C, J
pLight->Specular.b = 2.0f;
3 I/ J- u" F: a) n# K
// á?oˉ
8 e4 p5 `" {6 z; `
pLight->Ambient.r *= 1.0f;
' _! |/ M& U. V0 v0 ^7 h, H4 V
pLight->Ambient.g *= 1.0f;
( A7 V F* [" N
pLight->Ambient.b *= 1.0f;
. ~2 F. y% Q+ ?; F' g- V: B- A
#else //__YENV
" ~8 ?6 _ E8 o: h
pLight->Diffuse.r *= 1.1f;
1 g e4 A' L+ Q8 _2 D6 v3 r
pLight->Diffuse.g *= 1.1f;
1 V g/ e$ h, E1 J- D! t
pLight->Diffuse.b *= 1.1f;
6 N6 P: J( k+ e* _0 D, y# t
// oˉè* ??à?
/ K- N6 q: I" O& L
pLight->Specular.r = 2.0f;
) W3 ~5 \! D4 t/ h6 b+ L
pLight->Specular.g = 2.0f;
0 w5 M. S/ d. ?, e4 e& @# t, |* V# E( ?
pLight->Specular.b = 2.0f;
$ m4 S$ d& r: |9 P+ }
// á?oˉ
" a2 c$ U& d0 ~3 b6 h# w
pLight->Ambient.r *= 0.9f;
D. c+ h( j# ?* z1 u" D
pLight->Ambient.g *= 0.9f;
& n8 Z$ b; D D$ s2 t) a
pLight->Ambient.b *= 0.9f;
* Q: ? l; r$ c0 K
#endif //__YENV
; T# h, l/ o- H7 v
: t# {0 q# V- g% |
memcpy( &m_light, pLight, sizeof( m_light ) );
" W7 G3 n. B1 l8 ~
, i$ O- p0 x( w7 N! i3 Z
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
# `( q/ B0 j) j+ i# X
D3DXMATRIX matTemp;
# _. {- n5 X7 Q, ~+ \ F
static const float CONS_VAL = 3.1415926f / 180.f;
2 t* T6 S5 L/ J2 _
' R9 W2 r4 J2 n
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
$ r8 N3 k" U' P* w |8 `$ `. m
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
7 I( {% J B+ U6 c8 F
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
# W: v0 I* w) s9 W& t! w3 e
pLight->Appear( m_pd3dDevice, TRUE );
7 E& S) @" Z; {8 H: M$ ~2 y2 }
7 x) F6 ~+ ]4 ?) v- A
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* u0 X1 e7 ?+ I1 _6 @2 G4 c
// D3DXVec3Normalize(&(vecSun),&(vecSun));
; r! z5 m5 G9 k3 w) W
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 Z* W: t5 h# i8 V% E% n2 S8 N; b+ H
. ?: Q& B2 s G, R4 M' r
DWORD dwR, dwG, dwB;
: U0 |7 K2 V4 p# z
dwR = (DWORD)( pLight->Ambient.r * 255 );
, M& _1 b1 P. L* d0 X; w& D, `
dwG = (DWORD)( pLight->Ambient.g * 255 );
# y; D& r( t" g `
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ M- k. ?$ g ~& \& J3 U+ R5 D+ ~! z& G
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. p q- r. j( C5 f. A* u+ t/ S V
}
S) r2 k. x( J. h1 f9 f, \
}
7 b3 ?2 D( `3 N; o ~8 r
: f) [- N* r0 C3 S# o
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
) n2 \3 z/ U4 Q) M3 M
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) );
3 h! j& }, _: p3 v( B
::SetLight( bLight );
0 h* v# ~( n; r* v
1 \" V! j+ E9 m/ z" i, [, S
// ±ao? ?D?í???ó á¤à?
1 Q# j/ K8 N' J z6 r" {8 B$ V8 o( o
m_pd3dDevice->SetMaterial( &m_baseMaterial );
; Q/ q" @' \+ S# S+ G
3 P. `5 T5 D. G9 {5 V: t
#endif // not WORLDSERVER
( k! _: C$ L; G; h% |, y
}
: }& `: a4 ]5 r8 D- E
并更换
4 X' E Y7 ^' t9 y4 b+ w/ D
Code:
8 `7 V" d! I7 h$ O* W7 y. B
__FLYFF_INITPAGE_EXT
# L9 n O1 D8 n& n
定义
/ g( L5 G8 c% j7 ~6 {
2 d2 G% n2 f/ i
/ B! ?, o0 |$ x2 b3 q9 V' h
) |9 h7 d. V( p0 H* H) Z" N" V
2 z' @4 V0 D7 e& B S* |- m
现在终于删除我的狗屁加速...
% D/ M& t6 h- c7 N
/ e+ F7 `" a' Z; A
- [5 S: N. p# l& _
$ m; k0 l0 V! v$ Z
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2