飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
' P' K6 c* r4 G9 K
尾翼:
+ Y# K: V' i) e1 w/ J
/ U( M4 m `* y9 m
代码:
0 S- z! a' g1 s0 E4 q, O
CWndAutoFood::CWndAutoFood()
1 u H6 j- D% t* S5 M) Q
{
7 c2 q) [9 a" `; b
m_pItemElem = NULL;
& s0 u$ j. P, r C( b y
m_pTexture = NULL;
/ z- J& O1 O3 z$ V0 ~& I
bStart = FALSE;
. | y/ o3 s: h' e/ W8 Q
}
5 ^. |# O5 k8 J) c6 P
- N* X" S# A- {8 L# i
CWndAutoFood::~CWndAutoFood()
2 v4 @' I" i6 ~2 [) ^
{
, v0 f1 r( n& {
AfxMessageBox( "AutoFood ist gestorben
" );
" U# N9 c7 V2 g, D
}
4 w% d. ?. v, g; r2 |' S' i
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
3 S) M: X; a% P0 G t$ x( t
{
% Y: J R3 s* d8 ^7 ^8 _# V
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
5 \6 e# Q8 T3 z& |3 ~
}
+ X. K! _; U0 H/ n1 x
) D0 J8 T5 F `0 V
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
$ A& H8 i6 e/ A& L
{
: y+ F* K1 H5 C) i- R+ D9 o- H3 G
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! g( _, N3 T4 r: b; H1 S
CRect rect = pWndCtrl->rect;
, E3 _, [2 v4 n+ ?7 F; z
if( rect && rect.PtInRect( point ) )
$ A i1 a: t1 E+ b
{
5 W6 D2 G7 k) _5 I
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
) i5 a; m/ e3 ? x! J. ]( i
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
- P; G3 a/ Y3 \( P& |9 V
{
) E0 K9 r4 q n/ g* ^
if( m_pItemElem )
- V ~: W2 n! `& a9 M8 o
{
3 h, a$ [9 x% E) n
m_pItemElem = NULL;
8 x; k1 k$ U3 u. z- s7 C
}
+ x& n. S* q6 g1 _) W
m_pItemElem = pItemElem;
' q) G1 j# B4 r0 V+ r1 T! r" U
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
! u. j% D5 f) b# ~: w
}else{
4 g( G* n' i8 Y
SetForbid( TRUE );
1 o8 [. e9 ^, L3 P3 {
}
& f' M$ U; Y1 h5 e
}else{
& z/ S+ b2 R X" V: x9 \' `( o! S/ R
SetForbid( TRUE );
/ m" j2 C9 n/ R! k# `+ E# Z
}
, X) P4 t' k8 V2 i( w9 F
return TRUE;
0 E* H% L; P* B
}
# G" u1 h9 {, ? y5 Y( L' b
" Y) J& ?. T& ?0 @
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
2 Z. B7 h" d1 w2 D
{
7 p+ l4 n+ |5 ~" ~: ^" z' }- K, H
switch( nID )
3 ~1 q$ a% ^# v) H) V/ q
{
5 w4 C: }' I& }/ Q/ H% |
case WIDC_BUTTON3:
8 G* Q% ]4 Y+ {! y; y( d
{
( c O# s* l# {
bStart = TRUE;
# t" k" y) z& U6 X4 N+ z1 u
break;
- Q+ ^7 |3 l/ v0 |: Z
}
* t& E/ C# H5 L( ]+ `; h' V
case WIDC_BUTTON4:
! E4 }* |* n+ ~ F) N2 P7 p
{
+ u" _ T3 l7 n9 R t5 [
bStart = FALSE;
% w G3 a5 d4 C7 l
break;
: R7 q O, T; J- x. C. S
}
. b2 g h+ Y5 M* s
}
* }0 \2 p9 r% B \$ d
return CWndNeuz::OnChildNotify( message, nID, pLResult );
# ^; g5 ]- H# ^$ v- M/ O6 r& v
}
/ j. a9 e3 I1 M" l/ C, x A
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
- j' l: L4 r# r0 c4 v$ I2 D( X
{
{5 O# @, _. |) ^3 N3 Z
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
3 j$ P0 T: X1 m/ J& e& |+ F) k. n1 l# a
if( bStart || !m_pItemElem )
5 `) q7 }! W6 z; p- g4 q
{
8 |" ^, G6 [" ?: C
pBtn->EnableWindow( FALSE );
: S. h @# S% S3 z5 `
}else
: e; a5 e1 X0 L, P$ B- X: {
pBtn->EnableWindow( TRUE );
9 K) H8 F2 s' j
if( m_pTexture )
7 \3 L% {; v8 Z/ [* S2 J
{
+ s/ q4 s; U2 f# b
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- C; Z* F2 r! s4 Z1 V% V0 d2 }
if( wndCtrl && wndCtrl->rect )
# m6 j# I8 X+ f$ _( s4 J' b% U ?
{
N& D0 J0 {, l9 Z% n! q
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
6 V3 m( |9 ?& `1 f2 I+ n* x' I
}
3 f4 S" `3 H: g
}
0 u c! |4 Z' f& ~% s
}
% k9 B7 q/ G3 _3 M, ^
& k3 W7 x" f: a& g F! h% G
BOOL CWndAutoFood:
rocess()
1 s k& ?4 c% S5 N9 {, n$ W
{
5 \, L/ ^; q) l- {4 m6 M
if( bStart )
/ y5 L4 C* n6 ]* N7 G1 M! E
{
" f W2 ?& A3 T) Q3 t
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
2 t" ^0 c$ R2 V8 r- U9 F
{
. q0 j, j2 @( w+ e* u% n
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
6 V" X" ^, z0 \4 M" }3 ]" {1 e
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
7 ~% D$ [4 {# C) B. o
}else{
- f8 ~8 @- C6 k/ k
bStart = FALSE;
! ]8 ?' x8 h' w. q( h e
m_pItemElem = NULL;
9 e# G0 o* l# ~1 {4 d
}
4 P1 F0 y+ \* C8 S: k ]
}
* l" U. D6 e& T* j$ J3 P/ s. s
return TRUE;
8 B$ S$ T2 m" d& |
}
! ~' C! j" y7 q! f, E* j
3 a5 p3 x3 H3 H0 j+ t7 V2 f$ |
登录视频废话:
) a1 Y$ o, |8 j7 p. m, a3 d* a
尾翼:
/ W0 h% N; |% l+ p5 n
0 o- q1 T+ Y( y/ |# k2 ]. o: L
代码:
. Y3 Z+ t9 H, ` g
5 q% n v2 E! p. ^
void CWorld::SetLight( BOOL bLight )
% |- l' C3 B3 W- N4 h, _
durch
7 h- Y- i$ {1 |" E+ u% V
Code:
8 c: F9 F1 }; a( |" _
void CWorld::SetLight( BOOL bLight )
, w/ b5 f" \: Q- U0 M, s
{
2 P; a' W% n4 T' e
//ACE("SetLight %d \n", bLight);
7 W- W1 u: U& J0 `$ | d+ B
+ x2 a% {6 n, A s2 I# `: y
#ifndef __WORLDSERVER
/ l2 w+ t2 Y/ A6 l# b' v
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
: ]. \9 z' ]6 u
CLight* pLight = NULL;
0 G0 ^4 b" a- l/ x8 c
0 n- w! ]% \2 |8 E" ]# ^. Y
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
9 B- V* q$ c& S( @1 n
, s* s+ q+ ]* \: u) u4 [
pLight = GetLight( "direction" );
) a* w, h; @# X8 y- W6 }
7 }, `1 Q* }' W S- w
#if __VER >= 15 // __BS_CHANGING_ENVIR
}) T: Z) q( K. D3 H5 i
if( g_pPlayer ){
; n3 c- J, V. {! |3 p/ B, r
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
- U9 }" U* U& y2 |$ v4 x @7 @
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
: Q" _. K0 @9 a1 J0 l \, {( C% W
{
8 s% s! P0 Z% [" ]3 E+ _! \; B& ^* i* n) ?
if( pLight )
3 C# ~+ a: O# _. e! w/ C
{
9 A! L' V9 u9 I! _0 G
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
4 R: x4 Y2 q- F
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
7 V+ C) o4 k6 x" K
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
8 {# I. H; r+ N- q/ p9 s8 A
5 n+ s4 j, w; i R. f
pLight->Specular.r = 2.0f;
$ G. {+ c5 Q7 E8 S
pLight->Specular.g = 2.0f;
( v" Q0 j5 P1 y% }
pLight->Specular.b = 2.0f;
; D% i" H5 U6 u; p
* s' u* r; [" u# w
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
8 x5 o7 n! u2 p7 N8 }, I# e
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
# S4 E1 U) `' r% C, U
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
1 H- N$ j, N! a$ H4 z" C
; j( G: R" K( X2 C. L3 O( p6 j- P
HookUpdateLight( pLight );
3 f: k6 b. Q, j0 | U8 A$ ?) \
& y# I; M( k7 A. M8 W& U2 L
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; ]( s5 h2 s, S" T0 Q) M2 l
, a* ]0 _) R4 S2 {% s5 y+ z' e) f
pLight->Diffuse.r *= 1.2f;
- r1 z1 o0 T! D$ T
pLight->Diffuse.g *= 1.2f;
* C) @1 t* n8 ` V$ d/ ]0 k0 D
pLight->Diffuse.b *= 1.2f;
# u$ ?: j1 a7 T4 Z8 m: }
, g9 T* [. d0 L% x
pLight->Ambient.r *= 0.8f;
% Y* t Z$ x* _, J! O2 z, [
pLight->Ambient.g *= 0.8f;
! o% s: R# a. r; U; F0 ~
pLight->Ambient.b *= 0.8f;
5 C0 q. Q7 o; W. U
$ x5 p9 I9 Z( Z) N; H3 n$ _% d6 e
memcpy( &m_light, pLight, sizeof( m_light ) );
- S" ~, F8 m2 @% k- |' Y
/ }+ N/ |7 O) N
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
( G. b& d- X. k$ i9 Z
D3DXVec3Normalize(&(vecSun),&(vecSun));
/ J& n) ]5 z) V) A% F6 w. e. i/ j
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 ~# W: ?% N- P# T; \1 u7 y
pLight->Appear( m_pd3dDevice, TRUE );
: X9 c7 o5 A, ?
8 O, @3 B, K N, h: S, H1 g" t
DWORD dwR, dwG, dwB;
+ Y- D+ I" Y1 t4 W4 V$ F
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 W% p/ P1 j- ?( x/ {
dwG = (DWORD)( pLight->Ambient.g * 255 );
l5 }3 C0 h Z+ l7 `$ P
dwB = (DWORD)( pLight->Ambient.b * 255 );
* t' i, k' x+ \& Y8 w
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 Z& l; h! c; U/ h W
}
/ O. d5 ~- N5 Z1 E/ s
}
4 Z! R" Z! F; j; x6 F9 B9 ~
}
3 y# X6 A$ ?9 y% _$ h) z6 N
else
9 P! ~* _# R! |5 \" L+ \
#endif
9 m3 \* W% n, z/ W) y$ u* T
$ E; @1 Y8 r+ t! G! J0 @8 p
if( m_bIsIndoor )
: D0 `; _+ U# i" X* l
{
; i- ~. ~3 l, X7 g) M
if( pLight )
: V+ o6 V( k& \+ E
{
; ~# m0 ]6 V4 [
// à??μ oˉè*
8 Y) c/ [+ ]( h- V
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
1 a8 i8 R3 o! t
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
: t7 \' i, Z; r; J
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
& k/ o1 |. {1 s9 M& q& L
f. G; j& c/ E) Y
// oˉè* ??à?
; Z* v7 H# M y. l. e4 o$ F
pLight->Specular.r = 1.0f;
6 E. x8 M* d1 z* m
pLight->Specular.g = 1.0f;
2 e( N$ W+ _( b8 O
pLight->Specular.b = 1.0f;
3 }* a+ p% [) o6 o4 T# ^ Y3 H
// àü?? oˉè*
5 M1 |( ~" H' Z H, H
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
% Q5 N7 a1 @7 M+ m* g* R. ], c
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
! t4 Y9 s: \5 ~5 q; I
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
- W# V6 Z0 ^! K4 X3 _
. z; S U5 G2 a- P+ y) V7 X
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' A5 s3 I9 X ?5 C+ C
{
+ u* b1 Q& F$ I( u, g
pLight->Diffuse.r *= 0.6f;
5 M! G: }: l% D g7 [6 b0 B
pLight->Diffuse.g *= 0.6f;
2 g% ^7 `8 d$ A( m9 }) u, F) {
pLight->Diffuse.b *= 0.6f;
! o# o- K) ~* h8 P
pLight->Ambient.r *= 0.7f;
/ V. ~, i9 `$ G' f1 n8 M
pLight->Ambient.g *= 0.7f;
5 y" _4 F3 M( o5 Y+ P
pLight->Ambient.b *= 0.7f;
3 _3 D+ P1 T0 e7 A/ v
}
3 v/ B6 v @/ i9 U7 }4 ~
; @7 S4 f1 a8 W3 N
#if __VER >= 15 // __BS_CHANGING_ENVIR
! A8 |# h: d' R; ~5 X* E, r# Y
if( g_pPlayer )
) c8 [) }+ K' R! ]8 T
HookUpdateLight( pLight );
' u9 p( X8 O8 K: c5 B
#endif
& G6 O' f5 k! W. }5 q- G
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* V+ {, L) t& K- h" d
" A! B8 I$ n. x! j' F
pLight->Diffuse.r += 0.1f;
9 O$ j6 f8 `8 s- k. p& {
pLight->Diffuse.g += 0.1f;
/ L3 H3 n2 a5 {; T% I( T' l9 P
pLight->Diffuse.b += 0.1f;
2 ^& ^1 G( A: G
// oˉè* ??à?
9 n/ C* x% h/ E, L5 K
pLight->Specular.r = 2.0f;
7 h. T4 y: b4 D, n# ]; b
pLight->Specular.g = 2.0f;
7 Z7 s. h: ^" R: h
pLight->Specular.b = 2.0f;
, u3 c# B4 l) B
// á?oˉ
+ e+ v/ _' N( U7 e$ G
pLight->Ambient.r *= 0.9f;
/ p% }1 j% |/ N. a' F- f
pLight->Ambient.g *= 0.9f;
* @2 C @, P& M/ \
pLight->Ambient.b *= 0.9f;
. |8 r# {) R; }1 @% g+ L+ f( A
$ m* z" P$ a$ t' F& L
memcpy( &m_light, pLight, sizeof( m_light ) );
. K( z& g9 v$ ~6 S5 V
" K3 B* d3 Y; q) B+ u/ W
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
8 P# `+ C6 a* x% [" \2 P
pLight->Appear( m_pd3dDevice, TRUE );
# l9 i! a2 Y( e0 t9 H
m1 n- [* i* @# a* J
DWORD dwR, dwG, dwB;
! ?' ~! W$ ?4 c: ^, ?
dwR = (DWORD)( pLight->Ambient.r * 255 );
% B; d' {, D5 E9 a8 S
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 d& J' F# I5 M- s
dwB = (DWORD)( pLight->Ambient.b * 255 );
- K' b) {, n9 i! W& U. o
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; u6 e D/ A$ u
}
$ k, C a0 q2 j' g( L# `1 A7 F- b
}
* W4 q7 v: t, @
else
& `' s( W! o l$ E, m$ G5 k4 E
{
' A6 @* c7 u; r3 k) z, |, g
if( pLight )
: H" z0 `6 a' g5 E& M) c
{
6 ^/ |, Z+ F- `: W1 c5 c
& ?9 K$ U0 w; ~. ~+ j1 o
int nHour = 8, nMin = 0;
I& Y4 | V7 y# b
#ifdef __CLIENT
7 J- L" ?8 s! ]+ c( Q, e& L
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
. P: T9 | c+ O0 U, }! N7 ?2 B
nHour = g_GameTimer.m_nHour;
- o* ]+ Z- y0 o7 m! j6 L5 u
nMin = g_GameTimer.m_nMin ;
* x& w0 v' m+ D
#else
" n6 n0 a/ y: ~3 t4 B8 x0 C% n
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
3 K* l6 W3 A& k- }' D; w
if( m_nLightType == 1 )
' O, {: h; z4 r8 f5 v
nHour = m_nLightHour;
9 K" U) M6 q4 z* C
#endif
9 f% O# g2 l5 @% J- D P! O: {9 ~+ l
nHour--;
, U4 w$ y" J: @$ v; I( `' x! w
if( nHour < 0 ) nHour = 0;
) h E$ W9 ]3 \. `: J' N2 ?
if( nHour > 23 ) nHour = 23;
" l$ S% U5 E& }- E
; D! Q$ s7 D( F' @
//if( m_bFixedHour )
9 ~) d3 X1 K5 h( c0 N" m8 d
// nHour = m_nFixedHour, nMin = 0;
7 J3 q7 { [$ ?3 M. [ D+ Z
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
* D5 l, i* Y& G. T5 J
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
( ?2 {& p8 ~- G! f- a- I: z
; j ~: W" c! k" Y2 E" u* ]! }' J: |% M5 S
//m_lightColor = lightColorPrv;
1 W5 r' V0 F7 u( \/ [2 Z
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
0 q# s2 ~0 F$ E: J5 {
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
# L7 w* s& l2 O9 v
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
* w: G( R3 m2 B* N
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
. V- L4 p7 V* s; s! P2 d; O7 s
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
( W# _: L3 Q P5 C# D
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
s0 X# ~! Q( {0 x: a- O
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
5 b4 E2 ?1 d$ X* u: F* J5 d
0 o2 T J$ R/ s" \( U7 L: ^: z
// à??μ oˉè*
' j, L) z! L9 ~* {: f. I2 X; r
pLight->Diffuse.r = lightColorPrv.r1;
4 O, w1 V9 B0 w& M! E
pLight->Diffuse.g = lightColorPrv.g1;
& H$ G0 t# B; ^* P
pLight->Diffuse.b = lightColorPrv.b1;
& O/ ?1 e, `: K2 ~8 p6 u
// oˉè* ??à?
$ w0 z6 R1 O9 D( G2 Q- A
pLight->Specular.r = 1.0f;
7 T( o6 `7 _; Q
pLight->Specular.g = 1.0f;
. Q1 g/ Q& p. Y+ h5 i
pLight->Specular.b = 1.0f;
3 s. T0 B7 @8 Z m( s9 q
// àü?? oˉè*
, [ w" J9 G d' X. [7 y( R
pLight->Ambient.r = lightColorPrv.r2;
4 q) G4 \4 `* j1 S' m
pLight->Ambient.g = lightColorPrv.g2;
! B' S* l) s+ }( l5 E
pLight->Ambient.b = lightColorPrv.b2;
& N- k8 R k1 ? b4 o9 }5 {
5 G+ T9 s9 S) e$ Z2 W/ G" ^4 y# h
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
8 g$ x* B/ R2 C* a
{
2 b; i/ M; @+ P7 l
pLight->Diffuse.r *= 0.6f;
; _3 D0 P* A1 @8 X, ^7 O9 L
pLight->Diffuse.g *= 0.6f;
& J9 M" |" f/ R8 w; S3 g% m
pLight->Diffuse.b *= 0.6f;
. k. T3 S1 H3 p5 e( Z
pLight->Ambient.r *= 0.7f;
/ J+ @! U! M8 x! c* Z) J
pLight->Ambient.g *= 0.7f;
% E3 `1 o8 e) f0 X
pLight->Ambient.b *= 0.7f;
5 J" N. N$ C0 y4 z
}
) H' T) G- z. w9 }2 Q
! U8 N4 e& [$ B: i$ w
#if __VER >= 15 // __BS_CHANGING_ENVIR
8 X6 N- _/ O# l/ o# ]' o
if( g_pPlayer )
9 G- ]5 J% l4 u) K2 M
HookUpdateLight( pLight );
" I! E7 w: e5 ~3 A, \9 p2 K
#endif
2 r: J8 A& D, A, D
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
E: S c9 e9 Z/ B
; B9 ^" R# L% G9 e
#ifdef __YENV
3 V0 X( z8 r: V% T
pLight->Diffuse.r *= 1.1f;
& v9 E4 Z0 o5 M! W& P2 Q3 e- w
pLight->Diffuse.g *= 1.1f;
, b+ r) Y1 h/ n: l) g3 h) x
pLight->Diffuse.b *= 1.1f;
0 i' c* x H* D" v# _
// oˉè* ??à?
2 J1 ?5 J' h7 _! J3 R( I% P
pLight->Specular.r = 2.0f;
8 T# i7 M! b9 i8 m/ b6 U& b( w% x
pLight->Specular.g = 2.0f;
3 n% H1 `$ Q. w- h3 x
pLight->Specular.b = 2.0f;
0 j$ F0 {1 z0 I
// á?oˉ
/ |+ V$ z% G5 K3 H2 q( o* x9 Q
pLight->Ambient.r *= 1.0f;
2 X# ~4 ?, j' T0 [, _
pLight->Ambient.g *= 1.0f;
# F& e' ~# [( D+ m8 J; Y. T; C
pLight->Ambient.b *= 1.0f;
, U }8 t% @$ J/ n
#else //__YENV
! P% d, O& T |
pLight->Diffuse.r *= 1.1f;
% b. }$ E2 x' Z. U1 m) L
pLight->Diffuse.g *= 1.1f;
( U; M- j7 W$ ^+ H8 B
pLight->Diffuse.b *= 1.1f;
1 {3 K2 ?; v& B" P
// oˉè* ??à?
3 v9 A4 S3 K- J- r8 O7 \
pLight->Specular.r = 2.0f;
* y* [! z" L( D* g& _1 H1 G0 N
pLight->Specular.g = 2.0f;
l9 K/ i( {( n; E- ^5 q- h @
pLight->Specular.b = 2.0f;
" S1 O j# x ~* j& x* d4 m
// á?oˉ
0 `% q" X+ I# o& J$ G1 ?
pLight->Ambient.r *= 0.9f;
0 g8 V; J; I5 }; C; B
pLight->Ambient.g *= 0.9f;
3 ^" R$ c$ p5 W+ K# s
pLight->Ambient.b *= 0.9f;
0 I \4 |0 z6 \ f2 Q
#endif //__YENV
5 \$ }/ x! P3 G; _2 W1 t5 M! j
R F9 ~/ f0 s8 F/ [) b
memcpy( &m_light, pLight, sizeof( m_light ) );
* Q0 e1 N% P0 G# ~
7 U1 r4 P5 J1 d
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
8 Z( {5 j6 f; n4 Z) E
D3DXMATRIX matTemp;
8 ?( n: q, M: t# [
static const float CONS_VAL = 3.1415926f / 180.f;
& x; f/ V% S9 Q, @) l
2 B1 n6 V, G$ Q4 H: |
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
9 P3 z# F$ n3 V8 A3 O4 |
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
% j! ]% U( m$ n: @' y3 g
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
/ _6 |! u4 ]) q$ g- g. d( `
pLight->Appear( m_pd3dDevice, TRUE );
( ^& a9 e( B8 \( k1 d2 r3 v) B( e
. {( _( p$ c* k6 x5 q
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
+ L; e$ B8 `! R$ m) d: w3 z6 U
// D3DXVec3Normalize(&(vecSun),&(vecSun));
2 k! Z& o* f' z2 X' @- S9 p
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
; ^0 H% p) ^- f; ~$ o1 l
. M* {! ^6 T) W: F6 Z( ?1 U
DWORD dwR, dwG, dwB;
6 n2 |+ M3 T# _0 [ E* N
dwR = (DWORD)( pLight->Ambient.r * 255 );
) Z A4 c% h; T+ ]- i
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 m6 G* m( {2 C5 W9 p# v$ H
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 m( r) ~5 H& |6 `# I4 ~8 a
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
, ~5 W/ L# {) M& C. s
}
& \2 o+ @* |4 i. Y! A$ N9 w
}
& u( o5 U- Z: @+ p. e
) C/ }3 `5 k% `, R9 c4 l( [
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
5 L( ~3 n6 p" X/ g4 p
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) );
9 p" h5 W* s+ V7 ^: Q1 v1 q
::SetLight( bLight );
M/ D$ W6 y- M1 s- |
5 S+ g) k" \( q! o+ a! o
// ±ao? ?D?í???ó á¤à?
8 p6 r( a8 X" z/ S3 N" A- q2 h
m_pd3dDevice->SetMaterial( &m_baseMaterial );
* d' L! l* a# u
' o6 F" [$ \1 q0 \# X, c1 j
#endif // not WORLDSERVER
. \: R$ p2 n- J+ p% [
}
; \$ Z" x, v5 Y) ]3 b* s* f
并更换
9 E! C/ _! G- e/ b4 o0 n$ N) V# v
Code:
5 o$ T' x( j- W
__FLYFF_INITPAGE_EXT
# y$ u2 k2 X4 E8 `, U+ z
定义
! H+ C' V6 A/ B
# T6 U9 d0 b1 S+ n& o
5 G6 m& u c9 M: ?; A
" m2 w! R H1 t8 L$ T0 t8 W; D
1 L2 o5 r8 x% E; V; G
现在终于删除我的狗屁加速...
" d% D) X/ O: S' ?1 x
" [" Q: m, K ~
$ p( o' B1 x# t
* w1 W& M9 J! V3 M
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2