飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
; a: W1 |/ e6 |; n
尾翼:
8 q: n7 ]9 L8 y( z/ U9 B
, s/ `' q; v3 | [- j& v+ ~5 \7 R, V
代码:
5 X7 X0 S/ H% M g
CWndAutoFood::CWndAutoFood()
6 @1 m8 S5 s, X
{
% x$ n4 [6 d7 N- t8 l
m_pItemElem = NULL;
( [& W: C' x3 s; J( h( m% y: U u, [
m_pTexture = NULL;
$ ^( o* ]( u: l& t
bStart = FALSE;
: L/ i& h; s( @; z2 L8 V/ l" R
}
! F$ |3 T8 l" Z
2 U" u8 X. Y$ M* b' _; v
CWndAutoFood::~CWndAutoFood()
. e% F; N* I2 N- R9 O# M) c
{
: m0 u. h: j1 z6 e$ i
AfxMessageBox( "AutoFood ist gestorben
" );
; U0 R4 b: i' k
}
, }" i; t: p" d/ C4 K
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
0 A0 @9 c/ H2 H8 J( g% v
{
' S) v# p* b1 V' L1 k4 G
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
* W! c5 d; ^" G+ t, n8 l
}
! z* e8 y2 s' K
O& r F% Y5 [: b5 t- h! G8 V
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
& u7 p2 B3 ^# Z: O3 |+ s
{
6 E9 F" u6 E. }8 _! a" }1 \6 t4 D
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 ~6 @% L b) C0 g: N+ g: ~. |
CRect rect = pWndCtrl->rect;
; S) G$ ^# o6 V# g: {
if( rect && rect.PtInRect( point ) )
' f) k I# m: e6 U
{
/ W; O( _& E! P& ^- H9 \7 f
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
' Q& G) b; {' a
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 ?' Q# ^4 f) t- u! u9 }9 B3 A
{
Q/ x5 v! `) X3 x1 ? i* Z9 {# Y
if( m_pItemElem )
# V: y- J# B3 P- o% A+ g
{
5 r0 G& k/ R7 c$ q; W
m_pItemElem = NULL;
& C% P# ^, c" X# [
}
9 j( n5 U0 V: D
m_pItemElem = pItemElem;
0 w: \, K. ?1 s2 D: B
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
; b) l, Q! o$ `% g# K, n6 U$ w
}else{
' h- Q" c6 m2 ?. J
SetForbid( TRUE );
- Z. o, b2 E3 L% n6 h8 V
}
# p. `. k3 T. H4 r+ f/ A7 @
}else{
" v9 n8 a& v& F2 K* f8 D, ^6 F0 F
SetForbid( TRUE );
- N( k, I* s9 V1 |& y
}
* @% M# ]2 `" a* `* Q7 Y
return TRUE;
- M. k4 G4 D: i3 i+ j ^4 Z: l
}
* u, ]' y* F/ {: }
* M; t0 i' e" h
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
+ D; ~- W7 B" ?
{
3 |0 _, U8 r: j X! w/ I9 f
switch( nID )
6 Y% c' L% z+ D4 h
{
& Q8 E* T0 D! _, L0 ~; F
case WIDC_BUTTON3:
# [: P2 v2 g; b8 Z8 t) i
{
- U q/ a( N; W3 @3 m) e0 G) N
bStart = TRUE;
: N: \5 l* k+ g5 H( C" d/ F! E x
break;
4 J! Q( S& E/ \( g6 I& }
}
% K, f+ ], [" h4 }/ m" s! R
case WIDC_BUTTON4:
3 M+ i; T$ S8 E
{
5 L) @/ s: _" t3 F
bStart = FALSE;
4 Z+ l9 j; q9 E7 I# \3 n
break;
. G. i- R% o! H; h9 _
}
/ y) Y+ C' }6 q& m9 p2 [
}
% o: C4 t' n( {2 s
return CWndNeuz::OnChildNotify( message, nID, pLResult );
p z" W! w& l
}
! Z. Q3 k+ Y, t9 p
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
* i% T0 Y8 S4 p
{
- u! s8 S6 t+ f, T) V
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
4 i1 [& D3 ]7 U' A
if( bStart || !m_pItemElem )
1 L* F+ z5 b. F5 i
{
8 p8 D. a% f+ a( ]+ d+ S4 s8 r6 w
pBtn->EnableWindow( FALSE );
* G" y$ l9 Z1 [8 Q5 h6 g' o
}else
1 B/ G0 O l1 V( _0 Z! a( P3 Q- R
pBtn->EnableWindow( TRUE );
" J2 Q5 e0 S9 V' p1 A
if( m_pTexture )
: k) l( e4 W( E
{
; I* x; m0 j0 Q" x4 F
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
$ |& e C3 }. e
if( wndCtrl && wndCtrl->rect )
* X0 p! {4 w- ]/ s
{
6 q6 B0 F% {9 c8 g( Z F% I
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
- m1 J% J! I$ t9 F/ u
}
; |5 m( S |# s( V
}
5 f: N" q4 L+ f$ T
}
' K- |. C# l& t) p3 b
" C( _8 U! b' h; g3 i* t1 w, _3 ?
BOOL CWndAutoFood:
rocess()
/ Z* @- D, s. d& U3 c3 D9 g
{
2 K# {/ w1 j- K
if( bStart )
5 Q% l8 z: ] n. B
{
7 N E' S d! t3 a& F7 i$ n
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
& b( r' y8 r: f* t* q- Z. j& M
{
2 N+ w7 {1 }* _/ j9 b
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
1 h6 @0 O X1 H# t7 ?
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
' w1 [) X" L, C& F+ w' ?3 S
}else{
: B8 S d3 ? ^* m' E
bStart = FALSE;
# M4 _* d7 w0 X9 A
m_pItemElem = NULL;
# B! M, T, S# ^( Y( d$ f4 a
}
% ^9 j! v. o! l. l5 U
}
2 j& E1 V" ]+ ` }& O/ `; _1 q- @
return TRUE;
: |# `0 _% Q: D6 @8 H
}
8 c1 g; N5 y" h- V/ h" ^
% V* t% J# }% J! l. U& G5 U' Q
登录视频废话:
. M; L) ~+ Y" c# o; ]) f! Z
尾翼:
2 }# H% M0 \0 h9 Z2 O- p r4 S
* `5 {& O+ A' V* w; a( k1 _5 o
代码:
' ~3 y( i( w$ L
. p6 {9 w- N5 A; f
void CWorld::SetLight( BOOL bLight )
6 H7 ?; L4 B! U' Q0 v
durch
# i, c1 z* n2 [; P5 s
Code:
5 b! d+ X0 p% n* P# n# `* [2 h! v# S
void CWorld::SetLight( BOOL bLight )
8 y# w& m- N9 {! Q) O: K! f& P
{
6 r9 D3 ^! l' g
//ACE("SetLight %d \n", bLight);
, ] J4 k) y9 X/ J! @' G: X
6 C( c5 b, U2 `
#ifndef __WORLDSERVER
& _$ W; J- a% E# Q; S' k, p" A
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
7 x2 c- k0 I5 u! ]0 J
CLight* pLight = NULL;
h" x/ u% \1 G$ {$ V b% K
, I/ k, {6 ? i: x, ^
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
$ F8 ]$ r9 D" S$ d& d t
+ O( s: E# {- |; I" Y' l
pLight = GetLight( "direction" );
6 ~9 Z: |5 u" b$ L1 o Q [. z
7 V0 ~, p6 e( _! E
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 `7 S& V; [/ O0 X |
if( g_pPlayer ){
" l4 A/ ~+ I4 S3 Z, j( C% q
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
5 |% ^0 R# i3 U* G+ z3 P: U
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
6 g* @0 ?/ C# E# |2 f0 H
{
( Y9 `% s" c7 P, x* E1 D
if( pLight )
; |' p$ {! R; ^) E( Z" d( P. ~" w
{
1 s8 n! }; Z) s4 x
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
. a9 P% Q. g% }) V) ^
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
/ F/ G* Y: U# B! F. |( I% ~
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
0 `3 L; R5 x0 h* ]4 g
6 c+ k. i/ R; J( T
pLight->Specular.r = 2.0f;
1 H; o3 O4 D3 }) [- Z
pLight->Specular.g = 2.0f;
8 n: d3 ^8 F- Z4 G$ T- P& l! ?
pLight->Specular.b = 2.0f;
* y/ R/ j8 L4 a5 \8 {* K: N
+ j8 r/ v. D, |
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
& F- J) c5 [* E' K! `
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
" C$ J/ I) M' E$ H
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
" @1 h2 R7 _, V! X5 w
& p9 Y; z+ a& P9 E4 E4 U
HookUpdateLight( pLight );
. L; p* F L A5 x. \
8 \+ x0 q- _/ i
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' |( J4 h/ c/ ~3 v0 y
3 f7 ~2 g1 R+ B# ~9 {9 g( U8 e
pLight->Diffuse.r *= 1.2f;
, u& R8 t5 Y. M0 n6 ]
pLight->Diffuse.g *= 1.2f;
) ?; v/ [# Z/ [/ ~
pLight->Diffuse.b *= 1.2f;
* j f# }4 _" X" Q' y
& Y; _; J8 D$ w3 u
pLight->Ambient.r *= 0.8f;
- }& E1 V- V$ J! V$ w
pLight->Ambient.g *= 0.8f;
5 h8 Y$ K( a, ^! S% W7 Z
pLight->Ambient.b *= 0.8f;
2 Y/ d& N% b# k: @' ?" k) u
. C8 E- B& S1 L% x, r8 [
memcpy( &m_light, pLight, sizeof( m_light ) );
0 u6 y: [6 u0 L( p) j
- a2 J* `. y& ]
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
, P+ L% v$ x5 T3 ]8 F
D3DXVec3Normalize(&(vecSun),&(vecSun));
4 ^0 G% g. \. x2 V$ O2 V
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% a. U0 E8 N8 S! W) v/ W. v/ P
pLight->Appear( m_pd3dDevice, TRUE );
: f' j5 ?$ y3 T4 \! ^! m6 s
$ k# H4 I% I& c- g
DWORD dwR, dwG, dwB;
: Y* u, l% l( [) y2 H
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 r" O, _8 J: J; O
dwG = (DWORD)( pLight->Ambient.g * 255 );
2 K6 U* h+ d3 P6 a. J' d( _
dwB = (DWORD)( pLight->Ambient.b * 255 );
' _7 ?+ l/ B# v8 f8 W9 P6 V: }
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
8 s8 f$ A% ~& A) J3 R
}
. D% _$ V4 A& b G4 \% X5 w
}
( [* v! W5 {4 B. [* j9 P. q
}
7 n8 \7 N# {$ C- g/ U8 q
else
# q6 x! y3 I7 s0 c) j4 Q6 ~
#endif
* [3 k: S7 x( J4 \
/ x* |9 W* `" E& Q1 m" }3 ^
if( m_bIsIndoor )
' v5 W* p, E+ @ w) b8 K9 l+ O
{
2 \( B7 I" B U
if( pLight )
$ Y2 \/ [. i, R, ?8 J# K& h
{
( p0 e: M2 n4 |7 [! T
// à??μ oˉè*
7 l1 m1 F6 F! A) }3 d& Z. b
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
: b) ^$ h9 ^! D* @, g ^# e( K* n1 a3 e
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
' z- K( v# N5 t5 e" G7 l* F
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
; S/ e3 j6 D0 U, E
5 n7 @; I9 U$ f H% ^! n
// oˉè* ??à?
O1 C9 ^: i7 v( c* `2 E, l4 y
pLight->Specular.r = 1.0f;
) k1 p! v* p+ I( M" j7 J. O; ^
pLight->Specular.g = 1.0f;
- Y7 Q- h! X' i$ Z
pLight->Specular.b = 1.0f;
( q" ~. r4 p U% Z4 }
// àü?? oˉè*
& H6 w$ v' N: i( O" O
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
- ~3 \! I- h1 J4 k& b7 e
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
' D" M2 l" k8 i$ y: B- G9 ?
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
; o! h1 B" a+ A$ Y
5 H- ?; L W# @ ?$ }) o* `# U
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 U3 q, D z5 \0 D/ R' s& _
{
& r$ ]4 }0 E& g5 F( F
pLight->Diffuse.r *= 0.6f;
4 l" S$ j' j1 L9 ^9 ]! j# W
pLight->Diffuse.g *= 0.6f;
, a. I# A4 q% R1 y0 G2 G) e
pLight->Diffuse.b *= 0.6f;
" p6 N$ d' o1 M2 `9 S
pLight->Ambient.r *= 0.7f;
6 Y ?7 O% O8 ^8 a6 ^9 L! H
pLight->Ambient.g *= 0.7f;
5 ]; o* t" E% u: _- R8 |( w; @1 u
pLight->Ambient.b *= 0.7f;
* p5 B% w2 Q. R r$ y# @) a
}
/ ]8 n$ H2 _0 x/ c8 B
2 n% M: ]! J1 D" e! e
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ F5 i1 `, T0 U- g2 Y" ^3 S" b1 G
if( g_pPlayer )
6 C* h, r0 S# v
HookUpdateLight( pLight );
* a" ]8 P: S/ D; ?2 A3 w7 M& d
#endif
C: D% ]* m, m7 A
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" M2 V# w- `0 z& @, F
8 _' W( }1 R+ S7 Q0 Z( e" P7 Q9 h* ^
pLight->Diffuse.r += 0.1f;
9 C3 C6 C2 m. p8 v0 @1 T: V# p
pLight->Diffuse.g += 0.1f;
- g5 C e' z8 c
pLight->Diffuse.b += 0.1f;
6 O/ r& _$ S9 y
// oˉè* ??à?
2 g3 H' F% T! v" Q2 H/ V2 f' [/ l
pLight->Specular.r = 2.0f;
7 m/ W$ Y6 R v0 B+ z6 ^8 W7 f
pLight->Specular.g = 2.0f;
5 `5 f& a3 ]6 m6 {9 {+ A1 C
pLight->Specular.b = 2.0f;
; @0 e$ x2 w) U/ W
// á?oˉ
7 o& ] y! Q- I4 K9 Y$ w& t
pLight->Ambient.r *= 0.9f;
# _ K z5 Z7 [
pLight->Ambient.g *= 0.9f;
; K4 D/ v% x7 `, B4 a
pLight->Ambient.b *= 0.9f;
! q7 }, L( I$ z' h; y. w: X
9 u* B+ p5 @% o' Z
memcpy( &m_light, pLight, sizeof( m_light ) );
3 } c T7 N" H9 C3 h8 [: n
7 m$ U, ]% g9 Q4 M! {
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
& A& x9 M# [ ?( r8 y% F4 L- P
pLight->Appear( m_pd3dDevice, TRUE );
2 I% k! \- o9 k* K, T1 V
4 a& G8 j4 E; L) M. j. k
DWORD dwR, dwG, dwB;
3 s; g) s3 z8 e
dwR = (DWORD)( pLight->Ambient.r * 255 );
( ?) K% w: Y3 p' p
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ W2 I1 m; L: N; z% n* W
dwB = (DWORD)( pLight->Ambient.b * 255 );
2 v9 n" h& S5 D
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; } U6 s* a! B. m" z) j% Y a5 Q
}
, J4 _% R y, k7 Q% K% W8 @$ j+ |2 t
}
8 D$ Y# u3 r. H' Q1 {6 Z! K
else
9 M$ u N% \3 e# D0 G" c# K; A
{
6 e4 F. \0 P) c8 _1 {
if( pLight )
) u; L- \( P3 v3 ?8 S
{
$ ?* ?: | m' A+ I5 I' B/ u0 I
, W$ {! B$ a. w$ T! g
int nHour = 8, nMin = 0;
6 n9 s" ?- b; p' F% s; J$ U1 s
#ifdef __CLIENT
+ E- }; C4 \8 U# {# S6 z `4 M
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
+ f4 m9 y1 ~3 `3 |" F
nHour = g_GameTimer.m_nHour;
* y( M5 m$ o7 n& x. l
nMin = g_GameTimer.m_nMin ;
) ^9 N4 D4 g( t6 P! l( b" C
#else
( b8 H. @3 R4 {6 e+ i
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
4 y# o7 E$ b7 U8 E: l# R! X
if( m_nLightType == 1 )
# @: }5 V% K9 G9 g
nHour = m_nLightHour;
- Y; {/ P& w5 q. {6 G
#endif
) F9 |' q" v7 N) @
nHour--;
8 j$ c/ L1 i8 z6 N
if( nHour < 0 ) nHour = 0;
/ k5 s& L- j$ }0 R( ] X8 {
if( nHour > 23 ) nHour = 23;
, i- {% ?- Z5 m, r, [% d5 I7 t
R8 _2 s1 V- m0 Q" {
//if( m_bFixedHour )
" z$ x; D, I* `) W, e4 l% O3 q
// nHour = m_nFixedHour, nMin = 0;
2 v/ m- q1 ^2 z0 X& G
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
- `, @, j1 E2 d% |7 E
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
# i! N, G# o0 k! i
' ?, U5 E& v! ~
//m_lightColor = lightColorPrv;
6 J, v0 `/ p( Z# L
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
% X' E O" X5 J5 A- A; h+ Z
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
; A4 k0 F# G h8 X( ^
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
* k" { u2 k- u) e
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
( u; P5 B% |" y
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
7 I4 `( S% ^, C* [; h; B: ?
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
6 G( @' q9 ?- P# ^; w% [
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
( K6 B6 D: o9 @& Z
2 A# u; `0 z+ l, d" f
// à??μ oˉè*
& v0 v6 v! I( F. K2 t, l
pLight->Diffuse.r = lightColorPrv.r1;
% R2 ]4 Z5 y; W+ o# [
pLight->Diffuse.g = lightColorPrv.g1;
5 o; J- R4 J$ T: s$ Q& K4 J# C
pLight->Diffuse.b = lightColorPrv.b1;
! }( {! c J- p: ?; i4 ^" C
// oˉè* ??à?
`- t& e3 k* ]$ V8 `
pLight->Specular.r = 1.0f;
* ?: J6 I8 b4 d, D6 c. ]% a8 ]
pLight->Specular.g = 1.0f;
4 `4 {9 ^( O- ~+ E
pLight->Specular.b = 1.0f;
" f' e$ i; ~+ g# O0 b l# l
// àü?? oˉè*
8 u2 h* |2 ~/ y" ]
pLight->Ambient.r = lightColorPrv.r2;
2 ^$ {+ m" Q' L4 Z0 s+ a$ p5 [
pLight->Ambient.g = lightColorPrv.g2;
# {7 @% A& k% k# Y
pLight->Ambient.b = lightColorPrv.b2;
# x' [+ L3 q/ T
) `& U. t, x9 I& O% a& L
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' a( \2 ~, v3 t+ e
{
. ?) F+ O2 z4 g1 R0 V
pLight->Diffuse.r *= 0.6f;
5 g6 R {- C" W- R. L
pLight->Diffuse.g *= 0.6f;
& ]$ l. u d1 X7 C# q/ r7 J" h. Z* E
pLight->Diffuse.b *= 0.6f;
, ~1 B& e, x( d$ x6 D$ e+ d# G
pLight->Ambient.r *= 0.7f;
* L" E4 n3 J' F8 K7 }" ]
pLight->Ambient.g *= 0.7f;
6 N. l& Y" @# u8 x" B+ O: N" L [6 I
pLight->Ambient.b *= 0.7f;
5 F( Z0 b5 E, C5 e6 s
}
4 M; V% J. O: z
# e/ v# g) s5 J( E- o0 f
#if __VER >= 15 // __BS_CHANGING_ENVIR
) v9 G3 r) `" d
if( g_pPlayer )
* R2 r; q# U. v
HookUpdateLight( pLight );
0 a0 a6 I& h2 M9 N, [8 j+ h
#endif
) O2 k g. X7 p. X1 f
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
_3 I; e4 t3 u* w; b4 u
0 I( t5 {5 j# W* ]" L% u8 G
#ifdef __YENV
; U) h9 I% d( B* B; { }
pLight->Diffuse.r *= 1.1f;
( F& i+ z# {! O, ] x$ }$ h, M
pLight->Diffuse.g *= 1.1f;
0 r( R$ u) ]9 a# }7 n
pLight->Diffuse.b *= 1.1f;
H- K. J: @9 u# }* @5 U
// oˉè* ??à?
4 l* U' F! X1 x5 J* [
pLight->Specular.r = 2.0f;
: E0 i+ I* y: V K5 J/ ]
pLight->Specular.g = 2.0f;
5 o9 s2 [8 y- k1 l8 Z) f
pLight->Specular.b = 2.0f;
, s; V# P1 p2 @0 N8 r& H
// á?oˉ
' `3 P+ u9 J2 P1 F5 B, m: P9 I
pLight->Ambient.r *= 1.0f;
- i7 g$ Y3 K8 Y) J( t4 n' f
pLight->Ambient.g *= 1.0f;
4 m$ d# t F# ?% O) z% m
pLight->Ambient.b *= 1.0f;
6 U; F' E& F3 ]8 Q* \% i
#else //__YENV
) D% P- G1 J. i5 @ [
pLight->Diffuse.r *= 1.1f;
) H* f* x% m$ k$ |
pLight->Diffuse.g *= 1.1f;
: \4 p6 h' y2 U) M
pLight->Diffuse.b *= 1.1f;
8 S/ Z9 Q3 p' }' G
// oˉè* ??à?
4 W2 T# O# h$ ?# Q
pLight->Specular.r = 2.0f;
, y/ Q4 J6 G% a! F4 h8 R
pLight->Specular.g = 2.0f;
: H6 h9 R6 f7 L* i1 I& F0 n% A
pLight->Specular.b = 2.0f;
, G" @/ `& ]; |# F, f
// á?oˉ
, W' N0 R, w& C( \
pLight->Ambient.r *= 0.9f;
; J/ D! @9 }* \; ^
pLight->Ambient.g *= 0.9f;
7 m3 }- o0 D5 U# ~% W7 j! \
pLight->Ambient.b *= 0.9f;
4 N. k; I w! T. P f4 [, C( z" u
#endif //__YENV
- M+ K' A- A P' q; D& o- R2 \2 ^8 M
$ k( V8 h$ N" A
memcpy( &m_light, pLight, sizeof( m_light ) );
, g; X$ O" [+ G3 F% r9 W% B
7 M! ]* O& c* w. K5 X
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
; T0 ]2 T0 j4 H5 P
D3DXMATRIX matTemp;
, u5 _- ~& ~; ?' u( g
static const float CONS_VAL = 3.1415926f / 180.f;
& \4 T3 P/ S8 Q0 Y0 {' V
2 V A [# O' Z. G# O7 C' L9 s
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
" I N2 N2 Q" O9 O- c" E
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
9 ^- ]$ h; O& ~' A+ f
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
3 D3 x. T% _0 S; T8 r* T6 V; x* W! O
pLight->Appear( m_pd3dDevice, TRUE );
9 O5 K; }7 p! b; t
3 H. G' i0 W" ` ]+ H9 Q
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: }0 d4 U! f5 C6 D% _$ ^
// D3DXVec3Normalize(&(vecSun),&(vecSun));
% Y$ P. Q) g3 }3 ]. Z, G7 b5 I7 F
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
0 T1 n# P) ?! p# w/ }+ j; c
# l- G( G$ h7 z
DWORD dwR, dwG, dwB;
2 t9 o" P$ d1 l9 q# b/ R' Y
dwR = (DWORD)( pLight->Ambient.r * 255 );
% F( v; u2 h0 Y% k
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ D6 M- s5 B% Z, a9 @& q! ?
dwB = (DWORD)( pLight->Ambient.b * 255 );
& u& \7 W* |/ l" r
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! ]' g. C) X( L0 g7 A
}
/ Q' ? ?$ p* Q+ w
}
' ]( ~4 \1 U( f
4 `! a" p6 }) d- D, ^8 `
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
1 F! y- t# H8 l# [$ m4 \- [
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) );
) Z; B5 h+ o- N% i7 ]
::SetLight( bLight );
7 ^5 C0 Y+ e3 x- c/ k. G
1 s+ s- h' X3 M! H& `. f( ]8 ^6 a
// ±ao? ?D?í???ó á¤à?
8 o0 x+ B) @* m( F5 h: b6 R! e* S
m_pd3dDevice->SetMaterial( &m_baseMaterial );
% O. |7 X/ l; _1 i$ P7 H+ L0 T
1 S- S/ n6 G4 o" u. y% }1 G$ K/ b! y
#endif // not WORLDSERVER
3 s0 f: Q3 f" c* q6 f
}
8 ~* {8 R: n& J( u# E5 H J A& C
并更换
$ ?8 K5 h) q; U$ ~
Code:
% C8 t2 I" a) X1 |
__FLYFF_INITPAGE_EXT
1 a6 l! T$ x; ]' v+ e
定义
/ I' Z4 [8 u3 o. n1 S$ F H0 g
* L0 K$ m; x4 M5 a
4 P! T+ {! L2 j; w
" o) a. c6 b8 p+ i4 K$ w$ v
+ H+ U. d5 m# i+ s3 `8 d0 I
现在终于删除我的狗屁加速...
2 I- E3 ~+ t2 ]* ^0 p; l+ t
% v$ ~$ V! K: A2 {$ n: I
3 o5 M: {1 g' T$ \
5 T# a9 ?) p, a3 W" F
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2