飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
0 h8 m( d/ X, j' r2 q3 |$ j ]
尾翼:
* H+ D. \ ^ @, j4 v% ?1 Q
' j; d" c4 _. }' p( C
代码:
0 A; A6 c/ V- ~/ I; u3 z: B' ~
CWndAutoFood::CWndAutoFood()
# X2 A/ S9 \1 p5 M% W) S
{
- l( f$ m( _( A: A5 }- x9 u
m_pItemElem = NULL;
- x) C* {! i% z
m_pTexture = NULL;
1 D) H5 @% U; V" x
bStart = FALSE;
: |4 v! @, r0 R: k8 q# M4 W" Z* x
}
- s2 k5 U- s, }: W7 }
' n- | r" o9 {$ _% u8 {
CWndAutoFood::~CWndAutoFood()
4 X- ~2 q8 l5 g/ e, G5 `- x
{
2 E) h) g& y3 k4 `8 U
AfxMessageBox( "AutoFood ist gestorben
" );
/ k: _! c1 c- k7 G& f- r
}
" N% n( s. U- o
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
: L$ ^% c, u! E7 ^
{
' Z+ Z+ q9 y/ x b
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
" @' m' R- w/ X |8 C8 h
}
8 E* S- G [, C$ T7 m ?
* a `7 s9 ?+ I
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
9 v# e$ ]2 O& r/ m) L4 m
{
& B. Y/ c7 I( U4 E# w, |. E/ q5 n @
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
2 D) ~$ n. Q. O7 z/ m3 o% v
CRect rect = pWndCtrl->rect;
; k5 J7 ?. C/ \
if( rect && rect.PtInRect( point ) )
( o& q4 R2 @# L; p) v+ E1 e" v
{
' w& @' Z/ W, N6 f( A( B3 S$ W
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
/ D- a4 k H2 Q Q
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
4 W. B T: S! f. Q
{
3 y6 j. [0 I; h/ N- R$ z
if( m_pItemElem )
\: u& Z7 G7 }: W( |
{
& m5 g. r3 ?- J% W
m_pItemElem = NULL;
, V2 g. q9 g0 b Z8 W
}
7 v: t& _# G) [$ V! P b$ S
m_pItemElem = pItemElem;
6 h4 A, ~& W; i" g) C. X
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
4 T3 V x* |) {" B# V. ~
}else{
2 ?4 N; {4 T6 ~( Y
SetForbid( TRUE );
- J. s. J" K* X* ]
}
9 h( `" v( [9 s) E7 _
}else{
8 Y6 W# K; ]( P9 x% Z" g* o
SetForbid( TRUE );
# M* C Y; L) K' Q, N# d
}
7 T+ e2 P! D4 ]8 Y, U" N9 \) X: Z
return TRUE;
) o9 w4 d2 A" v4 g% u
}
' {. r, n1 _0 {$ D7 v6 a
- [0 X0 ^1 d A" G; L" t: s$ c
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
# \. y2 X4 h" M% G$ j2 H- `
{
# `, v! \6 i" A4 _5 E* O2 g! \( A7 _
switch( nID )
* u2 ~' m% E& J! y5 @0 I
{
: s V+ b5 l1 D. J$ L& L* I# b& q& |
case WIDC_BUTTON3:
( r- |. {( R, V3 F2 f
{
, C$ v# p5 f" u- A
bStart = TRUE;
; `8 r0 O) F5 v% T7 T& m% e
break;
; O& F* J% z6 t5 w- }0 `* U4 O1 _
}
, t0 C0 O) r+ A4 b3 M
case WIDC_BUTTON4:
7 a2 p+ ~- R. C* \
{
0 _, N2 Z4 E, S( D# F2 ^
bStart = FALSE;
- Y/ F' z7 c9 B1 w+ W+ B ?
break;
2 S0 U( V7 p8 x' c' J% v
}
7 `2 f3 Z2 c/ V% L0 u% D- Y6 N
}
2 Q% b+ F) Q2 C3 |7 W
return CWndNeuz::OnChildNotify( message, nID, pLResult );
8 Y' [( f5 Y, V% n% W4 v
}
, @( z4 n( }( h& U9 r: J8 B/ H
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
' {, P( m5 a9 t$ N* S
{
v ^1 d$ e* [2 G- q* L8 u5 }
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
3 g& w0 m5 f; z4 U+ j6 k) y
if( bStart || !m_pItemElem )
4 v: ?2 f% _* `
{
" L6 K) L1 S) V/ `
pBtn->EnableWindow( FALSE );
; y( u! j1 G; j! j
}else
' C$ Q; R6 J( p7 H
pBtn->EnableWindow( TRUE );
3 T. p/ B* D' p; V+ U( m# v
if( m_pTexture )
9 l4 r2 O. D+ I8 Z7 K4 V3 t# T* o
{
$ z% g8 v; p5 r( C8 l& n" f' ]
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
: q' d5 M' H7 @( b; I% y6 V0 l
if( wndCtrl && wndCtrl->rect )
/ ^" [: y* Y1 ~8 y. q8 z2 v
{
5 T* X+ | [* C3 R p O' K+ o
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
/ ]- G! G8 v/ P
}
- Z! p7 G# j4 o; I2 ]
}
# m5 T) E+ \ R2 \
}
) j6 \& ^! y) {$ v5 s
7 {: L, U# F: J( |' V$ f" ?/ p
BOOL CWndAutoFood:
rocess()
3 q; u9 z, d5 _( M. i5 P
{
: J7 p, ? s; {8 b1 C# h1 l
if( bStart )
4 O/ W, [/ s. v- h3 [% S
{
, M/ O9 r2 H8 U$ L8 L. ]0 F' k
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
* s2 K/ f! u+ W; }
{
P5 d/ P3 e$ n( w! Q; T
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
/ ?" E. p5 E, X# ~: a& C* r
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
' c! `) y" K" w; H8 z& d
}else{
% ^4 J' g- Y& ]/ f
bStart = FALSE;
) B; `- }3 m- ]9 s5 }5 ]" N1 Q0 B u
m_pItemElem = NULL;
. K% `! `7 y# @% M" [0 Z) o3 D
}
0 {* t6 c/ {& W) T* C
}
* H6 P/ ]! b: G' A' v1 Q
return TRUE;
+ D v6 r$ n% j. H# D4 p
}
4 i- f% z" C# F- w" U5 q4 f9 L
$ f# T& w3 y0 ^6 p+ R" i' S4 V
登录视频废话:
6 y9 F$ v3 q) p
尾翼:
* F" l! x, z6 R: l
! X* ~! g$ `4 {+ w2 p8 J$ k
代码:
4 X! m4 m0 a. C7 P( g1 m
- v# O/ w; d" W% [! Z
void CWorld::SetLight( BOOL bLight )
1 E/ T' R, ?% O# y; g# m6 u B
durch
t' h1 p* {' B. C' T0 v) d! v
Code:
+ ^6 [9 X% @6 S7 } |8 p% T
void CWorld::SetLight( BOOL bLight )
( A( b5 R w+ Q# v( I: g0 J
{
% _0 A2 U; u1 s4 ^
//ACE("SetLight %d \n", bLight);
! g% k- P( u: n& w' N
3 l; d( o3 {7 s: X7 |, m
#ifndef __WORLDSERVER
( a% e9 e* u9 w! z) o) `
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
$ x; Q: I5 E" j, U& y P. G9 t
CLight* pLight = NULL;
1 u6 J# i5 [# S% u i/ P" V
2 \% f- c' e+ ]2 s
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
& J& n$ i! r4 z
9 @' M! s C. m7 H
pLight = GetLight( "direction" );
X, ?% y P& C8 s, w" O0 \
. T$ b* u E; L( r- u/ L
#if __VER >= 15 // __BS_CHANGING_ENVIR
; \+ v+ @" Z; I1 B S) K) f
if( g_pPlayer ){
4 h& o8 }/ [, p" @
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
' K# F: V6 H( }% F; e
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
8 G2 T' }) K$ X( H( O* S# Y* m! i
{
8 S% a: r( B% a2 P# p
if( pLight )
5 X4 k2 p5 ]" O6 ?& F' ~
{
: F' z8 U% l i# z" W& M9 G
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
3 q" p# e7 e8 a- A& C: z& Q
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
7 r$ D. i0 Q' d& ]' o$ R
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
+ U6 o* ?9 b3 g$ ?, T- t
- M$ _, N) n: S( ]: Q
pLight->Specular.r = 2.0f;
( ^) c. G/ P# M. N* B1 C$ b' S
pLight->Specular.g = 2.0f;
" x8 J9 J) y2 I0 J" P9 F$ R
pLight->Specular.b = 2.0f;
" k) F, |) H+ c1 z, M) B% R
7 c' t3 N0 e5 p F0 ~# ]% Z3 t
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
1 K4 [: h- j2 F
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
9 I/ E9 l& I6 D. r4 ?
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
: u" W# S' w7 g$ c. B
V8 M, u* y+ y; w5 A
HookUpdateLight( pLight );
9 d- [" b1 r' J3 ^/ a+ S1 }! Z
2 g& N) @; r! f% D3 q& t
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; H( d v2 r) a; O
4 \( t& O1 u7 M5 ?1 q0 o4 m
pLight->Diffuse.r *= 1.2f;
& ]+ k8 b* G9 C8 Z z
pLight->Diffuse.g *= 1.2f;
) s `! v$ L$ v- x
pLight->Diffuse.b *= 1.2f;
* {0 C: L5 m# ^ z; n' w. d
+ U" ]1 F* u) C9 c I3 X0 B
pLight->Ambient.r *= 0.8f;
|3 o, j8 M1 U" S1 l
pLight->Ambient.g *= 0.8f;
* g! Y% c7 `9 p! ^# @2 k8 Y9 M [
pLight->Ambient.b *= 0.8f;
; D( ]/ x% T* r' ?2 Q
0 p% q I: P- M* p2 B
memcpy( &m_light, pLight, sizeof( m_light ) );
% E+ D) D% [1 G7 T
6 ?# H8 y/ ]! G8 G3 u
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 u6 n' l3 H3 d/ N0 G4 m
D3DXVec3Normalize(&(vecSun),&(vecSun));
, t3 v! F' F% l5 j5 r, H
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, p d3 F; i4 W \9 n7 K
pLight->Appear( m_pd3dDevice, TRUE );
( s8 g. l+ { d% f8 ?6 C8 e
. b8 Z- E2 [" t- r0 i G* Y0 ?
DWORD dwR, dwG, dwB;
' U9 S+ g$ M& r& ?" W
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 @4 F+ x/ D4 j0 @& P
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 c. u- Z5 Y2 X, o* k8 h
dwB = (DWORD)( pLight->Ambient.b * 255 );
( M7 Z; ~, e5 P- x. } K, j) g6 A
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ K5 ?. [; G. W4 X1 z/ _" F2 n/ T
}
+ G9 _0 K" M/ |3 h9 x8 }
}
$ i0 X% t# n6 n
}
, r' A1 ~5 a0 {6 w# c
else
b v# X3 S! l! D2 ~+ v' x$ T3 u w
#endif
+ Z( A; p# h3 f5 e8 }& i! J0 R
& F4 y, \- q0 {: B# I, W) ]
if( m_bIsIndoor )
" a/ \" z+ I4 R- H& J* h
{
& ]. _! o$ J3 i
if( pLight )
3 _& `5 C% P; {7 W$ t6 G0 i8 W
{
$ Q ]- C S2 d
// à??μ oˉè*
2 j/ E y8 C5 p
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
2 ~( y$ ^/ v8 l) ~
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
" i( I" o8 w9 m* j) M2 l
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
, J; j5 U% L. l7 f: J5 r
* z4 D+ A( |4 M, O
// oˉè* ??à?
! w7 H# S T2 t( v" n" j
pLight->Specular.r = 1.0f;
/ r, B, `, [7 q7 W2 e7 Z
pLight->Specular.g = 1.0f;
: M- f+ c' }5 B A
pLight->Specular.b = 1.0f;
- i+ ]. l" B9 z* z# w* o, G
// àü?? oˉè*
7 T# D/ ?9 T0 R4 {4 R& j- r& k
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
d. n! o5 y$ f1 O$ b7 v# b7 F
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
2 D3 A8 I2 g* ~7 g
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
0 {# ~% H4 T- n' j0 k/ ^* l
! Y' z% X" C. \5 B2 A0 V
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
P: W- T2 ?& Q
{
( o3 e' I) R+ [' x, z% {% b
pLight->Diffuse.r *= 0.6f;
7 d( P' [( @4 ] F
pLight->Diffuse.g *= 0.6f;
1 |- C1 c/ Y) U/ J* X" C( R
pLight->Diffuse.b *= 0.6f;
8 v5 G' S0 V, V( P- `1 u
pLight->Ambient.r *= 0.7f;
- C q& U+ R# K j+ I; B# q0 y
pLight->Ambient.g *= 0.7f;
w+ j( P" W# A0 J, {
pLight->Ambient.b *= 0.7f;
9 ~0 w( u5 C( V9 |. g, X
}
3 ?% Q2 k, _+ ]. x& S
/ P7 e9 a c" Q5 U( g4 | O
#if __VER >= 15 // __BS_CHANGING_ENVIR
; I1 T3 T. t: h9 x8 i. r7 |
if( g_pPlayer )
' J5 e8 d. N) R
HookUpdateLight( pLight );
( C, d2 M, \: ?. u/ m9 k
#endif
$ R+ i/ ~/ z3 q
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' H* A$ U/ `% c `7 d! i8 c
/ O+ ]+ l3 B. W! l3 n& ]1 f
pLight->Diffuse.r += 0.1f;
- N& G7 R, D4 q5 a; [/ C6 b' B$ J
pLight->Diffuse.g += 0.1f;
- B2 i+ ?! z7 Y/ W
pLight->Diffuse.b += 0.1f;
: |0 R4 ~1 Z6 o, a2 B" I
// oˉè* ??à?
) O5 y/ v/ K8 O$ @' T$ h5 l
pLight->Specular.r = 2.0f;
`! [6 R0 D9 f" p _/ B
pLight->Specular.g = 2.0f;
& u$ Y! d- L8 r. S
pLight->Specular.b = 2.0f;
4 i% N$ |! |( @ h$ y7 X" Q& S
// á?oˉ
7 @- E4 H0 F3 b5 t6 v
pLight->Ambient.r *= 0.9f;
* V" Z. ~' |9 d2 E
pLight->Ambient.g *= 0.9f;
( a2 r3 @3 Y+ X4 x c, K9 D# M3 R
pLight->Ambient.b *= 0.9f;
( l W. a$ Y5 K
; b. A" ^) w7 C+ j7 F
memcpy( &m_light, pLight, sizeof( m_light ) );
! P% V( E9 L' g* T% \8 x
* z- q7 ~3 j/ u8 y% t3 [* V! d$ w
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
& T. c/ P2 V' s9 I( _
pLight->Appear( m_pd3dDevice, TRUE );
. P, k! j2 l) E! }$ P/ }
: I: [& H4 P5 ~9 U
DWORD dwR, dwG, dwB;
1 k# e6 E- D4 V- n* |. z, l' E
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 u; g Y5 |) j0 Z7 h
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 b; x4 ~6 X0 i8 y& t" p$ V
dwB = (DWORD)( pLight->Ambient.b * 255 );
; U O6 B# @0 {; r( i
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 L4 f, t3 l" g, f. b6 y% e( J$ A3 G
}
* Y4 c, l: {; q0 T0 Z: W
}
, j3 x4 y- r8 _# ~' ^
else
& @* x6 _: i6 a$ n Y
{
* s" k. D' f$ J
if( pLight )
% \) h- l. d6 w) Y0 C$ H- U8 n
{
% [" ?1 F; L4 I( T
* q% Q* k& O8 s$ Z9 b1 I) l8 u
int nHour = 8, nMin = 0;
0 n. R b2 Q) F# R/ ~
#ifdef __CLIENT
7 N' I) d0 _" V
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
% v7 r1 _6 C) J7 @ B
nHour = g_GameTimer.m_nHour;
4 W1 k8 ^) D1 z; F ^' `) |5 I# [
nMin = g_GameTimer.m_nMin ;
6 j0 \# m' l; i( K) A
#else
% Z: z* k- d, ~ j( h
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
4 h+ c% w2 S4 P9 ~. z0 O( U [
if( m_nLightType == 1 )
; B* w" F$ j2 W+ P; U
nHour = m_nLightHour;
+ T% L* w0 l. ]# @. [
#endif
) ]+ t; _( k6 P& |
nHour--;
: l* K& R3 H- y& `4 ^6 m- y
if( nHour < 0 ) nHour = 0;
+ o; Y' D6 s" h; e
if( nHour > 23 ) nHour = 23;
. e' U' [) ?, b$ f, o8 f
) l. i. A0 }+ \' t) |+ y3 U
//if( m_bFixedHour )
* W/ e. p5 d, L- i2 w% ~/ {. H( D
// nHour = m_nFixedHour, nMin = 0;
, D- K" @- g% B+ k3 J
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
. B& f9 [) q/ n3 x N2 b! `* n
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
0 F0 Z; c: t6 a* W9 G* F2 a$ o7 r _/ M
& N7 e# {( Y, m0 [2 [2 A
//m_lightColor = lightColorPrv;
\: h- N6 _. X3 W9 S/ `' t$ N& C
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
6 R1 G, K f; q
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
; D$ B$ j+ W' r8 ~
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
8 D) }. q+ R- V, o" B j) X. Z
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
1 b8 @' Y5 ^9 l, q
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
. ] D, n" C1 C/ c: t& w3 e! l
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
+ F) \" A# g4 |/ G0 o
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
# }1 @, t6 ~' k
7 K7 f7 W+ A* h8 i" Q( J
// à??μ oˉè*
* ?' P0 J8 o5 Q. A2 @
pLight->Diffuse.r = lightColorPrv.r1;
4 E: G. @% |4 {7 ^" ]8 v" ] Y
pLight->Diffuse.g = lightColorPrv.g1;
, N1 t U% R2 @6 K
pLight->Diffuse.b = lightColorPrv.b1;
+ x1 O& H+ I5 P+ q, q1 x2 J8 X% o
// oˉè* ??à?
: j" I5 |$ R7 `( Z: v) ^& h& n
pLight->Specular.r = 1.0f;
6 \2 s; ]- O& A; n3 u
pLight->Specular.g = 1.0f;
: S1 }3 x8 E' D0 U
pLight->Specular.b = 1.0f;
% O- c+ T* h0 b3 N# v
// àü?? oˉè*
$ N( W# Q, @4 H; ~; d4 F
pLight->Ambient.r = lightColorPrv.r2;
+ p6 p! P: e" B: c( m
pLight->Ambient.g = lightColorPrv.g2;
4 g* \2 @6 o/ q) g$ T3 v
pLight->Ambient.b = lightColorPrv.b2;
4 w% |- M( L3 E# y7 a
% x% W* w5 k. m
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
1 e. [6 \' J9 k5 L: R" f8 U
{
g5 }4 E; O4 `8 H0 u
pLight->Diffuse.r *= 0.6f;
$ r9 \, {- q# Q
pLight->Diffuse.g *= 0.6f;
& @& t! T3 W& {8 Q
pLight->Diffuse.b *= 0.6f;
, v6 c V; Y: d
pLight->Ambient.r *= 0.7f;
. q' L2 {! X9 b, q" o0 S
pLight->Ambient.g *= 0.7f;
0 n8 H6 m. P" w6 u6 ?
pLight->Ambient.b *= 0.7f;
% q' l7 j! k0 w8 j8 a- i$ Y
}
% W& K& C1 A* _. U( J& J# h* [9 \
$ D0 A& a; P$ |
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 Z7 }% @9 t$ Q I
if( g_pPlayer )
- C* R; t, f* W# \! i/ b% n8 q$ g
HookUpdateLight( pLight );
+ v+ D. L: { Y* D6 v4 E
#endif
& U$ g( @3 P+ w/ d4 s+ R3 {9 K
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& t% j; ?3 H* {
9 A+ y$ x4 b& j7 y, j* n+ W
#ifdef __YENV
3 Y+ z1 i: s! t/ w3 c
pLight->Diffuse.r *= 1.1f;
* v, i+ x& {+ z; [ D( Q+ ?
pLight->Diffuse.g *= 1.1f;
8 M5 J; }/ L h q) V& ~3 ~
pLight->Diffuse.b *= 1.1f;
3 _. V2 i- u% d( c# x
// oˉè* ??à?
; ?) O4 t S# n2 ?$ m
pLight->Specular.r = 2.0f;
/ r. r! n" G# h4 q+ ~0 E5 n
pLight->Specular.g = 2.0f;
0 P5 f# p4 B* C+ z
pLight->Specular.b = 2.0f;
, ^! I$ Y7 ~6 E) }+ M7 D0 C4 d' t" [
// á?oˉ
2 Y; [ t& o. P9 l5 m& P( s9 r, [
pLight->Ambient.r *= 1.0f;
! f3 n' s* a# \, {) D1 y6 D3 H
pLight->Ambient.g *= 1.0f;
, ]/ w/ S4 Q( C( {
pLight->Ambient.b *= 1.0f;
T, j5 j1 d- w! s8 \$ H+ a/ ?( d
#else //__YENV
, ~6 R5 U" B4 U$ K* V4 J' ^
pLight->Diffuse.r *= 1.1f;
2 l! r0 M' u. ~) L/ D
pLight->Diffuse.g *= 1.1f;
9 I. \! R' C; ?# R* [
pLight->Diffuse.b *= 1.1f;
; H: v- A: {/ E* m3 _7 T# Q1 Y
// oˉè* ??à?
3 E" D" I3 s5 F5 I( e/ q# p
pLight->Specular.r = 2.0f;
3 M' E4 S2 ]7 @2 v
pLight->Specular.g = 2.0f;
, c' A$ Y6 o, u2 H4 V
pLight->Specular.b = 2.0f;
( y' x- h8 E6 ~2 \
// á?oˉ
/ D' x5 W9 o6 I# X2 O' q9 [5 o, Z
pLight->Ambient.r *= 0.9f;
# }+ ]9 d) o3 D9 _) x$ U7 P, L
pLight->Ambient.g *= 0.9f;
$ v7 m( y. \0 K1 J
pLight->Ambient.b *= 0.9f;
: ?2 \/ N6 R! {# L0 k
#endif //__YENV
0 ^3 D6 f- D% P+ m( Y: G# p+ h
2 f0 J) t8 P+ r: O" x2 c
memcpy( &m_light, pLight, sizeof( m_light ) );
/ [ C, v( B5 ]. Z R% w! J; B
" T5 \, a# @ v, a0 w
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
. c2 p$ S% K% b3 L2 |3 I
D3DXMATRIX matTemp;
! m0 O9 l' b3 H. _0 R" k; Z
static const float CONS_VAL = 3.1415926f / 180.f;
/ B) x# S" C- ?9 X" `7 p
: m# T) U* y o7 Q, t' W4 Y
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
' p4 [- q) r0 Y- J$ y
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
6 m# O2 y/ U% I$ G3 e' t
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
- p9 Y# L/ T- R" z/ Y/ z& B
pLight->Appear( m_pd3dDevice, TRUE );
/ T8 H) j5 U# t3 ~0 U% X- u
3 ^" g; F& M" p
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 L6 I0 j4 N2 ]2 y- L6 E t
// D3DXVec3Normalize(&(vecSun),&(vecSun));
5 b. u: D; g$ A( h' I f Q9 @3 ^- f
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) ^0 K% X& @0 U) I* N
- J; W& G! J0 n+ d9 N( E* U" e
DWORD dwR, dwG, dwB;
3 X" _6 w$ }, q. F5 Y2 h2 ?4 s3 `
dwR = (DWORD)( pLight->Ambient.r * 255 );
& `, R9 J2 F0 H) U& T5 _" u
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 w; f( L4 j. [+ `: |; E' d! n
dwB = (DWORD)( pLight->Ambient.b * 255 );
: \7 Q. q; G* Q* C
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% L' x) P7 I8 P; [
}
, g3 C: `7 L3 y$ q0 O4 R, d+ h+ R
}
. }5 V4 ^0 z$ K3 p, I6 [. \
1 n- W% p2 m2 D5 Q# k
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
4 c$ j: r5 y; R( S" d% [
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) );
0 v3 ?% ?7 j/ W+ }
::SetLight( bLight );
2 B( b ?) F7 v" l; F2 l6 g
. ]/ @1 w2 v" m6 B u
// ±ao? ?D?í???ó á¤à?
* Q% G, ?4 @8 h% J* w0 j$ k: W
m_pd3dDevice->SetMaterial( &m_baseMaterial );
( r# ~; ?, j) i4 |
* n' j8 V) x, \" v
#endif // not WORLDSERVER
' F: T* Y$ t5 l" w& n$ f8 M
}
, f0 X. v5 `& g! S: }7 v4 ?1 s
并更换
$ p0 T. ^+ R# ?+ z
Code:
0 |) p0 X, @: Z! G! ?) L0 Q0 }' |! o
__FLYFF_INITPAGE_EXT
8 _( |% \6 v8 B# P
定义
+ d, n2 W; c/ w$ G
0 R( S" R+ I6 b7 j4 |
* V% O. p3 Q7 P% p4 e
; ~: h! B2 o- K! h
# q; V5 Y7 q) Z e* m8 B- _( D
现在终于删除我的狗屁加速...
7 \0 j1 R7 B# G( S% T# A) {: b
' y4 |6 k! s* Z8 C
+ l x& ]# F, G: d& M
+ G5 ?3 F3 E( { p: ~) H
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2