飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
/ V( m0 {9 H# L n( o+ q( R7 a
尾翼:
' M) n- A! V2 _- a
7 `# y% X6 a. P ]- I, r
代码:
+ n+ V; D, D$ |) k
CWndAutoFood::CWndAutoFood()
- x. A" c. t2 R/ ~) |# O% \
{
0 ^& d p: s4 q* f
m_pItemElem = NULL;
+ L, `& k/ W& ~, }, g$ R2 I$ C
m_pTexture = NULL;
- g4 A, v& [; x: [* g1 d
bStart = FALSE;
S# J4 s: a2 y- C8 R; z
}
7 }* ]0 y! U& C( [4 I
; f) q5 K' t$ @; d- x
CWndAutoFood::~CWndAutoFood()
8 Z7 Z8 h* n+ f/ Q3 V0 u# x; P
{
( b3 E2 b1 `; N+ `$ y% \& m, W
AfxMessageBox( "AutoFood ist gestorben
" );
! t( K" V' b$ M) s+ l% Z# N
}
! g4 e2 d/ b0 g
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
$ ~1 x- q! }# O" ~+ N3 L7 s2 s
{
5 X& y3 M- b& ?- c; Q& z$ M. h
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
4 u: K! {- t9 c) F) L7 D
}
. E! j/ f L- Y- |
2 p/ q, I; Y$ `, ^9 T( A% N( {9 n; F
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
0 a3 N. K+ K' ^8 [0 B
{
% b: ?5 `$ F, R8 E! w
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ t: ?( v* F' i& R, t
CRect rect = pWndCtrl->rect;
1 h- R6 M% f) l7 ~9 N3 f7 l
if( rect && rect.PtInRect( point ) )
$ u _* s% q0 Q7 I& {
{
% B0 j* m/ Y0 ^9 T6 P/ x
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
3 T- l- Q4 t I2 K1 P
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
& T- Y. t# l4 v4 }6 E
{
# N0 L8 I- X2 O/ J0 _$ |" F) U+ I( N' x
if( m_pItemElem )
& W+ S2 ]# Y C, [% g, J
{
7 T9 ~( U, p( E* S( Z+ _9 d
m_pItemElem = NULL;
6 D# M& J. K ~: a* o0 w, J
}
7 H E4 k n: V8 a, m) ~
m_pItemElem = pItemElem;
5 c1 O8 |9 d/ Q4 `
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 ]; N& O# f; k) f" I' V- A) i# u
}else{
6 h- k' _! V ]7 V ^# {
SetForbid( TRUE );
: d, v A5 f( I* P, d) F
}
# q+ i4 j$ |! n& g% f! C
}else{
8 `# ?: ^& X; A/ b; F# U
SetForbid( TRUE );
4 ^3 v+ `3 q3 b+ Q
}
7 ?! N" n6 |6 `
return TRUE;
" z4 S1 i( v5 k0 o8 B( f8 r+ S, P4 z
}
; ?3 i& x. L0 }, u6 B! T
4 F9 T! d2 P! P, ?7 a6 P
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
6 H, h& c6 _5 c
{
9 H, H# c5 m3 A- L6 a3 x8 a1 p
switch( nID )
* h ~, \( k; }: R
{
. t' D3 v: p/ C3 I& T( }# A
case WIDC_BUTTON3:
+ |# D7 u6 h, Z; c5 g7 j$ T/ i z' n
{
" d8 W2 }1 c# f! Y( U
bStart = TRUE;
2 M* s" E3 p1 j* X7 p) _
break;
3 t! ^8 p/ t- r. a8 S% V. f& b
}
: ^/ r; \% [1 J# O. [" P5 r2 r
case WIDC_BUTTON4:
& Q. R. [5 J* N& M! m5 R% B9 J5 n
{
3 ?& s. K }6 g" B
bStart = FALSE;
7 Y# A& S3 b2 `( N S# S3 e- t, t, ?7 J) P
break;
- E; [ I2 D5 x- m+ b5 [: @
}
7 ~( [# r0 x6 c9 v. `( m3 _
}
* q# r9 f% F1 J1 p% O3 F1 V* Y1 p
return CWndNeuz::OnChildNotify( message, nID, pLResult );
/ u& I" r$ d) x
}
* S* _$ h! s/ M5 }9 f
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
! L4 ?% |0 t( u, O; z8 e* A
{
1 M4 P" ^8 h* b2 h8 w
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
/ s$ {$ r! f0 R2 ^( H% X4 K8 t2 Y3 w
if( bStart || !m_pItemElem )
0 q( o3 F8 i m7 _1 q( U0 a e
{
9 y# Y: y, c6 h0 L: w1 H& ~6 s
pBtn->EnableWindow( FALSE );
/ j& r2 n. P+ F% b: g y
}else
" R9 r0 o |& p+ {9 O6 n% ?5 e; `
pBtn->EnableWindow( TRUE );
2 ?2 @+ z# j4 a$ d$ A' w
if( m_pTexture )
2 C/ u O- x+ y7 d; i4 J* H
{
! p5 f1 t& z/ L; I) a( h2 o
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 A* q2 V4 j2 k+ i- E
if( wndCtrl && wndCtrl->rect )
; N* `4 m8 A# b' s: `1 ~
{
( ]' r2 \8 m. `" t! C& A) k
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
/ R& A, F# a1 S1 J6 ~6 M: l+ [
}
% x! \ _ F/ L# ~
}
; t- H8 K3 i( y& R7 R, W" S
}
2 _" u% s7 X3 l
$ Q# }1 W6 n1 `5 t9 ~8 L3 t/ W! w6 U
BOOL CWndAutoFood:
rocess()
' k3 Z! N2 t+ W0 e* |! y
{
, g3 y0 k- {) p& R
if( bStart )
% S5 C$ m; Z- U7 t2 J* m3 v
{
' g. r3 ]9 b, |) V9 @( w
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
; w% i: c7 D5 k
{
- j% D; ?, M9 K6 H# e/ q+ q$ J
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 \4 j2 }+ ]7 Q- p( U* P! N! e
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
; R. \9 J! P+ Y' W$ S
}else{
$ l' ~) c8 P1 p; l4 {
bStart = FALSE;
1 d$ T8 Q* P5 m7 O5 _0 {$ J0 e
m_pItemElem = NULL;
4 Q. j5 r8 |/ k) k5 z
}
. W9 d- {8 m" Z' _9 m! M! i
}
2 K0 [. L2 g" ]' L# O
return TRUE;
8 i( F' [" n8 f R- ~$ F6 U
}
* h! p: g& p! o4 |6 p
8 y$ n; `& x/ W
登录视频废话:
4 q: T6 Q9 T2 u; f+ W8 q2 o C
尾翼:
' g( W, y+ v0 m! V U
6 q/ W) ^; d; G K. U" o
代码:
, }& W e( ?" v: o: K0 q( X
5 A* i7 |$ I5 H* \0 C3 U( o* D- R
void CWorld::SetLight( BOOL bLight )
/ ^% i! k5 v# |
durch
; r( ~3 t. E/ B: F) x7 ^& w
Code:
0 l% j# ~6 r6 A! z# V5 D, Y. N
void CWorld::SetLight( BOOL bLight )
# S6 I5 M% A0 g# v0 h2 a4 j
{
- D) @3 i g; t4 s; X9 H: U
//ACE("SetLight %d \n", bLight);
, k) U9 J! W ~& i
4 E6 m& g; j. t; b8 v
#ifndef __WORLDSERVER
; n2 P* m6 @% R) M7 s+ X. i
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
( u0 q- T& A% X- P# [
CLight* pLight = NULL;
! G. u$ f9 Q% R3 i; T( X5 N+ i
( E: N/ J. Q4 f. V
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
% {7 c& k( O$ H+ c
* p: @) \3 @. U
pLight = GetLight( "direction" );
6 F$ m4 q! ?" W+ {, m
! S. z. j4 J6 E+ o5 K
#if __VER >= 15 // __BS_CHANGING_ENVIR
- S" Y, S; q4 v, l( f
if( g_pPlayer ){
! A# }2 Q1 c3 o# A6 `$ _
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
@) Q, r5 B# k" g" d
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
# b0 S. t$ X; s F, K- [
{
$ c% `6 {- Q( f" K3 C, r
if( pLight )
8 Q) I' E5 F- [0 z" A( M9 g& O
{
6 z; }$ q; D6 |9 k7 Z9 e
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
1 S2 B* i# p# [# g1 e0 ^
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
3 j7 c C! C8 A& _1 `1 _
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
- @8 F, B) E" x8 J+ X* }& V. ^) r
( U6 o M- U: \& D/ N9 ?
pLight->Specular.r = 2.0f;
2 P5 k0 O% C8 C" m% \+ i& p$ L
pLight->Specular.g = 2.0f;
4 f6 I/ s7 k5 |1 R& O7 ]
pLight->Specular.b = 2.0f;
& n5 r, T" X/ P
+ ?" [9 E, _- A1 ]* T
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
; O4 Z. T, `4 N- B& `$ e
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
# p. u) s& s q
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
5 L5 s9 s0 f/ X/ U/ B: o6 h8 g
7 H3 Q. @2 ?+ ?- A2 o$ t. h- V
HookUpdateLight( pLight );
D: b7 b; X7 X) g9 E
9 H; J: V9 V* M" O1 O- d6 j8 q
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% f2 _9 P% g1 E
& [/ J( |# L& j+ D' d8 A! o
pLight->Diffuse.r *= 1.2f;
. }, F( i' D9 |/ f
pLight->Diffuse.g *= 1.2f;
4 S+ G2 R3 G4 N) b
pLight->Diffuse.b *= 1.2f;
4 X: z* |* c+ R; B; g) y
$ f- M4 u+ K9 m3 J
pLight->Ambient.r *= 0.8f;
/ q5 X( }$ {7 c: \) `! \
pLight->Ambient.g *= 0.8f;
4 q, S4 K6 I1 o/ w+ O3 e* X- X R
pLight->Ambient.b *= 0.8f;
# _. m- a% b4 ^, \
5 \, ^- `) E# k, b q3 D
memcpy( &m_light, pLight, sizeof( m_light ) );
4 a z; o; c; J3 i) c
" X, W" \. [7 Q5 t9 r5 o
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
, U* T7 O+ K9 y- D; C
D3DXVec3Normalize(&(vecSun),&(vecSun));
9 y G' P! y1 k. B+ B
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. x7 f8 Y( O* y* A
pLight->Appear( m_pd3dDevice, TRUE );
+ ?' N6 D. m8 F* c: Y
& ~' b. ^9 s) w, p" [$ @
DWORD dwR, dwG, dwB;
8 O. l6 E5 U- ], V, ^
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 a; w! b$ I. l" o Z
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 P7 K) v5 D5 [* \, [* f2 h
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 U( f" d1 f) w5 T
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 s# M# a; f* ?4 F4 [
}
' ]& r+ M6 Y% R
}
! `0 _+ V- H# C d# h ?. w$ T
}
" K0 Q' r: q2 R1 e% \: h
else
1 X% F) f$ H" L& c
#endif
) z/ p) x' s& Z/ H
. q% A7 a( X1 ^; o$ X0 i
if( m_bIsIndoor )
: l9 [+ t' b* J) b/ q) h8 `! S' s1 x
{
* E* X) j8 g; U: Q" _
if( pLight )
6 m2 ?/ m8 C$ R; g
{
$ J1 d/ A* L7 d3 S0 Y0 W! m2 d+ F* x5 k
// à??μ oˉè*
) h- P7 Y* A* _. z( ]; B& i
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
6 P. m# ]8 m* ?1 g& e" ]: q
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
3 g. P/ |, Z( c7 {8 W; u1 Q9 B8 R
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
8 E8 ~5 C: j! n8 i+ M2 _
8 m9 t& `* a e0 v4 K' W
// oˉè* ??à?
& V3 }% g. {' l1 |. e9 a, N8 {# m3 n
pLight->Specular.r = 1.0f;
* z4 _) T7 D, f) [$ T ?; p \3 {
pLight->Specular.g = 1.0f;
5 f- p$ L' R& W8 o, V7 @4 ]4 N
pLight->Specular.b = 1.0f;
, l) l0 x8 s- L8 d6 _$ ^
// àü?? oˉè*
- m' b, D$ ]& h7 W! c, G. u ?4 c3 y
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
8 }7 w0 r5 n- U; u
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
+ c4 O' D. @1 n* S1 d) g) s" j
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
8 {$ l8 |/ G; f- E1 C; o& }& z
* M: _0 k6 w) B8 J
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
: ] D9 x4 M7 b, d' w& q2 v! s
{
; P& j: {8 z1 {- H: ~, i8 j
pLight->Diffuse.r *= 0.6f;
' Y' r/ c$ n/ a r& s
pLight->Diffuse.g *= 0.6f;
. j+ R* G7 d' M
pLight->Diffuse.b *= 0.6f;
4 ^/ T6 a$ o! k; V
pLight->Ambient.r *= 0.7f;
+ ]! q: J, m1 h' N4 l; }
pLight->Ambient.g *= 0.7f;
; R$ @! F* l. `1 n: C
pLight->Ambient.b *= 0.7f;
- ]8 r, w b# n
}
3 F! t; }8 J* h/ S
! G5 v$ O9 o4 U
#if __VER >= 15 // __BS_CHANGING_ENVIR
: l/ t# O T& a
if( g_pPlayer )
9 H% S# L) V: L' z9 y/ M, s# M
HookUpdateLight( pLight );
9 p* i$ e6 D- t9 Y! { K" L
#endif
" }; |1 P4 o" B, D
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ G( q, @" h3 {' u* `5 a7 A
" M2 }5 w( W; k% B
pLight->Diffuse.r += 0.1f;
0 o. R- _% O, c; n
pLight->Diffuse.g += 0.1f;
5 r) t0 F' ~# G/ ]1 ~' K5 c) K# ^
pLight->Diffuse.b += 0.1f;
' s9 t, t8 p" E) v
// oˉè* ??à?
, r1 b' o3 Q3 D1 J L, a
pLight->Specular.r = 2.0f;
0 [+ Y5 a) W n
pLight->Specular.g = 2.0f;
/ ~/ u0 j* N3 C ^% {8 ]
pLight->Specular.b = 2.0f;
# }3 A9 {$ R7 _: f) I
// á?oˉ
, P) b& { d" z
pLight->Ambient.r *= 0.9f;
$ B' E! m: r( c' H3 d; r7 n
pLight->Ambient.g *= 0.9f;
/ Q3 s5 [( v7 c# q4 B
pLight->Ambient.b *= 0.9f;
g) S8 Z/ v C4 @3 q( z& V5 I
/ h" u1 M3 @/ d. r" ]/ M1 z
memcpy( &m_light, pLight, sizeof( m_light ) );
3 d) h+ V" d) C* [/ ^5 [ v
/ B/ Q& s, W& n' L0 k
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
: w# M. u1 T% U5 T
pLight->Appear( m_pd3dDevice, TRUE );
: i5 ]' h3 Q6 u* V
8 B* }- H3 m. \/ A6 s0 }' n* `
DWORD dwR, dwG, dwB;
& z2 B! t1 g# k/ |, B
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 W) V- r* n6 w% I P
dwG = (DWORD)( pLight->Ambient.g * 255 );
: w0 p1 Y: P! u; R- L1 v9 X7 h, m
dwB = (DWORD)( pLight->Ambient.b * 255 );
, s; T; n/ }# ]+ [+ e* p0 ?0 B: x/ p, ?
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: ~0 O3 ?4 N. o! V z9 Y$ t
}
0 t# @( [6 \( t8 t2 y! ?
}
. s' ^2 `; M: u
else
5 p3 [' |9 v- e
{
* f4 t& ]8 F/ F- a" ~# [/ G8 {
if( pLight )
+ A6 @& C! r9 c$ I( C
{
; O9 A6 }: S& { F
5 a9 X$ R1 w3 s( F2 V* B$ V
int nHour = 8, nMin = 0;
' s6 {# L' M( ~8 z" O: U# m8 m
#ifdef __CLIENT
4 T! D0 N8 Z+ |8 T; b, m0 ~; j) N
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
. e: w& \: |9 e: \, J0 P
nHour = g_GameTimer.m_nHour;
7 h- D% s" h2 j& z. c
nMin = g_GameTimer.m_nMin ;
* `$ K" X3 u0 S6 X: ?
#else
, h9 d4 ~+ }% A, M* t
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
- U& G- D, k1 A, v2 i! c. R
if( m_nLightType == 1 )
$ h8 w. l, s% _7 {# y% Q
nHour = m_nLightHour;
4 k+ p3 C. Z+ ]* K
#endif
( _, i* k% G' @
nHour--;
: }* C/ Y" i( ]$ m! x* L) n
if( nHour < 0 ) nHour = 0;
N- D7 q# I; w" L1 o5 z2 |0 M2 W1 t
if( nHour > 23 ) nHour = 23;
, V W5 T$ W) |* r$ y; [
' y: t) I4 C2 J2 J( t4 ` h, | `
//if( m_bFixedHour )
& _7 m- R, B& F' ~4 V
// nHour = m_nFixedHour, nMin = 0;
4 @- \- m5 v9 n1 {' G( K! b
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
: J2 n, q+ n" L' n# u. b
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
9 P! w- o5 K: a8 ~8 P0 K) u$ g
% U* P: y5 e% T) P1 ~
//m_lightColor = lightColorPrv;
4 x; h' M3 B4 ?/ k- ~6 B
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
7 ~! i2 i7 Z5 p) t+ V7 A
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
. V9 J$ ` P! n
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
+ @. v8 a6 A$ Z$ h3 @2 O$ y
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
" V) S Q/ ?7 G0 J) L7 @, N/ [2 _
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
( w( l# k# M: x6 a
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
n, B3 N" |6 O3 h/ ]3 j
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
4 f3 u+ D9 z) t [# O* A9 ]
/ M. |: {- I: I6 ?
// à??μ oˉè*
8 h: r9 T; j. e8 P% ^
pLight->Diffuse.r = lightColorPrv.r1;
- m. S+ p* c8 x. y3 z
pLight->Diffuse.g = lightColorPrv.g1;
- O/ Q; K$ f- y0 J4 k6 x
pLight->Diffuse.b = lightColorPrv.b1;
, z! T, l# F) Z/ S
// oˉè* ??à?
. _/ c7 X$ C1 ]
pLight->Specular.r = 1.0f;
- Z5 R G# h+ o( [6 ?
pLight->Specular.g = 1.0f;
3 m+ a$ y# N8 I- S: K& e0 v" d2 ?
pLight->Specular.b = 1.0f;
3 y# Z0 ^/ c7 c' M U/ Z3 B
// àü?? oˉè*
$ t$ s9 O! X) P8 F) Z
pLight->Ambient.r = lightColorPrv.r2;
( [5 b- O- k& z5 T& i
pLight->Ambient.g = lightColorPrv.g2;
5 @! ^& Z& h# [3 _8 G: V# d2 |
pLight->Ambient.b = lightColorPrv.b2;
& ~) ` ]" N' V5 O1 E: o8 @
% \9 h' u' @5 _' b0 g- Z+ H1 [9 ]
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
+ {- R/ ~4 `' n
{
; B4 Y+ y5 H" p5 D% n
pLight->Diffuse.r *= 0.6f;
1 ~/ R8 b0 r4 F" u5 o
pLight->Diffuse.g *= 0.6f;
+ b" w4 ], L5 q/ H4 G; i- U5 t u6 Y
pLight->Diffuse.b *= 0.6f;
: K; q1 z0 ]' E( R9 ]
pLight->Ambient.r *= 0.7f;
1 P; d: a- c0 |! ]
pLight->Ambient.g *= 0.7f;
% {' ?/ x5 z& R/ ?: j( u! b5 p
pLight->Ambient.b *= 0.7f;
+ ~5 P7 Q% j8 c) ?
}
$ X* T8 Q+ m& ^6 Z
- N- E( \2 Q) h5 |8 b
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 q3 t, j) S8 l5 ]7 g4 j4 _5 V, C
if( g_pPlayer )
% ?; @- U: Q2 G% Z/ |5 e
HookUpdateLight( pLight );
: Q0 ?# t: M7 }& l
#endif
0 F; ] X( D8 T0 Z$ D4 r- ^! P, u& t$ H
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" H1 r8 F1 |) T
& N1 e# h& h7 C& m8 Y
#ifdef __YENV
* O Y0 k1 m% r B
pLight->Diffuse.r *= 1.1f;
+ \8 I% W. ]: ]& t' f
pLight->Diffuse.g *= 1.1f;
# z# q, I+ I" G* R+ \+ k
pLight->Diffuse.b *= 1.1f;
4 G. v% B7 ~! t1 n% W& x5 n6 o" v
// oˉè* ??à?
- A; l) s# n, }, Y2 U
pLight->Specular.r = 2.0f;
3 O& P8 r6 _8 C) E
pLight->Specular.g = 2.0f;
5 Y6 b7 { I ], N" G j5 F
pLight->Specular.b = 2.0f;
F* \& g. O/ J/ r9 ~
// á?oˉ
2 H! w3 k2 _; f b' C; V1 \! T# ?
pLight->Ambient.r *= 1.0f;
6 D4 [& g t. e0 H$ X" Q8 m2 n, Q" T
pLight->Ambient.g *= 1.0f;
3 N v& n) y5 I/ z' r2 p' B6 \
pLight->Ambient.b *= 1.0f;
6 K( T% @5 x2 `+ D4 R0 \# g. h+ m
#else //__YENV
$ ~0 n* u7 h' i
pLight->Diffuse.r *= 1.1f;
, L6 J( c- F7 H& J; Q! o
pLight->Diffuse.g *= 1.1f;
; N% Y$ K; f; D7 c8 h. J1 V. k
pLight->Diffuse.b *= 1.1f;
; P. O' W$ g1 W- p( ]% R$ |
// oˉè* ??à?
* N+ j, Y! l+ u1 H+ [$ {$ p6 e h
pLight->Specular.r = 2.0f;
/ v) S9 I `2 H' G+ b* Z
pLight->Specular.g = 2.0f;
/ K/ k2 U S# n6 S8 S
pLight->Specular.b = 2.0f;
4 s$ @7 ]8 h8 r. k2 ~
// á?oˉ
3 [* j: l$ M% p* e
pLight->Ambient.r *= 0.9f;
k9 b: ^ V) R1 h
pLight->Ambient.g *= 0.9f;
6 e. s4 C, n1 m4 w+ O
pLight->Ambient.b *= 0.9f;
1 A$ X. J: \" l, A/ b/ i0 z
#endif //__YENV
, \# g- L: X8 N) A
' A) \. j/ ?6 y. y2 N u0 {
memcpy( &m_light, pLight, sizeof( m_light ) );
* H J; n3 _, G) L- [5 B
7 W3 b& f7 r4 Z/ W
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
! N- h6 Z5 C- B4 j
D3DXMATRIX matTemp;
+ ]3 S+ Z8 R, r& ?$ c3 N, C
static const float CONS_VAL = 3.1415926f / 180.f;
2 Z. P" L: E7 m3 d; z3 U
" {' z) T0 e. u6 a0 Y- m
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# b) z! K. n0 g j `; u
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
0 c& H: W# T0 B
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
. ~+ p- v# e2 z# |" w5 J
pLight->Appear( m_pd3dDevice, TRUE );
; ]" s$ Y! g, {* \8 M
& b: P& i9 a" X
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; ^6 a! [9 L' \
// D3DXVec3Normalize(&(vecSun),&(vecSun));
0 F( [$ _8 w+ |: p; d
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ m$ K, Z- J' x8 H, g6 C# X% Y
) a( J$ o: T8 F; j
DWORD dwR, dwG, dwB;
: |- n5 A1 l2 }$ F4 N) N; s P! u+ P" |
dwR = (DWORD)( pLight->Ambient.r * 255 );
& I7 ~1 D- l, c
dwG = (DWORD)( pLight->Ambient.g * 255 );
' g2 c3 j! x' u/ G: [3 _: Y
dwB = (DWORD)( pLight->Ambient.b * 255 );
* f! R& G8 f$ g. L0 D3 t7 C
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* D0 [& V+ q2 z7 J( H
}
. h! o: e5 Y8 }
}
8 ]) b" _ r( j# ]+ b
5 t/ f9 m- g& x$ ~6 Z/ x- g
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
1 R2 A8 V# ^) o& E0 i9 \
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) );
1 T7 R$ A8 ^+ g7 Q! H
::SetLight( bLight );
! V) m. t5 M6 x9 E
9 R3 ]: D& r( C
// ±ao? ?D?í???ó á¤à?
. ]4 L: ]- C k. \8 b
m_pd3dDevice->SetMaterial( &m_baseMaterial );
7 r k1 ~3 H4 d# t4 q7 p
4 O) v" F0 L# r# b7 A/ S" h
#endif // not WORLDSERVER
' t( u- U6 a! y
}
3 a* g3 x/ L N' M8 i
并更换
6 G8 f. v1 N7 M- E6 I/ c7 P+ Q: l+ \2 L' R
Code:
" _% ]) M9 V, \$ z% V; n5 l# R+ e7 K
__FLYFF_INITPAGE_EXT
3 F$ e; |9 O( @7 u+ `
定义
# v1 a+ T. O& u; w, n' Y* H
. n9 w: M) M- U5 G2 f1 V
! g* U9 a T- f) \
3 j. A! R3 L. t6 v+ [% j- N% J
; R2 H- S+ N, ~7 i
现在终于删除我的狗屁加速...
& m5 H" @$ J0 `
+ J" Y3 A0 ]& R! w
* w9 ^0 m! D$ N& i
# P0 f. w3 }& }/ S; H: m
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2