飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
6 e1 [- u# F/ v8 \# Z, O0 E
尾翼:
$ g7 ?5 `: L3 ]. C
* L. @1 J. H. X
代码:
; | ?# p9 Q4 e) G8 a3 w8 C* d$ w
CWndAutoFood::CWndAutoFood()
4 R' p% x2 V' \
{
& \4 P- s( T( p7 t" N
m_pItemElem = NULL;
* I3 T' c! P2 q& C
m_pTexture = NULL;
7 X0 `* p, N/ }
bStart = FALSE;
3 W: O' T% j% ~) s# r
}
: A( I1 W8 H2 V+ b
8 t( l! K# }2 C! W& C3 m
CWndAutoFood::~CWndAutoFood()
: `8 e. R! I6 m% o# O6 `, ?* G: O. |9 R
{
! J" a7 i8 {$ }3 l: I0 V; {9 @+ @! \
AfxMessageBox( "AutoFood ist gestorben
" );
0 p/ _1 P; z, U3 h4 v' ]& n% W0 O* E
}
' L) O6 G$ y' h' P% e3 E
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
1 E1 D- `1 z; ~3 @7 k
{
# i0 ^7 I5 v Q0 f# O1 k5 b5 l
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
" x$ u% X( E3 L( F1 x1 {
}
1 y. i5 `: @6 l2 E2 x9 k7 }
5 t H: A. \3 K
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
( ]; d+ C Y2 o. e; M$ _
{
' \/ P) T. T" r. h* {0 d+ X) S5 Q8 y r
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
4 y9 P2 ~& l6 P$ n2 o. d2 f
CRect rect = pWndCtrl->rect;
% C7 B7 s( M: r% }8 `( n% f3 _
if( rect && rect.PtInRect( point ) )
, q0 y& k+ V* r; t8 L
{
- y. \( N7 w8 k$ e
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
% f- K3 f/ L, n2 p4 c
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
& e4 W4 t$ g4 M" {/ Q* o. P2 G
{
, G/ Z3 O/ _% {' t- j5 k
if( m_pItemElem )
0 ^; H2 h; Q) Y d; |
{
, h# ?, o$ Y/ q
m_pItemElem = NULL;
' a. }* A! M9 x2 s! R
}
" r( u" G7 k) s H$ a3 c& F
m_pItemElem = pItemElem;
+ _1 Q$ P! Q. R+ ^* q
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
$ D8 U, p* k* F( V# z9 O
}else{
\3 b2 }" } ?
SetForbid( TRUE );
, s0 a* @# T9 B' [( h( F
}
# p% F& I5 A$ ]
}else{
% } q0 y+ p# z4 n5 H: Q
SetForbid( TRUE );
4 ?. r, i. ^1 [! W' G8 I |
}
9 w. |# j6 d. _" u: R+ b5 S
return TRUE;
9 q% l [% `1 ~' U6 e+ R! S6 }
}
. k+ F. W, c/ r
6 k0 R3 n, W4 v
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
0 k& i# a! s7 d% F+ f1 }
{
2 U* h) a6 K5 a8 c
switch( nID )
2 Y4 r, G) C* A0 I1 j8 N: U! v
{
* {: T- F3 n3 D! I
case WIDC_BUTTON3:
* J L1 \9 Z/ u; ~: H
{
) _3 ^% S( [+ K& y5 a* D) x
bStart = TRUE;
0 Y+ d7 D2 H. Z4 w1 f7 G: {7 a" G
break;
7 m8 c+ K0 W2 t% x& p# k( r: J
}
8 v7 Z, d4 a2 J; {( @4 V+ f
case WIDC_BUTTON4:
7 t. Q. l- f* \4 G2 S
{
: d& C* [7 F- J: y; h1 j
bStart = FALSE;
: v1 W0 o2 M9 v. M
break;
& P) G+ V8 I$ V- }2 p9 k
}
/ L* v: G, c" r; R' S+ ~3 m
}
% b3 ~) z. P/ |- \$ a2 W; ^
return CWndNeuz::OnChildNotify( message, nID, pLResult );
8 E3 z5 {8 ]6 E
}
( B4 e1 H8 z7 n) Y- I8 @) G
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
% d' C$ q6 o' H( z' R9 S. ?7 X
{
4 u4 B; j% C1 I' t+ @8 s
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
9 w# `( i3 G' L: S# ]. j
if( bStart || !m_pItemElem )
3 Q& t8 i( P, E
{
2 k( X2 P5 o, G7 |% D% t
pBtn->EnableWindow( FALSE );
+ Z+ S5 o4 D) T/ [
}else
6 R6 k6 `0 _7 s
pBtn->EnableWindow( TRUE );
7 E# R p9 E4 H0 w4 i+ Z, ^' P
if( m_pTexture )
1 c) K# @& u9 }
{
& X' L# j, E$ L2 e0 C
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 u, |' _2 b6 f) O8 a- C$ G
if( wndCtrl && wndCtrl->rect )
& W5 w% P3 P {
{
0 W1 r: D& \+ \. f, D4 e
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
, D8 L8 p$ ?1 l7 S
}
3 q1 \6 `) a6 h* {- e' d9 f
}
% ?0 G* t: a" _& ^
}
5 I1 q% {) z f3 a+ i
. S9 ~8 `) X1 v
BOOL CWndAutoFood:
rocess()
2 ]# F7 `( D. g6 t' R4 l
{
# B3 ]' d- m# Z
if( bStart )
( p8 N8 f2 y D- E# a" }
{
/ L1 K) w! I8 z& q+ ?3 r: R
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
/ _$ Q* \4 u' a2 a
{
" A% z* V. T5 {- Y1 X; S; H- `
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
6 Z k. J! Y+ J) Q4 L3 r l4 I3 Z
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
9 m' u: i/ `# Z
}else{
) x+ F( v! u& T6 \; u, w
bStart = FALSE;
; g! E- V1 f' q1 x) f
m_pItemElem = NULL;
9 c1 I0 L4 e8 C9 ~! J' e: x# Y
}
- L9 w- h* E# Y/ J5 O, R& }; k
}
) r2 ^4 A2 D$ q; w
return TRUE;
% u* a# V+ F/ P6 Y6 m7 ~# Y
}
& l7 p$ o3 r- O$ W s+ c/ [2 v$ E
) C" u. ~# i) K4 r) O' j+ m. A
登录视频废话:
4 J0 D n3 C. p
尾翼:
1 |! `3 l5 ?" G* ?7 Y
2 ?" V; d6 B; A' a7 D2 y$ \2 C
代码:
@9 {) t3 S7 h
% S/ f8 |8 Z4 _ |" Z
void CWorld::SetLight( BOOL bLight )
# r7 a3 ?9 O& b
durch
1 c# V. C# f0 J7 l+ Q# |3 K
Code:
& A% h* O- R# |
void CWorld::SetLight( BOOL bLight )
- j& x0 j. R" O
{
: R, S" }" r8 H
//ACE("SetLight %d \n", bLight);
4 t1 t" C+ w$ |% y0 M
6 v$ U; e0 O% {2 N) X6 M" S+ T: c" {! A
#ifndef __WORLDSERVER
+ @4 T0 y% |& F4 i4 |1 T4 |& E
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
6 s2 ?& p% O* E# b" M: H* E
CLight* pLight = NULL;
- N9 _, N" O) h% l
: z& f5 C0 ~" ?0 J% h+ k
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
' @; ?7 i: N6 s4 }9 o5 x# U
7 L! @7 C, l; G! Z! n+ |; E# p
pLight = GetLight( "direction" );
9 c+ V8 _( j2 Y2 N! }4 B8 S
' L& y+ g2 `* r( L/ S, N
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 g, J+ P2 [; c6 U2 w: y* K
if( g_pPlayer ){
) i: q2 X; l* _$ t7 R9 m2 d# K: u
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
8 z3 U; T8 q) h/ D2 X, L5 i, l9 B0 w: U
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
& m R% T; k5 L, D& e. |
{
0 K" {0 z8 b4 T! r1 h$ C
if( pLight )
) Z: i* b }, q- v/ M1 D! g! f' E
{
9 t0 N6 J9 U5 G2 j" x) z
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
/ B2 l( {; p; t; G" J6 Y3 g
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
9 ]/ o8 o/ f3 f& o% b4 O8 p
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
3 b7 o/ d$ z! I$ v6 U- |
$ o( {! y8 L$ W+ ^: w
pLight->Specular.r = 2.0f;
! U+ ?5 u2 }( a, M- X2 c) h6 A
pLight->Specular.g = 2.0f;
) ^% P% O! [" J. ~/ R3 u
pLight->Specular.b = 2.0f;
1 _3 {# x' n& t" g" |+ m8 f/ k7 ~
4 g9 s: \: X; A0 w
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
& i1 ^4 _$ o/ j/ O, D
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
* I: u" c) n7 v% }" D
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ k, L0 a5 V6 _ {0 Z
, H2 Z+ U; |0 O" i% v9 B
HookUpdateLight( pLight );
" Z) V7 v5 }( S: V2 D0 S
% A+ u9 W* h1 D& ]5 S8 ^+ E
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* v1 a* o8 ^- Q
4 W& y. R/ r; c& o) B6 M
pLight->Diffuse.r *= 1.2f;
) l# n6 Y. T+ z6 t$ ]
pLight->Diffuse.g *= 1.2f;
. S' I t# O; E' \& V) O/ p) g
pLight->Diffuse.b *= 1.2f;
2 Y8 L) U4 d' `# c* n" z
& i) o4 H6 B$ n# i
pLight->Ambient.r *= 0.8f;
5 p* V2 c, n" ]* e
pLight->Ambient.g *= 0.8f;
/ R% w; d' f6 y. p) v
pLight->Ambient.b *= 0.8f;
; v+ s0 \. w4 j4 x
+ I; Q7 o$ H* q+ ^8 Q- j; _
memcpy( &m_light, pLight, sizeof( m_light ) );
' P5 I. l) _( J$ n6 ^" y0 |
# Z8 t4 X. j( w" Y: \
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
, A& ?+ d) }0 X q
D3DXVec3Normalize(&(vecSun),&(vecSun));
" T9 q6 g5 ?: ?1 q% A9 d2 L3 e7 F$ [
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
- T; }; [/ g) h. r( d
pLight->Appear( m_pd3dDevice, TRUE );
& R. N+ c5 T4 J& {
& q4 U8 m# m1 x6 n' {6 f' L
DWORD dwR, dwG, dwB;
- t# S, D, o+ {3 N) ~
dwR = (DWORD)( pLight->Ambient.r * 255 );
W. C9 M" }0 o$ d* o0 ?0 o, p) U
dwG = (DWORD)( pLight->Ambient.g * 255 );
$ w; v( o- _$ G* X3 v8 n ]8 p* R" n! p
dwB = (DWORD)( pLight->Ambient.b * 255 );
5 }! G+ J; g) F: Q% M; _
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
7 v1 z d- H' ?4 Q& w' m
}
" F+ j8 r5 z) S7 |
}
& X5 d2 A" W( {. J$ {- j* p
}
& v7 h4 |& B. Q. ?( _1 c
else
, B+ T, c! E4 Q5 d0 R$ Z* C. Y
#endif
* \- ~/ o$ E* v5 [
* |3 b4 r, s5 H4 G# y. J y) h' K
if( m_bIsIndoor )
P3 H( z" e( b) a' a2 I# n/ T
{
. @' O$ c! W1 Z* H+ p2 H
if( pLight )
7 G1 j3 N- d+ e! t% s
{
7 H) m7 Y8 |$ d; ~
// à??μ oˉè*
2 A0 V' B: W. i+ [5 o! a
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
+ a/ W9 w$ d1 a! y6 O
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
& w( Y3 C) V8 H1 c/ s
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
$ L8 u4 b/ A! g, o- Z' \
" ?( y1 D0 z% Y- z* J
// oˉè* ??à?
8 e4 M2 Q5 Q- V; a* y+ F( J
pLight->Specular.r = 1.0f;
, O7 R) S! ?; _: t
pLight->Specular.g = 1.0f;
3 F! }# f% o0 C. }; {4 `/ m
pLight->Specular.b = 1.0f;
* O N- l% b! V' R
// àü?? oˉè*
- }( c1 x7 B2 z! W k% ~
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
+ I3 J* g. O" ?$ Q2 {+ o) f
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
2 B H, Z4 y" B( R
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
8 C# l7 m" O: i( Z- Y6 Z
- Q% N+ ]2 m$ a
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 P! g2 j* t/ d
{
+ V# @# J& ?& r4 A7 a
pLight->Diffuse.r *= 0.6f;
5 w/ `; }0 p3 T3 x" g8 _' T3 N
pLight->Diffuse.g *= 0.6f;
# D/ H7 ` o- _# P- K, |3 Y8 f
pLight->Diffuse.b *= 0.6f;
' s5 Z& O9 m4 b8 `
pLight->Ambient.r *= 0.7f;
3 C* W: w8 f3 R- ?. m, Q @
pLight->Ambient.g *= 0.7f;
$ |1 x0 Y, |) W, @. G' M. ~
pLight->Ambient.b *= 0.7f;
' Z+ a$ L }) g! J5 |
}
( a" ^4 `) c2 T
) ?9 v3 a4 m# ]4 P' P) R* f' K
#if __VER >= 15 // __BS_CHANGING_ENVIR
% r9 ^9 Q, m( d
if( g_pPlayer )
# ~# u8 v- X! o2 o3 j7 l
HookUpdateLight( pLight );
" O; R4 e* g# G/ s/ R5 U$ U
#endif
3 e' q; D9 s7 p. L4 t3 g. O7 l
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 c8 [% K& e* i! U8 A( X/ p5 s
3 W3 B' \$ B8 D5 w: F
pLight->Diffuse.r += 0.1f;
1 F- K) n4 B% b3 n
pLight->Diffuse.g += 0.1f;
) T; ~! w) A0 Z7 W
pLight->Diffuse.b += 0.1f;
: I, ?) i3 j9 }$ B: |" Q
// oˉè* ??à?
- G7 L+ E) {$ K3 e: T' l
pLight->Specular.r = 2.0f;
% P' Q# X* a$ I0 Y. y
pLight->Specular.g = 2.0f;
3 Q9 t8 e, ]( s: A8 `: r. c' k
pLight->Specular.b = 2.0f;
$ ]; h8 |5 S, G
// á?oˉ
% o& \. n% o5 E4 z6 i; F# N, b* I
pLight->Ambient.r *= 0.9f;
* S- V/ O) t4 n7 X; M4 }* p
pLight->Ambient.g *= 0.9f;
+ h2 k; Y1 i$ K+ ~4 w) c/ o; m
pLight->Ambient.b *= 0.9f;
& O, H+ m3 p) O# M8 F9 F
* j8 t1 C# o& k4 U' b$ w# r# ^
memcpy( &m_light, pLight, sizeof( m_light ) );
6 }8 i9 R% C3 a# p* b9 z# c
3 K, C2 c' K8 H5 f8 I
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
, x+ H: t( u9 u7 K+ e* ^* i
pLight->Appear( m_pd3dDevice, TRUE );
" a/ Q$ X+ l9 n: `) I8 O
" B$ u' M! _& E, q2 Y
DWORD dwR, dwG, dwB;
$ P5 N( w X# k
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 ^+ S1 i' b# [ ?
dwG = (DWORD)( pLight->Ambient.g * 255 );
F& d: K6 ?& [* ]3 [
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ U$ t7 \) H8 E7 S, C8 K( Y, ?) L/ W
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 c2 k. {+ h8 R [7 s
}
! @& H8 R+ B) p C( p; b; h) V
}
" Z8 a$ W* e; _9 F
else
9 w; Z3 @4 x! T5 B5 u/ i
{
0 L/ }/ c! w: z$ @* H& t+ m
if( pLight )
. c- R6 B, X- L8 o0 M
{
1 D ^4 @3 C! T* w
7 M/ g6 ]' V I* x7 U0 s: ~
int nHour = 8, nMin = 0;
8 l4 d6 E0 @# C* O7 {% x
#ifdef __CLIENT
' W5 Z* H: q8 }$ s6 l
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
( }% W( M/ a1 ]$ N
nHour = g_GameTimer.m_nHour;
4 O. `- P9 h: h, M: a6 ]
nMin = g_GameTimer.m_nMin ;
3 v7 r; r ?& W1 B( ~
#else
* E* d( ~* c: O P+ q
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
) c0 ^! [( l* b/ b
if( m_nLightType == 1 )
4 c2 D( ^$ Q9 j( V9 Z( L
nHour = m_nLightHour;
, i+ ]- q+ @6 e
#endif
S& F7 i/ E/ t$ `5 H0 S* g
nHour--;
! N/ ]( Y" d' y
if( nHour < 0 ) nHour = 0;
1 }: `* G& v2 a5 c5 [
if( nHour > 23 ) nHour = 23;
9 {8 f, J! x8 U8 `" q- y
2 e, d7 ?6 w" w: z* W; ^
//if( m_bFixedHour )
. L, _9 L0 } ^8 @$ }: z
// nHour = m_nFixedHour, nMin = 0;
0 W! _7 g, L5 X) E0 `' c7 d
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
7 W/ O1 m2 I7 I, m& d4 O3 P! T5 U& x
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
N( `' |& g" @* b5 R
% i' c- v- V% |* ]& t% Z
//m_lightColor = lightColorPrv;
4 _2 N, V& R# n5 n4 B" D* k
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
! W8 k, j$ F( w1 |
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
$ c o8 s: M$ U$ I; {6 T/ a$ Z
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
8 A( p1 p- r6 R: e- I! s7 ?
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
6 O8 A" K' I; Z$ ~7 {
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
5 F" ~+ }8 U1 i0 `8 y
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
, t; z6 T; M5 K* V( U
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
. c6 R0 Y) [, J
6 Z! ~0 e5 Y3 p! R$ r6 Y) N, \
// à??μ oˉè*
7 v4 ^4 E: y; ?3 Z7 y) g# i
pLight->Diffuse.r = lightColorPrv.r1;
6 _ q- L- ~+ E& U. p6 o, N0 J7 \
pLight->Diffuse.g = lightColorPrv.g1;
% d& C6 F( R, p! y: B2 ?# u
pLight->Diffuse.b = lightColorPrv.b1;
! [# K0 C# y6 Z U! ]* J3 X4 c$ n
// oˉè* ??à?
2 Q2 w6 s0 r' i% B' q
pLight->Specular.r = 1.0f;
8 y9 f( _$ l/ n
pLight->Specular.g = 1.0f;
7 l" L1 b2 t) M0 C) l' Z: j
pLight->Specular.b = 1.0f;
7 Q/ p8 k# d' k z; N
// àü?? oˉè*
2 X9 m3 d' y& V
pLight->Ambient.r = lightColorPrv.r2;
, A& k' Q+ J$ e, [
pLight->Ambient.g = lightColorPrv.g2;
# b [) X; H* d% m* W+ z7 d
pLight->Ambient.b = lightColorPrv.b2;
8 J1 R- O9 W$ }! w! J
. m1 X) \4 Z) `& ^7 D5 X2 X
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 W' ~' a& D9 Z% M. i, l, E
{
9 {6 V, C0 e/ `( \: x
pLight->Diffuse.r *= 0.6f;
; J+ E# W6 z. L
pLight->Diffuse.g *= 0.6f;
8 x# x- S8 v% X- z z& |4 z1 ~
pLight->Diffuse.b *= 0.6f;
2 ~/ i; r, y- ?! X5 l* O$ j- n
pLight->Ambient.r *= 0.7f;
0 l$ A5 `7 ^; ]
pLight->Ambient.g *= 0.7f;
; J' T2 y. M: G. m
pLight->Ambient.b *= 0.7f;
$ C/ K3 Y: c) h$ Z, Y6 K% b. D
}
& i- r; Y+ ]' w! v5 G' Q( V
" c, h+ \; S6 q3 N' P
#if __VER >= 15 // __BS_CHANGING_ENVIR
W. g; [, q! V3 a
if( g_pPlayer )
% p# a9 j: I& S2 S; c) R
HookUpdateLight( pLight );
s. F& C5 n. J; Y
#endif
, ~6 T" j5 B0 t0 a! T7 b( S G
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 w: N m. I: |. M# ?% G3 F
( k$ ]/ r0 h1 ?
#ifdef __YENV
( z# @& G F6 \* Z( a4 ^& v
pLight->Diffuse.r *= 1.1f;
- J( D: k! B2 ]" s5 _( y
pLight->Diffuse.g *= 1.1f;
* N b% @* U' U0 p* a
pLight->Diffuse.b *= 1.1f;
) L! O2 B8 K2 w6 ?2 n* e6 k
// oˉè* ??à?
5 ^- Z$ Y+ o2 B8 t; O5 C, u$ y
pLight->Specular.r = 2.0f;
) B5 \ g+ W" F) D7 `
pLight->Specular.g = 2.0f;
* A5 V+ H; T1 F5 p) Y. l0 Y
pLight->Specular.b = 2.0f;
) K7 r9 H9 U4 C
// á?oˉ
; ?/ d6 r$ N+ M% q! h1 f0 U
pLight->Ambient.r *= 1.0f;
, c7 c. y0 y) y4 i$ S" \( \
pLight->Ambient.g *= 1.0f;
6 L$ D& ?) g' R+ N$ W$ r( Q9 H
pLight->Ambient.b *= 1.0f;
/ f& ?' j: X! M
#else //__YENV
* k) [6 \0 K; }8 c
pLight->Diffuse.r *= 1.1f;
. W; j/ g& y9 i9 ^" D$ _- x' ~
pLight->Diffuse.g *= 1.1f;
+ S" R; y* W0 @9 S; g
pLight->Diffuse.b *= 1.1f;
( t7 B& L/ K3 k( {9 h! D; P1 W* w
// oˉè* ??à?
# w4 o& y/ N% W4 I9 ^) H. P
pLight->Specular.r = 2.0f;
0 N5 i1 I$ c7 o
pLight->Specular.g = 2.0f;
* V, Q3 R& L& M8 e; k
pLight->Specular.b = 2.0f;
$ P# S8 r& ?2 I* ^
// á?oˉ
O* I: i) Z! }) j) J% s9 l
pLight->Ambient.r *= 0.9f;
0 J2 @1 F# ]6 U: ]) U
pLight->Ambient.g *= 0.9f;
2 D5 ]: g! d2 J0 [
pLight->Ambient.b *= 0.9f;
9 g w2 M8 P8 ?+ v6 O# D
#endif //__YENV
0 b8 v5 ?2 w' Q; ?' c
6 Z; Q, _: ?7 O4 J! M$ M
memcpy( &m_light, pLight, sizeof( m_light ) );
& f7 F R- J: H( e) T
: H. x/ ^" M/ m' y5 { l! N
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
0 h, s4 _+ O/ K ?5 j2 `: y. c
D3DXMATRIX matTemp;
1 x6 x7 g: r5 @3 M0 T
static const float CONS_VAL = 3.1415926f / 180.f;
3 l) j, ]" [( _. Z0 B& `1 c9 U9 R0 Q; v
8 e% {5 U7 x' y
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
% l+ `$ R( o! J) `, b! U
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
3 V. M' j. |5 ?
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
" ~: ?' t' L& W9 V
pLight->Appear( m_pd3dDevice, TRUE );
5 p8 c, H' `' P/ p* g
; ~% b- w2 R& H# v$ O
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' g/ Z0 @9 u7 d+ T n' J/ Y
// D3DXVec3Normalize(&(vecSun),&(vecSun));
: K: ?2 f% q) G( F
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
l( A- J# L7 P; i' K5 A9 U
) j& U" D" l5 t3 A. Q, g
DWORD dwR, dwG, dwB;
3 V; i/ l i/ N3 {
dwR = (DWORD)( pLight->Ambient.r * 255 );
% _7 g, K# X/ X
dwG = (DWORD)( pLight->Ambient.g * 255 );
( s5 T2 K' g) c* S+ x
dwB = (DWORD)( pLight->Ambient.b * 255 );
! H$ W! `7 J8 w' j( a
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
A" q9 w( ?; [
}
/ n! S" ]0 m: a& [9 c8 Q: y% W3 a
}
* `! G' j+ ? s$ i$ t5 s& v
8 ~+ v, ^' E* m) M5 _1 K; x
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" M( |! i g" A3 R0 C& b/ ^, x2 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) );
; S) P* R- L- ^
::SetLight( bLight );
( H7 N3 D1 w! I( X2 c
# ?9 h: i5 [ O9 ^
// ±ao? ?D?í???ó á¤à?
8 }- R9 `% [9 ]2 E
m_pd3dDevice->SetMaterial( &m_baseMaterial );
; i2 I q) ?; w, M3 K8 b; ?/ O
9 { v( k: R/ f. H5 S' F
#endif // not WORLDSERVER
' y, @/ U( b: H
}
/ U- M/ S6 k: b: Q5 i; m3 o$ Z/ z
并更换
' @2 [1 a: M# ?6 F4 o. E
Code:
. S, X* f) S2 e0 x* a6 _
__FLYFF_INITPAGE_EXT
# t2 B5 _4 i9 m( |3 _% U
定义
, L' G4 B' _- Q$ l4 O
& a0 q9 n5 U3 e7 y
6 N- k' P3 ~& ^2 d& M* z. f
1 H' w8 U$ `, P' z0 p, ]/ |9 h
9 \ Q& f# r2 e$ y' v, E
现在终于删除我的狗屁加速...
s7 n) a4 V, P) F2 O
% Z5 u2 x, [% \& L7 Z2 v* D2 S
, t6 j4 R5 V& A
- } m5 f0 ]+ J* v- M" \8 E5 c, k
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2