飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
# ], m+ a: l# i- W# S: W
尾翼:
3 c4 ^- a8 W" _ m9 o0 r* {- u$ {
. M. u$ x5 x$ U( E3 ]1 ^
代码:
4 h/ }- {: l! S! F9 y
CWndAutoFood::CWndAutoFood()
9 X \6 a/ @) h9 A" |8 A
{
7 x" g0 ~4 f9 P% v8 j1 k" p; v
m_pItemElem = NULL;
! P. ^) e* }4 g9 @& c1 Q: W; s
m_pTexture = NULL;
: o% M3 C/ d5 k: b
bStart = FALSE;
4 i G- ~8 D; o, E
}
* ^1 q+ ^1 t2 ?0 C$ g; |
4 O0 D/ X V& _0 O
CWndAutoFood::~CWndAutoFood()
/ X+ k, z2 ?6 k% a+ u- T# T6 X+ b* a+ n
{
5 h: U j( r% U2 P) W" r& p
AfxMessageBox( "AutoFood ist gestorben
" );
' |) I$ I* Y0 @1 E( {9 F, P
}
1 I2 _4 D @$ e2 \' i; H
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
4 K" H0 Z& i1 H% o; b
{
4 d# V+ k" h: a
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
/ ^6 D3 x: P, d7 U1 h( ]
}
/ L6 S6 [) q* t, v3 y
! }. v& R( w" R% q p
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
( x# M. W4 N0 g5 @! H% {4 j
{
! P2 X" o' b* c+ ]4 z& m
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
4 E$ `& ? }5 W: D
CRect rect = pWndCtrl->rect;
x4 N6 [3 L- i6 d! V% B
if( rect && rect.PtInRect( point ) )
( U8 S* U. i1 |! o' O$ U
{
o* r3 @7 E2 C" x4 X8 Z- q: `5 z( ?
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
; ?0 i% n" G+ e' g
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
7 l1 z7 O2 D! A9 ]
{
, L8 C' a& i: @! w) E! X
if( m_pItemElem )
" F" t; _) o' I p9 [
{
I& x9 l2 H' l( Z4 @) C
m_pItemElem = NULL;
5 q0 f0 z4 `' Q, x2 T1 z
}
) P" V( k' `* q% \7 B- W
m_pItemElem = pItemElem;
! F2 \1 q$ h/ l& \( b: J3 S( T
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
; h4 F! s* h/ L2 Q+ I0 x$ U
}else{
* S3 F: \- R! |
SetForbid( TRUE );
: t" A- S+ N! r) x" H0 B
}
0 F) y3 c. K$ [
}else{
/ `( Y: O0 I- F. `# Q$ c
SetForbid( TRUE );
/ o" c7 z& X" ?, {* `
}
' o" W7 {8 R, m- Y7 a( ~' m
return TRUE;
3 d) Y* }- i- J/ Z4 v- z4 s
}
( Q6 l6 [: e: O4 Y! b
; j! |# f% k4 v: G' R
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
# A* [1 }9 b7 ^* O8 H+ r
{
& i6 u7 B0 n6 ?- q* z' C* c
switch( nID )
/ t& z! k, T& u
{
2 E9 w* U0 H9 Y. P5 ^" d. l, l! b9 L
case WIDC_BUTTON3:
5 d, p( P( J- H# R N
{
# ^5 y3 n( p" M! C, B
bStart = TRUE;
9 J- g# y2 s3 E
break;
0 P' z0 L% M' M( V- D. L8 D
}
+ n! T7 ?: e/ y5 |
case WIDC_BUTTON4:
/ G; S s8 O7 E) C) N4 m" {) T: ~
{
2 {8 z3 Y3 E5 I: D; ~3 j
bStart = FALSE;
2 Q7 V" ]+ ?1 K* _
break;
, |. W4 [1 z& \- J% p. C
}
% M2 Q1 ]* F0 G0 Q- f
}
, T2 U. h2 P( Z; W9 L: N5 d
return CWndNeuz::OnChildNotify( message, nID, pLResult );
. b% G/ }" x; A
}
7 n; ~0 q" c' i
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
% ^8 z8 ^1 | P% G! N
{
% h4 b6 H. L- |, J% g- P& R
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
% ~( b. q3 b. Z; |" [
if( bStart || !m_pItemElem )
9 z: T1 H: V; k
{
- y7 C" P# ]: }) Z+ {
pBtn->EnableWindow( FALSE );
, \: U! y* i* T4 ^( {+ C
}else
+ N% `! }2 u8 e- A& D: T
pBtn->EnableWindow( TRUE );
) ?% h( H3 m/ v' _
if( m_pTexture )
9 O( W. g, Y, I* _
{
1 ~/ L+ Z1 ~ x' N1 a# N6 x% Y+ Q
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
6 {/ K( f. n, l" j% n
if( wndCtrl && wndCtrl->rect )
; S/ |7 {2 k: d% b- f
{
3 B3 K1 J! {( e L4 e) f' m9 N
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
% y7 T% L# h1 ^) W
}
# `) E# H& ~7 a1 F" G0 q- Z
}
" G( b0 h% s1 p; l8 \8 o8 a/ I
}
- E4 P, ^0 ?- ^/ a* d, J% K- g8 N6 M- \
) q( O) f' s. Z
BOOL CWndAutoFood:
rocess()
# `( x R; N( S% |$ i
{
1 ^' X5 x+ ^9 f+ _1 _* q! ^& E
if( bStart )
: Y# J: o Q( p+ _2 E' f5 I
{
7 S. x1 @. V( f& X" j
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
% K# n, l& I: |- ]- s
{
: x1 g1 g/ b4 a W$ q/ Z
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
% Q6 a' a3 R- F2 ^. k8 U! v
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
( O( n1 y, Z8 Q0 F8 y8 D
}else{
8 N) t& E( M' V$ x6 V
bStart = FALSE;
, V5 o0 c9 r6 e6 g* I# C- C
m_pItemElem = NULL;
7 |- {" t! i- b# a0 B
}
9 w5 K% a( j$ `1 p7 p/ ^& f' z
}
0 `) R$ C* L. A h1 `" d0 o. }) L4 ]
return TRUE;
! }& H% e% }! h$ [
}
; B: y5 w4 ]0 c; r9 I8 C/ ^% P
- C3 N; [- W. k F( T7 }
登录视频废话:
% ~, L+ f$ s; i5 O6 i
尾翼:
: M3 `+ J7 x! e. s5 H, K! f
$ D$ @ G( C3 B$ F* {" a, w
代码:
# ?- e4 i/ v: F
" i+ V6 T" q1 \' T; _! j F
void CWorld::SetLight( BOOL bLight )
- i/ B- f3 G5 E7 G% ~' U$ v2 A
durch
$ ^& M# F; K7 m$ I. k: {* O; g5 \
Code:
" ]0 S4 n, f# g/ p2 t1 ~1 p6 \
void CWorld::SetLight( BOOL bLight )
8 J& R, @! u2 r
{
; E* O" [7 H# @0 L
//ACE("SetLight %d \n", bLight);
- B _) r. Z3 m3 o+ ?7 y
: S; q9 E5 ]6 V* |5 T4 Y; R
#ifndef __WORLDSERVER
( s% O, |* z) J
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
' I. g% [" r# S! H' q
CLight* pLight = NULL;
: ?0 J; S) ~ z% T0 G0 P5 n) z* J
+ {7 u& x4 D2 g f& k. _( ~! H' D
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
# m& N$ P& N" Z
1 P: K9 B, ^) {2 ~' v9 T
pLight = GetLight( "direction" );
/ y8 a7 n3 m) D: l( s9 f
# s) h4 e" a) ]* B
#if __VER >= 15 // __BS_CHANGING_ENVIR
0 x2 W2 ]1 d9 y+ o/ a' w1 J6 T
if( g_pPlayer ){
. ]+ d6 k4 U1 g( a
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
5 Z2 L5 h2 d# F
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
0 j# k+ }: G" m8 e% S
{
7 z/ @1 D+ _6 B! X- ?
if( pLight )
1 z( s! N) L$ S3 V- b
{
a% e2 N S: e$ ~7 F
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
/ P$ S( X) k8 ~4 c& D' L: ?
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
2 \. r4 E+ Q/ s0 `5 d' C
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
( ?( M, w: Q2 ~- `1 N
* V ^+ Z( |6 v. W' @% t2 t7 {
pLight->Specular.r = 2.0f;
% L J! t7 b4 E# B9 j O5 s- K
pLight->Specular.g = 2.0f;
1 _3 c3 `0 j5 k
pLight->Specular.b = 2.0f;
, q' g3 h* c3 P
8 r) `, u: c+ P @: O
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
+ J) Q, S0 r2 U8 p7 g9 F$ r
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
d+ X% z8 B( l0 o
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
I% I' R4 e h) ~
( r3 r, c) k7 ?# y% J0 q$ }: ?
HookUpdateLight( pLight );
$ s% G" N$ f; z. O
* K# v1 G: g7 e2 o
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 w/ t' y: b, E1 p
' m9 \( B7 }, O* Z2 p+ p" j
pLight->Diffuse.r *= 1.2f;
/ ]3 l9 l0 Q0 @; S" `* C
pLight->Diffuse.g *= 1.2f;
- J- r' C# g& Q! ?$ [ S/ t
pLight->Diffuse.b *= 1.2f;
+ L8 e: W% a0 ~( d) `
' u; U& w7 O8 |4 Z, m
pLight->Ambient.r *= 0.8f;
8 d( ^) m/ `5 n9 p9 ^- Y+ J
pLight->Ambient.g *= 0.8f;
) r5 i$ ?0 p/ k5 C2 F9 f- O" a' O
pLight->Ambient.b *= 0.8f;
8 u. D# `3 e1 c7 o: J! z, H
8 b, c1 W9 C: E: \8 ?
memcpy( &m_light, pLight, sizeof( m_light ) );
; z9 _8 I, k( m/ J8 d. ^1 \7 r
7 W& P5 x( F1 o* i
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' l4 q& R) m4 }* C
D3DXVec3Normalize(&(vecSun),&(vecSun));
. ^1 K) v+ V5 N; |4 o4 w0 U; z
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ l8 `. B3 W) k& D8 ^; w$ F6 l
pLight->Appear( m_pd3dDevice, TRUE );
* R4 [$ d' O# W5 K) V# h) Y- k
5 Q# A) [6 S$ W$ x% q# A3 f
DWORD dwR, dwG, dwB;
9 A- ~; W' M2 g9 P! b3 O
dwR = (DWORD)( pLight->Ambient.r * 255 );
* r" I$ X9 _* g; P; e( u
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 y' u3 o0 i7 [+ P/ t
dwB = (DWORD)( pLight->Ambient.b * 255 );
0 w; k+ ]: p( Z! D0 Q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) s0 J, t4 ~6 \5 [1 R, q
}
' ^: T' |3 s* L4 g
}
8 q. S9 H* q, n: z$ d( K; }6 k
}
" x, W& f2 b* Q
else
* B0 t) o2 Y8 C2 o! }: `
#endif
" M& ?5 r* S7 h6 W) u6 i
2 p h8 f) `' r& D# K- m# v
if( m_bIsIndoor )
$ V8 ]& r# w% ~! u
{
2 J* M: h {& Z! S% c
if( pLight )
/ r z( o' \ l0 V
{
5 Y f% K4 @% k
// à??μ oˉè*
, w8 M$ P( j# J4 V/ B
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
" I$ {$ n4 B( L6 H3 l
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
; Y6 U& f, R# U; u+ S
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
4 D% O% {7 B; v, q+ ^* Z
! `( t' Z: I9 \
// oˉè* ??à?
% M+ D' X* X* S! q$ {9 u
pLight->Specular.r = 1.0f;
1 H) @' C) { D$ |, m: \; k. [
pLight->Specular.g = 1.0f;
9 I+ n0 i C: K3 M" P8 ?: h
pLight->Specular.b = 1.0f;
1 O+ l( n2 r# N; T2 Z" z8 `- g
// àü?? oˉè*
) s4 i& I0 v5 g% G/ |1 g' d, l) q
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
1 N5 h" G, |3 a+ g# ~- i! o
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
; @' b, q7 A U! s S2 K
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
8 A9 p% B: i! |* Z( k
# T; O7 h1 y! t2 f* ~3 f: i% |, l
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
) A3 V% @ o! n& |7 p! G
{
- ]) H* s$ }( ?
pLight->Diffuse.r *= 0.6f;
8 b, |# \" y; ?/ C/ Z* y
pLight->Diffuse.g *= 0.6f;
) A! c% y$ R, u4 l
pLight->Diffuse.b *= 0.6f;
% G! \. ]0 o5 s. V% ]! A
pLight->Ambient.r *= 0.7f;
8 l8 ~! x$ U: o$ `
pLight->Ambient.g *= 0.7f;
% O( \3 `" D( O
pLight->Ambient.b *= 0.7f;
6 S- Y' W& d2 Z
}
+ Z; M7 c0 w, y. @# D# _
/ B* R# z0 }$ s9 r6 l) T5 t+ _1 A, d
#if __VER >= 15 // __BS_CHANGING_ENVIR
, n/ i3 I. Z& Z8 t
if( g_pPlayer )
5 I) p- v# c5 z; ~8 U9 O! U4 w
HookUpdateLight( pLight );
+ u" U1 q/ o) w$ i5 t; {
#endif
* s4 i( m$ S! z: l7 P4 t
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 Y; J3 x1 s* ~( w& _& @ V$ _
- ?! i$ c- E( H4 B, ]* `9 u2 N
pLight->Diffuse.r += 0.1f;
1 Y3 J6 ~3 f. j- Y! L& H' \
pLight->Diffuse.g += 0.1f;
! ~+ X c4 H. ^. K* X6 S
pLight->Diffuse.b += 0.1f;
4 a; q+ d, S* W3 g! ~4 d) M5 o
// oˉè* ??à?
- B9 E( Y; y) M; Z6 c, R5 | y8 M6 c
pLight->Specular.r = 2.0f;
: ]; G t7 F0 Y1 S7 q. E6 x9 g7 t
pLight->Specular.g = 2.0f;
; \; k; H/ [: U7 c9 X/ I L" i
pLight->Specular.b = 2.0f;
" g" `4 g& S. d j; A) i5 m8 _$ L- I
// á?oˉ
8 b4 @ o' G8 _7 v' V0 e( K* D- s
pLight->Ambient.r *= 0.9f;
5 M/ b; l; w3 h! z. g
pLight->Ambient.g *= 0.9f;
4 a* j3 K0 N0 {/ S. ^* a
pLight->Ambient.b *= 0.9f;
6 V( r+ n8 j2 }+ r( y: o
7 U+ E4 m( L1 I G T* | @% N6 z
memcpy( &m_light, pLight, sizeof( m_light ) );
0 q5 x7 I" T7 g
- n7 }: c* \* u
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
: ~# K& V# x( Z5 N% g
pLight->Appear( m_pd3dDevice, TRUE );
3 Q. U2 S9 N2 j
/ C$ z& @/ U8 l9 k# n1 g$ y+ d
DWORD dwR, dwG, dwB;
" \' X+ Y7 ], A# G& S. Z9 F
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 O! t- W; ~/ t7 i+ o( m" b
dwG = (DWORD)( pLight->Ambient.g * 255 );
' G: K9 I2 ?7 t' J+ z" m! v
dwB = (DWORD)( pLight->Ambient.b * 255 );
* U6 u2 l. w" }0 J
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# ^9 u. w% O" V7 v
}
) l ?0 Z O: w8 w0 i/ v
}
0 V6 Z- W5 @% \0 G- k1 q, [
else
$ t/ w5 { s8 `" g9 |
{
. O5 Y$ g3 a3 }) n3 v! v
if( pLight )
+ \' h! m: l" U1 k& w
{
9 K! K8 m4 ` x' H1 x% t$ i
" c" C2 Y( x3 S
int nHour = 8, nMin = 0;
) F" f. V: Y" q4 { J! f+ C+ R' D
#ifdef __CLIENT
( W i! S' v Q' m+ r
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
; E4 b& X3 F! l+ O1 @) G
nHour = g_GameTimer.m_nHour;
$ x: ~4 n$ O$ L$ b9 `
nMin = g_GameTimer.m_nMin ;
3 c" Q( M" ?$ n& P7 x% J3 d- Z
#else
- H8 E+ M3 @: ? _7 M
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
6 k, U) F* V. y- f7 [& Q
if( m_nLightType == 1 )
. n: T7 h9 B- S f
nHour = m_nLightHour;
W. M- d2 d7 D: {" b% L& c
#endif
3 f2 p. i: v! |. m$ g' j. n
nHour--;
6 V) A$ ]" x5 D
if( nHour < 0 ) nHour = 0;
; u4 X, \2 }% x8 a* c# w
if( nHour > 23 ) nHour = 23;
0 t7 s5 I" u$ z& | k! v% D# `
% }0 F- d# D2 C V0 I! g9 ?( s7 B
//if( m_bFixedHour )
* B; z4 ^' g- f- L
// nHour = m_nFixedHour, nMin = 0;
2 p; w0 X( `! j! D" d9 m$ }
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
; t6 C ~9 n) c
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
1 w; q) v |9 A; o
. |) L& g' g# J
//m_lightColor = lightColorPrv;
- K T* S$ y3 m+ S
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
- @6 g. \8 y0 D% Q8 `6 {6 k9 @
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
4 f: X/ C4 q) ^" E+ m
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
$ ]+ a6 ~; A1 \3 l! s/ J+ ?3 \! q
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
7 J9 F" R2 y0 B: c' B
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
/ S F' ]' ~1 \" R6 F
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
$ j1 U$ A2 N( g" T& m; l
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
0 b' \' b2 y* C$ r; ^
0 |( Z* O }* F. w
// à??μ oˉè*
! e. i' D$ S4 s4 w8 m
pLight->Diffuse.r = lightColorPrv.r1;
$ {/ y' Z) F! x/ U
pLight->Diffuse.g = lightColorPrv.g1;
3 R! J9 O$ s3 E1 I
pLight->Diffuse.b = lightColorPrv.b1;
0 @4 U" o8 u2 e$ J
// oˉè* ??à?
) `# g) Q9 E/ p
pLight->Specular.r = 1.0f;
Q& Z: y0 n' P% c
pLight->Specular.g = 1.0f;
) M% ]! e# Q3 s; Y7 d0 Y
pLight->Specular.b = 1.0f;
5 p- X1 ?7 S, { q) m3 G
// àü?? oˉè*
1 S, ^7 g7 _' p5 ^3 H/ Q* l
pLight->Ambient.r = lightColorPrv.r2;
) z% t8 t5 f' k
pLight->Ambient.g = lightColorPrv.g2;
. F2 h% {& Z1 I, V
pLight->Ambient.b = lightColorPrv.b2;
" g$ @ d/ X& x3 V- [9 T, B! z% I
) K2 y2 ]2 M. @ n8 N. X& \% ]
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
) z6 M' n+ L- i5 a
{
9 F) a& z" _2 w7 |3 H' @
pLight->Diffuse.r *= 0.6f;
" T: h, l2 X4 z( ]$ [
pLight->Diffuse.g *= 0.6f;
9 j8 \( X4 p+ ?' ~
pLight->Diffuse.b *= 0.6f;
6 X; A0 t' N' g- |7 U
pLight->Ambient.r *= 0.7f;
5 L$ b! [$ W: t& Q' X9 a6 [
pLight->Ambient.g *= 0.7f;
2 |& \' B+ s; b2 ]6 @
pLight->Ambient.b *= 0.7f;
2 J0 X' K6 ]# f% W/ E9 r# G# D6 d
}
3 d: ~) x" \5 U" A( j+ Y
1 H3 X0 d: N% k, `) q( q
#if __VER >= 15 // __BS_CHANGING_ENVIR
8 L1 P) u; }7 t2 l& A. }; W
if( g_pPlayer )
8 m/ z2 f2 \: W Y8 D
HookUpdateLight( pLight );
( E4 E9 b, N# S7 |5 V
#endif
i) E# v$ z$ J% @* ?$ g# f) ~
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; W5 H2 Y# Q* P$ g. }8 A
" v$ Q, @7 |# ?+ Q4 m* _9 w$ Z
#ifdef __YENV
2 B R) t* q* j
pLight->Diffuse.r *= 1.1f;
% ~% f, n" d9 }" D! F Z2 _5 A
pLight->Diffuse.g *= 1.1f;
W& p9 @( p, F; Z: O
pLight->Diffuse.b *= 1.1f;
+ ^- r3 E% d* }
// oˉè* ??à?
; U! t9 O# m" `5 i
pLight->Specular.r = 2.0f;
1 h- @& `0 a" T
pLight->Specular.g = 2.0f;
4 ]2 g( W ]# m" ~* g
pLight->Specular.b = 2.0f;
, z" I8 s8 e* ~4 U' ?6 k3 q1 y
// á?oˉ
9 c4 r( b! t' g* t
pLight->Ambient.r *= 1.0f;
4 N, \7 N1 L# m3 d: C
pLight->Ambient.g *= 1.0f;
: z! O" C+ [) u) y- {' J; v2 Z
pLight->Ambient.b *= 1.0f;
8 @" m' D/ D* p2 E4 V" Z
#else //__YENV
: i, J! w0 [' x
pLight->Diffuse.r *= 1.1f;
2 a0 k6 r9 f2 n1 i9 J
pLight->Diffuse.g *= 1.1f;
8 W' g0 N& m' I+ L' o8 M
pLight->Diffuse.b *= 1.1f;
2 q8 `( k( k D/ p* n! U
// oˉè* ??à?
8 v- ]' `$ O/ l1 R2 p
pLight->Specular.r = 2.0f;
6 i6 {! F/ `, x+ R. ]# |6 X
pLight->Specular.g = 2.0f;
H* ^+ x$ P3 X3 ^. J$ J# P% x
pLight->Specular.b = 2.0f;
]) r$ m7 b, _/ {- \
// á?oˉ
. Q' ^- A; _+ g* M+ y4 ^0 j
pLight->Ambient.r *= 0.9f;
# t$ G. M: N( o$ V- H+ D. k+ s
pLight->Ambient.g *= 0.9f;
. k7 E2 |* v: N" e, K; j2 }% _' k
pLight->Ambient.b *= 0.9f;
+ [( r; t. F$ c
#endif //__YENV
- [; U, `1 E' ]! B* u
( h+ X, T( e4 p g; r5 L
memcpy( &m_light, pLight, sizeof( m_light ) );
& g& x4 }; w ^. k: O3 h' P
: y" E5 X" @) l, D) g% T, A+ W( C
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
2 ^+ W: e" C- J3 Q
D3DXMATRIX matTemp;
# ~3 K2 {6 J8 j; s- i
static const float CONS_VAL = 3.1415926f / 180.f;
S2 h T/ z- {4 h# s
% P1 I: T4 h* y# @8 d! U0 q
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
) ]7 E+ W: u2 q. O
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
: e# D, G; y8 \
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
( P2 s; b8 a4 D0 M
pLight->Appear( m_pd3dDevice, TRUE );
( F9 ^: I( Y2 ~$ p& X% n' }( f+ ~
8 `" p; e5 {7 z/ s$ `
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 v0 G0 d+ l# h' l, i4 U' n! v6 s
// D3DXVec3Normalize(&(vecSun),&(vecSun));
. Y3 A i4 ? _9 r5 u
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
8 A+ u0 v. o6 e z
8 E7 [. X# L9 a- z9 | c* X
DWORD dwR, dwG, dwB;
7 g, e# x, A& |* p- e
dwR = (DWORD)( pLight->Ambient.r * 255 );
& S) }% v' h. Y+ U
dwG = (DWORD)( pLight->Ambient.g * 255 );
: t! `7 C' H6 n7 m/ E8 x
dwB = (DWORD)( pLight->Ambient.b * 255 );
5 p% N: ]; I( b4 [6 c0 e# x$ E
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 e2 j. }4 X& g* _2 z' w: ~% x
}
- t8 ^# u# m) u& ^6 f- m- B6 p5 |
}
; h s$ m/ E5 j n/ z
2 D4 Y6 C' J0 u2 e3 c, P
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
) ]7 E3 k( J3 ^$ J: a
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 K6 |! u K6 c/ X. ?/ j9 {/ R
::SetLight( bLight );
3 E7 J2 E, x- {, v! e2 B6 p0 Q
. _* ^5 p* n9 @* \, |" U
// ±ao? ?D?í???ó á¤à?
: g& }6 p, |. ]
m_pd3dDevice->SetMaterial( &m_baseMaterial );
6 s# x2 e# h- B+ F/ h
* d2 n4 n+ {3 p# t9 Y$ e# [
#endif // not WORLDSERVER
- u/ c: S2 t9 @: A( n& k( ~
}
$ i1 z. C1 \7 Y& K) z* @
并更换
, a( X6 O8 _/ i6 e! P( x& g$ s
Code:
( Y! f* R4 q( m: a8 P
__FLYFF_INITPAGE_EXT
* ~4 Y( f8 d- M6 |
定义
$ t6 F8 U# u- h: ^5 L
! w$ d+ A& K* D! B; \" ^
9 u7 H9 T( }, o
6 e( D$ \1 z8 c# Z8 Z9 B9 Y1 d
9 e, a9 k) |" R) u1 k9 K
现在终于删除我的狗屁加速...
! L, n5 m; ~: o$ i
~% G5 _- V: b3 H/ G: x/ c
# b4 g( v V- f6 s5 _8 X% @
6 L$ B, X+ a9 r/ S( [& V
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2