飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
5 |& q; U. o. w
尾翼:
0 A- Q R# w" b% D) X
; O: ~; X$ W% q8 p
代码:
: R# s4 F: B; H& h0 A
CWndAutoFood::CWndAutoFood()
, C) o* _2 Z8 L+ o# g6 o$ R
{
% h) V- b% M. z o& i$ c
m_pItemElem = NULL;
/ \. B( L6 a R; |& [, S8 S, Z
m_pTexture = NULL;
: A1 Q( V- n9 c8 Z/ A' H7 E
bStart = FALSE;
4 \* s6 v& N _% k4 u- z& c D8 z z; W
}
5 `6 w1 P- s5 N3 m) f
* K% _/ D9 w: Y" G0 n+ X T
CWndAutoFood::~CWndAutoFood()
0 y$ _7 `( z: f6 D3 s5 X: z* Q
{
1 ?4 m( G( x7 H& `* [
AfxMessageBox( "AutoFood ist gestorben
" );
3 n4 B* Y; [- |7 Z: g3 t' b, h
}
- m, q$ O( H e2 Z9 @. p
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
: `+ d! m* O6 B, K& v
{
+ W" B2 I: a' E% d/ e
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
% F F, l# C8 h |
}
+ H# {0 E" q# N8 t. X4 U% Y" I
; ~6 r) V& a% y5 P/ E! x- F
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
. J: M' Z4 r" D8 c$ f I! n0 w3 _
{
* _2 O- B. r! G) |
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 E8 `% }+ y( P `
CRect rect = pWndCtrl->rect;
( s, ?3 M2 o ?/ `: y
if( rect && rect.PtInRect( point ) )
3 S4 {+ {8 G- H4 S' E: b$ j: T# t
{
2 S& p3 h% d) i# R# G' z
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
+ j& } p! V& ]- L8 u' n# s; y
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
( M: z9 ?/ f2 ?* v2 Z4 j
{
g: Q! w* `* o b( B2 K
if( m_pItemElem )
. y7 [( T: O# X5 z
{
- N$ \9 }0 l% ?7 z
m_pItemElem = NULL;
4 F& i+ E3 ]2 O& r w
}
# @, [6 N* F R' ^) a
m_pItemElem = pItemElem;
4 k" |) l+ Z' A, Q. ?% k
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
- @- Z; w4 O. k. v% @) W
}else{
& m& [2 F* Z5 v$ }! I
SetForbid( TRUE );
" x! `/ r5 c8 M7 e! Q' X
}
3 r6 O9 u# u5 }) t
}else{
3 P/ U1 K2 E* p8 N+ V
SetForbid( TRUE );
# C4 s, N X3 E( W& E$ B
}
0 G. B: ^! s6 N F8 T ?8 s8 E
return TRUE;
* X" M4 G X8 C, a
}
8 a1 D! G3 j% |; d5 `# a U0 S
& l7 Y P8 h6 E8 E$ J
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
# s7 S) r+ s9 s4 N4 O [
{
/ [- E0 g2 K( q; l& n" z" L
switch( nID )
# F4 n. b: W" F2 ^
{
. X+ J# B/ ?5 K# P k% M7 U9 S
case WIDC_BUTTON3:
9 V$ H% \, l/ r5 O
{
: V( m. p8 `$ j- m
bStart = TRUE;
- A2 C6 `. r% x: H1 n1 N
break;
! r' U9 B$ z# {8 R. j( I
}
# _0 \( r& {! M2 ]" J
case WIDC_BUTTON4:
, [% H1 ]6 R. F, P
{
% @& R8 [7 N' H S0 u& D/ y6 _
bStart = FALSE;
8 e4 A) t/ `/ J2 U( [- L
break;
7 m+ N+ C* w) q$ j- {9 Z5 {
}
$ z" F" Q7 R3 s7 o) N5 o2 o0 S
}
5 m3 s5 L) w" h2 \( y
return CWndNeuz::OnChildNotify( message, nID, pLResult );
, T, F6 O0 k- P7 I* }
}
0 g/ N' F# Y! X
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
& U& g' y# I: i( S1 @
{
1 t; K2 q% \7 p G+ E
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
# A( a7 C3 ]4 y& R
if( bStart || !m_pItemElem )
$ J" H' q0 L3 p4 x
{
4 q) y+ Z6 L! S8 A' {
pBtn->EnableWindow( FALSE );
% Q. q$ G E0 |' T2 n
}else
" w; }3 A! t V1 V0 Y3 x
pBtn->EnableWindow( TRUE );
% c9 F X; P: u: }$ z
if( m_pTexture )
6 e: g: S; e! l! u7 D( ?0 u6 L" i
{
5 \1 `* }- r1 o0 k k6 e$ q
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# o5 v% F9 F2 m4 L. m4 h) x9 c
if( wndCtrl && wndCtrl->rect )
) M" q- H/ U: y8 u
{
- X0 {4 }8 n+ ~% o
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
- o6 V: S, _0 p
}
5 j- h3 W" m4 J( z# D& a
}
2 L& Y$ Y8 k, T" A' j* Z; y
}
# [! t" S6 v3 \, _
: {9 U0 Z# j; m0 n! D
BOOL CWndAutoFood:
rocess()
1 s+ ]- |% f: }
{
5 O0 m/ g# |7 X) w0 S
if( bStart )
, V* \) a8 c8 `
{
8 |0 C1 c8 ]1 y) n# c: v
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
: z) p4 ~2 \4 n9 K A& w2 T
{
9 u1 U; I; G; b% [, C8 R
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
* n# U5 [! W4 Z
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
6 ~- y1 X( ~- F
}else{
+ v. U3 f" _6 N' [4 b7 E' s0 \4 N* w
bStart = FALSE;
4 d$ Z. `2 a$ ^3 E: t- Q3 K2 j
m_pItemElem = NULL;
4 f% Z! H- N- Q |
}
+ R; x6 p' M% D' F% G; u
}
+ r) h7 g) o' p9 q9 `! h: Q
return TRUE;
1 D) n7 C9 H. Y( m
}
7 t2 M$ Z8 W8 [0 o
7 _1 I& K7 w" l3 O1 b0 X2 S
登录视频废话:
; ]4 }; O6 D7 e% J- R
尾翼:
- m _) x& |$ _' {$ @
1 O5 u6 I) v4 Q( D
代码:
/ r) q: _7 N9 |, s2 u
# T; W4 r6 Y( R6 u
void CWorld::SetLight( BOOL bLight )
2 t4 x/ I7 w; j9 m
durch
' U8 q9 {0 l r: ?6 R) ^& Z
Code:
7 j5 H* w! T1 v" `
void CWorld::SetLight( BOOL bLight )
% x' z; S2 E% c, I' a& W& f
{
4 G+ ?* E, q9 G; H+ Y. N
//ACE("SetLight %d \n", bLight);
2 U# K* [" d- W) ?
& i0 y2 s/ _1 Q. x% f7 w
#ifndef __WORLDSERVER
( g9 S: E# |$ C3 `5 i! \/ c, n- [
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
6 \$ W2 |. |' f5 g6 F! i
CLight* pLight = NULL;
! k0 n/ K) p0 `* ]' r- ]
! o4 B* w$ n. B6 J( y( G& b
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
, O1 {. G/ \8 X' b6 q- a
7 J+ Z1 q! y1 e4 f" W$ J
pLight = GetLight( "direction" );
) \9 O/ ^/ s) ]+ H6 I: u
3 [* e; ] s1 ~8 _% K! P
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ C5 _/ w/ ]1 L% T- G% b
if( g_pPlayer ){
; Y# @9 ~9 e0 k: }. S+ m/ c b
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
$ a% R7 q! T& U4 ^; [( p2 \% L- u
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
- [6 g- x Q" S
{
7 m5 y+ m( ?% X$ |- m
if( pLight )
: k* H4 @% m+ n/ n/ f# h6 v( A
{
- A! n( k# b0 ^% f! t! I0 M$ e
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
6 O) Y9 w& o- }% ^
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
3 x8 @: c' }: W( e7 O
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
0 y8 \8 o7 r; u# O, M) ` i
! }, l0 @' \ e' a5 I: B9 B
pLight->Specular.r = 2.0f;
, }8 l# l% \4 C0 [0 P) N
pLight->Specular.g = 2.0f;
/ K S3 D, e1 J5 `/ E
pLight->Specular.b = 2.0f;
4 F. O3 S) J% a3 }1 q. b# U1 G
% f+ P6 S, P5 U4 s& l# J
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
T7 ?0 h2 V* }/ @% a
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
: L. J+ Y- ?( K. I
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
! g( v8 F+ R3 t
; y6 V) `; w8 [/ c/ I
HookUpdateLight( pLight );
. p6 ?) |1 {; V4 g r
2 v) I, ?3 M- d8 k6 ~3 B! F
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 ~" x. @9 y8 `% k
, `9 ~' Y* ?1 z" D, l
pLight->Diffuse.r *= 1.2f;
# T% Y! R2 F+ r. w4 n+ y
pLight->Diffuse.g *= 1.2f;
! y2 E8 E7 R" G8 a+ S4 n
pLight->Diffuse.b *= 1.2f;
+ e5 a( Q5 k) |: w( W9 C+ w
4 Z7 k$ B7 ]. t$ Z( I/ M8 c2 M
pLight->Ambient.r *= 0.8f;
- b6 | F/ N& [" Q' [. l6 Q2 w
pLight->Ambient.g *= 0.8f;
/ g! f/ F) {- u$ I2 M' |
pLight->Ambient.b *= 0.8f;
# a, _0 c1 f# K( `$ ^- U
0 A# p: S& [, c: Y+ G c
memcpy( &m_light, pLight, sizeof( m_light ) );
+ e9 t- d- s' `2 K& @
1 e* W* A( L& @" K- B2 k! I! z- T
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# z5 W* e3 p3 f* u) X) U: |9 ~3 F
D3DXVec3Normalize(&(vecSun),&(vecSun));
. U3 Y9 s* Z" P( }
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
5 y( W }; P* V' ]- _6 i @
pLight->Appear( m_pd3dDevice, TRUE );
8 p) ~9 e. O% d1 j* E* o* o
/ ]* ?2 o, M8 \
DWORD dwR, dwG, dwB;
7 ^- E9 f- u3 p7 C! \6 A! }2 Q) v& d
dwR = (DWORD)( pLight->Ambient.r * 255 );
' q( [1 n6 l! F' u8 g0 t
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 t$ ]& q8 x9 o, n# ^
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 I# p6 |3 L4 v! w
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 k% v6 V) O p/ L" b& J* c
}
& ~' } f" @* z5 Y5 v
}
1 T, ?0 L2 G" E! P! S5 U1 d
}
6 C. n( z. o8 v; Q3 Z/ j
else
2 X' c7 @8 T% d- k
#endif
$ d& z+ o# T$ L
- A7 q: M7 Z7 `9 P" p
if( m_bIsIndoor )
: o( s9 d9 j8 `! c8 a! J2 G
{
2 l1 n: ^ \+ S- E9 |# D! P
if( pLight )
/ ^- A; b2 o7 z# d, z( _: q
{
1 b! L. n" m, r$ b7 }
// à??μ oˉè*
$ c) @* f# U6 M/ l! o4 j
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
% `$ X5 p9 Q4 d# y( l, n: f. {
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
' k/ [. W5 K1 T. v0 h; ]" B( g' T. r
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
6 I" q1 Z C: [ v) v
( h8 \1 b* |2 Q, h
// oˉè* ??à?
( r) X: }5 v0 {! P: b8 }+ ^4 t: @
pLight->Specular.r = 1.0f;
0 u2 U5 p* k: p6 _, Z
pLight->Specular.g = 1.0f;
2 g7 l; p8 b4 Y% r- T' N+ t. d
pLight->Specular.b = 1.0f;
* T9 f) X* f3 H i+ D" X; D
// àü?? oˉè*
# w: ~8 G/ Z5 B5 F
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
4 s- x4 F6 E7 f9 Y
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
) D N) Q! g! K7 l F3 K
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
, Z" X1 ?" e% d) P) Q. _
: Y6 H6 H. C: ^) W7 W+ Z1 b
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 a1 G4 ~3 k3 A( I, j. d- G
{
8 F( F6 Y+ g: W& e: j9 B! m. ?
pLight->Diffuse.r *= 0.6f;
5 q, \( v. `1 Q6 ^5 Q9 ~
pLight->Diffuse.g *= 0.6f;
. D) b0 V6 i; s; ?3 n
pLight->Diffuse.b *= 0.6f;
* I& q$ E5 l7 \% o
pLight->Ambient.r *= 0.7f;
/ c: T; \+ h' I D* |1 t& T& e, N
pLight->Ambient.g *= 0.7f;
6 w: S0 }! I: ?
pLight->Ambient.b *= 0.7f;
7 G* X# W2 i: z/ P/ n k
}
( n8 k# x3 d) f: B* _0 u( O
. a* n2 e5 m5 P: K' b
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 x$ O! c6 D+ Z0 y
if( g_pPlayer )
- |, }1 k3 u j# _/ n! K$ U
HookUpdateLight( pLight );
5 r6 D* Z% E% N( c
#endif
A f. x& O/ f4 T8 d" d
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 \+ Y, x3 }( b5 ]% p! H/ L
) |4 f: D6 I* r* I% d
pLight->Diffuse.r += 0.1f;
& X* B: p F3 d k% _( a% o
pLight->Diffuse.g += 0.1f;
- q+ C% R7 S* E3 b3 v- {3 B* |2 l
pLight->Diffuse.b += 0.1f;
) A/ ]' x2 N4 o/ L+ P- k
// oˉè* ??à?
7 ^, `; `5 n% Q l# c/ {
pLight->Specular.r = 2.0f;
- N+ [7 y5 T( s. \9 w6 p
pLight->Specular.g = 2.0f;
0 |, J) i& M/ f6 I8 r0 l
pLight->Specular.b = 2.0f;
% h1 x' V, X% A: h d3 k0 d. j
// á?oˉ
8 \9 G3 n4 X$ {& Z: d0 c' M
pLight->Ambient.r *= 0.9f;
- ]- b$ F% T) T0 ~3 N- K8 @
pLight->Ambient.g *= 0.9f;
- M/ N4 l4 `+ g* M
pLight->Ambient.b *= 0.9f;
0 _; H0 `. `2 l9 t9 E
8 T0 C1 D c+ v3 _# u4 t, X: H
memcpy( &m_light, pLight, sizeof( m_light ) );
( R; [* G' r% L5 H! D" i3 Z* R. y
$ _ L, ?$ W/ [
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
3 }6 }' }$ @* d+ X$ X4 T
pLight->Appear( m_pd3dDevice, TRUE );
0 f( {4 @3 Z) f, u% `
( g& X# R" Z6 p
DWORD dwR, dwG, dwB;
/ ` h/ ?, H0 F4 [4 e" D5 p5 Z0 g
dwR = (DWORD)( pLight->Ambient.r * 255 );
) ?0 ?# ?( n1 J5 m
dwG = (DWORD)( pLight->Ambient.g * 255 );
# }3 A [- S4 M; [7 z0 l
dwB = (DWORD)( pLight->Ambient.b * 255 );
& u4 I+ G2 n, f/ ~6 h
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. S- H2 N' ?4 M+ q2 l* c
}
* U1 N! W' ^ R1 U5 F# J7 `
}
* o) S6 |( ^3 K q+ A3 W4 B) o' J
else
! L+ f3 S; z3 Z( x( t0 h2 W. S
{
: A3 F$ b2 W$ v7 Y% Q
if( pLight )
. w% e9 i' e5 X! g9 G2 r
{
$ u' C& y$ j4 |3 u7 c7 r2 t; s$ {9 n
& r0 t6 q' [3 w; p; l2 _
int nHour = 8, nMin = 0;
" P& Q+ r3 m( t& z! j1 K1 g+ ?/ E
#ifdef __CLIENT
* I" S! T- |: B
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
6 e& R7 i( P% l" [+ Z
nHour = g_GameTimer.m_nHour;
4 Y4 P$ n) q9 J4 |
nMin = g_GameTimer.m_nMin ;
1 u) h& z1 g% [4 p
#else
" ]8 Y' U$ g! A
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
5 t% ~5 l; }. R8 L0 \3 a) z
if( m_nLightType == 1 )
5 @0 X K1 ?. |9 y, e
nHour = m_nLightHour;
- t( f- P/ L7 ?2 S8 l% B( i' X8 S
#endif
x: C8 _! K0 h$ C
nHour--;
; h) w! }* ~% I" D: S# _
if( nHour < 0 ) nHour = 0;
' U7 F3 v4 n1 R8 n
if( nHour > 23 ) nHour = 23;
: q, l% |" V5 u9 J. d
3 S2 \0 m( u g% P! o# e+ C
//if( m_bFixedHour )
+ _9 I9 q- j" d m
// nHour = m_nFixedHour, nMin = 0;
! G( {0 o; a+ Q
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
# G/ X B& G( U; z* w- R
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
# p" R; @& R- N9 T
' w2 w% ]0 m( O0 p+ O2 N: w! C
//m_lightColor = lightColorPrv;
" ~6 ?2 I. e: S% g
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
' |4 R6 R4 t" |
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
) ~- G1 v5 |) P1 Y' |6 N* M
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
6 M1 G7 B' K) L t
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
: T. o) l- x6 D+ C+ }
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
^: a: R, k' f# w; a+ W1 `
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
9 l* d7 T: f2 b, e# D+ _
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
) a9 y5 N. s. g9 _
, U3 u6 \( U5 B1 M7 b
// à??μ oˉè*
0 b+ H4 w8 U5 N! u
pLight->Diffuse.r = lightColorPrv.r1;
* O, E* x8 C* k6 v. u% ?
pLight->Diffuse.g = lightColorPrv.g1;
( j5 r6 J3 ~, z
pLight->Diffuse.b = lightColorPrv.b1;
$ Q6 p1 k! u/ h9 h# n
// oˉè* ??à?
9 \# f9 o8 _ U$ n3 L# E7 J2 R
pLight->Specular.r = 1.0f;
/ S: X w8 Q, c* u$ \. g! _2 R
pLight->Specular.g = 1.0f;
0 t5 k% S0 T5 I8 C7 _" f, T! U' ]
pLight->Specular.b = 1.0f;
5 ^2 c$ V: [% `% f! Y
// àü?? oˉè*
: D0 ~% b# L+ Q8 j( q/ r
pLight->Ambient.r = lightColorPrv.r2;
6 C1 O4 ~! B2 s9 d. U
pLight->Ambient.g = lightColorPrv.g2;
& \( Q6 o2 W5 \# w! w
pLight->Ambient.b = lightColorPrv.b2;
: k. E# d: b. H/ f- |+ P4 D/ T
" E1 Q9 n+ o g& a( Q; g8 e
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' t6 B; w+ [) }+ m
{
8 A5 U: L6 `! q/ _
pLight->Diffuse.r *= 0.6f;
7 k/ s$ R" @* q; j- j" M
pLight->Diffuse.g *= 0.6f;
- x, k4 D" f% Z4 ^5 e/ v% S& E# A. r3 P
pLight->Diffuse.b *= 0.6f;
4 |" O) U" b3 p R+ B# `) j
pLight->Ambient.r *= 0.7f;
/ k* i) U' Q0 p, j8 e5 }$ H, b
pLight->Ambient.g *= 0.7f;
4 ?6 V% t( f% f" h; h9 W; O0 h& A" U
pLight->Ambient.b *= 0.7f;
2 b5 ~- z) E) i9 O
}
. X4 K2 T- ~' D& i! q9 y* g
' F: M! J: |+ A/ k) F! g
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ b" q' i) ~) }9 q, R+ g
if( g_pPlayer )
) V/ k" V+ u0 H& Q
HookUpdateLight( pLight );
0 `, C) B* b; Y2 d5 x
#endif
. {6 N; h0 \0 k% j
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 }+ U( J( i7 q# k9 k
* W2 Z" ^7 J1 s- q @5 i" T4 `
#ifdef __YENV
' D! y' x) e0 C
pLight->Diffuse.r *= 1.1f;
- W( h+ h2 f. M( R
pLight->Diffuse.g *= 1.1f;
- I) W& ~2 n7 U8 b
pLight->Diffuse.b *= 1.1f;
2 \) Y3 l+ Y: W- D- z7 W1 ~9 `8 [
// oˉè* ??à?
* Q% d1 e* X! h' l+ x
pLight->Specular.r = 2.0f;
# ]( L! U: s; N. W
pLight->Specular.g = 2.0f;
: N' H3 b3 o7 V
pLight->Specular.b = 2.0f;
* W3 e% i# o6 I3 G, n$ x
// á?oˉ
5 V) [+ V) }" ]# H, `8 d
pLight->Ambient.r *= 1.0f;
4 u3 F! z0 O5 t! ^$ ~% \! b s% H
pLight->Ambient.g *= 1.0f;
/ m0 x' v- o. i3 a/ D
pLight->Ambient.b *= 1.0f;
* o6 g \ x) }' s* s0 p
#else //__YENV
9 X* C! }1 T! s( u) Q
pLight->Diffuse.r *= 1.1f;
& d; k" r0 G. [" s, k! A
pLight->Diffuse.g *= 1.1f;
; V: ^/ \4 G1 M) B/ C3 ~* n
pLight->Diffuse.b *= 1.1f;
_& B" _3 H, i
// oˉè* ??à?
* E5 T* g& i; @) S" i
pLight->Specular.r = 2.0f;
Q5 U, j7 B+ e- H
pLight->Specular.g = 2.0f;
; J! d! ~. K) A$ I% l
pLight->Specular.b = 2.0f;
A5 Q; y5 B! p
// á?oˉ
% @, K! u: R; p$ V: f( ^( ~( E
pLight->Ambient.r *= 0.9f;
! ^" v7 r5 T+ w0 V2 \: e
pLight->Ambient.g *= 0.9f;
; s6 Y& g( x7 D& m" L4 s& O
pLight->Ambient.b *= 0.9f;
2 d5 U- ?6 l5 D: _0 c; O
#endif //__YENV
& ]- j" B1 C6 B* b. [( ]
4 p! \8 h# r- A' I2 Z: G) p1 U
memcpy( &m_light, pLight, sizeof( m_light ) );
. M7 T% `. ~4 U4 r% e1 b% _+ h
+ z8 U& u* X( @0 t/ ]2 o+ w7 B
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
! v7 Z& M$ y" C1 x
D3DXMATRIX matTemp;
3 k+ V( h6 L) k7 y
static const float CONS_VAL = 3.1415926f / 180.f;
" z2 P* [; i6 c. p% [
1 G$ W+ C2 I4 E$ V: a N' M ~
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
% V$ z, u: a2 ]* d: Q8 j W
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
: F. J2 _/ A' @/ F5 i2 C) ?0 r
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
' w, @4 `) x, L( R; ]
pLight->Appear( m_pd3dDevice, TRUE );
' W, k7 D7 c0 b: ^
0 L: R" R. Q4 n0 j5 m
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* w v2 `7 s9 R0 _( m( f& {
// D3DXVec3Normalize(&(vecSun),&(vecSun));
5 L2 `. q' G) V; m# n* \/ I& ?" L
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 l9 _, L: X# J, D+ U" j
3 l. A a& s) m2 ^ I% s* `
DWORD dwR, dwG, dwB;
7 D$ w7 ]8 N2 u3 {9 r
dwR = (DWORD)( pLight->Ambient.r * 255 );
- I: V/ G' C8 M( \
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ G: l" n" w: p: s
dwB = (DWORD)( pLight->Ambient.b * 255 );
" ~3 o, t E% }# r! \5 {
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! i. m, [. a" v
}
5 v ^! Y6 `- Q5 t8 @
}
5 M& F3 h% l" R9 {" Q+ R- r1 _1 ~
- i0 U1 p2 }* `3 H+ G3 a- T
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
$ e1 A% X' L; c/ Y3 s/ \
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) );
0 D8 X* H/ P& @8 I* [1 Y8 c% [
::SetLight( bLight );
H0 b) Q7 P# V8 {9 N! |8 ^
1 M( y; ]$ n z2 V3 Z0 j% Q% j
// ±ao? ?D?í???ó á¤à?
X5 i( _1 z2 d& g
m_pd3dDevice->SetMaterial( &m_baseMaterial );
5 ^* ~& T/ [+ ?
{- a( r" n( a3 a$ F* w
#endif // not WORLDSERVER
* f' h' d7 f. Q( V
}
: ]% q9 T& X' P. t8 M4 A7 h
并更换
; N7 q, }" U& E1 v6 W2 g
Code:
4 f% r! |9 D8 Q' u ~
__FLYFF_INITPAGE_EXT
" ~/ H; ^& I8 q2 A' I
定义
& f; s# Q$ k' L, d# P
$ \) o% W+ E+ F2 e8 W; `
6 d6 R- R0 [9 Q5 S' ]8 ^ h/ t
* t0 o4 z5 ^7 I. r* A' }
8 b" |/ M2 S: ^9 h$ L
现在终于删除我的狗屁加速...
$ V! w" Q1 A& H. c) c5 w' @
0 i& W' q( m( k
+ t9 l' Y& i6 C8 c
( C* X, t/ j% q) Y' \
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2