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