飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
# L- r m6 `+ ]3 g9 {8 k
尾翼:
1 l0 o/ n H$ T2 Y3 B0 G
/ k8 r* v0 F7 k
代码:
# m, l/ @* X* v. \5 a0 z
CWndAutoFood::CWndAutoFood()
- u! R/ Y9 V& S5 b& }
{
& ]1 Z! O. q( X. |0 _% U
m_pItemElem = NULL;
. O" P) n+ N9 Y3 d: V
m_pTexture = NULL;
4 t7 R) |& Q/ x B* Q& M6 t6 a
bStart = FALSE;
' S, W2 |, n( a+ }( p
}
9 E! m: J2 M, O2 Y3 o# _
# ?, f6 |1 Y* ~# @( S$ x+ P
CWndAutoFood::~CWndAutoFood()
$ @, ?+ n& h, |0 S
{
6 v0 z: |: K" _/ [( k
AfxMessageBox( "AutoFood ist gestorben
" );
W; p. f$ o4 f0 _" r+ e! ?# ~
}
5 X/ G2 G; n( ^ n- r/ ?$ E
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
5 R, h F0 q' p8 h) l' w
{
7 w i" \6 U& u, Z! R
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
3 _) [ ?# M2 _, X J1 r
}
9 l8 E l. H3 V. X5 `
/ ], A+ Y- Z5 A2 n2 M! B. ^
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
5 a- E2 D+ q$ N" q4 t! V' |
{
7 s9 b$ v# A3 g( {' n8 A4 f) p
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ }1 v. w3 b Q
CRect rect = pWndCtrl->rect;
* b9 |* `1 A7 m& ]/ V6 A: z
if( rect && rect.PtInRect( point ) )
$ z0 s! E' r# Z, z4 B- a2 Z1 u. m
{
5 P3 w# y4 l& E- }6 N
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
& q& c- I3 A1 f# e
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
4 R6 u2 d7 e" ^9 J# \
{
0 x7 ?$ l5 p* a3 ^. t! F9 h: T
if( m_pItemElem )
0 i, T3 I+ v& [9 N
{
; V4 ~; j1 J' v6 c
m_pItemElem = NULL;
6 }2 _$ r9 B* [ N; g2 ~
}
3 N; x' A* ~: F3 x9 a& X
m_pItemElem = pItemElem;
9 c* p6 o- m% S* C
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
8 @8 C* D3 [- M; w* m; a
}else{
& |2 a4 c4 I3 Q
SetForbid( TRUE );
. D7 l6 X% B: y5 }& w, n& P7 K
}
! c* Q; ~) z% h
}else{
' I) C H* _! C
SetForbid( TRUE );
4 L7 l0 v% S c, X5 n1 I
}
b5 L* K' e* E! X1 g. r8 j
return TRUE;
6 O% }3 Q z K
}
) k; R) T$ {8 }
; {( }6 [" d0 M4 A9 N
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
" ^ Q8 i1 k* i
{
' U$ n; v( O* n
switch( nID )
4 h/ x* M8 u# e1 c2 M+ H& k
{
) h0 F0 r5 X# t* R& w# h% h* P
case WIDC_BUTTON3:
5 C& h9 i. J: }/ K. F
{
9 k, E7 f4 H% q6 n* {
bStart = TRUE;
! L+ g! e% U+ O, e; v0 v
break;
' l4 [! l' t' x# L: Y0 C$ E/ ^# O3 v
}
7 t* t, e, s7 C
case WIDC_BUTTON4:
9 N5 K9 _- t6 P* _6 ~: S
{
6 s" g1 T e6 V# [# {" h1 G
bStart = FALSE;
; J' w7 K$ d8 g D6 |3 `6 A
break;
& m% o" w" j" w7 B# y, {
}
& n. o' e* u5 H: G
}
) W7 l0 e8 Y; `# @/ ?& P
return CWndNeuz::OnChildNotify( message, nID, pLResult );
5 J- J4 w8 ]% v' ]- e
}
- |1 H1 ~! W$ l9 J
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
/ Z7 e4 X: V+ K d
{
) D1 E' G' ~# e7 t) t! `6 }3 V
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
. j h1 Q) h3 T9 S6 o
if( bStart || !m_pItemElem )
; Q. |6 B: T: s9 i0 m: w5 E5 x+ {
{
2 ~% P! S) R- Y$ `5 J E) n! T9 \& V
pBtn->EnableWindow( FALSE );
/ e3 k. ?! o0 n. T- U; ^0 U
}else
7 _ u7 G9 H" h% {: v6 j) ]1 p1 @
pBtn->EnableWindow( TRUE );
$ _ |8 v1 t9 S8 G* a, K
if( m_pTexture )
; l5 z( G$ U3 t6 L
{
: R, f& m. g/ H9 o, C
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
% _- y7 o3 S7 o$ D/ ?
if( wndCtrl && wndCtrl->rect )
7 M' X0 z6 I2 w" G x& b( i, O- @
{
; O0 y0 w( ]# e" [: {
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
+ q& e/ n" c; \; g
}
. n( `2 v' W. e0 y {: h' F
}
5 s" \' M2 e: H( h0 P8 U
}
+ x) T% d$ X3 I
: S" r; c8 X+ M* R% a- Y w5 y
BOOL CWndAutoFood:
rocess()
# _- b4 r, w% C4 P2 N; c- r% c
{
+ v' l4 j* m1 h
if( bStart )
$ }2 C+ ` F) v2 V& r
{
3 P( z: k; C2 ?. r( y9 d
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
, Y4 D! B3 L" h: Y; Q" [
{
7 I- X8 x7 b8 S& s, r
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
5 p1 N( P7 ~8 x
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
$ e$ j: k# F+ C6 x k: X, z, L% E; u; T
}else{
4 S8 B& B7 `6 D) h
bStart = FALSE;
7 q' |. @0 _: N! c7 R% E' A
m_pItemElem = NULL;
; v* G, l+ B" W, S3 Y) d
}
9 w5 {# [7 J2 _% j# W
}
# W& @) Z& \7 I# `2 ^
return TRUE;
/ Z2 B, Q5 h" L v
}
( A! t# Q' v% h' X
/ M1 [# C' D( C) b& N
登录视频废话:
9 m5 X/ v& a+ a+ Y2 C2 X S
尾翼:
( z8 r. U! _5 W3 A
+ |: c5 z. m4 F3 j! x1 O
代码:
9 B7 ?( ]7 B- u8 P/ q2 ~; h
' j7 M9 \2 M% U' N2 y% |4 N2 i
void CWorld::SetLight( BOOL bLight )
' D* D4 s: S$ K' h7 G8 E1 M; l* K
durch
. A3 _( K- f& s3 ?
Code:
4 l1 H0 q" H3 W; W
void CWorld::SetLight( BOOL bLight )
, Q4 J! |/ g6 B, v
{
3 k6 Q5 h+ P- o2 ^7 e' s
//ACE("SetLight %d \n", bLight);
; m" ?6 n9 y; ~2 k$ p, l" T# |( z( L
% a7 S) @7 J" k2 y1 h0 Z
#ifndef __WORLDSERVER
7 Z5 ?# h( n; G; C% n) e
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
g3 \/ ?! q/ Y6 l
CLight* pLight = NULL;
0 l5 p+ t4 p1 }: M/ f7 b$ s
W4 Q/ \1 {) I' ]8 f2 U9 n( V
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
, H. j" Y% o/ r h
( K* `" E4 T0 S1 `2 N5 e
pLight = GetLight( "direction" );
# b/ G. ?: h3 W& ]8 g, y. ^
( J' R1 q) k% ^, j( _7 V
#if __VER >= 15 // __BS_CHANGING_ENVIR
- t" R0 m# b D/ z; N8 K0 `0 Q
if( g_pPlayer ){
" n9 B4 K4 Z1 G
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
- W/ d1 D) \. j9 y
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
% N" Q& }7 }) c1 A( H
{
; {+ Y8 N' n9 B& j8 m% P, w
if( pLight )
|( k/ i: t& |) Q
{
" r1 R* c1 X$ g. Q( g" G, _
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
+ m6 o3 ?5 g* Y2 [, K9 j$ I
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
) N) D" @, r' U1 l# I
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
! f) ~, \, U2 w5 t2 h3 u
: H; N( P% ~" E8 `# d& W, D0 i. \
pLight->Specular.r = 2.0f;
1 \. w2 \3 A6 i0 X% f
pLight->Specular.g = 2.0f;
( S, i; d- r% E( K; y" M8 s5 a7 m6 I0 W
pLight->Specular.b = 2.0f;
0 t P6 L% Y# [3 u/ i; Y3 q6 I$ b
) R* w+ L% i! Q5 ~$ ?2 M8 e+ r: S
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
4 G2 U3 H4 r% M# U% E. `9 | }! p
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
9 S& R) s9 D' I2 C& ?& n7 s
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
2 _' B- j4 m! v* ^" u# n) q
8 j2 ~$ G; R8 w3 O9 m
HookUpdateLight( pLight );
6 m; t; U+ w* Y2 i
$ k# e# q3 G0 ]0 Y! t( z
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
( m- d9 U9 j; \1 P/ F# u
) t8 t& v2 H4 p1 f/ ^# H
pLight->Diffuse.r *= 1.2f;
7 k/ h4 Z1 P4 U# q( O
pLight->Diffuse.g *= 1.2f;
7 t3 p2 e0 |# ^- T( i
pLight->Diffuse.b *= 1.2f;
( @5 y8 k0 e- k/ O# ^
3 m: m3 U- c2 \; y9 O l4 F$ `- s. r
pLight->Ambient.r *= 0.8f;
; P( f+ I1 N7 {+ V5 l" v7 j( T
pLight->Ambient.g *= 0.8f;
+ g# u' J( m* D# J0 K% h
pLight->Ambient.b *= 0.8f;
+ \! x* \) O; m) k8 z9 J+ ~" `
0 U- }/ o2 i) ~6 B' T
memcpy( &m_light, pLight, sizeof( m_light ) );
( I" a/ n* l" \, M6 a0 Y
) ^8 _; Z) f& @$ C# R2 \' X
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 X* @4 V; W4 H, t2 ~# Y9 [3 D; x
D3DXVec3Normalize(&(vecSun),&(vecSun));
3 @' m4 M/ R( O* [( ]+ e6 v
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
- ^7 R" l: b4 G* s x
pLight->Appear( m_pd3dDevice, TRUE );
8 J2 l/ M+ @, @
" z# e0 V9 y7 E; q) i* ^0 i0 k2 M
DWORD dwR, dwG, dwB;
' n, g: C3 Y! G4 W! ]7 H
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 d, R3 ^6 N0 U0 _1 \
dwG = (DWORD)( pLight->Ambient.g * 255 );
, A2 \8 C6 ?$ p+ s) e; z: P
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ u+ o% e: F# o4 @4 e
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- [: c# ~$ x% i1 j
}
& c0 L" {& q, p1 V
}
9 Z: D/ V: n$ _
}
$ z& @4 f$ `$ _# g- ?: B( ?
else
D8 H6 Q" v# i4 {' w1 E
#endif
" U' y* m) @* x2 |% t" F: R
$ E% G2 z6 e6 l: G1 B* M
if( m_bIsIndoor )
8 _( X, Z# {- L4 a
{
5 {7 ^) S- D. ?6 }
if( pLight )
3 R6 T! w* s1 o a9 I
{
/ N$ ` q- Z5 b
// à??μ oˉè*
; `) R% S" x2 a& ^9 C
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
: ^ ~* G. l5 C( D$ n0 b
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
: B0 y# `$ r3 D! z S$ [- y
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
: H- H: v* K- S( k* c
& z- M: Q8 _0 ?1 g$ k
// oˉè* ??à?
) J3 ?* M9 u; b% d
pLight->Specular.r = 1.0f;
4 ]1 R9 z& K5 y, F- [
pLight->Specular.g = 1.0f;
) L9 y# ?8 \5 Q9 h
pLight->Specular.b = 1.0f;
; C, x$ r) F% h, `2 V. k4 ^( W% v
// àü?? oˉè*
& x* B, o$ G( c9 k8 O
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
% I. {; f- x7 X$ u' I
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
% k! y, z. Y, N, E0 f6 G
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
) ?: X. V. E1 ^4 J D5 z8 J8 n8 b
7 J* ^1 Y/ k. d
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
8 f* W$ P: I6 h4 S- E
{
% a4 [; X" a5 r+ J5 R+ F
pLight->Diffuse.r *= 0.6f;
; r1 _1 x1 ^% \" x$ j% d8 D1 g$ i
pLight->Diffuse.g *= 0.6f;
9 B( m8 z+ j6 O5 [0 \: }0 T0 X
pLight->Diffuse.b *= 0.6f;
% s8 y, |7 t' \; [9 X
pLight->Ambient.r *= 0.7f;
0 u+ w* d6 r9 F$ W
pLight->Ambient.g *= 0.7f;
+ |1 v. x3 V9 \. S
pLight->Ambient.b *= 0.7f;
. Y$ b% o1 x, |! a1 Y( y
}
3 b8 p' K$ D; Y4 a# U8 a* M6 T
# A$ `3 _1 i9 J' a- s1 C- O! U+ ~
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ R" e# j9 S0 T/ r
if( g_pPlayer )
& e$ Q/ @" @: X8 u! u, H0 \/ w
HookUpdateLight( pLight );
$ H2 I- h- y2 M2 a! Z0 p. V
#endif
' ]5 A2 ~3 w! Y, j: d1 a5 X2 v3 m
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' t: H4 m) X' a3 A2 i* o1 U5 s
# w% W' l" d' Y) @) i; i7 P: `) l" ?
pLight->Diffuse.r += 0.1f;
m3 o; r0 N) F" o7 G' |
pLight->Diffuse.g += 0.1f;
+ u" p& c. C. a n$ J" ~( k* u+ |, c7 d) A
pLight->Diffuse.b += 0.1f;
' ?5 p8 t @% n% o
// oˉè* ??à?
7 }. b- I, k7 i' X! e N& Q) l
pLight->Specular.r = 2.0f;
' E2 i( ~5 h1 ~
pLight->Specular.g = 2.0f;
! ^0 V8 l) \. u# i4 c0 M
pLight->Specular.b = 2.0f;
6 }) _9 a4 {, d/ X1 W
// á?oˉ
3 f4 u3 O# r X7 q$ Y
pLight->Ambient.r *= 0.9f;
5 C/ ~& O* E5 [5 }1 W: H7 _ s
pLight->Ambient.g *= 0.9f;
3 Y( C& P7 o- p, B+ C: J# p
pLight->Ambient.b *= 0.9f;
$ n {6 L% C. P7 r- V. d
4 W( W6 }6 O2 }
memcpy( &m_light, pLight, sizeof( m_light ) );
7 h+ ]# g! L$ ~! y4 K
' W! Z2 s3 G: Y
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
4 |$ i0 W% V8 W) n6 D
pLight->Appear( m_pd3dDevice, TRUE );
, }# y9 A2 e; j) v+ } t
9 w& ?9 b5 ]# X4 C
DWORD dwR, dwG, dwB;
# D9 D5 ]& V# H8 Y. X. Z
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 |2 ?! H3 g- A( W) U
dwG = (DWORD)( pLight->Ambient.g * 255 );
) d- @/ X2 A: g8 z: P4 p% }6 |
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ r0 {* \" H& j7 U# d; T0 q2 e
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 L- p K J. J$ G( ?6 L
}
0 B0 p- S& ~1 i) ]
}
3 O9 h: i7 V4 d0 G) h, [6 ]
else
" q( E/ ]5 ~, Z" i
{
) H1 D" ^% i3 A, v- D
if( pLight )
' ^( N- q8 d% ~
{
6 y- I6 j/ G4 p/ x) D5 Z
5 g" _7 R6 }* S2 ]0 R
int nHour = 8, nMin = 0;
0 p) {6 Z4 _ d+ B) ?4 i8 x
#ifdef __CLIENT
" Q: |! S L$ N' |0 c: S1 m
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
' @, R" X8 i3 @* f0 o Q+ Q( A% i9 G
nHour = g_GameTimer.m_nHour;
+ _8 L# \) P% b! e( N
nMin = g_GameTimer.m_nMin ;
1 V! V a2 u2 I+ Y4 k z( X
#else
& D& P9 F1 y% W( ?7 e
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
3 y2 q K$ J' C7 ?) s* F0 M6 ]
if( m_nLightType == 1 )
/ j0 z' m' X: l) N1 g
nHour = m_nLightHour;
% f0 l% i: f. F5 g5 W' E* ~
#endif
% T7 S( m+ c' i' A: H7 y5 z2 T
nHour--;
# |* U9 |3 i1 v5 o+ Q3 W% P
if( nHour < 0 ) nHour = 0;
; s9 r9 M7 @: l6 @
if( nHour > 23 ) nHour = 23;
j# N( E7 ]- K* B
1 p7 K! ^! B7 E
//if( m_bFixedHour )
, p4 T" x2 f- d3 g
// nHour = m_nFixedHour, nMin = 0;
5 V$ p- ^7 y- t) o5 P
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
0 u# v7 V' V5 f8 H+ i1 {" b
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
2 B' T% c$ q% x& u! [7 _
" H8 F4 V9 t1 `$ `* _
//m_lightColor = lightColorPrv;
& D# ^& c) X, \) B; W4 o
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
) s1 K) m$ ^3 J. E
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
+ J" M( Q- }1 W* M* S+ D
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
; `# ]( ?& [+ E$ F8 ]4 j# G0 `
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
! s: z' q. p, [* k7 L; b
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
2 L7 t) r6 i# u
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
& V7 N% F+ {- e/ p6 u+ V9 K
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
. f: F) X2 M/ f+ Y7 S
( l9 L, ?; A5 U
// à??μ oˉè*
4 ~* d: c; g8 J( X c! ]
pLight->Diffuse.r = lightColorPrv.r1;
. e) k) D Z' h8 U# y7 N
pLight->Diffuse.g = lightColorPrv.g1;
8 |4 ~1 n9 Y: Q
pLight->Diffuse.b = lightColorPrv.b1;
5 e, B Q2 i! V' J
// oˉè* ??à?
0 U6 w& z( L: P
pLight->Specular.r = 1.0f;
' g" b9 R+ E7 Y S
pLight->Specular.g = 1.0f;
/ M6 {6 I1 h' E8 ?$ C4 Y
pLight->Specular.b = 1.0f;
" l& O; h$ e: a% B3 E$ L( S. I
// àü?? oˉè*
+ P# G. t; r% ~9 e7 u' w: t' S5 ?
pLight->Ambient.r = lightColorPrv.r2;
1 W- D$ o" T3 W h* n- b& Q7 p
pLight->Ambient.g = lightColorPrv.g2;
3 W( J. i% x, C: l$ d& O
pLight->Ambient.b = lightColorPrv.b2;
- e, B- c4 P. R! @+ Z: F4 [8 k
3 ~5 Y H) ~# ]( C$ }* q; @
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 L% f, S( f% i/ s
{
- M& \+ y4 B, w. e+ c' B, |
pLight->Diffuse.r *= 0.6f;
- e2 d: y. m% S' {2 m
pLight->Diffuse.g *= 0.6f;
* u ]6 F' W9 ?5 d4 p$ I
pLight->Diffuse.b *= 0.6f;
, f: ~: u4 `. y+ R
pLight->Ambient.r *= 0.7f;
# _6 `% m- e+ e; Z" B0 O2 v
pLight->Ambient.g *= 0.7f;
$ S* w* w- H4 r# m1 Y9 V
pLight->Ambient.b *= 0.7f;
7 y* ?' u6 p, Y9 ~& r B) [
}
0 `- z5 g5 P0 y$ u' c
3 l- I3 F1 Y& Y& o/ q! r
#if __VER >= 15 // __BS_CHANGING_ENVIR
' m, z0 f6 {! p2 S) ? Y4 H
if( g_pPlayer )
( ]: _+ l q' D4 X0 x0 [
HookUpdateLight( pLight );
' n2 a, D8 U, S6 }
#endif
$ {% F* Z8 U) z! l& g4 D3 J
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
! R" K' Y) [0 i$ y9 N
1 j) M: B0 p' A% Z" O( s5 ^3 X! Q- l
#ifdef __YENV
; Z' A' D, ^( F3 ~! [5 o) M9 [* D
pLight->Diffuse.r *= 1.1f;
: n4 [# Y; b* ~
pLight->Diffuse.g *= 1.1f;
* D$ L; i* X. Q7 {% T
pLight->Diffuse.b *= 1.1f;
; e" ]. W& m! \2 Y3 U# I
// oˉè* ??à?
' [- S1 G, |. d
pLight->Specular.r = 2.0f;
9 |5 ?$ C: v$ |/ Z) k8 Y( G' J
pLight->Specular.g = 2.0f;
2 j' N6 ]9 d) q/ ?
pLight->Specular.b = 2.0f;
5 D, l, ^- W. Q) Q6 P# S7 N' I2 ^ J, h1 r
// á?oˉ
; Z5 e! I! O% C
pLight->Ambient.r *= 1.0f;
4 C" b( Z* B0 r- l
pLight->Ambient.g *= 1.0f;
; Z7 C7 e! z) z0 Y {. o
pLight->Ambient.b *= 1.0f;
, F2 L! _, ^1 ^+ n0 T& T5 e
#else //__YENV
& z) l& g3 X! ]# o
pLight->Diffuse.r *= 1.1f;
. `0 `5 M7 C) Q* l. p
pLight->Diffuse.g *= 1.1f;
: M/ b5 Z' W# Q
pLight->Diffuse.b *= 1.1f;
5 B2 p% T1 `" c# s* ?7 p3 d
// oˉè* ??à?
4 q( i+ N |9 P, @) `: g* d
pLight->Specular.r = 2.0f;
4 z7 ]4 Z( |( S6 A
pLight->Specular.g = 2.0f;
3 L8 z( y4 h+ B/ F! V4 {
pLight->Specular.b = 2.0f;
' t/ k2 J+ @* l4 z
// á?oˉ
4 E8 [8 u9 R0 b. ^: b+ F
pLight->Ambient.r *= 0.9f;
- i, S( _' {% u1 r- N% {4 W0 W4 [# T/ @
pLight->Ambient.g *= 0.9f;
0 Y9 V# X3 _0 P e; s e
pLight->Ambient.b *= 0.9f;
8 N4 I( c( H7 D/ }
#endif //__YENV
" {/ U( j5 g; R( Y U
* U1 R) x( m& W7 F4 M' j
memcpy( &m_light, pLight, sizeof( m_light ) );
7 J Q4 E6 i3 r5 d
, S0 R+ \" S- P% U2 Q
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
7 L" `5 C+ g) p! V0 K, a0 k8 W
D3DXMATRIX matTemp;
, B) g6 s) N: I6 F8 _( R0 D
static const float CONS_VAL = 3.1415926f / 180.f;
. x0 g. h: x/ y* x& E: k
. V& C4 z7 I2 R- ]
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
- C9 n, D7 Y4 X! D& |! u8 r
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
& q6 g9 g6 v- [' P0 {' D
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
- ^4 p8 R7 K: k9 l, j( m/ q4 B) X
pLight->Appear( m_pd3dDevice, TRUE );
5 x* d! B' K9 F& s' ?9 K2 ^
" a3 V4 _1 G3 D5 R
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
$ u. B1 x& W- f( H
// D3DXVec3Normalize(&(vecSun),&(vecSun));
- B" e& p7 g3 z7 P8 z; ^
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 u( q0 ]$ x5 S* |& W# g
# q7 l: c: X5 W0 ~; Y/ c O
DWORD dwR, dwG, dwB;
' |5 u" h* t1 O0 F
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 z# e: ]( N: S& q: Z
dwG = (DWORD)( pLight->Ambient.g * 255 );
. {- G! i4 X, g C
dwB = (DWORD)( pLight->Ambient.b * 255 );
, w/ T. E. G! ^: ^) K: {& ]1 Z% d
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( z% ?' d: c& b0 m- G7 [/ Q3 j( U
}
% A& I6 }( [' O( H
}
# }8 |! v6 J* m
& q. q2 o2 l3 g7 _
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
% T' e5 T- Q0 b; I8 C1 `* w
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) );
' n7 Q" V& g$ @1 k. y: J8 M8 x
::SetLight( bLight );
3 o: d& T& D' k+ u x5 w- V
1 D9 P% r$ ^. D& h1 e2 F
// ±ao? ?D?í???ó á¤à?
' q# q. J# @6 b7 X, A
m_pd3dDevice->SetMaterial( &m_baseMaterial );
$ F& U L& ^$ F% M
7 _; V* U" n9 e+ l! m
#endif // not WORLDSERVER
0 G X5 m( C2 j1 x, X
}
% e3 V. O1 v6 R
并更换
' y- C/ t' z! e# K) V5 C9 y
Code:
' v- }7 l( Z8 z
__FLYFF_INITPAGE_EXT
* f0 w1 o+ x9 [/ c: a0 a- _& r
定义
6 T* A( v1 T6 v% D, W5 ~; [
! D* Q, M$ O5 J4 w& K; c
5 {& F" R8 K6 j8 |$ ]
" O$ j( D- v5 N+ Q3 d7 Z0 n
+ V/ F8 m1 M7 `4 T# {' F; T
现在终于删除我的狗屁加速...
) @' m" h# ~$ X" M- g
; A; [3 c' J' C+ H8 T& r, E) o7 Y
: i- }% T5 s9 Z% {" c
8 U7 C1 u6 S t
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2