飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
- ]3 a' b8 U6 [ E( B3 I
尾翼:
4 I- k, k# R3 x* Q; L9 r
* E! ]! W N$ C# P9 P0 C5 {7 a
代码:
; ^ ^' I5 }4 t/ v/ C0 U# q. W
CWndAutoFood::CWndAutoFood()
& W5 C& ^/ ^9 f& y' g$ j
{
$ K s, u: s9 B
m_pItemElem = NULL;
9 B4 }8 W0 q3 ?3 F: ^! V
m_pTexture = NULL;
- l D0 `" v4 I6 ?
bStart = FALSE;
. K) g0 Z1 a0 H) n2 d* H7 t
}
+ A- Q- z* e5 i9 L. }, W5 J
) {+ P5 A$ N3 J
CWndAutoFood::~CWndAutoFood()
/ M' L$ i" {% M K# j
{
9 D6 l+ F9 B4 a6 R4 q5 C
AfxMessageBox( "AutoFood ist gestorben
" );
$ q6 |2 h8 c' ^ p! \
}
$ t" d5 q" f- w9 `
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
$ | Z. V" D8 X% `0 Z) Q" f% j
{
6 x3 {& H) C6 G4 \+ c
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
2 N5 N5 z# t5 u+ D# M( {
}
2 j/ `& |- ]( Q7 k1 p
$ C; [+ @3 P1 v, L" r! L+ o
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
$ t. D. j# p6 F ]3 Q; X+ M) d
{
; w. W/ S; r6 F/ _: \8 f Y) S
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. K) B5 U, f, U! w* Z
CRect rect = pWndCtrl->rect;
- n: X& U O+ k$ s) F
if( rect && rect.PtInRect( point ) )
" r6 J0 v s7 H* G8 G D2 W' R
{
( E8 W3 x) F* X, U# J
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
) t0 @7 K1 G2 d9 b0 W0 S0 h
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
* m+ a3 ~& ^, }! Q( C
{
. p! z' E- D* @' t
if( m_pItemElem )
8 S; }8 m; ^. d$ V- K; L
{
8 I L% t3 O1 P; G
m_pItemElem = NULL;
/ d6 P, d& c" Y4 x0 V
}
8 ]; i) ]5 G* q+ R$ d) V7 y) L
m_pItemElem = pItemElem;
6 X& |( }% ~7 ^( y' h0 e- I7 _
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
& Z8 a, Z. z3 c! x4 D8 `. }! J
}else{
( D$ d0 q+ n {/ I
SetForbid( TRUE );
' M% Q( J( {( o% C+ j% U2 n2 t
}
& X( Q: E$ ? Z E6 \. {0 v, u
}else{
& _) T* D/ ]' D- _
SetForbid( TRUE );
* y8 {4 D! o9 K
}
) b4 u& b5 L' h; ~$ |0 u( D1 {4 C
return TRUE;
4 r9 c/ O* k( a3 [( ^. Y1 i
}
. H3 g) E' P. m f) [
' K0 I* O% @ o2 k/ f$ A! I0 v
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
. y7 r; G- _8 [( d; \+ y
{
; V# y3 ?0 V. V2 k. T/ z2 l
switch( nID )
& c r1 d+ j' T5 I% {. l+ ]
{
4 d3 @8 {. b4 w
case WIDC_BUTTON3:
1 M% a- I2 g! b8 U7 v
{
+ b8 E$ O) v8 P# X ?" w
bStart = TRUE;
4 b4 _7 v" p) F: H' k; F* i2 L
break;
& ]: U5 n( V, H: e: L
}
5 @2 g5 e- O% }. l7 y
case WIDC_BUTTON4:
n+ O; y d( W
{
1 i- t$ a1 T. _* f$ T; f' ~
bStart = FALSE;
; H3 s. l" W$ l$ R8 n2 L7 b
break;
) b* ]0 h% p7 J
}
; B# _- C8 E H$ y: d( K% Z4 B, _
}
% Y/ h1 m& c d( K: Q, ]
return CWndNeuz::OnChildNotify( message, nID, pLResult );
7 V% p" a- ^' e
}
8 \; a9 c& ~3 ~' c/ S k% T
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
/ U" S1 q6 _( S |, j
{
0 Y( {) G) A% b0 Y: z
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
+ K6 K6 P2 a/ B# X$ ?% H
if( bStart || !m_pItemElem )
/ d# V5 ] N. F7 d
{
4 B1 ~ A, k+ j
pBtn->EnableWindow( FALSE );
; G# d: B f7 X: U; F+ ]9 T
}else
8 U8 t5 c1 V5 Y8 w! K2 V7 T0 c
pBtn->EnableWindow( TRUE );
. v8 L% a- Q/ i' }$ t3 P2 I
if( m_pTexture )
& b- N8 @5 n- t: Z1 h
{
# C4 g: Z( c/ g9 p1 t+ v; {
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
2 Z5 A- u* W1 [! D
if( wndCtrl && wndCtrl->rect )
6 K4 N* t9 J" T3 k; q! z
{
" v' z* _! s0 W8 H5 ?! U6 V
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
/ R; i3 ^/ P/ p
}
/ `& h7 z, |( Y: i1 _
}
6 [8 a4 f& B4 H9 R: N7 D, j+ q, p
}
- f& R' F& J6 p+ o* s9 h
/ K, T! V' y7 P1 o, L
BOOL CWndAutoFood:
rocess()
7 v" p h' G2 _# E2 {" z, N0 A
{
7 T5 R% p8 K: ?; z2 I* \ {
if( bStart )
' e7 T/ }: a# R" w' N
{
- [& W; S, m$ m0 \( J' q8 ~
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
6 f B% g4 R% D" O0 |) r
{
6 l* M0 n' n8 x
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
7 j7 V* Q, w7 L% _
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
. r) U; C" k4 \8 Y; ]
}else{
1 h# I- ?. M4 l% L2 x
bStart = FALSE;
# M+ T; ?, Z: x% ~
m_pItemElem = NULL;
- u |# N t3 P+ D
}
. |6 j- q$ L7 \# S, i
}
* ^$ |7 P& W# q% d2 X( |4 n; Y
return TRUE;
( M/ L' k& F9 A+ Z' H3 }" B
}
: z1 U* X1 U# F( _3 G' A$ ~
" g, C3 q2 U2 H3 i# O
登录视频废话:
. s/ s: J1 o8 q0 u; ^, O9 L2 H0 d
尾翼:
0 u, _1 q0 X3 W, v7 \
/ p* |; v* L5 z, {
代码:
$ S( x l% l t) P
4 B& D3 J" |" T
void CWorld::SetLight( BOOL bLight )
( ]) A3 F' j6 W, K
durch
; D$ q5 g$ C4 u/ l% {
Code:
6 g6 j- F3 l; L/ V, K7 u+ _: b8 \
void CWorld::SetLight( BOOL bLight )
z- R, n, i# s" ~& L) t( [4 P6 F
{
7 y f9 v8 P: K( b- O
//ACE("SetLight %d \n", bLight);
' L5 M ~4 P8 K
3 G$ N2 ~) v6 g
#ifndef __WORLDSERVER
" X2 u1 P* u8 C6 }4 h
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
, X1 u0 R) J/ P6 H
CLight* pLight = NULL;
: t$ K# k: W* M N5 ? v
+ s0 j5 B5 x7 b! n0 ^0 u
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
1 f. @/ p3 y# g# ?4 _! d+ o
/ T. z: d* Q, c1 t& H4 l0 Y* z* p
pLight = GetLight( "direction" );
1 Y4 W0 m, H. a2 v+ l' ?: t7 H
5 d3 c" r% t% y: }( i$ P3 v
#if __VER >= 15 // __BS_CHANGING_ENVIR
- d x& K8 ]6 n3 H7 H$ Y; o
if( g_pPlayer ){
7 E1 a: ^4 h6 j
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
" C0 T- z6 \. Y: q) u
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
( ?. q X; G3 ^8 c" h
{
; ?: w5 i2 \' ]7 m& a
if( pLight )
. W* `2 j# a2 \/ x; U* F
{
+ _0 e6 O5 F. j; \* k( ~
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
6 y7 L6 U! w/ z* u0 ^: P" J
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
5 X! _6 |: ^2 y; ^9 ^
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
2 |1 ~ A5 W5 m$ d, @1 _! W
% c9 `* l, K: Q! b1 x0 [$ X8 }
pLight->Specular.r = 2.0f;
/ Z6 a! ]; S. ^% S/ a- b$ T
pLight->Specular.g = 2.0f;
: S& z+ ?- ?* z
pLight->Specular.b = 2.0f;
' k! m( `9 h6 f8 E3 ]/ @
! Q$ p, z* F* e% s
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
: Q& D( ?+ \3 P3 a8 p. d5 s
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
% T4 d: c" L3 Z/ L
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ F) `7 @4 `( ~' r+ _) B
8 ]; `/ h/ E; A0 E7 a2 c
HookUpdateLight( pLight );
, h' a$ v0 Y6 ~' g6 _
! a( s4 T' `# Q3 q9 Z+ _; P9 d
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: U q3 e9 J5 l* u5 ~! K) A' X8 n
9 P; ^" Q2 `" j5 b
pLight->Diffuse.r *= 1.2f;
3 b* F' E9 w, O, x
pLight->Diffuse.g *= 1.2f;
8 A- j8 ?; ~4 s* p1 }1 t: O
pLight->Diffuse.b *= 1.2f;
3 m) G) l S M0 b3 M- ^: _
; k1 `* O; y- f' R4 D, E6 M
pLight->Ambient.r *= 0.8f;
2 O5 e5 [9 g9 H& I" k) @/ ~/ b4 `% H |2 \
pLight->Ambient.g *= 0.8f;
4 t2 x2 V3 o3 G2 I
pLight->Ambient.b *= 0.8f;
/ i" y% G4 E! L, K
1 B" h/ a8 [4 F# T
memcpy( &m_light, pLight, sizeof( m_light ) );
# ]1 ~" I4 z, Y
l0 t3 K* I& D" E& R$ G) ]' @% q
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 h+ L; H5 Z: v, s1 r4 ~) U
D3DXVec3Normalize(&(vecSun),&(vecSun));
/ M% N3 f1 ?1 s: P5 u
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. `4 `# j8 Q; b% Q, P
pLight->Appear( m_pd3dDevice, TRUE );
( C1 O9 a, A3 S6 E/ p
n' V- |$ d' |; E
DWORD dwR, dwG, dwB;
. z3 J1 Z5 i, Q
dwR = (DWORD)( pLight->Ambient.r * 255 );
. b/ ]$ X( J# e& c: D
dwG = (DWORD)( pLight->Ambient.g * 255 );
( L7 z. q4 `3 w S; @
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 j) b x4 _/ ~" T1 ~3 U- n. Q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* N% \ ]9 R$ N0 U* f
}
8 I$ f/ K, }7 N3 U) m4 Q6 ]' X% L- N
}
- @2 T1 x4 z% z+ f% ?* V7 o
}
% t9 T- M1 [) J; K
else
( P2 f- @1 s, H) m
#endif
- w) E$ o3 R+ l/ e+ X8 p# s1 q; u' `
6 H7 a+ z* U u5 Q+ [$ |
if( m_bIsIndoor )
6 \( b* h& d: Q5 {$ x" O, o' `7 j3 F' E
{
1 r- }+ _: O k! H; _! D
if( pLight )
$ ^4 B7 I# w7 B& P+ X8 |
{
' |3 r. i3 m7 H) T, t: i% A( d
// à??μ oˉè*
+ f2 x4 p0 K W( }3 Q# i: ]: s
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
+ ] d* d: g( }' ~$ _+ n
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
; u/ E& N8 H) W( a, v$ [+ x
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
9 i. _3 _' _5 l! a: w3 x
9 j) J# U& l" V5 Z5 f
// oˉè* ??à?
; T6 R4 @$ m0 s# V/ d! M1 h6 n
pLight->Specular.r = 1.0f;
/ |& Z* S! h% h+ R; P
pLight->Specular.g = 1.0f;
# m4 y* b5 ~+ d: [
pLight->Specular.b = 1.0f;
+ ]6 P5 m$ Z; ?& _2 a% y
// àü?? oˉè*
( |/ n A6 Y# F1 s6 y
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
5 s V1 i. t( _2 P) {
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
2 i7 ?# R% f; O6 f
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
4 ]) M' \% _/ W7 p6 B1 c
4 `1 P ` s8 W
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
. d0 k8 ~2 c q4 V8 M& P+ n+ {6 D$ A
{
- q* ^3 H, j( p$ T _# |0 ^
pLight->Diffuse.r *= 0.6f;
; O* H' i' l1 N7 Z
pLight->Diffuse.g *= 0.6f;
, S* F% D& \7 R( }8 E+ G ]
pLight->Diffuse.b *= 0.6f;
1 E3 e" d- N' ?
pLight->Ambient.r *= 0.7f;
7 S5 J: e# M' _7 y2 ?% U
pLight->Ambient.g *= 0.7f;
* X3 q( d0 ~1 N& ]5 h* F
pLight->Ambient.b *= 0.7f;
; S. ]) {& s2 A
}
+ K5 x8 G _5 Q# b, I# Z+ r2 T
6 ~' V* E: a) t' x0 o
#if __VER >= 15 // __BS_CHANGING_ENVIR
" K- x+ {# q% Q; r: z+ r
if( g_pPlayer )
) z* Y; I# ~. C* r! ^1 o2 A
HookUpdateLight( pLight );
! F/ i& a. E& j& l
#endif
9 g. s( q8 e# n& h! V; K- }- _$ ?
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 ]* e1 h5 i, n# G! q
# p& ^; Z4 j n6 s% S4 Q
pLight->Diffuse.r += 0.1f;
) p5 _! |: G9 h4 L/ y8 B1 L i( B
pLight->Diffuse.g += 0.1f;
8 [3 z% {0 d+ o# N( n5 O; Z0 C
pLight->Diffuse.b += 0.1f;
+ V# B$ R- S! v1 r* q: [9 W
// oˉè* ??à?
* U8 g2 q& q! I/ L% C
pLight->Specular.r = 2.0f;
y: m4 U b! x2 x
pLight->Specular.g = 2.0f;
0 j) F& k X( @2 k! R# f
pLight->Specular.b = 2.0f;
( V5 v! g* p3 M+ ?; e$ Z
// á?oˉ
( {: [: s+ D! _: r2 |6 W
pLight->Ambient.r *= 0.9f;
6 |- r& L+ z3 E( d
pLight->Ambient.g *= 0.9f;
0 f4 r S! d/ m) H: f4 ?" T) `1 k* A
pLight->Ambient.b *= 0.9f;
7 u# u- A. _1 f# l8 `
) y, h9 Z6 v p8 s& y0 c$ N
memcpy( &m_light, pLight, sizeof( m_light ) );
. {8 V3 v3 C5 |+ ?. U
7 T. y* v5 h* k. F! F/ I' Z
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
5 a3 ?% L$ ~8 M3 |, e) `# K
pLight->Appear( m_pd3dDevice, TRUE );
9 t6 i k6 @7 J2 ]# f b
% S" G, m4 I! d; [% D
DWORD dwR, dwG, dwB;
$ [9 c6 Y. \0 }" L
dwR = (DWORD)( pLight->Ambient.r * 255 );
- e8 K7 o* u6 d+ G; B0 M7 t3 p
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 D% u; Y: j' a; y! n0 n9 z6 T
dwB = (DWORD)( pLight->Ambient.b * 255 );
1 d, F# P* C. g' e
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
7 ~& c, O! ]* A) Y: J: J
}
& g/ w. J2 w& ?+ k1 V
}
9 }9 p1 E$ h: d$ }( O6 ^
else
/ } U2 n, L- P% ~1 ?& V
{
1 J) n0 j' h" F+ L: g. m# }
if( pLight )
" `6 y: {- t8 i) h3 ~
{
# a' T; d$ h Q( O- ?- ?
# e ]. j' _) D3 Y- c2 s
int nHour = 8, nMin = 0;
0 l6 P% t4 ]7 t4 F$ ^7 [
#ifdef __CLIENT
* N) E1 y7 f. l& }: k
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
5 Z" w$ A/ ]& S% J. S) ~% l& }8 Y6 j) H
nHour = g_GameTimer.m_nHour;
$ J1 K' U6 z0 E, P) x
nMin = g_GameTimer.m_nMin ;
$ y; \/ B j& ]9 x! _ s/ o! I* r5 Q
#else
3 b4 e' m- F ], P+ V
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
- k) _2 Z7 F6 N9 p U
if( m_nLightType == 1 )
' q# \# E" M9 C+ d
nHour = m_nLightHour;
1 L; g7 m& H, V8 W8 ?" W
#endif
. ~1 j2 `, C* P, c6 }
nHour--;
; w( r F5 |! j
if( nHour < 0 ) nHour = 0;
) v% S/ S& J( C Q
if( nHour > 23 ) nHour = 23;
5 ~9 p6 Y9 w- J4 L2 G% X' \4 V/ E
/ O) h" y- i7 \5 J* K5 h# S; ^
//if( m_bFixedHour )
\) l) @, r, j+ C+ U
// nHour = m_nFixedHour, nMin = 0;
7 Z! G9 O ~5 M( a& o! F8 y$ U6 P
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
4 r6 u2 E# H% Z8 p, w
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
) a9 ]8 p6 s1 d! U) x* V Q
. P8 ]% K* u$ E5 u
//m_lightColor = lightColorPrv;
8 _$ S2 j8 D4 r$ ^3 ^( l5 k
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
' I5 A& N1 R& a# ~
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
+ b# x' L. X" L" L
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
; ?. t2 c. ?& M) ]; d' O5 B( ]! A
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
1 [6 J# V/ g0 e
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
0 ?( h$ y* F$ y7 L$ e
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
0 G4 p, B& C. i7 b0 j+ O) u* ]
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
8 O# j1 h1 T5 N" o( x! X$ c: T
5 @# Q0 G$ T9 k9 h
// à??μ oˉè*
* g1 _% q. j+ O8 v* G# Q) U
pLight->Diffuse.r = lightColorPrv.r1;
- Z! Y2 y7 a3 }. Y, F
pLight->Diffuse.g = lightColorPrv.g1;
% F9 A/ D) |7 y$ b
pLight->Diffuse.b = lightColorPrv.b1;
0 H; M$ ?) ^" G6 e; A
// oˉè* ??à?
$ ^2 P/ Y4 W6 v- u( _# C* }1 G* P2 h
pLight->Specular.r = 1.0f;
+ ^' r1 ?; E% s3 k$ o6 D
pLight->Specular.g = 1.0f;
0 T5 f. M3 N1 |) A+ B' F# P
pLight->Specular.b = 1.0f;
1 _: ]" X# O/ x1 z0 }8 \
// àü?? oˉè*
, C- j7 i9 e5 Z* W; ~4 k
pLight->Ambient.r = lightColorPrv.r2;
) Q/ C8 [" v$ D' t, f( M
pLight->Ambient.g = lightColorPrv.g2;
: W4 I. _' b2 p: Z1 K
pLight->Ambient.b = lightColorPrv.b2;
* D' c' b! k6 t( |! X* o
7 ]: R8 `3 K- H2 @; L& D
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
& Q, Y: v" l5 X3 z( r- D
{
) _0 b+ c, E' Q% [2 }+ s+ U
pLight->Diffuse.r *= 0.6f;
) G* g* E6 e, ~$ a
pLight->Diffuse.g *= 0.6f;
: [! q. w6 c- _" }% t2 W: Q
pLight->Diffuse.b *= 0.6f;
# i9 I$ D4 s( x5 M5 ]- i
pLight->Ambient.r *= 0.7f;
# k& a" S) [- Q4 r. G
pLight->Ambient.g *= 0.7f;
4 q2 {& f* K, C
pLight->Ambient.b *= 0.7f;
9 Z' b# l* H6 G' z
}
2 x8 E& M3 T9 G$ F
4 r1 @- {" r7 }( G$ Z
#if __VER >= 15 // __BS_CHANGING_ENVIR
: B2 S- D7 O$ R& W+ \# r- i3 Q+ Z7 Y
if( g_pPlayer )
; o" _3 l6 _8 x7 B; p$ Q6 F/ ]
HookUpdateLight( pLight );
: U5 M9 l" @. d8 v$ Q) `3 f
#endif
2 O/ l& I- }$ U8 N- E, B! X
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 A1 T I! m. B X& d! D8 Q
# u7 F; Q+ _( z) X1 u& K# a& H8 R5 v
#ifdef __YENV
: E/ U: T0 U% n8 v4 m
pLight->Diffuse.r *= 1.1f;
7 u/ B$ y$ O8 v
pLight->Diffuse.g *= 1.1f;
* A6 t" b4 U4 P, E; c
pLight->Diffuse.b *= 1.1f;
5 D. r4 F% p, v/ H) T1 ?; c
// oˉè* ??à?
+ R. ?& g0 y0 X' t: k
pLight->Specular.r = 2.0f;
3 Q j/ U l( L! v+ W" ]
pLight->Specular.g = 2.0f;
9 t0 t! K: y1 g l4 a0 k8 I+ u6 Z% f j
pLight->Specular.b = 2.0f;
/ X' h G1 D4 d, q; q& e8 j# ]0 m
// á?oˉ
3 n6 Z& E, n( Z
pLight->Ambient.r *= 1.0f;
& V- }5 J( B. b( {( k2 _) N
pLight->Ambient.g *= 1.0f;
- P9 ~2 R& i' U; ?! Q
pLight->Ambient.b *= 1.0f;
7 B: y% Q3 m! K. R4 Z, B1 {* b
#else //__YENV
3 c$ l+ v* j- H9 L* M% d" P
pLight->Diffuse.r *= 1.1f;
! {% C* Q' f6 _4 d/ b
pLight->Diffuse.g *= 1.1f;
( a5 _: O# e4 v9 ?+ I
pLight->Diffuse.b *= 1.1f;
6 j% X3 V( ]5 z
// oˉè* ??à?
7 U; ?, L4 ?) j6 k# [ e
pLight->Specular.r = 2.0f;
/ u& n& q8 G) S- G5 g' @) A
pLight->Specular.g = 2.0f;
# G/ o% c( v$ H* ^& |2 [$ y
pLight->Specular.b = 2.0f;
2 B4 k+ E+ E6 B8 l
// á?oˉ
( u$ [9 j2 m8 V/ a. w$ n/ c
pLight->Ambient.r *= 0.9f;
6 O( n" K B1 \ p4 W; q" n# V6 v
pLight->Ambient.g *= 0.9f;
, u% Y0 |9 j4 k7 U- N/ S
pLight->Ambient.b *= 0.9f;
4 A- u6 q' m6 D: p# @. \ ^- v
#endif //__YENV
9 Q& _+ L8 r$ H1 M M) p: d% |
) \! A) S. o; t
memcpy( &m_light, pLight, sizeof( m_light ) );
% ~& u c2 h+ a# v
1 O& j6 Y! O/ ?7 J r4 k
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
( Q# R: \7 ^) i, Y) ^
D3DXMATRIX matTemp;
0 }% y9 \7 C9 _
static const float CONS_VAL = 3.1415926f / 180.f;
7 Y1 I2 k h* H( y
# G6 C" o$ q+ ~% B! C( T, M
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
& G& d; A! G3 K |5 ?
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
+ f0 I9 Y" q. ?! _' _/ v7 }
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
9 N7 j$ q% P* {2 ]* X. X& @! ]( m
pLight->Appear( m_pd3dDevice, TRUE );
2 A# A2 `0 s- d+ u* S2 Z2 A
( s1 T; M! ?$ k' A
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
0 P* D/ D! \& M( y' r
// D3DXVec3Normalize(&(vecSun),&(vecSun));
! h$ R Q- O( t7 V+ Q; P1 L0 L
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
0 g, k" o+ \4 K3 ?
) u0 b. ]+ s$ c2 d3 I# r
DWORD dwR, dwG, dwB;
: Z) ?" L' E1 \1 |! b/ X
dwR = (DWORD)( pLight->Ambient.r * 255 );
9 X$ C9 B' y5 W5 G- K
dwG = (DWORD)( pLight->Ambient.g * 255 );
) v$ ~4 H( P5 e& E9 N
dwB = (DWORD)( pLight->Ambient.b * 255 );
* x1 s: E. @/ u8 O0 x
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; F7 S2 v2 v( h0 h- M
}
( _) ]2 R6 I) ?. w' S8 V% l
}
; t: X( C4 w, }4 v, c# o
7 H# r: T0 I Q7 p$ Y Z/ r* P
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
+ \1 R+ c4 N* u+ ~4 g& [
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 U; Y1 {, W% O8 q% B. E
::SetLight( bLight );
5 O, |+ v. t8 g: x
( q4 `1 ]/ U0 ]% i( a( s6 `# ]6 d7 [
// ±ao? ?D?í???ó á¤à?
* O- G4 L2 W" _- F) o% S
m_pd3dDevice->SetMaterial( &m_baseMaterial );
) _8 y& E4 J x% H
p- b+ q" U: `7 C
#endif // not WORLDSERVER
. {/ ?3 _9 f) S1 L- a; ?! _) F
}
9 g/ Q& A7 n0 @# b8 ^1 H
并更换
" h5 r5 F- p, Q5 T; ~, H
Code:
' @4 G, B+ ~0 p: t" P
__FLYFF_INITPAGE_EXT
: ~) y" |. Y; x9 I2 D8 N2 Q
定义
( h+ Z/ c$ u8 m |" P
8 Q% e8 m2 \+ J P6 d) n
) s5 W% P g- w
0 T1 w1 w* |' i7 m6 [' U- @- H
9 z; s' K! m; O+ m% A
现在终于删除我的狗屁加速...
' z+ E, [/ M2 O9 a, d
/ L$ |, @- G' S: Y; \
) a6 b8 Y5 s, x
6 r% A/ G4 C3 } e" \
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2