飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
6 h) c0 {2 e- s# S' m
尾翼:
, c9 A' o4 c7 u
/ S" ?9 ^! \0 V/ \6 A
代码:
- }/ j9 i7 y1 O+ L9 b+ L B7 y) t1 l
CWndAutoFood::CWndAutoFood()
$ I$ G* M8 g) O! ]
{
1 l% ?, ~8 g4 l8 ?4 _! ^9 a7 K7 S
m_pItemElem = NULL;
% }$ D& ]* x) X0 m: ]/ c5 H: z/ U
m_pTexture = NULL;
# f! r$ x. g3 P+ w- a
bStart = FALSE;
4 Z1 m% J1 M! Q4 P0 n- w, u/ y
}
: v( s! r- L- J) e2 v
5 C6 H8 f( [9 i' g' t
CWndAutoFood::~CWndAutoFood()
2 l; L9 J0 ^3 `, {$ o
{
- R$ p' g% w. I9 G
AfxMessageBox( "AutoFood ist gestorben
" );
& {, t% @6 Y) P+ ~9 l& Q
}
$ @) i$ O7 v- @' z6 `: v( j$ a
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
% u* u. D7 q3 V$ x! _4 P
{
3 Y/ o' V: }* E* X2 \& v
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
( E5 A b, C; m
}
2 X# S8 n7 \8 k( B* s }) @# ~3 ?
( r/ P+ {/ w; n7 X! Y. F
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
2 s3 I M) N: W. i5 ~
{
1 }6 [" V4 Z( V( n k9 z
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
; e2 a3 m4 J# E" P
CRect rect = pWndCtrl->rect;
8 a5 j% L8 G' S3 }
if( rect && rect.PtInRect( point ) )
: a G; W" P3 i6 ^6 ^4 m. A/ L6 h
{
& C" X$ u( P; r8 [+ l
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
9 R- H/ k: H7 ^& D$ ^1 L
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
. V& f3 t8 {- C: F4 h. b+ P8 F
{
4 p* n D2 ^$ R2 O( @2 ~
if( m_pItemElem )
) Q6 m' D4 D0 j8 V# c6 T9 t
{
+ W" U$ }/ P5 r8 J
m_pItemElem = NULL;
# g4 ^5 ^) }% O6 W/ c
}
6 u5 V9 u0 t7 ^# t- S7 Q. e
m_pItemElem = pItemElem;
( k2 P( f2 F1 [% {9 o$ Z- X
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 d0 b% S- d! p2 \3 |
}else{
- k0 ?- y6 b& g: A: s
SetForbid( TRUE );
. y8 \, x; e/ G
}
, o/ C% Y: Y! q+ f
}else{
: M b0 c6 i% @/ o
SetForbid( TRUE );
; t* r5 z$ O! Y. N
}
8 ?2 a: k* k, e. v9 j3 v
return TRUE;
0 M( F7 N$ P, N [' N h
}
2 V' \: ]0 T3 A
5 f$ _' ^, k' c4 G! U
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
3 E" u5 _. Z# K) x: W/ d. M' b
{
+ |) ?" d. C" {6 w" I- ~, O
switch( nID )
8 K) U4 i# r+ p5 a' Z: q! O
{
- E* L! u: t) \& Z/ ?' O% s$ a1 o
case WIDC_BUTTON3:
; C. m" M6 k# g, E
{
# I7 i& \1 ?) ]8 \# Q% s
bStart = TRUE;
- [- k% D0 p8 I8 W4 G( e
break;
# q% O' G9 H! c" K( z+ L- A; V! e
}
8 |8 e2 X0 f5 \, X
case WIDC_BUTTON4:
+ N6 [: Y# w0 D4 x+ t- [3 z
{
* U- x8 C4 d+ G9 \$ f
bStart = FALSE;
. C, X- f6 a6 s& @
break;
# {" i1 c5 h. p$ m
}
: J% H+ x5 h9 s. u4 m7 t/ M: `; D
}
" {" y8 y$ t/ f, e7 w) d
return CWndNeuz::OnChildNotify( message, nID, pLResult );
* m' o8 L/ I1 ]+ s2 q( C& c9 q5 |0 d
}
; m- |% w/ ]6 y$ b% g
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
2 T# G1 A" F; W5 E n" N
{
- @0 N l6 A- C0 Q
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
% d; e- u6 V9 {7 a0 n
if( bStart || !m_pItemElem )
) E* j7 a1 C. ^ ] `/ V- R
{
5 B3 m+ Q) R- ]; B F- ~
pBtn->EnableWindow( FALSE );
2 Z. D; p2 {% Y8 f
}else
7 a* |4 H$ C3 c0 ` w j
pBtn->EnableWindow( TRUE );
: s, @6 a4 [/ A- N
if( m_pTexture )
- [# Z7 P3 m* T' \
{
" u+ K# l$ u8 _- y9 z! p' \
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
2 Y% i% e, Y; @( m
if( wndCtrl && wndCtrl->rect )
6 B+ H% t: A, i
{
: E) r9 c' y& Y' M
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
7 X3 B( n$ v' T- K, A! ]3 N
}
, s- E( X! [2 H0 L
}
! e' ~4 o0 i4 M. Y. X; b
}
3 Z3 s! r( N$ ]2 N, j s
* j! B: X. ~, t( u" L/ A
BOOL CWndAutoFood:
rocess()
L* B+ w! h# Q& c/ k6 n6 j }3 C
{
+ ?( f f6 h- `9 F( O+ k, C
if( bStart )
' W2 R9 F- V" L4 L* O% ^( i/ Z
{
% O0 s( ^3 e- Y1 B/ G- l h( s
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
( G7 {/ ~; W1 _+ Y5 j
{
7 L6 L7 g+ T5 j* |) @
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
2 U, n1 }3 g0 |" b0 J, z+ q+ W* z
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
4 F. x/ Q3 u9 t8 r2 a7 R$ E7 z
}else{
+ s9 p' u& j% }! A4 _
bStart = FALSE;
5 G( I, f# M! v5 ]0 ~0 U+ k+ C/ _
m_pItemElem = NULL;
2 U" B' p& g: K8 z0 \
}
5 D" }# m" j8 C3 \, ]7 c& n
}
6 A; `# e, U0 Z- _& T
return TRUE;
3 N( W2 i5 l. q _6 v) Z
}
( P2 x0 X! X2 x2 c2 U6 e6 d
2 k# o6 ^4 u& _' f
登录视频废话:
6 |; Y0 Y+ M) C0 w. _
尾翼:
4 ^3 [; L j+ h' ]8 @
+ V$ {$ x6 d% L% y6 c# R. E, U
代码:
$ f# Y! {0 ^4 D/ |! Z
+ Z+ f) T$ f: I# B2 g! [$ ]. D
void CWorld::SetLight( BOOL bLight )
1 X& ?) I3 z: u
durch
( m3 ?( ]6 L9 b& R P* r
Code:
& @7 |) A) ~: }$ J1 H1 |
void CWorld::SetLight( BOOL bLight )
) Q/ p" A! G$ Q5 _$ p
{
: R2 U1 f7 \0 f' y
//ACE("SetLight %d \n", bLight);
( d7 I* K* p3 i
5 Y9 O& _' @% K
#ifndef __WORLDSERVER
8 b* F% t o* {
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
& i6 D9 r# z8 L; n( ^# w' K
CLight* pLight = NULL;
8 h- a3 R0 J' e3 c' e; V+ o
, r( ~- V, W& ? h' x" L- ^+ k+ C8 R! G& a
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
) ^' a+ ^; J' P! {! S A) F
/ ^9 g* N( O4 N0 z) n
pLight = GetLight( "direction" );
; \3 K) v6 ]2 M( P3 \7 o/ o' D
5 _% R9 O9 K, _; N& M
#if __VER >= 15 // __BS_CHANGING_ENVIR
# M" X" f# y$ p! h
if( g_pPlayer ){
* Q) c" n A+ @. T6 ~" ?: q
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
: h' I' ~! k; b! |: o
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
5 d( \# K1 E$ R2 n& M/ o& S1 \( _& k1 Z
{
1 y% D9 i& k8 @6 N% u
if( pLight )
/ f1 n$ `8 M4 d, h6 X: ^
{
8 r" I) R$ {' V0 l8 Q
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
$ T4 Y: q) g3 B; X ?0 B
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
$ }% T a% S# B4 }" F D# u* g* k
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
2 Q& C' L. D0 o$ c6 [
) \2 o# x. h: }( R
pLight->Specular.r = 2.0f;
4 b4 [& _. @* l, u1 }* A
pLight->Specular.g = 2.0f;
5 B) ~0 ]' W+ F5 m. r1 I
pLight->Specular.b = 2.0f;
, b( K9 Z0 r6 B" a, H
: |0 L! E& @6 E3 d, ^
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
" @! v6 B& y/ I* H8 t- N
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
1 k. P& D4 Q) l- _8 X0 I
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
+ _( r2 G6 U; W& J. c
7 V4 w' e/ |9 D, Y8 d$ q
HookUpdateLight( pLight );
6 D" u# F. t7 b" B
" b8 W- C! F! n4 U
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 M" O, u5 n) ]$ l' s5 ^6 T
$ T* H2 z6 i6 ~: o
pLight->Diffuse.r *= 1.2f;
5 I* l/ ]( s/ R+ d# P3 q. o
pLight->Diffuse.g *= 1.2f;
" {: S \! @% B6 A6 d, Z/ w# U4 k9 b
pLight->Diffuse.b *= 1.2f;
9 [$ G" v7 O- y4 s8 R u1 V0 ?1 Y
0 Q# a3 ~) A% I
pLight->Ambient.r *= 0.8f;
6 m) `! f; l7 N3 R
pLight->Ambient.g *= 0.8f;
1 |: o7 d+ v' y C, |
pLight->Ambient.b *= 0.8f;
2 f" f0 ^7 T; \; i. J
6 v% M, R o, U7 L; r
memcpy( &m_light, pLight, sizeof( m_light ) );
8 ~0 s1 H i& j" y! @' o; I
/ m& {/ f( y& }( }" Y: ?, L
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
+ t6 i P/ M* h' ?; ~, o3 D
D3DXVec3Normalize(&(vecSun),&(vecSun));
0 z* ?, x" P. |
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 Y9 v8 t! ^5 p/ P0 \& z
pLight->Appear( m_pd3dDevice, TRUE );
c) N6 W5 N/ y8 E# {
$ l6 r# s, o% v# v% b
DWORD dwR, dwG, dwB;
$ q& m0 L9 S1 f6 N& t
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 A% A! Z: q2 ]6 G7 |
dwG = (DWORD)( pLight->Ambient.g * 255 );
" h4 [) y+ n& T8 e+ A2 }8 h
dwB = (DWORD)( pLight->Ambient.b * 255 );
# k4 s0 \, P/ \7 ^5 b. C4 P/ H8 q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! A3 ^+ F) I# U2 I& |0 f& Z2 M
}
- c8 U5 Z9 F4 C, ]) z, `1 Q
}
( A* n6 y" S) Z$ t' |8 T
}
/ Z; x1 R5 {" K4 \
else
5 k' x; U7 m7 h5 y# A" W; G
#endif
; M# k( l1 L$ B! E9 k) f
6 N9 `, ?( Q$ e8 @- y; D
if( m_bIsIndoor )
+ v- H' {" F$ ^* m; y1 R' I
{
% X- O* j6 Y% k4 B5 Y4 f
if( pLight )
0 \# e: k9 z) \* L+ `# z, Y
{
, l$ l2 t" r u3 {6 }7 H
// à??μ oˉè*
( s; E+ D3 X& i7 f' N" a. H
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
* e9 V+ w2 ^# p& e
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
5 R. e" ]8 J/ o
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
& W' c* \# O) i4 s9 {! B
% g" J" a" M, L' H
// oˉè* ??à?
! m5 U7 {! u: n/ x* w* g8 ?) T1 \$ @
pLight->Specular.r = 1.0f;
' v, y0 p5 d- {* q: u4 l, t
pLight->Specular.g = 1.0f;
/ Y: U% n9 v1 K# d9 j& N- x! o
pLight->Specular.b = 1.0f;
1 N- e" \% x! ]* y
// àü?? oˉè*
4 _, c. Y* R6 H5 S" X! U( l- K
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
# P$ y9 `8 Z8 X
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
4 A% o8 Z! x0 W( q
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
& E/ s. w+ T6 ]6 \/ x1 y1 E
0 U0 I( ~1 ~3 r
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 ]5 H% \, u8 ]$ u) P
{
' g9 V/ E: [0 K% ^2 b' p# G
pLight->Diffuse.r *= 0.6f;
" \: V# O% p) ^9 u2 _. ?) b/ x+ k8 J0 {
pLight->Diffuse.g *= 0.6f;
: W1 O% h7 w3 z) D( u" m2 }% D
pLight->Diffuse.b *= 0.6f;
7 J9 T: m0 \8 C. X+ i
pLight->Ambient.r *= 0.7f;
/ Y' s% e- u( F& x" s
pLight->Ambient.g *= 0.7f;
( Q% f. t. i- o
pLight->Ambient.b *= 0.7f;
4 P2 D2 [2 r: Q7 ?
}
8 e4 w1 S! O% H( `
! u% m! q8 |/ ?+ B/ O/ M
#if __VER >= 15 // __BS_CHANGING_ENVIR
0 j! q' e. j4 L! g( V% y7 J( `
if( g_pPlayer )
" ^; d# T9 _) ~
HookUpdateLight( pLight );
: A7 { O5 A9 w* D. Y& p
#endif
# L+ d" ^2 D5 K5 m% X+ i, R- q
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
! i0 _" L! H# k) p5 \+ _ e, g$ j
6 D3 a# F8 _( t* k- R- e" i
pLight->Diffuse.r += 0.1f;
! [, H# O& G9 ]) c. W
pLight->Diffuse.g += 0.1f;
! W! |7 N% i5 S2 t2 H7 V8 ]! J
pLight->Diffuse.b += 0.1f;
, _; E7 A) x( j; Q+ K6 [
// oˉè* ??à?
7 c# X9 i4 R4 l0 {) v) P
pLight->Specular.r = 2.0f;
3 @6 O7 ~: [" I; C0 X
pLight->Specular.g = 2.0f;
1 y' t' u; r* |: n: T Y
pLight->Specular.b = 2.0f;
! \7 [6 r0 A8 ?: t2 s+ j
// á?oˉ
& h: P4 c! y. R5 k
pLight->Ambient.r *= 0.9f;
& c: T, Z/ u, Z
pLight->Ambient.g *= 0.9f;
. H& Y+ a; w1 ?( d
pLight->Ambient.b *= 0.9f;
! h B# o l, I7 d4 x# o( E' R
' i* q: t8 K6 M
memcpy( &m_light, pLight, sizeof( m_light ) );
& n& _7 ]& v& E8 i
8 W9 E0 D0 w% r- s. O1 b5 E8 |
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
" t7 k9 g, b$ L- a9 A5 p
pLight->Appear( m_pd3dDevice, TRUE );
0 X5 w% o4 M% m. w
7 {. l( P- b: t5 t/ ?
DWORD dwR, dwG, dwB;
; T. A) _* j: ~
dwR = (DWORD)( pLight->Ambient.r * 255 );
% i. F6 A# y# T
dwG = (DWORD)( pLight->Ambient.g * 255 );
* O1 J' V, {- w. {
dwB = (DWORD)( pLight->Ambient.b * 255 );
) w' d+ \- p! ] D
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
& H T1 p) c' w k; z1 b
}
% V* F5 w W% B# S3 Z# `% Y
}
& p8 U3 O8 Q/ K0 D: ]
else
: [1 p# k2 C& c3 |
{
+ O0 {) Q9 G3 ]% @2 y0 }
if( pLight )
5 { \3 t& j$ V% N8 U% o
{
, R1 \) i, T! ?0 |- l l3 x
! i/ w5 z4 C+ [7 a
int nHour = 8, nMin = 0;
( o7 b7 y! S3 |, {* d
#ifdef __CLIENT
% X7 U6 K2 _0 @% }0 w
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
' p7 l5 e( [& z+ q: J S% e$ H9 c6 z
nHour = g_GameTimer.m_nHour;
8 ?2 r7 {1 {0 `1 [4 i& u* p
nMin = g_GameTimer.m_nMin ;
' R( n* `% V1 G0 ?$ @0 s" U
#else
9 c& E: @8 B6 |8 x
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
" |2 @5 T, A; a y* }1 ?* Q
if( m_nLightType == 1 )
! K6 V, J/ G, U* B i
nHour = m_nLightHour;
) f8 r6 E" f, y3 J* K* v
#endif
x2 g+ T# V0 s+ t, p
nHour--;
0 K3 l: U b, M( q% _( N: ^
if( nHour < 0 ) nHour = 0;
3 e; x0 v. B6 R' T
if( nHour > 23 ) nHour = 23;
" C8 | i6 P, V+ d. p# P, H
) e2 | _2 S) m: F
//if( m_bFixedHour )
* I- ^0 Y, H# @) A$ ~7 v
// nHour = m_nFixedHour, nMin = 0;
& D% {6 \" u( d" a1 `! K, i
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
* I) e: b* Y& L# s- {- u2 Z; g3 {7 p& C
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
/ ^: \/ Q4 u; M8 c6 ]
# a( n9 T( [) K( R; C
//m_lightColor = lightColorPrv;
" `# Y8 f. _$ o; q/ n, v
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
6 R- u( f$ |8 K @/ h0 g# f: D
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
0 X' L# v* ] s( G
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
; i# y6 Z4 P5 s( C( A% f6 ]3 o
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
/ g7 G& l- F3 y0 N' p ]/ i8 ?
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
; h, w+ U5 N! t9 D" z1 C$ X
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
/ t; \% W8 W( I3 i3 u
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
5 x7 B. p1 F4 ^+ u8 m
/ G7 T3 ^, N9 y4 i1 h
// à??μ oˉè*
: e' N G3 x7 `
pLight->Diffuse.r = lightColorPrv.r1;
. [. Z6 F3 }5 k( m4 z6 @2 u, v: P$ \3 Q
pLight->Diffuse.g = lightColorPrv.g1;
8 b) K1 z; B( t
pLight->Diffuse.b = lightColorPrv.b1;
1 V3 D/ p1 s- I
// oˉè* ??à?
! R) d' J4 [' w' y t( H
pLight->Specular.r = 1.0f;
+ n/ a* {7 x5 |$ f* j8 b
pLight->Specular.g = 1.0f;
! A6 `" V9 c0 q! l* }. L
pLight->Specular.b = 1.0f;
* e9 `* c4 I+ y1 K% p0 s6 V7 q
// àü?? oˉè*
7 X: r% D8 C! d8 S! Q4 B8 ~1 k4 ?
pLight->Ambient.r = lightColorPrv.r2;
/ E: F" j, b4 P7 ]% ^
pLight->Ambient.g = lightColorPrv.g2;
4 w* w3 l" S/ m2 F4 o
pLight->Ambient.b = lightColorPrv.b2;
& G* `3 a# s% H5 t) ]
; T9 V( @' G6 M& S% E- C O
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
" r6 U: d% p1 P
{
7 \' X7 N8 I! J) H) J! O
pLight->Diffuse.r *= 0.6f;
' y- _2 s- c8 \5 E7 A( K/ D8 M/ b
pLight->Diffuse.g *= 0.6f;
; `2 m3 Q8 u# l+ T0 T
pLight->Diffuse.b *= 0.6f;
7 Q! l- w; v- y) W1 w
pLight->Ambient.r *= 0.7f;
; b. t+ O" V% H. k! t5 d, l T
pLight->Ambient.g *= 0.7f;
- F) }" l9 a4 V( O* n# \2 H
pLight->Ambient.b *= 0.7f;
. y. I. K1 D, F @# A4 J
}
( {$ }% U5 {$ W4 I/ e3 \* m
1 w# B9 D: I) h9 y8 c5 \) C
#if __VER >= 15 // __BS_CHANGING_ENVIR
8 `3 \5 I( j( q' b9 L
if( g_pPlayer )
- O- Y8 E$ T7 z+ Y; K% Z; a! F
HookUpdateLight( pLight );
, }) X0 g, B0 q5 H
#endif
! q: G X8 K8 r. X# {+ L
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 V, t, J! a b0 f& P( f& [4 J' @; r
S8 ^: {- M- i4 g0 J1 U
#ifdef __YENV
9 F5 _; a* E, l0 V8 n3 l
pLight->Diffuse.r *= 1.1f;
' {9 ^! x3 g" E$ T* B( E
pLight->Diffuse.g *= 1.1f;
6 Z# Q2 F4 B, F7 {# P
pLight->Diffuse.b *= 1.1f;
2 Z5 C4 Q" i! o
// oˉè* ??à?
8 \: w& A7 x' H* i0 h
pLight->Specular.r = 2.0f;
1 [- X1 X! Q: G) {; H, F/ N
pLight->Specular.g = 2.0f;
8 X% M) p# D$ P* Q l
pLight->Specular.b = 2.0f;
9 U6 d- `, G& _5 @: B! q+ q, X# E9 v
// á?oˉ
! `" t9 L. o& ]" P' j$ X
pLight->Ambient.r *= 1.0f;
$ y% \9 V, s* _3 {5 Z$ v! V) J# F
pLight->Ambient.g *= 1.0f;
1 C8 O: S) l3 p U1 p8 n
pLight->Ambient.b *= 1.0f;
; c5 j: z( S: Z; N* s
#else //__YENV
! Y4 v7 m7 Q# q* h' |' n! e
pLight->Diffuse.r *= 1.1f;
! g5 w6 |, W: N. i! R5 r3 a$ j6 `
pLight->Diffuse.g *= 1.1f;
0 ^* `& E+ l' y0 ~
pLight->Diffuse.b *= 1.1f;
% o2 V u& n( s* r, V1 y, w5 P
// oˉè* ??à?
) L0 t! K( r7 M7 R4 u9 [+ ] n3 ^! X
pLight->Specular.r = 2.0f;
, R: F* y: Y- S& j# b
pLight->Specular.g = 2.0f;
. x5 V$ J2 a; V9 I. b& O
pLight->Specular.b = 2.0f;
( K$ [, M- O' k
// á?oˉ
8 @ Y( o6 j; Q6 [" W8 i" C( I
pLight->Ambient.r *= 0.9f;
I, P; g, T; U& O. _8 q
pLight->Ambient.g *= 0.9f;
3 P+ H+ \1 ? c4 `+ @8 [
pLight->Ambient.b *= 0.9f;
6 w: @# X& P( ~0 W& |- N
#endif //__YENV
, R9 O D2 ^( e1 ]) f" _+ g9 n
- {. X2 A; Y7 l
memcpy( &m_light, pLight, sizeof( m_light ) );
* K* F p; g" i0 \5 d
+ ~1 a" E0 v8 z* x! b2 O6 d; e4 C
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
; g0 `- B* k" z4 ?( r# Y
D3DXMATRIX matTemp;
& `* u! n9 R6 C! R& N9 E! V3 r
static const float CONS_VAL = 3.1415926f / 180.f;
: v8 y( h4 `' P% w2 n2 D2 }
1 O5 D- i* H y
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
7 u. b$ t S8 |9 [2 `! Q
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
* L4 q* J5 U7 h& z- B
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
6 h; F j) y5 I4 Q' u. q( S/ Z' y
pLight->Appear( m_pd3dDevice, TRUE );
4 z5 e! I- v. X+ S/ } ?
7 X2 `' }2 _6 g# ^4 e# G, x. o
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' s* i9 T% h2 {2 O
// D3DXVec3Normalize(&(vecSun),&(vecSun));
$ v) `/ s) i; O% _5 B
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
6 N8 w( J9 n2 e/ q3 h& i
( T8 K" M+ C$ D J+ m3 c8 H# o, ]
DWORD dwR, dwG, dwB;
, D) X8 U" u' r/ Q% q3 z6 z
dwR = (DWORD)( pLight->Ambient.r * 255 );
: h: d- V& G0 o8 R/ x
dwG = (DWORD)( pLight->Ambient.g * 255 );
: r" z; |! G# I( o( g
dwB = (DWORD)( pLight->Ambient.b * 255 );
# b/ m; ]9 L$ `% c
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
, R6 s# n2 L. G& Z7 e* G, y
}
* y7 ^+ s( w+ y8 a1 w. ? o* s
}
- z0 Y7 j% d8 x; X k$ H- K
' G1 s4 Z' `# j' H* y& b
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
+ S- L9 |; z+ A) V+ r/ o9 `
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) );
* q: ^# h. }. [- c8 E5 v f
::SetLight( bLight );
4 T" V) }$ o* X9 Y) G/ M% F" e
# M4 c" R1 C; X- |- l
// ±ao? ?D?í???ó á¤à?
* i* c0 `: z6 D& [6 E
m_pd3dDevice->SetMaterial( &m_baseMaterial );
' G" n0 w/ h$ x8 u3 W6 _. E8 h
' {2 O- y7 A- i; Q; ?- f
#endif // not WORLDSERVER
/ h$ H8 _( d/ i3 {2 w
}
/ Y$ S9 |. A/ ]
并更换
4 i, D% y k. w0 ]) s
Code:
% h. ~1 O- o& |
__FLYFF_INITPAGE_EXT
( L, {2 u1 D; P* _
定义
4 }, I- u' R2 b7 v4 Y) X
8 x v* ]4 \/ R( G7 n, L
& Z3 r. _: [! N& w& ~) J( w
+ N2 t+ G6 n& E/ {
! X$ w+ G& `' b
现在终于删除我的狗屁加速...
7 H% J$ ~* U/ R9 I
+ A" H5 Z- L/ j* y# k8 @5 A3 }" s
0 }% ?' F; t' S+ k _( J
3 l9 W* O9 A) @7 l6 z/ z
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2