飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
; y4 Q# x! ~$ ^" I4 r
尾翼:
: T& O& ^6 u0 a! t9 E/ K
. z& ?5 j- j$ ^. B) d( q1 ~/ J
代码:
; ?- d: N( D7 G$ h' o
CWndAutoFood::CWndAutoFood()
+ o$ X$ l0 @: T1 M# P" T
{
; _+ j" Z7 m8 n F; H3 [3 J
m_pItemElem = NULL;
' R$ Y& h4 [& v5 Y$ v
m_pTexture = NULL;
0 ^* H! q! r b/ K
bStart = FALSE;
. T; M; Z* w/ g: f# F7 X: x O3 T, V
}
" d5 e6 Y! M! C5 D
4 V9 B5 t8 {. W+ f
CWndAutoFood::~CWndAutoFood()
) C$ ^! G$ i" }. o L7 g+ v
{
% Q+ G. B2 z) P' R8 f6 C+ M3 e
AfxMessageBox( "AutoFood ist gestorben
" );
0 k0 e Y- M/ u# a9 L0 [2 |
}
6 _, M% g- |1 m1 v
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
$ {! d- G, G, T, ~. r$ W! U
{
( E5 }+ ?: D; w; l
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
y6 L# B$ X9 d* o/ B, J
}
- \3 p+ j# s9 T, A$ @( R
, e2 j9 C R+ H" R
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
+ G6 f, g) L, Q/ `" v" d, ^
{
; e ?* Y/ j3 }* R$ W
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
% J6 q; m& `" L2 T% g5 q0 f; v
CRect rect = pWndCtrl->rect;
. Z( m& X, b( @" ^4 H; ~
if( rect && rect.PtInRect( point ) )
. L& z" ^5 f! j4 w' ]3 i
{
* S: P1 r* \ E
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
7 c2 g: ^: B0 \: H- Q; V5 ]/ I8 y
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
4 n3 F0 \, B# q% r# ^
{
+ X) N8 E: X) a
if( m_pItemElem )
# l2 U1 J+ L1 o( h) L8 k$ _
{
7 a5 w4 Y9 d% F3 m r( l7 y
m_pItemElem = NULL;
2 u6 n5 h' F/ x) h0 V3 s
}
& ]1 T! {. k' h. V3 Z
m_pItemElem = pItemElem;
& u! @+ n& O8 W7 j; p: I3 ^
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
0 w* e/ d; G9 F' @3 E7 `; t/ o
}else{
- y, U/ i4 ^9 L; R! B0 F8 R, d* D+ h
SetForbid( TRUE );
6 F3 `" d- M$ X5 H! p3 I; q
}
- {* L2 H, r s+ t- ` v8 P9 G# {' V
}else{
: P$ @5 ?0 a8 }- l3 x# Q% X
SetForbid( TRUE );
* R1 G2 W) u3 L1 t
}
. X0 f0 {8 p+ p( v/ A. k& [
return TRUE;
8 N/ U8 z' k" Y( }
}
: D3 i) F2 \+ H
/ h% ]& ]- W+ L5 Z9 O3 h/ s
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
3 \' y9 k2 F3 g
{
, P; r7 }. G8 r- a* r6 Z
switch( nID )
4 ]7 W3 J/ X4 S( S3 h
{
R+ j9 ]% S& R3 @7 { o
case WIDC_BUTTON3:
6 A* Y: i% Q& J; L6 ~
{
& L0 w( K! U- P
bStart = TRUE;
$ @$ ]. \9 e6 T" b( m5 {
break;
5 Q' n9 U% x- d @/ l# ~0 S. E. Y
}
( g% B2 ^9 C5 N4 d# s6 ?# T2 M
case WIDC_BUTTON4:
& C V) U8 ?4 I" V
{
0 v* O- r0 C1 A: y. g" q+ V
bStart = FALSE;
* \) t/ s& M0 Q a
break;
4 ^( E- j! L' \
}
; b& I# U" ^$ w! z' y0 U
}
3 M$ x' s: ^4 v4 C5 c2 U
return CWndNeuz::OnChildNotify( message, nID, pLResult );
& F. u) I' v8 s/ L: u& T
}
7 { n- j! f+ J9 I% r4 \
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
7 [& N3 V. I. \' L; l3 h, b7 s/ A' s
{
0 ?, \) I$ a& L* O: j
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
1 t P ]; a$ r* n% E' ~
if( bStart || !m_pItemElem )
2 B& ?, }# V e6 i' f
{
% E. F1 l0 E- @5 }" t
pBtn->EnableWindow( FALSE );
2 c0 m: w" m8 O$ t6 W
}else
; x9 o+ {3 E+ V! b4 u# R
pBtn->EnableWindow( TRUE );
* H) ~/ Z8 g9 F4 g9 b& g) e
if( m_pTexture )
' k- b Y# Y' N: \$ v8 X9 b
{
! {7 G: Z9 f( V. q" h
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" s$ f) D) o. `$ M W& g' t* T
if( wndCtrl && wndCtrl->rect )
7 A+ T" n" p8 b0 z9 \
{
6 u- y/ g' l- }
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
5 Y3 |# o5 }( O+ ?6 |4 ?* l
}
' ?: |* g- d ]6 ?4 S8 c
}
* Z/ {8 q w& N) r: N
}
4 K, d: P6 ?" n6 B
! Y; }) w2 a5 b: j5 J+ g5 }: n
BOOL CWndAutoFood:
rocess()
1 C# r8 \* i( B2 [: _ z
{
6 A0 w m3 P5 f% y, G/ h
if( bStart )
6 S7 [' `* A; q$ l( Z P q+ d
{
5 D" A! X! p2 {8 ~
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
3 O" C- G2 G; I0 F+ G3 l2 S" ^: c9 d8 r
{
/ z. j8 P C$ W$ t. \9 ]7 `% |
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
! u8 h, |2 a4 Q
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
% s' c7 w' F3 \: `% ]8 X
}else{
& Z! Z! @) D$ B1 f/ Z2 m) p
bStart = FALSE;
0 U' k( b# P# L% P4 K0 `
m_pItemElem = NULL;
9 Y, J, M) F7 o
}
& b; d! V' W% b& U
}
' \# a% t" Q1 n
return TRUE;
: m9 m, q4 q- s4 v0 L7 t
}
. y! G/ }" b0 L0 \; J
. P! f# v, V: V" ]1 a
登录视频废话:
2 E" H" G' t, ]$ D; {: h$ a
尾翼:
9 P* c3 J! D1 i# t7 _3 m
5 _4 S$ l) E. \, \
代码:
! G: R( J0 R! j |
% q L" ]4 i. [. D
void CWorld::SetLight( BOOL bLight )
+ O: k {) E$ U, u
durch
, O0 ?8 y; K# I) Z$ B: h) A
Code:
& @' J- _/ m1 h8 o' U S2 V
void CWorld::SetLight( BOOL bLight )
7 [2 n; ]3 ^& A: Y& d0 f
{
- X2 A$ u/ e& e& J8 @
//ACE("SetLight %d \n", bLight);
8 `7 ^6 m, s3 r$ S6 N, `2 a
. w7 Z# G5 u" T- F% ^, x% L- ]
#ifndef __WORLDSERVER
- `, w8 U) q+ A" }' f
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
) m) d$ ^; H. U& P' ~/ q* p4 R* M
CLight* pLight = NULL;
( p' e5 h, F5 d0 t1 Z
" ?/ o/ g5 [1 k/ \" [
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
* K" ^8 D% N( w( D- b1 n: _
# i; n+ U/ f$ m7 i! w/ o
pLight = GetLight( "direction" );
6 w' [8 g- ~2 Q2 C
; g0 j. i* s$ p5 F5 S0 _
#if __VER >= 15 // __BS_CHANGING_ENVIR
( c1 T8 l7 L5 c# s& q
if( g_pPlayer ){
2 ?' b8 x8 a4 M2 l6 m C9 m
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
, s1 @* L+ K3 C g& P* T; @
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
! F8 J. v9 ]5 H, m! d
{
; X1 Y3 \ G# |& K" ?! F# I2 V
if( pLight )
& l. }$ A, G; l# I
{
: C9 @7 O4 c% Q/ y' j& W* u
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
) V+ P7 j) b- t0 V
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
4 @$ ?5 e: E, d6 d& I( r% u6 k
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
! e* `. A3 S" p' |! z' w
! X) h% \# ^9 {$ b+ y0 j* g) I
pLight->Specular.r = 2.0f;
% I& \( l8 U% h+ ?$ G. m* v
pLight->Specular.g = 2.0f;
/ } T; w! ~ ~# D" x" H5 `( V
pLight->Specular.b = 2.0f;
, v* f" x* p# [4 z, Z2 |
! a- j* X. b0 [/ b5 B9 x
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
8 u8 _& g0 Q4 q1 W3 w5 m% L
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
: v' w; l# ~& h: Q7 q m7 D* N6 t
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
9 C }9 l3 ^/ i
! a+ \( H3 I$ T; V
HookUpdateLight( pLight );
( p' J: L# I6 v- W5 u, b% G% d
, M, a, c0 v9 r* ~0 w, |' j. }
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' _( m# ~, b( s8 w$ k
4 ?: \' j7 _4 s, C1 F- }4 D
pLight->Diffuse.r *= 1.2f;
0 ~ v# Z1 p ]
pLight->Diffuse.g *= 1.2f;
2 w6 Q* Y+ T. V3 S& A+ p
pLight->Diffuse.b *= 1.2f;
3 M; j! J& L F! W
$ w; b" a( ]8 `# e' D5 T" z3 J( \2 \! m
pLight->Ambient.r *= 0.8f;
( }0 d' a( _* K& ?
pLight->Ambient.g *= 0.8f;
" E: z& r8 R2 n# P4 m
pLight->Ambient.b *= 0.8f;
3 Y; T+ [, C8 r' M" \
( Q+ u: i) ^: D+ ^0 Z7 C
memcpy( &m_light, pLight, sizeof( m_light ) );
4 R' E# D9 O7 k( [% k X1 Q
, u( I4 M' v" ^% \0 V
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 T; a" @% h) O. Z
D3DXVec3Normalize(&(vecSun),&(vecSun));
8 U/ H+ W' U. y# B; j0 g( }
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
; Z0 a8 n, x* G' T: ?2 y
pLight->Appear( m_pd3dDevice, TRUE );
e" c9 n" q: ~& b( g
. f) ^( Y8 S8 G
DWORD dwR, dwG, dwB;
! H4 ~. \' e8 O! r$ U. A [
dwR = (DWORD)( pLight->Ambient.r * 255 );
/ a3 V' w# |" ^0 i" u
dwG = (DWORD)( pLight->Ambient.g * 255 );
5 G$ F7 D/ L: \+ k( v9 ^
dwB = (DWORD)( pLight->Ambient.b * 255 );
4 p! B2 y& b( {( [* i
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 n* u) Q X# P5 M2 A' L
}
1 [5 C$ K0 q+ Y
}
# U4 g5 w5 v4 s b8 H
}
2 m' y0 g- F' F y$ @3 T
else
6 W+ i% d% J- F* w7 c K& O
#endif
, X1 Z2 V8 q6 r
$ I- e! `2 @1 o
if( m_bIsIndoor )
4 d) Y1 n; M* Z
{
8 H( s1 \- j: w9 m# ?
if( pLight )
( _ y a: t+ T
{
/ g( C! p1 s% c% X, _0 J6 y
// à??μ oˉè*
1 C4 a) Q# T$ P1 h/ |
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
. t y" Y# j) O
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
7 N8 y* ~( C4 L Z; O
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
; o' k2 O/ ]3 @& c8 s5 r m
4 f! S7 l1 U5 B" J+ H V3 Z
// oˉè* ??à?
; y1 v: @9 |3 y6 X
pLight->Specular.r = 1.0f;
+ ]0 h' ~3 \$ a( i1 i) \
pLight->Specular.g = 1.0f;
9 x5 ?- l/ `$ F$ l
pLight->Specular.b = 1.0f;
$ J+ e; n& I7 F
// àü?? oˉè*
/ |4 u/ t. [9 a( l
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
: F. C3 v4 u, N" Y* u
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
- M* {) b3 y6 T# ~# _* a
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
, V) ^6 U+ k' p9 E
& A1 s7 N* N; b
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
- D% B: u# H: f6 ~4 K
{
6 s5 O6 ?& ~; l" Q$ {! F
pLight->Diffuse.r *= 0.6f;
: Z' _1 e$ H( Y1 h) s
pLight->Diffuse.g *= 0.6f;
: O6 M6 I! W. {) J+ V
pLight->Diffuse.b *= 0.6f;
Z7 c8 V) [, a2 C1 X
pLight->Ambient.r *= 0.7f;
2 ] s* u* Z. g
pLight->Ambient.g *= 0.7f;
# A" K7 s. ]% R0 w: x
pLight->Ambient.b *= 0.7f;
+ W1 I9 X; Q( t$ U# S7 m
}
5 y g$ u) A3 r+ ]+ k2 D* c5 Z
% J+ d! C6 h+ L) C, W% j7 E, G: @
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ c" n) F# k" e3 }
if( g_pPlayer )
( }3 C# w" |$ E6 d
HookUpdateLight( pLight );
; J6 W6 y7 u' w# C0 P# m
#endif
; D# L& [3 X. C1 e/ T
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ i) t* X: w/ Z
- a; s! q! a }# q
pLight->Diffuse.r += 0.1f;
0 n# h0 s4 H+ W+ L" c! A
pLight->Diffuse.g += 0.1f;
' ^3 {1 o" K/ S6 m/ }2 C9 s
pLight->Diffuse.b += 0.1f;
, ^2 _9 a M$ m V o- q, D
// oˉè* ??à?
* _" ^$ I' f; V1 m9 V
pLight->Specular.r = 2.0f;
" B+ Q. r, ^4 A% T3 [
pLight->Specular.g = 2.0f;
& ~: Z' Q8 e6 x ^2 J' E
pLight->Specular.b = 2.0f;
4 q# \, o" A- |- ~
// á?oˉ
7 h7 S! V5 x' v* A3 h& J& Q: q
pLight->Ambient.r *= 0.9f;
* ?" g9 m0 _- L7 k0 w7 a7 w! J) k: x+ x
pLight->Ambient.g *= 0.9f;
" H h$ C6 k& \8 w( L$ s
pLight->Ambient.b *= 0.9f;
, b1 S: P- J2 V- h% Z
5 m* w9 F7 L- [# K' z$ G: ^* }3 ^
memcpy( &m_light, pLight, sizeof( m_light ) );
4 U1 m* M: ?* u) {" e& y1 t! w% z
0 q& T7 ?% N2 u4 Y; z% j
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
. X; u" t/ v& h, ~1 b7 A( d% V' `/ s
pLight->Appear( m_pd3dDevice, TRUE );
2 @0 A% d- K8 o) y
1 A4 b4 d' h5 @3 I
DWORD dwR, dwG, dwB;
- b3 L1 H$ h! P* R
dwR = (DWORD)( pLight->Ambient.r * 255 );
, }- v: ]. t D: o! K, w `
dwG = (DWORD)( pLight->Ambient.g * 255 );
2 S! r7 C/ A. V; @; r% C ~7 C! E1 i
dwB = (DWORD)( pLight->Ambient.b * 255 );
5 I. {1 p8 i0 b( z2 u. I
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: I6 v3 _' P2 c4 J/ D
}
! k* f, f% n7 ?; j
}
1 x0 x5 ]/ N8 L+ R' Q
else
6 n/ f0 f9 X/ {% Q/ r
{
. l- ~6 L3 e) c" [
if( pLight )
7 r7 Z; G* ?4 L, u9 o: |+ m1 |
{
2 r0 x) M' Q4 F) x& k, h
H+ S" o& p+ P
int nHour = 8, nMin = 0;
: \) j( }. V4 h4 t& [
#ifdef __CLIENT
2 k) y/ c/ C, l; [
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
' v6 U$ T8 X9 L: p0 y
nHour = g_GameTimer.m_nHour;
" N; {! o4 V% l" h4 A, D) ?
nMin = g_GameTimer.m_nMin ;
7 W( |- w2 g/ N9 u, K) ~$ v
#else
1 Z9 w; [9 X$ G# o/ d
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
$ O7 P/ f2 Y: a+ S" v
if( m_nLightType == 1 )
) c; ]5 ^ J+ T7 ?3 Y: s
nHour = m_nLightHour;
0 k0 \$ u: m; b$ h4 }1 w
#endif
- J7 _+ P* n" U" H; X, r5 q" N
nHour--;
1 {: g$ r$ b; `
if( nHour < 0 ) nHour = 0;
0 s( w7 y8 r1 J, o7 ~$ c
if( nHour > 23 ) nHour = 23;
7 T) e. ]" v9 x# t# g" C6 [# p& @! v
) \0 q0 X E; J
//if( m_bFixedHour )
+ q! I! |/ l6 C! t( H
// nHour = m_nFixedHour, nMin = 0;
7 J/ r: E2 g2 C0 C. f( S
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
8 j2 T5 a* t5 e1 P& L9 ~
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
% t/ O3 G! w/ r9 M3 n
: |$ ]& J! ]: U8 J1 q6 W. M4 r7 m
//m_lightColor = lightColorPrv;
/ h9 f6 m# c w1 v/ B' U
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
/ W1 i; J1 r9 \- W
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
+ K2 y( ^) d& C9 n( _) t
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) D5 Y6 O9 X/ j v
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
4 _$ u g- q1 }7 U* D
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
0 y* P# v( x% K$ N/ X$ V3 m; G
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
( \4 _' m; c$ z3 {8 a) O# h+ S
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
0 w% y. L# V* I7 Q
1 f* Q. g; O1 k% M2 u9 A& T
// à??μ oˉè*
4 P4 O: W0 |* e U$ y u
pLight->Diffuse.r = lightColorPrv.r1;
# T J3 K) I! v. r2 \. w2 g
pLight->Diffuse.g = lightColorPrv.g1;
$ E6 Z; Z4 a7 p
pLight->Diffuse.b = lightColorPrv.b1;
) n- E8 ~3 f& U+ k8 n5 D- x7 V
// oˉè* ??à?
3 f X+ T* O+ D; q4 a
pLight->Specular.r = 1.0f;
" O$ q# }* l, t; t; f& g a
pLight->Specular.g = 1.0f;
+ N! Q" O. x; S1 U* F8 n: [
pLight->Specular.b = 1.0f;
# D1 X; m) C# d# i0 _) Z
// àü?? oˉè*
( G8 V0 d$ Y0 a
pLight->Ambient.r = lightColorPrv.r2;
* D0 O3 u; R7 r, a8 M/ x7 v
pLight->Ambient.g = lightColorPrv.g2;
3 Z% s( J* h& b3 u2 K+ F% p+ [
pLight->Ambient.b = lightColorPrv.b2;
0 C& t/ U% g3 S3 ~6 { u) z
9 y/ S7 n" w) E$ I/ p/ i0 ^! T
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 T; g7 }5 [2 p6 O6 ]! O
{
e. N0 w5 n5 u3 i( Z
pLight->Diffuse.r *= 0.6f;
& Z1 K2 k7 e* x+ V% p4 }) e
pLight->Diffuse.g *= 0.6f;
! D) d$ u4 m3 K- K
pLight->Diffuse.b *= 0.6f;
# u, q4 Q8 G" {2 W
pLight->Ambient.r *= 0.7f;
- ]3 X8 e; b4 _$ w7 k
pLight->Ambient.g *= 0.7f;
0 N3 g( }$ o! @, `: B0 x
pLight->Ambient.b *= 0.7f;
5 z3 w0 @# p5 @0 a
}
7 v4 R9 K2 Y7 q+ I- e6 T6 o
2 \: L A# a$ n9 @, k% a2 h7 L
#if __VER >= 15 // __BS_CHANGING_ENVIR
. E% c+ Q U4 F) H. l
if( g_pPlayer )
) o0 d% n1 t! e# r1 R; z* ~7 W
HookUpdateLight( pLight );
z, { T' R. q. i7 x* Z
#endif
1 e; N q- W, J/ q* f, J) a
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& B( m# _4 O4 w4 J% [- S
& k2 ?: \+ P& |& u, m
#ifdef __YENV
% g( ~% Z1 ^. r6 M$ V& y# l/ c3 h, i, a. Y
pLight->Diffuse.r *= 1.1f;
" P7 U/ B: n3 u# ?+ c6 l
pLight->Diffuse.g *= 1.1f;
9 z4 A1 G$ G/ d; A3 [2 z, a
pLight->Diffuse.b *= 1.1f;
3 }# e8 ^! R7 L( r4 L' F1 `0 g
// oˉè* ??à?
a8 Q% c- B% A2 u
pLight->Specular.r = 2.0f;
* V# R/ k' H6 A8 s1 c2 f
pLight->Specular.g = 2.0f;
, @" A4 N& X6 d s' ^
pLight->Specular.b = 2.0f;
# C7 d; ~' f8 H- k- P; z2 m" v2 x- I$ R
// á?oˉ
2 ?7 I: o2 Q8 S' K% j" I/ w/ s
pLight->Ambient.r *= 1.0f;
$ {) H! ~4 \# X
pLight->Ambient.g *= 1.0f;
; M) r5 b; P$ E, g" [+ p: q
pLight->Ambient.b *= 1.0f;
& a2 y' Q1 J/ i( @& T
#else //__YENV
7 Y- y; c7 d% Q' i/ g( b$ X0 o
pLight->Diffuse.r *= 1.1f;
3 P' K4 y4 j8 y4 y. z
pLight->Diffuse.g *= 1.1f;
: `' s" B2 f) G8 I9 u
pLight->Diffuse.b *= 1.1f;
: u h' N( w4 J( u
// oˉè* ??à?
& p- ] k8 t/ `# u4 ^1 s
pLight->Specular.r = 2.0f;
4 e& K( B. u- T) C" n
pLight->Specular.g = 2.0f;
0 w: ?% C: \! S4 c
pLight->Specular.b = 2.0f;
) J/ w( J X, \" p! u/ i; a
// á?oˉ
( a' k: c2 u, A' M+ s2 H
pLight->Ambient.r *= 0.9f;
, J: Q; T$ N) Y( }9 d; A* ~
pLight->Ambient.g *= 0.9f;
8 m2 b! S# }- ^# Q) y* i
pLight->Ambient.b *= 0.9f;
. n2 [- |: S/ ~: A7 u8 N
#endif //__YENV
, ]9 g& Q- @6 i3 k; R# R, k9 V
! v/ A9 i; t! G% c3 v# q& D$ M8 c
memcpy( &m_light, pLight, sizeof( m_light ) );
: U( F: _# Q' u* P N+ z
+ U- h6 E$ R; M
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
/ n8 l, J0 P5 T, z" n) g6 s. M
D3DXMATRIX matTemp;
( l! u1 k. C& c1 Y
static const float CONS_VAL = 3.1415926f / 180.f;
- ]4 O* H8 G6 j1 p
7 j7 Q n* i* V9 Y8 H" D$ ]5 X
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
2 F Z0 {. ~0 z1 ?8 a# S
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
0 k0 L9 i1 j% |) X4 y8 l' G4 y
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
6 o3 S/ O+ r3 f- ~ Q1 x/ @6 \
pLight->Appear( m_pd3dDevice, TRUE );
/ P* X* T2 V' A! i2 V8 W
* _3 G& b" T" S. n
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
+ y. i4 y' D) Z8 f% T
// D3DXVec3Normalize(&(vecSun),&(vecSun));
& P6 O6 x+ H! D6 b1 \5 R
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
J/ _/ k6 K* |0 G# r, {
6 P. ~0 T7 n& a, h7 T7 k2 C
DWORD dwR, dwG, dwB;
/ s8 R; k2 X6 a) n' v
dwR = (DWORD)( pLight->Ambient.r * 255 );
. `5 {, ~8 e) j) V1 l
dwG = (DWORD)( pLight->Ambient.g * 255 );
* p3 {+ B3 A3 G' k
dwB = (DWORD)( pLight->Ambient.b * 255 );
* F% N4 O5 D$ E# H' H' ?
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 x p m5 Z* x) P2 p
}
( c4 u/ }4 q; h% y: T2 O
}
, r% k% ]0 M! v* H- ^1 ~
: i" K- p4 v: z
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
3 O; b* b3 S8 A' _: H
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 U7 w( l+ c" H5 Q
::SetLight( bLight );
6 g+ m% I, @+ N! z5 _; o9 Z
5 }% H9 {5 v# P
// ±ao? ?D?í???ó á¤à?
# z |. x( n. m/ e4 X, F
m_pd3dDevice->SetMaterial( &m_baseMaterial );
6 O3 K/ b) f, O- p1 t& Q* ?0 l
2 S2 l/ L0 S' p6 `
#endif // not WORLDSERVER
- S. x8 f/ M1 t. I. }5 d5 _
}
' p; A9 r4 Z7 w: K& @
并更换
' J4 j) ~) G. j
Code:
q( f' Q! \' g4 e% V+ f2 M
__FLYFF_INITPAGE_EXT
6 B" L& t( u9 h9 q
定义
- d4 e+ _9 z) u) F# \
1 u- x* }1 ?) O* K. l
# z3 p% ~8 A3 J
6 S i$ a$ Y" J' Q
; b& r" `1 f4 z1 c+ m+ Y9 g
现在终于删除我的狗屁加速...
9 O8 V/ a8 N" w5 f# j9 V
+ O d; g! s* Y. ?5 U! L, _
0 }* r% q6 ^2 _5 K
& m2 F% T5 k6 v, ?# z+ }( C
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2