飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
2 X5 m% s5 B+ f) [1 Z
尾翼:
! f$ k0 d% X9 m! |8 t
$ n( l# _1 |; {. ^6 j M' E0 p) n
代码:
. |3 U9 `% `" }
CWndAutoFood::CWndAutoFood()
' e3 i; z3 c& A1 Y3 R
{
( p. O2 [+ D7 M$ y/ I$ E, S% V6 O
m_pItemElem = NULL;
: T1 m. i1 |6 G6 X8 s
m_pTexture = NULL;
% V; p/ S4 K/ w+ r0 Z
bStart = FALSE;
6 [6 o0 p" Y' w. A" k
}
7 x/ {7 x% n/ k. c& ^2 ]. z
: n9 I4 U: @- G6 w8 L) V; f
CWndAutoFood::~CWndAutoFood()
' y3 f/ r2 m% c3 |
{
3 z, I, a; o) y
AfxMessageBox( "AutoFood ist gestorben
" );
3 w7 w9 K0 j) H& U7 W
}
q5 E2 O( L& ^
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
, R" N }: ?8 h2 D2 X
{
W% w: f) O. G# P" n3 R
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
$ B Q& @8 L8 \! [, g: e+ a: e
}
, {( |& G9 d# v3 i: M/ V& K
/ L% i/ j/ _. U- I; `0 d# E
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
# K( z5 [5 ~5 N4 Z9 z& L5 r% i% P
{
5 H; W2 {5 |: `# z4 m- [/ P7 k
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" k3 E& w6 K4 [) t: Q
CRect rect = pWndCtrl->rect;
4 R- J) p+ D1 c! ]
if( rect && rect.PtInRect( point ) )
' ?3 H5 ^9 r4 y) g( h( I- b
{
# o# b6 A" V. T% k3 I' J
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
! O0 H; d0 X o( j
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
9 E) o6 v4 `5 O( k' A# Z
{
. E) H' p2 n+ b' `
if( m_pItemElem )
" _, n* W& G: q$ g) n, T1 Y
{
% \$ J' n4 F8 K
m_pItemElem = NULL;
, U" I- t) p9 ^; i& a
}
! y: A! E% P5 j: V4 t
m_pItemElem = pItemElem;
+ ~, ?5 Z% s. @+ u# n/ J
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
# B2 U3 i/ w! K% D& }9 b
}else{
- U2 b) e" _/ W: R: e
SetForbid( TRUE );
1 G+ h- e5 D& |; m3 x* E3 ?
}
, B3 F2 A& c9 y# i# {8 l- ~
}else{
* }6 x8 C" O' X% C
SetForbid( TRUE );
. F) {4 v$ k9 M, g7 `2 d, M/ d
}
' ]' r: y! Q4 O/ ]* o
return TRUE;
' L" K. X5 D7 U9 {* d6 V: M/ D
}
& y9 f, R0 e* D8 F
) g2 i$ D/ [( V* o
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
8 h7 H% t g% S) \
{
. n( d3 d& |; \2 L+ E
switch( nID )
* }( a/ i1 P: f8 C4 d8 A7 H# o
{
+ O: S% Q7 W1 e$ r1 J% z
case WIDC_BUTTON3:
4 } H9 R( S8 a6 u/ d% M6 d5 s
{
% y8 T) C" L/ Q* F
bStart = TRUE;
: i: o. @7 h9 H4 f
break;
" F' U1 A1 M6 k
}
& K. v* o( G1 S8 Z
case WIDC_BUTTON4:
( W$ l7 b) k" h& U* h
{
2 r) e+ b; J8 \7 v9 o1 ~4 U
bStart = FALSE;
9 q3 b3 X- |1 W+ O& }
break;
0 q* t6 N; E$ D; o w- f
}
) Q$ s( C$ a5 S% r: `5 X( @( n
}
8 j2 i1 O/ q1 g
return CWndNeuz::OnChildNotify( message, nID, pLResult );
$ X# z1 ?& e; o9 ]. R
}
0 s8 v1 z3 H2 K* U% F0 G2 ?8 j
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
6 F3 s- X! B. N# ^. N
{
4 _! X3 q |1 l( u8 N
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
2 Q" Q2 G$ J+ _5 W0 j8 c0 S
if( bStart || !m_pItemElem )
( d3 u6 Z* X- i( A
{
' y/ X# g' v( t' F
pBtn->EnableWindow( FALSE );
B q; t6 R7 P3 @
}else
( y; M: J$ z5 k7 A5 x5 {* R! w
pBtn->EnableWindow( TRUE );
/ l$ C, A" ~9 D
if( m_pTexture )
4 p5 w5 l# e; V! M' Z! o" T
{
* l) w0 Y9 W7 X9 U7 x
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' U( c1 B5 S$ [% B5 s! Q1 [
if( wndCtrl && wndCtrl->rect )
4 D; n b7 s$ G0 L$ m% o; u) p3 b
{
7 h r1 `5 i% l+ J
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
. @/ F, o( W7 k5 {7 g
}
/ |, |, c. ~, t% \, _
}
0 K0 }- O1 f) p/ i$ l
}
& ?6 i4 b p9 l$ M9 B+ v* E: [
( U* ~ d3 G! `
BOOL CWndAutoFood:
rocess()
' c* O1 P& o# {
{
2 A9 A% C1 \+ t" ^- F, i
if( bStart )
8 e% W4 k, }2 b( b$ R; T( E# M9 ~
{
5 M( T- `4 G' l! T; r$ D$ ~% o: T1 Y
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) Q* E9 Z; K% L- M# r! ^
{
7 X6 s# Z: f* T5 n% T$ i7 G" x5 E
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
$ E3 ~1 m* V/ m9 J
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
h6 V3 [3 E) ~( Z
}else{
* E# x" ?( ?: V, ?+ G5 u
bStart = FALSE;
* V. ?9 O' H! ^- s% v' I- X; f
m_pItemElem = NULL;
! j- ?# |3 d" Z3 {8 h# x: a" M; u) l
}
( O |6 q/ _( M! p. s
}
0 |; P( I, N0 U9 ?( y) h
return TRUE;
+ C2 [6 D: i8 t
}
. S; F! O: s, [. h3 Q9 o
: z: {. z7 k% U; d/ Q1 x! ?$ C
登录视频废话:
/ K2 z t) J4 s- P E+ ^8 d5 B
尾翼:
1 s% F$ U! |( c& ~
' O5 d, [9 y" [
代码:
+ C6 D0 G7 x. h$ i
( h0 y' G8 _0 L- J2 c& i. Y0 u
void CWorld::SetLight( BOOL bLight )
Y+ `4 ^8 G0 Y S7 X" L1 S
durch
( ~7 O) J( T9 O" u: T9 _& m; o6 c
Code:
1 i6 l k2 Z) _' x& I
void CWorld::SetLight( BOOL bLight )
( ?6 \! |2 e) C) Z3 ]
{
0 }9 B) `. G6 F: K
//ACE("SetLight %d \n", bLight);
' v" k I# i) E
" K9 ^- X! ]% r& Z5 F: {0 i- P
#ifndef __WORLDSERVER
* p1 T. o. {) _ z
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
% T) H. _( \$ j& ]6 B% S+ G
CLight* pLight = NULL;
+ G7 E# e$ v$ V# d6 {- `
9 [- A, Q, U: A# r3 k) m! P B1 ]
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
+ H" J% y% f: q- I) c: y1 b
" K4 ~( W' T* k# k1 P3 s' b# T
pLight = GetLight( "direction" );
# E9 D9 W% z4 _8 m. S! I; l
' S" V1 ~7 I# D; K; v1 W
#if __VER >= 15 // __BS_CHANGING_ENVIR
9 }" Y; a' f( g/ x* F1 N
if( g_pPlayer ){
+ |# n& |4 D/ J/ N
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
4 b8 U: L1 c0 r8 c
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
n4 S' x2 ?0 ?( l
{
& v: k% r9 o3 D7 v1 d
if( pLight )
8 _# Q2 k2 q& l; a) h% j* G; K: n
{
( ^3 l- S2 X0 h3 p
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
# @) T, Q) z/ z3 y$ @3 p
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
' L# ~; d4 U& r% F. q" d v b
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
! ~9 K3 z& G: h' x! E
: c s! x2 ?6 N# ~; i9 D- {3 G
pLight->Specular.r = 2.0f;
! ~' j9 e0 C5 ]4 j5 y1 k w
pLight->Specular.g = 2.0f;
' o( R) V# e) t- j% k
pLight->Specular.b = 2.0f;
: l7 R0 w0 x l5 R8 r
6 p4 K, E( v" G
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
7 y2 S7 g$ _8 X* C
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
5 a0 j/ z. P d4 ]
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
* F2 b, S% b' I5 _* t% \% y' P
* D! ]) K. y: t" d% t/ S3 l+ H
HookUpdateLight( pLight );
4 [9 F1 I$ s! n" C9 L# l9 w. A) _
& J- r! h7 H9 r4 B- ^5 p2 d
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ n# G# [8 k, |
9 C, Z5 l2 o8 B( z' n) z* t
pLight->Diffuse.r *= 1.2f;
% k' @: j, W9 C1 E1 R; S
pLight->Diffuse.g *= 1.2f;
4 n- a) g. R8 F7 \, z
pLight->Diffuse.b *= 1.2f;
$ N6 E X' i1 L, S) x/ A# m
3 P' U) S9 i5 _4 r: g3 o' U) d
pLight->Ambient.r *= 0.8f;
, a& S* w' A& F, B
pLight->Ambient.g *= 0.8f;
; a9 a; V L8 ]/ V% c9 D$ n; C
pLight->Ambient.b *= 0.8f;
' f3 R/ E8 M r7 W4 b0 J" r
, U3 }2 B0 }" B$ ]$ b' J0 B
memcpy( &m_light, pLight, sizeof( m_light ) );
7 L8 r F% F* v2 y3 \" y9 o7 O Q: L
! ^+ o' h8 G- g1 W+ J/ X a l+ v
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: P% Z8 g5 Q! b1 a7 l; M( S
D3DXVec3Normalize(&(vecSun),&(vecSun));
. w# D2 t( ~4 y, A' p$ M
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% a; v0 H5 n# i" d% M& v+ Q. q: D, b
pLight->Appear( m_pd3dDevice, TRUE );
* B4 j2 q$ y P/ C, I E
/ m/ K- t4 y4 A# y& O/ `3 W" N
DWORD dwR, dwG, dwB;
" ]# o& B$ @7 d; L3 O6 m
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 @" I2 O% T9 F5 c+ s+ F% V
dwG = (DWORD)( pLight->Ambient.g * 255 );
) F+ @2 [: J" P5 P1 F9 t3 X9 ^
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ O' d" e6 s1 e9 O t% {! N. i
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. X" `8 I; I, a# O
}
" B( O6 a8 q; P$ K# t% Q
}
& U3 S9 i1 T3 A! P8 P: C
}
& j* }/ Q- C; g7 K5 ~. I
else
3 L8 E# J# x6 T, ^+ `& X3 F1 M4 t
#endif
$ ~2 K6 n b' f/ d
3 H- H u7 L) K( w. G' ?
if( m_bIsIndoor )
- B, }3 X$ ~8 Q- u
{
7 a2 O& Z" F5 u3 i
if( pLight )
+ @% O$ o5 e: _, k) W
{
t4 E$ P2 J1 u
// à??μ oˉè*
2 t/ B' N3 C% }( U2 A
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
5 ?" u. m3 f. N" {
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
- s' X$ ~; L( j2 n
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
5 x/ C) b8 k! |
; D* Z; p1 ^5 q- ~' f
// oˉè* ??à?
" M, y9 m# V3 M. c" i1 y( I
pLight->Specular.r = 1.0f;
0 T" U4 o% o" \3 \0 r P5 G
pLight->Specular.g = 1.0f;
' u! K8 ^; j. \$ _0 L0 W
pLight->Specular.b = 1.0f;
# O% S3 e2 z6 D( n. p
// àü?? oˉè*
; y9 J- ?. B% n9 E1 E
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
W. N+ G% Y" Q. N o3 @
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
' A& e$ d! w" t& y
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
2 e1 Y' f) f6 `6 W
6 l* N$ h# I# r4 A# Y# R5 F
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' d/ @1 _5 H' N% C% L7 R
{
; G0 W0 z) y; x. [ F: P. ?
pLight->Diffuse.r *= 0.6f;
& N# v0 p# u4 I; h
pLight->Diffuse.g *= 0.6f;
4 X2 D p \# g" u; @ \
pLight->Diffuse.b *= 0.6f;
: v6 ^6 P. Z4 H- B
pLight->Ambient.r *= 0.7f;
9 n7 q+ U6 v& T; F
pLight->Ambient.g *= 0.7f;
0 r) Y/ c/ K2 L$ ~% V: `
pLight->Ambient.b *= 0.7f;
& w2 v# s! d( x1 n! C; |) W
}
. A) p7 T! \1 A7 F0 m. S
; T6 |( B- v8 r1 b5 o) u6 Q
#if __VER >= 15 // __BS_CHANGING_ENVIR
4 S7 Z% J E( h% H/ N" m( A
if( g_pPlayer )
* }4 {0 a- d8 \( c1 Y2 O
HookUpdateLight( pLight );
$ _9 a9 {5 w$ P6 F% i/ g) y5 ]
#endif
k. u, M" } |+ V
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' W& K8 w7 R \# A1 j4 `
; N4 o* k. e* Q% C2 O3 B* v
pLight->Diffuse.r += 0.1f;
: V8 w& ` s' o$ t& v8 t7 d
pLight->Diffuse.g += 0.1f;
( z6 z/ e1 ?! b* ]
pLight->Diffuse.b += 0.1f;
6 ^+ P5 c1 \& @& P& R
// oˉè* ??à?
1 Q c! k, F' S' y1 M- e* B; R
pLight->Specular.r = 2.0f;
! V8 E, P+ D! D8 Y. h; o8 x
pLight->Specular.g = 2.0f;
9 Q, h3 `; q& `
pLight->Specular.b = 2.0f;
0 y; _3 G, c, j. u! {: b- o3 ^
// á?oˉ
6 [4 E) d8 e% l( b! X. h" l8 j, [
pLight->Ambient.r *= 0.9f;
6 j" Z2 ?7 B9 i4 V: w
pLight->Ambient.g *= 0.9f;
- `! s+ k) n7 \
pLight->Ambient.b *= 0.9f;
. ^. O( _5 K! o7 _4 D' [
! V* |/ c |; E) S, I3 {
memcpy( &m_light, pLight, sizeof( m_light ) );
/ s( A! h6 s# X1 N$ d' M2 \
6 c V4 C4 _$ B9 u9 K8 ^) ?1 V0 C
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
% W$ ^" l0 U9 s8 u0 m
pLight->Appear( m_pd3dDevice, TRUE );
- V w3 J% |7 j6 ?9 e" E
$ z6 f" Q& P# C" S, u, }
DWORD dwR, dwG, dwB;
6 x3 [) S* r9 o9 u
dwR = (DWORD)( pLight->Ambient.r * 255 );
* Z6 z! _+ e6 @' A+ c& Q5 ]/ `) K
dwG = (DWORD)( pLight->Ambient.g * 255 );
! f2 I) H) b7 ?3 a* ?2 V
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 M1 j. c- k1 ~* O, {
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 }# A# @9 N+ p. Y9 A
}
8 a: T& |6 Z) _- Q% S8 h
}
* R2 ]* ?# B P5 k9 }$ x$ H* |
else
# ]. S; X2 Y4 h- r
{
" V' S8 k! R, }# z
if( pLight )
0 ~$ S- S7 j" B: C. C
{
* F; \% u9 G% C: } u0 r# K" J
. M2 ]) N) ^' @2 b7 q
int nHour = 8, nMin = 0;
: Q6 {) O2 L+ r8 q! J# Z( ?. i, O
#ifdef __CLIENT
" R8 g/ C; T E
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
9 b" C' Y0 P$ W
nHour = g_GameTimer.m_nHour;
9 w' G; o5 e' A, w3 m3 n
nMin = g_GameTimer.m_nMin ;
- w: f2 U `6 n J
#else
1 @ W2 U8 x+ U" u) \4 j
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
: i( @' p8 R# _% h9 @- X
if( m_nLightType == 1 )
* H! m) M) B! `1 ^& o1 x5 w8 L
nHour = m_nLightHour;
, s# d$ L9 Q; j! _ ?* i
#endif
5 K7 H/ l* S, ]) @
nHour--;
6 r/ d2 [0 t7 g$ W9 J+ ]0 m# a3 A1 q) X
if( nHour < 0 ) nHour = 0;
+ h$ l; z2 Z) s g
if( nHour > 23 ) nHour = 23;
- x4 d8 G4 R1 d1 `% |( N
9 l" K- K9 y U! W
//if( m_bFixedHour )
/ ]/ G9 p0 U) Q+ z2 _: r
// nHour = m_nFixedHour, nMin = 0;
" j* F; p# h$ F2 k
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
' i: U! K7 N3 U2 W
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
7 A: Z, g0 c' S, ]
1 P9 {: T9 j: b4 b* U7 G3 r
//m_lightColor = lightColorPrv;
$ H# L0 E5 N: M$ _9 y
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
2 p9 p- [: X& e) D
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
+ N/ F. X) x- c- ]
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) C* K7 y# @7 V$ D& F. B
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
- w. u2 X5 c6 I! m- v6 \
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
1 K' G; R6 z% i% \
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
# j( |8 A: ]% [ V3 W: Z3 Q# ^
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
. i& P2 X; X) y/ i
8 L* F! R/ N/ L3 G0 o, p4 m
// à??μ oˉè*
a: J/ H' C% L1 _* {
pLight->Diffuse.r = lightColorPrv.r1;
1 F' F! Y {* X: l' e
pLight->Diffuse.g = lightColorPrv.g1;
3 b7 w0 T8 k' o2 {$ l
pLight->Diffuse.b = lightColorPrv.b1;
. G5 R* G0 g4 _6 [
// oˉè* ??à?
# V( l* a3 A4 c- { a
pLight->Specular.r = 1.0f;
& E# c; Q7 w( N7 i4 N- Q
pLight->Specular.g = 1.0f;
# c' ], z, @ T) |/ r1 Z3 P6 Q
pLight->Specular.b = 1.0f;
- h" T! ?7 ~2 _" ^0 n% M" o( a# ?* S2 s
// àü?? oˉè*
% K) S, l4 v( @; W* J
pLight->Ambient.r = lightColorPrv.r2;
7 M& U( n( p8 h5 w, x4 j
pLight->Ambient.g = lightColorPrv.g2;
' J! L4 \( C# X* i. n @
pLight->Ambient.b = lightColorPrv.b2;
/ \: ~+ P9 u% o( @8 N0 T/ X7 a
4 z, u" o( Q6 f* \
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% i% E4 h3 V, n& e9 {* J6 a( J
{
6 A, }( d+ A2 `: m- y- [
pLight->Diffuse.r *= 0.6f;
" e' L+ ]2 l! O( {
pLight->Diffuse.g *= 0.6f;
! B( _/ ]1 Q3 M% W# Y' s. }
pLight->Diffuse.b *= 0.6f;
( n6 c0 i. J% H
pLight->Ambient.r *= 0.7f;
) _/ B1 A) l% g9 _1 Q
pLight->Ambient.g *= 0.7f;
+ q8 ?4 Q! z/ q+ M8 Q
pLight->Ambient.b *= 0.7f;
j& U$ I, M6 Y. ~1 B% _* J8 D/ ?1 x
}
. B2 p/ v" K* |4 ?
' \- C. D9 W% J1 G% ^! S
#if __VER >= 15 // __BS_CHANGING_ENVIR
U: `$ H" d5 V1 `9 y( V
if( g_pPlayer )
( o3 b- w$ {2 }- T% e7 k- H! u y7 f
HookUpdateLight( pLight );
2 m S$ \+ Z4 s8 F0 B4 d7 O$ j
#endif
: B" y2 n6 A/ j
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
! o$ z9 V' Q! u6 T4 x
f5 j1 f+ u& M
#ifdef __YENV
' M& h) N0 o2 D- v9 U7 z1 C2 O
pLight->Diffuse.r *= 1.1f;
; M" F% m, H; y" @- A# c9 D1 y
pLight->Diffuse.g *= 1.1f;
3 G/ x/ q& z! f; G ?7 m
pLight->Diffuse.b *= 1.1f;
, |* N! X" S5 F( l
// oˉè* ??à?
) ^! q8 g+ t- X' m% n3 R
pLight->Specular.r = 2.0f;
1 y& F5 g" x% w1 y- F9 }
pLight->Specular.g = 2.0f;
4 F2 v. G y; i% Z) E1 l$ ~! Q- X
pLight->Specular.b = 2.0f;
6 C: I a/ L* z; t) J7 O
// á?oˉ
, H5 w' h, K% W) ?) J
pLight->Ambient.r *= 1.0f;
7 ?- j- x) y0 U
pLight->Ambient.g *= 1.0f;
& D8 u+ d; f8 s. y1 U! P4 z
pLight->Ambient.b *= 1.0f;
" d6 b8 D* q, S/ V; T! L, A
#else //__YENV
8 V2 M }4 h2 z u$ w- [' ]
pLight->Diffuse.r *= 1.1f;
% F; z4 n8 v2 x1 r" M2 h& g) E) n
pLight->Diffuse.g *= 1.1f;
; X- i5 _4 j% {, }. P# b9 g
pLight->Diffuse.b *= 1.1f;
3 s# c& J3 R& O* D/ L' x1 X, ^
// oˉè* ??à?
8 i7 R6 f/ \: Q p: C3 X+ r
pLight->Specular.r = 2.0f;
4 g$ ]5 o" k$ A1 }; V0 z" o% a
pLight->Specular.g = 2.0f;
( P" a8 h5 X: w/ u
pLight->Specular.b = 2.0f;
7 M# A% {% N5 x: x
// á?oˉ
/ y3 W4 c M' U0 u# [' A: n
pLight->Ambient.r *= 0.9f;
: n3 V* z3 X# W- d
pLight->Ambient.g *= 0.9f;
9 l% n9 g) T0 r: Z, x
pLight->Ambient.b *= 0.9f;
9 A4 I. I5 f/ T
#endif //__YENV
6 S+ Y! ~% F3 ~5 m1 L& Y# B' M& d
7 b, x! @; [( Y( K6 t$ }
memcpy( &m_light, pLight, sizeof( m_light ) );
! |2 U% X/ z! i) R" R0 N7 o* ^
5 ?' Q4 j7 I( R3 O& I+ R2 F- F4 V: q
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
( W* n, J2 q k& x* Y" S
D3DXMATRIX matTemp;
6 F+ ^6 R- i8 _
static const float CONS_VAL = 3.1415926f / 180.f;
" Z( O* |1 Y$ v
9 E& k% H& w, I- G5 A1 h6 C
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# ~! ?. E% ^, N. t; O0 N
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
3 H2 c8 D% r9 m1 e+ V
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
5 {9 G1 k( y+ E7 Q
pLight->Appear( m_pd3dDevice, TRUE );
8 W$ f- ^9 ?* S9 Y3 z6 r1 \$ A
" U. W5 X5 E: z2 W9 L: H
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 |) W" c, D- k" \
// D3DXVec3Normalize(&(vecSun),&(vecSun));
0 P1 D2 U% r. H$ X; S0 R) W: R
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 A# F2 u6 S: Y
. w( o, a6 ^" m, N: D0 i
DWORD dwR, dwG, dwB;
# z! q9 C+ I& \& C
dwR = (DWORD)( pLight->Ambient.r * 255 );
- r' f. ^3 W# `* g' B3 y
dwG = (DWORD)( pLight->Ambient.g * 255 );
5 G! p8 g0 _7 k4 U- u5 c3 v
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 U, G Q4 P6 W( Z
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) {8 K z9 a) S# \: h4 L7 F
}
) C/ f& I5 i$ z# A! ~/ P7 N
}
- p) {, O6 f9 U" W
' }$ |) w! ?/ }( r& @! |" r
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
$ o2 ~3 L9 Y: t9 j+ x0 A, I0 N
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) );
' K7 A4 q! K' J
::SetLight( bLight );
3 S0 ?, _& v. ?, w) P% C! r5 e5 h
! N. v: g) h% V: l% Y, g
// ±ao? ?D?í???ó á¤à?
4 H5 f; F3 c- D* X
m_pd3dDevice->SetMaterial( &m_baseMaterial );
5 j& w- \ I( C" b$ U" f
) `+ k5 }' F4 ^+ K9 X- d
#endif // not WORLDSERVER
4 W9 B9 ]* L: C Q. u, x4 }7 T
}
- J" K' w' V, \
并更换
6 W# o% B4 @7 q) q _
Code:
b4 j. P# I* q! ~1 }
__FLYFF_INITPAGE_EXT
$ V% {: W- [7 S6 Y
定义
7 O- ~+ F7 }* j1 C* _
8 J& ~7 N, n: r. g' b- u6 I3 w% N
& v& z4 R8 U0 D
) O/ j& e5 m7 c6 a
, W) b, {2 ?; ~+ N$ i4 y7 k
现在终于删除我的狗屁加速...
. l; |1 l6 F5 s0 ^0 F
" `: W4 R6 @: F) Q
# @- q* w7 H0 V8 ]- W( Q- ?
2 j+ w7 {9 A/ q U: N
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2