飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
6 N( `/ `, g$ }7 b. V" M
尾翼:
/ M" q, t1 J7 W2 @
1 r5 ~+ i$ s1 l. v" [% d1 ^
代码:
* e- B: ?- x$ z7 e6 L
CWndAutoFood::CWndAutoFood()
6 S: N6 H2 R1 ?4 s" S9 X; E1 j: D
{
7 f* K7 J5 Y+ m* K
m_pItemElem = NULL;
$ j, [) h8 P6 i5 C: @. l: W6 Y( r
m_pTexture = NULL;
1 G0 l+ _6 \+ g# @8 K( p) r0 w; ^
bStart = FALSE;
6 y2 e. \; t9 b7 d: H% j2 r
}
& _8 ~* |4 j4 r( Z8 X6 Y$ F x
- W% T: U0 I) t, ]; ]
CWndAutoFood::~CWndAutoFood()
0 p+ [- B8 Q8 W
{
( v5 b" {% F. I
AfxMessageBox( "AutoFood ist gestorben
" );
; |- [ u( I6 @5 X+ [( Z9 {3 m
}
1 Y: D3 ^7 `2 Q( \( W) {, @
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
* f, A" ?5 Y- k4 D# g7 |: _
{
3 g* Z6 n8 M i6 p: I
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
1 c$ w: p' R1 q. Q6 M
}
; n4 q/ D& [+ P
: h; T+ D4 q& f5 _3 M0 q. G
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
) Y" O1 Q& N$ R/ u( N
{
8 E+ M' E' F) L# \$ F' Z
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
4 ]% ]' E! t: ^+ w% O# M+ W# d
CRect rect = pWndCtrl->rect;
) G2 |( p# d* _- D. ]
if( rect && rect.PtInRect( point ) )
1 w+ Z) N& d a4 A1 X6 @
{
3 u4 U* ? C1 k# U5 ~+ \1 a2 v
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
* S8 g9 m0 ?. z V* d! |$ @
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 ], s, C, v1 H; i# U
{
. o8 Q+ N& E' M( s7 L. X6 |+ c
if( m_pItemElem )
: z6 a; \* C1 _! c
{
6 P0 H, M0 L' W( { S3 e5 {6 ]4 v
m_pItemElem = NULL;
2 f7 \8 Y6 [% w: `3 N- M* x
}
7 s" C) ^+ \; o
m_pItemElem = pItemElem;
3 h& q+ w* {( _3 d1 s7 d" M' Z
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 d* F( J- M! j
}else{
5 {4 }" }" a5 M" P3 I: d/ H
SetForbid( TRUE );
2 \) d# n& M& i$ }8 U' w
}
. k: m, S( L# |3 ~+ {) N
}else{
- B+ U5 ^3 m+ H) v
SetForbid( TRUE );
- E, x" L8 }( c' o
}
, i) ?2 o; B: x' m1 z
return TRUE;
' I& m3 {0 w- O1 W7 |- K
}
% x$ W0 a2 J( q# g g
' u& ]2 M, |7 S, N
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
5 L, a3 N z9 E2 E% _
{
% l+ ?# L" C% |, |/ d! p* ?* b+ ?( M
switch( nID )
1 C0 ^. J8 X+ M0 x7 j T3 n' T( H& v
{
! O+ f: \, H: o/ p' u9 ^% B, `! w
case WIDC_BUTTON3:
" a- H3 ]$ k. C" S
{
- n& q+ E) T2 K1 |3 d3 M" O
bStart = TRUE;
, H- V, ?! X0 }' T5 l3 y' d2 A
break;
8 x% D- A9 b5 ]2 L* y6 |% P# {
}
. N; {' a- t2 x5 q% l! l
case WIDC_BUTTON4:
% @3 D/ J/ W" F* W1 n
{
0 a+ D' s! K% _
bStart = FALSE;
4 A# X- g8 M, b* x; d" y
break;
N9 g2 D& }. c" u k/ a7 T" S0 F
}
, j/ n) w5 j* Z4 t
}
% l, m1 u/ a- N( O( |
return CWndNeuz::OnChildNotify( message, nID, pLResult );
8 ?3 E9 ~# @# \7 W
}
* f) A+ x2 W, E% N9 I2 Y
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
! Z) _8 y6 O8 Z' Y
{
, I' _4 f+ F+ L
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
8 L! I* g: \( v- ]
if( bStart || !m_pItemElem )
1 ^9 _2 B" _0 v" P& {* B8 @
{
( a% N6 R' s7 o* N5 y9 ^4 t
pBtn->EnableWindow( FALSE );
3 L% V$ v7 \& _! {( \3 ]1 {
}else
5 p& O. |- K, Y' ~9 F9 H
pBtn->EnableWindow( TRUE );
- O; W E1 q' ~' H, n
if( m_pTexture )
$ J9 }! d1 ^' G0 I, K" i& u; P
{
6 l% d) p& \# u! P
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! Z0 ~9 m, k {+ n2 P/ ]' @
if( wndCtrl && wndCtrl->rect )
4 r7 T+ v: u: k5 k. j1 i# N3 B
{
* J$ f1 `* O9 @! T- w' k9 S$ h
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
% V7 r- z3 x' Z9 u8 v
}
( ]; H, v; d% f; U8 n) ?
}
8 g4 o N K9 M% G$ j
}
- g) W9 z2 o8 ~; X! m# `
8 v. W& |# B- I0 ?) L+ m% c! H
BOOL CWndAutoFood:
rocess()
0 |' b4 [4 z$ \5 }
{
) t: }; S! T5 {6 p: N4 E+ F$ x! Z
if( bStart )
# ?2 z2 Q6 A* ?
{
8 }, N1 _ I' e, `. Y* ~, D
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
; W0 j0 T& m0 }# q1 |
{
' X* o6 S4 s" T) d
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
J$ a8 F `) `; t% g& r0 s
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
$ `; F: X: I1 b! [; _/ `+ {+ r$ U
}else{
) D4 E+ b( i) w/ e: |, _* T# I9 Q
bStart = FALSE;
. \' Y9 X; V/ E0 M
m_pItemElem = NULL;
" ?; {1 G/ |( @" n P4 O L1 R. \
}
5 s+ S" Y5 t+ z/ h
}
: C# W* |% [" T- g
return TRUE;
+ s, M9 Y F* j6 e% c
}
; _$ a4 L- b7 ?6 p) E+ f4 \
3 t1 `% q$ G( W; T
登录视频废话:
1 ?1 `4 I4 I$ t
尾翼:
# m% S5 R" c0 C! w
1 H& w1 O# v+ u: v
代码:
& x% ]1 v" `% M, }
; u q- C9 ^0 c# T
void CWorld::SetLight( BOOL bLight )
3 D# D7 d- N V0 V3 a
durch
5 ?, ~& }; t8 S* `" s' G, s: I* ]
Code:
! g2 c# [" B& w0 L! ~
void CWorld::SetLight( BOOL bLight )
: y2 G- v# K0 e, p. p7 O7 \' b
{
[6 V, ?! p2 n4 E, s
//ACE("SetLight %d \n", bLight);
% z* n+ u8 D* o9 }/ f
, x1 S/ m% b' l1 T5 ]8 K; `% t
#ifndef __WORLDSERVER
2 d, \% ^/ X. s1 A J! k
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
4 Z; Z4 e7 a9 m% X) b& ?; p
CLight* pLight = NULL;
2 C! |3 K3 k; P0 X
' n3 `4 G7 j7 _5 C
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
- _ C2 F- G5 e5 ]
# S" ?1 M7 s4 _4 g
pLight = GetLight( "direction" );
3 u; T4 N6 q6 H1 Q
/ L& T& H( D( h( Q0 h9 p$ Z7 P7 J
#if __VER >= 15 // __BS_CHANGING_ENVIR
4 v* H; p* p: E! j4 r& J
if( g_pPlayer ){
0 t# G8 F: ^$ R0 t6 k8 p) N* ?3 d- B
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
7 P# n D# i7 r
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
+ W! j, l' i* I+ f
{
% g/ c" h& o6 M, A t* Z& \4 [' R9 D
if( pLight )
$ C' A3 \' x! ]0 S0 l S! W y
{
2 W3 X) h* g! W( H
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
; d* a2 A4 I M* E, c, X
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
2 i% Q4 Z6 {1 g6 Z( ~/ i& H
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
7 U+ S% E, L: |# J6 Y- o
* |# y! N- l* q( _- J& J% x: r
pLight->Specular.r = 2.0f;
! @5 a9 `1 e2 w
pLight->Specular.g = 2.0f;
, ]- y1 H' u' y2 x( Z2 L2 R
pLight->Specular.b = 2.0f;
3 `+ S* a7 d1 c
' D5 j7 _2 a& `( ]' ]
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
. z: V4 z4 }5 r: h( ?
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
' e) @! I+ I9 ?
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
" S: v# Q1 Z4 F: \" F7 M
. d9 E" {4 h& f# s8 j& M
HookUpdateLight( pLight );
& W0 w& o2 d$ \7 u" v
. S1 Q) T m) x; [2 m+ M
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ |0 ]3 p, ^ W
& x W1 }( b, S: y# K
pLight->Diffuse.r *= 1.2f;
9 K6 B. K4 k% O, |
pLight->Diffuse.g *= 1.2f;
6 x9 o: s. ~6 t7 j0 W
pLight->Diffuse.b *= 1.2f;
4 {% j5 q1 B; V6 p. h( q' ]
0 d+ b$ S3 `, Y; f$ _" m7 M
pLight->Ambient.r *= 0.8f;
! V' k8 ^% }6 x; {2 C" _
pLight->Ambient.g *= 0.8f;
0 f7 R$ Q7 k8 w5 w" ~& E
pLight->Ambient.b *= 0.8f;
$ D0 u" l- \% N2 W% R* \
3 Y/ E2 G- \. V4 u
memcpy( &m_light, pLight, sizeof( m_light ) );
4 n0 ~7 f' A5 d5 l3 Q
, C: U @# r" f5 |7 l' F% l5 A5 e6 x( G
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ X7 J8 x5 |! p* F: d: ?) z0 Y
D3DXVec3Normalize(&(vecSun),&(vecSun));
/ P m" D1 l$ g5 b b; I% K
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 ~1 K# ?8 ]6 k1 J
pLight->Appear( m_pd3dDevice, TRUE );
" }! \6 \& L. J8 A4 z
9 J9 ~& o/ A1 Y$ t; c* ]/ f+ m* `
DWORD dwR, dwG, dwB;
+ x0 p9 R% b+ J: i3 j5 U
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ b& I( I* f7 G6 f
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 Z; V* P9 H( |
dwB = (DWORD)( pLight->Ambient.b * 255 );
5 F' C% \; T0 }7 O `' h3 t" _
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- [; N) p% z8 k) p3 ] U
}
. u" r8 F/ u9 T4 _" j) g3 v$ o
}
, m5 f2 r6 Y( {0 F
}
! w) B! ]+ \9 d; M8 e+ t
else
! F% T* [0 Y: _; `
#endif
# M7 |" M( J% s
6 B2 O$ \0 _# i) U. y
if( m_bIsIndoor )
6 \% R J+ Y$ N4 _$ A7 `6 a
{
2 S. y3 Y" Y! R/ A2 t. w
if( pLight )
" u, ?, b& b3 S1 v; k+ ^5 P$ F
{
' m; W5 h' w- p
// à??μ oˉè*
) I. F0 g! a! ?1 r; h% O9 g$ b0 i& x
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
6 ^" @% R ]& O, w4 [
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
' E% s* Q* T7 Z
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
4 f* m3 v9 s" a b9 Y2 }2 u$ f
, h# D6 [; P$ h3 u" C
// oˉè* ??à?
/ Z K( r. d* _9 D, Z
pLight->Specular.r = 1.0f;
a$ k3 Z: b$ q5 B
pLight->Specular.g = 1.0f;
$ T' `5 W- r; h* ]
pLight->Specular.b = 1.0f;
; `1 X+ m% g4 \& u" e& n5 \
// àü?? oˉè*
V) V; }: m- T5 N, g7 G: q
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
R9 I1 b; G& F7 J I: ^
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
' o, |3 s, z+ h" H
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
6 n3 x6 i- z3 \8 I$ B& V
) V7 \$ s5 o& _+ v
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ y, |/ F, }/ f& _8 ]5 x
{
9 i0 e C0 z# f+ E
pLight->Diffuse.r *= 0.6f;
O& \. I5 |: V6 Q/ c2 W
pLight->Diffuse.g *= 0.6f;
: Z3 h. k2 ~% [- k; Q( B; A6 f
pLight->Diffuse.b *= 0.6f;
' k' ^. h) I9 ] S7 z
pLight->Ambient.r *= 0.7f;
$ J5 _1 g% a. C, \2 d
pLight->Ambient.g *= 0.7f;
$ T( P7 J! S3 L; o" w
pLight->Ambient.b *= 0.7f;
7 e1 q6 |# v: \% R
}
7 Z2 ?. U- z9 U; |2 K
/ S/ b$ u/ l5 `4 b1 ^
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ I ~; M2 G0 W) s. j, P) j
if( g_pPlayer )
, T; q% R+ G' q+ O" Y: p9 \
HookUpdateLight( pLight );
" P6 i0 ^; H* i- A
#endif
0 n. B7 u1 N$ c1 P3 T: k# ?
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 F% P' V) B; S S* l
* X- V1 q C4 Z% I' H1 \& g: D, ?
pLight->Diffuse.r += 0.1f;
. l* |& |* z% c* x
pLight->Diffuse.g += 0.1f;
5 `7 Q6 i7 n6 q+ ~8 A& e
pLight->Diffuse.b += 0.1f;
! _/ s0 ?2 ?& C5 c) D3 n( p# y- S% y
// oˉè* ??à?
2 _) A& j% I% L; N4 N
pLight->Specular.r = 2.0f;
; o0 Z$ ^! v% v. _: C. ^
pLight->Specular.g = 2.0f;
$ b) z7 u% J6 i
pLight->Specular.b = 2.0f;
. z* b" r' W3 K2 z, T M
// á?oˉ
' B" t) t+ S {5 }; }
pLight->Ambient.r *= 0.9f;
0 u" N5 `# x8 U+ ]) j9 @0 Z) E
pLight->Ambient.g *= 0.9f;
7 s3 O, u0 h5 p) h# y
pLight->Ambient.b *= 0.9f;
x) |+ J( ~- `4 W
6 M. U, F7 s, j& l
memcpy( &m_light, pLight, sizeof( m_light ) );
8 ?% m4 C, \. n t9 P
+ O7 Y& [8 D, T* N
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
8 w8 b% m1 L4 e, n/ x# @2 `# [
pLight->Appear( m_pd3dDevice, TRUE );
% P( O5 P1 D- n
# u' F g, J1 F2 u
DWORD dwR, dwG, dwB;
+ o" c# p9 M6 g9 Z
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 f% J6 s. B; E" u. e1 X+ J, C
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ P6 i* ]$ V" ?: q9 m/ [8 b( @' F
dwB = (DWORD)( pLight->Ambient.b * 255 );
( _, V( v* \: G/ }! Y) ]6 O
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- d4 E8 _0 ?3 W" s1 Y+ U8 T% w
}
8 p* a8 I! Z& p; X
}
% o, h, e7 p2 p `5 n: L
else
* N6 O9 Q: y0 A. r0 ~2 g. N1 ~
{
4 p0 R0 l$ K" N/ F" s
if( pLight )
$ x2 Y( v4 X* m% ]( I+ e
{
$ R2 y$ t; b8 ^) c& V3 a* S
' e6 S8 G" }% r' o& _
int nHour = 8, nMin = 0;
( ~7 F+ s9 v! ]" `
#ifdef __CLIENT
' R; d5 a+ j! c6 i- Y# b
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
! \. A) v1 ^' i. e: X
nHour = g_GameTimer.m_nHour;
1 y! }& I- f& n! s; u7 b
nMin = g_GameTimer.m_nMin ;
5 B6 ?$ M) g: z5 I5 h
#else
9 {; ~: Y5 r% z* Z) |
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
$ _: ?* k c! p$ f
if( m_nLightType == 1 )
. x. ~5 z7 o4 J. i. T
nHour = m_nLightHour;
0 ~6 O/ Z. h g7 E- X/ B
#endif
4 Q9 }) I7 z4 g5 \* p- g
nHour--;
/ o( b0 [0 {1 h8 N. L7 b7 O; _
if( nHour < 0 ) nHour = 0;
( d2 N5 q6 z Z7 \
if( nHour > 23 ) nHour = 23;
) T7 p4 Z" N& w5 ^ S# }
, \* h2 G/ e$ k
//if( m_bFixedHour )
, }1 ~$ L' e( g7 b1 G# ]+ F
// nHour = m_nFixedHour, nMin = 0;
8 a# F" r& l6 B6 X' Z; |
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
- D- l; s4 R# X) F0 d& D2 S
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
- [7 R0 W- {: ~8 f- s. X5 x
; ^ U" f* ^5 K3 _3 k$ ?* S- p
//m_lightColor = lightColorPrv;
4 n$ {# B/ I- i$ u8 y
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
D- ~1 {9 d% o8 r
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
- e+ l' E. |* D# j' r
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
. e) L- J/ ^0 d! |: p; G
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
9 G3 ~" \ B' p9 f2 a
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
1 r1 Q1 x7 G* P) \' L
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
6 x }9 i3 |4 K7 j9 P/ u
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
, j, u C0 E1 _
& M/ g& p* b, ?- n9 \
// à??μ oˉè*
7 X# e2 q% |% D) d
pLight->Diffuse.r = lightColorPrv.r1;
/ X/ e9 j- [, {6 ?
pLight->Diffuse.g = lightColorPrv.g1;
- j e, E& F2 ` W8 e# \' z1 N$ z
pLight->Diffuse.b = lightColorPrv.b1;
" C, k* e; a, u7 F
// oˉè* ??à?
3 t* ^5 R9 {# J
pLight->Specular.r = 1.0f;
; h. Q6 `/ c+ _
pLight->Specular.g = 1.0f;
+ M8 S6 T0 N) \2 \6 Y. y
pLight->Specular.b = 1.0f;
* Z( w- C: ~; |/ u( @+ p' [( B6 h
// àü?? oˉè*
5 h* K+ e% [8 G1 r5 {
pLight->Ambient.r = lightColorPrv.r2;
0 S" y# i F! \7 H x% \, @
pLight->Ambient.g = lightColorPrv.g2;
0 K* R7 A* m1 |. m" G7 g* K" ?
pLight->Ambient.b = lightColorPrv.b2;
$ i" k' \, p% T( \8 U
& d3 e- h2 i% F: c
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# T0 ]; y& d+ k7 \/ j
{
. {7 S5 M% [( ~* V5 R! ]
pLight->Diffuse.r *= 0.6f;
& p) U% P! d5 c3 {
pLight->Diffuse.g *= 0.6f;
, t/ U- Z2 V# v }: X
pLight->Diffuse.b *= 0.6f;
# c, `, X3 U- Z7 _3 Z% s8 z
pLight->Ambient.r *= 0.7f;
$ j. g! {/ O- K* H
pLight->Ambient.g *= 0.7f;
3 T. {) u" U! _/ d2 L
pLight->Ambient.b *= 0.7f;
+ d& B4 B6 [0 ~6 G0 |! @% H
}
4 d6 L' `: k2 z
) Z4 C+ }& y5 x) q2 R5 _
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ B! ?4 i* l1 D& J
if( g_pPlayer )
4 \6 V# t! f4 d/ Z
HookUpdateLight( pLight );
5 Y. W2 n0 _) n$ w$ h1 ^
#endif
0 D0 n, a- o. Q' i8 C% D
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 T* S7 m4 j" B( ]- _: H9 {. A
& P, o+ O. W; \/ F
#ifdef __YENV
- w5 @6 o% H) j3 y2 d2 J( Z4 W
pLight->Diffuse.r *= 1.1f;
K" T- u( M Y2 y' v
pLight->Diffuse.g *= 1.1f;
* A+ P6 T+ O! l- l: K9 d% o
pLight->Diffuse.b *= 1.1f;
* H6 w3 G# r& m' e: c8 |
// oˉè* ??à?
# z$ Q( N: u7 {+ u
pLight->Specular.r = 2.0f;
$ w U" a2 O% X: \$ t" h1 @4 X
pLight->Specular.g = 2.0f;
: C( {: @) e Q7 O& x7 k9 l7 O- W7 M Z
pLight->Specular.b = 2.0f;
3 w" ^. j Z6 p
// á?oˉ
2 R8 t- ?# B) w2 z9 y
pLight->Ambient.r *= 1.0f;
0 |+ Y% K! s1 c- C
pLight->Ambient.g *= 1.0f;
. \6 U4 }. K( P" W6 Q4 s
pLight->Ambient.b *= 1.0f;
" G9 c, d! f2 J! s: j& H% {
#else //__YENV
# b$ f9 s+ [7 Z0 m# [& R
pLight->Diffuse.r *= 1.1f;
; u9 f! W- [' Y
pLight->Diffuse.g *= 1.1f;
: J3 w* ~. h; V# a
pLight->Diffuse.b *= 1.1f;
/ y- K& D7 Q1 q2 j' t; B
// oˉè* ??à?
5 v; R7 @8 `) s" A
pLight->Specular.r = 2.0f;
$ P( U3 ^/ K5 I* B: ^& P0 L' d
pLight->Specular.g = 2.0f;
; K9 I+ ?( b/ M' Z \, V) A: S! i
pLight->Specular.b = 2.0f;
. k2 F. t# z7 z5 x
// á?oˉ
" U5 g/ X% \! Y+ z
pLight->Ambient.r *= 0.9f;
* m! l, L2 l3 ?" a
pLight->Ambient.g *= 0.9f;
9 r$ ^$ m0 d$ l, v( I B( p8 y i
pLight->Ambient.b *= 0.9f;
" k' I/ |6 D. z0 |) v
#endif //__YENV
4 L. I: U( ^. N
9 K; ~/ o( u1 I) ~0 y
memcpy( &m_light, pLight, sizeof( m_light ) );
% C& k0 z2 G5 |& q# {; ?: _9 g+ g9 q
7 o( p0 o! [# d1 a5 G- U
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
+ R$ D7 \0 |' D/ `
D3DXMATRIX matTemp;
8 w) |% L+ `* i4 k; p
static const float CONS_VAL = 3.1415926f / 180.f;
# y1 r0 k( ` {" K0 K A
6 M" [6 y" U$ V3 w9 a
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
) d. T+ d) [+ A$ E4 W$ ]
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
& ~8 Q1 `" X* W% h: Z- H
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
y# w% g9 W# _3 V. p* k. F+ w: e) z
pLight->Appear( m_pd3dDevice, TRUE );
5 Y* s- K7 A+ D, e
- v5 X+ C& B, \) o6 P8 z0 `
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
! b$ B4 y$ F3 U4 @: k* j& Z
// D3DXVec3Normalize(&(vecSun),&(vecSun));
6 o% p/ `5 x2 V0 X2 I2 n" s/ X
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, b1 p- z# S4 T& I/ V7 ?# ?" x7 k3 f
; o2 g' j- F' b4 ~
DWORD dwR, dwG, dwB;
r& ?: v" ?: J( g% z* z5 V
dwR = (DWORD)( pLight->Ambient.r * 255 );
, Y ^( s' l& L# [
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 [- t9 _) F% E x/ _# G s
dwB = (DWORD)( pLight->Ambient.b * 255 );
, d- {* E; p: A' Z: n3 e
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' W9 V+ v! S7 U3 J. r3 r
}
% `$ N+ N* |# ?: @* q, X& W7 h- l/ F
}
# @% S, D# r! }& ^* J" O
4 [$ Q M8 `& `4 e* i8 C6 | ]. ?
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
& ?2 ]( E; u1 c2 R5 o
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) );
$ T: x. K3 ]" {- B5 i
::SetLight( bLight );
$ e6 v% l& A( V3 K1 M6 k$ x3 \
! J! a) P8 `0 E, x* x2 X1 c1 T
// ±ao? ?D?í???ó á¤à?
* v/ a( Y1 x+ }
m_pd3dDevice->SetMaterial( &m_baseMaterial );
" V" a) F+ i" n, K
. H, ] W- i( I: O
#endif // not WORLDSERVER
! l9 t2 |. ?* R4 M2 l; n
}
1 M2 s2 [5 Q7 G. z
并更换
) j5 y+ B! z( Z) H: x
Code:
! ]# T5 O4 }% \ o
__FLYFF_INITPAGE_EXT
+ U% Q, d- g" J
定义
4 i+ X; C5 K6 |4 q$ i6 Q2 x$ e
+ z6 Z1 K* a+ u& J" S. p
, J" ]2 f# v9 v/ m" }" |8 e
. H" F6 D/ {' B( a O: D
& v1 y9 ~& Q$ @0 w8 e
现在终于删除我的狗屁加速...
) r/ L p. p6 H2 x! s9 {
0 W- d& h! C. I! k# ^6 U% r
7 |$ b9 `' j: i% Q8 ?
% E( c( X3 r ~# I7 V C8 W
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2