飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
) X2 t U/ S1 L, ]
尾翼:
) M4 w1 ^1 F: q o' h5 s$ F: V, C
6 E; G7 l1 Z) N- I0 V. x! @+ ^
代码:
$ y( }1 `, D5 W- t9 ]* T
CWndAutoFood::CWndAutoFood()
+ y2 u# E* N9 W. Q# d
{
) ^ Y! N2 v5 f" q9 H& y
m_pItemElem = NULL;
2 [1 ^" |9 z- F( G; y
m_pTexture = NULL;
# X; I% w' z3 V3 B. K& b7 s+ C; [
bStart = FALSE;
' G ]2 e: |0 J: p( Q7 J; ?2 d* d
}
O, U$ e+ d- h, w1 y
1 u, B" b3 n( Q
CWndAutoFood::~CWndAutoFood()
% b' m; i' g% z1 }8 J. d
{
/ r3 |5 X7 ^0 o. E5 Y- b) ~& ?
AfxMessageBox( "AutoFood ist gestorben
" );
( Q/ F( \2 C& d0 t! V
}
# R. n7 v6 E5 f5 B
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
; C7 I- H: q7 _4 u, ^4 V
{
$ k' L/ S' x( m/ b: S
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
; [! _- e- k6 p6 Z# ]
}
+ v: `' s. e# K. e& Q
; [ ^2 u9 t2 X
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
( g: n5 ~% O1 g5 A( [
{
) V2 `$ J# k H* y5 ~
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
1 t) E+ q0 B1 M" J4 {
CRect rect = pWndCtrl->rect;
0 b e, k6 @, a! S
if( rect && rect.PtInRect( point ) )
+ Q$ T, r. h7 }5 f
{
+ @, E, i+ l8 M @+ r
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
: f9 D: M1 p3 _# P- |0 u
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
9 y$ X* z# J' U, d5 `& k; ]; H
{
& N6 J1 w0 X4 `# u& W2 M! |
if( m_pItemElem )
2 n4 O3 B2 L3 g3 C0 j. H
{
' O# V. ]. C: J
m_pItemElem = NULL;
8 ?9 J4 M$ q9 h$ d- ~
}
T; p* S6 f! b4 Y
m_pItemElem = pItemElem;
c+ F$ [/ |: D4 f! s
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
$ y/ f4 l) t- e1 p$ D7 j8 ?' |9 Y7 G
}else{
# _% i" I$ r$ _; [* r) H
SetForbid( TRUE );
, j9 P# C- E0 r* Z7 O* [$ E
}
# {0 r: F. D3 D' q, F) }# s' m8 b
}else{
# e$ [& G) n& v' h& y
SetForbid( TRUE );
. k* T, O9 h8 k9 b, ~4 F6 N. c
}
. i- I" o1 M+ a* a0 J: ]: }
return TRUE;
4 i% K' J+ L$ Z4 Y, V
}
0 t9 m% T4 `. m
. I' A( z/ L3 F, m& B- K
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
1 H3 w2 U4 u0 T) A5 P% Z, a. L& R
{
p2 \) {- }, v; C) Y, e( K
switch( nID )
3 u, @7 i* g6 \2 \; }
{
! Q6 S" i+ r3 u% h
case WIDC_BUTTON3:
* L" j+ u t9 |; ~3 d$ R' Q* b# M
{
9 z& V6 H1 [# W# C4 U( Y
bStart = TRUE;
5 M. Q% R9 v# ^+ C2 C0 E7 \4 G
break;
3 V6 y# w% h! q, @+ O
}
, I- Z! @/ y/ T+ m s# t" }
case WIDC_BUTTON4:
( \& o2 t) I! k6 R/ y, Z
{
7 @. L% W/ B' H5 p5 Y/ C+ F0 l) E: @' `
bStart = FALSE;
) \1 |$ j/ r/ }" C( v1 w8 j' h1 w
break;
3 v9 v# P. R; _/ k5 s) m. ~
}
3 N7 r6 h9 n* @' O
}
2 Z' _0 b+ Z: E. }4 _0 d; |
return CWndNeuz::OnChildNotify( message, nID, pLResult );
) S% R- n; w; f5 W
}
J2 B! ^) J1 m3 ?9 F
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
+ {( r8 A# F* @7 Z
{
" c: z; M0 r/ U
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
2 y; v/ B6 D3 r
if( bStart || !m_pItemElem )
, [9 I) D) }5 J) H# }
{
1 I- r: G. ?; l) t9 f0 l2 V& \
pBtn->EnableWindow( FALSE );
; W8 p( p' ~8 {+ r0 ? y8 k
}else
6 `% x6 O! g5 g% H- q/ N6 R
pBtn->EnableWindow( TRUE );
0 }$ [7 `3 c4 H6 A+ {4 i
if( m_pTexture )
6 q4 o* @9 U& l
{
1 R% x, |; a6 o8 r" k/ \' Z
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
6 | l8 T6 U* f
if( wndCtrl && wndCtrl->rect )
( s' y6 R4 J: Q: N* k
{
2 |" {2 j9 y# m' k' O; |& ]- {: u1 K
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
8 w0 z1 Q0 P* m& _- l
}
4 Q) _" y+ v* h- G5 m5 @/ D6 l
}
* `; ] {( d# j! f7 ^" ^( b" J
}
6 Y4 S/ t' R* r% e& e8 p# e8 x" f8 r
% z7 J$ V# m: Z. }$ e/ X" U
BOOL CWndAutoFood:
rocess()
4 G5 x5 h; k/ A8 b6 a1 C
{
$ v5 s7 @9 R/ G+ b7 S* f. a7 d
if( bStart )
7 t! }# j. J- V. ~1 o( b+ X
{
) H/ w- r, C0 v/ b; H
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
5 D9 r2 C* A" \
{
; z9 k$ D) [* K4 M: |; |
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
& O$ t+ S5 I/ q1 j' ~1 [+ Z
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
3 e( ]0 M" D C6 f" W
}else{
4 @' t6 u3 a2 [: ^0 p6 I7 Q; q
bStart = FALSE;
' S; @4 [- k {' p# V9 H
m_pItemElem = NULL;
7 ?. Q6 y8 n* ?( v* G* d' b
}
5 m3 P3 n- e3 T! k0 D/ R% b+ o
}
; D9 Z% J) X# |7 _9 s4 A- I) r% f' D3 S0 l
return TRUE;
5 g, W1 `/ O' Y* b5 b4 _% i
}
9 r, C1 M6 F- c% d8 F
2 @4 V% Y& P$ x1 N7 f8 V
登录视频废话:
4 y! M1 A5 s; j
尾翼:
9 d$ Q2 u3 K, ]6 T5 f4 V
9 D9 x: V( b5 h% I! U: j: Q: z
代码:
* i9 h& {4 S6 t4 h# Q/ {
! ? J4 `0 Z* t, Q
void CWorld::SetLight( BOOL bLight )
$ b% c3 o' F/ a. k+ r/ z+ h
durch
* l! F! P5 U% K) K
Code:
0 H/ ]' t- w$ Z
void CWorld::SetLight( BOOL bLight )
4 k# S% n$ u& O0 Q% ?
{
8 y) M" r$ J! t8 l% f. ]
//ACE("SetLight %d \n", bLight);
/ u) K& M& n3 Z$ y
* q" J; b; j5 @7 E& Z8 h3 l
#ifndef __WORLDSERVER
! t8 C, _/ W8 t8 L* |$ U# P
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
2 Z2 p0 b8 Q4 Q2 y% ^! o P
CLight* pLight = NULL;
2 \0 M# C m8 X6 x' s
2 z! `* j( O5 }2 n
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
3 m! h1 `0 i5 n; L
# ?6 l1 P9 B, {$ N3 T
pLight = GetLight( "direction" );
( Z9 z/ N. u3 ~0 I) b d) Z9 T1 _4 |
" P: b, I* U. v- r' L
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ N( y3 W# c4 }) }' t
if( g_pPlayer ){
! F3 L/ j. ?% k& `7 o# Y
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
3 D( B. e9 r8 w& E+ h8 ~$ i6 m
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
4 i# }4 h8 y; t; K3 v' S
{
2 d. k" x5 k& O9 ?( F, Y% o7 k$ G
if( pLight )
& F9 x ~- P( c$ u0 c: V' @
{
: a6 y8 A* r# }. z# `8 ^5 e
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
/ f' E; l+ T$ H
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
5 a; B/ @* U& G0 M: t' u
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
! Q2 l8 T+ H' F7 c3 f) O7 M# C+ ]
2 u1 @$ Q6 V3 ^, I8 f8 {
pLight->Specular.r = 2.0f;
6 n6 W; Y4 A, P L7 r7 Z
pLight->Specular.g = 2.0f;
# b7 m5 M: U% G
pLight->Specular.b = 2.0f;
. f- \) j; m) h; h" M- i' U1 D
# N' f# M$ O! Y% m. t w1 M
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
8 u- B! @$ I) q, g) y
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
, T$ X9 Y& C8 A$ ^7 ?3 z
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
3 Q- \8 F0 ?0 [, d: y) u/ K
6 [, k1 R+ J9 h# U" y/ A' V& y
HookUpdateLight( pLight );
: }6 H- F3 M- [$ z
( C; c* I6 W& n3 }8 S
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 X- J$ V" I ]0 B8 Q3 [# ~
) N4 c, D# m% q* D1 {- y3 l
pLight->Diffuse.r *= 1.2f;
( Y! ]8 ` H. `, n% `0 F( s
pLight->Diffuse.g *= 1.2f;
( X4 d7 s3 L0 |8 b) E( S+ H D
pLight->Diffuse.b *= 1.2f;
) V! W% \$ _ A0 Z) ^' ~
2 U! }0 G3 @4 ~7 u/ _+ W
pLight->Ambient.r *= 0.8f;
# f7 L: d" \+ K; q% @* e. v" I
pLight->Ambient.g *= 0.8f;
, P$ j! J2 X6 a( U* z4 r
pLight->Ambient.b *= 0.8f;
+ Y7 s+ @ Z* q( Q
$ f3 |6 z0 Z, Y3 J/ w
memcpy( &m_light, pLight, sizeof( m_light ) );
# E6 |% \7 F1 i0 \* X" e0 A; @
: Z- o- M+ C/ v7 N8 c& Q: j# \
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* h4 Y5 j- D7 B5 C
D3DXVec3Normalize(&(vecSun),&(vecSun));
" W9 f: E m$ M0 z; C
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
; e# J- A$ k) }: u: {. ^
pLight->Appear( m_pd3dDevice, TRUE );
T! }& l$ z3 h4 t; j
; z0 r9 g, [! a! v) X, S( z
DWORD dwR, dwG, dwB;
1 W; a' F! }. y# U
dwR = (DWORD)( pLight->Ambient.r * 255 );
: E$ F) _9 R0 B! G0 c
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 [# d+ c# Y" ~* V1 O! e# j( T
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ a" F' Z. }# R3 p% B
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( H( B" m1 ?: `; D' g1 Y
}
7 B+ J3 e4 y# \! | Y t. z
}
' x3 Q" K+ t% b. D- n
}
7 z9 @# I, c+ U# Z$ {, p
else
9 E; W+ l u3 o" `, x' T
#endif
6 U8 w7 ^: F ^ d9 G- q
, c+ Z5 w( a& \9 @3 i
if( m_bIsIndoor )
5 _" p7 w# l+ _
{
1 o5 e+ ~5 F0 X; ]6 i l
if( pLight )
' T3 _/ D0 k! y7 m2 y% o& a/ q
{
* x, e8 B3 a- L5 F `/ E+ i ]7 Q
// à??μ oˉè*
7 v! F0 }$ z; o3 p- M
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
+ x2 }$ J, k% G9 T, k- n& H
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
0 v) ]+ ^0 Q( r2 E7 s
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
3 Y2 \8 E3 T% Z" h# n8 Y/ D* d
1 S9 w" `9 ^9 c3 ]
// oˉè* ??à?
3 Q- F+ B7 B: F; x+ J3 C( p
pLight->Specular.r = 1.0f;
3 @8 E1 {# d) I4 B W
pLight->Specular.g = 1.0f;
3 }. o. @6 |) Y" ^
pLight->Specular.b = 1.0f;
' |4 @$ U% }0 ]/ S6 `
// àü?? oˉè*
- x: P6 k ^3 t& O
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
) ^0 ?' s, ]- P, a9 u# u9 Y
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
, P) ~! p0 m6 m( S
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
- ]8 w% s, i4 R; E9 O3 y" @3 z6 [
! l- u. _) w$ W7 `
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
; G3 v& T5 q- P# c+ y8 b0 X
{
3 Q" d4 Q1 q4 k+ p+ d
pLight->Diffuse.r *= 0.6f;
; l% |8 h. v+ z; l6 s) A! z; G1 d- N
pLight->Diffuse.g *= 0.6f;
, K% a) y5 O% |, W) Y5 x; }5 C( w
pLight->Diffuse.b *= 0.6f;
8 X" a! Q8 e, L8 q7 K4 K
pLight->Ambient.r *= 0.7f;
- {! k' m) }& j6 \" K5 [* }6 @9 d
pLight->Ambient.g *= 0.7f;
- r9 ~$ k9 ~. n! ^0 J) M
pLight->Ambient.b *= 0.7f;
+ i: A" r F- B2 K% X0 A
}
5 U) `5 M1 s" X, ?6 c
2 R8 ^9 q/ g/ W Q# A" T
#if __VER >= 15 // __BS_CHANGING_ENVIR
( n7 y" b4 v! L! o0 O, r4 X
if( g_pPlayer )
) p$ Y/ {$ p% {9 y0 j- G+ a
HookUpdateLight( pLight );
3 [& a( s6 l4 ^% O& A6 O$ H2 Y
#endif
0 P. O4 G) h# g! c! v. Z2 A1 `
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# O: X$ ]4 B4 p0 |
) X \' \, b* h; P; E
pLight->Diffuse.r += 0.1f;
+ K+ L4 M- o. P+ Z
pLight->Diffuse.g += 0.1f;
' D) e4 C; [1 F1 h3 e$ B% r$ h
pLight->Diffuse.b += 0.1f;
( S6 T5 Q4 A& g6 P0 H( ?. f( @
// oˉè* ??à?
2 V2 A3 H0 {, L2 @ U2 F
pLight->Specular.r = 2.0f;
* J, ]0 |, v8 g3 D( t0 O
pLight->Specular.g = 2.0f;
( ~, _/ D3 u+ c# {* Y5 _, ?8 A5 G
pLight->Specular.b = 2.0f;
' d- s1 n- B, h/ _$ r
// á?oˉ
" r. X T. I3 d5 g8 q4 a$ n
pLight->Ambient.r *= 0.9f;
) O. w( E' R% ?& u4 P6 o
pLight->Ambient.g *= 0.9f;
3 G/ C! G4 R K! f1 x+ H
pLight->Ambient.b *= 0.9f;
% h* s5 U; w2 q* v* o+ @8 u
$ U9 B6 n* L) P+ a6 |
memcpy( &m_light, pLight, sizeof( m_light ) );
4 q2 ^8 F" a C! D+ y- f
9 d- i8 Y: |7 q' c9 L: ^
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
5 g/ o2 |" I3 H
pLight->Appear( m_pd3dDevice, TRUE );
: J' o6 G1 O! w0 t% k/ x
; a$ A) x( p; B. ]- d: R% D
DWORD dwR, dwG, dwB;
5 _2 K4 Y8 O4 e6 [ K/ K: s$ o2 d
dwR = (DWORD)( pLight->Ambient.r * 255 );
' F2 U. @0 Y6 X i6 j
dwG = (DWORD)( pLight->Ambient.g * 255 );
( l9 x; o; F6 {
dwB = (DWORD)( pLight->Ambient.b * 255 );
i; ?0 ^8 F( G% B: y2 V
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
j& I0 Q# z5 W% }
}
* N2 e( ]/ Z) y6 N5 p, x
}
% U9 H! F7 H$ ?# b% w6 z% n
else
) e1 ^8 A3 I% r
{
, h# O0 B: d0 M" P
if( pLight )
3 f# K2 n+ d- A5 p
{
/ t+ E% h3 W+ g
- N# w' B8 j* _1 u' |& w8 F' C
int nHour = 8, nMin = 0;
: f, |" }7 _6 H5 f! ~1 h; Z0 o
#ifdef __CLIENT
1 \# g( z* k9 k: w5 m2 q6 A4 L
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
% _8 S0 s; t2 l: Z3 x( i' R
nHour = g_GameTimer.m_nHour;
2 x. H% Z( }% {) \6 b! }% _: Z* X
nMin = g_GameTimer.m_nMin ;
) t# t" o {9 G% f5 r
#else
1 Q% D" F+ h: t8 |, `9 e1 n8 {
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
/ e" O* @. w- F2 q9 j( ?' ~% r& z. z' v
if( m_nLightType == 1 )
0 n1 v j1 ]# h3 N V/ [5 a4 y- k. S
nHour = m_nLightHour;
/ i, d* w$ v8 G/ }5 ]9 u8 G
#endif
) n; }9 Z# _1 } J s
nHour--;
7 ?# B* D: U0 @
if( nHour < 0 ) nHour = 0;
3 l6 \! n! `1 `' v5 e
if( nHour > 23 ) nHour = 23;
7 x/ f$ v# C" J4 T: y
6 T5 D* V& P3 K. f: W, C: V% ^
//if( m_bFixedHour )
% Q2 V; g3 a* m$ m j' a) {, k
// nHour = m_nFixedHour, nMin = 0;
6 T; R0 i9 m/ i3 ]/ r
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
; C, L# D: T2 }1 M
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
1 H% D. o: K+ E$ b- E
7 I& K/ b' S4 O; F# e: y
//m_lightColor = lightColorPrv;
8 r$ Q& |6 `1 N
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
{' k! B; p1 r
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
1 S6 _, \3 _& g
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
* ?/ I( r5 D0 h* L
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* u3 }; c: G( B8 G, X8 Y
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
; m2 u1 C& [+ G
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
9 \9 J8 Z. z" }2 q( g3 [. z+ ~7 O7 y
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
% D& y. D/ X ~
$ I! Z: \6 s2 A# p K0 m
// à??μ oˉè*
1 e6 o4 c. j% b* @$ O
pLight->Diffuse.r = lightColorPrv.r1;
1 K& |5 Z7 Y( I q& _# D
pLight->Diffuse.g = lightColorPrv.g1;
$ i( ], F% r+ B+ U# i! c- W1 A
pLight->Diffuse.b = lightColorPrv.b1;
" D6 f' P; H$ i
// oˉè* ??à?
- P# c. r- D V: k8 P
pLight->Specular.r = 1.0f;
. q6 E" \+ u+ ?& ~
pLight->Specular.g = 1.0f;
# M. F" S0 B$ R g
pLight->Specular.b = 1.0f;
0 \& z& M% p% _) b1 M0 p# g0 `
// àü?? oˉè*
+ `* p& }3 x: n( c; y
pLight->Ambient.r = lightColorPrv.r2;
( n& m" r; W+ T E$ z! h
pLight->Ambient.g = lightColorPrv.g2;
* P( X; T* a+ z% d8 V/ j
pLight->Ambient.b = lightColorPrv.b2;
; Q/ J: O5 W; v8 b9 y4 c8 m$ K
9 S, ]- `# X& a
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
8 J1 w; W5 L: ]3 z3 t
{
. g; c4 J6 ^3 @; G( ^1 a3 f
pLight->Diffuse.r *= 0.6f;
( |) h9 B& {! K# l8 G
pLight->Diffuse.g *= 0.6f;
6 F1 e* I, g! F; s2 ~* {& C
pLight->Diffuse.b *= 0.6f;
q& |# B- R, v3 H. O
pLight->Ambient.r *= 0.7f;
0 W# ^: m$ H1 O
pLight->Ambient.g *= 0.7f;
v4 m& j. N# P1 \
pLight->Ambient.b *= 0.7f;
7 m3 c1 R( l8 r I, J* r
}
& L/ ~/ h" m( m* C3 T( u" s
) j8 D% ]! Z' u+ g# q
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ ?3 \8 x; @, u9 g# l# o
if( g_pPlayer )
; u5 U; [2 U4 \- f
HookUpdateLight( pLight );
2 x2 Z( ~! k; b: Q, ?% L
#endif
/ R+ o' L1 _# R4 f0 R L
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 E5 a4 \0 r! H: ]) ]5 [1 }
4 ?4 _; O( M6 n
#ifdef __YENV
( y1 U" g* ?* q2 D8 p5 h0 L
pLight->Diffuse.r *= 1.1f;
1 |$ V/ c U. Z9 M" ]; o' ^
pLight->Diffuse.g *= 1.1f;
5 s) N3 b3 U- W; ~
pLight->Diffuse.b *= 1.1f;
' j; R/ K" s0 c+ Y3 _
// oˉè* ??à?
6 T. {, x3 w/ c7 o) \1 a" l y
pLight->Specular.r = 2.0f;
/ L& `7 s) g3 D, b4 M
pLight->Specular.g = 2.0f;
: D5 S( |* }- }9 N
pLight->Specular.b = 2.0f;
% b4 h' c& g, u0 {. E
// á?oˉ
" N, Y/ y+ G4 X; Y5 [
pLight->Ambient.r *= 1.0f;
2 c, e, u) W% f! { ]% D* ?
pLight->Ambient.g *= 1.0f;
4 u+ O' b3 E* `/ `
pLight->Ambient.b *= 1.0f;
2 L2 S" c- V4 b" Q
#else //__YENV
2 i3 X# h5 ^; K' S
pLight->Diffuse.r *= 1.1f;
3 [9 ~! n- n. p% l9 Z
pLight->Diffuse.g *= 1.1f;
- z1 T/ |% @2 d; a. k
pLight->Diffuse.b *= 1.1f;
. F. _$ m& g4 m% |
// oˉè* ??à?
" V, m4 A* r6 o+ I/ w
pLight->Specular.r = 2.0f;
7 z7 @6 e5 `- q- [( r0 a
pLight->Specular.g = 2.0f;
1 d/ z) ]; L& Q1 I' @
pLight->Specular.b = 2.0f;
; |; C9 a8 ^# P' h! b
// á?oˉ
3 q: G1 ^; l0 |
pLight->Ambient.r *= 0.9f;
/ m p+ P! _' d
pLight->Ambient.g *= 0.9f;
, n3 x; a0 c2 J
pLight->Ambient.b *= 0.9f;
& m/ T5 u$ z- t/ l, L
#endif //__YENV
4 g1 v5 s- D7 D' y1 @4 `( f
) ~5 f' S1 b) ?7 Z4 T
memcpy( &m_light, pLight, sizeof( m_light ) );
/ |( N# P) F1 e1 { H0 G& o% V1 J
6 W C6 L- l/ A* H/ a
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
. I+ K) D- T! U h2 N% P: }
D3DXMATRIX matTemp;
; Y/ N1 G+ D6 ~ M# W, [7 T
static const float CONS_VAL = 3.1415926f / 180.f;
6 j/ Z& F1 r8 c
& ^! s8 p+ z: _! L. t* y
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
7 Z# I9 F. L9 N$ D b) j) u
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
( Z4 _, N; H; \6 P# E8 o
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
5 t! \: N o/ p
pLight->Appear( m_pd3dDevice, TRUE );
& \3 g5 O, o, x
' x5 _8 B' a) o; x' X4 |
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ A. R# p- d, Z9 C
// D3DXVec3Normalize(&(vecSun),&(vecSun));
7 ?( K0 K# G8 I* N' ^, A8 A
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
7 U& ~3 B& ?0 U7 t/ k
( p7 f3 H$ K8 L8 H0 D) l
DWORD dwR, dwG, dwB;
- ?% S) k! s* Z' ~! @) V7 x' f# O
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 G" C+ u0 @$ q" q
dwG = (DWORD)( pLight->Ambient.g * 255 );
4 e1 z; i/ b0 P! j8 f4 C2 K
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ g# J, N7 s. k- N' X* z; K
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% b, Y$ a4 i9 N
}
+ m6 f! P& W# ?. J c
}
9 D. n/ D) k+ O: a) P4 s. W) n, |
8 {! Y" A& T! E; D1 _
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
2 g7 U8 ]: E6 r0 I- u5 a0 t0 k
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) );
3 f. ~$ w6 S/ G* L, |/ G
::SetLight( bLight );
5 a% l3 p. C3 S6 O( Q5 l
! n B" h! c ?& O2 F
// ±ao? ?D?í???ó á¤à?
5 U6 A b0 T! V4 p
m_pd3dDevice->SetMaterial( &m_baseMaterial );
3 M! m9 K7 v. H& ]
0 [6 {) o, u2 P+ x% L4 E' z% S x
#endif // not WORLDSERVER
9 T ?% m6 W- C4 R* w
}
! W( a! f) u/ K, i
并更换
- C; A: O }/ e* i8 k1 v+ l- l/ Y
Code:
3 q' ^- M) f! T0 s" R
__FLYFF_INITPAGE_EXT
7 L: h/ I" b$ `0 b) n% P/ `
定义
+ l' X8 K* P8 ]
( m# d, I2 s4 h3 A Q( w
3 G3 O, k6 U4 n: A+ F3 n5 q" Q9 j% h
. K5 T7 ~: M1 _ C
! J6 n8 O3 t6 K5 l7 _ ?( t/ U
现在终于删除我的狗屁加速...
! A! D( P2 x$ k
& G, T o" e5 N* s( X p% P- u
- Q1 {3 R8 t4 P# m
( O }; x: l2 ^- N; M
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2