飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
( [! Z6 x1 J1 Q7 V) [
尾翼:
/ o1 B4 [/ N- j/ F' |. ?4 O
/ I( A- F0 V- T( o' P9 B. [$ Y
代码:
( V5 h% S8 e2 O8 f
CWndAutoFood::CWndAutoFood()
_8 d3 g! |1 }) b" D* z
{
/ r7 L9 b+ p5 C' @% h/ V/ ]
m_pItemElem = NULL;
& u& n1 \5 `* _5 Y
m_pTexture = NULL;
2 s" H( F* r G9 o$ D
bStart = FALSE;
3 c& L0 i/ B+ o( V3 I% h
}
6 w. \& g: j: U8 h. Z1 i, n
0 x$ o3 ^! Z# O. g) {
CWndAutoFood::~CWndAutoFood()
! }5 c1 |( x' M; @) k) [
{
; w& X* f* K7 @* c8 H, O' ^0 D
AfxMessageBox( "AutoFood ist gestorben
" );
! K$ R/ d2 v4 g) s1 _
}
M2 p& R9 k: Q4 Y8 |9 x# Y1 D" W
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
" n j: T$ \! F9 x5 i+ b
{
0 ^$ x. m+ v" E; J9 d
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
2 V: L! z$ _- f
}
3 d% t b# e) _( i* l2 R: h+ R
5 ^: f1 Q) M. L2 m; g
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
. E7 X$ k1 { f7 Z
{
. J, _5 _# G+ z" U
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- k5 s8 a- n( b4 w4 |0 h2 _1 y
CRect rect = pWndCtrl->rect;
7 ^5 w& Z0 y7 e4 F
if( rect && rect.PtInRect( point ) )
5 D2 Y$ `5 _8 S; k/ ]2 x) @' @. g) |
{
* ^* g1 J p; R* k
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
, |6 k( y* d$ L" R' I- B
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
1 o8 S, T6 S; R6 B+ n/ v
{
* S7 o0 x4 m- u. c& e, b) J" m2 \/ \
if( m_pItemElem )
. w3 Y. M4 B! X3 G* p3 n5 R$ U
{
9 k3 I3 X2 b2 f! w* o5 b+ V
m_pItemElem = NULL;
% f" b. p; O7 H' D* @
}
1 k2 l% n& Y& I. m
m_pItemElem = pItemElem;
1 A0 C/ K1 v- ]
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
4 p# t: h% Y ?% }! R
}else{
% V! R4 G2 x& D4 x
SetForbid( TRUE );
. A. w! U$ v/ b2 t9 J4 Z1 F0 Y
}
; I! @1 l/ y+ @ \! n/ [% F0 S3 D
}else{
0 b* ]" h3 k- k7 `+ z- @4 u, T
SetForbid( TRUE );
2 y: U2 L8 Q7 N6 {6 U4 W, ^: Z
}
5 L- J% u0 d0 |6 H5 R$ K0 k
return TRUE;
$ w6 v% F+ c$ ]5 ?
}
( v$ |- D" h. u0 J1 L. L% M! b. c
# y, }' R# ]7 ~, i
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
* n; z) |9 N: {7 J$ q x
{
; p' f5 U4 W6 L/ C0 x, p2 M
switch( nID )
[' X5 T6 v& g; G) U4 D
{
' b W% M* K j4 v" p1 H
case WIDC_BUTTON3:
0 {8 X7 L' z* _& e2 P
{
# q6 V* K; W, B: B
bStart = TRUE;
1 K, k% a e/ _1 M7 G
break;
d, w% c1 b* n: P+ D$ U+ [
}
# E! j$ @+ B, E3 X; M" s0 x8 h% q
case WIDC_BUTTON4:
7 ~% v7 a C: ]3 Q% ^0 k- h+ P3 x" P& W
{
2 \. j1 O' @" e! N0 E
bStart = FALSE;
4 D, K, u! c; D0 O( U; |5 q
break;
5 K3 u8 F; U4 ^6 L, h
}
! D1 ~: x# [" W6 s9 K( I: C" F9 H
}
' E/ B: t$ S# S8 H& J! G
return CWndNeuz::OnChildNotify( message, nID, pLResult );
+ b2 w7 I2 A! B6 c! G# g5 ?( F
}
# O; T7 W" Z$ K6 w8 O& m
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
$ X* R; W U& C
{
* |' |; L+ K0 x
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
d! K" G6 T% P4 z0 s
if( bStart || !m_pItemElem )
- [) l# C& X- r! B( `
{
: Y9 \ W4 [) P
pBtn->EnableWindow( FALSE );
, t' U2 G3 j9 a9 m, ]" z! T
}else
2 j% ~4 Y# H9 {* r6 q {9 R5 P" L& [& \
pBtn->EnableWindow( TRUE );
5 N0 U5 W) j" Q0 ^/ ~5 Q
if( m_pTexture )
) j. b9 u& y: d. s
{
& @/ v' h$ f% E# ]* v r
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
9 r U* k! z. |/ _1 C- s+ B
if( wndCtrl && wndCtrl->rect )
i7 p3 L; `* P% O- J) I- k
{
, j+ ?, t$ e4 F, J1 [+ b/ P0 i
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
# u6 G4 z8 z% v8 A
}
+ z9 c) f& C6 c) H3 R& U: \4 l
}
v/ A8 t- R, u( n- M6 D& [
}
3 q- w( a- c7 K2 K+ _# R
6 N" C% w0 O) m# i) `- Y
BOOL CWndAutoFood:
rocess()
$ `9 f+ ] s3 F! t5 I3 ]
{
3 t% M& P: d; K- O+ a" t7 R$ T7 }3 m
if( bStart )
: d; c0 M& J' r' M3 H1 V+ Z
{
4 J+ R. h9 g: P ^, K% O
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
6 f7 _2 U# C5 ^) ]+ a f
{
0 U3 W& ]/ T6 C2 D
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
' x) f! o/ z0 R6 g4 p9 C
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
7 M! _# \8 F! D
}else{
+ }* R( }# j n1 h( I3 W ^) B. K
bStart = FALSE;
2 @2 e6 S5 @' r+ {* P
m_pItemElem = NULL;
3 d* N4 ^7 a' b$ L) Z
}
0 s6 [+ l- m @) u* Z) {
}
+ B2 e3 l7 w5 n" b, [; G: p
return TRUE;
2 d; U3 U9 y4 X9 Q9 ]
}
( Y$ i0 n4 E4 [9 C
}/ D+ E+ K1 m: z; E, U
登录视频废话:
1 D+ z" @6 H+ z5 {# c! _4 p
尾翼:
# V! L+ M1 ]: {$ a! _; l2 g/ g
; Q* o0 v, L2 A' P
代码:
0 S' B7 O. H& _) C0 C$ F; g
+ C7 [0 _6 V {! O5 h. m$ i( p
void CWorld::SetLight( BOOL bLight )
; j3 r0 t) b" A& r: v
durch
% \8 w3 }6 P$ P/ K6 H' L
Code:
8 ^8 S) \5 G! G x+ T% k, P1 \% J
void CWorld::SetLight( BOOL bLight )
; N7 o: l9 D' s& Z$ r+ ^. M" Q
{
) T1 k1 B; p. g; Y8 I+ n
//ACE("SetLight %d \n", bLight);
. o5 i9 c; s) P" B1 O0 X
% n7 P! |7 j6 m$ N1 s; F& Z# m
#ifndef __WORLDSERVER
6 J4 A: ~0 w8 K% V9 q+ ^
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
* y8 U1 P: p+ C& e
CLight* pLight = NULL;
2 X, d% P1 X- @; C: B
! K3 @. x0 X' a1 D5 k
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
o: o0 X. c3 [( d; ~. g
# b; W0 B) R5 p" J0 ?% b" y3 r
pLight = GetLight( "direction" );
( F9 Z3 k3 q' u" ]9 G S5 @- {4 g) }
# f! S: G' r6 i9 Q& O* \" X" r
#if __VER >= 15 // __BS_CHANGING_ENVIR
, s0 x; s" Z; V! Q- V- }9 O
if( g_pPlayer ){
% \* i9 t) e6 A5 y; x, M( E
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
3 O! |1 `6 ?$ G% h
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
5 [ n4 o# V! g- x4 |% U
{
: C; z) k) N0 H* U
if( pLight )
`$ y2 s1 Z% a! W' { @7 F, ]
{
0 @; f3 P6 }8 {9 |7 M
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
' d6 E2 s1 F M, W
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
# W; n& T8 o8 c V
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
9 j! S- \$ j: @7 x
3 g; e! t% m5 N- U
pLight->Specular.r = 2.0f;
4 ?9 Q! O) c; U
pLight->Specular.g = 2.0f;
: v$ Z2 w. D( i1 O
pLight->Specular.b = 2.0f;
* O: X w+ Z) w
2 m- T9 P; F7 Z' H& ?3 b" S
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
; {& R, w" w) t p" M1 T
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
( p+ M4 F) F' H" w1 o
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
- n k, y D V- O" F
j* Q a9 B5 F {) j
HookUpdateLight( pLight );
1 \/ a( s- i9 [4 z/ q \# Q
7 ?3 x+ N5 L% w6 E
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 d7 Y& l* t( w3 i* z
8 p0 c/ D/ r! p
pLight->Diffuse.r *= 1.2f;
0 ]/ l$ B: t; f. K0 e
pLight->Diffuse.g *= 1.2f;
1 t& W6 Y: O! {3 ~ \
pLight->Diffuse.b *= 1.2f;
7 D9 G3 h$ x" A# J1 D+ `' Y5 g
% [, |* h1 U3 [3 g( C( g E$ k8 N. { _
pLight->Ambient.r *= 0.8f;
! O" i" w( x5 C! S2 a
pLight->Ambient.g *= 0.8f;
; x! N$ B) [& j; E
pLight->Ambient.b *= 0.8f;
4 M& h1 J# k/ T5 \: V0 `
( j% e0 ]; [5 B: r6 d) E2 W5 q
memcpy( &m_light, pLight, sizeof( m_light ) );
1 X P& z; C& J. f& k. ], t
A5 V. A, z. [
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: J% B3 n* a# F9 _
D3DXVec3Normalize(&(vecSun),&(vecSun));
- }2 V8 \" P3 q6 b
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 F) F- N3 b2 S) m. k" |. U8 u
pLight->Appear( m_pd3dDevice, TRUE );
& O4 Y' {; o' {3 D- Q* L
9 E7 k( D2 o( Z! [6 C# H, \+ u
DWORD dwR, dwG, dwB;
- {5 y% q3 o7 N1 _9 l
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 u" \: [, i/ V, B& J
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 `! E6 X0 N) X* X. F
dwB = (DWORD)( pLight->Ambient.b * 255 );
! \ p8 A6 |6 B9 r
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 _$ W- _) {3 D5 c8 T
}
: G6 P; O1 {, T+ K
}
3 C- \' t0 l) B8 R @; q
}
7 f1 U) p: V8 M+ N# ^$ o
else
. i" s# B D) m" Q H7 i. y" c
#endif
" i' v# l0 {8 \4 l, a6 l
8 e _) p' U+ `
if( m_bIsIndoor )
- H& o) Y- J$ D0 `1 D7 b5 ]
{
g1 F9 L2 J3 u7 [: H! e3 c
if( pLight )
) l8 P8 D: a0 h: T h( s
{
0 F, C( N4 s6 G) E
// à??μ oˉè*
( }5 G+ `: r2 G8 R) O
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
$ P& s, X C! a) p% u" u" l0 O, @
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
& X9 B9 p0 P6 t
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
- i q6 V0 ^6 ]! {! s4 W) B
' _; Q% ^, a0 w D
// oˉè* ??à?
4 B# g5 {' O H# x; W p0 C& j' n' Z
pLight->Specular.r = 1.0f;
) o: }5 ^* r) u& Q6 C+ m. z; ^: t
pLight->Specular.g = 1.0f;
- \2 I, P0 B8 ~* @& `& y: H
pLight->Specular.b = 1.0f;
6 K! C0 L6 S3 b$ C+ v" d. \: V( J
// àü?? oˉè*
3 j5 k) v8 t. J/ h6 X1 A
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
) ^: s2 i% y* u" U; G( n
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
% x3 r) A, G+ H4 T3 }0 A
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
. X, u3 N, c$ H6 [$ E
, w8 ?. Y3 F: q3 c# x4 N9 j' W9 O: I; ]2 N
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% u s: W, x' W7 y! i/ W
{
$ A; A9 C3 C9 ]4 D. g9 s
pLight->Diffuse.r *= 0.6f;
V9 }; s7 y4 a7 p+ A
pLight->Diffuse.g *= 0.6f;
+ Y: q; N. q- G+ `& p5 E8 F
pLight->Diffuse.b *= 0.6f;
! L2 T; Z+ F7 V+ B8 a
pLight->Ambient.r *= 0.7f;
! Q- u/ K, |8 y
pLight->Ambient.g *= 0.7f;
+ m) J1 T7 s: A% W9 E8 j$ K1 H
pLight->Ambient.b *= 0.7f;
! ^( E8 }+ @; \- w3 [
}
$ O, ^9 M' H0 Y4 o3 d. }/ v# j9 q. I
3 Z+ v" C9 G% [( ^/ w0 f
#if __VER >= 15 // __BS_CHANGING_ENVIR
" A v" v2 }3 T2 Y2 c* p1 V
if( g_pPlayer )
5 A3 _: r% C( W+ m F/ N
HookUpdateLight( pLight );
6 c$ m, s4 `* w" r
#endif
0 r$ ^1 Q" R i# Q5 |
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" p# I; w6 ^- H% L7 U) L* D$ T
* d% e3 a0 R+ d* z& a5 q/ A* }
pLight->Diffuse.r += 0.1f;
9 x/ }7 t0 n- |+ W0 M
pLight->Diffuse.g += 0.1f;
" t0 o- s# E0 @
pLight->Diffuse.b += 0.1f;
* O0 ]% X2 ?) `3 f# G
// oˉè* ??à?
% W" u% f- P7 [2 s' E) p
pLight->Specular.r = 2.0f;
) }6 x" A4 c2 \. }( V; b8 f7 _' I5 d
pLight->Specular.g = 2.0f;
: a- T' s0 F+ \2 ]6 J1 o
pLight->Specular.b = 2.0f;
2 o: E- m7 f! k% P9 B7 Q; t# Y. Y( n
// á?oˉ
0 E$ }4 E0 U) _3 F+ l1 l' G9 q
pLight->Ambient.r *= 0.9f;
/ p! A6 r: g U+ ~4 m
pLight->Ambient.g *= 0.9f;
$ { Q% m$ U) @. X: @: d
pLight->Ambient.b *= 0.9f;
: f% n; }9 }8 L% b
8 N# ]3 q' j# m9 U/ R/ q: s# C
memcpy( &m_light, pLight, sizeof( m_light ) );
; {6 {- P. G1 f1 @
" V0 k6 W5 F6 j) ^7 T1 H
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
) I6 y* l2 {3 l! y' z( G
pLight->Appear( m_pd3dDevice, TRUE );
- N/ d+ J4 A8 x
Z" a9 f5 ~1 m: W
DWORD dwR, dwG, dwB;
_" i9 O9 A( Y0 O" l8 j3 s
dwR = (DWORD)( pLight->Ambient.r * 255 );
- D& v9 `1 f- a7 r+ Z b9 |
dwG = (DWORD)( pLight->Ambient.g * 255 );
# I8 l# o3 L- d$ Y
dwB = (DWORD)( pLight->Ambient.b * 255 );
) q- ]4 }, e( s
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
9 ^1 t6 d8 j7 y2 Z
}
# w& J( L( ~: Z9 a+ G- F4 H
}
0 f( f/ v5 w/ M& V5 E* J
else
- m( @5 G9 }* P1 ]. Q$ Y# \
{
9 m( h6 M; F3 g7 w( b
if( pLight )
8 q- M( m+ A: |2 p
{
F+ c( p' U9 W" `5 V
# y( j% V% q$ Q# V2 M3 K6 @) F
int nHour = 8, nMin = 0;
/ q H9 Z, ^) |) s
#ifdef __CLIENT
9 N% H+ S* F/ g. q+ o, w
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
6 b7 K5 d1 }% {
nHour = g_GameTimer.m_nHour;
* ^2 x+ c3 Z! z! J0 d
nMin = g_GameTimer.m_nMin ;
/ I! B8 f* `( v
#else
) N- W6 B7 R& Z8 ?+ d
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
8 x* b1 _1 K: o9 p1 ~! y
if( m_nLightType == 1 )
% S/ F( i4 ]$ V5 ^3 G
nHour = m_nLightHour;
: a' R8 n; ]! ]* ^$ H& e& S. E4 a
#endif
: V' h7 v& a0 n0 `9 S4 P
nHour--;
8 Q9 C/ c0 F9 m j
if( nHour < 0 ) nHour = 0;
' g+ c/ X% f& J8 [0 X( ^ c, H
if( nHour > 23 ) nHour = 23;
4 c6 z. H+ v* ~$ j- R
. T3 E. H p; @, @( K
//if( m_bFixedHour )
; _" Q3 J+ Y: j9 ^9 R* w
// nHour = m_nFixedHour, nMin = 0;
. i% p6 R6 e- l# C. k0 k! Q! y
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
! ^- g" I1 q5 @2 ?, l# B/ F( `
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
& H/ `+ n* f. u2 @ ?" U) [- i
: z# o; J/ H. \/ @3 B
//m_lightColor = lightColorPrv;
9 s8 F% s/ y- u
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
7 d5 q# k$ K9 X) Q3 w
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
; N! J* {7 i: n/ ^
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
}7 A+ [- \: s: i/ o4 l
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
7 K. `- W! K3 {# N8 R9 b/ f' y0 s
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
5 V' |; G8 m3 z D6 d2 \
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
; G6 w4 \# A& H' N" r8 @& d$ I
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
7 T$ K7 [. E' [: A- s; R- r @& y. u8 }
q L3 f" W/ k# a( C# @
// à??μ oˉè*
+ L$ j. g7 z3 B7 F
pLight->Diffuse.r = lightColorPrv.r1;
9 R, i2 M/ R' s# i
pLight->Diffuse.g = lightColorPrv.g1;
7 v2 N, m, @& e4 ~+ r' `1 b2 r' Z
pLight->Diffuse.b = lightColorPrv.b1;
* A' Y$ l6 D# f
// oˉè* ??à?
: c/ `$ B/ q% [& k
pLight->Specular.r = 1.0f;
- U% y* s* i* P: x: [* S& v7 e
pLight->Specular.g = 1.0f;
9 I2 K5 ^- M% C" J% Y% I* j
pLight->Specular.b = 1.0f;
" l1 y$ f: M( j
// àü?? oˉè*
0 I" X4 r# O( ~! u% ^
pLight->Ambient.r = lightColorPrv.r2;
" L! T; d& R, Z# A
pLight->Ambient.g = lightColorPrv.g2;
7 o6 e! [, A) R
pLight->Ambient.b = lightColorPrv.b2;
6 k) N( X) N7 p7 A$ D
6 v9 D9 A5 F' a% S0 e& E5 W
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# A; d+ H4 ?2 v D
{
, u* m" j$ Z5 v
pLight->Diffuse.r *= 0.6f;
3 z3 t! k7 T( x7 R
pLight->Diffuse.g *= 0.6f;
8 A/ c9 t O# ]; t" T. O+ u6 L
pLight->Diffuse.b *= 0.6f;
' W" B6 G$ u' W6 s" Z
pLight->Ambient.r *= 0.7f;
! N9 e" H2 U3 N1 f% U
pLight->Ambient.g *= 0.7f;
6 H9 k" _) D+ A) t
pLight->Ambient.b *= 0.7f;
. f3 \7 {, e$ ^" r! [" y
}
$ J4 @: U4 Z% z
" v$ l8 B4 G1 M7 }
#if __VER >= 15 // __BS_CHANGING_ENVIR
, p; X5 G y5 u7 y% T1 |; }4 D0 Y6 f
if( g_pPlayer )
5 A, [# U h, N6 `7 v$ P4 k$ y' l. g. r7 c
HookUpdateLight( pLight );
+ ~% a- \4 q3 N/ \2 [0 z% }( Z
#endif
5 Z2 G! F/ t& M6 l2 D
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 V% D3 \2 V m
( X1 k# o/ B7 O# m8 V
#ifdef __YENV
4 g+ a; J- e4 G6 S3 z
pLight->Diffuse.r *= 1.1f;
8 W0 \8 \+ p' s
pLight->Diffuse.g *= 1.1f;
8 E1 L7 t) ?% O& T
pLight->Diffuse.b *= 1.1f;
, ]; U* |0 F9 c, J, z1 j% |
// oˉè* ??à?
6 p- v0 N* Y% n8 C2 P
pLight->Specular.r = 2.0f;
6 E, v* r2 y" q$ @; {- _! o* W2 o
pLight->Specular.g = 2.0f;
5 T* e, n0 d( {# [+ P9 G
pLight->Specular.b = 2.0f;
& H* t! }+ T& }3 q
// á?oˉ
4 L6 U' E$ D: ?( ~" g6 p; a1 c
pLight->Ambient.r *= 1.0f;
) I; M/ j7 I% \1 u7 Y/ I2 F
pLight->Ambient.g *= 1.0f;
/ `# [- S8 g; X2 ]# K1 R6 j, j
pLight->Ambient.b *= 1.0f;
" B" H+ P. Q- Q) ~* Q6 D
#else //__YENV
( e, V- B* z% G4 T* {1 N
pLight->Diffuse.r *= 1.1f;
# |+ p- f: N. k1 E" _! L v9 j) e% O
pLight->Diffuse.g *= 1.1f;
* @8 j/ r. z5 t- m
pLight->Diffuse.b *= 1.1f;
, q3 i/ o8 G- F3 J4 \
// oˉè* ??à?
# M0 s6 w+ \- p }+ [4 n5 q
pLight->Specular.r = 2.0f;
+ V1 T! Z! T3 s
pLight->Specular.g = 2.0f;
5 W7 @ C; G0 [
pLight->Specular.b = 2.0f;
( O7 f; d0 z9 {4 ~$ o
// á?oˉ
* `# U" b9 b( k0 K# g* m2 k% C f. m
pLight->Ambient.r *= 0.9f;
; M9 U" V2 ]; l1 w0 o/ M3 y
pLight->Ambient.g *= 0.9f;
" Z8 W. }6 G, c v+ l; D+ ?9 L( ~
pLight->Ambient.b *= 0.9f;
4 k4 v6 |* j: A. |5 x: C
#endif //__YENV
) ^5 f9 ~6 K- @. ^5 K+ t+ g
6 C& G7 F5 v2 c* g4 v' z
memcpy( &m_light, pLight, sizeof( m_light ) );
1 p( v$ b. I- C5 J) m: y% T
; V. N* N* _" m" n( Y
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
7 N% e& Y7 d U& m$ y' q
D3DXMATRIX matTemp;
1 C: Z& w( w( x0 U
static const float CONS_VAL = 3.1415926f / 180.f;
. r0 A' Z$ v% D* t8 }' t2 D
( ~ X; D2 e& p) v3 G/ M
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
1 O: K8 G& D: D3 x6 m& c
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
5 h6 s+ B: J/ ~1 W$ b [- E
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
) X" T! J" o. g0 n4 F1 T6 _
pLight->Appear( m_pd3dDevice, TRUE );
9 G7 w8 C# Z8 V5 n; _7 b f0 l) N
. A7 J+ _0 W, [; t
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* z' o8 f/ p7 p1 O
// D3DXVec3Normalize(&(vecSun),&(vecSun));
$ K. y6 M4 k' r, h
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: X% @0 y1 Z+ L1 h- g
/ N7 L. ^2 Z+ m
DWORD dwR, dwG, dwB;
. e* P6 ?0 o. O) `' r M
dwR = (DWORD)( pLight->Ambient.r * 255 );
& U7 p3 t6 S. Z' f: O) R9 i3 u
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 {& b4 G2 @ t8 O2 J
dwB = (DWORD)( pLight->Ambient.b * 255 );
l2 x/ f5 f, |7 O, k: {( A' C" @; I
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; N9 G: d) E1 r/ O8 R7 M+ s
}
. g& z5 T( \* o4 m- @2 v* ~
}
2 N) k1 i2 L+ Q: Z
# ~& i; r" U7 R3 Z/ Q* M
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
. Q; o( x7 n1 J# W
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) );
4 @1 F' z5 W1 X' S% _
::SetLight( bLight );
# @ A( T2 ~0 `
9 `/ a5 d' G" U' c) v1 t
// ±ao? ?D?í???ó á¤à?
6 ]8 _3 p# v7 s+ }+ f+ N, h; O
m_pd3dDevice->SetMaterial( &m_baseMaterial );
! g+ s. @# r$ e+ D0 V- f" R
; r( X* L1 b4 A0 t7 _4 x' `
#endif // not WORLDSERVER
# C) i, D3 n, }; l' G+ C
}
8 [+ e* ]" H* E6 @8 h% o
并更换
: d+ i$ t# i& z+ F# `) [
Code:
9 ]) A! t$ S8 n. G
__FLYFF_INITPAGE_EXT
2 p) X* ^9 F0 G/ M5 z+ [
定义
8 D/ h; M. h' q: O* f& L
5 b' S0 B" k6 ^1 k9 e. ]
j1 L1 U. Z- s; p
, B, [0 B; z6 k8 O8 S) @5 m% f: O
! w2 ^3 \: n8 c6 S% N
现在终于删除我的狗屁加速...
% i( w0 K; Y9 b+ ]; v7 y" Z8 y
. \" f3 V6 a9 y. O1 O) ?: B
, A6 s/ P3 O' ~. K
: @. { [/ O6 P7 m2 @
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2