飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
- ~) a0 f; a ~6 A) B
尾翼:
; W) a/ ]1 M. Z" |8 Q. }
1 m2 p# N% w3 M" O# I& s
代码:
. F0 K; j* [! x
CWndAutoFood::CWndAutoFood()
- _1 w$ F! A; A7 m3 Q' @
{
* B3 e: D5 g' X1 c, n+ f
m_pItemElem = NULL;
5 R' d: r7 }' g0 [! h; {: n
m_pTexture = NULL;
+ |* g7 P2 g7 y' T* h4 T
bStart = FALSE;
3 K5 P4 D2 n! s7 a, r$ g* `& [
}
8 E G1 {0 r/ y; x% C9 B6 P
3 u% v, m5 T) l1 ^6 o- e
CWndAutoFood::~CWndAutoFood()
/ W3 A' M; [: J, s4 |* c) \
{
$ ~8 k* X( y6 t+ s3 m; D' c8 x
AfxMessageBox( "AutoFood ist gestorben
" );
' p I' ^# ]" z( E k3 f8 G
}
1 w; p% p3 _8 S3 k
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
# l$ c; H: z6 y9 N2 m. [
{
7 [ b3 z" Y* a" p: Z% t
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
& v$ t9 A' D1 U6 H8 F4 T) [- W& o
}
, K* d# R6 T: M4 B! k) v( j
) N9 J6 p: d0 _7 Y0 T
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
a6 ]* Y3 r5 i6 E" c7 N, @
{
/ O7 O {) |+ D" v e5 }- Q. {7 s
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* J' K9 V7 I. Y, R
CRect rect = pWndCtrl->rect;
6 R; E7 W3 c Z% ?0 M* g! w3 S
if( rect && rect.PtInRect( point ) )
; i. E, |% q# f" V4 m! A1 X1 B
{
. M* i* J, m* L1 Z7 ]1 ~0 M, u2 N
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
1 F/ ^1 {, {- z" q1 T
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
9 x' u8 |: s' S
{
2 ]1 B" I1 X% ]
if( m_pItemElem )
6 x' j, {* B0 Z5 K
{
0 Q$ x$ \5 S9 H, F" T8 F1 _7 b+ v
m_pItemElem = NULL;
9 Q" L+ U4 Q3 W; B+ w m8 w; }
}
- o, y: u/ T) U! ^" O5 Z6 y2 n
m_pItemElem = pItemElem;
! d- X, j8 M, I0 _% A! w
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
: [8 n& K1 }+ B; g4 B# c, W# q) t6 B
}else{
0 D( q" ]- X5 P0 t- ^, z- Y5 d9 k
SetForbid( TRUE );
* I3 a9 ~' r( v+ W* q& C+ }$ b
}
/ j- R! ~1 N {/ ]
}else{
4 Z8 a- y. y% h2 m
SetForbid( TRUE );
/ @; x, Z% o$ C3 E
}
0 B7 Y, @# [' c! u( D
return TRUE;
. _- F% a+ [% g I" |
}
F% L7 j( y& A7 z& {' q
, [! F Y5 ^( u: h
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
) s8 u9 r2 p+ `* ~. p% ?- a
{
3 @% K8 @: {* o. V
switch( nID )
8 i: H0 Z0 Q6 _
{
: X/ D8 n2 i3 j) E
case WIDC_BUTTON3:
3 |4 H) s" ^ L0 X
{
. t7 H1 t' C& o$ `; h7 v. d
bStart = TRUE;
- A/ m0 j7 ~1 Q5 v
break;
3 ^: v* M9 I% F% m
}
" }3 {2 s# c5 B6 p9 [, h2 e
case WIDC_BUTTON4:
! L5 m/ b" H: I1 q9 G; A. r5 F; B
{
% {9 m+ _- z& K: o
bStart = FALSE;
* t0 c, ]& O2 I( ]
break;
, G0 a9 j' T- O+ a8 W% w
}
5 K' Y# I4 p4 @: l1 @3 @+ N$ d
}
- n) f: k+ Y: [: F2 w
return CWndNeuz::OnChildNotify( message, nID, pLResult );
$ a& [/ j3 `0 }$ {; t* c
}
/ R: `0 R& d5 J ?/ r% d& E3 Q
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
2 i6 z8 H- E, B& a7 H( e( o' H
{
. L2 K" G/ E; W Z& W
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
, L! y" Y4 e0 P
if( bStart || !m_pItemElem )
# u3 f3 H% v% t) B4 z' [
{
. H( d, W7 g% i" @& A) J" ]. j
pBtn->EnableWindow( FALSE );
: N" L3 l- {% n! }' _; X
}else
$ }1 g+ ]( I6 v2 i+ r/ v( W
pBtn->EnableWindow( TRUE );
9 ^3 J* V- ]8 t* q/ X& o) {
if( m_pTexture )
& s! H+ w2 m; z2 ^7 _
{
7 c- h+ u# s8 n$ J" B+ C
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
6 k5 P& D$ m1 J/ U! X
if( wndCtrl && wndCtrl->rect )
4 X7 ]# `8 d/ U8 |" |
{
" T+ ~' x) o# l0 s4 C- {- `
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
* }9 G) L3 q2 U7 T0 l: H# p4 h
}
9 Z$ t' O0 H- n9 W4 ~7 _( N
}
1 I( D' U/ U4 f: ^+ h0 r
}
. [4 h6 |8 b/ o7 }/ o& s0 W
2 o) J7 G U8 U9 ^- T
BOOL CWndAutoFood:
rocess()
; a, ^2 }. ]; h6 s+ g
{
9 D& X' |, H9 \1 m7 j M
if( bStart )
5 ~) n# P2 n( k6 G
{
& M N4 p* F3 \3 Y
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
! S1 i7 Z7 n b2 D) ]
{
7 R8 K- p) t$ Q
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
& v0 S: e; N2 O; d
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
# q6 h+ d+ q# E5 H3 M) v
}else{
$ O& F( ?6 l, [9 n. j4 V
bStart = FALSE;
8 m6 D) Q- Y# L7 L
m_pItemElem = NULL;
4 p2 w/ g6 f8 j4 U" [' _
}
0 T9 v# K% h2 [# e& c2 A
}
( y( k# V1 o) m9 O8 J' n
return TRUE;
K# ?' ?4 g; g ~) K1 T
}
" |6 S/ |1 D5 O0 {- f% l. g( v6 T
7 K B0 M' x4 G [
登录视频废话:
# e8 `9 J4 {- ^( f
尾翼:
; F3 _% Q% Y$ v
) b$ \. ]& z. e! N3 V
代码:
* l- ~; w# n. w& m: Z( x8 w
I* |. s- w, T9 j% M
void CWorld::SetLight( BOOL bLight )
- i: d5 B# d3 Y9 q* s( ^: ^& h, _
durch
' p% ]6 @* F3 A# Z( y) ^' V
Code:
# h, a2 r |! ^0 q
void CWorld::SetLight( BOOL bLight )
( m1 L- s/ C; f8 }) R
{
8 C, b; j7 d' _/ x4 P; o
//ACE("SetLight %d \n", bLight);
" M4 x4 q4 ^- u" H0 B* k& s* D
4 Q4 W9 f7 ^$ F
#ifndef __WORLDSERVER
9 [2 K* ?, K" k; T Z
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
1 r( I& l _' B+ ]5 T* c
CLight* pLight = NULL;
8 q6 u/ n9 B( X, W& d) A9 p# C
! M8 j. |- ] d/ J# Z6 I
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
5 e7 o7 U3 W$ |4 G- C$ @: F1 |
6 ?9 m( b0 N! k0 |/ o. C6 L
pLight = GetLight( "direction" );
5 ^0 g- I& I6 d2 T& U
1 G5 o$ h+ A5 f" ^0 s+ H. t, \
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 j$ ^4 t! Z% `# P J
if( g_pPlayer ){
9 |4 Y3 {0 Q6 y- k2 w: ^
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
" _' P, _6 n. P
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
' P0 y) ~$ k: x7 T7 [
{
& y% K; E0 R/ O) `& D: P
if( pLight )
7 w# H5 _4 V g: ^
{
& m2 D: M$ {0 L/ V" X
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
, H. s* x- C, d. ^7 y% a' C4 h. e* i
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
5 i2 J$ M! L- \: w0 X6 Q. s
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
! x3 o Z) U- @) ]
' o! L: [2 E6 u* O* `' Z4 q9 Q
pLight->Specular.r = 2.0f;
3 |0 R3 M1 w4 ?* ? p" E
pLight->Specular.g = 2.0f;
) I/ X0 B; |3 B4 P
pLight->Specular.b = 2.0f;
8 s* O b1 q- T8 R
! p0 O0 Y( R. m. o9 U
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
- \, U& n" J" w( g( Y* J
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
! N# _& E) ~& ~3 {
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ Y) F- g" Y$ d
" Z; K3 Q; v# a, C
HookUpdateLight( pLight );
D' b W6 j* F4 E! P0 F7 B
# m" N. L6 Y- h0 M
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 N1 B# n; d! m1 A
# G7 X" V" E& ~+ u% ~9 H* \) a6 Y
pLight->Diffuse.r *= 1.2f;
7 j! `0 r+ n; M% v
pLight->Diffuse.g *= 1.2f;
" T5 \! C0 [6 a7 x2 _* Y2 t
pLight->Diffuse.b *= 1.2f;
Q! C: B: V9 x1 t7 f( L
6 {( x% i* f6 a8 D8 h0 P0 P3 z
pLight->Ambient.r *= 0.8f;
/ G. ~% ]1 {3 ^) |
pLight->Ambient.g *= 0.8f;
' {9 I/ Q9 Z: \* \' v4 K4 |
pLight->Ambient.b *= 0.8f;
, q, @+ q2 j- D0 j: z& Y; t- P; w
9 q, T8 c. t1 H- ~! b
memcpy( &m_light, pLight, sizeof( m_light ) );
5 l" ?$ Z+ h+ F* ]
3 C! l) Z9 A: q* n2 E8 }& `
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% _1 G+ t# H! {% k4 w6 }' {1 x
D3DXVec3Normalize(&(vecSun),&(vecSun));
9 X$ g1 T2 G: U+ x$ b" @# G
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
5 F; N I1 }8 R# h
pLight->Appear( m_pd3dDevice, TRUE );
/ Z( }) l; C! ?# `. a! f9 b
v) J0 J2 S0 G
DWORD dwR, dwG, dwB;
& F* I& T8 K& _
dwR = (DWORD)( pLight->Ambient.r * 255 );
9 F$ V: Q% K+ D/ e) E- O
dwG = (DWORD)( pLight->Ambient.g * 255 );
! n" B% {+ j3 P. Q% Q( _' h2 ~# Z- U
dwB = (DWORD)( pLight->Ambient.b * 255 );
, z+ u+ w5 v& P
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 ~( m2 |3 P5 O7 u( t# y
}
6 t: ~! n, q" [! I- S+ m6 r
}
9 O( ^% q! j! W K/ i7 d2 ~8 M
}
4 \7 ~$ [6 b; _0 c% Q, s0 `& f
else
- b, N" M* h+ x3 J7 G, t8 Y
#endif
; f) x( u! o9 d$ R3 m, l
/ y& R$ a' r7 M) i
if( m_bIsIndoor )
' Z5 p7 c1 P; D8 r- j( I1 e
{
1 a, r1 J+ U9 T" @, H
if( pLight )
+ v/ S* W" i' M: T: X1 \- C
{
/ Y: O% N( h7 I+ N, i& o) c
// à??μ oˉè*
; ^# Z; W2 e" Y+ ]+ O5 U: k
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
% L o) k# H1 I! r% a/ I
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
* w* _- _$ u& v# Q) f; y
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
. e+ Y& F4 S$ T2 a( C
c- w8 i8 |8 x1 _8 M, w
// oˉè* ??à?
8 ?; H7 D: @% F K
pLight->Specular.r = 1.0f;
: ?2 a; h# ?/ Z; @; D" e
pLight->Specular.g = 1.0f;
( x1 F( R! H) E+ J2 @2 L( h
pLight->Specular.b = 1.0f;
: z; s: M; S: {) c- Z, O# \4 q
// àü?? oˉè*
4 z1 v5 i/ l. ?7 d* P9 \- K
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
. C. Z Y ]# n4 c8 k0 `* d8 }& v
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
, V5 \. J' ~) p
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
) d0 X4 q% O$ v& P: q3 m! ?
# k( l9 u, E7 F* I+ r
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
: o, O+ d- {1 w) y7 K. ]
{
4 ] Z h2 [- L$ z
pLight->Diffuse.r *= 0.6f;
& s/ T: W. B# s; O% Q7 x
pLight->Diffuse.g *= 0.6f;
4 }5 z4 [. P j! \4 ]! e! G# C1 |
pLight->Diffuse.b *= 0.6f;
# H: A" q6 u5 r: t7 b# c
pLight->Ambient.r *= 0.7f;
( Z! ^) h) O1 ?/ a
pLight->Ambient.g *= 0.7f;
^$ W4 C/ Q9 Q5 O0 Y
pLight->Ambient.b *= 0.7f;
% W% g0 ]' u* @
}
/ p/ o! d2 \& j2 ]9 }' X
5 _9 d0 P, ?/ d0 v
#if __VER >= 15 // __BS_CHANGING_ENVIR
, [, K: A# ~' D
if( g_pPlayer )
+ R- n) G; O( @' X' t0 T
HookUpdateLight( pLight );
2 K/ C- a# j, o6 M4 s# K# c
#endif
8 u9 e, ?3 c' B- k' P$ S% k1 T
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ @: t4 N; D: {
2 q$ U7 e& ]( ^1 b5 e8 ~
pLight->Diffuse.r += 0.1f;
+ b4 U8 K e6 G
pLight->Diffuse.g += 0.1f;
* ]" r O8 n: x: o+ f$ w( F$ _) F
pLight->Diffuse.b += 0.1f;
# A6 ^/ ?3 N: z) g8 K5 W u1 Z
// oˉè* ??à?
0 G: A$ l$ R/ y# X
pLight->Specular.r = 2.0f;
' e7 {0 E2 d. p6 x/ \. B0 K$ l
pLight->Specular.g = 2.0f;
9 ^( ^# ^& ?3 K0 T
pLight->Specular.b = 2.0f;
, T6 I; `1 L7 W+ w. ?/ z
// á?oˉ
5 O% z- N7 t( a& Z
pLight->Ambient.r *= 0.9f;
8 D; C [0 M1 X
pLight->Ambient.g *= 0.9f;
& O* a! B" q* E3 ^
pLight->Ambient.b *= 0.9f;
2 h( ?6 V" A& A& j+ ]
. v! @ ?( ~7 R* ?1 u$ \3 k
memcpy( &m_light, pLight, sizeof( m_light ) );
$ B# ?1 _% c& Y) X$ C0 @
$ g0 H- G9 V) t
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
: V# }3 [: ^ E" S4 ^+ {
pLight->Appear( m_pd3dDevice, TRUE );
) A6 L" ~: x9 L6 u; [! F
6 |2 Z/ i, ]3 [3 v5 `3 [+ k
DWORD dwR, dwG, dwB;
0 u$ n/ M2 X- X$ e3 L1 b
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 V# s+ d3 }; b# v* X* v; x
dwG = (DWORD)( pLight->Ambient.g * 255 );
% m4 p6 N" `: Q8 m( ?
dwB = (DWORD)( pLight->Ambient.b * 255 );
' B$ v) c" M9 R5 `$ ^) |* @
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
W3 I: I5 A6 l
}
; x! u: c) k; T: N- W# D5 c! y0 G& u
}
8 ~' z% R# ?, ~4 Z8 N( j# X7 f
else
: B: Q3 B6 k! i
{
" C3 T# N2 Q# D* c
if( pLight )
" v3 m% e' C& X+ @1 y
{
' V( S5 B5 M7 `& n ^$ Q3 U
) h0 b! }( }! T
int nHour = 8, nMin = 0;
9 D4 O+ E* o4 k5 |& W& \8 R1 s
#ifdef __CLIENT
$ [& n3 ~- @* J9 [( m J+ e! h
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
7 E, ?" Z" Z3 `: `7 y& m
nHour = g_GameTimer.m_nHour;
# L6 {+ m# B2 E2 V
nMin = g_GameTimer.m_nMin ;
% D# V4 v6 ~; s+ ~8 p( t4 p# m
#else
1 I @7 D3 B5 A _( }+ n
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
7 o3 d. ^# C1 M6 C/ ?- A
if( m_nLightType == 1 )
3 R; A( G9 C: f2 O
nHour = m_nLightHour;
/ E# _# h; @! `3 G; C+ ~
#endif
8 t) g5 g8 e$ l* z" E
nHour--;
; e/ |. t) R: Y) S* G
if( nHour < 0 ) nHour = 0;
4 _+ d6 n U9 U& z# R6 c( A) P
if( nHour > 23 ) nHour = 23;
1 U, {2 U- q" a! M& [# X4 h* K
) L$ Z% u7 e3 p( C; x/ _, b" ^) d
//if( m_bFixedHour )
) `3 O* q. H# N
// nHour = m_nFixedHour, nMin = 0;
8 i! E; w ~ ~
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
; ^/ }" g. u, y; z6 J5 ]$ g
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
( w- ~+ k% B( i9 c* ^# y. E4 m
8 B0 ]; N" M7 E N7 ~$ p% c
//m_lightColor = lightColorPrv;
! o/ f: g" L; z2 m; {) R
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
% b! H( ~; t( d6 N- f
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
3 f" C1 i- W$ Y+ ]- F4 ^" d! ?
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
7 C! K! G3 i# a0 u/ \" d4 [ b& r% M4 A. y
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
1 X& l- U( @2 z' _, V
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
- l: Y- X% [3 i/ {) r. E
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
c/ @# A: k% `, Q* J3 L7 Z; b! m9 S7 U7 B
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
% p$ e1 J+ o: m9 l: ]. \, k$ F
' h6 K6 w; f' @) @$ p- n
// à??μ oˉè*
' S, V7 Y& C1 r% Z% K0 l' i! i+ ]
pLight->Diffuse.r = lightColorPrv.r1;
% z2 f! B+ x2 {& V* L( S" J& Q8 R
pLight->Diffuse.g = lightColorPrv.g1;
; q0 t9 G, f) X, Z- V9 {0 m. o
pLight->Diffuse.b = lightColorPrv.b1;
) ~2 @1 Q1 X: {0 X: A
// oˉè* ??à?
% ?6 Y: ?( _3 j8 I* T! v# f8 \4 V
pLight->Specular.r = 1.0f;
* U3 P( _" ? s) h, k
pLight->Specular.g = 1.0f;
+ B1 Q$ U- ~. _0 h
pLight->Specular.b = 1.0f;
- ^" `2 q3 ^3 Z, ~3 Z+ Y" T5 w
// àü?? oˉè*
7 R: I7 n* d! y5 `/ I: Q; G
pLight->Ambient.r = lightColorPrv.r2;
) h1 @3 I3 F# W9 V5 k5 q# H
pLight->Ambient.g = lightColorPrv.g2;
* b! i$ p7 c- a% W* c$ \3 d
pLight->Ambient.b = lightColorPrv.b2;
) n) C7 n4 H* N+ C" h7 k$ m$ ]
7 p' F/ N8 b P9 u0 n" B, A: L
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
- h( N% D' s @' U& l9 q2 H
{
1 S) l7 q$ \2 F, f, C
pLight->Diffuse.r *= 0.6f;
% k" h& [+ h8 J9 M
pLight->Diffuse.g *= 0.6f;
% Q% ^+ q- E8 c% W2 ]% E3 g
pLight->Diffuse.b *= 0.6f;
' i6 r! d3 v/ L/ D
pLight->Ambient.r *= 0.7f;
+ P+ T: b" v ~0 {, [9 y% R2 K
pLight->Ambient.g *= 0.7f;
8 G+ ]: O: S2 K" q7 g5 `3 O
pLight->Ambient.b *= 0.7f;
8 J- K d5 u) Y) |( g2 {* d
}
4 ?" @) Q8 K$ K# W) I
2 U# {( _# x1 U+ E# }& \- q
#if __VER >= 15 // __BS_CHANGING_ENVIR
: }, r G( D; {8 G, i
if( g_pPlayer )
s9 l0 g* X/ I
HookUpdateLight( pLight );
3 ?" v" f. e' Y; h' `
#endif
4 L$ r( B3 W! w, C( c7 V. r
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 A& t+ l( A9 o- r0 |! X& m3 R
9 u# v! C) R q6 `
#ifdef __YENV
5 T8 a* c$ w" N- U2 N2 l3 k
pLight->Diffuse.r *= 1.1f;
1 e% u: H/ ^/ F6 a3 y2 z
pLight->Diffuse.g *= 1.1f;
# l( i( H. ?5 Y% F l6 ^# C. S) }
pLight->Diffuse.b *= 1.1f;
* L' d+ o2 A d/ e' W" X. a* g% a
// oˉè* ??à?
! U7 ]9 {4 _- Y! b5 K
pLight->Specular.r = 2.0f;
' j- w5 {0 o% ^1 {1 l
pLight->Specular.g = 2.0f;
( a' h. Q1 R4 r( c1 U
pLight->Specular.b = 2.0f;
, D. a" B2 ]6 f, I- Z6 O1 v1 Q
// á?oˉ
$ M4 {- ]- I$ I/ o6 ?7 R7 O
pLight->Ambient.r *= 1.0f;
7 X! }' t# |4 O
pLight->Ambient.g *= 1.0f;
5 O( z# n4 c' [6 p
pLight->Ambient.b *= 1.0f;
# m% [) j, d0 j! C4 {* Q6 {/ O
#else //__YENV
. j8 q2 q: Z4 Q* [0 L5 \/ w
pLight->Diffuse.r *= 1.1f;
. R5 @9 v/ H8 |4 X; w
pLight->Diffuse.g *= 1.1f;
/ N1 ~; H! S" l* Z( I4 m
pLight->Diffuse.b *= 1.1f;
2 d1 n4 L( A/ q. {. X7 K
// oˉè* ??à?
, J- t* G$ G* F+ J/ P' }9 _( x
pLight->Specular.r = 2.0f;
+ z7 m2 B* m6 C9 G! Y' {; ^
pLight->Specular.g = 2.0f;
( ^6 `, U* u7 E @
pLight->Specular.b = 2.0f;
1 b* R3 a; ` |& \& _+ f
// á?oˉ
: a2 C- D2 G+ K% S2 j: H& v
pLight->Ambient.r *= 0.9f;
( D; w5 a" d, g8 H, P( r
pLight->Ambient.g *= 0.9f;
8 o* ?$ Y. _6 \4 P# S
pLight->Ambient.b *= 0.9f;
: l7 V* ~4 h4 n
#endif //__YENV
. B9 z3 Y+ K/ I9 D- I
1 X, Z2 a% ~0 @, h/ _
memcpy( &m_light, pLight, sizeof( m_light ) );
4 G! v, \' C Q+ S7 r5 V
. {7 i3 h- Y5 B$ |& N
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
( A( F! M& K" U" S+ V
D3DXMATRIX matTemp;
3 S3 j l0 A# v0 p
static const float CONS_VAL = 3.1415926f / 180.f;
* i. m7 d: l T- s/ s8 R
5 B6 Y1 U; U# F8 d% ` Z: ]' R
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
6 D% w: _' t$ l# b3 Y- x
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
3 k" S6 F; H0 ~
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
% {5 X7 _9 T: K8 z, u+ F9 n4 H0 K9 r- w2 `
pLight->Appear( m_pd3dDevice, TRUE );
; a3 O u# `: Z+ `6 T/ c
- n/ X6 c. M T/ S
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 b- s7 C) i) |9 T' c! F/ v
// D3DXVec3Normalize(&(vecSun),&(vecSun));
# Y6 z8 O2 x" l
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 |& R; c, l3 V: i1 j& k
/ H3 O7 W& a7 p, b: [1 r+ q# ]6 N
DWORD dwR, dwG, dwB;
7 J( c! g8 S/ D e" P9 m- B$ X
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 w' h Z1 _1 X9 S" w
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 O7 x* G2 Y2 ~3 ~
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 z! e+ @2 `9 t" B5 y {, N
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 k2 G% A9 ~# s; g
}
* D5 \, ]( Z, n! C3 p. G; \4 n
}
- o! x; {9 {8 E; \ H* v
% _' ]5 z% Y! b) G
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
. Z7 T9 V1 C# h
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) );
8 [+ `4 x( u( b8 V0 |. p
::SetLight( bLight );
& o( i% }, `. i+ @- w
1 r5 |; L! z* p' F; h" o( m
// ±ao? ?D?í???ó á¤à?
j( Z4 p& k( B5 p& L
m_pd3dDevice->SetMaterial( &m_baseMaterial );
6 _0 I- [) S0 a3 X: K7 K7 g0 u
- ?( [* t: P2 e! d! O
#endif // not WORLDSERVER
" f; e9 U& @7 m5 J9 p
}
9 i7 o0 b' t' w# E
并更换
$ H! {2 h/ g+ d+ Y3 q7 e! H- H5 {& x
Code:
) P) Q1 I U! C6 ^; Q+ W7 C6 b- b
__FLYFF_INITPAGE_EXT
5 ]: r2 h( Q) C- {" K
定义
$ ]; q8 B9 R8 ~) @6 Q( _0 X
) d0 Q1 |2 P- N; |
' G7 [; t- R- _ t+ E( w' X M
- {2 x, X9 Y' i# ?
$ [5 y& C7 M C, D2 |
现在终于删除我的狗屁加速...
( L2 D' p0 K" }1 M9 K
) E# O1 P9 h" w/ k! j) w- M
* c9 d e* f6 Q# v% ?! G
6 Y6 t0 y# [3 _% U% X4 r
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2