飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
$ A' y3 S% p! K
尾翼:
- U$ n" ]- o# h; F' W- f
: \: Z0 |5 A( |0 x$ s' U
代码:
: U: L. d9 c J* q
CWndAutoFood::CWndAutoFood()
% r2 O( x8 J- a- z
{
2 L1 b* N0 i0 t. ?: g3 ^
m_pItemElem = NULL;
$ f. K- [2 ~: @8 b9 G' e i" W
m_pTexture = NULL;
$ }. T/ T5 G, @2 y& v& ^! E
bStart = FALSE;
0 B6 P0 Y3 L. U; ?( o
}
! r) _0 L0 M6 n$ u; B. f. l
7 k) ^) t, q5 v4 h# A" e; D. {
CWndAutoFood::~CWndAutoFood()
0 _6 d, ~5 V1 G) c/ @5 o4 `5 E; O* f
{
2 K% G! p: s3 H
AfxMessageBox( "AutoFood ist gestorben
" );
' g, \/ ]0 j6 f" t1 o$ ?
}
& M/ H# l1 I# h- J4 a2 E7 S0 w
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
- c ]' m& j7 D) F& d A2 k
{
/ ~2 ~+ s0 j/ ]( O) D' m
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
' S8 C4 _, }: j# S* V
}
% w" p/ F" C4 I) K% T, \8 N0 X8 |
: \ z d7 x$ }3 J* z
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
5 I6 V N6 B, g4 ?0 A
{
6 Q; r* Q, |& a/ v& o& [
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 E' {* M% v9 }! y0 f
CRect rect = pWndCtrl->rect;
/ |8 R4 F5 a* |2 y) w
if( rect && rect.PtInRect( point ) )
7 d# i6 A) V2 t3 V9 S$ j, H) c" H
{
$ }/ L( v& }: f9 {% `" y6 L. j! ^
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
$ B# U8 ]3 ?, Y- r3 t
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
' L# w2 k7 V7 H# I) F ?
{
0 C: y2 U& u- S+ i
if( m_pItemElem )
; t5 Q. X. c$ o3 y$ n8 N
{
9 m, S2 Y7 o0 V
m_pItemElem = NULL;
* l) M$ M' \9 C: y# g# [1 F1 Y8 T
}
/ s( _' W& V& l" j8 j$ d% U: I
m_pItemElem = pItemElem;
' {6 ~. p5 W/ Q
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
- g3 ^5 D/ D, J8 l R
}else{
, [, k, B. q8 Q
SetForbid( TRUE );
) K# D) ~- [* v8 q& R4 M1 i0 Y; s
}
+ l! w0 Y+ w' k9 g3 W
}else{
- s4 w6 ]0 h- p) S- q
SetForbid( TRUE );
# M: s5 Q3 Y; \: [, S3 K# ?$ z
}
! {) o) t9 s& ^
return TRUE;
& V8 S/ R5 h# M# `
}
; y3 Y, D2 D2 m* Q- f8 d
# o1 j& y- P3 ]5 }* ]
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
# T$ ?) g' R6 k& z4 ?8 n6 a
{
9 t0 B. o% E+ S9 i6 t
switch( nID )
; c" R% E1 @& _1 R4 s
{
4 {7 K4 K7 O# n/ v* l- d2 m. F
case WIDC_BUTTON3:
: U& @1 c n6 t& M* N1 r3 ^1 H+ S
{
; c' j: b$ T) N/ I
bStart = TRUE;
7 |% g" X8 D) X4 q/ `- b! p; y
break;
( _2 g( ]6 L- D' H
}
- A+ O1 R" D7 Z7 |5 j/ S
case WIDC_BUTTON4:
9 O; t: |* R. y3 S7 o* ~
{
6 i, I) L' C1 G- ^
bStart = FALSE;
0 b/ B8 X6 Q. E( @
break;
v! d. ^, f$ d3 Y
}
. u/ c7 E* h) K. l" H5 v2 f
}
1 r& d8 r7 Q8 v& O
return CWndNeuz::OnChildNotify( message, nID, pLResult );
% k3 w4 g b& e2 G" _& E; ?. K$ L# ~
}
% f( u, A! c: n: E. W/ g1 Z6 B8 {- T
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
+ N7 c/ j& h( r! ]8 x3 r9 D
{
* }& P9 U% a0 V) ?1 x, j; j
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
- e$ K$ v9 `: \6 ?6 y+ r) @
if( bStart || !m_pItemElem )
! W) ?- c1 P8 c9 ~
{
5 F* p3 K T* S8 ]0 b& v
pBtn->EnableWindow( FALSE );
m0 w s$ ?% w! `% w) W( f$ T
}else
) l( T- K1 X8 j& F! S ^7 d, B) o
pBtn->EnableWindow( TRUE );
; Z9 O. a" b# J
if( m_pTexture )
* y, d" M$ G. t( Y( R1 \- h
{
; K. E# y: f4 a3 R+ J
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& c" W. g4 \% m+ ?7 Z9 ]
if( wndCtrl && wndCtrl->rect )
4 g6 n) W/ S8 l/ B6 P0 [, B$ E
{
9 u0 g% _9 o( f2 x1 I" a3 A: c. F
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
# ?5 b$ |9 H6 K5 v3 p
}
/ t0 E. z. e/ }3 u4 H K- n2 o+ S
}
' I2 a" B8 \6 p" Z) b
}
' _; E' y- v1 u' s/ o+ N* p* E, S
$ I5 w) ~% C5 F1 i
BOOL CWndAutoFood:
rocess()
{8 c$ a( A( l9 E
{
8 T; \' O+ D& i
if( bStart )
' d( E# M& ^3 I4 F: [0 a
{
- }- l/ s, C# k4 E& V2 N, b
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) v6 \, l) _( j" E0 p
{
" u- p3 V4 w& K; {2 `/ v9 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() )
- r+ J+ J0 E! P2 j' Y: h
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
( D# Y/ C n: g% Y
}else{
- B- \2 @5 z) r' I+ v% P
bStart = FALSE;
5 c9 X5 |+ x0 b B5 x: u0 X( u
m_pItemElem = NULL;
( q2 H9 o; |* `$ X! m: C+ A: y
}
4 L9 }# t b4 O! ~
}
: W' G+ ^) c" Q
return TRUE;
' Z& y- }" b- o- ]& }" U
}
3 e3 ?" _8 l( |# a5 O1 G
7 ^* f/ H! P$ J$ G
登录视频废话:
1 X6 M/ O' j4 y! I5 k
尾翼:
9 U% _& j7 G5 g/ U K
; g! X, R4 i9 `1 q2 `5 h
代码:
: Z; c w v) J; p7 p5 [* B* n! J
# N. Z) ?: o4 n
void CWorld::SetLight( BOOL bLight )
3 T: M1 G7 U: B$ Z1 l. V
durch
/ X' p( ]. s( l! [7 U
Code:
: j. @) d8 A% D @
void CWorld::SetLight( BOOL bLight )
1 O" c. p; m. Y0 R: a2 j+ R7 |; {
{
( L5 {5 _! [% [- A0 ^
//ACE("SetLight %d \n", bLight);
2 |2 ]: A( c0 c
# U5 y' I; [: W0 A
#ifndef __WORLDSERVER
, T1 Z F( @. K, `* }( C' q, S' E
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
( O$ r R& C1 {3 R
CLight* pLight = NULL;
0 ]! j! x3 G7 ]$ [2 k
9 [8 E/ _5 r* F2 O0 z8 u H
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
( f: y1 Q7 w; F: ~+ d7 I. F5 F
8 [7 N7 m) ~: b+ _) V- I& V& z) t& E7 w
pLight = GetLight( "direction" );
0 {+ h" p1 ]; f/ m& @
0 N3 L2 K: ~9 i( e* q- @3 O( M0 J
#if __VER >= 15 // __BS_CHANGING_ENVIR
- i! E8 [5 {8 V0 s
if( g_pPlayer ){
; Z* N. _: r& f9 P' L
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
) y% g$ P: y8 L& y+ N
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
, V, w9 a' m# ]- \3 J
{
/ \- _$ q# v: Y/ A9 d! m6 c
if( pLight )
+ h" ]4 [% u5 e5 b- X9 t3 ^
{
6 N! m+ D T7 V5 e& { ~
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
7 k& z9 J# }) g+ }4 X6 ~" f
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
6 k9 r: L2 P8 a j; T5 T
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
; a5 Z; ~& j' k( m5 k% ]8 Z1 ?
$ ]# e6 a, j' x" [
pLight->Specular.r = 2.0f;
) M5 m$ m2 L' Q
pLight->Specular.g = 2.0f;
: G# v) h$ k+ U& R
pLight->Specular.b = 2.0f;
* v7 g! ~; h5 g1 ?
9 ?/ V8 X8 u% @
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
. g- h1 S1 H4 _/ G1 Z, N
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
: {. n9 S/ c/ T# Y; z! v) K
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
, x) S' h6 _. d# r; E% F6 l
- B0 e$ V* t1 r x4 |& v
HookUpdateLight( pLight );
- n4 ?* y: I4 z d [2 m; q
; a( D3 q. c, |0 Z+ K
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* O; Q$ z$ L- P6 A4 | _; t
) G; k- |, A% Y
pLight->Diffuse.r *= 1.2f;
6 g0 o0 z& g5 o) e! L
pLight->Diffuse.g *= 1.2f;
4 E2 F, `0 B6 H6 A' D. b
pLight->Diffuse.b *= 1.2f;
3 _4 {; ?1 O: I# Q
9 q0 B% A0 \9 L" M
pLight->Ambient.r *= 0.8f;
, L/ X, G! s6 q: \; y
pLight->Ambient.g *= 0.8f;
( l @" ? |1 O0 w4 c. l
pLight->Ambient.b *= 0.8f;
2 ?. B9 C! [7 T$ |3 B# j6 {
! [! q- }" Q1 k7 s2 |1 }# V
memcpy( &m_light, pLight, sizeof( m_light ) );
* |% ]( Y; r9 _
* ?- U; _! W0 {
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
$ C% M8 p9 K) O7 A0 ~% L7 G- U
D3DXVec3Normalize(&(vecSun),&(vecSun));
5 i! J* S/ i: ^) |6 K+ {4 h! G1 c- j
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: s( \8 s: ~& o1 _4 Y& M
pLight->Appear( m_pd3dDevice, TRUE );
s, q& ^" u8 i7 }: H% t
l4 h! H5 U3 T, _2 ~" k" O+ ^
DWORD dwR, dwG, dwB;
6 U: ^/ r4 ]" o. ^# K3 Z( x. R
dwR = (DWORD)( pLight->Ambient.r * 255 );
% U2 ^9 V1 \: U! L, q
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 i2 C6 X& m, i2 h
dwB = (DWORD)( pLight->Ambient.b * 255 );
( _- m/ v) t" i, v5 G ~
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 w3 B/ }. _8 R
}
, Q. W, A# o: o Y& {: z5 h6 x# \
}
. A9 Y/ ]: ~, B( F8 I/ O' F
}
4 A& k- T2 T- W5 N) b
else
" s% d( W8 K# h- o4 W% m
#endif
8 F; \# K" U" \; Z1 `- d9 g
4 {! g% r9 z# B. c. `5 ^; j
if( m_bIsIndoor )
* ^! ?# E! o5 ~* Y! p
{
5 b d" s+ q" l& {/ k" |
if( pLight )
* S3 S! y0 l& }2 }
{
7 k5 b3 r5 j/ z- g8 q; j6 s, T. G
// à??μ oˉè*
! R4 ~- X% a6 l! W: }
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
9 d" c: Z; }% l6 a2 x
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
& }4 b: ] q1 }( q( O
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
/ X5 F0 A) `1 B% Q b
1 e1 O) G4 o. Y& b. I$ E: t4 [
// oˉè* ??à?
2 ~+ ?$ ?0 U( D$ f
pLight->Specular.r = 1.0f;
. W5 ]5 [( ?! b1 o! @$ U
pLight->Specular.g = 1.0f;
& p" m/ E$ p' x' [
pLight->Specular.b = 1.0f;
8 ]; O% b& n6 j. U
// àü?? oˉè*
$ b' q- v. S* G$ ]6 ~4 U
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
S, }/ p' i9 h& K) s
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
( Q& V2 t+ p7 W: H _0 M$ @$ Y
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
, I; z9 d0 }, L$ P
, H/ d4 f. }; A# M* |
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 G/ u) B. D) S; m6 ^. s
{
" W1 Q0 n2 L# {8 ]& }7 C
pLight->Diffuse.r *= 0.6f;
+ z2 k2 I. `4 P! F0 x4 \6 v0 Y% ~
pLight->Diffuse.g *= 0.6f;
4 D2 g" V& o% }% u
pLight->Diffuse.b *= 0.6f;
3 D6 k! a3 x& d& ~" R) K/ m7 [
pLight->Ambient.r *= 0.7f;
7 Y! I& |$ k. _: K; C2 k
pLight->Ambient.g *= 0.7f;
6 k7 D# Y0 ?, }- m$ _2 U' L
pLight->Ambient.b *= 0.7f;
! s. r4 ?# {; \
}
: T9 K" @! Y {- `2 k8 F
$ h% H* q( Y) J8 T& U
#if __VER >= 15 // __BS_CHANGING_ENVIR
, j! ^1 }* d- ]! k1 ]
if( g_pPlayer )
( M3 @8 B' g5 m1 t8 F/ ]' _" _2 Y
HookUpdateLight( pLight );
& z" f; Z0 V. C6 M3 @0 B
#endif
- S U- D! ~9 n% M7 U* z- S0 u$ W
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% H0 l1 _8 {7 A+ O
. Z" ]( I; z) g4 q
pLight->Diffuse.r += 0.1f;
1 |" V7 J9 v0 s3 F; ]
pLight->Diffuse.g += 0.1f;
4 X' Z" j1 `6 t4 X
pLight->Diffuse.b += 0.1f;
4 \& R- f) s. d+ A1 D' @0 Z/ N
// oˉè* ??à?
$ Z3 u3 E8 n u% Q' A- y1 m
pLight->Specular.r = 2.0f;
9 F: u. K0 q4 J
pLight->Specular.g = 2.0f;
) w& l' S0 [. x) V- i P; K2 h
pLight->Specular.b = 2.0f;
/ M4 j3 X& L' X2 j3 v3 n- x
// á?oˉ
/ K/ x8 D, d* |/ f+ Z% f
pLight->Ambient.r *= 0.9f;
$ q& U; ]6 h X& }2 h6 g$ M
pLight->Ambient.g *= 0.9f;
3 @0 t' J w% d
pLight->Ambient.b *= 0.9f;
5 y+ v% _, s7 H3 \
4 Y+ K! c- S2 E* _
memcpy( &m_light, pLight, sizeof( m_light ) );
0 H8 v# j" h! ]- z+ _! w/ ^
( i* d" U# B% _# o' @# F- q k
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
g) x1 \# r8 I4 H# C& o9 G& v
pLight->Appear( m_pd3dDevice, TRUE );
8 p( o& ]% i& }3 a/ \2 e1 I
; E6 C6 o. i& o+ x
DWORD dwR, dwG, dwB;
5 g7 @6 w2 J# ?' A8 R
dwR = (DWORD)( pLight->Ambient.r * 255 );
! r2 y8 N( t. K
dwG = (DWORD)( pLight->Ambient.g * 255 );
. T" a% a0 f0 n6 d
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ Y# k9 Y- t+ s$ S
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" o# f" |! q( l: o' X7 v" ]* W
}
3 I$ z# N6 d- `: u) k) |& a" U
}
/ Q" [7 p0 G. p8 l" P
else
, P9 q: D- q( y7 E; T h
{
4 @" y; a. f' m. z: K' T
if( pLight )
z L% \+ o# H% X. M/ z# L) x
{
% e2 H% V0 g; X ?/ o
( O4 ^( i( B5 F8 G$ x9 b
int nHour = 8, nMin = 0;
, ~' f% }5 ?6 z) c, P: V
#ifdef __CLIENT
% h- @# I1 U, u4 T. k
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
, B* _7 M. M) S2 C0 B
nHour = g_GameTimer.m_nHour;
0 c: R* z0 m' V ] q2 O
nMin = g_GameTimer.m_nMin ;
( s4 Z3 H- t1 M8 a3 i
#else
5 C0 U1 B7 d) {- ?$ x( C+ t4 b
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
2 g( }& k5 N; x3 |1 b. J
if( m_nLightType == 1 )
: N0 k, ?$ A/ v
nHour = m_nLightHour;
" g9 {# E6 Z1 L3 C+ e6 D" ~
#endif
8 L: r1 o6 Q+ J: F& J
nHour--;
# G$ L5 }. @! c1 S0 t0 o: z5 J' L$ H
if( nHour < 0 ) nHour = 0;
& i5 N5 A9 l5 l. m, p
if( nHour > 23 ) nHour = 23;
# g/ [9 A1 C& ~; n0 M
; z x8 f5 K! j) \5 q$ n' E+ S1 C
//if( m_bFixedHour )
: D' y; q8 C% g
// nHour = m_nFixedHour, nMin = 0;
" P0 v: L5 T" {6 k" A: ~
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
+ E9 F. I" l2 v
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
Z# _7 h! \1 O# G! D
) G4 ^. j1 q; M. _6 j
//m_lightColor = lightColorPrv;
9 Y1 C! m& L! f8 Q& J' }
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
0 r9 k6 `% Q6 @' z
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
- l* W+ n' \8 m) ^- k. L7 g
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
9 J; ^& C2 Q4 K3 N' I
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
7 H b' o2 S: m& t/ o# ]
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
' k) b1 Y) a1 `- H! j6 A
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
5 [& }. m9 y9 q$ Q) n3 ?
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
& ^9 }# e/ j- M. s
: j% @6 p1 r4 X' D' o5 _; ?( D
// à??μ oˉè*
& S: r0 v& r/ `6 i3 h! \( k
pLight->Diffuse.r = lightColorPrv.r1;
" l: w4 ?5 }/ E- b2 l& a
pLight->Diffuse.g = lightColorPrv.g1;
( @ Y& s' z4 l! ~
pLight->Diffuse.b = lightColorPrv.b1;
0 w2 _! A+ M5 `% c; f4 W
// oˉè* ??à?
) G( z- g6 |. k5 r
pLight->Specular.r = 1.0f;
- J2 ?' [$ N; ` ]* k8 ?2 E
pLight->Specular.g = 1.0f;
% k- B, N3 Y4 ~5 Z
pLight->Specular.b = 1.0f;
) p! c+ e- A2 K8 D3 D+ a4 b) ~! E
// àü?? oˉè*
( D. Y( J! p. B) z
pLight->Ambient.r = lightColorPrv.r2;
9 b, E3 [, u+ S* Y, G$ T
pLight->Ambient.g = lightColorPrv.g2;
% o5 ~+ \+ f( h4 h8 p$ K% Q
pLight->Ambient.b = lightColorPrv.b2;
% E5 F' h' B. q! o% T1 p: j8 T
K4 {/ l0 l$ p2 K+ ?
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
. H! a: v; R' {- W& Q( L8 l3 ~. T
{
% S3 n a! r$ r8 Y$ K
pLight->Diffuse.r *= 0.6f;
. k3 B4 B1 F" [) t9 K' Y
pLight->Diffuse.g *= 0.6f;
4 i$ t- ~: D1 h
pLight->Diffuse.b *= 0.6f;
" g8 V: M5 `+ Q2 I. y. @
pLight->Ambient.r *= 0.7f;
. r7 [" Y% S3 c" ]8 l8 I: `
pLight->Ambient.g *= 0.7f;
/ v0 U9 ]2 M/ K% z
pLight->Ambient.b *= 0.7f;
9 e# \! P/ S! t
}
7 G; P" i; p( V: ^& @1 J
! s& U/ e6 m* b4 \
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ I" a8 O9 p1 |8 y' [
if( g_pPlayer )
6 H; T% U- E9 g" Z+ t
HookUpdateLight( pLight );
4 \+ M. D( {# o# A5 o0 I/ A; n
#endif
2 B7 {' u$ ?# S8 u' I
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' S: ]* A* E7 ]4 |
( M6 B2 B& S- N8 ~4 M! k
#ifdef __YENV
8 I* v+ ]4 f" T# k e. k
pLight->Diffuse.r *= 1.1f;
& G, N& `) c- I0 v; {4 W8 `
pLight->Diffuse.g *= 1.1f;
/ \3 T: R" W; Y- W- k% h
pLight->Diffuse.b *= 1.1f;
9 `" T N ^" o' K. b
// oˉè* ??à?
- |" |+ i$ \4 ~
pLight->Specular.r = 2.0f;
6 _ d* l/ q/ Y8 j# g2 U8 d- a
pLight->Specular.g = 2.0f;
3 Y# @% h9 w8 l
pLight->Specular.b = 2.0f;
9 Y& b: o+ `$ ^3 d4 J! [4 X5 ^7 @
// á?oˉ
, o# I" s/ U& t8 O
pLight->Ambient.r *= 1.0f;
- S. ^; E' P7 p6 N9 {
pLight->Ambient.g *= 1.0f;
0 I9 p5 T( `& T; p
pLight->Ambient.b *= 1.0f;
5 w, \' t9 y1 T+ _3 ~* A, j( J( k
#else //__YENV
: |7 ]4 D6 Z7 Z9 F
pLight->Diffuse.r *= 1.1f;
; S4 C/ u5 W& N$ S! r* p% E
pLight->Diffuse.g *= 1.1f;
/ V, m: H; Z* z6 s3 p0 `
pLight->Diffuse.b *= 1.1f;
& g3 v0 Q! Q6 r6 Y0 M0 G
// oˉè* ??à?
& z% ^$ S0 f3 S/ i
pLight->Specular.r = 2.0f;
# {( u- `4 P& b/ S; [4 x
pLight->Specular.g = 2.0f;
" o S0 _ n4 [8 I6 a
pLight->Specular.b = 2.0f;
$ u O# ?$ W( _
// á?oˉ
5 L6 d( X1 B% \' F9 p
pLight->Ambient.r *= 0.9f;
4 l! t6 E+ ?9 f
pLight->Ambient.g *= 0.9f;
# p$ O5 s, k A, L( C6 d4 F
pLight->Ambient.b *= 0.9f;
% g. v. J5 _8 m/ l j1 c$ X0 V1 H. c
#endif //__YENV
n/ V) z) C4 F5 Z0 z0 A
/ X" q2 C0 O+ y6 u& W4 k
memcpy( &m_light, pLight, sizeof( m_light ) );
& @) f' t9 c/ @3 w6 a& v$ J$ j o$ R
, B W9 W: q7 S' J' U0 E) Z
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
9 o" {/ G; c9 k
D3DXMATRIX matTemp;
I8 r5 m! u7 D/ X
static const float CONS_VAL = 3.1415926f / 180.f;
+ @: ?) h* P3 O B( Y6 q) }
, C8 ~6 {* ]; q; [, W5 F/ _
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
( c1 F9 I5 K9 X3 b2 z j
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
5 e1 G5 s; t0 m W# K8 V$ N
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
5 v) t6 P* A/ D
pLight->Appear( m_pd3dDevice, TRUE );
0 T0 m% v7 k- N9 w! v
1 t7 o/ C! u) @& B/ x- X% ]) v
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) l% u; I% p4 G( c4 D: H5 E( H+ f
// D3DXVec3Normalize(&(vecSun),&(vecSun));
( C& X6 ]# b2 E# W# h, Z
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
[8 N- {$ Y: x
" ~7 }0 b! v5 ~+ d+ _
DWORD dwR, dwG, dwB;
8 j& s. [( k; ^0 K0 o
dwR = (DWORD)( pLight->Ambient.r * 255 );
. f& q+ _- P Y9 X; {, t) J! A
dwG = (DWORD)( pLight->Ambient.g * 255 );
5 j$ x) r7 M" e' t/ D6 [
dwB = (DWORD)( pLight->Ambient.b * 255 );
& [8 Q7 L% T" l9 [& W; ~' Y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* o: ]. s) Y8 W3 G8 R2 K
}
. t9 V, B' n: _
}
, H7 c& g% N% F6 L9 n2 d% }( A
, C6 L8 w" c& r) D
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
- s0 x% d3 p; N/ k0 ?/ L2 v! g
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* \0 \) Y) d* R; J/ {8 H# H9 `
::SetLight( bLight );
5 m- F, r$ q6 _- a; q& {
0 Y. f7 z" O" z0 Y( ]1 j
// ±ao? ?D?í???ó á¤à?
! n R3 l" {% {7 P9 I; n
m_pd3dDevice->SetMaterial( &m_baseMaterial );
4 D* p& i/ `% j3 v& z3 z
# R( N6 P* n5 U" g6 r0 ^
#endif // not WORLDSERVER
* H# ?2 H1 w( U# P) K
}
2 m+ w: {/ j, m# \* }
并更换
0 M# _+ p/ b4 L" D8 S- S( k
Code:
/ v/ x, N- m+ @) X2 i% D0 ?6 A# Y0 Q
__FLYFF_INITPAGE_EXT
5 [; ?: Q3 u/ k1 X" g2 v
定义
4 u. U9 N t* G/ s& b4 f U1 j
, v' z) Q, Y r0 b+ O1 k7 o3 B
; B4 @8 m, l( v; n5 r
% e8 C4 H7 ~3 z; j( _$ o
- n9 j8 Y+ F) V' L# `! ]6 d1 H
现在终于删除我的狗屁加速...
9 K$ q: O) ]" f/ r& O: J' g9 R$ w- Z
: Q( E0 Q! a# ~
& n/ ~. `8 c/ X. B5 t" Q
! `( b5 s3 N" b, j% ?5 K! _1 b
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2