飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
0 I1 e+ l1 A! z T& [7 Q( U* i0 r
尾翼:
/ k9 d/ Q# z" c0 _ @# w% ]
' u. C+ {6 J9 l- x% A: X7 e
代码:
/ _& K# h/ O. t8 R$ V$ `
CWndAutoFood::CWndAutoFood()
& c9 k% X% C; ]2 \+ Z: Z
{
* p5 i1 ^( h$ d& |+ g
m_pItemElem = NULL;
) c! q/ o1 n7 h# _/ w% u7 z8 C, ?
m_pTexture = NULL;
3 G' F C. k3 c4 V5 {, _3 \
bStart = FALSE;
7 g% e7 S$ t5 u' N% V
}
) ~& ?5 y' ^5 W0 d
! P& M8 e: J! J3 m8 B. a/ {+ g R# E K
CWndAutoFood::~CWndAutoFood()
' Q, X, L4 Q8 Q. [ V6 u
{
0 T# |7 E+ f1 M# f
AfxMessageBox( "AutoFood ist gestorben
" );
$ U# P; n" {: j1 V
}
4 l, b) ?3 F8 X5 I, o
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
7 O1 Z6 k1 ?- ^
{
. \) ^- D& `7 n1 I# M `6 g
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
2 N6 {. ~1 r% C4 P+ \$ I- j
}
- A% ^3 {" d6 N2 ^# H
, c8 f I" |5 k8 C
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
/ Q7 {" d: d& z5 p* m
{
, r* j9 C+ E4 P& J( h) V
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
: J( U5 L% o( O I+ n) S p
CRect rect = pWndCtrl->rect;
" l: t1 ]4 j' e
if( rect && rect.PtInRect( point ) )
0 f( V. p( T1 [7 M, d. F
{
- ~: K! i( v3 k5 h! E0 p; N/ p
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
6 _4 }+ Y, @5 Y+ e4 G
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
! K) S4 O" }( j
{
2 _7 w0 D+ l P* A, T
if( m_pItemElem )
& [9 G2 z' h2 u
{
# \/ N7 ^* a1 E$ r9 X9 e
m_pItemElem = NULL;
$ B- e) U9 t2 D% P9 o3 r1 [- I
}
0 ~+ f( \0 d3 i" P6 x; ^3 [
m_pItemElem = pItemElem;
5 t n! F7 p3 Z* p( B" l8 C
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
* u5 m( N5 F2 y! e/ c9 [9 i# A! K3 c
}else{
p+ K9 v: k1 g O
SetForbid( TRUE );
/ D$ ]- P% u; ^/ N
}
u! |1 L* c* H: \0 U
}else{
! l+ d9 l# ]5 O2 m. h8 q x) q
SetForbid( TRUE );
8 c8 z i$ h; K6 t0 o- w
}
0 O* r0 I: \% n( ^5 E( |
return TRUE;
, T1 G! v# ~& K2 o" e
}
1 _8 J- D7 C' D. A% O
- M# k7 L+ n9 S0 @2 p, }# P' f
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
3 |7 k j0 F6 v4 y
{
; u- n* z! ~2 o" ~0 D# o$ Q
switch( nID )
* U2 \- J, G% Y% t0 E# E
{
* _4 H- P7 l( S( [
case WIDC_BUTTON3:
0 Q8 i0 R9 n( h* ` Q) l: \
{
4 ]; F4 r4 t- W e
bStart = TRUE;
, `6 T. t: H6 p1 Z
break;
$ Z1 D/ i2 o3 m/ }
}
7 y8 F% t% n# w# B
case WIDC_BUTTON4:
$ M# m' t# \5 o' X
{
' L; j- X$ e2 {4 _# T3 V; X, f
bStart = FALSE;
7 D3 ]* ]) h( l$ M* F/ B( `8 U
break;
5 j7 Z8 J9 ?) y( P" v. f- V
}
+ w. Z8 \5 }8 M8 @
}
' F! ^2 `! t# b& @# i
return CWndNeuz::OnChildNotify( message, nID, pLResult );
9 ~! f& z* g! i
}
9 X3 @8 ?* g4 t1 u- c
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
; i7 S9 K. C% c2 ?
{
2 L% I, X9 y" Y6 U9 p
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
: l9 x, [' Z: \' s/ N
if( bStart || !m_pItemElem )
# Q9 J7 K% A, L
{
7 |$ O$ |. s' a4 [% [6 z7 q
pBtn->EnableWindow( FALSE );
( w) c0 @/ V: W+ b
}else
* i4 l$ C4 J! u8 U4 T
pBtn->EnableWindow( TRUE );
5 ^5 w7 B j( Y* l5 v
if( m_pTexture )
6 C3 @! a/ T7 P
{
1 {- k \2 j6 n0 F# x
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ d) L7 l) o! Z" a9 e
if( wndCtrl && wndCtrl->rect )
6 N. h! W5 M- s: H$ m- t3 W2 F
{
: K+ w; T8 ~7 D' U& f- y2 M2 m
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
$ w$ L+ i* [$ |9 R1 _; N( Z+ V: U
}
9 s9 w, x3 F$ R6 E3 |/ s& u! H
}
0 R% V/ M7 N, ~, X% e% [/ h4 `: S% ?6 r
}
' l \- R3 f- L
4 Y0 \8 m: K$ l- n) H
BOOL CWndAutoFood:
rocess()
/ n( ?, I. Q0 N3 m, G% w* w l( H" }: r
{
$ b" e) i2 j# b5 d( y
if( bStart )
6 y! B1 C C3 L: X. C' ]+ s
{
" p2 H) L% ]+ ^( s" D1 A
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
7 n+ Y" ]7 M$ o' R0 ?
{
) W+ l" L8 r2 ]. F1 ]3 n1 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() )
# e7 P$ O- R7 ^) W/ }5 }, d6 |
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
& N2 `) e& x1 O: O
}else{
/ [( O3 V; I' `: @, r' Q
bStart = FALSE;
9 o2 V+ F( g. t& }8 K$ {( h$ V; R
m_pItemElem = NULL;
, K5 c' G- R: e8 ^# _) D
}
4 X7 i3 r: y, N0 S+ X- ~8 m
}
5 m1 m# m- Q; i4 K# O* q- U
return TRUE;
7 i7 Y0 B# t8 h0 u+ I3 ?
}
# n# m4 Y1 y; ]+ A1 G
$ g8 j0 z" @$ v1 H
登录视频废话:
: \9 T0 ~& [$ k8 g- [' u' E; ?
尾翼:
6 ^5 G9 t% ]+ y
9 v. W9 z' L. {
代码:
3 j A: }) b3 u* b/ A1 A# N" ?* A9 F G6 l
2 k) {) `, o. }. l8 F1 d" G) H
void CWorld::SetLight( BOOL bLight )
1 w. u, D. T' E" X5 w0 L! @
durch
7 G0 G5 ^7 d; ~1 J: b6 M9 W
Code:
4 Z) I- q$ \5 g y! h9 P1 e
void CWorld::SetLight( BOOL bLight )
6 ]8 R3 y$ k c1 S8 Z
{
6 Z/ E1 p1 Y: b$ f
//ACE("SetLight %d \n", bLight);
$ n, H- ?) z/ }+ i1 A
( Q( f3 S E, R$ W/ @' y% q
#ifndef __WORLDSERVER
h# A+ N0 i8 ^4 B9 F
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
6 T: S: ?5 ?. k- z) y+ y
CLight* pLight = NULL;
, W, B) [) Z9 _. ?! Y3 L. Z
: c( e4 ^, _ p+ o" P
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
3 W A, o% \4 g n. x
3 Z$ g5 U/ B" C- U6 s1 m- _
pLight = GetLight( "direction" );
G% W4 _4 h8 X, J _
/ Q1 F0 s( G( D4 R4 p
#if __VER >= 15 // __BS_CHANGING_ENVIR
: c2 Z$ t6 |# h
if( g_pPlayer ){
* E5 w$ r7 t9 _8 Z) M
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
( q. i5 p. }3 ]8 N- y; ^/ t% }
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
' |" |1 l' t0 ~, G7 x
{
. R8 l* Q0 l2 m+ z
if( pLight )
/ B" b" |4 b. n+ p# A5 n
{
- ^: v; p9 ? s& s6 w
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
6 r* B/ n( C5 Y; w
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
1 [' [8 |3 `, j# U4 C( ?
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
6 V$ v( x- \( Q
* n% `, n7 J5 G, O: y9 p( V
pLight->Specular.r = 2.0f;
$ |; n- j4 C' t# g
pLight->Specular.g = 2.0f;
1 o- S) @- m4 i$ d6 s* N
pLight->Specular.b = 2.0f;
; I' x! g! Z, M# n2 u
6 L" o. R/ { b. }
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
$ B# Z+ M2 G4 ^9 z6 B
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
, ~7 T( Z. c7 w! \+ h
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
' [5 n+ o; f1 K8 q' m3 g( g
! M" X) w. ?6 T" B
HookUpdateLight( pLight );
( {5 Y6 o4 U( r3 a
8 j4 V. l( q* w$ o; E' W
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 K, w' v9 @" f. \" i
4 |+ Q f& M* {8 G
pLight->Diffuse.r *= 1.2f;
6 e x6 d$ B' T7 G
pLight->Diffuse.g *= 1.2f;
/ B `0 a3 D# m2 p1 p- w. g' l
pLight->Diffuse.b *= 1.2f;
- f/ K9 Q# r% K; b
% f9 |, ^! O& Z5 g2 C
pLight->Ambient.r *= 0.8f;
7 {. m1 |9 C& o# T6 o" _
pLight->Ambient.g *= 0.8f;
) m$ w" e; `3 k" W9 d* ^& X4 c/ {
pLight->Ambient.b *= 0.8f;
! e' d; F; ^) S! y2 Z, |
! N( y( E6 h' f X- L
memcpy( &m_light, pLight, sizeof( m_light ) );
1 l, W* m" x6 D. k2 f6 S
$ t" v9 c( w# z) d' n6 L
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 T2 j7 l, i# A3 c/ I, Z
D3DXVec3Normalize(&(vecSun),&(vecSun));
4 _, M5 f1 i2 o' L
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ f' C' O9 `2 V% D D8 l
pLight->Appear( m_pd3dDevice, TRUE );
: C1 F- m$ g* W; E; ~4 Q
2 e2 M0 n0 Q# T4 a& k
DWORD dwR, dwG, dwB;
* q5 Z n- A, u0 I
dwR = (DWORD)( pLight->Ambient.r * 255 );
" {& p3 T; ^* Q; |7 i* l: ]6 \0 E
dwG = (DWORD)( pLight->Ambient.g * 255 );
& L. L! D5 a2 r' Z) u; A. J3 D- `
dwB = (DWORD)( pLight->Ambient.b * 255 );
* T% C. B! I& G; B3 ^( ]
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) C3 v- w9 v h; E
}
" k# T O0 r+ d1 @( m
}
+ R" h& p+ u) E& D
}
; _4 i9 J ]/ k+ x& w8 }
else
( H+ z& R1 _6 K8 m
#endif
9 y0 I9 Q, Y1 }, b4 @
8 p5 ]- J: J3 x1 t! f2 i4 S+ L" O
if( m_bIsIndoor )
' w# K+ Q3 n- I
{
. Y7 W4 P4 @! u$ q5 p
if( pLight )
/ t6 A/ f4 p- a$ \+ Q; K2 o0 \
{
1 {7 J" L7 M8 ~1 i
// à??μ oˉè*
/ B; Y! U6 X" U" q, }/ Y
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
0 w w1 l8 m! v8 S
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
4 B+ X1 o: b6 `# v* C0 W
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
9 Q7 D' M/ J8 D$ H+ k
/ m/ F7 {" q2 N, q3 ]
// oˉè* ??à?
0 k; o/ f+ d6 E; |* k# {% V
pLight->Specular.r = 1.0f;
- h0 ^! T" e5 w* z! E5 T7 `
pLight->Specular.g = 1.0f;
0 J. {- G R9 Q
pLight->Specular.b = 1.0f;
: W- T, h6 O' u
// àü?? oˉè*
8 |8 `! G0 H/ }* U9 t( x
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
; x' A) Q) L; Q7 U
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
3 V. G! r% @$ b( Z+ ^) n8 q
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
3 k$ `; e8 L' o7 x
" m m. u# p5 @& K9 V4 Z) [
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, d" W( d* a1 i' |7 K7 U8 z1 a
{
, O3 k; o/ p! H, X4 F; I
pLight->Diffuse.r *= 0.6f;
: y7 `( u3 K8 U( K# m8 D9 U' T2 x: @
pLight->Diffuse.g *= 0.6f;
a0 b3 i. {7 ]& y6 U! {1 U+ ]5 m0 _
pLight->Diffuse.b *= 0.6f;
- ]! I" R& V3 m; w, X3 G5 a
pLight->Ambient.r *= 0.7f;
8 ]+ M6 r, v# p/ i/ i) _' g ~
pLight->Ambient.g *= 0.7f;
+ S8 e! d- W* @% n
pLight->Ambient.b *= 0.7f;
! b* o F: Q4 H% M5 s
}
9 I. P; a8 q+ R% i% n
C1 \& p8 Y4 b0 v
#if __VER >= 15 // __BS_CHANGING_ENVIR
, ~2 i# S7 {9 D/ P6 K
if( g_pPlayer )
( t5 M* ~0 r- Z* D1 v7 j$ L
HookUpdateLight( pLight );
0 r/ Z) a& o) E
#endif
# N; W0 H9 B$ c+ W) M" z# y) R* A
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 P7 | S" u9 B! I
: p9 I8 i, f7 T/ i; a# P" |1 b
pLight->Diffuse.r += 0.1f;
; p. N* F* j, |) z2 b
pLight->Diffuse.g += 0.1f;
. n. l1 \$ ^' V
pLight->Diffuse.b += 0.1f;
1 M4 E( S) c) E& {+ F9 X9 L N
// oˉè* ??à?
7 w- x, T7 v( X0 e O: m' S, U
pLight->Specular.r = 2.0f;
( Z3 {1 t& ~8 A0 S6 P) c
pLight->Specular.g = 2.0f;
( P9 ^! B/ D* A* m1 m" f6 }
pLight->Specular.b = 2.0f;
& I, _0 ~. y1 C2 `, z/ d. |
// á?oˉ
- }: }# H* z& U2 R, I3 u a2 a
pLight->Ambient.r *= 0.9f;
! N! U1 R% [/ K* n% n6 G) G; I
pLight->Ambient.g *= 0.9f;
/ I1 L, S5 V( W4 O y
pLight->Ambient.b *= 0.9f;
1 w2 B3 ]! ~$ a( u9 P" b
; ?- A' P( S! L6 `/ p/ ]
memcpy( &m_light, pLight, sizeof( m_light ) );
?& z0 d% ]7 |# p: j1 w
; S/ l% M$ f: F; D% J9 T/ _* @+ U
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
$ Y0 ^: I6 P! p9 _- \% F9 O
pLight->Appear( m_pd3dDevice, TRUE );
+ t2 C5 v3 {. s; ^* ^* \$ p, ]
/ R* y; v5 l1 v0 r0 c$ d/ d
DWORD dwR, dwG, dwB;
( O4 i& S0 w: F7 T
dwR = (DWORD)( pLight->Ambient.r * 255 );
: B0 P) N. T+ `" [
dwG = (DWORD)( pLight->Ambient.g * 255 );
) C1 J) E0 U7 C* L
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ A9 `! N' p. L' ^% T% ?3 h3 e9 f
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 }0 w9 s$ L" g" p, z4 h" k
}
$ Z# h' W9 ?! k" Z" w
}
5 I! Q! j* I' Q4 J: j; m N
else
1 Y$ u. u3 ~: L/ t; T m& U4 ]
{
; O9 |9 G+ t- A. {! i
if( pLight )
& `: f @, ]* j9 y @7 x
{
) e L. e# E; f2 W9 P
' y9 Y# G" e+ ?3 e Y
int nHour = 8, nMin = 0;
2 h, h" E1 S3 @
#ifdef __CLIENT
* {2 N, I* u0 c
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
4 P* U2 o& |/ K; n! m2 l. k9 f6 z
nHour = g_GameTimer.m_nHour;
! }8 D5 d& f/ t, H0 v& q
nMin = g_GameTimer.m_nMin ;
' {- `/ X% J$ X. H
#else
0 `/ f, b) ~7 P |$ i/ Z$ j# S& o
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
4 X8 @# P( g# I! n3 N
if( m_nLightType == 1 )
+ D* J" D1 s1 I5 `: b( W4 p
nHour = m_nLightHour;
: o1 C2 N* I% y3 s- O- h& i8 H
#endif
6 a* y$ U; f4 C$ V4 h! x+ J* d4 A1 x
nHour--;
; F" R* r" d& H ?+ O6 v M, @
if( nHour < 0 ) nHour = 0;
9 W( p( x. o4 _5 v
if( nHour > 23 ) nHour = 23;
- ~. `2 P2 U! L0 B3 s( C8 [! ^
$ Z5 D9 Z2 C: y$ c; C% k1 t1 B
//if( m_bFixedHour )
7 I5 ^# |1 C# n, ~5 i4 d" @
// nHour = m_nFixedHour, nMin = 0;
8 \% K6 v$ w& C* D! ^1 W3 B
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
5 c% ~) F1 ^; x) ]1 H
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
4 G: f# W% @6 r6 [' |
& \ P3 w# G2 [+ E; Z5 D- w
//m_lightColor = lightColorPrv;
* H9 q) S2 y1 n+ p4 `
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
- m& F. r7 `1 i
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
5 F+ k5 y$ {% m$ }/ A
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
( o: D( S- W- B4 ~8 @2 V: N; B0 @
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
2 V) A; ^ U+ ]/ e- z8 A
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
2 @. z* l7 f/ Y: v
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
4 o7 N2 a7 p0 j5 M1 r
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ }, ~0 \) |( i% u/ J
+ `/ K5 l# ]# K# Q1 H' ?2 R4 o
// à??μ oˉè*
( R) k0 Z" D( l& {' `' v2 l# O
pLight->Diffuse.r = lightColorPrv.r1;
/ O# P* {+ L+ i6 u4 w$ g; a' b2 @' {
pLight->Diffuse.g = lightColorPrv.g1;
' z( Y' Y4 |& H
pLight->Diffuse.b = lightColorPrv.b1;
1 C$ Y! N! ~7 m- C, \6 k
// oˉè* ??à?
' V" A5 I7 w: Q1 W* _
pLight->Specular.r = 1.0f;
8 i" I+ I* U& @) m7 b
pLight->Specular.g = 1.0f;
# W1 O( ?4 p& X4 c& x9 h+ u* p" v. U
pLight->Specular.b = 1.0f;
N2 c4 p& p6 S3 n0 b/ _
// àü?? oˉè*
3 {% j$ w# Q3 X* E' {$ }2 Y
pLight->Ambient.r = lightColorPrv.r2;
6 d. p6 |$ C/ x+ S" \
pLight->Ambient.g = lightColorPrv.g2;
* ?- l# O8 l ?1 r1 D
pLight->Ambient.b = lightColorPrv.b2;
# {$ \' s, u0 F2 m. \6 L
4 B+ x G7 A; _) x! }
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
& ]* T+ c+ ?' P2 A9 J3 S
{
* u1 R4 p" p! c& u' R7 W
pLight->Diffuse.r *= 0.6f;
- X' T7 u" V+ K4 B5 G
pLight->Diffuse.g *= 0.6f;
2 { E7 ]. w* w* J
pLight->Diffuse.b *= 0.6f;
+ z4 _3 P; n8 q) M! S
pLight->Ambient.r *= 0.7f;
8 o# N7 u$ V/ T! s& c- W+ u: W+ F
pLight->Ambient.g *= 0.7f;
, l7 W9 q0 p+ Q# E! _5 |" V
pLight->Ambient.b *= 0.7f;
/ d/ E! t$ I. L/ D2 F" V
}
1 c4 d7 Q) x* o9 s- B
# m. k2 A# D7 Q, t: L
#if __VER >= 15 // __BS_CHANGING_ENVIR
& ?; R4 A) n! C6 F0 e. z
if( g_pPlayer )
1 l, [2 @6 X* V: q5 g3 V
HookUpdateLight( pLight );
! R( f6 K( | \# i" V5 ~$ p
#endif
3 T T5 C( X3 d, j* I: k& s7 X
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ K4 ~: V4 Y$ r# W
. s) w3 v: D. M/ t, F) y+ I" \
#ifdef __YENV
, h0 i$ F; ?# W7 E
pLight->Diffuse.r *= 1.1f;
% I6 C3 e4 p' d" a0 Z" S
pLight->Diffuse.g *= 1.1f;
8 z5 b# ^4 @5 {* U: T
pLight->Diffuse.b *= 1.1f;
! n2 |( t; h! }! B9 I& J
// oˉè* ??à?
+ |( b% s+ N- z5 g" ]+ K2 M' N
pLight->Specular.r = 2.0f;
' P6 i3 X+ d# I6 s* s
pLight->Specular.g = 2.0f;
; ?, ]3 j% {/ b
pLight->Specular.b = 2.0f;
/ i4 X# V' M2 B+ @# A7 s I
// á?oˉ
( l$ x9 _' _! q; A+ X! p
pLight->Ambient.r *= 1.0f;
* \; R( a4 ?8 n; f2 @+ t
pLight->Ambient.g *= 1.0f;
5 U* {2 q2 b% P
pLight->Ambient.b *= 1.0f;
+ }$ d* `3 q2 [; f
#else //__YENV
* f4 |7 E. j9 T. Q
pLight->Diffuse.r *= 1.1f;
1 V, G) V) I! J5 D; ]3 l5 s
pLight->Diffuse.g *= 1.1f;
# @$ }8 S+ x. m1 N+ j1 D4 Z1 \2 f
pLight->Diffuse.b *= 1.1f;
: L% c- Z5 @' w- f, O4 G
// oˉè* ??à?
0 j0 @$ |! j" L- J H6 P( {- q6 H
pLight->Specular.r = 2.0f;
) a- m/ M$ x/ p& ~; h, \8 p4 X
pLight->Specular.g = 2.0f;
2 z8 U+ Y4 p+ e- C" |# u2 H$ M& S
pLight->Specular.b = 2.0f;
2 V+ G1 p: K L
// á?oˉ
5 }' o4 }& C9 h1 \
pLight->Ambient.r *= 0.9f;
: h+ z% h; E8 m# l% l* O
pLight->Ambient.g *= 0.9f;
; o( z& F K8 b9 r
pLight->Ambient.b *= 0.9f;
' H5 [; Q h( A0 g- }, N; b, ]7 w
#endif //__YENV
$ `0 r9 r7 E3 w6 C& k
; q# u* t6 K8 X. C1 f
memcpy( &m_light, pLight, sizeof( m_light ) );
; N4 y* p6 d/ b K' C0 W1 ~6 j
) a$ J, P: V; A: z' t
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
/ F9 Z; w; L! f9 m' @: K" j7 p
D3DXMATRIX matTemp;
6 R& F) z7 j# H
static const float CONS_VAL = 3.1415926f / 180.f;
/ _+ }9 I; g9 `" F
3 ~+ l+ S$ Q! O9 }0 B* n% o B& s
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# t; m1 q- ?5 h2 ^# t0 z/ n7 k7 q: Q
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
& p' U. h8 u, b( s" Q: i: T
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
8 v+ }- d. s1 `" i
pLight->Appear( m_pd3dDevice, TRUE );
: y; V/ j* s- P
: A5 I9 E: e! F y
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 C! n+ A, r- r, ?) J7 x2 @" `& N
// D3DXVec3Normalize(&(vecSun),&(vecSun));
! D! k2 F" w: O) T
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
( \# T: Q) y; ~. o% ?, T7 T) t, Z
" W$ | }+ j0 v8 B4 N+ C
DWORD dwR, dwG, dwB;
1 |6 X5 o6 v9 X. @
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 ~; h6 g1 S& ]8 b1 O
dwG = (DWORD)( pLight->Ambient.g * 255 );
- i! E& Q$ I2 a/ I0 ?9 y
dwB = (DWORD)( pLight->Ambient.b * 255 );
0 c' M+ Q; `- U. \) F3 [
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ D1 M. p U- }
}
3 C' o3 m: U7 D) n5 t. D G6 O
}
8 K; J b8 A0 A$ R6 J0 `3 s
1 P, a: V& `8 h7 f. i
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
! D8 |/ L! I# c( C
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) );
8 c* b9 m. Y3 H+ F4 I
::SetLight( bLight );
: d4 T. Q3 |3 T# |- ]
1 Z: ?+ n8 G( I2 d/ @; w+ d: v
// ±ao? ?D?í???ó á¤à?
( \' r0 f/ K, U$ L& g( j; ~
m_pd3dDevice->SetMaterial( &m_baseMaterial );
y/ ?7 Q- N- c2 `+ _8 R5 E" T: E" Y
' z5 i- }" K" B% z/ A
#endif // not WORLDSERVER
6 w, ~* e6 I: y! x/ n2 H
}
* c: s, b l. _) T+ P
并更换
3 `, G6 V) L, ^
Code:
/ y+ k" K# |6 V$ Z; w* Q
__FLYFF_INITPAGE_EXT
! W1 } r4 L7 D. g- e' b
定义
1 {% a* S( e: b# n- `
* Z+ J1 \( R) N* E: x8 b' l5 Y
6 o' K5 F5 |9 N3 C8 t( r+ T
+ V$ [0 U5 k4 T" z) q
8 m' r5 }0 t0 b1 n+ \
现在终于删除我的狗屁加速...
$ b6 Q" L6 m$ E9 n
/ ~0 ?( f1 b; B
' o' N' P# K* h, F: v+ w. Z
/ \+ t2 u$ t, W0 w' Z
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2