飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
/ g% ^; \% [% o: z# J
尾翼:
6 T5 ^8 }" U. n& T; f
! {- f9 |1 a% x
代码:
* h' [0 U0 c. ~1 Q! @7 E5 o" K3 \
CWndAutoFood::CWndAutoFood()
) O# K: |) h: H* u, T% g4 S
{
! f5 n( w: o( C
m_pItemElem = NULL;
9 o! O+ u. o) {' `
m_pTexture = NULL;
: C* |0 n% W& J2 H9 V
bStart = FALSE;
$ {. r: a7 L6 x% p
}
( b: E+ U' Y5 I h @5 `4 e
z w5 L7 i/ e' }5 J. [4 o- A
CWndAutoFood::~CWndAutoFood()
, y* Y4 ]& F- O
{
( c; J! ]8 g/ x
AfxMessageBox( "AutoFood ist gestorben
" );
: x1 C- z* b+ h3 Y
}
, @8 [ `; m1 B! a7 j' T( E
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
7 a" D( S$ E' H1 h: b
{
. X$ P: G/ S& R& N+ \2 b8 V
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
0 z9 k0 H" `7 m" k
}
; [4 P+ o' b& F ~
; h9 Y3 I" d$ q. q* M) w1 S8 Y+ |
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
# r6 s1 d$ G! p' ^5 g& q) A) o
{
2 \* ^; j5 l+ f, s; l- D9 m
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
4 t/ K, f& n& k# i/ C1 a" S
CRect rect = pWndCtrl->rect;
6 ? i4 f, @+ B c& H
if( rect && rect.PtInRect( point ) )
: U! a+ k3 K! E$ z0 c
{
0 A$ T9 x9 M1 v3 t$ v
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
$ L" F9 B4 B4 ^1 z' A( |' ~
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
+ l0 |, w; o$ {7 F/ I+ t' ^
{
) [# H; B3 \6 T7 w
if( m_pItemElem )
$ U( w2 V. B- R) R1 M" k* k' N
{
/ I& x) T) ~) s# `' Y( I
m_pItemElem = NULL;
\" I. T5 k' S$ }5 A- ?' U
}
6 w0 Y- H# S8 g
m_pItemElem = pItemElem;
, g6 g1 u9 k. b. j: x
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
* {: m3 o4 z$ Y" e0 H `/ m" W, L! t
}else{
' [% G( [4 n; D8 y* C" G& J
SetForbid( TRUE );
' n+ |0 P5 {7 @; q, a1 L
}
7 w( z* K0 M8 D% l
}else{
" @/ Q/ K, A m* c
SetForbid( TRUE );
: P _$ Y5 o5 B4 l
}
- g3 i0 A# b9 n8 y/ L) S4 k! x
return TRUE;
" v, U" C# `7 S; c
}
( k+ w0 k) k0 L9 ~% i
; m7 {7 V4 R4 _
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
. e; E; D' A" K' K+ ?5 f; {
{
7 k; P/ r- s# T4 W( v3 {
switch( nID )
9 k/ D% f9 Q) L1 E7 X
{
0 `' T& B6 C" K
case WIDC_BUTTON3:
8 d1 ^0 S8 W- n% d& {4 \- X( H
{
' m, G2 Y. E3 u/ ~$ ?5 \/ K# {
bStart = TRUE;
& f1 ?6 T& n, n
break;
* `" F0 H' f$ `2 V4 U: F6 ^% N
}
( T% b$ G! ~+ M
case WIDC_BUTTON4:
! l# Q2 B3 g( @: @+ [2 W
{
' s, K! T$ C1 s$ M- F4 @" B! B
bStart = FALSE;
5 @! M) W# R4 L# e* K; s
break;
' s* W/ P% r) u7 s+ j
}
. i t, ~) v f. Q0 [5 L
}
$ N) K$ k9 S9 c, b' M
return CWndNeuz::OnChildNotify( message, nID, pLResult );
: w, d) l1 F$ J6 I2 }
}
8 U$ ~# V1 {) k9 _5 [+ n# }4 \
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
+ L! v7 u7 v% M$ k5 z8 Z
{
1 N: }# W, Q& U$ c* H. g
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
( R) z4 b4 Z1 A+ n: |2 ?
if( bStart || !m_pItemElem )
8 x4 p& G0 o0 A. N2 U
{
: H& P8 N& G$ Z
pBtn->EnableWindow( FALSE );
# }4 \, f- N4 A# r4 U7 O/ [
}else
# J9 e, @5 H( `" x5 w' F* l
pBtn->EnableWindow( TRUE );
) e7 O9 A' z: A
if( m_pTexture )
% [, z+ a" i1 s3 `7 w! n( w+ R$ P
{
2 |8 R0 q9 U& j& t, l- u9 L/ n
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
4 f: j2 V# @0 A
if( wndCtrl && wndCtrl->rect )
. S2 X& O3 f# g; l7 X
{
4 F2 r- a0 A3 c" h+ D* j& W
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
; ^: N# D) c9 W
}
2 [; ]: P- @8 w+ i1 k
}
. ^; O4 i8 l" v" Y; O
}
3 A; _7 R8 S2 @- e
' n" k( |9 S# K( p' L
BOOL CWndAutoFood:
rocess()
, J8 k: U$ N9 ]; d
{
: z8 s [+ E: N0 A% a
if( bStart )
& v8 N8 x2 p" _2 c# r9 b
{
4 e* _8 q( }, P- x
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
- E/ v" t: \0 M9 G/ h
{
* C; _& m1 [& l5 p0 X3 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() )
; g$ `: k) q$ `) a' |7 M/ C
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
* A8 ?; P3 c- B: Y
}else{
) R5 u: j5 R+ V5 ^7 q2 m6 ~
bStart = FALSE;
% x0 b+ n4 {, i @6 s1 \: v
m_pItemElem = NULL;
& F2 d0 T; f1 ~& }% Y
}
Q$ {3 Y) @- E+ e% U- v
}
/ k8 Q) m" h3 z5 o# J
return TRUE;
4 e2 c& D9 G1 F7 c& T; m
}
* @) a- N- J f. @6 @2 j
7 T* ?0 D7 C$ M$ E ?; d, r
登录视频废话:
- r }- `" N; V' i: j" N
尾翼:
. Q3 O! B6 [0 V$ B& S8 D
- L/ b2 U$ y6 Z' `8 E @
代码:
& |' k q3 Z: D: Z6 K
' Z6 Z6 F$ |2 C7 W/ R. N
void CWorld::SetLight( BOOL bLight )
1 i5 l2 O" |1 |: Z6 k
durch
$ Z/ E( e) D1 e A" u
Code:
9 R6 j" T! j8 C1 r6 N$ b9 C& ~+ P
void CWorld::SetLight( BOOL bLight )
) [- ]2 p! i1 `+ m+ O& @+ t
{
- e: K4 S+ L; r& D0 X
//ACE("SetLight %d \n", bLight);
* x) {3 N' \+ D' m$ N: `
# i* U" ?8 Q' o* J8 T4 M) {
#ifndef __WORLDSERVER
$ G3 l4 Q. x+ X1 K) Y
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
' T, j6 t$ ?' b- o! |( X
CLight* pLight = NULL;
+ v) L9 e4 J5 a R2 `% O3 }
: b' [8 a6 @+ e' J9 C |% J
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
8 l+ d; i& N+ g7 t* J7 K
5 y7 o/ g# b2 @" O0 ~" q
pLight = GetLight( "direction" );
3 y4 @( L' ~) {* C+ {2 b
% q# U0 ^2 c H6 V' d2 V% {
#if __VER >= 15 // __BS_CHANGING_ENVIR
; u: w& j& @% V( d* H- Q
if( g_pPlayer ){
, k" G1 _ z' r, Z; Z
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
: P3 k. |: B# h: x1 D8 J$ S! Q
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
0 y7 L& n- V9 B& D$ d I
{
& J& q$ |: A W+ y! F8 h2 |% W
if( pLight )
9 ? X! v$ J3 E8 `
{
) g6 q5 A5 }( B7 v
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
5 U( y. i' P6 ~7 x" K2 i
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
- k9 @* e+ v$ r
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
- q4 V, ~. ^! B0 o$ R; S
. d+ j" g9 `+ A* [2 |' a
pLight->Specular.r = 2.0f;
6 R1 N6 h- u4 e$ R+ b2 ~
pLight->Specular.g = 2.0f;
. L: b7 o6 |. k* D. F: G8 \6 |% m
pLight->Specular.b = 2.0f;
! M& D% N* @$ e; P
6 C: V5 i) s9 J5 K3 B; c% z
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
]5 u3 u3 {) @5 B
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
& r# G* C! a$ N
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
4 X2 w/ o5 @$ v, u h
7 G3 j) g* D" r. a/ G
HookUpdateLight( pLight );
7 ]" E/ p( }6 l
: s- q8 k6 x' u& a6 c. m, n7 m7 m P
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* I5 q: W4 o4 `, Y
' }# d% J0 a0 u9 {( g \) B
pLight->Diffuse.r *= 1.2f;
?! l) d5 i! U/ |( G0 Q
pLight->Diffuse.g *= 1.2f;
) g; |% M3 \8 ?5 z
pLight->Diffuse.b *= 1.2f;
' ^1 O2 C! B. z- c
; Z" s6 ?5 X3 G8 c4 M/ T. ]) y
pLight->Ambient.r *= 0.8f;
9 D/ C* a' ^0 I/ [& @. D, Z1 W
pLight->Ambient.g *= 0.8f;
% Z1 j% m$ [9 K1 L* m& `; T' }6 f
pLight->Ambient.b *= 0.8f;
9 U6 u7 U0 `" V0 g7 d! ~% V
% a- ]% P, [7 C3 t
memcpy( &m_light, pLight, sizeof( m_light ) );
+ y5 j/ X Y. b
3 f' t( S9 r9 C! x
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 V/ s( v( Z( U" M1 X( |7 ^& ]
D3DXVec3Normalize(&(vecSun),&(vecSun));
- O; Q/ E. W$ w# }# g( Z( ?
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 C( B% E A" z7 G, O7 z. U r0 z
pLight->Appear( m_pd3dDevice, TRUE );
, F" p7 L2 ?5 y4 B
6 B2 E' D+ M+ w, m, S" f
DWORD dwR, dwG, dwB;
' ] t9 y; w+ y7 i* q. z, Z3 D% `
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 \$ d) f0 S/ t+ T) S" c
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 d% n: {5 T% o, }3 I
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ ^. s+ C0 n. g ?) A4 C
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! r' w3 A5 K1 {6 ~ i
}
, Y% q8 D6 a6 m9 `' W8 k% ?+ r% M
}
3 o- A0 W3 ?5 d2 i
}
' c6 @1 h2 e; c- X5 G0 a& q
else
) t% h) T# L5 _' B: Q2 @7 F7 d
#endif
& t' @" Y- e c
1 S" M6 G* G+ a+ j( M
if( m_bIsIndoor )
" n: \4 d% k1 \5 A1 {
{
) |! j7 A0 Q; I3 d# [, m9 ~
if( pLight )
C& |' P: R5 F4 D
{
" P! ?* C+ ]) j% l- }* [
// à??μ oˉè*
* N6 n+ _3 T* Z
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
" W% |' Q" _3 k# m+ A) j
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
+ T2 s0 G: U. U/ [# ]) Z' ^
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
1 c. }7 M! p" ^1 h) U
4 [. O; A/ y& M
// oˉè* ??à?
$ t: [) p, P. v
pLight->Specular.r = 1.0f;
3 S4 |% g4 ]! t: G' H+ Y
pLight->Specular.g = 1.0f;
$ l# {0 H7 I, M, [; m' C4 @6 o
pLight->Specular.b = 1.0f;
5 t# ]- |; z2 k
// àü?? oˉè*
5 U1 w7 m( L& l, l
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
/ r' E5 @( E$ A3 C2 b
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
+ R- ]2 S) c6 W; G" R
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
( v9 W* t; l6 s, g( o1 c: H
4 f# F/ y9 T; F
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ X" ^4 V$ n K$ w6 k( b
{
$ i9 M- S4 v- N1 A
pLight->Diffuse.r *= 0.6f;
: ~6 L: e: s$ t# J- x
pLight->Diffuse.g *= 0.6f;
' K" k* J$ g b( e1 }
pLight->Diffuse.b *= 0.6f;
- i6 Y$ U$ s" ]3 K* F' U5 b7 w
pLight->Ambient.r *= 0.7f;
% u$ n4 F& t8 w- {& l; F
pLight->Ambient.g *= 0.7f;
- @, l. w K6 n1 @4 n
pLight->Ambient.b *= 0.7f;
4 Z5 P* ?6 U' M4 G" r7 e6 u* |
}
6 _ N8 P; I& f$ z
6 i8 r$ S% ]) x, ^
#if __VER >= 15 // __BS_CHANGING_ENVIR
( _' z! [* X4 b u5 ]9 c- B
if( g_pPlayer )
9 |8 f$ f' W, g/ D7 K
HookUpdateLight( pLight );
) s2 o4 c* {$ }9 H! B6 ~1 _
#endif
4 B5 Z9 m+ J/ o- U( w
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 y- p# }# D1 D& ~3 F
0 d$ R, ]6 d7 [; P* d
pLight->Diffuse.r += 0.1f;
G, s8 [& p% e6 Q" _4 Q N. U$ U
pLight->Diffuse.g += 0.1f;
2 T( l3 X- E9 ~
pLight->Diffuse.b += 0.1f;
. D% d6 v' t+ [
// oˉè* ??à?
, L" @9 I- O' G; F. j5 k
pLight->Specular.r = 2.0f;
# a$ I0 e; K! n8 K& B. n' y7 o
pLight->Specular.g = 2.0f;
* `# y6 \2 x9 ?" H. k: t
pLight->Specular.b = 2.0f;
* y; [) D, u P3 l3 z- O4 B
// á?oˉ
% d7 `% @0 s& `: o* L: O3 k- j
pLight->Ambient.r *= 0.9f;
3 M/ [8 ^2 h( h5 ?* L/ `
pLight->Ambient.g *= 0.9f;
/ Y5 A" m$ u0 M, P ?
pLight->Ambient.b *= 0.9f;
$ o( L" j8 H/ W5 k8 U' e
3 `3 W( u. |2 T6 S q# B. w8 z
memcpy( &m_light, pLight, sizeof( m_light ) );
5 Z7 n5 r( {3 ?9 U
) a0 K2 o: P2 M/ i# b8 O# S( C
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
+ }. @+ u9 l( W9 r5 j; x
pLight->Appear( m_pd3dDevice, TRUE );
7 C' Q" h" w# h& \% b
& a5 O6 {) k0 q' g; J
DWORD dwR, dwG, dwB;
* B1 }' v( S! [, c, P9 V
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ J, N# }( D% q! T( }" o; w
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ u2 u- C t8 O
dwB = (DWORD)( pLight->Ambient.b * 255 );
: M b: G# l0 o+ b& q5 f
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' e3 _* x5 X3 B$ q5 D; _' d1 m
}
' _9 E/ U( d' N. P0 a- j+ F
}
; P% `" D! ~2 N/ F* `
else
0 b0 A1 {, m1 D8 g# F0 r, r5 f9 h
{
- ?% l- Y( b% P6 G$ K9 J+ {, Y
if( pLight )
' \' o7 k+ z1 }- u
{
. C) @/ U$ s, p0 K4 ?
( D5 w, @# A; N
int nHour = 8, nMin = 0;
4 D+ P5 Q5 r5 f( T) C
#ifdef __CLIENT
7 @( P+ _2 B$ ?- Z+ o
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
/ n( u2 @& d9 P6 X! B/ J
nHour = g_GameTimer.m_nHour;
" F8 I# y! |5 V* @7 M, V
nMin = g_GameTimer.m_nMin ;
, n. A. Z7 w1 y* n- u6 k% R6 p- P9 P
#else
( o1 _# q/ [3 r! j7 j( d- {
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
+ ^# C; N1 G( D" ?" s( ] s9 A
if( m_nLightType == 1 )
' P) L3 s. e; E3 j( r/ m2 h3 T) N
nHour = m_nLightHour;
* _9 F4 G- d: ~7 d1 N9 n
#endif
$ r* o8 U, Z7 n. v2 J
nHour--;
4 Y" Z- t$ a& [2 ~/ H# a
if( nHour < 0 ) nHour = 0;
/ i" ^. w; F3 n2 C
if( nHour > 23 ) nHour = 23;
7 `# S* M- t/ Y. {/ K/ ^5 Z P6 I" b
9 _8 R; a/ W# B+ O) C
//if( m_bFixedHour )
* v( M* W# {6 r$ X
// nHour = m_nFixedHour, nMin = 0;
( G# Q+ `1 S0 |) E' ]/ t
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
$ H/ O0 k! X$ @' j8 b, g) _
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
" G/ w& }$ b: ^' v8 R/ O
/ j5 D) V7 v+ \! a7 S
//m_lightColor = lightColorPrv;
9 _! ^' f9 G) |" H4 y- h
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
4 c7 Z! C A, Q& a+ J1 o
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
- A- Y; g9 ~ n/ C) }
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
& Y& M$ k- W8 V: w5 i+ Z$ Y$ ]
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
9 p1 | x( ^+ s' u! f
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
5 ^ E4 M3 g: o. t8 ~
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
2 s4 I# M! O! G
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
. n$ W5 T! Q, ]+ [
% s3 S& B+ g+ \* a
// à??μ oˉè*
3 Z; U& a4 z& a/ k2 E
pLight->Diffuse.r = lightColorPrv.r1;
6 W- P0 s A* p1 z* Q9 E9 X
pLight->Diffuse.g = lightColorPrv.g1;
$ Y% C* A" N1 V9 w: @& y
pLight->Diffuse.b = lightColorPrv.b1;
, L& g3 O8 e T" u0 j& |: e
// oˉè* ??à?
|9 |: s2 Y" q% m
pLight->Specular.r = 1.0f;
. Z, x& S# K' A, L6 ~+ j
pLight->Specular.g = 1.0f;
( c w3 L, T0 E3 S. Y* R' e2 r; P
pLight->Specular.b = 1.0f;
/ G- \$ g9 Z+ ?: d
// àü?? oˉè*
: h' O% x: o2 R
pLight->Ambient.r = lightColorPrv.r2;
) y A7 a/ V* X( E* }+ d" l
pLight->Ambient.g = lightColorPrv.g2;
" a% i B% ]2 o# K+ t% @; Q
pLight->Ambient.b = lightColorPrv.b2;
, O7 ~5 E* Y! H' W# ]
( F3 M K% h# \0 J$ M
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
& g" ^# a" Z# u8 N
{
. Y' s3 p$ Z8 X% u
pLight->Diffuse.r *= 0.6f;
- c6 C0 |% y1 B+ ~, t
pLight->Diffuse.g *= 0.6f;
% w9 L1 d6 o1 {+ w, q8 Y* c
pLight->Diffuse.b *= 0.6f;
* \6 g5 _# a- h7 R) l W) N* {6 N
pLight->Ambient.r *= 0.7f;
7 j1 P4 w: B; E: z
pLight->Ambient.g *= 0.7f;
6 M3 ]& y4 K' Q. R( \
pLight->Ambient.b *= 0.7f;
2 w( m& y5 y( S2 E; ]' Q
}
4 L. v j8 w; n' i# }7 k- {1 f
5 e1 X" }% X9 A( @9 Q
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 ~: C+ i+ p) V1 f' g
if( g_pPlayer )
* ]! y. V- ~1 ]! J5 U8 ^0 M
HookUpdateLight( pLight );
0 T6 b* G2 O; p" T" j
#endif
0 R0 w. k8 R9 d2 ~# w- Z
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
! x. G4 e% [2 E; j; R
) a% e6 C- q2 T p- n( U
#ifdef __YENV
e" o# t4 a& C' P, S* S
pLight->Diffuse.r *= 1.1f;
# l% U4 |' }' A! ?3 n8 j3 b
pLight->Diffuse.g *= 1.1f;
5 X) @, I0 G! u5 I$ B- A/ t5 Q) k4 d
pLight->Diffuse.b *= 1.1f;
! K/ s( m5 D J/ Z; }6 b) x
// oˉè* ??à?
$ Q- x! l6 v* y
pLight->Specular.r = 2.0f;
: j p) j" c+ y' a7 O0 \
pLight->Specular.g = 2.0f;
6 s. g0 b! |6 X% u: c( [
pLight->Specular.b = 2.0f;
) g n4 `, h3 n, l
// á?oˉ
+ t c2 R8 _9 P u' j% W% I
pLight->Ambient.r *= 1.0f;
5 t% @ G' g6 x1 F5 v/ D
pLight->Ambient.g *= 1.0f;
3 T! B7 O$ ?2 |2 G
pLight->Ambient.b *= 1.0f;
( Q, I- J5 C0 x
#else //__YENV
/ o' U$ P* ~+ e/ _: F5 w5 b5 \
pLight->Diffuse.r *= 1.1f;
$ e" T( D& W& \) h4 K; M' y
pLight->Diffuse.g *= 1.1f;
# b% C1 ]7 h- K
pLight->Diffuse.b *= 1.1f;
6 t: y& W( \# ]# Q
// oˉè* ??à?
& D4 m' v2 O- w! J- ]
pLight->Specular.r = 2.0f;
& P* G% m$ d9 b, _2 F4 u" s) ]5 g
pLight->Specular.g = 2.0f;
9 Q5 V1 A8 W, c( p9 T' P8 ^
pLight->Specular.b = 2.0f;
8 D, e5 T- T2 ]7 }8 Y$ H
// á?oˉ
8 z" z0 L0 u# n" _5 o# r
pLight->Ambient.r *= 0.9f;
, W- [5 u% l! g: J; r# ]3 v
pLight->Ambient.g *= 0.9f;
! s0 \2 J) K( u* Y
pLight->Ambient.b *= 0.9f;
8 J' ?8 V% b0 ]$ e7 u- J) e
#endif //__YENV
: w# y3 H$ X4 F( f! L/ R% Z/ T2 Y5 _3 Z
1 m z4 q( ~) Q' C$ Q/ T
memcpy( &m_light, pLight, sizeof( m_light ) );
# b# B+ G6 k7 n0 }1 T, R
. x. w- }7 ^; G, Z: @9 t8 z- A: I
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
2 \7 L1 ^1 s2 _) ]1 Z( B
D3DXMATRIX matTemp;
* d1 h- ?1 S4 w B0 r/ T
static const float CONS_VAL = 3.1415926f / 180.f;
9 g/ s+ M- P$ `, l0 j6 w
3 y5 x y# t+ x3 b$ k e: J9 m7 m
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
: u6 q7 I( B0 [ |0 E+ }
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
; a8 w! `+ a! E" h `& `2 B( M
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
) D/ U' n* m' V+ L5 ^
pLight->Appear( m_pd3dDevice, TRUE );
2 O7 p' o# [; _2 d3 E+ C
: O: j& I$ b0 `" k( b9 |! H
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
4 u+ h2 c! e' G
// D3DXVec3Normalize(&(vecSun),&(vecSun));
1 q2 A! Z* _' y( V' Z. g6 W: x
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# R! B5 k" {) l- n9 p5 k Y
6 Z0 F' F* v2 c' g; m& P: z
DWORD dwR, dwG, dwB;
+ u) s0 Q J; y
dwR = (DWORD)( pLight->Ambient.r * 255 );
; {2 V6 _- P+ r$ C: X1 S
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 e+ {7 \" |4 c# K
dwB = (DWORD)( pLight->Ambient.b * 255 );
: x3 {. x9 M6 ~; O! \$ q8 t0 `" p
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" V, I) g% D. {! A
}
7 n' b+ e: j0 |
}
( P4 O I3 y3 H1 B1 r
" e' Y, ]5 ^" a7 h. e
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
- z- H! e/ b8 n2 c, l' [
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) );
/ H. m7 X$ } h, G) U/ J
::SetLight( bLight );
# [$ v% Y: z+ n# p! i' p7 n& R
' t: l* q6 B. Q# n
// ±ao? ?D?í???ó á¤à?
- U5 L/ j0 P3 x7 F6 M% G
m_pd3dDevice->SetMaterial( &m_baseMaterial );
* N0 n0 a! _1 Y- B5 n' G J+ E
; P1 c" l5 Y0 A0 F
#endif // not WORLDSERVER
: b# e/ J" I0 b, b* k( u; C: x
}
2 r* c2 q1 e6 e" a$ ~- M
并更换
! @* }; X0 @" p# U
Code:
3 }; m% W0 @, c. O: J: r
__FLYFF_INITPAGE_EXT
& B2 p: F ?1 n2 u( k
定义
' \9 i. g( ^/ Y! e, s0 g) R: t
! R; x% S: A$ }5 p
1 A; O9 A( r* a7 \* N! G
4 w; J; }5 X6 X( x" W- @
3 |8 y% b9 }' E0 c# R+ y
现在终于删除我的狗屁加速...
* a, G0 z0 @+ p! t2 w" `
' z, u) U' G8 G9 ~/ F& O
- F0 H$ d: j5 m" W: C
; w9 t6 @: u5 h3 [2 E: Q; Y
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2