飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
4 O2 i" \' P. `6 ~
尾翼:
) T9 x4 |6 U3 n4 t' f8 [; u
) y- ]6 m- W' S3 ^7 Y( J
代码:
& F$ V2 U0 F, Q- k) N/ k2 Y
CWndAutoFood::CWndAutoFood()
3 _4 b5 ]2 R$ b7 e1 o' R
{
2 e/ m9 q$ p0 k/ A }. w3 \. o+ i( B
m_pItemElem = NULL;
; k) j4 F$ {% O
m_pTexture = NULL;
) J6 d2 u7 h. _5 `1 N0 T$ F3 _7 l
bStart = FALSE;
: Q- d8 y- E8 X' e( U
}
6 b4 K! V/ A2 X7 k: H
' Y2 O0 I7 z' K& X! q
CWndAutoFood::~CWndAutoFood()
$ V' o) z0 P9 _" d$ s: o
{
6 i F X1 c) B, |! y/ \; {/ M
AfxMessageBox( "AutoFood ist gestorben
" );
1 S" [7 |: T/ i; Y
}
: {, ^3 j7 v, r# W) ^
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
0 S, _4 P2 |6 D' p' t& c
{
) `7 H, Y5 Z; ~% V6 t9 S
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
) F4 ?* _+ L9 ^. x3 q6 v! P0 i7 a
}
9 [$ n) [$ \- h/ p; V& P9 }
+ q8 M' B$ |( f) K7 A- C8 P
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
9 C$ A: ~* t* _$ R& F
{
) w. P3 p2 L8 \
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 d' B5 Z% _/ Z' C Y$ \
CRect rect = pWndCtrl->rect;
* X/ M+ ~& q" n! e
if( rect && rect.PtInRect( point ) )
8 M: M6 @$ X: I$ d7 p7 Q
{
( Q" R( \- i/ d* n* A- J: g
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
! d$ n# Q( R' ^; Z# X
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
/ t4 R# G5 z+ K w$ ^* m
{
5 }* B9 w0 u% Y' p7 w1 S- f. e
if( m_pItemElem )
5 n" z2 m' `$ ] r Z, k$ c7 z1 p; {
{
0 @: m! a1 a2 s; k6 k
m_pItemElem = NULL;
k6 B g( ~# C' z4 _
}
, B1 u5 m( `+ N7 G& a
m_pItemElem = pItemElem;
* f1 D) d f G. C8 u3 ~4 S
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
1 [0 }3 T$ L# r7 o5 H+ V
}else{
! P, e9 s3 x& J( D8 k/ a
SetForbid( TRUE );
4 U, g9 R9 a K% r. C9 N
}
$ Y8 u7 C( m3 y- f
}else{
$ J! z; i1 h& c; G& {% o( Y
SetForbid( TRUE );
$ a1 m: ^' ^3 s. g
}
' M. N1 h' O6 v% A: H2 U
return TRUE;
5 K7 B5 ]+ @& g, V: `5 j& u; U' g
}
) t( x6 ]/ ?) ]$ B. s
* I/ h% _! D% E3 j7 O3 k4 F
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
& s7 C0 I8 t. g) \9 C$ Z1 `
{
- a- M7 g9 ]4 {4 g- W' Z6 m1 j
switch( nID )
( A# G z3 `- m) r& ]2 q* U) P
{
5 `0 U# G% m( V
case WIDC_BUTTON3:
9 ~+ u8 O w8 i; u# P1 J0 k
{
" D) m* P, B9 N+ [; D/ g0 d
bStart = TRUE;
. B q0 G0 |% W; x U" \9 t/ T
break;
2 @5 a. R1 C( S8 A
}
7 T; v! ?. q- W) z U
case WIDC_BUTTON4:
# S' B* B) }7 v9 r2 J _+ c
{
3 Z7 [! Q# n9 i+ z) o9 I
bStart = FALSE;
$ ]4 {% T3 [( G
break;
( Z# m `# E9 l2 p" W' G' @+ g; Z
}
r% J! b0 g; w& }
}
$ |% A% b! U* v% n
return CWndNeuz::OnChildNotify( message, nID, pLResult );
5 h c- X( a# F
}
% T8 ^# o9 ]- x
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
0 g/ h% v/ S3 f7 w) w2 z$ ^/ K
{
8 y: r( |5 v, x* J8 i
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
/ q- C3 O3 b) F* j/ R
if( bStart || !m_pItemElem )
, ^0 z8 B3 i, r" D8 Z
{
( l' M/ o' F4 N+ i; I8 ^$ o: g7 N
pBtn->EnableWindow( FALSE );
) t$ Z( t: ?# q, |% h4 G
}else
4 I5 Y( T- ^; s5 m U! k
pBtn->EnableWindow( TRUE );
7 j$ J7 Y9 L5 i6 a4 s3 j+ K K& O4 T
if( m_pTexture )
! K+ M+ w# ?2 M
{
2 R3 q4 K% K# O, Q1 D
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& D+ M9 p. D$ ~2 M" I* O6 Y
if( wndCtrl && wndCtrl->rect )
+ N* U2 g, a9 V8 [
{
6 l7 e* @( T& E6 e% U/ C% W; {
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
+ B' M( Q4 e, y+ S/ ^0 P
}
% }! i/ ]# h+ r5 Q- ?$ R) Q, s/ ~
}
0 h) n' N H/ s- t5 ^6 e
}
* l: Q; M. P, C6 y8 r# S
4 e+ j# h; |! d9 e3 v# t0 A
BOOL CWndAutoFood:
rocess()
" g, J1 ^1 b7 P7 g7 v9 _& A. [% i4 {
{
! p5 Z& y/ B& m5 e8 C# N j
if( bStart )
0 f$ o; y: k! ^) D
{
# x# A9 k: O2 h3 S5 Q3 N- S0 I
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
- v3 T \; y! G K5 R
{
# a% e6 D" f; g5 b G) ?8 c+ c( t
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
+ A7 ~3 \/ n2 k$ N7 ?
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
( q6 \6 x9 _5 b
}else{
4 \- B* n) b1 r% q
bStart = FALSE;
7 q% Z7 T+ F8 G3 K
m_pItemElem = NULL;
" n8 V5 `9 b* e3 W0 J5 I% a( \
}
9 ~4 K+ R. w% _ R- N
}
2 G C% {. o) S: J: ]
return TRUE;
# l8 b0 ], _: s2 F) g! \
}
4 p+ J9 j7 d$ u5 m3 v
9 O- z5 L/ m* Y$ U! j, K) g
登录视频废话:
- M* m3 K, p/ f
尾翼:
2 y+ {& Q7 V! R9 `/ ]
. Y: ?( G; E; L4 T( O7 Y5 r, S4 _
代码:
* G$ b) O3 R! r n+ X5 _9 R. Y u
8 C% m6 P! r" L6 D
void CWorld::SetLight( BOOL bLight )
: ]& C9 j: J2 S m
durch
1 b0 |" ]. U. p% a
Code:
, o) F) N9 ~7 F& d
void CWorld::SetLight( BOOL bLight )
( r2 Y: p0 C- r& o W
{
$ V* B! f4 I* z4 ]
//ACE("SetLight %d \n", bLight);
: r) o0 r3 }, H
, J3 r4 S8 |( }' ]4 P8 e
#ifndef __WORLDSERVER
4 s/ O3 S( @+ e2 K
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
0 h& ?2 \ v. `% ^
CLight* pLight = NULL;
/ k7 K4 T: V _
( \$ o8 z z; v& D
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
. N: H# h% a! z
# E! ]0 w( C) u$ g- ~' M l
pLight = GetLight( "direction" );
+ q! D- @4 }4 R
% p; d. z- x: R3 T8 y' G& J3 e
#if __VER >= 15 // __BS_CHANGING_ENVIR
& G7 W- K1 W! ?( X& B
if( g_pPlayer ){
1 d* }& \+ u, B2 H8 B% j9 W
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
) e A8 l3 f$ [8 ]6 X
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
8 x3 [$ ]) b' T0 M
{
- y& E! D4 x( s% {* ]1 U& B* Q
if( pLight )
! Q R. g/ A X
{
/ Q F8 ?) C R5 {
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
" I. C8 ^3 q' s, J u! E
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
# b+ B& E5 i# K8 e
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
! K6 l, q$ r" R) m0 u9 \
- Z" X5 [; z5 a: y
pLight->Specular.r = 2.0f;
) R" e$ L2 ^+ {% \# j
pLight->Specular.g = 2.0f;
+ n& a, B; [& r! `7 ]: t
pLight->Specular.b = 2.0f;
/ ~/ [" u* F F A
% |2 A7 B1 F9 C3 o a6 f* @" m2 f
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
" z b @. M$ D8 j) O% J' l
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
' ^2 n, O. [2 q$ {4 n7 H
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
# i# Z1 Q* P$ l
4 Y- ?8 O; v) m8 ]7 C0 o, V
HookUpdateLight( pLight );
$ }! @3 B* u J+ k
4 n% o8 n3 H- I+ H T
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 i2 Q5 ~$ V6 n
' A: x) }3 b p c
pLight->Diffuse.r *= 1.2f;
* h G0 r# s! y4 H; _( o# n
pLight->Diffuse.g *= 1.2f;
+ M& Q8 G! M2 Q' m8 X: }/ e
pLight->Diffuse.b *= 1.2f;
+ r& I, f7 V: c8 v7 G% Y
4 y; q* {# r( H9 p. z" o
pLight->Ambient.r *= 0.8f;
- G" t- y1 V1 v' d! j4 R. f
pLight->Ambient.g *= 0.8f;
+ R& Z' m, T, u/ {; {
pLight->Ambient.b *= 0.8f;
. z1 k, J" v/ ~4 W: i/ h1 F
2 i, `- g, i3 i* z
memcpy( &m_light, pLight, sizeof( m_light ) );
* y% ~% M" Q+ y( U% x6 l# D. v
' a( R! C% x& }6 v/ K: a
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
4 ]9 R; _/ L% E: d* s; s
D3DXVec3Normalize(&(vecSun),&(vecSun));
$ {7 [7 ~8 F1 M) j
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
" H/ }0 ?6 F$ E1 m" X- m
pLight->Appear( m_pd3dDevice, TRUE );
* ]% k$ a- n6 n+ R, i1 }
+ a" g3 e, A5 M" N0 i* h. A& t
DWORD dwR, dwG, dwB;
, W3 s; k4 T( {$ y4 s' T8 t% _0 M( b7 i0 B
dwR = (DWORD)( pLight->Ambient.r * 255 );
. W) h6 u2 [- r
dwG = (DWORD)( pLight->Ambient.g * 255 );
9 {& x! B0 c8 A# n
dwB = (DWORD)( pLight->Ambient.b * 255 );
j9 E* k8 Y3 t& v
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
& V7 T( ^) j, Z9 f! F
}
! D9 V# B# }6 W* U+ ^/ V( U
}
. ~: `3 Q' A# h$ @4 ?, f# p3 k' Z8 o
}
7 L8 a3 q) r/ v( w! Q2 f) ]; w. y% i
else
+ P: v) K$ Y% ]. X4 y( N
#endif
/ N, n- M+ p5 u# o2 K
[0 @* n1 U0 \% y8 I. G) Q
if( m_bIsIndoor )
* r5 T1 a/ s0 S$ t) g
{
8 t3 P" p. W. ?" \
if( pLight )
% W% Y) A, j+ l
{
; H( U" N4 h4 u* x# [
// à??μ oˉè*
/ z$ n5 w# N& M% E
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
g) n4 o& O# o' q
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
" }) m' q" w0 T! z6 Z' P- ]
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
# s4 [+ U7 _' I+ ^/ o: f
) k4 ^9 E' i; q$ p* L% U# Y) `! l
// oˉè* ??à?
& T7 G/ Z& c: u. n
pLight->Specular.r = 1.0f;
6 M+ G8 w: n) f) r9 s3 }) i
pLight->Specular.g = 1.0f;
, Y2 [. `. t! s$ @4 G9 [
pLight->Specular.b = 1.0f;
, U5 p* ?3 s2 V1 S1 U4 U
// àü?? oˉè*
- J! D! Q; Z; _
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
% [0 M. W4 r3 {' n; K
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
9 { _; D c4 v* Y
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
6 D3 o) n4 U, j0 p5 I7 \3 W$ O
& ?& _3 h; z" P3 ?$ W* }
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 l5 p1 o6 f, C4 ]: L" p
{
6 Z* i2 V3 {" Y; p) e' ~
pLight->Diffuse.r *= 0.6f;
! I- D3 b' j% w$ G4 H
pLight->Diffuse.g *= 0.6f;
" Q4 d8 S3 R8 m- R2 q( K
pLight->Diffuse.b *= 0.6f;
' d; M8 O0 j% Y
pLight->Ambient.r *= 0.7f;
. a1 h1 f( O4 F6 J; U. P) ?. x9 C
pLight->Ambient.g *= 0.7f;
" [6 Q( c6 d, y' ~
pLight->Ambient.b *= 0.7f;
% ^1 A" i& a1 M; M
}
2 z5 Q; b+ V" x
+ |# w9 R/ v" g' Q* F3 `
#if __VER >= 15 // __BS_CHANGING_ENVIR
8 F- z, h0 o+ ]9 X; B! A$ P" j
if( g_pPlayer )
8 K# b; o( V( C4 B* c
HookUpdateLight( pLight );
) l, P0 |: C8 Z0 U! G* m$ E( ?
#endif
" [( D! y9 u' @- ]* V8 `
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' G& t# y1 U4 K, A- r+ L: U6 k
( N/ [5 t8 j, S y7 h8 l
pLight->Diffuse.r += 0.1f;
! h) F, G: p# D6 o0 |- b
pLight->Diffuse.g += 0.1f;
; g: w1 G& K- |( g) W* n
pLight->Diffuse.b += 0.1f;
! ?; j* ] V% Q, N1 D: L
// oˉè* ??à?
; E: t0 I# b3 ]3 K- c |9 I3 d
pLight->Specular.r = 2.0f;
+ i; Q% `6 M4 L7 Q# |5 B0 w
pLight->Specular.g = 2.0f;
) I9 Q# D( E r) V7 u
pLight->Specular.b = 2.0f;
8 p5 o1 c9 j M9 Q6 R9 `
// á?oˉ
* q5 {: T2 K8 r0 J9 w7 _6 V
pLight->Ambient.r *= 0.9f;
+ M H F G0 X) s* V6 a4 g
pLight->Ambient.g *= 0.9f;
+ a+ F& D/ ?* j F' ]) p" A p
pLight->Ambient.b *= 0.9f;
* T8 v- L8 X* s$ }& x
, }1 H% \6 o6 D" w q, d
memcpy( &m_light, pLight, sizeof( m_light ) );
8 U, T0 _; B" h; n# b) S
0 C% N3 ~1 g0 _0 l6 ^1 F- k5 N' d
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
3 S, `/ M9 Q, z
pLight->Appear( m_pd3dDevice, TRUE );
6 K7 f) R/ }+ I+ s- w
" z0 r" m7 v9 d0 A: o. _
DWORD dwR, dwG, dwB;
' g" M8 D( T( R, h6 R1 j7 X# m+ [
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 V8 g- c, D/ ]" I: Y
dwG = (DWORD)( pLight->Ambient.g * 255 );
% ]: o7 R T, T3 w; [2 S1 g
dwB = (DWORD)( pLight->Ambient.b * 255 );
( ?3 c2 R+ x* ~: g! Q) Q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; _0 A" C5 B7 T
}
+ m; s( f4 i0 M0 w
}
& ]* n) V4 ^' A0 h! k
else
2 W/ K9 b' g9 n* c0 G
{
' w% S: \( b4 Q/ }
if( pLight )
9 L; ?9 C" l! X, u, {6 }0 e
{
; g1 N% m9 j4 g4 A+ q) F
# o: G3 X! F/ l& z* Z1 t
int nHour = 8, nMin = 0;
( ~& P6 C, V# {9 W j% b0 O
#ifdef __CLIENT
, x# S1 H6 Z# h5 z
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
: A( E0 _5 O' {! @6 r
nHour = g_GameTimer.m_nHour;
$ n, I; u! p" b1 O4 T
nMin = g_GameTimer.m_nMin ;
5 ~) s! H+ `; F9 S
#else
; F3 ^+ O5 J0 n% w- J; ?
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
! `* {6 X3 {5 q. X4 x
if( m_nLightType == 1 )
% L5 V) Z3 \: G) p. ]
nHour = m_nLightHour;
8 Y L+ Y" i. f
#endif
0 F0 }) ]8 ]6 b3 o% A; z8 S: K
nHour--;
0 W7 t/ b' c) |* O, ~& W3 G6 g5 ?
if( nHour < 0 ) nHour = 0;
6 c1 }4 W4 R% A; l9 _% z& c/ j
if( nHour > 23 ) nHour = 23;
* F' p. f6 I% z% z& @" }
" F% x3 p, ?! m
//if( m_bFixedHour )
% r* _& N3 |* w% O2 l8 r
// nHour = m_nFixedHour, nMin = 0;
5 {' D/ V a4 }; _* v1 ~
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
1 i+ m0 ^& ~3 }+ @
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
/ x4 h) n# c: h Q8 |* d' e
& h S3 e, d: I# l& F. t
//m_lightColor = lightColorPrv;
9 g8 @. G& u! k3 r
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
6 T' O( k" F i6 U' ^
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
1 D, E6 R- o, e. L% O
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
; B5 C0 a3 B3 _8 V8 S
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
" `" }5 m: e. M8 j- S1 |4 x9 {
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
; @+ s- Y5 a) R$ d+ G; h3 V
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
3 ?; c9 j3 G8 I j
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
8 I9 H/ C2 K1 }7 s4 q8 O1 u3 j/ t$ w
( @" n2 ?+ [9 l- X( a
// à??μ oˉè*
2 h0 q: J1 u+ b* @" l2 A5 H: C
pLight->Diffuse.r = lightColorPrv.r1;
: Y% i; `, x/ Y( _. z/ E8 p
pLight->Diffuse.g = lightColorPrv.g1;
. `! X6 B% X9 j+ `
pLight->Diffuse.b = lightColorPrv.b1;
) W% M1 f c. A6 e" p% ]
// oˉè* ??à?
3 ~! C W, t! [3 a# e& y/ P, _
pLight->Specular.r = 1.0f;
' l5 J- s$ m+ ?( k
pLight->Specular.g = 1.0f;
+ T+ ], [; ^2 Y" F3 t/ Q( [' y
pLight->Specular.b = 1.0f;
! b+ _ I7 l- m- E9 F+ A& k
// àü?? oˉè*
# J/ L9 R. O# O
pLight->Ambient.r = lightColorPrv.r2;
- U$ _; A/ x3 Y) R. Y
pLight->Ambient.g = lightColorPrv.g2;
5 H, l& a6 e' |( x$ t7 g
pLight->Ambient.b = lightColorPrv.b2;
7 m4 C8 W1 {- K2 {6 u$ }9 C }
5 f# @* N% B1 F( ]* Y- f2 w( ^
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
$ j/ w8 D6 L" l; o+ i
{
* p% e! ]6 p* k9 @8 Q' j
pLight->Diffuse.r *= 0.6f;
9 m, t3 B; k+ Q8 q' Z: M1 R& [. f
pLight->Diffuse.g *= 0.6f;
- x; y! ^5 x( ^
pLight->Diffuse.b *= 0.6f;
. U" {5 P' N8 ~5 t
pLight->Ambient.r *= 0.7f;
! g3 Z$ V5 |. |! x: k' \
pLight->Ambient.g *= 0.7f;
5 ]4 I+ {" U& T+ ~0 F& C* z) r
pLight->Ambient.b *= 0.7f;
7 E0 p* W; V# L s$ [
}
/ P \4 V4 Z2 t2 k8 r- j. \
( z9 Z; a4 c- R2 ?7 A3 M) b
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 T. s8 r/ v1 g% b! t9 m3 d
if( g_pPlayer )
, O" n9 B6 \5 A5 J
HookUpdateLight( pLight );
6 J% f7 i8 h" P9 [
#endif
* P9 y& C5 ]( W! t- Q- ]( v, b
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 c9 _/ Q' f$ H6 I1 M7 b
$ L; y0 l# l3 t. J" E
#ifdef __YENV
0 U1 b& X% S! m. I4 Q1 L0 Z
pLight->Diffuse.r *= 1.1f;
U. R8 D2 W! Y9 o% w, g
pLight->Diffuse.g *= 1.1f;
/ j0 p7 H% M1 J/ H
pLight->Diffuse.b *= 1.1f;
1 A, V) }/ u/ q2 s; A
// oˉè* ??à?
$ v) f; N6 A+ s* B3 ]/ y U
pLight->Specular.r = 2.0f;
D( ~, Y% i$ h* h, O* E, _# @. \( b/ ?
pLight->Specular.g = 2.0f;
" ?% g! Y9 T# Y% ^2 ?
pLight->Specular.b = 2.0f;
9 A% ?. x5 f: v' R$ p) r
// á?oˉ
: ^. u6 t# c" Z1 m
pLight->Ambient.r *= 1.0f;
6 S2 F _1 z) s, k
pLight->Ambient.g *= 1.0f;
& ?" N3 m0 `% ^ ?8 D9 T
pLight->Ambient.b *= 1.0f;
7 g! c, |4 m% G) e& v4 ?
#else //__YENV
' Z: T2 G: ^7 w$ H& S
pLight->Diffuse.r *= 1.1f;
& S2 H u* }1 y) U! O' ]9 U3 w
pLight->Diffuse.g *= 1.1f;
0 S5 A$ E! t/ y- }; s
pLight->Diffuse.b *= 1.1f;
1 g5 z* B6 u! C$ F1 x4 t
// oˉè* ??à?
5 k9 C$ n$ s+ i% D, H
pLight->Specular.r = 2.0f;
5 E: h! a4 s( G ^4 e( p6 L( V
pLight->Specular.g = 2.0f;
8 q5 x& k8 y# n" }/ o% t1 ]2 q' w
pLight->Specular.b = 2.0f;
7 [, e6 O, P6 k, h* H8 t
// á?oˉ
( R s9 |6 s! P) Q2 T
pLight->Ambient.r *= 0.9f;
- P9 ?7 _1 Q3 W% q* F1 D; \8 d+ Z- I) K
pLight->Ambient.g *= 0.9f;
9 h# J; N' J0 u0 Y" `
pLight->Ambient.b *= 0.9f;
: H0 M9 {, Q+ I$ \2 {6 S, _2 ]+ D- h
#endif //__YENV
* y" A- z: z+ q& O! ^7 A
& p, z8 Q; i/ v- L1 r
memcpy( &m_light, pLight, sizeof( m_light ) );
j- r) r( x# [, |! I; C
' \) U3 U+ C' y% L' R1 Z- M
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
/ m0 _" o7 k* k9 q# j/ w) m- T0 P
D3DXMATRIX matTemp;
. R' s' Q# l7 T4 T3 I
static const float CONS_VAL = 3.1415926f / 180.f;
+ A6 A5 `/ C4 I( L
$ ~0 s3 M$ X8 _# \( ]% x$ U, B
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
, V6 B% W) g5 K" h r7 @ m: L1 b0 c
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
7 S- v* q' Q0 f8 W; A& h$ ?# P
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
% J% }$ `' Z, r5 C, ]7 f
pLight->Appear( m_pd3dDevice, TRUE );
# E" @) P3 T2 T4 r
# T! D1 M/ R! M1 \$ K* r# I: l
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' D2 C% a2 J9 J: X! C' B
// D3DXVec3Normalize(&(vecSun),&(vecSun));
( G5 d1 S7 f, i( L" c7 k
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) I& F8 \% o( z5 M8 F0 z+ K W3 ?
& ]2 s5 n$ {0 G
DWORD dwR, dwG, dwB;
5 _# ~* j) s, N" k3 w! }
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 R1 b, ? Y) f8 l1 m
dwG = (DWORD)( pLight->Ambient.g * 255 );
& l" F0 V+ l: {; K" {
dwB = (DWORD)( pLight->Ambient.b * 255 );
! U$ s% u% W- ?' D3 k
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 F6 r" O- p; L! a; E* P7 i
}
& q+ P5 k& }: K
}
9 i5 G" ?' b0 U- R8 v
. R H( B! j1 ?& P3 H6 z) K" X
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
1 F; Y' r1 y$ 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) );
' ^; g, r. c' a. A9 Z1 K$ e' r
::SetLight( bLight );
: r# d0 H( u/ ~/ a+ E6 e2 Z
. j& ?" b8 y( a" y
// ±ao? ?D?í???ó á¤à?
" ] {+ o* D2 s. v
m_pd3dDevice->SetMaterial( &m_baseMaterial );
( W i$ c! u# Q7 V' }
: {* e S7 }* V2 E0 e6 l
#endif // not WORLDSERVER
; M0 o( T' P" e4 M- J x$ C; Q
}
! s4 @' r! j% n4 z. C
并更换
4 [: I4 m8 B: l) O/ x. B2 k! v
Code:
" }( \( n4 A' ~" _8 I3 e
__FLYFF_INITPAGE_EXT
# l+ H1 b9 H8 ]& r
定义
+ C6 \2 G2 Z$ A4 V) M! e
8 c; x# p3 L# Y; W
) }4 R) g( D) W% c& ?' ?
- X: c: D% O( p% O
7 K! X8 |) o: y) q8 ]8 T
现在终于删除我的狗屁加速...
/ N' F7 o% {% l {% Q
: G# J: [& E' E; q4 k/ X1 q
- P" p6 k0 ^' w+ |! s+ V
t9 ^$ {% n# H+ i
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2