飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
0 C# l4 n+ g* c& H% e7 k
尾翼:
! X* r3 l. [9 U4 H# v5 b( v
* x, D) _2 ?! R1 b. w$ A
代码:
: v1 t8 k5 F0 d& o
CWndAutoFood::CWndAutoFood()
+ C2 ~! k0 a+ ? H5 h" Y0 D6 {
{
: w# J: ~8 E, {) [+ D; N
m_pItemElem = NULL;
+ a0 L, w8 r" ]! @5 l& O
m_pTexture = NULL;
5 E9 Q8 r/ `2 {7 e8 l! E
bStart = FALSE;
' s9 Z4 T4 D: D
}
: W) U# H G; v0 M2 a4 L, |/ t9 @
; S& b; g3 X2 R" H, f( i
CWndAutoFood::~CWndAutoFood()
. |+ ?: j3 c+ d; f- {; Q
{
, a; U" [' `: m8 v# V2 j1 _
AfxMessageBox( "AutoFood ist gestorben
" );
5 V1 ~ `# e# W. g5 I- J
}
7 \8 a% G- R' G
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
# t. a. W% v, ?8 D+ a4 V
{
! \- Y4 p9 n7 Z4 H0 Z. H4 t, B
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
# M/ f5 I' ?* |3 ]8 _* y
}
+ U. M; `# z2 i
K, r4 [) W V# L0 |4 {! A2 y8 E
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
. @: l+ u' `7 S
{
( V: F& J! j+ j( e, h! }
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# G+ L! l! s5 c, C
CRect rect = pWndCtrl->rect;
9 |0 I- \& l. x" d" i
if( rect && rect.PtInRect( point ) )
# @& z* N4 x; f% Y
{
$ b( v5 P& }' s: l
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
& m* U# b+ O1 Q0 T) H
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
; F% L* x" _ J" w( n
{
* y# d) d: B5 f
if( m_pItemElem )
, ]1 q& u$ w( ?0 \4 G( U% `0 u
{
0 D7 {* l7 \' `/ q
m_pItemElem = NULL;
9 r0 @2 E5 L0 ]
}
, k4 _+ m. g" @( p
m_pItemElem = pItemElem;
! c) j& ?. `' M
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
0 b6 e: n `& J2 Q9 Y
}else{
: R' e- K: Y/ y% O9 `8 u/ r: w5 U
SetForbid( TRUE );
5 E' G5 q+ s2 ^' d: ^) x
}
4 }9 G; ?2 Q3 c! y/ m7 ^
}else{
! |$ E |; q( M+ N5 u
SetForbid( TRUE );
8 o' R. h" Q' b& _( ^1 L
}
6 Z! q/ e2 d. Y* E. G% v
return TRUE;
' ?+ N2 ~; \& f! N5 l
}
' a2 |2 Y8 c; p8 w% x
/ d: g/ j$ S& C7 Q9 g' a( z
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
9 h& C% x) R" v: w a" k- ^
{
- s4 g \$ p9 c1 ~7 L4 n0 Q$ {
switch( nID )
- G( u/ Y0 a# \1 l% w. k
{
0 ?- G* {# H! n( L
case WIDC_BUTTON3:
7 y0 g* j. ]! w: H
{
6 w: K C1 w& `: ^( d- p7 [
bStart = TRUE;
. J- `3 L& i/ ~' T' v6 T( W+ ?. S
break;
3 A; S3 b I' c' u
}
. H1 z7 \8 Y) S$ D. V% m7 C
case WIDC_BUTTON4:
4 K7 d# r5 i, L3 N4 h
{
1 C4 ~/ D+ I( x
bStart = FALSE;
7 V& I: u4 J/ ^2 t" g5 W
break;
! ]2 ?, X7 Z# ]& E$ \# q2 K
}
# n9 ]7 o5 J( ?2 M) n3 p' U
}
/ [# P* W% g+ s) j' R& U
return CWndNeuz::OnChildNotify( message, nID, pLResult );
9 y; Z: q$ J) \* z" \0 @# R6 q0 {
}
" c$ Y+ I' r8 f$ C
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
+ K6 H6 E( T6 @8 j# i
{
7 t' Q- E- D: }7 ~$ H1 ^
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
, B3 c$ Q3 B& I5 j
if( bStart || !m_pItemElem )
+ A( j) ^" J2 q2 y- c
{
* B0 ?; u' D1 k1 F. a4 j
pBtn->EnableWindow( FALSE );
5 M! h+ e* d) M- q
}else
' l5 N& {; _' d. \/ w" y8 v" O6 c
pBtn->EnableWindow( TRUE );
0 \9 {' v l# c/ i5 _
if( m_pTexture )
# l& k% i0 d! J$ \
{
7 P0 e0 m( I4 A$ A- o1 H
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 r: p1 h: R+ x) m
if( wndCtrl && wndCtrl->rect )
% Q/ S+ \* E) l
{
0 \" `0 P. e$ i% |& ~7 V5 L
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
" K+ {( [* k/ W# g, v
}
4 A, J4 G3 C; E
}
. j# X1 L p" a7 j, M
}
& c9 g7 o4 j4 H1 P- u
" Z2 z+ c% s% g9 \; h2 S4 {, {
BOOL CWndAutoFood:
rocess()
1 z4 U- A' o# V
{
% r4 w$ U+ m' n0 F8 q0 v
if( bStart )
z7 t) U8 b# Q7 G v; K
{
# ]$ d5 K# ~0 F8 [; ^
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
2 Y: a; r1 g* j( R7 X- O
{
4 w/ W! c7 W# ?" 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() )
+ o+ A; g- N/ ], a
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
* l& L/ @) r5 x% s8 }9 [7 C! H
}else{
' }3 B& B+ {* P0 X7 P1 n
bStart = FALSE;
7 ?9 k" u& h5 ?6 \% c. K
m_pItemElem = NULL;
- {% Z9 Y/ b7 M; E1 U0 P$ \2 B2 r
}
: C, z c' W0 G6 v |
}
/ t4 X+ j* ]; g
return TRUE;
8 b9 m; I, O" i# A; j3 H
}
4 k6 G) [; c: E$ W l9 L
- E# m( h% x4 l0 u4 u
登录视频废话:
) D7 V) y- |$ x$ @$ H
尾翼:
, z$ h" L( s. {; B1 y5 O5 l! p
7 o7 t' P1 Q9 e+ F
代码:
# W! G/ W- ^* a# m" k/ e7 B: l
( N8 x( E7 n$ D' q9 @
void CWorld::SetLight( BOOL bLight )
# o1 x9 q$ j+ @- z: P8 J& h; i
durch
( n4 X1 C5 Y- x) o" y
Code:
2 f6 ^& Z& V# G" |7 m% N
void CWorld::SetLight( BOOL bLight )
# I# ?1 j, g) N1 H2 A
{
# d4 \ Z9 M6 _5 V, J- [# Y' S* H
//ACE("SetLight %d \n", bLight);
: M! F O0 J$ e: X# U
& P- g& h: E6 ?6 i. g
#ifndef __WORLDSERVER
B4 N& [. I, }8 \
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
B: y% \+ s8 O# s- }1 v$ p3 z
CLight* pLight = NULL;
9 M) o; A* D2 i n' @' G& H
5 Q! r/ C- d& e! ]+ @
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
# Z7 t) m& T3 ^. C& [" Q
+ O- }, {$ \; t$ u4 o0 Z
pLight = GetLight( "direction" );
; z+ D5 O; D7 U+ c9 E# ]" g7 d
+ m. l- G' I7 f; N: m$ [ E/ Z( F
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 z+ ` z# O' G% r$ m& r
if( g_pPlayer ){
- c% k: P, n& R! d" q6 K
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
$ {0 s, _6 d# v7 T" F
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
/ ?+ W) M, u. C
{
! g* O; O$ A; y* p8 {/ R
if( pLight )
; I5 U2 p+ v8 @+ u, q+ R
{
3 y: P" g( ?0 n! K+ s
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
# v h2 Q1 f# o& S! t4 g
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
7 U7 g; j N- b# ?( k3 [
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
' J, |& F, t9 J, U
) x& e- X ]3 F/ W+ ]
pLight->Specular.r = 2.0f;
! L8 {1 |9 w4 G5 T( k
pLight->Specular.g = 2.0f;
0 s f1 W3 W% U2 ^
pLight->Specular.b = 2.0f;
# C9 W2 p( m. e! @5 O
6 E2 R2 F6 e- K5 t+ _* k. [& _
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
3 B9 X( r' {, |8 A
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
; T9 D0 v0 H9 U2 z
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
6 }& A) o" y) g2 u* w
; T5 d' D( z) ?% E$ |" N9 G
HookUpdateLight( pLight );
5 N r6 P% u1 y0 e. ?0 g6 O7 O
- X l" ^4 ~0 A0 T. S1 g
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* I$ L+ _3 C7 j% v' g
; X* X4 J$ I( `, |; Y: c7 O( I
pLight->Diffuse.r *= 1.2f;
! q! d. q; F5 R/ O/ y
pLight->Diffuse.g *= 1.2f;
. Y5 R9 d! ^& n. @3 Z, E# t' A) o
pLight->Diffuse.b *= 1.2f;
/ j$ J+ B& _; P' [* R: t: H
% Y$ I6 n/ g7 Y# J2 g% w
pLight->Ambient.r *= 0.8f;
6 v# A: F! u% s9 p, C8 u' k" R+ u
pLight->Ambient.g *= 0.8f;
+ B ?; C( Z! {
pLight->Ambient.b *= 0.8f;
7 g: m! V$ m1 U. J; ]& x0 T0 B. ]
( o ?9 m* g% i; \( U/ z
memcpy( &m_light, pLight, sizeof( m_light ) );
& v. U* ?1 u) A
4 y0 @! P$ L x9 K# K* y- |
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
2 d. x( ^6 v* T8 F
D3DXVec3Normalize(&(vecSun),&(vecSun));
! H! Z! g: k" E7 ^' e
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! i- R! H) a! s1 B9 M. k) |; ^
pLight->Appear( m_pd3dDevice, TRUE );
# } E7 J5 ?# A& R9 k0 ^% S) W
+ s3 Q, g3 A! K( r/ e
DWORD dwR, dwG, dwB;
( {( X6 m$ }; E" |5 S+ U
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 h6 N" Y3 D7 m7 \
dwG = (DWORD)( pLight->Ambient.g * 255 );
( {# V4 I5 _( f0 @
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ Z1 x6 k+ l8 \( l4 s
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
L2 `: b1 e( i6 t) A1 i/ v7 P
}
: {7 Q/ S2 V8 q3 S% ]! [7 ~6 U
}
; U1 D" D' S: v2 ^
}
1 m. n. S$ n3 H
else
5 v7 v! N* v. f# M
#endif
" I2 N/ c, D% q- o, F& q
# \& t* }# ^. p. v
if( m_bIsIndoor )
3 {) R0 Y6 [8 ]' V( X
{
7 o3 j5 U( g% D6 P
if( pLight )
: I# v2 r, Z1 ^; k; G) U
{
! a# j. k+ `) _ I
// à??μ oˉè*
1 ~. H j+ \) J: k
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
( A/ l. k, Y& a6 F
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
6 ]2 B t. l9 b! N4 h
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
/ R. s3 b6 P6 G2 M
9 J1 a9 B/ r q$ Q
// oˉè* ??à?
' l; v: L& i2 v# E3 ]' `9 U
pLight->Specular.r = 1.0f;
- q/ T3 ]1 Y. J/ w
pLight->Specular.g = 1.0f;
3 d1 f x) I1 F& G, L1 r
pLight->Specular.b = 1.0f;
5 S" G4 Q% ^. l. ` ?* Q
// àü?? oˉè*
. }: l' h/ n& Q) e, L
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
4 B3 l4 d% p) Q5 @
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
" L& l- V2 I7 }+ Q" A4 b6 Q/ X
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
- A" ?' I( _: J* d6 R3 x8 v
1 T$ x' f7 ^0 z. a
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% ]0 l' A- p1 F1 C6 `. h
{
8 a7 F) y" Y |7 c s: f" C
pLight->Diffuse.r *= 0.6f;
5 [$ R% n/ Z _1 s' [# z
pLight->Diffuse.g *= 0.6f;
) l3 y& I" m3 E9 F! g
pLight->Diffuse.b *= 0.6f;
$ }4 b& e& R5 h- O* j: o# ^' ?& G. s
pLight->Ambient.r *= 0.7f;
9 V) j) ~; @+ j! b
pLight->Ambient.g *= 0.7f;
3 F% |) R- }: e# x0 F+ u7 A. V
pLight->Ambient.b *= 0.7f;
j( c3 `$ k% c( X2 Y6 W: j5 m$ j
}
# H* t3 \9 k; N2 S$ n' N: i5 F3 O
: H6 k0 v7 q& [1 i L
#if __VER >= 15 // __BS_CHANGING_ENVIR
- r3 R. a' S0 V f: l Q" v- p
if( g_pPlayer )
! Z8 M* n( F+ {" ~/ h0 n' s* s w
HookUpdateLight( pLight );
( G' n5 i, k/ W, V$ l1 v
#endif
/ N" Y- g; E: O) g
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% ~5 ?9 D6 I5 G3 x* d
, r% e' C0 r) Y4 y5 H$ a
pLight->Diffuse.r += 0.1f;
5 j' g0 T" T# r: y6 l
pLight->Diffuse.g += 0.1f;
1 i8 }7 D% L, i8 Q3 h- I$ q
pLight->Diffuse.b += 0.1f;
- z$ @% G0 W4 A, i
// oˉè* ??à?
, z3 j* w4 y1 _; {/ P4 d2 t8 l2 s5 F
pLight->Specular.r = 2.0f;
( U5 }: }4 x" }( ^/ @
pLight->Specular.g = 2.0f;
) t1 D4 N7 e. D0 j/ r; P
pLight->Specular.b = 2.0f;
2 C$ C6 \$ [" ~7 p- b- j% {1 V
// á?oˉ
% ], W+ y2 w, h' B. Z3 E' o
pLight->Ambient.r *= 0.9f;
1 t) I0 Y) y: Q: d" H% y
pLight->Ambient.g *= 0.9f;
7 U; v5 I& a4 B$ r, {
pLight->Ambient.b *= 0.9f;
9 L8 w( y+ a# L J, c4 Z! M
! ]" P$ A* d% E$ l, P& y
memcpy( &m_light, pLight, sizeof( m_light ) );
( O g' B6 ^3 }8 H0 [4 l8 L
3 ^+ q+ t+ C& X* E! E! O' R% {
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
7 p( \: r5 C3 ~2 p1 f+ L
pLight->Appear( m_pd3dDevice, TRUE );
, @! p9 h3 o& \% K8 l
+ `; V# w7 _" V
DWORD dwR, dwG, dwB;
9 i, w" X5 p- y3 [, l
dwR = (DWORD)( pLight->Ambient.r * 255 );
' Q. u# ` P7 R3 {2 x* G# B3 C0 r
dwG = (DWORD)( pLight->Ambient.g * 255 );
! p- m( a' B2 }
dwB = (DWORD)( pLight->Ambient.b * 255 );
' j% P, L1 }% }& Q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
8 N3 Y; M# f& {0 H- A
}
$ v$ m1 |3 y. J0 ]) C
}
1 M o* a0 d. |& g
else
7 t$ y# t+ ^4 o* A( b n4 y Y" O3 @( D% i
{
. m2 u& }! _& A6 [+ q( s
if( pLight )
# F- A y- J. h% L, @
{
/ {) f: [/ x! t3 k* i
4 X7 S' `7 U- O* ?
int nHour = 8, nMin = 0;
: n* f! f: q: Y: z* ~
#ifdef __CLIENT
/ L u0 G, \/ V Y2 Y+ n6 Y3 m
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
$ ~5 b! ?- S/ u9 ^* ^, e' |0 X" Y
nHour = g_GameTimer.m_nHour;
6 e4 v# h2 ?" d; q
nMin = g_GameTimer.m_nMin ;
{( k4 t3 g4 M9 Z/ m7 Y
#else
( V/ c% j4 |0 R2 g2 S
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
: ^& N" m' Y" g0 C2 L5 b8 l( N4 A
if( m_nLightType == 1 )
$ l; q; b1 Y2 d( \7 @7 v2 z
nHour = m_nLightHour;
2 r! }/ w6 u1 Y3 ~; M
#endif
3 m* x6 z0 @3 A- i" q7 U! Z
nHour--;
% R( [, I. ?( L
if( nHour < 0 ) nHour = 0;
" X. @: z: q* \' T
if( nHour > 23 ) nHour = 23;
5 C z! \7 ^& P6 Y! Z; O9 A
: N( A5 }2 h; w! G
//if( m_bFixedHour )
# [0 m0 {0 `; F% @# I% r$ l
// nHour = m_nFixedHour, nMin = 0;
8 ]1 k4 ], i) K
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
# t) P8 J: B6 k. I. w+ u% U0 i
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
: x) B' n2 u* p' [$ m0 X* {
" w3 l% c1 C4 ^; _
//m_lightColor = lightColorPrv;
/ h# j" F/ q: I, [
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
1 h! t/ T/ J5 a' d
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
, u* K% M) t5 A5 @ F& e
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
( }) r- ?. t1 W- k
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
1 }3 }2 Z0 b8 Y
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
1 j: H8 w: s: C3 B+ K! v# r
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
! a& _* R9 C% |" [* a
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
i0 \- _7 M7 m' I; [3 v/ R$ Q
7 I* u$ m. T6 H, z! ^; M& t
// à??μ oˉè*
) c! i" m/ l2 C- v, O0 ]
pLight->Diffuse.r = lightColorPrv.r1;
! u! @! I: O4 L. [, Z
pLight->Diffuse.g = lightColorPrv.g1;
/ ~$ \- l7 y" G6 l$ k( |7 N' X
pLight->Diffuse.b = lightColorPrv.b1;
' l8 B( i" U2 F: Q: u0 M& z# k
// oˉè* ??à?
3 M" I& W; }$ N8 ~& q1 h- B6 L
pLight->Specular.r = 1.0f;
; M7 @" ?$ t& ~4 G( `' ^0 F; ?2 t
pLight->Specular.g = 1.0f;
a6 r& a! ~. N7 R9 ?4 K5 V
pLight->Specular.b = 1.0f;
1 D5 Z7 X* V: j% [ ?& n1 G- h% x6 H
// àü?? oˉè*
8 h+ `# [$ w2 O2 o2 V- S9 W
pLight->Ambient.r = lightColorPrv.r2;
6 L+ H [/ K! M6 R6 o1 S
pLight->Ambient.g = lightColorPrv.g2;
2 u1 ~- X9 h; ~2 _ W; K8 M1 t
pLight->Ambient.b = lightColorPrv.b2;
) h+ t' z1 E3 L, J- v1 Z
p5 q# H& r) m% k
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' h& `3 i0 o3 u; W6 ^; ^" K: d$ I
{
3 p( q8 Q% p4 C. x8 f3 u
pLight->Diffuse.r *= 0.6f;
/ [5 r2 r {# f" Z y6 U. T' k( ]
pLight->Diffuse.g *= 0.6f;
) X* i9 z0 ?$ R/ l9 K
pLight->Diffuse.b *= 0.6f;
) d( E* [$ J e' [. {# @% f
pLight->Ambient.r *= 0.7f;
t4 J6 }- b3 N* n
pLight->Ambient.g *= 0.7f;
& b- `' K. h( i- d2 k; U
pLight->Ambient.b *= 0.7f;
2 o5 k" a0 H2 P8 M/ o
}
9 }. T J) u4 c* M1 I; L- l3 Y
' ~9 n3 i4 L5 ]! H& _: V
#if __VER >= 15 // __BS_CHANGING_ENVIR
0 B9 ~" U! O7 ?( {$ f+ K, N
if( g_pPlayer )
4 q" W' Y# w) ]# }2 W% m1 k
HookUpdateLight( pLight );
- e8 {% D! W% V$ Y; P7 h% n3 W% I! i
#endif
q$ x; Q) q& D; I5 V
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 X; H* M( {& _9 f' |" C, N
5 f5 _# p! B/ ]. G, V) E
#ifdef __YENV
% t8 v$ l5 Q/ F/ d# r6 n- z; J
pLight->Diffuse.r *= 1.1f;
, l8 A* M' y* w- @- v
pLight->Diffuse.g *= 1.1f;
. x0 T$ Y4 ?: c
pLight->Diffuse.b *= 1.1f;
+ ^) K* \/ M/ K# O! [
// oˉè* ??à?
3 J+ U& T# l/ ~
pLight->Specular.r = 2.0f;
& i B& v8 c& f$ e5 s
pLight->Specular.g = 2.0f;
" B' N, F9 u4 e* T
pLight->Specular.b = 2.0f;
' N/ U. j$ h1 K
// á?oˉ
0 Z7 r" ^6 q/ @0 n4 v t2 N( \
pLight->Ambient.r *= 1.0f;
0 U; t# H5 K) H4 w$ V
pLight->Ambient.g *= 1.0f;
/ |4 a1 |; l3 D3 B' k; w! B
pLight->Ambient.b *= 1.0f;
: C+ \* [+ l# g9 W$ P
#else //__YENV
0 I1 C+ l4 e1 _8 h6 B+ G6 }
pLight->Diffuse.r *= 1.1f;
8 f) U3 }2 U7 k5 y; e( W' h# F u# c* B
pLight->Diffuse.g *= 1.1f;
$ h4 o+ G5 }% i' |* Z$ ?' z
pLight->Diffuse.b *= 1.1f;
4 W0 ^- y. _. ^$ u# r6 G
// oˉè* ??à?
% I( Y i/ j5 z
pLight->Specular.r = 2.0f;
7 w6 h$ T: V2 C
pLight->Specular.g = 2.0f;
3 {/ Q2 H$ V" I- K6 W. v- N; n% z
pLight->Specular.b = 2.0f;
3 j2 s7 {$ [ ?4 a& f
// á?oˉ
- z4 m' D/ w2 k" U/ ^3 |
pLight->Ambient.r *= 0.9f;
u" Y6 @2 z$ R
pLight->Ambient.g *= 0.9f;
: i/ E/ u0 V" u( H
pLight->Ambient.b *= 0.9f;
+ |! l$ [5 Y2 a7 g9 V0 N
#endif //__YENV
/ [; m5 t, @0 C$ Z: L2 H! a
3 \: H' D/ B G3 V% Q, m4 h
memcpy( &m_light, pLight, sizeof( m_light ) );
: Z" Q/ Q" m; C& k( g% a
+ p. ?* x. A2 K! y
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
: t @7 M: T: M+ K- Y' a. [
D3DXMATRIX matTemp;
/ ~4 t+ l) D' m, x, m; e1 h* w' f4 p
static const float CONS_VAL = 3.1415926f / 180.f;
6 e5 m( S/ m ~5 r* K
k& G: ~" ~' M' ~" X1 G
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
, ?( a, ^5 b+ u" X
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
# v: B% b# ]4 s) ]. a/ g/ [
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
1 {8 p9 }. p+ ]7 F7 C) V) V. U
pLight->Appear( m_pd3dDevice, TRUE );
e) c7 C3 C/ r* L8 [8 v: X
# N' E- P0 ` L8 s8 X
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: }0 @- B$ d% C5 e3 ?4 }6 T
// D3DXVec3Normalize(&(vecSun),&(vecSun));
0 w& a4 O1 D& F$ n8 v S5 t; I$ `
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, Q; a; b7 b1 l0 g! q
, v' ]; L! p4 n; l# w4 E3 k% ]- S
DWORD dwR, dwG, dwB;
# R/ d& r4 u& r" j
dwR = (DWORD)( pLight->Ambient.r * 255 );
! h/ x. @6 T/ ~: v* @0 a
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 P7 ?7 \$ p2 G6 {; e" d3 {
dwB = (DWORD)( pLight->Ambient.b * 255 );
, I) s% G3 ~' g
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ l6 @+ x' g& X K9 U$ X
}
! t! M. k$ i: e# o
}
8 Y: V2 i, [* u# V+ d" F- P& w
8 A" j7 l1 U! [* c/ v& k0 g
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
7 I0 m) r `0 N* E" f; S, _* s
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) );
- S: _8 H6 r/ K: L& x! A4 ~9 I* z
::SetLight( bLight );
7 o A- M1 z; h# a
, O; n- ~3 X& [# j: r
// ±ao? ?D?í???ó á¤à?
2 r2 s1 w0 g4 [8 W0 d+ s4 O2 c
m_pd3dDevice->SetMaterial( &m_baseMaterial );
$ t' u. f& c/ V4 |
. e4 k0 [: i6 p0 L' w
#endif // not WORLDSERVER
?, d8 i0 l; r6 ^1 c0 ~
}
, u% m9 q/ Q0 G( ?
并更换
+ w* |% q+ H* o5 M. h) g( U9 C
Code:
( Y! b5 D5 r/ D9 O# |% j1 k
__FLYFF_INITPAGE_EXT
2 ^ t# m/ ~9 _2 l
定义
- a0 n5 _) t# j9 F d
# n: q( M$ z1 C2 O, H6 N* D
' [; a; }1 O0 C9 d
" R( q! q" e; r' d% g( r) h: O& `
$ S6 y" |' B9 W: Q8 {
现在终于删除我的狗屁加速...
0 y% E/ h4 }8 \" ]
- n! |) B' Q/ V* c6 Y
. _! P* q6 e2 c) e$ K, ^# o; C
# K. \4 ~! p6 L
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2