飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
- q% e8 D9 V5 u& \6 ?0 f
尾翼:
( ?- `# A! B" v7 A# |( _7 H2 i
: @7 C; z$ }; \+ |+ E1 K
代码:
' t' g- f/ q/ `
CWndAutoFood::CWndAutoFood()
; s1 z/ G ?! O) }: v
{
: D6 T5 h% |# w; f1 c. i
m_pItemElem = NULL;
4 T g8 f& U! D
m_pTexture = NULL;
( b$ r% u) y+ i, N* l ~9 X
bStart = FALSE;
6 F% S' G- t1 @4 S) B
}
6 \9 ^) x9 Y6 J2 F' z+ F% @4 P
/ x8 \8 t$ b" T0 {# D" |( \
CWndAutoFood::~CWndAutoFood()
. T, X0 ~& e: X! F9 g
{
6 O2 Y% `2 a( R1 p7 G' A4 C
AfxMessageBox( "AutoFood ist gestorben
" );
6 z# \" Z& p- a9 t: b
}
0 G8 F ]* \* A) Q2 b7 F$ ?5 ~ [0 o
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
6 [- H* }. H( H. t1 D2 p* Q
{
- E' T" x, R# a t! V. S" i
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
. m. p, C) m4 l) ^3 X
}
% @) O T) A8 @2 y7 r
0 R% c6 e1 V/ G- d& Z
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
0 y0 i6 J) b1 m# |/ X- u2 I7 ^
{
! B: f- g' g1 p& m; U
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ g4 \8 X* ]( Z! q2 `
CRect rect = pWndCtrl->rect;
' j" n& w3 J' t! z
if( rect && rect.PtInRect( point ) )
4 I8 K# d) Z; R$ V7 G; D' S
{
! [6 L6 U- A! o, ~+ E! k. G! v
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
+ @; y$ Z0 [+ K
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
0 g4 b6 V, F2 n K2 j7 F. z
{
# }* S* y) I+ o9 r+ m9 q
if( m_pItemElem )
0 s4 X, d' u. A4 f; n: N+ v1 _' V! D, t
{
: n9 ^% ?, S# M2 r% I) L+ r% L( {
m_pItemElem = NULL;
" l0 F1 g5 d, ^) B# U8 x$ N
}
( a3 L3 P3 H/ n9 G
m_pItemElem = pItemElem;
5 L; }, }( m" E. Q: x r! K
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
i" o' V& v& I6 P6 y/ M7 o
}else{
$ v4 f% S9 n/ k( p
SetForbid( TRUE );
8 L2 R0 ?; a5 A
}
) j4 R5 x0 a0 {
}else{
! L8 e. ^1 A( `" G$ M+ Y
SetForbid( TRUE );
$ Z6 e6 S3 \* a4 T$ c
}
2 u' K7 K5 Y+ I% s) [5 g2 q6 h
return TRUE;
" @! Z: }1 C# J4 E
}
3 A* x* @+ ~# I+ z; q K5 _
- X G2 c7 A' X4 N9 u
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
4 v5 D- [/ y! b5 {5 h# l+ E
{
, x2 N& e$ V- [
switch( nID )
( {; r$ ?4 H+ `' a1 e+ ]3 ]
{
% f( c3 c- a% @5 a& Q* P
case WIDC_BUTTON3:
4 R; k! i' b$ ?2 R6 g
{
! q# E6 n9 X7 ?3 ?$ P5 |- d# B
bStart = TRUE;
# N# g! ?+ W2 r% t+ p
break;
% c- p6 Q) x7 z, `/ m
}
6 I; n, h Z0 G5 v w
case WIDC_BUTTON4:
/ O" f" z8 `/ {
{
. h9 B Z) E# c9 P
bStart = FALSE;
9 V0 G1 x5 ?" c7 H A% N1 @
break;
3 G7 M9 A- p9 m/ I1 N5 Q X
}
+ K) f7 h( x0 Q- Z
}
0 |! @/ s2 S! ~' g) y8 R
return CWndNeuz::OnChildNotify( message, nID, pLResult );
_" \) l& v. S& K5 Y, W6 h
}
* g4 M5 V- W" w. Z, n
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
9 h6 V' ^" f" B4 O
{
7 ]$ f/ t R; N7 N! M
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
# Z9 j; C- L8 I$ z$ {) l
if( bStart || !m_pItemElem )
9 q2 a+ n; j" I. L0 M
{
' M0 S- c0 A, | ^& Z
pBtn->EnableWindow( FALSE );
: U4 q' v4 ?6 B) l
}else
) B3 b' e* ^3 H% X9 \7 W/ i
pBtn->EnableWindow( TRUE );
: r9 M4 o. t9 a2 r: a
if( m_pTexture )
, n3 a9 o. O( I, e$ z% O2 k% }
{
3 ^% {4 f/ X& Y" G& B" D& A
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
( ?$ w% Z6 E+ B+ J& ]
if( wndCtrl && wndCtrl->rect )
- c6 v' p+ |$ v: e+ x1 f
{
3 o% B& a+ }9 o5 m% S
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
4 K/ O, \: [- T# w9 U
}
2 l4 q; s0 \3 ]3 B, d
}
6 R# r* M6 d r; f" F
}
& v0 B( Y# L8 l6 U, M
6 f: L j) q9 f: m3 m4 q* _$ ]
BOOL CWndAutoFood:
rocess()
# p* ^3 ~6 s* o: z. P' ?- W
{
& u2 V% T8 S. j" n
if( bStart )
2 a7 t3 u9 p+ f% N& `6 d; F7 D
{
* Q* ]. u; t6 K; H1 Z) ?( h4 }
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
5 o" ]; m) j; j- Y* y& s' s
{
/ V/ Y& Y/ _& _
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 I# |' _1 h8 Y5 B
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
. N4 U+ d8 I# C* y1 O
}else{
# c; G9 s- e, E7 w% t
bStart = FALSE;
- a4 A6 a) P- @8 g; r
m_pItemElem = NULL;
" E2 Y5 t# [8 Z+ h; U2 v: S7 k
}
) P9 g- B2 o% U0 b
}
; n% G5 y+ n- x) e+ b" C
return TRUE;
* j/ V, ]3 {$ w; J/ @
}
( n+ a n& }5 q% n3 e
6 ]$ n3 a% y. q/ _, U3 p
登录视频废话:
* x6 \( B! t' t- p1 m8 h
尾翼:
% Q1 F* F% N$ T- c8 ]
7 N1 I* X" W. b7 t. N$ X
代码:
5 S6 t3 @ n) q& K
u) s5 B7 h6 J9 ~+ N% g! E
void CWorld::SetLight( BOOL bLight )
/ R8 L: Z/ ]2 P, `( \; N
durch
( V( Y) k7 `- h5 F0 u
Code:
0 l7 W, [8 w5 t* ~; q
void CWorld::SetLight( BOOL bLight )
8 N4 U3 k9 q/ L# o2 \3 |# j2 ]
{
/ I" h& e c0 S/ i
//ACE("SetLight %d \n", bLight);
7 z' a, g+ P9 q6 C- B
5 T$ C0 e: }2 V2 w4 M" f
#ifndef __WORLDSERVER
" V! [& ^2 @6 t. O9 M
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
7 `; t1 N1 \6 R, [8 [
CLight* pLight = NULL;
8 x$ t$ _+ u F. l, O
+ B( b$ @7 _1 O( M0 i3 n1 h
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
( V0 ~ M' e9 e/ E3 @( l8 m' |
" g6 {8 F$ N: |2 s$ R8 z
pLight = GetLight( "direction" );
% B2 y* d# j7 P6 V$ Q1 q$ u
' P k/ q$ }8 r) v- R% x& c
#if __VER >= 15 // __BS_CHANGING_ENVIR
: H) g8 z, u4 c! f
if( g_pPlayer ){
9 q' ]# N. f: Z& _7 R, L9 a
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
* k+ [% ^0 v1 ~8 k9 ?' e1 t3 O
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
' O2 M1 X# B# E: g5 E: y. u( [
{
1 s0 r: v9 A7 h! I; j5 n% V
if( pLight )
% q7 L" ~! N6 F j
{
7 e) v" F1 s7 O; q
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
; J- X* Q3 W' w2 N8 n2 o/ n0 L
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
* V( L0 z2 ~+ `2 U5 P) d
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
1 Q3 S. H. o! X& p) w" S
2 \. _# _5 }3 x- j
pLight->Specular.r = 2.0f;
# ^! V% n7 h1 V# h( }" c
pLight->Specular.g = 2.0f;
" Y. t' Y6 u' f9 D
pLight->Specular.b = 2.0f;
6 P3 @& M- O l4 b+ h
+ z; K1 l) K k: H
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
5 M1 i. _( \' {; ^) T
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
r4 E9 l6 |! x; R6 R: }
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
) [( U* y( b3 U. v9 \; g+ r
- O* f8 j1 H8 D4 y
HookUpdateLight( pLight );
8 j5 Z' j/ T' F l2 X
/ G ?4 n# X0 w7 ~% |
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ \8 h- x- n1 T+ w4 z
8 G6 {4 O& ^" E4 p
pLight->Diffuse.r *= 1.2f;
; s% y& @; I) }& G; Z: s- f. ]
pLight->Diffuse.g *= 1.2f;
. u7 m9 Y* P9 H
pLight->Diffuse.b *= 1.2f;
' h" p* n1 w$ Z3 C6 r- v
8 c4 H5 N' C! p& J
pLight->Ambient.r *= 0.8f;
. b2 Q: m! \! Z6 B ~
pLight->Ambient.g *= 0.8f;
9 U" t U, F( x/ _ X/ v& ]" r
pLight->Ambient.b *= 0.8f;
4 v& q# y2 _ o& X5 R
K# \; n+ M8 n! ^3 F4 R
memcpy( &m_light, pLight, sizeof( m_light ) );
) z, R0 u2 ?) m/ F$ v1 ~
- M( g% C1 K2 @+ n9 _: N# |
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# B8 X. E2 r1 I0 q; `
D3DXVec3Normalize(&(vecSun),&(vecSun));
: c4 x- N; \$ h. B
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
( ^, e* N1 T5 F+ T- I
pLight->Appear( m_pd3dDevice, TRUE );
7 n3 w7 j) x1 C. p8 C7 `
- R" `, e4 G0 M& D/ [7 P
DWORD dwR, dwG, dwB;
# i0 Z- f2 v. q& [* a, d4 l5 w
dwR = (DWORD)( pLight->Ambient.r * 255 );
% Q" b# }9 ~) d# K
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 n+ g1 Y& ]7 ]3 r8 Q0 a
dwB = (DWORD)( pLight->Ambient.b * 255 );
, U' s/ c3 H: f/ k# c" s" q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. g T3 N2 c* O: V
}
1 E$ p: ]4 W% ]+ N9 p8 I
}
" X6 G1 A% T! K$ V- A5 [
}
, ~8 P n3 g0 \! W8 }; e- g- J
else
: f5 S2 w, `8 {' s8 m% m
#endif
; S4 z6 O* H2 L0 L3 Q
5 K8 g0 \. d% w8 M i& Z
if( m_bIsIndoor )
3 y8 k, t" v g5 C
{
( Y3 @5 D+ m% J7 m3 ~8 r2 W, U
if( pLight )
7 j1 J& x4 x( f
{
9 l6 j) f2 `% K: Z. e' g/ o' F
// à??μ oˉè*
# p9 ^, F2 o4 H0 R
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
- S+ U1 U" Q9 @1 W1 K' D' R( x0 J
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
/ u) W" x- b8 t$ B. ~1 y9 L
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
1 ]! e/ V# w, O0 c T
6 @: i. @6 h8 o0 q/ T" w w' u
// oˉè* ??à?
9 A$ g8 Z" _( }; b3 G) y
pLight->Specular.r = 1.0f;
5 k+ Y6 r: _, Z* p
pLight->Specular.g = 1.0f;
6 f& O" Y& ^3 Q* v1 B! i% K% P
pLight->Specular.b = 1.0f;
8 h( r5 Z% s* }& w' u$ P" \! t. }7 V
// àü?? oˉè*
2 {) W- K6 e" C! q. E# U, S0 t4 j
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
& L U* K4 h1 J
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
6 x, b# O/ ]+ T& k9 W
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
I+ T7 S1 C3 | W5 t) o# R
! T8 ^3 a! P' Y+ v, K* y, A# s
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ |+ X) a8 U3 c
{
z7 [4 H5 N) g/ Q2 W
pLight->Diffuse.r *= 0.6f;
6 A3 Y0 r. A+ @ e; {
pLight->Diffuse.g *= 0.6f;
/ c6 n& i' ^3 b
pLight->Diffuse.b *= 0.6f;
; f5 ^- e4 h0 D( G
pLight->Ambient.r *= 0.7f;
: K+ h, U' b) I$ K& [5 |: t
pLight->Ambient.g *= 0.7f;
* n8 I3 ^, c" E u4 h$ h
pLight->Ambient.b *= 0.7f;
2 o( v" g1 y- v4 c" b7 A" m# T+ i
}
1 }# K% ]: i+ ?
. {5 ?0 b7 ?- V. V- P! x) T! j
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ I, d! _0 Z) M1 }9 O! B. l" [
if( g_pPlayer )
/ j" s- S' t- }! ]
HookUpdateLight( pLight );
$ z5 h$ n+ q) m# u2 x4 g
#endif
$ [% \7 K) z, t; l6 z1 [
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" u3 r) G# z3 f4 `4 C' p
3 V" T2 E8 V) g4 x. m
pLight->Diffuse.r += 0.1f;
. }* b+ O* }4 O& M
pLight->Diffuse.g += 0.1f;
9 P6 d7 {4 ~9 x& [! |; L
pLight->Diffuse.b += 0.1f;
1 W4 p( x8 R% a/ _: {4 L
// oˉè* ??à?
; b7 s( m9 g: R
pLight->Specular.r = 2.0f;
0 G( a! ?1 }. c% K5 s+ C3 p
pLight->Specular.g = 2.0f;
~- X! }) d* @5 Q2 s1 y
pLight->Specular.b = 2.0f;
) Q/ S, G. y9 ]
// á?oˉ
2 S% E* H5 T1 W2 d3 k1 y2 w6 H7 r1 h
pLight->Ambient.r *= 0.9f;
( F: p( I1 R; N. p' c8 F9 L
pLight->Ambient.g *= 0.9f;
3 x1 |9 P9 b5 h
pLight->Ambient.b *= 0.9f;
, J1 e- o" @2 Z- T6 @& |; T
5 h V- U2 k. e; f$ e
memcpy( &m_light, pLight, sizeof( m_light ) );
+ `) x, K/ O2 N6 j
: p$ y2 f' @* U B: S: K
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
1 L' W$ g( `+ w/ S6 d6 w1 [
pLight->Appear( m_pd3dDevice, TRUE );
# n; _; Y5 T: u$ w8 g; X# G3 w. {5 \
3 v5 G. J# C+ S7 b) i3 G* r
DWORD dwR, dwG, dwB;
+ k5 h, V" ~ g8 D9 y! d* t( M
dwR = (DWORD)( pLight->Ambient.r * 255 );
" y$ ] _- d- I2 X
dwG = (DWORD)( pLight->Ambient.g * 255 );
% _, n* u9 u6 u/ R9 M( y
dwB = (DWORD)( pLight->Ambient.b * 255 );
" N3 ^) G0 P0 [2 N4 a% L
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 Z: l5 i& A$ k0 U1 G+ P
}
! C2 Q# C, V, ^; W$ H
}
* i* n; H. Y& ?+ i# y3 i& g7 K
else
" R$ \0 ?- k1 z- S7 R
{
$ @% X# T$ i5 j3 T) C. [
if( pLight )
1 K3 K$ F- H7 v3 O* z. g
{
+ [/ s2 A" ?, y
1 V, ^+ Z. L- z5 q" `9 y* f& t
int nHour = 8, nMin = 0;
( o$ U8 \! c' @, ^9 k
#ifdef __CLIENT
# S4 u# z2 Y9 n% K. C$ H" \
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
& S& t& o8 f6 ?7 D
nHour = g_GameTimer.m_nHour;
- @3 G6 Q, f( G! ]# }* [1 ]
nMin = g_GameTimer.m_nMin ;
' K6 ^" e+ H5 |7 K
#else
* M+ i2 z4 G3 n- g3 z- ^ f
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
5 I8 b8 r8 e+ ^0 x% b! M( M: @
if( m_nLightType == 1 )
7 J6 o; n9 i, H2 n% c% h
nHour = m_nLightHour;
3 U/ i4 \+ i6 J$ P/ p: D3 a
#endif
; A" l; j6 h/ p2 H
nHour--;
# \$ u3 q- N( T# `2 x) x( u% i
if( nHour < 0 ) nHour = 0;
9 @+ X7 G- ^4 q, Z7 k8 R, v" i
if( nHour > 23 ) nHour = 23;
- h" B# r$ O; l- T* D
. y" Q8 g( z. W J( A' d* b' n
//if( m_bFixedHour )
& J! O6 j: _: M3 d5 k' F& p. {
// nHour = m_nFixedHour, nMin = 0;
0 r7 n& {. l+ Q5 [6 @2 Y4 ^
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
0 g! h. q2 Y: l# A/ y
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
X& h) O1 \+ o$ @
& L0 E# r! v" t _
//m_lightColor = lightColorPrv;
# |: ^3 ?4 L6 o7 L( I
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
5 `9 S; c* c$ {, a
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
1 _' E* K, }; r2 l' |+ u: o
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
: v5 R- Z& m! {* h' c
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
: {& n% _- Q8 L4 t, @1 u4 l
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
Z4 [. t" r, S8 Y% |, G7 G. {. V
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
; N4 m% D! ` A
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
% a4 }7 E3 C. Q7 J
~+ a3 R/ a( j$ |4 Y- _# I
// à??μ oˉè*
% b2 ~' w. c- u, [8 ~
pLight->Diffuse.r = lightColorPrv.r1;
4 Q" |& U# M1 e, t3 p8 X' g& {
pLight->Diffuse.g = lightColorPrv.g1;
2 Q+ ^3 f: ? T9 \
pLight->Diffuse.b = lightColorPrv.b1;
! i& \! H+ i+ Q& j2 c2 |0 b8 G
// oˉè* ??à?
" c9 k6 k9 a% A
pLight->Specular.r = 1.0f;
# f. o9 E7 ]1 G; G
pLight->Specular.g = 1.0f;
0 \! W3 e8 l$ q, w
pLight->Specular.b = 1.0f;
& ]5 S( a: c* @1 y5 u4 W$ s( \6 q
// àü?? oˉè*
; k z2 w2 Y$ X. \9 `
pLight->Ambient.r = lightColorPrv.r2;
! {# d5 S. f3 G: P# v
pLight->Ambient.g = lightColorPrv.g2;
5 Y ^0 K3 x! x# T a) {' D2 M
pLight->Ambient.b = lightColorPrv.b2;
7 s8 q$ H% |* P5 r, J
$ k7 I* c4 Z; Z3 n% |, b
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% k. Y0 t5 t6 ~$ V' @# B
{
" f4 j0 t; ?# O, a% E
pLight->Diffuse.r *= 0.6f;
; j. W/ {7 s- Z# D% N
pLight->Diffuse.g *= 0.6f;
+ w4 ?5 M, `2 P! l
pLight->Diffuse.b *= 0.6f;
: J6 j( H( j+ ?- ]
pLight->Ambient.r *= 0.7f;
8 C$ |5 ^; G' z& {( m; k! u+ @
pLight->Ambient.g *= 0.7f;
+ ]% F# K" N1 R) {0 t" r# _1 n
pLight->Ambient.b *= 0.7f;
9 H% c: \7 T$ c7 P3 F
}
* A& t |" s" Q! o. q9 ~
$ ?, h1 a2 h6 s) Y2 z
#if __VER >= 15 // __BS_CHANGING_ENVIR
! K; }8 ?) F0 O# n- B' x& Z8 P6 X
if( g_pPlayer )
* R6 ~" S: u4 x8 i6 r
HookUpdateLight( pLight );
1 t3 ]) I2 u& J$ t ~0 Y
#endif
2 O% |& o6 ^& d6 G4 L, }6 Q1 Y2 O
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: l! E0 Y" j# ~% x1 e
$ r' W. v' q X# X
#ifdef __YENV
6 j8 z9 \4 O8 p, u3 `, T
pLight->Diffuse.r *= 1.1f;
1 j/ Q9 l; j# \, }; x
pLight->Diffuse.g *= 1.1f;
i; U, d+ V) M0 P
pLight->Diffuse.b *= 1.1f;
1 l7 f& `8 t; `6 p
// oˉè* ??à?
* _% n8 x3 n# l* C) p' Q% v
pLight->Specular.r = 2.0f;
! E4 ]( _* D% u% O A" f
pLight->Specular.g = 2.0f;
1 @- _/ ]4 k8 w& Y
pLight->Specular.b = 2.0f;
5 r: H( q) h% Q f
// á?oˉ
+ w2 o1 w% U$ a. ]
pLight->Ambient.r *= 1.0f;
2 F, I% T9 w) d5 i, h( k5 e: J
pLight->Ambient.g *= 1.0f;
7 n; V$ Z& Y* Z: ^% r/ T% s
pLight->Ambient.b *= 1.0f;
# x) d7 y- Q7 `' K& F( f
#else //__YENV
9 B4 Z0 d4 }& `# j4 h
pLight->Diffuse.r *= 1.1f;
+ p% l {2 K! I& t
pLight->Diffuse.g *= 1.1f;
+ K$ }( w) `6 Z. h3 B, @' i
pLight->Diffuse.b *= 1.1f;
' }) L6 N7 w' E" s7 r2 I3 G5 F
// oˉè* ??à?
' T7 w8 G U. ^( ~2 ]/ O' J
pLight->Specular.r = 2.0f;
, u W& |- n3 L. n
pLight->Specular.g = 2.0f;
+ U) \7 p- m0 s7 W) T
pLight->Specular.b = 2.0f;
3 b% s- g/ e& L7 i8 n& X
// á?oˉ
3 p8 n. R3 G* \) Z I0 l
pLight->Ambient.r *= 0.9f;
* d% i* Y$ F) s. A! C1 c( v& Q% M
pLight->Ambient.g *= 0.9f;
& }) `8 A1 {1 t- K! ?1 x: h
pLight->Ambient.b *= 0.9f;
) c* p9 Y4 |) c# {* b
#endif //__YENV
( r0 _8 M& i& v: O# e
$ c) I- l2 v+ W5 P# F/ M
memcpy( &m_light, pLight, sizeof( m_light ) );
+ L3 i2 { m m$ Q
+ s! U$ k: i+ m
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
8 O+ m+ E8 `+ [6 }) O
D3DXMATRIX matTemp;
" u! y* |( _6 b1 D
static const float CONS_VAL = 3.1415926f / 180.f;
- F9 |! r0 v" X
3 L5 U1 s# i( [% s. n
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
4 R5 `6 f" \+ s- I2 o
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
+ \5 X0 C& A) s$ N# w
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
4 R( C9 J2 B# E# a+ {$ p. X
pLight->Appear( m_pd3dDevice, TRUE );
& M0 `) ^: R) r! m' t$ k4 s( R$ @
" u/ @4 c8 e/ N" ]9 Q& M0 m
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 r# ]- y8 Q, j1 d
// D3DXVec3Normalize(&(vecSun),&(vecSun));
# F2 _% ]. `4 a! ?% [ P
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! t/ m5 s! r/ ?7 k
! [- Q, N _% r9 Y% N
DWORD dwR, dwG, dwB;
/ d+ C- p" m, U1 Z0 z6 Q9 `
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 ` m9 Y% D* O
dwG = (DWORD)( pLight->Ambient.g * 255 );
( U: h9 ]1 G, P: y' b
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 ~2 ]* L8 _0 n. O* ^
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; B! {0 I, Y& S& P9 C9 b
}
' `7 X' t6 a" I! [, {8 v
}
! K' `9 f" f# K3 D
/ S: ~8 h0 k1 d# n/ @ d- l8 p
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
) D0 E' U# u' a2 L; _# V
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) );
/ P: m2 B% ]) _6 t& B" V4 L- C) p
::SetLight( bLight );
|1 x' t+ ~6 Q* y: z* N
7 E; d: l* [6 m! ]6 S8 g
// ±ao? ?D?í???ó á¤à?
- O& F, j, { e( }( r
m_pd3dDevice->SetMaterial( &m_baseMaterial );
: l9 j: f+ Z/ B J9 B. n
7 L+ D8 J* q3 L+ _5 ~* U
#endif // not WORLDSERVER
$ r0 d, a% S$ a& H% C& G
}
: y m3 U) q+ u0 y* a
并更换
% ], H) @8 |2 Y) p8 d# q9 P8 q
Code:
8 A. ^/ X( y; ?6 W$ Q
__FLYFF_INITPAGE_EXT
/ R) q1 C- N8 u, C+ J0 H# m" R
定义
2 o' A# m6 Q2 N- y
1 l- k) ]7 n! l& G4 A1 T* `
" m0 `9 ~% o& x7 e! j# Z
' c. {$ u' G. U. m. U
5 h: x ~6 b/ Y' }- h9 `4 a' M
现在终于删除我的狗屁加速...
! N- i4 V0 T6 R) J2 D
9 Y/ \; O, o! @
' ~- v6 l; j7 Q" L6 B: g8 v
5 w$ i- K9 P* }3 r! B+ R
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2