飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
3 X5 k# f1 a& y0 o# z
尾翼:
( V; i2 z9 e1 v/ O% D+ d7 U
, N @4 o4 {) H- N2 j
代码:
( R. k8 i; Z% @9 P
CWndAutoFood::CWndAutoFood()
+ f1 K7 u1 m5 V; `4 ~+ d
{
# m* s$ b: A8 ^, V" f0 e0 S
m_pItemElem = NULL;
7 X% r% r0 A# Y7 u; `" ~" a
m_pTexture = NULL;
' g5 x5 P, ^4 ?, _& V* G2 u
bStart = FALSE;
' B& ?7 R* {* G- p1 c" y- \& q9 c3 O& Z
}
& w- g e& M9 v _
0 j2 S2 e! t4 W, V
CWndAutoFood::~CWndAutoFood()
0 m. ^: o& D5 v# n
{
- K0 t( q& [+ w! l c# a: J8 }) D5 G
AfxMessageBox( "AutoFood ist gestorben
" );
$ E) w; `# S! Y7 O- W
}
/ M* l0 B) b' d6 ^
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
7 h8 b" x* \: D/ i
{
: A# {3 q1 \# {% o! S
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
) u( G9 d/ N, w2 i( u9 d9 S% z( t
}
- t3 f7 {$ [$ {# P; s
. C# |# `! o0 I
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
8 i( E/ c3 ~4 @" u: b; f1 V
{
( P2 |; J% D$ B0 v* h
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* J0 N: E" K% [# i3 m# i1 F( u
CRect rect = pWndCtrl->rect;
" j1 p* l* }) t @6 w3 |! ^0 s X
if( rect && rect.PtInRect( point ) )
9 V* l+ A5 Y* M* f4 ]
{
5 M# E# Y$ \) k1 \
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
8 T8 m9 h9 X* d [2 c' g$ A. R. I
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
" N% \8 d& \4 _9 f6 }: J: a
{
; z/ z, `0 p( e6 N7 P
if( m_pItemElem )
1 L9 [# Q7 M2 D3 ~0 ?; R
{
0 g9 K, e3 ^/ M9 |. [1 |: I w
m_pItemElem = NULL;
8 w: N. x7 ]0 O' }
}
$ k7 G! G3 i( j# Y6 @ g
m_pItemElem = pItemElem;
* @# _# i8 [* E+ B' o) p6 w" W9 ?
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
; ^1 w; j- w- ^: H+ e$ P, A Y
}else{
2 Y4 X9 }* K3 M; V
SetForbid( TRUE );
! A% B$ `- f/ T
}
+ O! w- L0 A5 R+ s+ B9 K
}else{
( Y( N0 {5 n- I
SetForbid( TRUE );
6 @( x4 |5 W/ P4 G- q
}
5 J8 ~. }8 ^, Q, ] A5 F3 G
return TRUE;
0 M6 @9 q r% q& B) @4 P
}
- t) O% O( A3 w9 l" J
8 P/ |0 I' o8 K( g
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
4 B# I( \9 X% R/ Y- i7 w
{
1 {, t/ w7 V" C) j% d
switch( nID )
* [% n% u/ u+ k. t& k8 x$ q) ~; G
{
! K) Z+ b0 C! S/ q) F8 `" F
case WIDC_BUTTON3:
( l: x2 G" Z/ J& y6 ?2 b T
{
- m# }! W1 b$ @. C: P1 l% o
bStart = TRUE;
" c) N% T+ i9 ]+ T' z
break;
0 }$ ^5 e# W. ?3 ~2 p. d
}
4 W& s, J5 V. b* Z J
case WIDC_BUTTON4:
' Y$ X* R* n5 f3 x/ E! d
{
: p7 u+ B- p1 k( X/ {: P
bStart = FALSE;
4 y/ `7 N* ?7 x
break;
4 J7 d j2 X( `$ G9 j A; j
}
i: C$ c9 Q% {4 U3 @* j
}
$ l& x8 d- c: p1 s* u
return CWndNeuz::OnChildNotify( message, nID, pLResult );
' l% P! U. \1 T: ^. C b- u! C
}
+ _+ j$ X: T3 D8 E. v, g9 d& N; ~
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
' Q, C, A' O6 `+ a3 \4 z' P t' J
{
& U/ O. F( r9 V# F2 P0 v
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
& A- `" W9 Y' s) x2 A
if( bStart || !m_pItemElem )
, p2 _8 _2 B g0 k! k
{
~1 y5 f. X y( V9 h/ h9 v; C
pBtn->EnableWindow( FALSE );
$ B s3 z" y, q4 H, c) ]
}else
+ \( g: M" l2 c6 M: A
pBtn->EnableWindow( TRUE );
. { ~; b/ x3 S" q( \: y/ S
if( m_pTexture )
# r3 c, {: N1 G* z9 j2 S
{
$ I, t/ W2 C" a" y! }
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& T) _. J7 ]$ D2 j
if( wndCtrl && wndCtrl->rect )
# |$ k3 g1 a6 u
{
) y, c' W6 e: ^& K0 w/ b( X
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
" v9 {+ z& w; K2 u: R
}
: @8 K; G' o& h; e! R
}
$ N6 G$ r: X9 s* N2 T
}
0 ^) q2 O. X) [% A
% V) e% d" v9 N! s0 u( A5 Y! m2 u
BOOL CWndAutoFood:
rocess()
4 W8 c/ }: Z( j/ S0 P
{
B! Y) Y& J6 Y1 s
if( bStart )
2 @) n6 |9 P2 w3 B( P
{
p+ ~+ s- H `' n! [ Q
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
7 R: R) A, N. a( e, F$ w
{
+ k3 b0 G( U I* f/ ~
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 N% [$ t5 {+ c
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
" W, i6 N$ I% E
}else{
Y8 W3 S+ M t9 W
bStart = FALSE;
5 N6 i0 G( J h" ?
m_pItemElem = NULL;
1 Z) e% Q3 D: a- O0 E7 [/ ~; I9 e
}
8 w8 S; t8 n3 r4 m3 Z% d
}
: n# F% ^! q" o+ X
return TRUE;
: P8 F$ C- z5 r* V
}
0 B) U3 ~9 E" O; U
" s6 D ]/ E/ u% ^" _- ?! A
登录视频废话:
* V1 P8 B5 t; F. D5 {
尾翼:
; S' T4 T3 [+ f! f9 u: q% h" u7 Z
, t* M) c' F" f, R7 a" u! d& W
代码:
6 i2 Q) f; }4 J0 o% H7 | G
W5 M% L; ~- ]& d
void CWorld::SetLight( BOOL bLight )
+ d' A6 S' A- H4 h( T0 L
durch
g. Q& Q! R' n5 \; {
Code:
; l) U4 E" ]8 t. y+ @- h
void CWorld::SetLight( BOOL bLight )
( u( B( @: e3 Z2 e3 P$ t
{
+ H: Z2 V7 _2 v; G% H( C5 e
//ACE("SetLight %d \n", bLight);
" U( ^8 S, ?) W$ J ?4 C2 t
4 q M$ ^5 r8 ^, `0 g4 O
#ifndef __WORLDSERVER
( a- b( E6 M- d& L' [( v6 Q) d
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
' V- @/ d" t$ H0 }/ e& L
CLight* pLight = NULL;
5 t. t" q9 i* R) H
2 d$ K3 K) m" c6 w' X8 Q3 a
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
& n! u$ F1 q _% c
+ {5 K" ? k% }/ a$ H
pLight = GetLight( "direction" );
. L6 e: q5 w( U* r* B& _
! V' F; W3 o2 I$ O9 y* W! e0 k
#if __VER >= 15 // __BS_CHANGING_ENVIR
x! [+ R8 s; ` G; }
if( g_pPlayer ){
! c4 S5 V: C6 g% b5 v
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
3 y- k( L% a8 c
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
! r6 \8 ~2 v1 M Q
{
* G9 K( ?1 L- f" k
if( pLight )
6 Q' m7 ~9 {% i. `! U- Q
{
" \2 f- h6 I- Z8 G* v
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
" I9 W3 o, Y/ s; r+ x1 L% ^+ P
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
" \, F, w9 O0 v' K6 ^# l5 G
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
" Q" p: v( K, ]4 l) _. Z( C; j3 Q
. L8 v; W9 g) F v- Y! Y
pLight->Specular.r = 2.0f;
9 e" o# G. {8 W' o$ Y5 x6 N1 V- B
pLight->Specular.g = 2.0f;
/ _, ?, d, C: e) e: j. H6 ~
pLight->Specular.b = 2.0f;
( R2 U9 }, U- a, ^
, p! m( ]8 K9 A4 Y/ z2 X6 W; L( W
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
2 W3 _- o. K2 R( L, k8 c' I, a3 T- w
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
E$ q+ | p b* _# g) L2 o2 a
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
. g! C; y+ ~: A
& s# g; }, D3 v* w0 u7 E8 d8 {
HookUpdateLight( pLight );
7 I$ X/ I) k+ B2 d
: w! ~1 m# z0 |4 x) V- G5 h
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
, l) w* F5 v, \8 H" ]6 O f
/ l% U/ i [( V7 D& k( d* Q. Q
pLight->Diffuse.r *= 1.2f;
; y; Q$ F3 K9 i- y2 ]$ s5 m
pLight->Diffuse.g *= 1.2f;
1 k' n/ q; h. ]# A* v
pLight->Diffuse.b *= 1.2f;
4 I: c1 F1 Q0 }+ ]: K
3 h5 O, K c: D* M: i/ d+ ?/ T
pLight->Ambient.r *= 0.8f;
- f6 C( R' d0 B4 H/ k z' D& V" G
pLight->Ambient.g *= 0.8f;
/ r5 U" h5 W0 w" G: z1 ]* X, k
pLight->Ambient.b *= 0.8f;
! t/ o& Z) j! C! X1 t* k
* o' h" W& {9 b* \ D3 I+ y; k+ l
memcpy( &m_light, pLight, sizeof( m_light ) );
( D' v$ ~ G* \1 {
m6 A" u; q2 F* B; C
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 w! i* }) k( M; P
D3DXVec3Normalize(&(vecSun),&(vecSun));
5 j" k" _2 G! Z1 c2 g- u
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. R8 a( c' \, R; P6 L0 ?4 \* h! q
pLight->Appear( m_pd3dDevice, TRUE );
- r. C1 s- j: {6 h
^" C8 U4 D) s4 \
DWORD dwR, dwG, dwB;
C. d+ Y, x7 b3 b8 ?
dwR = (DWORD)( pLight->Ambient.r * 255 );
" i2 L* P7 m' x. E# I
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ R: G7 O9 y5 Z n2 R1 e
dwB = (DWORD)( pLight->Ambient.b * 255 );
; l$ q; W: I0 {! K
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
, h: R" ^- H5 u
}
4 |% m |; Z0 k, R9 \
}
- y0 R3 f& W: m1 i6 w8 }
}
# U' Z. @ c7 M( c# l. ]8 L
else
) K2 w2 l* b. X, ]& e
#endif
8 x) a5 P8 t4 Z
9 B$ j7 u+ O% c
if( m_bIsIndoor )
2 a) [4 y5 t- J" z( s8 A- ~. A
{
) P6 V% i5 m H" Q- @" @( r! F
if( pLight )
4 p5 Z0 d9 O. }7 T+ x2 r; g
{
4 V9 x, z3 ]( @) \: c
// à??μ oˉè*
" S. E N+ ? k: F. Z+ E% S( q
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
. H, A- c; d2 Z6 A4 }6 {; y# f
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
/ D2 K" |& l' n
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
. b( G. Y0 y% F# X
) k' u% u: q V0 _6 ?3 w6 {- N. q7 x5 S
// oˉè* ??à?
3 j( t- U0 T1 K3 P" G0 R& i! N5 e9 l
pLight->Specular.r = 1.0f;
* Y# d$ y) I# |$ C3 c( X8 [
pLight->Specular.g = 1.0f;
d* p8 L/ d- K; a! n
pLight->Specular.b = 1.0f;
& K. q+ @# m7 [+ J$ Z
// àü?? oˉè*
0 d3 t, N3 e$ J' {' U7 _
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
' H/ }6 |4 o) p
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
' h) K$ z) N1 B4 ?: G0 `7 z5 o [
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
" ]8 J) M- ~3 i; y
; u" b" E1 @+ \* N( o2 F3 p
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 U$ `8 _2 V' [9 s" k; y
{
6 Y9 u/ }6 K; k: h
pLight->Diffuse.r *= 0.6f;
S% K4 L l( y8 [. `
pLight->Diffuse.g *= 0.6f;
; t7 E) @! b; l
pLight->Diffuse.b *= 0.6f;
. B9 X9 Q; S6 s. t9 G6 y6 w
pLight->Ambient.r *= 0.7f;
- S; H E4 x1 R# H2 P7 F+ A% c
pLight->Ambient.g *= 0.7f;
& V w) B; Y5 @4 S9 m
pLight->Ambient.b *= 0.7f;
# k' o5 [0 `9 L) X% Z! i# L* t
}
4 m. P$ f3 H# L
5 P+ y/ J B. O. T z8 ^
#if __VER >= 15 // __BS_CHANGING_ENVIR
; f& t/ W: _9 m
if( g_pPlayer )
2 Z1 g* f* g; P& T
HookUpdateLight( pLight );
, y3 l& f1 K p
#endif
[- w! z! O5 e
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ N0 A6 O7 ]' d' f
0 q. ^) J2 q- ~
pLight->Diffuse.r += 0.1f;
7 @2 ^" E0 f5 V4 B% Q
pLight->Diffuse.g += 0.1f;
$ ~" o" ]) v' [8 T7 D$ {
pLight->Diffuse.b += 0.1f;
( [5 E- N- w& o0 e2 ?
// oˉè* ??à?
" t Y( h9 H. M5 ?/ b8 y0 Y
pLight->Specular.r = 2.0f;
* \; k! s8 b* f1 E4 |& ?
pLight->Specular.g = 2.0f;
6 e" Z- {; I7 ?. Q' h; b: M( m
pLight->Specular.b = 2.0f;
* C& O( T" Q0 N, r& i
// á?oˉ
8 Z6 C1 W) F6 F7 O3 V
pLight->Ambient.r *= 0.9f;
- w6 h c6 ?2 y- w5 ?
pLight->Ambient.g *= 0.9f;
T- @: _" m, ~0 ?+ a( S
pLight->Ambient.b *= 0.9f;
( J9 d. I7 Y% N, F
) I( j# ?2 s9 u% i) Y
memcpy( &m_light, pLight, sizeof( m_light ) );
0 c3 l2 _; z8 w2 Q) k q
, x8 k3 D) T6 {' O2 {
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
9 P( s8 F; E' Q3 \3 \
pLight->Appear( m_pd3dDevice, TRUE );
8 U/ y; V3 u; \0 v5 C7 [1 x. Y$ A( q, c
, p4 Q9 j3 m2 F. K
DWORD dwR, dwG, dwB;
; B" G8 q+ G( z; t% D+ l' h+ h3 Q9 j' G
dwR = (DWORD)( pLight->Ambient.r * 255 );
/ e) |" E- b5 w! c
dwG = (DWORD)( pLight->Ambient.g * 255 );
& O3 x0 b' q D: ~. @! ]
dwB = (DWORD)( pLight->Ambient.b * 255 );
. i2 b5 c8 F4 T, Y- z
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 l' q! B+ d7 p+ z: Z
}
1 T: w" F4 J& H+ o4 z6 T
}
5 O" g3 @0 R* R( H7 g& i& |
else
r0 H l. ?6 |) v+ M8 R
{
; O% K+ E5 l, _, z1 L3 D
if( pLight )
' ~; z+ ?8 e$ V5 O8 P
{
* t3 I2 b. o' F
6 I% d6 ]* c2 r6 X
int nHour = 8, nMin = 0;
' r2 v6 m* G& u* D
#ifdef __CLIENT
8 ?( P3 n! C4 t: |1 R5 ?: y
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
; p+ i. H3 h! Y
nHour = g_GameTimer.m_nHour;
8 _% {" T- [& q1 e6 Y: b V
nMin = g_GameTimer.m_nMin ;
) L& w# z% g- z' S1 G: m
#else
! `0 i5 _% ^( R7 g0 j4 L$ o- H
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
9 G, X5 H/ D3 o/ D. k$ e
if( m_nLightType == 1 )
+ N- ?5 _9 {. y3 V) l
nHour = m_nLightHour;
0 Y0 P8 C6 R/ w" h1 B! E; Z+ g
#endif
0 q- t$ D, l9 e4 J# d1 [/ T
nHour--;
7 \/ ^6 z$ m [$ [
if( nHour < 0 ) nHour = 0;
`" }6 \* I% k
if( nHour > 23 ) nHour = 23;
5 o' U: h& X: E* }+ X7 \- [* x
% S0 n, q! u( a+ W; G) }% c) |
//if( m_bFixedHour )
/ c+ F! q1 K! f2 N, Z
// nHour = m_nFixedHour, nMin = 0;
% L1 X2 ?! ?- h! r/ x+ E S
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
8 Q$ H- v" m% c9 J$ B3 U- i8 t5 B( M
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
% T! F# x& w- G9 v! e' L7 l5 u: u
, |% a y! ?( j
//m_lightColor = lightColorPrv;
4 k% g1 {4 n* U6 U
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
5 {5 Q6 B0 t* _
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
# I; ]/ y& k" g! _! F2 W
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
' |/ m( j. D6 a7 Q0 P) T s; A/ g
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
6 H9 `/ ?2 M* v0 y$ j
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
: J- m7 T) I) ~) _0 j+ d
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
% E+ U; u- r% Z) r7 Y' |# y8 ^( A
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
4 ~, T, L' `$ f/ W& p5 @
8 @, s" q5 o) D" y! Q4 R. Q: L
// à??μ oˉè*
8 p' W2 }* s0 K) B9 }/ \; Z j
pLight->Diffuse.r = lightColorPrv.r1;
- g: v6 N+ m* d( O1 |' [
pLight->Diffuse.g = lightColorPrv.g1;
7 x0 H4 }3 h, v+ W. Z
pLight->Diffuse.b = lightColorPrv.b1;
- I8 |; ^8 b, Z& ^4 c+ L, M
// oˉè* ??à?
7 Q! ]9 k. Z) z
pLight->Specular.r = 1.0f;
4 j5 o6 ?( D, w
pLight->Specular.g = 1.0f;
* Z5 F$ n; O ~. W
pLight->Specular.b = 1.0f;
7 J7 t0 P8 Y5 j& y; K
// àü?? oˉè*
- _% y& A$ q1 v) S7 ^2 Z
pLight->Ambient.r = lightColorPrv.r2;
+ V& W; S' @* Q* P& r3 l3 c
pLight->Ambient.g = lightColorPrv.g2;
n4 d: \/ p( l
pLight->Ambient.b = lightColorPrv.b2;
, K" z! a# s- I) ~. k8 j2 G7 ]
. X/ t3 Z7 O4 d7 [3 P g
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
; r1 Q5 v$ \+ _& w) [
{
w4 ]; V$ O+ W) T+ o" n& V2 V5 c
pLight->Diffuse.r *= 0.6f;
; m3 {& h* W1 z/ A
pLight->Diffuse.g *= 0.6f;
. J. ]3 N2 q- t D3 y
pLight->Diffuse.b *= 0.6f;
! [. r. i. F( w- }$ v7 M
pLight->Ambient.r *= 0.7f;
$ D% o7 h N# C Z+ }. }1 t/ L2 I
pLight->Ambient.g *= 0.7f;
: [' z) | r: Z$ P _
pLight->Ambient.b *= 0.7f;
/ @$ k1 b+ E$ K5 z9 F+ a
}
( c& _2 _4 }6 o8 n: y5 N
3 k+ K; r8 r0 v( `* X- L
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ N6 }! z C8 U; J
if( g_pPlayer )
- [/ K4 v! j5 H7 F L
HookUpdateLight( pLight );
5 g$ B0 k, ]+ m3 e5 X$ x+ u; z' h
#endif
9 X! q2 R' ] X* [! |$ H
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; i, U- G. W* a7 Z \, R0 w4 m: z7 u
* H- l* y U" B+ T+ _
#ifdef __YENV
; ~2 b0 z' r7 }% J- ?! p! X
pLight->Diffuse.r *= 1.1f;
B: J) [( R# t+ I" R$ d2 V8 F
pLight->Diffuse.g *= 1.1f;
0 R+ _5 q; y5 T& Q
pLight->Diffuse.b *= 1.1f;
: t! u! Q" w) J( L6 W
// oˉè* ??à?
+ g* Q3 R: v/ Y
pLight->Specular.r = 2.0f;
% V& W% q) ?. X0 v
pLight->Specular.g = 2.0f;
# O: M ]. B5 |
pLight->Specular.b = 2.0f;
' ~2 `( _* ~4 c* g- d* [
// á?oˉ
: r2 R9 g, E, ^* P% Q: ?
pLight->Ambient.r *= 1.0f;
9 D+ K t( [* Z+ q1 |6 {8 e1 U
pLight->Ambient.g *= 1.0f;
( L9 v/ M7 R1 f
pLight->Ambient.b *= 1.0f;
/ E3 B8 b$ q& o4 I' m4 p( M X) T) V
#else //__YENV
: |" y0 M8 _& m2 A2 h: B
pLight->Diffuse.r *= 1.1f;
" m& Z" J" u9 a3 {, r/ ^7 Q
pLight->Diffuse.g *= 1.1f;
0 Y0 M! v C3 c! t6 A
pLight->Diffuse.b *= 1.1f;
' B+ B4 g: P- e' Q& d: N
// oˉè* ??à?
, S: Z! c/ z0 ~8 b. P
pLight->Specular.r = 2.0f;
% `! ~0 C7 H, [! R9 A" q+ t! R3 Y6 Z
pLight->Specular.g = 2.0f;
1 ?2 {" O! v4 S" I$ Y% G) d
pLight->Specular.b = 2.0f;
3 z6 x) u6 H' i% f4 v6 g
// á?oˉ
' ?7 N0 K9 c* A! F) a$ P5 R
pLight->Ambient.r *= 0.9f;
$ t3 O& \- K* X y" L+ U+ X3 U
pLight->Ambient.g *= 0.9f;
" q( [/ B# f8 D$ u1 } s
pLight->Ambient.b *= 0.9f;
; ]2 {0 c4 \1 _* O$ x) I: d
#endif //__YENV
% y/ G" s; S1 O4 Z8 ]) R
6 {& J' @) W M$ d6 [. E& x, g
memcpy( &m_light, pLight, sizeof( m_light ) );
& [4 _ u& @0 D2 v$ N
* u* C' F- p* d0 _$ [
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
* w7 [0 ^ G, o
D3DXMATRIX matTemp;
4 A0 N6 T6 l4 e7 F
static const float CONS_VAL = 3.1415926f / 180.f;
7 o' F/ w. p9 ?8 T5 @8 x" B8 @5 r( i
7 E' r% `. m }2 C2 n
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
+ x$ c( v" q( @+ j/ z, S$ v
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
- r; t' R/ }; n- _5 l
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
+ A) F8 ~3 L7 ?! ]+ @% W F
pLight->Appear( m_pd3dDevice, TRUE );
! @; W- t6 {0 a
( f u) O0 f$ R" D' q2 z
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 \' K% ^, K! p) v+ I
// D3DXVec3Normalize(&(vecSun),&(vecSun));
2 o7 a: a' f' D7 M0 u
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 G7 e% ?- S9 P) |' T5 X3 d
1 @! u7 Y e5 v8 p9 R; q
DWORD dwR, dwG, dwB;
7 O3 T! b k' _% S8 q) d
dwR = (DWORD)( pLight->Ambient.r * 255 );
9 C3 {( v( l5 Y; |; `
dwG = (DWORD)( pLight->Ambient.g * 255 );
; y: O0 k! C$ ^# M) e
dwB = (DWORD)( pLight->Ambient.b * 255 );
& Z! f( W; \9 C7 K% N& G
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' c* W: O' O6 R) _
}
4 x$ }- E0 Z G! w
}
# j0 s! Y C) F! E
0 h a5 q; t; o4 ?0 l4 `/ ]
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
! V r4 ~7 E% n5 i( O9 f$ e6 I+ H$ b
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) );
# O- Y' `: u7 }0 f% a: z% X
::SetLight( bLight );
5 [1 o" r9 e8 i
* C( P$ c( [, y( x- t9 m6 l) ], ?0 {# c% p
// ±ao? ?D?í???ó á¤à?
% U# n. @# j( _
m_pd3dDevice->SetMaterial( &m_baseMaterial );
) M& l# e( f1 X
, c: I) l9 [3 N+ Q$ g/ ^: l! O# ^. c
#endif // not WORLDSERVER
9 s9 w4 Y( F+ @0 x$ J$ K
}
! |7 q) Y, P4 n& C
并更换
6 T0 }) f; b$ _ ^' V5 r1 N. P. j9 m
Code:
( N, ]; @6 U& @* A
__FLYFF_INITPAGE_EXT
! O3 q0 W0 R8 ~. k
定义
! Y( { k, R; B( C6 `
/ @/ u( R4 o! r @9 s
1 [0 Q* S! ]; x
" r' q9 \( l# W. k
9 Y# j# ?' D. E0 t! @ i8 ~% z
现在终于删除我的狗屁加速...
7 r' o. x- D* { z8 Z
$ s& k2 k9 K& P6 y
* v( \% {9 l# G5 n' k
* q% I3 b0 S0 t2 ^3 L
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2