飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
" A2 z% J+ C% ~0 P1 f. e% e
尾翼:
; }8 _; b. t; ~
& h$ `6 N. h' G* o2 ~6 |
代码:
. M" G3 H/ T: D6 o+ l
CWndAutoFood::CWndAutoFood()
. Y u2 Q8 |" ]$ s+ k& D5 S* i& B
{
' E' P* Z+ M8 s! [
m_pItemElem = NULL;
) k# N, C- T4 H( }
m_pTexture = NULL;
/ s% y- ^) B1 j1 [! l
bStart = FALSE;
, @/ c) ?( O9 y7 L8 G
}
! O3 Y+ J! E- L! ^& W1 n4 T
; g5 B3 x% ?# j1 ~5 y: I' M
CWndAutoFood::~CWndAutoFood()
# |; c6 ~! k, l* B: E' v, L
{
! @3 _ m; Y/ `: a: j
AfxMessageBox( "AutoFood ist gestorben
" );
2 d m b, b6 p% |
}
; \' Y2 H0 O0 u: u6 L
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
4 w5 T) b+ C& c9 f- Y
{
" s' u Z B- m6 ~- n
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
. k9 Y- B+ q" c& b% l( U
}
* S7 U9 [+ j# T0 @" \: P2 l
6 n& [4 k7 l1 j8 a/ j3 u
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
: B: [& g) j1 V1 j o
{
5 f- N9 \0 N. E' L: v1 _; P
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' o. Q5 @! S0 W" X( I
CRect rect = pWndCtrl->rect;
. Z8 M8 p- e1 W1 b' m, @
if( rect && rect.PtInRect( point ) )
M! I5 z: `+ Q$ B5 q y( U$ ~8 E# U8 w" K
{
" v: G: w* D5 N+ s
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
$ F6 j3 J8 m. e3 i; h' Y/ r
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
3 ^. h( B1 i/ J! [
{
/ q/ M1 w, \- p; C& x) ~6 @
if( m_pItemElem )
% O% X# K/ B" G/ g* s, q
{
: W( M6 n0 p* Q! S0 U1 {
m_pItemElem = NULL;
1 r/ D9 Z' m8 s: J1 Z1 J5 V6 z
}
, g& e/ E$ h8 U. f* G( a
m_pItemElem = pItemElem;
; Z" d; W! J0 J3 i: y9 a! h
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
n- Z$ r. x( D8 B) F. l
}else{
, c' M' h- k0 j& ~0 W4 i! Z% ?: e U
SetForbid( TRUE );
0 x2 N3 R3 q5 ~& f# h: U
}
9 W/ f1 ]. N p# _) L0 w( g# ^6 _( `
}else{
* K0 T' c! | E' N
SetForbid( TRUE );
0 w: z% t( ^- |6 |& e; d0 d
}
. e8 y, v% t7 N P! t. [" f9 P
return TRUE;
. r, m8 P7 U; i% I) f8 \2 g5 L4 |
}
' N' s d3 a% V. j
) a- f3 K; I1 L( n+ r3 p# I4 U
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
# G. O1 h+ C3 N, Z. p0 O5 |
{
( n' }" a, T/ C
switch( nID )
4 J" v3 b9 i( v. p" [0 p( \
{
0 h- F4 t) m* e
case WIDC_BUTTON3:
0 w: Q6 m2 F4 G1 ^
{
$ ?) E* G# w2 c3 M! P
bStart = TRUE;
! c1 U6 v3 ] w( D
break;
! j0 p# w" j& K
}
* A* Z6 F n8 D6 F9 p
case WIDC_BUTTON4:
+ V) [) S+ b, @9 @0 G6 q& J
{
, W z9 _% T w @) z
bStart = FALSE;
, Y6 y& @8 o5 W3 T
break;
% K6 H" O6 R# {" t
}
4 d" V, v/ l* i5 `( E M
}
- B ?( w& l; k" k m
return CWndNeuz::OnChildNotify( message, nID, pLResult );
5 `/ n- A4 D6 [1 r% r1 N
}
/ ]* ?" Y+ X& q: M0 m
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
* E% U( @0 S: n* d7 E5 E' E1 E' L
{
6 R% b# G2 `. c' Q
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
' R+ C+ S! a& H: c% ^8 {
if( bStart || !m_pItemElem )
3 m6 q1 W. }' ], Y. p9 d: v) v
{
* U( J7 @' H: B' G7 |; M) M
pBtn->EnableWindow( FALSE );
, w6 Z( ~2 \* G; i; T A! B
}else
7 v( d9 {0 U9 L% a1 R0 @% @& k
pBtn->EnableWindow( TRUE );
2 G0 R1 e$ ^5 t: M) y
if( m_pTexture )
; w% D9 j; [; h5 c# \4 c# v' ?6 I
{
3 V, p" {9 D/ z9 u
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
1 k" S* V9 h/ A: f5 S/ M
if( wndCtrl && wndCtrl->rect )
8 x: D6 s2 V7 l3 _% I# Z
{
/ T& f: I2 \/ _6 `- p
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
4 Y0 u' B! C6 e
}
. r0 o) W" i. G( y! _6 M
}
8 d G4 x, C% D
}
1 l" m" G9 S. o2 ^
" X. X9 f$ b4 h+ x( Q0 R
BOOL CWndAutoFood:
rocess()
+ @" L" a1 k% J: A+ w
{
- r. d! v9 e* J3 Y
if( bStart )
0 K1 L* K7 |, W6 [3 D2 @
{
h: m+ x, f& c# o6 i. I) P
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
k, U# n6 _) ~
{
# [, f# p: f1 {! G
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+ ^' M, u) k! f$ S) s
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
$ X E- N2 G( u* o# Z2 B
}else{
# M, l* K/ |- w( ]4 ?2 [0 @
bStart = FALSE;
5 d6 B7 W- f% l( D( ~4 I3 X6 D
m_pItemElem = NULL;
4 i1 I4 s# ?9 L7 r2 p: M
}
0 X0 W6 k8 h/ g
}
1 Z4 q" e0 i7 D! K" k
return TRUE;
6 x3 B6 K3 P$ ]' _8 c
}
# I$ c2 x/ O2 L" a
9 m2 e; R/ e" f& P& c" C' d" i
登录视频废话:
; d* ^- Q1 b2 A5 q
尾翼:
4 T7 d$ n' Y8 E1 T
, O0 Y+ H: a7 \) o) e K
代码:
. i) V" [, Q# d4 {$ y1 l- Z
( ?- v# Q6 J# X6 `0 Q2 o
void CWorld::SetLight( BOOL bLight )
& _: ?$ ^8 Q+ q- z
durch
/ H8 T) q5 V2 B# r
Code:
, \' l$ ^: g) \
void CWorld::SetLight( BOOL bLight )
: ?7 Y2 e/ z |5 I7 q
{
8 X( E! z5 c/ N5 u( p4 Y2 x- t
//ACE("SetLight %d \n", bLight);
) ~& t& T" @: z- l7 l
, b: ] e: k; v8 m3 ^+ X0 K0 \
#ifndef __WORLDSERVER
+ l$ W- ?$ n0 q* j8 g! |! N) c
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
$ g7 r2 H' L" L% \! U" e
CLight* pLight = NULL;
9 }6 }! f/ J) y: p h. z
, A# \1 \0 M6 @ ?1 ? U1 W
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
' ?0 j( Y2 z" K' L* X7 Y
, C M% q5 n5 L/ T1 D* s
pLight = GetLight( "direction" );
4 A j7 C& ^$ v. S, J& D
) J; [. X6 v% i3 @$ C. o! d) q
#if __VER >= 15 // __BS_CHANGING_ENVIR
% w# g+ |! s: m) H6 G% S
if( g_pPlayer ){
`2 Y8 v2 ~/ n9 K$ ]
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
- S2 n" @& c8 ^2 u4 b2 S
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
& {: D- `& n# E% D" W
{
) x5 R. H3 |, u J. p( S5 q, T
if( pLight )
, k0 B7 {6 g i$ ]
{
( p7 o. E& ?" z( b1 A7 T# m- y) Z
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
2 w% x1 T( p( d8 P R# O& t
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
1 g4 m3 J2 O$ U: n' e0 ?6 _
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
6 I F6 M3 [3 }. P
" A ~! ~9 t4 \& D; u: }6 I k% F2 e
pLight->Specular.r = 2.0f;
& n* V. Y, U+ W, w5 h
pLight->Specular.g = 2.0f;
1 e2 p. t1 B* T0 t B: I- `6 F% V
pLight->Specular.b = 2.0f;
, P8 H/ P, d! y- |* \
) @* W; ~ N! X% I
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
" f- E! k4 R' b% ^: _; P
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
& {% ~9 c/ a: e' E" x7 W" C
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
, P$ B! I* P7 M2 r' t( L) L
, H2 {" z' u# u o, v
HookUpdateLight( pLight );
1 h5 e5 @/ w0 ~/ m' Q, }
. L- N0 o# p. C& J5 u- r! ?
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' x; B: P0 P) P
* [0 E# N0 w- c' c% v
pLight->Diffuse.r *= 1.2f;
4 Z5 t5 Y& I& s2 N
pLight->Diffuse.g *= 1.2f;
" j, J, A0 @ |2 @) u0 u0 M% q
pLight->Diffuse.b *= 1.2f;
9 K! Q7 L( w% I$ F
9 {% o0 X9 G: u! z5 i
pLight->Ambient.r *= 0.8f;
: {1 n% q- u* |$ B# q& `5 N% ^* m2 R
pLight->Ambient.g *= 0.8f;
" k8 L1 ~' g( t6 j" a; n
pLight->Ambient.b *= 0.8f;
3 r3 |7 e: |; V2 e2 p4 t
! ~; k/ ]6 `2 [
memcpy( &m_light, pLight, sizeof( m_light ) );
. N8 M, |2 @6 U$ k. G/ G
4 e* `, Q" T* w* c
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% P; s0 A) B% ~1 W0 Q
D3DXVec3Normalize(&(vecSun),&(vecSun));
" t# ]2 F6 ~9 ?
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, B: C9 n# y: t5 Y
pLight->Appear( m_pd3dDevice, TRUE );
7 `5 Y* b8 Q/ ^, B, @- C: s5 P
0 {4 j, F/ @ J" r
DWORD dwR, dwG, dwB;
k8 H. r N! ?
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 {& r3 S& E) D' e4 z& d
dwG = (DWORD)( pLight->Ambient.g * 255 );
4 F3 x1 d0 p5 Z; y0 a. ~
dwB = (DWORD)( pLight->Ambient.b * 255 );
" k2 g( Z$ ~: t8 A/ D, j
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
7 F& M* X! I! e1 l- A& I
}
+ ]# K2 r' ?. H8 J
}
0 x" c \7 r1 A( R! s
}
9 ^# K" s9 k$ i. _! p
else
5 X" j0 a) i3 D. o4 f$ t4 m
#endif
( x6 K9 }& z. c1 l% e" F) U
; c1 T) e% W- }, O& W: n
if( m_bIsIndoor )
8 M# ~6 }3 |2 ]! ^1 U( }
{
: U2 f0 M; u; q: a) K6 c
if( pLight )
: Q5 j4 g$ e* T' v/ G9 ^
{
* v3 R" w& P# ~
// à??μ oˉè*
- O N$ s5 Q) n) n9 b ^; g
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
$ k" x: d8 P" V- x" x
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
! q) f1 z# `' N3 {) l
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
0 C- { E. X+ k: H! O
8 G; o v0 m7 B4 \# w9 Z' Q; `
// oˉè* ??à?
3 u; V" q% X& p
pLight->Specular.r = 1.0f;
% _# @' f I$ [+ w H/ V1 Y7 z4 Y4 a
pLight->Specular.g = 1.0f;
" h9 c" [5 o$ _" \
pLight->Specular.b = 1.0f;
/ F2 {- q& `8 I/ R1 C# S
// àü?? oˉè*
) M! o( L; o" I2 U
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
; d4 `# z, L+ y1 A
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
! E0 E- m7 {' {4 C. M9 g
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
! q5 B, m! ]% ^( a
6 v- L. u8 z: M) p
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
x( K( a8 D/ h, I0 u D/ c
{
. r- [5 a$ z! N3 J
pLight->Diffuse.r *= 0.6f;
7 z/ S* N! w! w- ~; w! ^* d5 G
pLight->Diffuse.g *= 0.6f;
6 | u5 w5 D% Y9 @8 b. N
pLight->Diffuse.b *= 0.6f;
l( o3 Q8 z. r' F' D; v2 k
pLight->Ambient.r *= 0.7f;
% n. ]& ~' J3 ?1 r
pLight->Ambient.g *= 0.7f;
& X [- v& g7 ?# s! J# `3 N
pLight->Ambient.b *= 0.7f;
3 w) P- K+ r' U( u2 I
}
9 B9 M8 Z: q: O
" @! Q9 b5 w; Y# p
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ V9 h) e& F" `. U' U, P8 C
if( g_pPlayer )
1 c5 T2 B! {% t C& W, T$ R
HookUpdateLight( pLight );
( g. A% N# Y- o3 |
#endif
, i/ j/ s; b" E( Z* `
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 Z# W X/ j- [) s
4 t& _+ I1 n0 o
pLight->Diffuse.r += 0.1f;
- d$ N+ b# K% Q3 }; B' c- y
pLight->Diffuse.g += 0.1f;
/ w+ x' \9 P* L. i1 w
pLight->Diffuse.b += 0.1f;
9 q! \; ^7 W- y" y! R, E
// oˉè* ??à?
( b; ~9 @. c m3 W
pLight->Specular.r = 2.0f;
" i/ \7 f4 C& N& Q
pLight->Specular.g = 2.0f;
- @ K. j1 E; K6 \8 T5 b8 t
pLight->Specular.b = 2.0f;
$ s4 {! y5 z0 Z
// á?oˉ
- ?: D+ x2 ~& H# K5 S/ {
pLight->Ambient.r *= 0.9f;
) O, W' l( s) m
pLight->Ambient.g *= 0.9f;
) d) }- P" O7 c
pLight->Ambient.b *= 0.9f;
9 T; C7 A' @3 w' s3 u8 s
3 I+ h+ K6 D" z: N9 m6 B5 m& J) R
memcpy( &m_light, pLight, sizeof( m_light ) );
; B6 n% D( n( h, P6 i
$ P0 J L$ P2 S5 t* R" n
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
# R P7 ]7 b2 D
pLight->Appear( m_pd3dDevice, TRUE );
7 Y) z _+ Z f7 _
, A3 ~6 c8 F Q. g7 ]
DWORD dwR, dwG, dwB;
) v O- o/ q4 `9 g& f0 E
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ K- @! z$ K! P) S/ }
dwG = (DWORD)( pLight->Ambient.g * 255 );
2 M0 w. ~' D$ f3 w
dwB = (DWORD)( pLight->Ambient.b * 255 );
) `" T4 f$ U2 G* z* M+ \6 n
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( u7 Q8 {; b0 F+ T g4 M! @
}
$ K( l, o o1 b
}
+ Y5 ^. j: p4 R# P# f
else
: j. Q7 U) e: E; x7 V$ L0 Q
{
" G# E ]! v! c3 Q" l$ O6 V: a4 M
if( pLight )
, j9 r8 p, k! n# z. V# [1 n
{
3 ~* E: ~0 ~/ V( ?6 p4 C
& C' {! d' y% }0 }! a' J
int nHour = 8, nMin = 0;
$ x. b# _7 _! M. A1 w
#ifdef __CLIENT
- ~6 H: H" j4 H. a! ~+ L3 E$ B
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
( n0 E% ^) S1 v6 j6 a; o! x. o
nHour = g_GameTimer.m_nHour;
* \% h8 H) a7 D& S! t; A
nMin = g_GameTimer.m_nMin ;
0 T6 P/ S" y; r& O
#else
8 ?% X$ a8 Y, t( U" s( L
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
, y# y' M( M5 b' p! d
if( m_nLightType == 1 )
1 _, |6 h3 t1 C0 t0 Z; M
nHour = m_nLightHour;
3 G5 u. Z1 v$ U N6 c
#endif
- |- }# F1 o4 X/ o7 T; H) E
nHour--;
" R3 D/ K1 a" R- U* y! ^2 {: `
if( nHour < 0 ) nHour = 0;
% t) |- @) x0 `
if( nHour > 23 ) nHour = 23;
! X5 a: \( ]$ o9 @, {
2 z7 ~, x/ y8 |% Q
//if( m_bFixedHour )
- a* c% {/ s$ f/ E. i
// nHour = m_nFixedHour, nMin = 0;
S+ M7 C C: ^' X9 J
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
. s" c( c' }) U7 B/ m% U' ?0 W) l
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
+ c, [6 j2 a7 c; ]8 e0 U
5 S/ O' ?/ L: k* ~5 f& r
//m_lightColor = lightColorPrv;
& b( Y g& D3 q7 x) J- k
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
2 f8 A/ M2 M B
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
$ O# E: S: w5 {! F: w
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
; F) v: r" x* p
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
' z1 U. z- l$ t
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
2 A3 p* Y0 ^, K
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
- [# h$ E. [: J6 S# n; {4 m& S
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
N7 Q9 _& f; H8 \/ P$ }
8 f* y; F% |, f! x w4 z0 Q! `/ b
// à??μ oˉè*
! z) I' N& \7 _# l8 F, w w
pLight->Diffuse.r = lightColorPrv.r1;
! ^# }2 O4 M$ t/ I6 }3 ?% J
pLight->Diffuse.g = lightColorPrv.g1;
3 l4 Y, V# r3 K0 J
pLight->Diffuse.b = lightColorPrv.b1;
' y# b* V+ t, f2 D* n
// oˉè* ??à?
* r- g) I# W+ H1 K- Y' R7 _3 j. ~( _2 X
pLight->Specular.r = 1.0f;
?2 h5 K2 A6 W' r+ x
pLight->Specular.g = 1.0f;
) b2 J8 r* U# n9 s, i- r
pLight->Specular.b = 1.0f;
5 c6 N$ @# @$ ]7 e
// àü?? oˉè*
$ a. y9 l! m5 `$ A# c. o1 I5 m
pLight->Ambient.r = lightColorPrv.r2;
3 o8 m* N' ^* j! j
pLight->Ambient.g = lightColorPrv.g2;
4 z9 [* G9 d5 i' ]( N/ p1 T3 }
pLight->Ambient.b = lightColorPrv.b2;
; c1 W! l* {. Y( F$ r
0 f$ c9 P$ [% N6 p
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 J" { |3 H4 }7 `6 ]
{
7 s( l# I( u1 \/ Q8 o/ o; Q$ V7 R
pLight->Diffuse.r *= 0.6f;
! H. f0 t: I) v
pLight->Diffuse.g *= 0.6f;
! K1 o. V' [/ }
pLight->Diffuse.b *= 0.6f;
. R4 Q( x7 @4 Z. n1 U( p$ {
pLight->Ambient.r *= 0.7f;
9 ^& E& c4 }$ @: W! [$ v5 O
pLight->Ambient.g *= 0.7f;
1 K9 L& \/ T& Q2 h _
pLight->Ambient.b *= 0.7f;
9 O- i) n& X' ]# _/ @6 V0 _3 ?
}
- t8 c h1 K! F' F; \ V; T3 }, `
4 e' X- k. [5 N5 c
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ j& g2 ^9 G- I9 t
if( g_pPlayer )
. r; S2 r" t* @
HookUpdateLight( pLight );
* U" E( `7 h2 Z5 F, P
#endif
u' a3 S: D" ]* Q1 @4 S# g
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
! U& C. M, N: |4 S8 K$ q0 I. O9 K' I& q
% n! {, T, |6 ~1 |
#ifdef __YENV
7 k4 Q+ X: R( b( Y _8 b
pLight->Diffuse.r *= 1.1f;
8 _/ B# Q. @3 b
pLight->Diffuse.g *= 1.1f;
) x# B" q4 T. Q. e
pLight->Diffuse.b *= 1.1f;
7 Z) D% O; O8 B
// oˉè* ??à?
5 i5 B0 P G$ W% H) Z% M
pLight->Specular.r = 2.0f;
5 l1 q' q" c: k+ `4 M1 X/ R5 l
pLight->Specular.g = 2.0f;
; f' X: `" J" Q6 {7 j+ q
pLight->Specular.b = 2.0f;
: \" G& t6 X* S
// á?oˉ
* T$ w8 x# G# ^5 g* `
pLight->Ambient.r *= 1.0f;
, [# b" K( x( m( a1 O6 V0 a
pLight->Ambient.g *= 1.0f;
, v" o% m! R* k; n, M
pLight->Ambient.b *= 1.0f;
( H8 K' y* h4 E% o" N7 r# z
#else //__YENV
4 F9 N- q* u. `: n: P' P& Q
pLight->Diffuse.r *= 1.1f;
, S8 i& S5 Q* g+ X! b8 ]
pLight->Diffuse.g *= 1.1f;
. Q! j- v# \" G( M2 A- x
pLight->Diffuse.b *= 1.1f;
Y3 C% I* k% ]9 K/ j; @
// oˉè* ??à?
5 Q, S0 v4 w# w
pLight->Specular.r = 2.0f;
2 a. ~9 L3 l5 x k# l8 l1 b ~
pLight->Specular.g = 2.0f;
* ^9 p: T0 J) {7 X# _$ M
pLight->Specular.b = 2.0f;
P3 G I* ~3 S" ]
// á?oˉ
$ H' X5 U. ^. y7 z- M' B
pLight->Ambient.r *= 0.9f;
8 C: A- Y) s7 d) j7 |
pLight->Ambient.g *= 0.9f;
% g. e1 A, F0 O3 ]4 q6 F/ A. V. x
pLight->Ambient.b *= 0.9f;
, [& z4 \) I7 i0 k3 n$ H3 O$ f$ s
#endif //__YENV
: n8 V0 D* Z" v" s
1 U7 ?7 w9 `; Q9 ^6 R' @$ F! }# N, b
memcpy( &m_light, pLight, sizeof( m_light ) );
; R' H9 C6 ^3 i3 l; B0 p7 Q
. n8 A. m1 I9 s( l3 ~% [
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
% q9 z! r! O1 y, a9 x/ p- e
D3DXMATRIX matTemp;
, n+ r ?% j) b7 z
static const float CONS_VAL = 3.1415926f / 180.f;
4 c' X8 e% j; [& F5 b
2 Z7 E5 k0 U) j" `" c" o
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
1 J: o; Q- ^. g+ x% T/ U
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
2 i f3 F) s. x4 f/ X. p
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
. ?+ c; f$ v" r2 n# z b1 X0 y
pLight->Appear( m_pd3dDevice, TRUE );
1 N0 T2 g( K. ^( G* C# e$ N
0 v a/ ^' ^2 ~% z0 |% k1 [1 i2 v- l
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) B/ T a, n/ t! J
// D3DXVec3Normalize(&(vecSun),&(vecSun));
( r+ f: h+ d- S* V0 u
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ Y" ^/ ~( ]. g% T% S
7 w+ ^/ j5 f: w/ t2 Z0 _& x- j
DWORD dwR, dwG, dwB;
( s; _- K' E* x1 `4 c; N
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ t. D" V: q r. t/ h! N" i
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 f A# S) {" j0 ^/ C2 A4 W9 N: z
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 l( i: A! } c3 \6 W5 {
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# B0 {" S3 q0 b$ V7 W8 I. t+ O" C
}
) Q% K1 d/ m* F1 Y" W" W
}
3 U4 H/ l% j. t7 x+ W
' j/ r0 W, X. T
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
# P. o6 P6 |9 o% i' i* m4 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) );
" p( R+ l7 _6 {8 T( S, [6 N$ Z& g) f
::SetLight( bLight );
" N4 { @$ V. r8 U
3 m+ j+ l9 l1 D, s7 E
// ±ao? ?D?í???ó á¤à?
1 _; R/ Z$ ^: B% ^. E0 f5 a' B
m_pd3dDevice->SetMaterial( &m_baseMaterial );
3 H' Y1 C" R2 s0 {) X7 C
1 P4 G6 m6 k; z9 A
#endif // not WORLDSERVER
# X, R0 Z5 Q$ H, t4 G3 P
}
7 C; m$ G f* W7 g( e
并更换
: n1 f2 k8 [4 d1 P1 c ]7 z
Code:
# o: U. n& |* e: G0 _: @& M
__FLYFF_INITPAGE_EXT
& ^ e# L& c! u b6 u
定义
2 [6 g; `4 e/ X0 s1 ~" K
9 F- M" N/ h( |6 M* D' \
3 u/ S; R, F1 }+ m
& k% n* k$ w4 D- n1 ?) L# f
1 T+ S, V9 o2 a
现在终于删除我的狗屁加速...
9 j$ n0 \! V8 {- Y$ U! \2 I; V
! b1 [6 {0 C4 k4 k2 L4 z; r
: L* Z$ y; U5 X; L' D+ d x
& }- [0 U- g/ i! y: b6 ~5 y
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2