飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
4 M( ]4 s1 `; K
尾翼:
& ~3 d f1 C; C0 g( u1 G0 R
4 k I6 G% f9 C# F+ Z9 x
代码:
+ ^, O4 C9 F& S
CWndAutoFood::CWndAutoFood()
$ r8 ?3 s9 x# W4 x
{
- E, w7 b2 y: e. g$ z5 e$ n
m_pItemElem = NULL;
* D4 y! D6 E. M; c3 Y
m_pTexture = NULL;
8 |& [5 W1 Y1 a* F8 P" i
bStart = FALSE;
6 |" h, M( Y$ S2 c" |) ^7 x
}
2 N. }4 `& @- D
0 ?# z6 k2 k* l4 O' g3 [
CWndAutoFood::~CWndAutoFood()
4 P* O2 j1 c: S( f: G' j; d8 x# t" }/ V
{
: w' ~: R, G# w* B" d
AfxMessageBox( "AutoFood ist gestorben
" );
* S5 d6 g9 s: x# o5 l: S
}
4 c/ o m5 i: N5 X% p3 x
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
7 e! S8 x. C$ ^
{
) {4 B4 M& f) q+ a5 n
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
) A: x, s6 h1 P( I0 d5 v1 ^
}
# K' I6 b! T0 ~% w% R. @6 Z- G
! R$ y' A3 m( l$ i) c- U+ `
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
6 s, `# C( |" p, H& v
{
5 q# R5 L) i+ [) q3 T
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 u4 Y% t6 V% z& k4 w/ E- j
CRect rect = pWndCtrl->rect;
: }+ `1 p; G+ k3 |
if( rect && rect.PtInRect( point ) )
# q% \3 `; C, z; B) \* m/ a
{
# L4 [/ f2 u' E3 B& a( G
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
1 @. A/ y0 [: p: |2 u$ [
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
) k7 T1 c* V- U) y
{
6 ]! X1 P. A& e2 t+ S1 ^% u0 U
if( m_pItemElem )
# p% A$ s0 T: ?7 @+ R
{
8 m# B, y+ x& l7 P% n0 ]+ d
m_pItemElem = NULL;
9 L9 B. f1 U& S+ X4 N( {
}
6 B0 D: [" R/ G
m_pItemElem = pItemElem;
0 w, P/ I( q3 p1 t, H% M( b! {
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
& q1 G# F8 f# I9 I
}else{
* K; K+ l% U* V) i: j' E
SetForbid( TRUE );
# L' n2 y) Y) u3 U" Q- ^
}
f9 B/ W( {( m
}else{
0 g4 N- ?' t% Z5 }
SetForbid( TRUE );
5 g4 O7 d; t1 A4 n9 Y q
}
: f c( e5 K* z2 v
return TRUE;
$ c8 S" U8 L- d1 _5 Q7 c
}
7 } W3 F* c9 f2 Q4 R* ]
( d4 U) f+ G) M; X% [: ~$ O
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
& }. X& H [$ d! }8 c$ X8 W1 ~. `
{
) W6 ?' U# {6 T: \
switch( nID )
' X7 L; K0 p* w
{
. T* Y; i! y+ U: J3 ]2 [$ W* w( l
case WIDC_BUTTON3:
* [. z; ^' c( s% u" }- `/ |
{
( ~6 s a9 i1 A% r. V
bStart = TRUE;
( |2 D8 a T0 f. q* _( h' I5 v
break;
4 }7 {3 U+ j4 V1 R
}
" }- m) i/ l2 P. g
case WIDC_BUTTON4:
2 B3 g! L: s8 y( D( v7 B+ y+ d4 f
{
5 \7 f, B: A: C0 l/ W
bStart = FALSE;
$ Y# ^0 H, |, K4 Y# t
break;
1 Q6 ~6 b y* r: R# g2 z7 H0 G
}
* F% {& E0 {/ V& q" y! O
}
% x. L8 m; Y+ Z7 a+ J
return CWndNeuz::OnChildNotify( message, nID, pLResult );
. e y+ }% X0 Z/ i \
}
5 O: g( _$ M/ @8 L4 b+ F; v
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
5 a# A- U8 w5 n+ r& k
{
0 V, G& a+ e/ x( q9 H+ b% _0 r
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
' r) F; X+ m+ _( D
if( bStart || !m_pItemElem )
% k9 ^" L6 b* Q7 Z8 w- z; s
{
8 @. l( l- T8 i/ y
pBtn->EnableWindow( FALSE );
" [6 m2 }; G4 S) X8 o8 Z7 H6 `/ n
}else
% C0 S+ V9 M2 Y
pBtn->EnableWindow( TRUE );
" r9 {) y3 s: p0 ~; j1 E8 c5 |
if( m_pTexture )
9 _& i! X- T; l& J9 f+ C/ M9 ^9 L
{
, X. O- M z* L% Z" p3 j
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
}4 q6 y4 X! S6 u) a+ m
if( wndCtrl && wndCtrl->rect )
6 [9 G( W: C: D
{
( j, X- @1 z! P) T
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
% U# a# S3 Y r; O
}
! E( q3 X( P: L$ d
}
7 ~; l4 Q3 a6 n3 Y2 V% H( d* z, y5 ]
}
& z" t J" y* k* z% K& J
5 o1 k# j9 |: d
BOOL CWndAutoFood:
rocess()
% ^3 ^1 \$ ?% C# J9 d& r" f0 C3 r
{
' T5 t6 ~1 b# A0 V0 m# e" [7 ^5 ^% S
if( bStart )
8 C% j, {7 P7 {
{
) e* f, K- M7 O1 W3 W+ T
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
6 p4 Z8 F! n$ F
{
/ p _0 B* V8 J
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
1 O2 b7 j/ C$ b* I/ {
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
4 Z" s* Z! C6 ]' R1 K$ G
}else{
& i; A5 E' k4 E2 K/ n
bStart = FALSE;
& O3 P# D: H( S
m_pItemElem = NULL;
6 a& |! H" \ Z- p0 ]# k
}
. I d. r9 F. d. z+ w
}
+ Y! C1 E: [" r% E/ W" n
return TRUE;
2 f) L# u7 ?) O7 R3 |
}
7 T% ?; g8 o( R! ?
3 c- a0 y9 G( K/ ]2 l! W6 v
登录视频废话:
& ?+ _/ i) }% s+ g6 T9 d
尾翼:
7 _+ P" ]0 l' j8 J6 C2 H o- t
* z$ _0 }* v" ]4 p
代码:
5 h0 h8 W+ V) x+ W) C* Z4 g
5 C% J! Z& n& x7 U4 L/ W. t/ G
void CWorld::SetLight( BOOL bLight )
6 ~ @6 U# b/ Q; i8 h
durch
2 r4 r) P1 a1 l2 {
Code:
+ X0 ]6 [' ]! r. n* @
void CWorld::SetLight( BOOL bLight )
& b8 S g7 D, H! h& E9 V7 c/ Q! x5 w
{
5 \( |8 U2 X& w* E- z# T
//ACE("SetLight %d \n", bLight);
8 }2 k& a) \) O) L3 V
- [# V6 T: p. Z1 n' V* n
#ifndef __WORLDSERVER
0 V% r4 b u& w* Z
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
! N% j3 b2 a. Q
CLight* pLight = NULL;
) B( h7 e" c2 R9 L1 N% M
- s; E5 N* k7 [
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
2 G* I, z2 ]! m% w
) Q& I7 v4 ^# k4 e! j
pLight = GetLight( "direction" );
# s2 G2 t9 Z" p7 c+ a; ~! W
0 G* `5 ~, _4 F" a2 b; F
#if __VER >= 15 // __BS_CHANGING_ENVIR
* _5 T5 g# O2 l0 s f9 D$ K7 [ G' {
if( g_pPlayer ){
9 D0 Z( G, a1 o' E) Q3 \4 X8 O! H! z
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
& s# y! O) ]6 C' @6 v8 ]. ~
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
' @! W: l' S9 D P5 {4 }" \
{
( \! p! b1 T! A9 V: C, A5 N0 {9 k
if( pLight )
/ n, C, G1 A; {4 Z+ ^- M2 O" O# ~
{
8 ?- v9 b' G5 e n: y$ k, W
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
1 X" g7 g: l# V! l! S1 K- y" H
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
1 p+ L; S) m3 I# a: u
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
9 v7 x+ k2 N# U2 o# G+ m5 V/ Y
1 Z2 h5 N5 i& ?' k' C
pLight->Specular.r = 2.0f;
6 t) {9 @& U% z) Y% J. a
pLight->Specular.g = 2.0f;
/ [* j1 Y7 J% j9 K2 `0 N& \6 P6 e
pLight->Specular.b = 2.0f;
5 A. {0 H4 g( i# B; z! v
& }* n+ Q! j+ G- `
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
/ N0 f* H Z8 s
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
0 q6 _7 ?- P Q) I
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
4 l# }8 O5 b/ s# P7 }
, h% F' D* C5 f; E. Y8 M
HookUpdateLight( pLight );
2 [6 \* \, i" O8 u" g6 F
8 ~% H3 m2 g1 U
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 K1 J u9 x7 g2 B
; w5 q' ]) |% F
pLight->Diffuse.r *= 1.2f;
1 a: Y8 |2 ], U) o2 k8 a
pLight->Diffuse.g *= 1.2f;
; l! w* p6 |9 f9 K5 N j
pLight->Diffuse.b *= 1.2f;
! I \ O w- }8 k
3 Q# Q) d6 C+ r' v" c- l1 ]2 M
pLight->Ambient.r *= 0.8f;
( a: F+ N# r7 t1 P( p
pLight->Ambient.g *= 0.8f;
& e' @/ L5 ?0 _! F t; A
pLight->Ambient.b *= 0.8f;
' T" Q0 F/ t1 n/ o( e1 P6 S6 u
) i# ?2 {2 a& {9 n# ]3 n6 _0 H
memcpy( &m_light, pLight, sizeof( m_light ) );
- W* `. M- W0 t$ ^
0 I) a4 C" |( P; z3 X5 \
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 Y8 J6 r3 L% m" f, H
D3DXVec3Normalize(&(vecSun),&(vecSun));
3 ^6 k9 d& N1 e) l
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% B @+ S& O/ H2 ~" R
pLight->Appear( m_pd3dDevice, TRUE );
' U8 Y! }3 O& M/ U, O
; @9 c6 j0 R3 R( u
DWORD dwR, dwG, dwB;
9 Z+ s! u5 ?7 d I+ K5 c9 P$ z( F6 x
dwR = (DWORD)( pLight->Ambient.r * 255 );
( \1 c2 B( }& V
dwG = (DWORD)( pLight->Ambient.g * 255 );
. M# k! l7 J. S# C( u% P
dwB = (DWORD)( pLight->Ambient.b * 255 );
( q9 Q B- z+ a# Y) z
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" D# c' W( Y: Z1 ?
}
2 M7 `0 }3 N. Z
}
7 \) ^8 R0 [# B& ^4 d j4 G1 b
}
/ W/ e8 r$ c$ g1 Z' g0 U
else
) U& d: p" e7 Z/ `
#endif
# \+ o1 |- j0 z& u! g: ~1 C1 J
* \( C) @0 `5 x: C6 d
if( m_bIsIndoor )
& f" B3 _1 b* Z6 t# l
{
4 N" E* e4 b7 [1 F. F- R
if( pLight )
9 I" T2 Z u) K
{
1 _, k' `' b9 r& u; Y3 e
// à??μ oˉè*
4 P5 K4 P- i. F0 v5 I, J: h
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
Y3 K( _7 r i" o. Y
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
, ^4 o! Z4 T. P- E: ?( V. D- ^
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
; L0 W3 O5 ^, s. u$ z
3 P/ C- A6 ^. ?% x, G: F
// oˉè* ??à?
9 u% h* f* v) V
pLight->Specular.r = 1.0f;
% u& t5 E3 j5 F6 J+ W
pLight->Specular.g = 1.0f;
. P# p- U! u9 y8 M" _* r$ U
pLight->Specular.b = 1.0f;
& Q* \4 R _9 o6 s$ t1 f9 k
// àü?? oˉè*
" G! a2 n$ J9 l+ c: ?) z
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
5 ]3 f8 r" C" \! @7 ^
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
- s* ~& T) J, a$ E
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
5 |& { M. D0 W7 R& r
- S) C# V) {4 |+ ?, r
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ K* J. \4 `/ J |2 p
{
# U* d4 |* A q
pLight->Diffuse.r *= 0.6f;
, [) S4 @0 H" a3 ?
pLight->Diffuse.g *= 0.6f;
4 f1 m( f& V5 I5 w
pLight->Diffuse.b *= 0.6f;
* T+ Y s1 q1 P& @! A( H
pLight->Ambient.r *= 0.7f;
8 L% b/ _9 {+ x- e1 a) }* `
pLight->Ambient.g *= 0.7f;
& b @% Q3 g' \% H) n: v
pLight->Ambient.b *= 0.7f;
9 Y5 g; C+ d. s" s6 g9 R) ^
}
- ]% a$ J; R$ P" L* U
! l) ^2 A5 {" y3 J/ o6 w- c
#if __VER >= 15 // __BS_CHANGING_ENVIR
: W1 [8 J" i/ g
if( g_pPlayer )
% h! A) {* C: y1 {5 z- W1 s
HookUpdateLight( pLight );
8 G* g! Q% @) C$ E' T2 g
#endif
- Q+ C g$ {/ l3 H4 x6 T, ~6 L' g
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ @2 [% ^7 Z5 @6 ?( g! D: V" ^
$ M5 c0 t+ ?/ G* q) e$ d
pLight->Diffuse.r += 0.1f;
9 K% }( V) A2 s, m% g. N
pLight->Diffuse.g += 0.1f;
5 C- s# V- L9 |2 s: G" j
pLight->Diffuse.b += 0.1f;
- i( h8 S3 X. n1 P' z
// oˉè* ??à?
/ F. {0 e5 B0 K) Q5 J- ?
pLight->Specular.r = 2.0f;
- b. b" ^: ]$ z3 ^" c
pLight->Specular.g = 2.0f;
( {) T: S2 V( ]2 O8 F3 G, C; o
pLight->Specular.b = 2.0f;
8 k G& \, k% w& l5 C8 m7 y" N
// á?oˉ
! q( G) Z5 z- q! O4 n' O p0 }9 j
pLight->Ambient.r *= 0.9f;
5 g+ U8 X2 |6 `
pLight->Ambient.g *= 0.9f;
& F s. i% Z7 w1 q
pLight->Ambient.b *= 0.9f;
- I$ a+ j4 ~7 J0 l
5 @1 m4 u, s( S! H" E) {
memcpy( &m_light, pLight, sizeof( m_light ) );
& H; K; `! v4 O/ K$ _2 T, e! H, \
m4 i6 W/ d# m. H; l% D0 \( j
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
0 h, _8 d9 C6 j* u
pLight->Appear( m_pd3dDevice, TRUE );
5 a* ^, G* ^& q& v
+ W, t" t& k5 `7 o3 b2 b
DWORD dwR, dwG, dwB;
7 o. x; I% d+ h: ]7 i
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ f6 Q1 n9 V) s6 i) E9 {% l* v0 ]
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 o3 @" A2 B6 w" i& }: U
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ r7 l6 z. G- Y" s# @3 \. ]
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ m( a3 |7 a8 C; V
}
- E G8 N$ b) D( @! z, v) r L: X0 C
}
+ z! k/ b& Q- T
else
/ x1 U7 _8 ?9 L0 F
{
. ^6 A4 p0 d% h
if( pLight )
, K0 t" y% Q2 p j7 u
{
, e- S& y" V9 v, I% a: }" _1 D1 c
0 [. Q4 M) t6 z- Y
int nHour = 8, nMin = 0;
: q1 Z; t$ q6 ?/ D5 q1 G# d
#ifdef __CLIENT
! f5 [8 P: D }7 @- A/ g; h
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
8 ~1 v8 t' \$ p; L8 ^" q' F
nHour = g_GameTimer.m_nHour;
3 Q8 {5 B/ L* G- S8 Y# ~
nMin = g_GameTimer.m_nMin ;
, X+ E. z, y% \) M" \
#else
, `3 X: f+ V' U# C6 s. {
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
. |: [; a$ `; F9 Q% G7 k7 r
if( m_nLightType == 1 )
( ^3 L6 X- ?; j& a$ p" i
nHour = m_nLightHour;
% @+ T$ I* ]7 H7 V- p8 k, @8 m' Q
#endif
. F: K9 N4 Q" J3 _7 }
nHour--;
$ ]+ u0 p4 j& Q1 z8 U% Q; v
if( nHour < 0 ) nHour = 0;
6 p3 y5 n; k0 V3 x8 _
if( nHour > 23 ) nHour = 23;
- p+ H* S' y3 x* B1 U; A% S
6 o% O* J" j: [* H+ m& k6 ?6 @/ T
//if( m_bFixedHour )
+ w' r' ?8 \+ m, Q" x
// nHour = m_nFixedHour, nMin = 0;
4 X" o' ~) q9 r }! Z
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
# b% k/ u6 ?/ H
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
2 A2 U; a1 ~8 p1 N3 [1 O( j. ^
% u% C0 U5 u+ a$ h& Y! Y$ }
//m_lightColor = lightColorPrv;
0 `% N% P2 e( J- Q4 ?9 c
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
7 t0 B) _, J1 r3 r E8 P7 o
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
5 `. h5 W$ {/ Z2 ?
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
" I( j2 Z9 v# b; V/ G
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
; D( m a3 \7 H! X F; e
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
, q' \+ P; n& [( {8 K
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
" g- `; H) h0 E
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
; N4 }' u1 i$ f6 `5 Q
7 }' }1 R8 b9 B& h
// à??μ oˉè*
. |2 ~6 m4 s4 ~6 v# R) a& s
pLight->Diffuse.r = lightColorPrv.r1;
* j' Y8 ?; Q* m) _% S
pLight->Diffuse.g = lightColorPrv.g1;
" L2 @/ K' a3 m+ a: h8 R! y
pLight->Diffuse.b = lightColorPrv.b1;
3 D0 \! K9 i- x a8 }1 B* }
// oˉè* ??à?
2 c, s. l7 _7 K& r/ g1 k% a+ ]: z! c
pLight->Specular.r = 1.0f;
& ~7 m# J. M& N
pLight->Specular.g = 1.0f;
5 s6 ^2 u/ ~ j: |
pLight->Specular.b = 1.0f;
1 \7 E# |5 Z& ~, u' w' ]
// àü?? oˉè*
# W& U9 u% a4 H7 J, {
pLight->Ambient.r = lightColorPrv.r2;
5 E6 y) o d. }- w: u5 V
pLight->Ambient.g = lightColorPrv.g2;
) {, _/ R5 H" Y
pLight->Ambient.b = lightColorPrv.b2;
2 u& i5 ?) f$ f/ u) v% ~, ` x$ I
$ Y" e( ]! N% {& X* @
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
; B0 K8 `$ r" _' ?9 v4 o, Y
{
K, q; z' w+ T
pLight->Diffuse.r *= 0.6f;
5 ]2 L. b: U5 w9 Z
pLight->Diffuse.g *= 0.6f;
! O; r, N" {- t
pLight->Diffuse.b *= 0.6f;
4 p! J! b2 Q v% e4 t% h( H7 |
pLight->Ambient.r *= 0.7f;
# l j8 l7 |1 I. v' U9 V5 U2 r* m
pLight->Ambient.g *= 0.7f;
, W3 ?0 x# ?( o% j- n7 i- b7 ~8 v
pLight->Ambient.b *= 0.7f;
6 A, K* p3 j1 l+ Z7 K5 f
}
2 T8 p0 `& u0 L* o, Y
& x' l! G! t+ C- F
#if __VER >= 15 // __BS_CHANGING_ENVIR
: W' h* Y( W X7 C2 [
if( g_pPlayer )
9 {) h1 {2 @% P4 Y6 |
HookUpdateLight( pLight );
2 O* J9 h- S+ j
#endif
# F0 }) B2 l7 z7 E
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 B. ^, z+ D( _. E
, ?3 _. C' u$ L/ e9 O
#ifdef __YENV
; N8 ~( w" }" f( u6 B
pLight->Diffuse.r *= 1.1f;
$ B9 ^9 M' X- ^
pLight->Diffuse.g *= 1.1f;
3 t- ~3 F( Z) i
pLight->Diffuse.b *= 1.1f;
" } O3 W) V# l7 r
// oˉè* ??à?
6 W8 b3 ~1 P7 H% P/ o3 ?; x- U. X
pLight->Specular.r = 2.0f;
: d% w8 q& m7 u* i7 }" a6 I. u. C
pLight->Specular.g = 2.0f;
3 h/ |6 R% L i& u+ b
pLight->Specular.b = 2.0f;
# s0 Z3 _" c7 b! j) Y a( G
// á?oˉ
' k- |, @8 _- a- N& ^, S; t
pLight->Ambient.r *= 1.0f;
8 d) B# E% ]' c$ n
pLight->Ambient.g *= 1.0f;
- ?! v+ J% i" _: w$ s+ ^% R
pLight->Ambient.b *= 1.0f;
2 E1 n7 ~, i0 L. R
#else //__YENV
& @3 ?7 B: ^, J
pLight->Diffuse.r *= 1.1f;
' _5 J" e; J: R8 b1 W- _
pLight->Diffuse.g *= 1.1f;
@ g$ G7 K9 g! C4 m
pLight->Diffuse.b *= 1.1f;
4 b- e4 P0 ?2 X5 ]- j6 `9 g( q& f
// oˉè* ??à?
2 k; F ]$ s$ A. M
pLight->Specular.r = 2.0f;
3 |, u- `% I' U8 V
pLight->Specular.g = 2.0f;
* o/ {8 K% X/ L3 W& G9 y& {3 S3 @
pLight->Specular.b = 2.0f;
$ e% I( V0 P4 T( _+ {0 m
// á?oˉ
. _# I' H' V: ~6 Q
pLight->Ambient.r *= 0.9f;
4 S# j5 Q7 }7 X; k! v, c; S
pLight->Ambient.g *= 0.9f;
4 ~. _" S) q a
pLight->Ambient.b *= 0.9f;
' X: v2 u2 v& y& q
#endif //__YENV
+ v! B |5 a. y4 ^
% |( t q: {* [- L% \$ u) n0 k
memcpy( &m_light, pLight, sizeof( m_light ) );
2 d: s/ F4 o- O# @
- [2 X c+ P+ y5 @$ n- N& A
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
) Q" ^ h N, f, b, y! q! k, U
D3DXMATRIX matTemp;
& Y& b. f. t8 {0 l/ S1 V
static const float CONS_VAL = 3.1415926f / 180.f;
0 B4 C* t. b, d& N/ E, X
0 b7 D) R' j& Q, @' \+ s
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
/ Q+ S# Q- X" u0 {
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
2 J. C+ G* r$ |
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
+ T; A t0 d0 l+ L8 d* ], Q
pLight->Appear( m_pd3dDevice, TRUE );
" k( P Z. }6 e9 Q' f9 ~( G, p
) \, H3 |' K4 ^, z9 y9 m
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
Y; y) k& \- I8 @
// D3DXVec3Normalize(&(vecSun),&(vecSun));
1 c9 X0 k) ]; t+ W
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 b3 q- z/ E) G$ W
4 W7 C0 ~# X9 Z1 ~. L& v4 j
DWORD dwR, dwG, dwB;
2 r4 ^" L6 ?% [! \/ R
dwR = (DWORD)( pLight->Ambient.r * 255 );
/ z7 F9 [' `% |- ~
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 h) A. G: P$ \5 C X! y @
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 i/ c" R7 \ ^, M
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
o* v7 X) p6 M! a1 a( Y
}
: y; K" H4 x5 d# I0 U
}
3 T. [3 {( v$ s6 B: w; h
( q8 N- }- k+ n( ]
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" t/ }: k2 B Y( f) P% G% m
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) );
! Q/ i" P+ |+ t' @
::SetLight( bLight );
% l& q1 [ n; a* v( o. } l6 P
4 ~0 ?" q0 x0 }* `, v/ @5 N
// ±ao? ?D?í???ó á¤à?
- W4 [9 q2 c& C+ E& `& y$ ~
m_pd3dDevice->SetMaterial( &m_baseMaterial );
4 Y8 L5 E7 H1 Q# Z! T2 }& }
}* L6 d$ z% K) z0 ?# O& _. p
#endif // not WORLDSERVER
# l! E# b' ]" k
}
. J" s) y3 U/ L) p) K4 C! n6 _
并更换
& U ~6 p' ]- f7 U7 D
Code:
; i8 J5 h) M3 _- N+ r1 U
__FLYFF_INITPAGE_EXT
6 y' a/ [1 ~8 G) Z7 I4 p
定义
. m# l/ n# O+ u/ E4 [" {1 N
- N) L) w; u+ I$ u$ }, z& U
# r( z" f) \. e! l
, ^4 g" H" U5 S" @1 j$ V4 B' l
* O k+ N- R+ J; f
现在终于删除我的狗屁加速...
. w+ ^6 G5 D- Y S7 ]
( e) g2 E3 \6 x* ~+ G
S8 m7 Y' ~+ B$ @
+ }3 d* E$ ^1 U# K( C
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2