飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
# u4 y) \5 E/ |# p
尾翼:
8 l1 v" i9 M) b ~- I3 O
: f( ^) I8 r6 O3 D( \2 l" b
代码:
4 |, x& n+ F8 m5 n% y) r0 k
CWndAutoFood::CWndAutoFood()
9 u/ W) M' v# y7 a" j9 H9 S2 @
{
5 J# y" Y* A* o( n7 N" S: Z7 E" N
m_pItemElem = NULL;
7 W& K% E* m+ b( [2 e
m_pTexture = NULL;
: |( A! ]& y1 M( H, l& ^& c
bStart = FALSE;
6 T; u0 Z3 t$ W4 _, f' Z
}
/ k0 T# c$ M8 |: w) X7 ?1 w$ x
# M5 [6 o' a) k) C) S, F, ]+ p. K
CWndAutoFood::~CWndAutoFood()
, ^+ x9 b; F5 V4 L7 i0 T
{
4 f w* h9 k9 g; |
AfxMessageBox( "AutoFood ist gestorben
" );
! a9 S5 D! J, n, y; @' G6 m
}
( N- f; ~% k# s5 E% z. s
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
; ~# I! C/ {: k+ [$ b
{
! L9 {. u/ B l+ O3 Z
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
1 f8 u8 k0 D+ u* |
}
/ ^" n/ b: x1 [ L) n; p# I
" B6 v# j$ ~5 q- w8 E$ d
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
; i5 ~, E8 ~4 L% [. S3 ^0 \6 y
{
# H3 P% P+ z+ m) D ?! _4 G
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 t) P4 H: O2 E0 u8 j
CRect rect = pWndCtrl->rect;
0 V: @5 t" R R) p* w; H2 v
if( rect && rect.PtInRect( point ) )
: k. D) c6 J, [( a) S7 T( ^. G" \
{
X. O! W r( `" @1 o; ~+ M1 _
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
/ a; W2 S6 M0 V( P) ?/ `+ m
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
0 r/ ^9 [1 s8 B4 W; B v% z; `
{
: f9 c9 ]. |$ i' n$ `
if( m_pItemElem )
1 j" {$ b* ^0 ^# N) R8 p
{
' o4 v5 m) A+ y @) |, B4 B
m_pItemElem = NULL;
0 g5 W. v8 R2 @6 p
}
( o7 h- w5 ]9 U1 a: a" N
m_pItemElem = pItemElem;
8 l4 P% ?4 Q% S
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
" \2 f. Q5 `: ?4 ?" g, U4 b3 [; Q
}else{
3 M1 s1 |4 R' E" O% x
SetForbid( TRUE );
$ Z' K( d$ \# y" O7 \( ~7 y0 Z& H
}
& v: C: b, Q& W2 \2 C9 v
}else{
, Z+ M' f* K( D: c# K q% z" n7 {$ T
SetForbid( TRUE );
0 \5 D' G% A+ O) R3 L P1 [2 t
}
/ V/ l% B2 s( L
return TRUE;
# S' f1 j! g I4 z# y5 \! \0 p
}
, {) e- T1 ~ i* n) L0 I3 m: e. `/ x8 d
. p( L1 p* Z$ s- b# J+ a- h
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
. C$ f& X) H1 ~; z" p3 M O- M
{
! q8 I- J1 N& U
switch( nID )
$ m: l( x9 Q- Q; r9 v- X
{
; }0 k/ T; e+ w! W' r: |+ K- |5 g
case WIDC_BUTTON3:
B! u7 ?) F% j) [: F6 s
{
6 L* r* ]/ f2 A8 Q0 ~
bStart = TRUE;
" Z0 p8 w& t0 L* K) p
break;
: x/ T* \2 K8 P! g' `$ f5 j- B
}
' N) j. Q) b( P4 K6 R' t0 _8 w; Q
case WIDC_BUTTON4:
- V |+ R A; e# [9 e/ ~" @
{
% |) Y* ~" w( f! r0 ^ Z
bStart = FALSE;
4 |. @3 k9 C j, N9 Z+ v; g+ @
break;
/ f3 Y& T1 G1 c! L, d
}
( C% Z; i7 G% p, l L; t. K
}
1 k, F. Y; n& z7 O- }. ^
return CWndNeuz::OnChildNotify( message, nID, pLResult );
! \ F- ]) \- i9 _' j
}
1 Y+ K% p6 E1 J8 w, V9 B _/ L
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
4 ?1 t! b9 Z& b3 u
{
: J2 V0 ?$ v; r7 \5 P7 b* e
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
5 G' O! a0 J/ M8 m6 O+ ^
if( bStart || !m_pItemElem )
( m# r5 Y9 n* C5 h4 @
{
& ^6 P( @$ ?$ l- a% a: s
pBtn->EnableWindow( FALSE );
; Q# a9 G6 ^1 Z' e+ d
}else
/ j6 b2 V' r' h/ G* b; ?5 S/ y( n
pBtn->EnableWindow( TRUE );
9 h, e. z- s7 N* ]! E+ R& S+ @
if( m_pTexture )
; Y, Z- X/ x5 T0 R U6 W! p
{
/ q" D0 v- T8 v! E: p; W& r
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
9 i/ A5 O& { X2 S1 D" H! ^/ }; t
if( wndCtrl && wndCtrl->rect )
- n6 P- N3 Y$ p* I
{
9 S6 N. `7 V) \3 x0 B
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
, g, N( j) }+ _/ J
}
x% _# o6 l: ]
}
- W. N# m8 m- R1 k% g
}
7 z% T: m# s! [" W
! Q+ `2 D3 c4 F: U
BOOL CWndAutoFood:
rocess()
! G1 N$ A+ p+ P( K, Y, ?( H6 [7 N
{
* Z) R$ ?9 D. r1 a9 f% Q
if( bStart )
+ W% g6 Y: H5 w
{
* v% K1 d9 B% n( {- P& `7 S- W
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) ]* X+ l; h+ G* K5 \
{
) o% C+ w; x, I5 I
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
' c6 L, H3 C! S$ m: E* e
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
+ I5 u* |! U# C; N, b
}else{
+ L$ s3 z O4 f7 i
bStart = FALSE;
7 U$ b4 C. Y) i. s$ i! ~4 o8 D* @
m_pItemElem = NULL;
& C; R2 }5 I) t9 C
}
* b% A; b/ v! d3 |7 R
}
5 T3 J1 H5 N; R- [8 w' M
return TRUE;
0 f, F" l! ?) F8 w4 q1 ]. \8 {" u
}
* Q. S2 o1 p- j; ?0 M
' K$ ^' U% h$ k3 T, Y
登录视频废话:
3 l, P5 }) P: k& W+ K5 `
尾翼:
" a2 a8 W! Y5 W: ]. `
( W+ r# p8 K. \' q& T
代码:
6 | V d- |5 {- l
5 F9 ~# ?+ k: V' e
void CWorld::SetLight( BOOL bLight )
+ {+ k! n) N) {- W ^# {
durch
/ a( s. m# S1 d& y0 U9 B. M
Code:
% j* @/ C( g1 D/ j6 m
void CWorld::SetLight( BOOL bLight )
& g# Q4 c% `) q8 n2 h6 v3 y" D
{
] ?0 G$ r2 P! Y) [7 u# S2 ?. G
//ACE("SetLight %d \n", bLight);
6 m3 L+ `. {8 s. I3 q# k( c5 t
& ~, I; l3 P6 t/ }- p: R8 {( c
#ifndef __WORLDSERVER
& \9 `+ W$ `! {
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
* ~& W- I. `* c
CLight* pLight = NULL;
7 X% E) o) k* L) f2 D/ v7 c
, |4 Q6 l/ r( n- Z
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
% U& T$ c1 ^6 h% C* x8 p: I6 a
7 |4 W1 c+ }6 i% [# y
pLight = GetLight( "direction" );
" T1 {1 N; Y/ c7 {. k: H
1 I* m* z% e$ u3 N" d. z
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 S6 I$ B# b3 O9 G" z$ W
if( g_pPlayer ){
! o6 \$ N; z+ A/ X
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
1 C7 d) s' }! I; i! p
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
. J! S9 T- m% m5 x5 [0 ]" C
{
s4 j) } h' h
if( pLight )
0 P5 k) c9 l# ^2 y+ C
{
5 {; z! k- d2 O% b) d/ o# q2 }9 K
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
2 R! [: \6 G# X
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
8 e9 y' [" ]2 Y3 O! \
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
2 M( S: Y6 h3 h' \% U5 J0 x0 G
: Q5 z. G9 @6 f
pLight->Specular.r = 2.0f;
2 K) _, _% u, l. I. l$ _8 F: e
pLight->Specular.g = 2.0f;
* ]# a! F8 S1 l$ B# u
pLight->Specular.b = 2.0f;
4 S% C, D$ D9 P+ e9 e
0 N: ^7 ?/ i* G2 I6 A+ f1 s/ {6 `# R
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
4 d5 Q4 J5 D+ I' {! w$ x8 F1 L- k7 ]
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
# ^# a h5 E; B% {4 t
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
8 h8 V$ H, D# R% u- w
+ }& O/ ?' n. A0 y( O( _1 ]
HookUpdateLight( pLight );
, t. H' L1 |2 R3 M3 A9 ?/ R
1 M* R6 k: l; o4 ?4 ?8 ^' t: k
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" n6 u5 r' J) Q9 h( h
! }: e; G5 ]2 z- t& I# \
pLight->Diffuse.r *= 1.2f;
# s s3 a( b1 b1 S- Q- q! ]! F
pLight->Diffuse.g *= 1.2f;
. T7 S- x, g& y9 a! s7 Y" d, N) Y
pLight->Diffuse.b *= 1.2f;
- F6 [4 W4 w( N% k, }# c* I' z
6 o! M8 j: A% T/ s
pLight->Ambient.r *= 0.8f;
* V$ T7 ]7 a! \* X9 ?$ ^
pLight->Ambient.g *= 0.8f;
, f6 f0 W" f' z) y& [2 w7 q6 S8 E) e
pLight->Ambient.b *= 0.8f;
2 d* ?9 b; A# H I
6 u( F, f3 T$ |/ G
memcpy( &m_light, pLight, sizeof( m_light ) );
3 k, M( U! f) A" S8 u; @ s
% B! L8 L9 i$ S' X2 n' x: d, ]2 X; k
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
6 H% B* m3 G6 g- I& ]
D3DXVec3Normalize(&(vecSun),&(vecSun));
/ q3 }) D* L' w6 x9 ~& ~
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) U8 x3 A) u% Z+ b& l# J
pLight->Appear( m_pd3dDevice, TRUE );
' P7 u# z+ I( [/ j. l
2 q8 f, k) n" G* U% |
DWORD dwR, dwG, dwB;
% [, k+ s n, H
dwR = (DWORD)( pLight->Ambient.r * 255 );
# s! Q) P) L& b, h: b" |
dwG = (DWORD)( pLight->Ambient.g * 255 );
! ~9 c5 f& X& Q6 ]& _
dwB = (DWORD)( pLight->Ambient.b * 255 );
& Y0 }( {# Y( u+ \# c
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 X. }, S4 z- P' [
}
$ M6 W S2 o% h. N# g3 ]' z; x
}
& G P0 Q0 ~/ F/ t) q
}
7 ~1 Q; E7 M) f& l6 R( q5 W
else
+ T, J/ |! L7 b8 p
#endif
2 W ]( Z+ @8 K/ L6 l6 H
! B$ m0 ^6 L( U8 j4 l5 p8 u
if( m_bIsIndoor )
4 i! F9 E, D, s' v0 ]
{
4 {# K* h: B$ z: C+ w" p/ L
if( pLight )
& V% N5 J) y9 H- v6 G; [6 ]" Q
{
8 e0 d. M8 V9 A- m8 m0 o
// à??μ oˉè*
( l n8 ^- T& [$ |* E: L# s
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
8 p3 D1 L7 o( N
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
* [1 A; k) s, Q* }1 @6 ?+ S, i
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
: M' Z O. z' p0 N* V. m+ ?
$ l, Q- V6 z' W# a; o2 B. \& C n
// oˉè* ??à?
+ n$ R; n/ {* V/ e& Y: p
pLight->Specular.r = 1.0f;
" L' |% R- T" K/ g" o7 ^
pLight->Specular.g = 1.0f;
: f- j0 _8 _3 k0 q- c, M; W
pLight->Specular.b = 1.0f;
+ j5 }5 C( [( q; T
// àü?? oˉè*
( k% O( s5 C% X7 n6 d/ M5 ^3 v* {
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
' k0 ?; T+ N- A* s) h
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
3 P8 \2 K9 B/ ~& e* u# x
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
) G/ ~0 o k, ~( X6 n% O
' [0 R) j( N* _. C2 y
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ R8 |( |' v- V9 }
{
& v8 u9 \) t# b4 {/ l& w
pLight->Diffuse.r *= 0.6f;
1 I3 [; a8 a( L9 O: `
pLight->Diffuse.g *= 0.6f;
9 M+ q4 M0 w6 C8 ?
pLight->Diffuse.b *= 0.6f;
+ I1 t) C2 y: a% m, I
pLight->Ambient.r *= 0.7f;
3 ^* |0 l: ?, m4 F2 T
pLight->Ambient.g *= 0.7f;
0 z$ a) `: g+ P" Z
pLight->Ambient.b *= 0.7f;
4 Y7 R) W4 F; ?5 o) F
}
3 v% o. G3 j" c9 }( v# ]0 |
: g1 `8 e1 i" @6 F) ~2 f
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 O) C% P: |2 c$ m. r- v! Z- \) D; o
if( g_pPlayer )
. E: ?) Z8 M$ @' s+ C; O, ]
HookUpdateLight( pLight );
) n+ U8 S5 B$ W+ s
#endif
; ~9 \2 ]& E$ z6 g& `* F. r/ x
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; l$ W, `. g% M
" K% I7 W% G8 u4 g/ p
pLight->Diffuse.r += 0.1f;
2 B6 Z5 Q9 J& q. V' o3 ~
pLight->Diffuse.g += 0.1f;
# O" }8 E: B4 q" M: ?
pLight->Diffuse.b += 0.1f;
; `5 F& e% f: s9 |3 ~" A, N
// oˉè* ??à?
3 R' z! U3 W2 V3 b" a
pLight->Specular.r = 2.0f;
# D; t) U3 L' ~6 H
pLight->Specular.g = 2.0f;
3 x0 \1 O w& c1 ^1 w) b: U5 r6 y3 r
pLight->Specular.b = 2.0f;
# }: Y, m4 h* ]9 `
// á?oˉ
5 d. d, V% S% j2 U
pLight->Ambient.r *= 0.9f;
) g8 a$ p' Q. a. {, G3 o
pLight->Ambient.g *= 0.9f;
( R7 g6 U2 T3 x
pLight->Ambient.b *= 0.9f;
: N9 r4 ~- B* t/ Z
) G4 Z* j& u& {3 Q6 Q/ W B
memcpy( &m_light, pLight, sizeof( m_light ) );
" X6 T1 y' p( z$ `/ ?
) M( t P7 ]& z+ q3 f
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
, M& S( a2 G: p9 S) |1 G7 h2 y
pLight->Appear( m_pd3dDevice, TRUE );
7 T" ], R( q. j: R6 e, v
- @+ H6 W3 Z* X7 ]- h
DWORD dwR, dwG, dwB;
+ z0 d# @3 ^. G+ }7 k# `2 r+ o0 J ^
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 |7 I w4 Z8 ~; C; }' \
dwG = (DWORD)( pLight->Ambient.g * 255 );
, s5 F1 R) M" D
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 i, J# P: o) G$ O
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 z8 o6 h/ _9 E( o' K
}
% s, j. s* N5 E5 n/ }
}
3 f5 f$ o5 x6 B7 }7 L: |
else
3 J; J% z5 d r: a9 ~, N+ a! e
{
4 e: r5 h, T* P5 a# U
if( pLight )
3 a3 c/ U# h1 q) d0 a, T
{
, c" D: J3 z% b* r
2 v/ j, _' i; I0 S# t
int nHour = 8, nMin = 0;
# T1 n- d9 a" u# q) j
#ifdef __CLIENT
7 Y; A% d5 V7 p0 C9 P% U% A: u2 {
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
7 _0 X/ k' ^) c5 ]" w* B( o5 g7 A
nHour = g_GameTimer.m_nHour;
5 T: Y% A" u& s
nMin = g_GameTimer.m_nMin ;
" B& x" E# {/ d% A- Y2 ^) Q
#else
$ \- _, [! B- `3 Y+ r- p& A* L
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
2 H8 v% b3 l z. \# o+ b/ U
if( m_nLightType == 1 )
0 V: }, i' `- o5 p, S$ ]
nHour = m_nLightHour;
1 W( r4 G ]0 K8 V5 G7 s4 z
#endif
) o$ B. m% e: N+ |# J4 c
nHour--;
$ u% l1 G- R) y) G/ S$ S% |' Z
if( nHour < 0 ) nHour = 0;
! l6 c# w1 Q2 W6 ?+ W y y+ w; v7 h
if( nHour > 23 ) nHour = 23;
& q5 K' p( z3 r; @# B* G
, M$ S1 {1 E' R4 N8 e9 Y
//if( m_bFixedHour )
! ?6 H9 }7 M N, E
// nHour = m_nFixedHour, nMin = 0;
$ o9 t) [+ x0 |6 E6 E
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
! b$ O& j& c5 ^5 c: t# w7 W
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
; ` Q$ m/ A7 D0 G, b+ X4 I
; y# X$ K% r* |0 }# q. h! d
//m_lightColor = lightColorPrv;
6 a; P4 M: w7 F m- p: g
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
/ Q6 j B9 C' v8 X% ?% T
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
! H: M& [' o" u8 E% j9 J% q' i4 A3 x
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
+ z4 U* x' V1 F' ~( j
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
) K! \; l; f; ~+ p4 x4 D" |
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
, H! C) @* X6 X P2 n3 X' k
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
1 k+ k1 `7 p' I
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
: b5 o' j+ ^9 ?9 `4 v; [& R3 A
2 f6 V8 \. f: o8 Q# q, `8 }6 x
// à??μ oˉè*
7 X' h# E% k: D3 T
pLight->Diffuse.r = lightColorPrv.r1;
- J+ Y9 k" I8 q O; ]+ P
pLight->Diffuse.g = lightColorPrv.g1;
! F' }! E( x4 F1 V$ W& z) i5 o
pLight->Diffuse.b = lightColorPrv.b1;
0 i$ J; P7 i7 s, u9 n; U& f
// oˉè* ??à?
: O. f! S! [5 a3 ^
pLight->Specular.r = 1.0f;
. a9 f. x; ?3 \. N7 i8 m
pLight->Specular.g = 1.0f;
0 K) q. g6 C0 L
pLight->Specular.b = 1.0f;
4 w; d5 L1 F" ?! D& _
// àü?? oˉè*
( C7 r W* |% b- ?& o
pLight->Ambient.r = lightColorPrv.r2;
! L' Z% q' i4 i
pLight->Ambient.g = lightColorPrv.g2;
- x5 B# a# `6 d0 G
pLight->Ambient.b = lightColorPrv.b2;
/ F1 ]1 u+ G# o* K$ k, `
$ x d8 {- N& l$ G0 n
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
" ^9 X; E8 N8 C# [8 d0 x, c, h
{
h% j, i( |+ S0 S: @9 F8 u
pLight->Diffuse.r *= 0.6f;
- z# g0 T4 L4 \( H3 ^
pLight->Diffuse.g *= 0.6f;
) b) g0 b/ X. }
pLight->Diffuse.b *= 0.6f;
. Q. A9 N6 C$ W7 D% l" C
pLight->Ambient.r *= 0.7f;
+ p1 z( Z8 o; ~, F ~5 g) N
pLight->Ambient.g *= 0.7f;
2 E ^2 q3 n# D- U
pLight->Ambient.b *= 0.7f;
6 ]6 T9 M9 N1 c
}
' _+ H! b& u( a2 o) ~2 C
9 |% r% L+ u3 L
#if __VER >= 15 // __BS_CHANGING_ENVIR
- `% S6 Z; ?) R8 q2 M: Z. o. k; i
if( g_pPlayer )
7 w9 g, W1 v5 w" t7 v+ h% i1 s8 `
HookUpdateLight( pLight );
- B# U' }: D+ g2 x! n
#endif
; `: g% D" I- d" S
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
B: T- T8 q# ^% s9 d, S
9 I- U. L X# s4 y" G n/ {
#ifdef __YENV
' n$ r; k1 ~' z- y: `( o2 }
pLight->Diffuse.r *= 1.1f;
' _' H+ T/ l& V2 D0 D d( F
pLight->Diffuse.g *= 1.1f;
, ^2 j2 }& K! n) D
pLight->Diffuse.b *= 1.1f;
. R* y7 U- t4 W7 q2 N: I& a6 i
// oˉè* ??à?
% M9 {: \8 h' P F. W% l
pLight->Specular.r = 2.0f;
+ Y* d9 d! K! u" v
pLight->Specular.g = 2.0f;
' ^# ?% q( b$ {7 t
pLight->Specular.b = 2.0f;
; E& \0 m) [8 m# h7 k
// á?oˉ
, I! t: V0 L( z
pLight->Ambient.r *= 1.0f;
! L. V- \* r7 ?0 d h0 V
pLight->Ambient.g *= 1.0f;
' Y0 c/ w2 V# {0 [- t6 p
pLight->Ambient.b *= 1.0f;
7 i1 m% D( G) K6 D; ]
#else //__YENV
/ z7 Z7 `: s; r0 ?
pLight->Diffuse.r *= 1.1f;
# M; J! h0 u9 B
pLight->Diffuse.g *= 1.1f;
$ ]+ z* ]/ C1 M5 i
pLight->Diffuse.b *= 1.1f;
! a% W3 J; v1 |2 ~) ^2 \& W
// oˉè* ??à?
' i& u) h$ |3 F1 i2 L% b( e4 q8 i
pLight->Specular.r = 2.0f;
3 m# t1 {* \$ `0 K( _
pLight->Specular.g = 2.0f;
8 }# m& i/ v1 H+ p
pLight->Specular.b = 2.0f;
& }; a' k- R4 j" ?' Z* T' c
// á?oˉ
1 ?3 {1 x3 K5 D! c1 w0 o; H8 [
pLight->Ambient.r *= 0.9f;
. E# T. L2 B% Y# c$ i9 @; E
pLight->Ambient.g *= 0.9f;
4 R: }: o1 o) b2 Z8 P
pLight->Ambient.b *= 0.9f;
6 a; e: r g' L* B1 y- m
#endif //__YENV
5 L! Y$ F% M* D
) W4 K3 P9 [7 B3 z& C1 A
memcpy( &m_light, pLight, sizeof( m_light ) );
' ]; k& r1 u" T8 G+ G
. T( U8 c5 F8 h" F! w+ F6 H
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
! k( x3 F5 S4 ]
D3DXMATRIX matTemp;
7 S2 ]# p% c: Z q, D/ P |0 w1 R
static const float CONS_VAL = 3.1415926f / 180.f;
9 A, K3 U' _2 t0 O. i) N
9 X5 D: w( u/ c& `1 a' b
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
8 ?: E) ^$ b I, q, U, k Y7 j2 i
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
+ ]6 K- P5 e5 ^' O# c9 r% C
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
* i4 e( a" |4 C* U3 U) f
pLight->Appear( m_pd3dDevice, TRUE );
' y& G) P7 Q, Q; J' p! Y, a% r
8 D( X1 H2 l5 D# t# @
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
8 g4 o6 @/ Z9 W4 G
// D3DXVec3Normalize(&(vecSun),&(vecSun));
; h0 ?7 O3 U `: C7 C
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 ]1 @5 Q0 h$ g& {
5 ]" B9 K! s q6 U, F
DWORD dwR, dwG, dwB;
$ w5 M4 t! J8 F0 j' Q* _0 w' E+ A
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 r, n8 K, X2 q7 o
dwG = (DWORD)( pLight->Ambient.g * 255 );
% r" I1 F6 s6 L3 k$ Q* O
dwB = (DWORD)( pLight->Ambient.b * 255 );
" Y3 d- ~7 V/ R5 h4 _
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 \' D* Q `% z' ]
}
1 c- I+ v9 w7 }2 V6 s
}
: z# j! j+ O& f: {2 C
6 X/ [2 S. V0 z! p* Q
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
3 e: C% C( V3 a: ]( `! 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) );
' n+ C; J- C7 M) h
::SetLight( bLight );
2 Q4 p6 R( }' T% a$ O8 o* W' a
8 j+ V) T/ R7 m4 e( v
// ±ao? ?D?í???ó á¤à?
- j n! Y. z" W
m_pd3dDevice->SetMaterial( &m_baseMaterial );
# I, \0 @, o8 Q
! c0 g3 U/ `! K5 b( f* _
#endif // not WORLDSERVER
! |# c' O# x$ k; F) q* A
}
/ N0 M. g- H4 p/ A+ a9 }/ |. X
并更换
* V' V0 R p$ w9 g
Code:
0 ^ G$ X* R, c% F9 C
__FLYFF_INITPAGE_EXT
$ d& w. O" H6 P1 Q, j
定义
% M; W8 ~- d u* k. B
9 t @4 P4 v* b; j/ {$ x
+ z) b0 P5 t$ _& G
. {5 ~: {1 j. y% T; r
. J; Q1 v, O" @/ F5 ]3 L @6 W
现在终于删除我的狗屁加速...
+ C2 ?0 M6 m j1 g2 s
: n% s! k9 F: _. q% Z* b# C
) G# c* a! H c& K* `1 @
' l% w* v# {2 m- A# c+ L
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2