飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
7 B' W. c: c D3 Q
尾翼:
. G9 @3 s; h+ a
) A9 B- d1 E2 p! m9 ~& j+ U1 C
代码:
3 n! Y) b2 r& l& M; i+ E
CWndAutoFood::CWndAutoFood()
9 t( ]7 I8 Q7 Q! Y8 x! e8 l
{
0 H. f+ t) o! f) Y' B
m_pItemElem = NULL;
5 y; u1 D# H4 K) F- Q! j
m_pTexture = NULL;
- C' w5 _0 m8 r# Q i0 R0 C! s! k
bStart = FALSE;
6 m, E# H1 W# [ y/ W; T/ d
}
# c5 b" D8 ?- {' k/ X
! M% C$ n9 {# U1 S; j+ f* G
CWndAutoFood::~CWndAutoFood()
' j4 ]; @& L9 K% h" P n" b
{
r; H. l7 V7 F- X$ q; ^4 e
AfxMessageBox( "AutoFood ist gestorben
" );
& {; v' v8 k; e4 P6 E I* E( p" g
}
$ G) b0 \$ p, }$ ?& W; P. Z0 M' c
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
^' S6 n4 m7 A, v2 v) t6 r% C
{
' I/ I O e$ B; `1 _$ c
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
* A, ` N n: V2 E4 e! A
}
! ~, E! d* t2 M
* b* W& k( r7 |
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
1 i. d8 M+ {. z4 R/ U
{
' Q3 W8 a9 D& P& }
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
7 w, f1 K; {$ w `
CRect rect = pWndCtrl->rect;
+ s# \% N f0 l( ^6 t
if( rect && rect.PtInRect( point ) )
+ g: Q4 T4 e- V0 E* H. l; T
{
, z3 Z8 V/ p3 t2 b5 ?% n, F+ L
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
' X1 e* A! J& M! t
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
0 v% u4 x8 o6 h" Q0 G; _
{
{) q i6 q& U; t* G& e2 P
if( m_pItemElem )
* [- w/ G$ [# ^
{
/ S# _$ `! T! L( L$ j6 ^1 s
m_pItemElem = NULL;
$ r# {1 F9 w+ ~* d: M
}
4 L7 |+ K& F. j. \: ?$ x, H
m_pItemElem = pItemElem;
0 ^) v: C; q: r+ G
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
% ~8 t& ]- e0 ?" @+ s, H% U8 H& L
}else{
9 M2 I; ^' J; N2 B5 N
SetForbid( TRUE );
: u8 d0 }# s; S
}
) d: y& ~4 h& A/ O
}else{
& u( _( Y+ t5 p, E& H, B
SetForbid( TRUE );
Y2 C0 {) E/ A' M% x
}
0 [ M' Q0 Z. Z: e) O+ y0 G+ o C
return TRUE;
3 }+ t- a6 o* g- X0 c
}
* H& A6 {$ Y8 c6 S+ k4 I
5 r3 ?0 F& \! \& e$ @2 q
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
' \; }8 b& o& R& {: m% N
{
+ V0 F5 O9 P, n9 O- \8 \) G& e7 K
switch( nID )
' _5 G$ b- M. W1 n" b/ m
{
# g8 I' d% O c) I M- y- N
case WIDC_BUTTON3:
3 `+ l+ w& W7 g9 L/ y' O- B8 J
{
) J' M& f8 A! R8 \
bStart = TRUE;
# j" y( E; l+ n
break;
" t! [; `: y) T7 `' V' C8 M
}
4 ^3 E2 @8 a$ \4 o% [
case WIDC_BUTTON4:
+ D% [: k3 S1 n" ~0 z
{
. M. ]5 F4 u; R( T x6 Z( s
bStart = FALSE;
- X9 Y& U8 u: O4 x% o% ?6 V+ r: P
break;
6 U" m9 G9 t8 W8 N9 Y4 a: K
}
3 B' | @) J9 @
}
7 m: b8 a- S# D9 g. X: N) l
return CWndNeuz::OnChildNotify( message, nID, pLResult );
; M7 k4 I d/ S- ]% {, } t, F9 H
}
5 E# \8 m! W0 _$ O4 l
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
1 \9 s# ^4 b- s) p5 E6 `
{
5 x" P. C$ W: s' x- @4 _* e4 `7 g" j
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
0 n* c; Q% t& j0 m! t. N/ C* M
if( bStart || !m_pItemElem )
% \9 F: u* Y+ I
{
R* T- L' b' \4 t- W {
pBtn->EnableWindow( FALSE );
: }5 T+ U( @( G" Q5 Q
}else
" n& X" e, I* E4 d& l6 u3 {
pBtn->EnableWindow( TRUE );
8 B6 S4 k# U: p- a! I9 \" b
if( m_pTexture )
% g" z; d+ T6 ~! I4 e( E& b
{
* b8 ?$ q7 g1 V @
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
2 B# j# } Q" u% K6 g* ~9 Z
if( wndCtrl && wndCtrl->rect )
9 I) Z) M. J6 J' h+ s
{
$ _$ I8 e8 H3 V6 e: U
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
$ ~1 J8 s; l% @8 ~- ~+ y+ g
}
& w% `5 K4 l8 [: W) X; i
}
% k& U' ~6 E7 ]5 X' Z5 A
}
q5 u7 a6 Y/ a: I
6 D2 B5 t2 [: g, U! e. m8 E1 V
BOOL CWndAutoFood:
rocess()
! I3 c. X& k* z: H
{
% T$ @0 ~: y# O+ K9 z5 W
if( bStart )
( |: ]- O5 K! ?8 I
{
5 l; o# N$ @9 M: B5 b7 b( \ r
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
7 K$ g. {" b" ^- L
{
' s* Y0 T) O# h6 }
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
, a. P! C, k/ y3 a, S* H: H- p2 A
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
! V" }0 G; L- t2 a( o) \ @( Y4 k$ t
}else{
: d# w4 t9 A* z* f+ i# p0 i
bStart = FALSE;
1 ]0 @' N5 `( X6 z* Q0 ~. C
m_pItemElem = NULL;
1 x! f* L+ ^" m" e3 ^8 I
}
( @1 |% X/ ^$ m/ ~% Q O/ {
}
# B: R) E) G6 R" Q/ H! ^
return TRUE;
* u; Y# Y9 F$ W& i1 a3 J2 _, D
}
; x( ]0 h0 |) Y3 |) q
P0 A; G( V- l. \) F# f& N
登录视频废话:
% P! A. Z8 a# O- A+ F
尾翼:
$ }, Z7 M2 n- C6 m& y
, ~9 \- K) S6 p* M$ \) c
代码:
|* X; s! j: h; P- _1 J/ U
e! K/ E# A! p" h. D
void CWorld::SetLight( BOOL bLight )
) l8 N4 t/ G, |/ A
durch
5 {2 K; S$ x" _; w. w' c
Code:
$ ~, I7 ~7 a) D$ X1 a! B% M2 @
void CWorld::SetLight( BOOL bLight )
+ I1 i1 d/ l; T, }" u+ @ J, S
{
t! J) k- z) T. ]
//ACE("SetLight %d \n", bLight);
5 R3 { ^0 B5 H; x! z
3 O. a6 r; ]1 v
#ifndef __WORLDSERVER
- T0 j+ h. k' t) [/ y
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
& d2 U. d) o6 n1 c9 }
CLight* pLight = NULL;
$ F- e- e6 j6 B3 F9 s
. \- [* r* J" A" A1 D5 T: y
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
0 }+ m/ M2 Q* F! A
) f: R* c: m' Q8 W/ {
pLight = GetLight( "direction" );
. H! ^$ }; Z" [, v' F5 }# B/ T
1 y, L: ^1 m2 [' \
#if __VER >= 15 // __BS_CHANGING_ENVIR
* S& W+ r, d4 d3 o- ^, z6 U1 u; t
if( g_pPlayer ){
- _/ \6 Y& e% a% p. _
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
, Y) n( M: @ U0 O5 a$ z
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
8 y* |1 m1 I# c4 C* T5 K/ k1 m
{
1 s/ S- {" F2 ]2 e% f
if( pLight )
# P& R, q r1 D0 g% Y
{
- S: Z& W7 A( z1 U4 x7 k, b
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
( P2 ?& u: \; o4 w0 _9 ^
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
9 N- u! T- z. J+ I) ^3 F0 ~ P
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
4 u, Q4 ?! D* s1 f
8 }8 x! h5 M& `2 m
pLight->Specular.r = 2.0f;
8 l8 J9 l2 K3 j) [2 W3 a$ j
pLight->Specular.g = 2.0f;
1 B, W9 D8 O9 I) o
pLight->Specular.b = 2.0f;
/ ]- X3 q+ i' r; W
1 [" b% v7 ^5 u2 ^
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
# q1 {1 h' k; }% N% |
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
$ ^; m7 x6 w1 M
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ W. S7 q5 v j* t$ U* E1 s
& j6 W' X9 |' F6 i2 C
HookUpdateLight( pLight );
" p* a1 I2 |0 r! h
# W7 K9 A0 I& `' R9 w
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" M2 _: ]$ l; Y/ @$ f G5 \' N* {- h
2 @5 s5 _8 ]! @: E
pLight->Diffuse.r *= 1.2f;
, t' N* x3 J& \* G0 \2 o7 X
pLight->Diffuse.g *= 1.2f;
( a; r) ?& j) Z2 T( t
pLight->Diffuse.b *= 1.2f;
* j$ ~3 N* o {5 y: I$ M1 L0 A
1 n- D7 ] H7 v% e6 l' |' ^# \
pLight->Ambient.r *= 0.8f;
; k. A# q# [' H) R! S
pLight->Ambient.g *= 0.8f;
% g* U- w7 i {1 l/ b
pLight->Ambient.b *= 0.8f;
* m2 k) W# B8 H
: p1 I1 r6 d5 ^' W! { }! c
memcpy( &m_light, pLight, sizeof( m_light ) );
0 S" D: [5 O+ x) m# \8 R* [
$ Y& E ^$ Y: |" U& r/ Y9 |' k
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
6 K2 |4 [* w. \& G3 E1 e
D3DXVec3Normalize(&(vecSun),&(vecSun));
! {; @& ` q# v4 r) K- ~
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, o/ P4 u4 }" q b# T0 i5 ^' O! z
pLight->Appear( m_pd3dDevice, TRUE );
+ K' o4 H7 H: t
3 y7 G. F6 `- |7 T0 d' n" H
DWORD dwR, dwG, dwB;
' M" e) o. {( D0 v6 W$ ?7 K7 t( m$ I l
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 a9 F8 @# l5 o8 ~/ T! R6 j* i t
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 C6 x \$ v2 Q9 x; e: A$ p
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 T: X, z! @0 }, X
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 [; \ i7 m7 M1 E+ C! @/ ]# H
}
0 D2 V+ E9 i7 a" x3 T; L
}
- F& V% e- O: V& a5 d
}
2 W2 B; y+ O/ Y0 l& L2 F
else
0 K7 _, B# T- J4 r) P+ Z
#endif
8 l* P% Y9 z% U/ R5 ^ V2 t
( \- ]' e6 Z, _+ `' B
if( m_bIsIndoor )
% ]8 |; y3 S: g, Y, Z7 I2 K
{
! I& y8 U9 K& P8 B/ r1 ?" D/ {
if( pLight )
, n; ]$ Z% x/ k& G% k8 ^
{
% W# T! {* f# ~ P# B6 h
// à??μ oˉè*
$ Q7 f- i9 }: S( I) i* s
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
: R# T ?& y+ q" z! }6 v' @
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
4 T7 i" n9 o- w4 @" v7 X' ^
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
6 @% u1 C+ k3 I# P1 M8 Z
& F" \7 s2 b- S( m( W
// oˉè* ??à?
% z4 v; h8 n$ h* O6 M7 y
pLight->Specular.r = 1.0f;
0 ^8 i9 e8 ~) P6 @& h5 Q
pLight->Specular.g = 1.0f;
6 K4 _4 G5 r/ q$ ~. X) r3 d; _8 d
pLight->Specular.b = 1.0f;
m7 K" Y- Y( B, M9 r# e
// àü?? oˉè*
( w' C0 \0 {. I
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
% y+ K7 `% d+ Z
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
3 d: _. \! m) ]6 U2 y4 h
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
" q: y$ i; d( J
+ D3 }) V& i; z# M8 ]: S* E7 X
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
& X9 q* y9 w0 J, F
{
% e! |4 o. V+ a9 M
pLight->Diffuse.r *= 0.6f;
5 d: m, Y# C- o |! ]7 u$ P# P0 D
pLight->Diffuse.g *= 0.6f;
1 |8 s! @' `' g" p
pLight->Diffuse.b *= 0.6f;
1 j, D, M \+ W, X7 k6 g
pLight->Ambient.r *= 0.7f;
& ]4 X6 M6 @" c9 W; `
pLight->Ambient.g *= 0.7f;
) H6 r7 U5 q' s. ~1 @8 U7 t
pLight->Ambient.b *= 0.7f;
9 a/ S: S$ ~2 i2 p0 G1 n
}
. Q2 |$ [* d9 ^6 c' Y+ ] |
7 L: W8 g$ F( G& d) H* G# o
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 V$ [% D6 C3 P s6 o9 P
if( g_pPlayer )
% U* ]* w: D+ b/ G. d2 N0 v0 ~' V
HookUpdateLight( pLight );
2 f( A0 e: f$ a8 e3 Q
#endif
1 X, A) w' W r9 y. M
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. Z: x% ^/ m/ t2 V9 L" J4 @6 o5 z
6 R/ e& L* ^! }/ u8 P
pLight->Diffuse.r += 0.1f;
) L ~( N0 b* j& F
pLight->Diffuse.g += 0.1f;
2 P9 }! D" g$ N* S$ u2 i
pLight->Diffuse.b += 0.1f;
1 b$ b3 ~- @/ g& K; ^4 t. F: W
// oˉè* ??à?
& q. C8 `! y) g8 O& Z( z
pLight->Specular.r = 2.0f;
+ D5 B1 t) t! l: y5 {7 t
pLight->Specular.g = 2.0f;
5 ^8 K C: H7 i
pLight->Specular.b = 2.0f;
: B4 u! q* {; T0 q* a
// á?oˉ
* ]7 h( r- H0 I# @
pLight->Ambient.r *= 0.9f;
0 _* l& K- U. p# @( p7 Q& X6 L
pLight->Ambient.g *= 0.9f;
( Y m U9 S; P, p2 Q
pLight->Ambient.b *= 0.9f;
& D' G; Z. o, e- g& ~/ G
; Y: x$ H* f, |1 y5 P% o/ r
memcpy( &m_light, pLight, sizeof( m_light ) );
- n+ C* V! A! Z) Q" }! u4 F% [
, H0 s/ u/ m: r' u5 G+ e1 Q
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
# H: Z( K" A- D3 Y
pLight->Appear( m_pd3dDevice, TRUE );
9 w# J$ A* d! h# T) C: n
0 P: \ c; y" t, V" J# U6 d* Q& [
DWORD dwR, dwG, dwB;
; K1 v; {0 I, [; r6 r _4 ]
dwR = (DWORD)( pLight->Ambient.r * 255 );
; }4 G! e/ h: l% B9 \1 U
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 v: y- j x2 Z# s/ @: B
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ V/ |2 H# a& t
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
8 E& g; p e6 Y2 O& g& d: V
}
- m" H) _- ~4 J$ y9 e1 a
}
: t* _1 V3 ?. B5 X1 q
else
+ I( G; A4 ?% Z
{
( F8 S+ n( J, x u
if( pLight )
5 \- P, r! m# v. U8 S2 ]
{
; G/ R) V0 b8 C s) b+ ?/ ?
, _0 {9 f7 Y+ B5 I$ ]/ M" j+ Y$ h k
int nHour = 8, nMin = 0;
+ _- K+ b) d; s; c7 ~ B0 V$ o
#ifdef __CLIENT
3 D, N. D& S' _2 F; \, J
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
2 o' |7 w3 ^7 K. V K& x
nHour = g_GameTimer.m_nHour;
7 p( F! t; S4 U" [7 X4 Y9 G
nMin = g_GameTimer.m_nMin ;
% [8 h& ]" o( e- y0 C
#else
, Y) P D) ]1 s) C9 ~" M
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
. s; D2 [9 L8 H! G; s f
if( m_nLightType == 1 )
; n, B3 g- s W0 h! U/ j
nHour = m_nLightHour;
2 d3 w. X2 r' {
#endif
2 H6 ~7 n. Y5 ^! V8 g% f% ]
nHour--;
! z) j; K, N y5 V. [& G' O- w
if( nHour < 0 ) nHour = 0;
# x" v% s; @9 s8 r" j4 s
if( nHour > 23 ) nHour = 23;
5 t, X! {3 y9 [9 |; M* [7 N& [+ i1 _
7 a3 _( p. d L
//if( m_bFixedHour )
9 J% s$ f" v0 r
// nHour = m_nFixedHour, nMin = 0;
9 V+ b. n5 Z/ ~; Z+ g: w
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
! m& h& [) P% c B
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
: p# Z8 f& t5 i
# o/ y" [& x! B# F3 @% m3 b
//m_lightColor = lightColorPrv;
8 u+ Z! U) H T& a* z* d
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
# ?# F9 {9 p' s7 h4 [/ ^# G
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
8 H; G& l% c6 E6 s
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
$ G1 n6 S9 s. a( |5 i3 ?) |
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
, G# r( ^' s/ @% |: d
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
. g* H. u" s+ t
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
- O4 d7 o' L! ^
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
W" g( f4 K- a7 l
1 ]) t( p, g) q0 w0 z+ S
// à??μ oˉè*
! J0 J; U: W/ }7 [
pLight->Diffuse.r = lightColorPrv.r1;
) n7 t$ Q/ \' S" H; k- V8 C& q& ]
pLight->Diffuse.g = lightColorPrv.g1;
, U# z/ R) q; g) k; m7 Q5 a) D
pLight->Diffuse.b = lightColorPrv.b1;
6 z/ e. }% m( r$ O# y* z
// oˉè* ??à?
6 N0 a4 ]* R% [: c
pLight->Specular.r = 1.0f;
0 Y9 Y6 ]& s$ `, S
pLight->Specular.g = 1.0f;
4 S4 L9 ?& y* b( K' j
pLight->Specular.b = 1.0f;
# a' n) G$ B4 r8 b# U$ C& z, D6 E
// àü?? oˉè*
* n+ S+ W/ n6 {4 A
pLight->Ambient.r = lightColorPrv.r2;
8 h3 Q: `* g5 z7 ]
pLight->Ambient.g = lightColorPrv.g2;
7 A# X% I( R: K+ o+ g
pLight->Ambient.b = lightColorPrv.b2;
$ n+ B: X' h- P R) P' P, D* i
" c# N. b+ x8 @* }* h& P0 i
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
. X9 {) u! c7 Q
{
" T. r( D$ C5 q6 d: w( }
pLight->Diffuse.r *= 0.6f;
, [ e* N0 r6 |0 }" J: L" s
pLight->Diffuse.g *= 0.6f;
2 @+ \9 E! L% T$ F; X5 I9 Y5 e
pLight->Diffuse.b *= 0.6f;
5 Y3 s% b& \1 c- Q# m
pLight->Ambient.r *= 0.7f;
$ ^ ^! N. C1 w- {
pLight->Ambient.g *= 0.7f;
6 Z1 }9 X f1 A& \3 p, S9 j, J x; C
pLight->Ambient.b *= 0.7f;
; z8 N v4 t4 N' P+ o' [
}
& L% U1 D) k% g$ X2 T+ [7 ]5 l$ a( q
. t& l: `0 G/ x. x1 K
#if __VER >= 15 // __BS_CHANGING_ENVIR
" m8 O* h6 \% O% H4 A
if( g_pPlayer )
4 {& o7 |. s, |. i* n: T6 V. I! Q
HookUpdateLight( pLight );
: I8 n% m4 {/ v' U U+ Y+ [2 V7 _
#endif
8 l4 N y5 |" H
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' C( C& k ~3 a2 F
( ]. w7 v2 J, Y$ o8 L* X
#ifdef __YENV
3 K. U& K5 N# X
pLight->Diffuse.r *= 1.1f;
; x7 e- g7 x7 B" E
pLight->Diffuse.g *= 1.1f;
t# q0 i6 r$ R! d7 ^
pLight->Diffuse.b *= 1.1f;
$ N1 E2 H1 o* N8 Q2 F3 ^ ?
// oˉè* ??à?
8 E5 C5 B% z' @/ c
pLight->Specular.r = 2.0f;
3 k- h* e; _; l$ x
pLight->Specular.g = 2.0f;
, |* T. ~6 l, [+ q `1 f0 M6 D
pLight->Specular.b = 2.0f;
( [' y, ^6 K; b, r0 U
// á?oˉ
C7 f. L( O: ^2 V6 F% c: ]6 c% h
pLight->Ambient.r *= 1.0f;
: k) X4 K/ A' M' m9 f
pLight->Ambient.g *= 1.0f;
; L- S4 E& U* B/ s
pLight->Ambient.b *= 1.0f;
/ Z" O3 z0 m% O5 i5 y2 h
#else //__YENV
k6 V" u z( `6 w& {
pLight->Diffuse.r *= 1.1f;
7 r' j2 g0 l) N- _
pLight->Diffuse.g *= 1.1f;
! x" x+ C4 ~! I( G2 b& T7 P X, R
pLight->Diffuse.b *= 1.1f;
' \8 n: n$ D, t3 m" l. ~, ^
// oˉè* ??à?
6 F# V+ \" E( W6 M& v! A* H
pLight->Specular.r = 2.0f;
& m" u& t# s9 L( I' e
pLight->Specular.g = 2.0f;
& p6 W2 E! h1 p* Y
pLight->Specular.b = 2.0f;
) e8 e! l, _8 [# x9 K
// á?oˉ
0 `& ~1 q$ C' V+ g5 w4 l% q: l
pLight->Ambient.r *= 0.9f;
5 n3 a4 m' \$ B9 r; {" ~8 J
pLight->Ambient.g *= 0.9f;
+ ?, |% d( R+ U$ d
pLight->Ambient.b *= 0.9f;
- G' o! }2 d( P( @
#endif //__YENV
0 P# I3 u+ o2 @# y
: _: U$ d! N$ r# }
memcpy( &m_light, pLight, sizeof( m_light ) );
2 I, T9 k. C1 G- o
9 G4 ]8 C/ \6 V+ v: U5 V6 v
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
1 n. w+ f& b- R8 C! x
D3DXMATRIX matTemp;
3 ]2 a: y( l9 t! Z* V- a/ Y+ m6 h
static const float CONS_VAL = 3.1415926f / 180.f;
; G( v" `( k+ e$ d1 H
' L7 \! p' F1 y9 b' d
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
/ `% b( S1 A- u9 m: C+ i2 [) m1 y8 u
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
) ^" W* F0 P# D4 ~1 I9 a
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
$ h& T! f' I2 J; O& k
pLight->Appear( m_pd3dDevice, TRUE );
# U6 _! J7 M/ N( K X
$ k% E X% X# d! Z: Z7 u
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
2 ]; q; ~8 k( j- d+ z
// D3DXVec3Normalize(&(vecSun),&(vecSun));
! e# w. f5 o! r: a
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 y5 Y2 H' i4 V+ B, I
* n" e6 i: ?$ |2 v/ M
DWORD dwR, dwG, dwB;
% n8 |: g( z; c' N$ o6 z
dwR = (DWORD)( pLight->Ambient.r * 255 );
) E5 m/ w* m$ x& p7 Q3 ^
dwG = (DWORD)( pLight->Ambient.g * 255 );
) W3 m, {6 F) r$ e- |- `0 F
dwB = (DWORD)( pLight->Ambient.b * 255 );
" J7 |3 g) p4 P% P: H" ^
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: J" Y2 a7 z# s! H6 n
}
' q# D. `9 ]- u1 S# Z& N! t
}
& z* Q' T; X6 G+ G7 {
3 h3 M+ D' P+ I; h
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
4 y/ f# @0 `; l. t. B. G
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) );
2 s& j" o {, N1 k% B
::SetLight( bLight );
; c0 n1 Y! R' l k* I
2 V- R$ z6 n! x
// ±ao? ?D?í???ó á¤à?
4 Y* g( u$ }% F9 t3 ^: A; U6 e1 q/ U; F+ O
m_pd3dDevice->SetMaterial( &m_baseMaterial );
1 T6 h5 f1 Y* X; k
7 {. G2 {, T) f6 z. d$ [
#endif // not WORLDSERVER
, X$ u* r3 p$ u
}
( j5 F7 ~! |0 G. P' Z; [" r+ ?
并更换
' T. h: @1 v* F( _. g! o1 \
Code:
4 |0 k( W2 q I* v5 \- G
__FLYFF_INITPAGE_EXT
* J. e: c7 J3 j
定义
* b& z, K% Z- Q& s6 g2 Q& X
; N+ x" k |" q9 w( Q
7 `+ c* M" g: y* H' f' K0 i0 A2 o2 W ~
9 V7 `! J2 ^! T
. B4 c, W( g7 O1 R* S' G g
现在终于删除我的狗屁加速...
# S# y& D& }9 K5 R0 Y
# R/ R" @3 u W0 g1 X2 s {6 _
- e' r. l" ?4 k& i/ i0 w# r+ _" j
# W2 X6 @# c3 b2 p& V
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2