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