飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
1 V3 m6 ]; o8 e9 D5 q7 [
尾翼:
% ]) ?5 Q0 j" ?
# l, g9 ~/ t' @0 Y
代码:
( a/ |+ u7 [+ g
CWndAutoFood::CWndAutoFood()
0 p( L+ f! P( v& K7 t' w; h
{
! G. ]0 P* `1 p* h2 E/ x
m_pItemElem = NULL;
% O! z& `! F# ~6 E- k A
m_pTexture = NULL;
6 S8 W0 |: J! T# A
bStart = FALSE;
" [+ d( F6 O# i+ Y" b' T2 r ?0 d
}
7 H& q7 M2 o- ^9 j# E( v
% r3 h/ p2 m3 g5 ?2 `% m3 L
CWndAutoFood::~CWndAutoFood()
6 d+ B% |. b7 ]4 G% i6 ]8 a" q' B
{
+ V* l5 p# e" }3 `! _' y" N
AfxMessageBox( "AutoFood ist gestorben
" );
7 t7 ]# W+ p; p; I! F3 o
}
4 t$ m( e, c8 A
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
0 b, r2 P2 ]! Q5 q) z. F
{
' {% T6 m2 F8 Z0 O! u2 l8 O0 x
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
/ b t5 |( H+ d4 t( \
}
- P4 s, J1 F: X D7 \
( s" G Y& i9 ~
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
7 U* X; Q) m: y& M$ \5 A( z
{
6 L. o1 u0 @# n: h$ e
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 X9 f( h& F0 n3 m8 q1 t* p' n: R
CRect rect = pWndCtrl->rect;
/ N/ p1 D+ T8 o6 f
if( rect && rect.PtInRect( point ) )
/ Q3 P7 Y9 w) \/ K' C, G6 b' l) X
{
/ B o7 D( w9 I) E) }
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
* h$ Y2 F& _1 E4 ~3 j
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
6 A7 @' p+ {, p6 y$ `# T% V
{
+ l- A+ z% c x, m/ Q, ~; q$ C
if( m_pItemElem )
& p7 ^) ?* Z- o8 a
{
, T5 `/ t$ s# v7 ^2 A- Y
m_pItemElem = NULL;
2 U/ r" B. A( e4 P
}
$ l! v& A' N8 j* C+ ` g
m_pItemElem = pItemElem;
, C+ i" Y0 n% X* {. U, ]* t
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 n$ J4 ]& B: d1 l D. S1 J& c7 l, _
}else{
! ~+ O1 @- }$ [7 H
SetForbid( TRUE );
& K3 p" d: A" x
}
! F- F5 S' F+ i7 n0 `7 \' J( P
}else{
7 Z+ m( E* t& L
SetForbid( TRUE );
+ U8 I+ j9 z! u6 ^3 n
}
2 p" N6 N) S9 f! E. w& X. h
return TRUE;
* p* m- m5 ?4 W- ~8 U: p
}
4 m6 h) Z. L; W( Y. e7 G
; I# |* S6 m- p: i5 B8 o7 T
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
( _8 R& q2 K/ |/ \$ G, M0 d
{
/ O; S( c* k% K! C; g
switch( nID )
' }6 O/ N% j5 O' {) j# u
{
; z7 H# F a) _. _1 H x
case WIDC_BUTTON3:
; a# W4 K6 z9 x) `+ `: Y. B! k2 y
{
& c5 k+ D& _% f7 ~- o
bStart = TRUE;
1 C; N2 w# f4 ^, u7 b3 y" y
break;
- k5 q( D o; h2 [# Z, ?: @
}
& D7 I" z, W r2 F n
case WIDC_BUTTON4:
% p$ Z7 x1 m0 [0 C1 m
{
: G- I( R7 J5 R$ e8 |/ w' ?
bStart = FALSE;
% N, e8 G: F8 Q- }; f
break;
9 |- w( ?6 q. i
}
' x: e% x/ Q9 a8 f8 E- V
}
0 }" ?) e- l1 j8 ?0 B
return CWndNeuz::OnChildNotify( message, nID, pLResult );
. ?0 @! o3 B8 I) U. Y
}
& [1 x; Y6 q3 x2 Z1 X. \
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
# u$ K' N( ~ `) @- a6 r9 ^
{
- F! V; A" R/ Z
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
4 d! h1 s6 C* B/ Y8 T4 a
if( bStart || !m_pItemElem )
& k7 L0 k% j1 R; {2 r
{
3 i/ _8 `3 ~2 ^) `
pBtn->EnableWindow( FALSE );
/ O+ M" r- g, Y" Y* s& W' X
}else
0 s& q& V* W% x9 d, d$ ~; |! w* Z
pBtn->EnableWindow( TRUE );
4 S" T3 T# C, _2 q1 p- z- T
if( m_pTexture )
1 u, N6 Q: ~3 } h
{
. G a+ |3 l" Z+ g i
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
$ b: g, A4 }9 O2 ^5 N2 {8 J3 B. y
if( wndCtrl && wndCtrl->rect )
3 f3 A6 c& w" s6 p7 v k+ _: V
{
/ J! @# ~8 P8 i* L% }
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
; v2 Y* i9 ]' i( t% |
}
0 r6 _9 p& X% ?3 y$ K3 M( e
}
0 N- D0 L2 g! v* f2 \# P# y# p
}
/ z2 J1 ~# g* m! k' r' B1 {
3 B9 X6 @6 {( z! p4 c
BOOL CWndAutoFood:
rocess()
- I: e2 Q/ X- {; [% @& b
{
$ I8 K) e5 e6 o4 W
if( bStart )
8 k' {; D6 C) a6 z7 p% e& T8 O) ^
{
6 ~- d1 d* t& X6 s) _# y0 O
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
+ ?0 {. k5 b# o4 ?% \ ?
{
( l* E5 L0 Y% o9 @. [: W6 U$ |
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
2 \' T- l e# \, i1 N6 e
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
6 w. T: Q( o' p4 g! Z p7 @+ h( L
}else{
, _% b: R3 J) _( v
bStart = FALSE;
: Q+ {; i* ]3 s! g' H
m_pItemElem = NULL;
) w1 _0 o/ U9 u3 U
}
& a5 l+ c; X) C. J S9 E
}
& O/ [, X6 @! |, S' u
return TRUE;
. D8 ^+ R8 I N- P' e2 [
}
. M2 ?, K+ s6 }, A. |
6 O! Q; H) L3 @
登录视频废话:
0 d& r" S' y2 `3 O2 G7 K1 S
尾翼:
# {. E \. r# w0 ` a' e- C/ X) D! [
7 ]; p8 ~% ]/ Y4 W; k, r
代码:
8 q$ B1 K# S* c B9 C" ?; h
+ h9 I6 G' `( _8 }% \) q% g
void CWorld::SetLight( BOOL bLight )
1 ^6 s9 H3 m8 ^& D1 M( P
durch
5 j4 D5 {1 {8 t* u6 T
Code:
, J5 U4 V- {8 s6 l' z
void CWorld::SetLight( BOOL bLight )
6 A' ?7 G5 o" i0 d
{
1 |& q4 y( P5 W! }& {8 r
//ACE("SetLight %d \n", bLight);
- [0 {# _, L8 _; r! y3 j. }
. J& ~0 G. I$ ^; o
#ifndef __WORLDSERVER
4 {: \9 @8 X6 u8 O# n' h
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
0 q6 u5 g# r2 P3 B6 F
CLight* pLight = NULL;
" N' p6 o: P2 x' ` L1 @+ G
& i! o. q7 S( O8 Z. W* `
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
4 t; ~: m. k* h; B2 d! ^( D
* Z; s( _) u8 d- M; V+ E
pLight = GetLight( "direction" );
9 r5 _, B# ~) z
O6 A% l2 w$ }6 q5 O. ~
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 n. a/ N' i2 W7 h( C d
if( g_pPlayer ){
) l+ N t; |+ W [$ u4 P. Z: |
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
2 U& T% e9 ~ _$ ?
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
# o u9 Z' U, k$ E$ {2 m& ^
{
, v/ I) |3 A& ?# k. M/ b
if( pLight )
; v! |$ b: K/ p y# ^% G E+ g6 ~
{
$ `: X( `( O/ W- C4 V( S; B4 ?
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
6 B1 f* r8 t/ T
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
/ y+ F$ H& J6 J8 B
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
1 R- a) B* B) J3 C$ K% Q
5 U. W; L: I# n" n
pLight->Specular.r = 2.0f;
' I, ^# D: v: O' F
pLight->Specular.g = 2.0f;
6 z z2 u4 c1 y9 S, z
pLight->Specular.b = 2.0f;
! L0 E m: I& M& l
0 z- l1 _5 I+ I6 F7 ?) ~+ g& P
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
* d3 S. y- \6 | {- X3 N( z. H
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
) L: P4 t! Z5 A
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
1 `6 q4 Q9 z% D& K& u8 z4 t
+ Y) Q) U1 W0 u8 f
HookUpdateLight( pLight );
9 P* B& @5 x# g" p6 ]' N! ?
8 D& K% ^# \+ K- @
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 r) t% N4 c/ t5 {6 e2 I' M# I
; u$ \; e* z+ g) r* |' p
pLight->Diffuse.r *= 1.2f;
) m" b) S2 b5 V* a4 R- Z
pLight->Diffuse.g *= 1.2f;
7 G {7 Q' I* e0 R: k" t$ ?
pLight->Diffuse.b *= 1.2f;
( r; J8 q: {- @& n, ^; U7 |9 B
# B5 N' Z8 g# v
pLight->Ambient.r *= 0.8f;
: p1 P! h8 s6 V) d
pLight->Ambient.g *= 0.8f;
: c: [7 v" a" J2 f( ?9 N# V
pLight->Ambient.b *= 0.8f;
$ @; V3 R3 i; F
) {7 {) V; z% T: ^
memcpy( &m_light, pLight, sizeof( m_light ) );
6 I6 G6 H% L, d: q6 N
: N( n- K$ ~4 n- N* q
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ Y: s( ?' R5 _ [* ^/ k
D3DXVec3Normalize(&(vecSun),&(vecSun));
' t1 H* s; ~1 H: G; }. {
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
h, B4 s* T8 e: N/ ^4 n
pLight->Appear( m_pd3dDevice, TRUE );
/ z% z# K$ Z0 k; u
) q2 v1 f2 p6 C4 m2 s" L
DWORD dwR, dwG, dwB;
- o& V" c+ Q: M$ M
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 K8 V7 d9 I# W. f1 X+ G7 ?* [$ N
dwG = (DWORD)( pLight->Ambient.g * 255 );
2 j! V7 C/ {- p5 d+ j2 K8 K _
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ G1 K3 O( t" `8 V2 R. f
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
E5 p3 b& k! I3 F
}
0 B" B- B3 t/ N9 V; u: ?% F
}
3 l* X' d8 C* {2 Y& j$ v
}
/ ^8 S$ j% @6 k% R' c
else
) W) D9 F' C/ p" [) X' A B; {
#endif
" z9 M- E5 o$ O; |! A' d
5 H+ l# \+ k6 ]. r
if( m_bIsIndoor )
! s. i9 X0 R9 X! B. o
{
) Z: a. l3 ~# g- I6 d5 o- B3 J
if( pLight )
/ r8 u, ^+ |" v4 g+ O2 \# {
{
1 }/ f b; g$ e8 N/ X% ~5 B7 e1 ]
// à??μ oˉè*
0 B/ K) i. c5 E4 n; i7 O; n& V: B; `
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
: [/ E$ K' k& h! W
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
8 P( _) ?- A5 S; {% ?# R/ D
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
& C' F& X$ T" y( N% O
' } u$ q3 _6 }
// oˉè* ??à?
# A$ O# }& l9 B% Z4 ]
pLight->Specular.r = 1.0f;
6 K+ ~ ^6 ^1 p. S* ]
pLight->Specular.g = 1.0f;
2 @0 m# E) V0 I: K: Y
pLight->Specular.b = 1.0f;
+ B9 y& I7 x: F& \' o( \
// àü?? oˉè*
$ _# M7 {5 F% M1 k
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
3 u! Y" ?& C6 b
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
) @; a, c2 a; Y |) c) g8 z
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
# \8 [) |$ m \# T/ U+ @
( q% }. y/ o1 D2 j, X, ~6 d
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
& @) @: w I- V0 k
{
/ ?0 T6 N9 a! C9 `+ O
pLight->Diffuse.r *= 0.6f;
4 Q* U% w% U7 D7 v y) p" {9 S
pLight->Diffuse.g *= 0.6f;
: @0 a/ m( B9 w5 N+ w7 N3 ]1 ~
pLight->Diffuse.b *= 0.6f;
s7 y' j: P& m& H
pLight->Ambient.r *= 0.7f;
- j( H0 Z) Z8 A0 ^4 ?6 w! M& X
pLight->Ambient.g *= 0.7f;
K8 |( j# \# f0 G- l& f
pLight->Ambient.b *= 0.7f;
1 n% M- ?9 G5 j ?
}
0 l. y& S2 O0 D# i, P' y% @
' z& ?( [% A9 s. x) B* O, Q3 _
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 R: \5 [2 S H3 X" a! y
if( g_pPlayer )
. C2 v0 x1 G9 i: S8 W4 ?
HookUpdateLight( pLight );
4 \, x% M& a0 L! z% o$ s( s
#endif
% y8 u1 h7 c8 B; p! k
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 A" u) H4 ~, F' ]
" T! s8 z/ ~6 Q& F' }
pLight->Diffuse.r += 0.1f;
6 z: |" |& H' m
pLight->Diffuse.g += 0.1f;
# n$ _8 d' m2 l
pLight->Diffuse.b += 0.1f;
Z4 [5 V# ?8 s+ `
// oˉè* ??à?
2 s+ O# g; i& U0 a% \
pLight->Specular.r = 2.0f;
3 ?1 A6 Z8 `$ g9 {* \
pLight->Specular.g = 2.0f;
- k+ e( R4 O6 ]4 q' @
pLight->Specular.b = 2.0f;
7 d0 M1 Q, F9 X# R9 C- I! `
// á?oˉ
1 o. P6 j7 q5 V/ P8 _
pLight->Ambient.r *= 0.9f;
7 N" ^ L7 M) @1 L! O$ O! f
pLight->Ambient.g *= 0.9f;
. |5 o0 P6 }5 K% W. X' v7 m2 f% P
pLight->Ambient.b *= 0.9f;
: E( _. g3 m+ _- `4 R2 \- P! O# G
5 {/ p0 x7 @( ~& o. W
memcpy( &m_light, pLight, sizeof( m_light ) );
+ R% z9 ^. z' x0 R# ^* z# P
) [ h. i& {+ W4 H; c! {% N* d
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
$ R1 O! y& o# X; ?
pLight->Appear( m_pd3dDevice, TRUE );
2 J/ l3 {" R# e3 B! t/ P; f
+ E/ s1 c! h" M
DWORD dwR, dwG, dwB;
, e3 i, W" ~) S6 i p
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 K. g, J9 m/ }
dwG = (DWORD)( pLight->Ambient.g * 255 );
H5 c6 t* u3 j; U; S: r& E
dwB = (DWORD)( pLight->Ambient.b * 255 );
( s& K3 h" V" u l* @
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
& z Y) X! M# n% \( M
}
2 s! @; T7 W) R
}
% z# K( H) y7 v2 S3 I* X% H3 z& M! `
else
$ N' ^0 r% L0 M9 e& P0 v
{
0 L3 E, c+ ` ]' r! k
if( pLight )
- [7 r( S+ J) b! ^$ s( f
{
9 ^( V" M' @1 {+ K' G
Q# ^ [4 p& X% }
int nHour = 8, nMin = 0;
J" q% ~1 \0 C1 N6 F4 [/ F* v
#ifdef __CLIENT
$ r I5 t) D2 s% I
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
l7 b/ l- G5 H
nHour = g_GameTimer.m_nHour;
1 e1 o3 t9 k$ A
nMin = g_GameTimer.m_nMin ;
+ ]: a( O4 S* Y& f4 D
#else
& _- w+ a. N6 c* i
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
K h( N3 y8 ?3 e
if( m_nLightType == 1 )
( P l' [9 Z7 \4 L
nHour = m_nLightHour;
5 Y% d7 @# z( |; x7 t! ]5 K
#endif
7 V+ {2 L1 e. h# S) Z d
nHour--;
# |- R; Z1 E. D5 d
if( nHour < 0 ) nHour = 0;
! v6 W. P9 @4 ]) m$ {
if( nHour > 23 ) nHour = 23;
9 k9 \4 Q) T7 B- {( F
: x, Y& R6 n- z5 ` F1 T- `; J2 {0 b' y
//if( m_bFixedHour )
" S6 z0 [, _, j$ A' G
// nHour = m_nFixedHour, nMin = 0;
) x' Z* v; |. @2 L" d4 v
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
# ~8 m: t }0 C' s9 W6 H
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
$ S! V! ~( G" B( l
, R% M$ i' A7 {; R# T9 M# m5 z- [+ [
//m_lightColor = lightColorPrv;
% y; G& a# |5 q
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
0 G& D$ e9 \% d8 X$ d2 |9 L( b
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
5 `) q6 _3 g" k9 L5 K& B& d
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
$ y- }$ c+ k; N$ N
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
& P$ R% S: ~. K6 r( [9 B: g" s4 |
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
% V* l8 R& C! g/ m
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
+ n% G/ N7 C, N+ \, L* m
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
6 a, d8 L G' u$ M1 {
" c1 k* u% a( u! T
// à??μ oˉè*
" z1 ?5 h3 i) X% u9 ?
pLight->Diffuse.r = lightColorPrv.r1;
% R. @" F. l% c4 {
pLight->Diffuse.g = lightColorPrv.g1;
, b0 |; S- W+ w/ ~" n' w1 d
pLight->Diffuse.b = lightColorPrv.b1;
0 }. \! T/ h* P/ S* Z8 Y# G
// oˉè* ??à?
* G' J0 H) ]. S, N* Z( f" c1 G0 M$ F4 W
pLight->Specular.r = 1.0f;
1 d1 M9 j9 m3 }: @. j+ H* B
pLight->Specular.g = 1.0f;
B9 w2 p; \8 ^* B6 o
pLight->Specular.b = 1.0f;
|9 z" B3 T' O; |* K) P
// àü?? oˉè*
8 Q: g0 \' n( j% C
pLight->Ambient.r = lightColorPrv.r2;
9 A1 y- ~/ Z4 N$ q, ^0 E
pLight->Ambient.g = lightColorPrv.g2;
6 f- n# v0 M x5 c; g
pLight->Ambient.b = lightColorPrv.b2;
- b, m* e& q# U6 o: w
4 q& P9 H+ g. d' m' T6 |; o6 @
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
8 n- k) q+ a$ c' n1 x9 }
{
" }. t$ F! K1 g0 s1 }
pLight->Diffuse.r *= 0.6f;
, V9 M: d) ~' r! @
pLight->Diffuse.g *= 0.6f;
- N! n0 m3 a3 e- v( s7 a0 M& o( y
pLight->Diffuse.b *= 0.6f;
. m* P1 o5 @" R- D6 A0 h- s
pLight->Ambient.r *= 0.7f;
. x4 O! h6 z i; p; B/ Q- @( _
pLight->Ambient.g *= 0.7f;
$ C8 x! j% j7 V! j
pLight->Ambient.b *= 0.7f;
+ b# G" m6 x7 l' l" J
}
' j" f* q: R( K4 R" ?" P& V/ T
6 l5 g& `( A& |, C' U1 o
#if __VER >= 15 // __BS_CHANGING_ENVIR
) M& V0 O$ `5 E l: Z* q
if( g_pPlayer )
& n `9 g s8 K; V% f
HookUpdateLight( pLight );
6 a2 @ L5 l2 x o8 o
#endif
5 R. G# C4 ^+ _9 V. Q8 K
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ U% x( a: t! G' u
" W( m6 }# g1 w# @6 |
#ifdef __YENV
# O0 @; g! I: e2 v3 M. ~3 O) @
pLight->Diffuse.r *= 1.1f;
3 P/ {+ o& g% p7 [: L# ~
pLight->Diffuse.g *= 1.1f;
( F/ y* P+ B, H m0 b
pLight->Diffuse.b *= 1.1f;
7 E- S% @; M- z# c d
// oˉè* ??à?
% V* K' Z1 P# B6 w7 e
pLight->Specular.r = 2.0f;
& i8 ~/ e1 o# n7 `' B# s
pLight->Specular.g = 2.0f;
5 ^+ `0 ~& _5 P- o
pLight->Specular.b = 2.0f;
% e! _6 U" B, I! s7 z
// á?oˉ
0 j7 U: F0 U7 J: v0 @ ?
pLight->Ambient.r *= 1.0f;
S/ f% n' H0 D) t
pLight->Ambient.g *= 1.0f;
5 @; ~+ J, J3 q% _$ h1 `, ]
pLight->Ambient.b *= 1.0f;
# r7 `, {* U3 Z* ^$ ~7 w
#else //__YENV
0 e9 |& d5 t; P9 r
pLight->Diffuse.r *= 1.1f;
5 @. V" C! q4 ]
pLight->Diffuse.g *= 1.1f;
/ G: D5 L; e+ h$ e5 [6 A. z6 i
pLight->Diffuse.b *= 1.1f;
- I5 d, z* l* G4 z
// oˉè* ??à?
; W0 D1 x* h8 d' t& m$ M1 L" c
pLight->Specular.r = 2.0f;
; j" W; O: |8 ^8 i% `# n" D2 {0 h
pLight->Specular.g = 2.0f;
: w4 u+ {. q. U3 V
pLight->Specular.b = 2.0f;
1 P; P3 F8 V6 g' B8 j' H: _
// á?oˉ
8 j3 D' q( W6 r' g2 H$ j
pLight->Ambient.r *= 0.9f;
% _" J2 g1 {! O2 x9 V+ f t: f5 V" U# t
pLight->Ambient.g *= 0.9f;
8 w, q: B) k. ?" `% @& }
pLight->Ambient.b *= 0.9f;
4 l6 z2 C! V5 P; X0 L0 s$ E1 r9 B( N
#endif //__YENV
3 a; g, {' T2 K2 @7 E& m
7 M, f& [ O7 D5 s0 [# W
memcpy( &m_light, pLight, sizeof( m_light ) );
- i7 D8 E# r6 f; s h
% d% O8 S$ J, _) a% z
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
A% z4 Q% {7 f8 t7 I
D3DXMATRIX matTemp;
( h- `1 K' f8 P; Z5 X7 x
static const float CONS_VAL = 3.1415926f / 180.f;
5 j1 g0 l" b* g( f8 l
1 f6 j1 i% G# |
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
% [4 `9 z5 M8 _% C' z
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
7 i$ C1 O; |$ v% ?( |
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
, S( |6 D( ^* }+ _7 X- S
pLight->Appear( m_pd3dDevice, TRUE );
7 d+ E) i$ Y6 n* n
$ [) {" M5 A% _6 M# F
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
, f+ Q9 O+ m% I/ ^$ ?+ u
// D3DXVec3Normalize(&(vecSun),&(vecSun));
+ V$ C9 R, d1 B0 r" M
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ F" o6 T! V/ s+ h
! X, ^2 x0 e. }/ g9 F1 T; i! j
DWORD dwR, dwG, dwB;
& G# M! \7 {$ J( L& t. {
dwR = (DWORD)( pLight->Ambient.r * 255 );
* }0 Y- @/ B: i: O' k1 S9 @1 p9 ?
dwG = (DWORD)( pLight->Ambient.g * 255 );
) t! N* e0 k, l! b' f/ M/ z
dwB = (DWORD)( pLight->Ambient.b * 255 );
6 F* r4 g& w' j i
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 z+ D5 z4 l. r e8 O3 U
}
: ]- u: V' k0 @3 Y# t- ~
}
8 @' z6 z! F' ^' N- O: l4 L7 ]
) Z1 k9 Z7 z( p! ?
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
. f% g3 R) r9 `8 y
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) );
3 D( i- g4 h8 d. J. C) ~
::SetLight( bLight );
* U- r) _0 J# ]
5 H x2 O! ~5 M0 \- f
// ±ao? ?D?í???ó á¤à?
6 M7 T- S% Z+ {5 ~0 n. n- ]
m_pd3dDevice->SetMaterial( &m_baseMaterial );
5 E# s! |! b/ T1 d e
! b: x1 o3 V: P! D% ?
#endif // not WORLDSERVER
$ [6 I+ N7 T8 O
}
W4 a: w& Z7 e, x
并更换
! s* k/ {% A% H% n: {6 X
Code:
4 T0 S6 t0 z5 R% K& d8 `; U1 e9 `
__FLYFF_INITPAGE_EXT
7 F2 X7 V9 J* {9 Q5 ?0 J
定义
: V. E# c$ n4 I) N7 r
1 {3 n# Y8 O, M2 X' d% X) q
' X, X" ^# m1 @' _& e
5 A, _9 o' E9 e/ |) f
! N( ]$ g4 p) |9 b& R
现在终于删除我的狗屁加速...
/ o+ e, D$ ?/ h8 |5 I Z
5 M4 Z# H% L I# \; \
" p- f3 E* S, b, t1 T) U% c
8 W: H2 h5 _# e: w# Y0 c3 z
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2