飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
) `' W) {5 J. O& W
尾翼:
" ~% d; _4 w, L" h
! Q8 d+ L) y: M" s% u# N
代码:
; z$ w) O# _% g( ~! L
CWndAutoFood::CWndAutoFood()
$ }) w; c( ]# M9 N2 H, L7 U' Q; F
{
$ c2 P( v) Y P& t( l
m_pItemElem = NULL;
5 R5 ~: k. u" n
m_pTexture = NULL;
4 f# g3 B2 @& A
bStart = FALSE;
# @; t& e: F) ~0 f
}
7 e2 A K, Q" k# d1 v
7 V8 h! j$ ~+ _% D/ |
CWndAutoFood::~CWndAutoFood()
: V8 m8 n* w! m7 `% x
{
0 Q; e! J0 u$ S. a) }' }$ @3 }3 h ]/ N# _
AfxMessageBox( "AutoFood ist gestorben
" );
6 C( @* D- i1 B' F" ~ @# A# A
}
# c4 d& ^/ }. C7 A
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
" ?' ~9 D7 V$ {9 _( B! t1 p& X
{
; O) c } u/ |) v/ z
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
/ d5 x$ m& B6 ^3 u# e. m; x
}
4 y( D& M3 H: G/ | Z- a
' I; G- E& R+ [" S0 Z" _
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
. j( u/ A% }0 l4 ]6 D
{
7 J: {; w4 L& z# v
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* Q8 j* P5 m3 ], ^7 [# z9 ]
CRect rect = pWndCtrl->rect;
M" D$ L/ |: g2 S
if( rect && rect.PtInRect( point ) )
! q" r8 g) }* Z7 T1 N
{
2 k; E" D. j- l! F" q; }2 l
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
9 V$ W* f$ A. O9 Y. o9 E @- [
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
; u r `" N G
{
: E- M4 f ~! z) ?
if( m_pItemElem )
' @' K$ f" x: ^1 J0 X7 k( P+ w
{
# g0 q( A8 q' G
m_pItemElem = NULL;
$ [2 X2 \3 { }* C5 a% \
}
5 a2 b4 z( c" `/ f8 @+ g
m_pItemElem = pItemElem;
' K" T+ B6 Q: q0 L/ d
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
4 M7 j6 w' R8 p: g4 \4 u, C
}else{
8 T/ ^/ A7 |# F
SetForbid( TRUE );
2 {6 ^8 W0 Q; {& @! G4 b
}
8 u4 T, ~1 z# L$ y/ R
}else{
8 T4 \9 N1 ]+ @( M$ C
SetForbid( TRUE );
& h |. ?, J. `
}
M( x7 \8 g, ^/ S$ K8 M8 A
return TRUE;
) c6 p) \2 F& p8 o4 {0 O* _
}
. o3 a" b8 T) D5 W& Y; u
7 h( U2 X. @% X% ^3 d$ T/ T6 O
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
! R# w$ G& |& H+ F- S" d# u& [& w
{
( p9 r4 d z1 U2 c1 l0 I% Q. \0 a
switch( nID )
1 w. _& n2 i* }! G$ u- Q: E5 h
{
4 o7 d" \0 b. v" {
case WIDC_BUTTON3:
, Y* ?) {- o1 _ a' H. y
{
1 Z4 X% A6 U! {
bStart = TRUE;
% _9 c- k0 O$ o/ ]( G
break;
, K3 e+ s" { b
}
9 p! _( R, _* }/ V3 r" c
case WIDC_BUTTON4:
/ {; }! e8 s2 @7 U. ~3 q
{
- P: C6 J- L! X7 B
bStart = FALSE;
8 C1 W# }4 |& ?/ \# c
break;
' F B) C1 \: c! ?1 ?+ [5 h
}
& r+ A5 u! X' u* m
}
3 n# x$ G& H4 v8 T% O5 }( x0 _3 R4 D% g
return CWndNeuz::OnChildNotify( message, nID, pLResult );
$ T) H* u x5 g3 p O3 R$ ]
}
$ a1 v4 A8 ~ o a3 [( |8 i( C8 f
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
- F6 b7 h) K2 A! `! W
{
! q% W9 S7 s7 v' W
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
% c8 i/ s. W! I' q. e5 O1 e) b& I8 o
if( bStart || !m_pItemElem )
" f. z: a0 Q e& g
{
$ g0 p$ g1 J! O1 R
pBtn->EnableWindow( FALSE );
+ q2 W" \0 S& j7 n4 s
}else
3 y) i+ F: `1 v; U$ }
pBtn->EnableWindow( TRUE );
- R, Z4 D4 e% U! d( U4 E
if( m_pTexture )
9 l3 v# U+ d) p, Y/ n6 Y
{
6 ]' H9 S# a' {- \4 v
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 D- u( J* k& @
if( wndCtrl && wndCtrl->rect )
0 U2 H( R0 U2 G- b) \5 u
{
1 h, n+ a+ u9 s) h" W; A8 V+ I
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
# i% Y+ _: ~( j$ J" I
}
; J" F# B+ _5 C& V6 t
}
# N% k% N1 \. v" D
}
6 a1 H9 h0 E( o/ H% p8 L
( u( n# c$ G/ n- Z2 R
BOOL CWndAutoFood:
rocess()
! x8 A. I+ H5 O2 z3 G) Z' M8 |
{
7 [9 B8 h' `: K! U" U( D7 F1 {
if( bStart )
1 c; O4 _4 @' X+ p0 o2 r0 Y
{
1 M$ z# \9 t/ w5 A8 \# |
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
# |5 k8 Z, F7 s; s
{
" @( W* {1 D. Q. E% I
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 G4 n1 | ?$ Q Z' m
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
6 I7 T9 o7 e2 i, S
}else{
# B: g5 \; c: }4 ^1 i; U9 g! c6 o7 A5 z
bStart = FALSE;
8 w/ x& r1 [) c# j: k; w( h
m_pItemElem = NULL;
; Z/ W/ y: @9 _4 N$ B+ ]: c
}
' F7 Q& n5 _0 t( V8 @% X( Q
}
( q1 u }) F, l# ^" a9 b7 h
return TRUE;
+ U: E: `/ B7 u- H
}
& [5 o4 d) u+ ~& z( ]' H
/ }, t1 u! b b% {
登录视频废话:
3 |( C1 G4 l6 J) ?
尾翼:
+ D/ U+ B; c$ q% m
" x2 w' V) D* _% [8 H& U1 J) t$ w
代码:
( w, ] e+ x6 ?0 ]
; Z9 }- W) S8 [: z1 O! A! b
void CWorld::SetLight( BOOL bLight )
; U3 s5 j/ | D5 O9 F5 {; d
durch
0 H. W- ~9 z) _0 H
Code:
% V6 d1 m2 m9 {+ p5 f. n3 k
void CWorld::SetLight( BOOL bLight )
w# }1 I5 [, \9 `5 u% N+ c
{
- m0 F0 ]/ l, E- `7 r+ ~' { T5 o3 P
//ACE("SetLight %d \n", bLight);
6 d( C5 H! J' B: y
3 w2 E: [+ k9 X) Z+ m$ P1 p
#ifndef __WORLDSERVER
* ^( P% A }# V7 N8 y, a/ y, s
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
% ~2 P- M5 m' U+ [4 N) _4 b3 S
CLight* pLight = NULL;
0 r9 t) N6 A7 z* P2 F+ y
8 j% V9 }& u' J& J" R6 u
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
2 _ b! i3 l. P8 }( W
. B6 M. D# h" Q0 f+ A: X
pLight = GetLight( "direction" );
5 a1 U+ d/ p' A) o( Z
; f9 u/ O/ Z/ ]" i) b8 q$ l+ v
#if __VER >= 15 // __BS_CHANGING_ENVIR
4 b8 f7 g+ @4 E8 A& C, h
if( g_pPlayer ){
" D3 j3 n8 z+ ]# g s
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
* Q4 y- w4 Z: j, W% X% A
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
% y! F7 x1 A0 w* W+ t- c
{
) z; \% u3 H# H
if( pLight )
' ]1 w2 `6 s" H
{
+ G% W! B1 d7 n# O; j5 @/ ]
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
3 `' w. m1 `* x2 C
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
6 h) w- z" z, t0 R1 v6 ~% M
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
: B6 _" ~* l8 z( ` ^4 S$ J
6 V' q& j; h5 _7 r
pLight->Specular.r = 2.0f;
+ H$ u# ?$ A3 ]' @) I! X
pLight->Specular.g = 2.0f;
$ L' \+ P0 a2 [5 ^
pLight->Specular.b = 2.0f;
7 y# F3 Z' `# I4 V9 n x9 `
" v8 r1 d0 K! I1 A: ?# f
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
: b& i8 P/ p1 _; f( Y; ]
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
# u$ ~: H V% z) E& C/ W- |0 C
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
# h& T4 j k+ Y5 _6 h) \$ D
! j# z4 E; K& j6 F3 U( ?
HookUpdateLight( pLight );
1 n% S' g2 h7 H6 ]; V \
1 [, U) P0 s! R" Z7 J
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
b* Y" }, `+ x3 \( j3 Y
, @) k% l: A7 \1 }
pLight->Diffuse.r *= 1.2f;
% w) L3 U, t8 p& T# P
pLight->Diffuse.g *= 1.2f;
9 Y$ m; E4 c2 e; C& | [
pLight->Diffuse.b *= 1.2f;
, q1 V& ]8 \2 h2 O4 ]& A. f5 x
& D; q2 z! d+ P! [( a
pLight->Ambient.r *= 0.8f;
X% u9 F2 d/ _/ z) k; |5 I
pLight->Ambient.g *= 0.8f;
# R4 Y! Y& X$ t: R
pLight->Ambient.b *= 0.8f;
x- e( J9 O8 Q6 @% z# g! B
6 N6 J- f4 S" i6 h
memcpy( &m_light, pLight, sizeof( m_light ) );
Q, K! I8 z4 T3 _' q
' F5 q! r7 W: ~! U- i1 A
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
T+ d+ r r+ Z/ i' B7 t& G
D3DXVec3Normalize(&(vecSun),&(vecSun));
/ R0 w, H, t! |, ~1 @5 O7 K
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ x$ l0 o$ Y: o. [' t2 Z' e' [
pLight->Appear( m_pd3dDevice, TRUE );
5 _; e+ ]; _% |# H, p: ^
+ T; k) X, ?6 q1 n1 f$ O1 g! ~. g' B
DWORD dwR, dwG, dwB;
O5 k9 l0 x8 W8 W9 k: v
dwR = (DWORD)( pLight->Ambient.r * 255 );
9 T# D$ W) \& a/ n
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 `, h, C- ^! j9 E- p% w, f& J
dwB = (DWORD)( pLight->Ambient.b * 255 );
% n, }& r6 s9 Q, r, i
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
E6 h& Q4 o! A
}
/ P. g6 B# }8 n
}
- Y5 e, ?* Q% W$ M: L
}
# L C: O/ ~5 d$ O, L
else
: k/ h/ Z" r0 L, z
#endif
/ P0 Z" ?* Q% Q: x1 Y
* A$ B+ @3 ^+ y
if( m_bIsIndoor )
~4 Z8 v$ U. C! ~6 x7 M
{
5 x3 T6 _3 }* ` [& {( S
if( pLight )
8 M) y% R- r; O
{
6 U% z4 b/ G! L j0 J/ B
// à??μ oˉè*
$ V+ K% w+ E0 V
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
+ {) s X/ x7 g, r$ `! J
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
3 M# R, W( O1 R9 J7 a, P
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
# A: u% G. n/ k/ t# _! R {4 Z [
5 A* b, L& |' s4 P5 _% e
// oˉè* ??à?
8 l9 |4 E8 p- ^- M! l
pLight->Specular.r = 1.0f;
! W7 N' X3 p! }& C; s
pLight->Specular.g = 1.0f;
! E* |1 P3 ~; D' g- S4 d! j
pLight->Specular.b = 1.0f;
/ U- H! y/ Y9 I7 A( o3 A
// àü?? oˉè*
) m- ~3 u3 @5 L2 t& c' W
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
: {# g! }! K$ C+ u9 Y
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
$ f* a' z" {! Q# k$ h$ U4 f1 Z: e. \
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
# Y7 h! d* {5 H
: u# l% E" z7 w0 c- S' y$ t
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
6 X6 }- }2 h( Z3 l1 A: f* }) V
{
" l5 J2 j/ z, Y( G; q2 N* t: H
pLight->Diffuse.r *= 0.6f;
5 _$ H4 t! e/ ~+ F1 l* {
pLight->Diffuse.g *= 0.6f;
2 x1 Y4 r d9 }; o, {' M
pLight->Diffuse.b *= 0.6f;
. i6 {& V% k% j6 u+ Y& ~: X/ @
pLight->Ambient.r *= 0.7f;
5 {. U$ ~8 H2 W
pLight->Ambient.g *= 0.7f;
8 K, B5 {7 u+ Y9 i; y1 J6 C
pLight->Ambient.b *= 0.7f;
* T. h) N5 h) Q; Y% E2 g+ ?
}
/ h6 p9 a l# u2 W
1 k% A, Q& T6 J+ v7 {2 e# |
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 ^& V5 R% ]" p- Q
if( g_pPlayer )
5 }6 Q' Q7 O3 f) I a) [- J9 z
HookUpdateLight( pLight );
+ z& F/ h9 ~; p( W3 y" R- }9 j. Z
#endif
. L9 r V8 \; \ x% s
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' t5 ~7 u0 b5 z4 \5 J z9 X( h2 k
3 y+ S6 s/ o. c# s/ e- R( K5 i' W
pLight->Diffuse.r += 0.1f;
! n q7 O; P" J' T
pLight->Diffuse.g += 0.1f;
! v3 q' Y( K$ _9 q! O
pLight->Diffuse.b += 0.1f;
1 s9 [/ @! d" `0 z. R2 x' p' L
// oˉè* ??à?
' S4 z3 J3 h% X! w0 G- h$ v
pLight->Specular.r = 2.0f;
: r6 s# R% W( Q6 r
pLight->Specular.g = 2.0f;
# \; [$ n% P# G- ~+ q* t E
pLight->Specular.b = 2.0f;
7 L5 p" x V5 n1 [) { i
// á?oˉ
$ p0 F' C* w# S K( o G5 a/ B
pLight->Ambient.r *= 0.9f;
$ K+ X i1 u* j" |1 S. W
pLight->Ambient.g *= 0.9f;
$ R' c* k. B; d) @
pLight->Ambient.b *= 0.9f;
* `5 }2 i0 Z% o
H' Q% h8 }" H
memcpy( &m_light, pLight, sizeof( m_light ) );
' {* c& W; i0 D
) T/ Z/ F1 p* `- p$ f) A* g6 c
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
7 k ?9 X; C5 u* P9 \7 P
pLight->Appear( m_pd3dDevice, TRUE );
7 c1 I- ]7 x! F/ j" y+ n* o
" B- `$ k2 R3 a3 t
DWORD dwR, dwG, dwB;
* w# O8 G1 p v+ c, x! P5 c
dwR = (DWORD)( pLight->Ambient.r * 255 );
; t# Y# O! z, H" }! _8 F
dwG = (DWORD)( pLight->Ambient.g * 255 );
& a Y, e. g* j
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 k, R. Z: r3 \# ?; T @4 B
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. n) s. Q* ^5 D. h5 G' Z' I. V" l; H
}
6 v) ?# T5 \- H2 }8 ]+ K7 b/ {
}
$ x5 e! ^8 ?) k& I [* S3 \1 Y6 ?0 i
else
/ n( [! |, z/ f& V A; w
{
7 e2 J, N5 W+ e+ T7 Q$ b, I
if( pLight )
2 b& U/ F. l0 K* E9 p
{
0 ~' F0 f* i3 I! F
8 x r) U( K8 q- `* t
int nHour = 8, nMin = 0;
% O9 N# h1 C- Y/ I& u5 Q7 C* L
#ifdef __CLIENT
5 i& r2 S ~% k9 {& e/ |0 q- v
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
6 s' q. M: F3 `4 @. G, j
nHour = g_GameTimer.m_nHour;
X. }, U4 C. O8 J ~5 O6 F: X' ?
nMin = g_GameTimer.m_nMin ;
$ k3 K6 n) C! a- c0 `7 Y
#else
1 X0 I" V/ H7 m
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
4 t9 q9 h5 |2 @( |
if( m_nLightType == 1 )
9 V" ^+ ^) Y- A5 G: N7 b
nHour = m_nLightHour;
% ~$ h% O+ P& z4 P. x a# _
#endif
3 A( M8 ]* l+ i2 Y8 [
nHour--;
1 d2 v! ]& C& r x1 Q) Q9 w+ d
if( nHour < 0 ) nHour = 0;
0 D% t# G1 |! k3 Y$ e* n
if( nHour > 23 ) nHour = 23;
( Q" A- S$ X+ L8 G0 B, f
) V0 O/ H' C" j3 h% I" `9 \/ N' _
//if( m_bFixedHour )
! P! [: w% r$ g1 u8 o" l0 e
// nHour = m_nFixedHour, nMin = 0;
1 k& o; n4 a! s1 d$ v" \
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
" i, b1 @. {7 N5 b! t3 j
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
( c: J. t2 g r4 |; t
# Y+ {0 i! f% Q7 t% G- D
//m_lightColor = lightColorPrv;
6 Z5 N+ m4 s. E$ q7 x2 @ [
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
/ _1 R _. x0 H3 ^1 w& e: _7 u8 p
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
; t/ [7 k0 z) h$ S% y
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% d3 j9 x, M6 t7 o
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
& S; K; z9 o/ e9 q4 a1 D
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
& |$ ?7 \0 j) ?# k! V9 A) T; q
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
" N& z5 m$ ?0 u' g9 r: B5 Y" J! |
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
" l! ?% |+ {% `) J! U: R; S6 y
' b8 i8 d' B# r1 G6 n8 y
// à??μ oˉè*
$ v# s1 K8 Z" B: @" ^% y
pLight->Diffuse.r = lightColorPrv.r1;
7 ?& _: a6 c% o0 {+ i9 \
pLight->Diffuse.g = lightColorPrv.g1;
" K$ o8 I- u% q( a- t/ O7 B3 E: q# Y! u
pLight->Diffuse.b = lightColorPrv.b1;
! C8 @3 I7 L# N8 b. T0 u% D& u
// oˉè* ??à?
5 @, Z4 F& H8 B" A, I& q2 g
pLight->Specular.r = 1.0f;
* V6 Y& l+ [& `& U1 p
pLight->Specular.g = 1.0f;
9 c% W( Y1 U; k+ ^5 P
pLight->Specular.b = 1.0f;
# b3 f; g. S5 m: f6 N" P* T, M- w
// àü?? oˉè*
r5 x8 f: {/ d- X; E* E2 @' W* T
pLight->Ambient.r = lightColorPrv.r2;
+ e. H+ X; p# }1 L
pLight->Ambient.g = lightColorPrv.g2;
0 p' H* i/ A- \; N$ G6 |1 U% N
pLight->Ambient.b = lightColorPrv.b2;
9 f; F9 C1 |# h6 T, N3 ^% u4 z
+ u* x. T( V5 B! f8 s0 z
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ l- f7 v% R5 x
{
5 ~8 E5 {4 n3 M
pLight->Diffuse.r *= 0.6f;
7 a) m: [. u3 K: o3 U6 K
pLight->Diffuse.g *= 0.6f;
% n& [) h8 O" S6 r
pLight->Diffuse.b *= 0.6f;
8 _3 E3 ?6 I* i! ?% a
pLight->Ambient.r *= 0.7f;
( \& s4 E; `# L, z' t
pLight->Ambient.g *= 0.7f;
! }. {! a" ~( }- D
pLight->Ambient.b *= 0.7f;
+ j; d: a7 Y) ~5 c% |* L( e# D9 Y
}
: J6 M/ L& G+ K! L. c
7 m1 U1 h8 G' B# J* W
#if __VER >= 15 // __BS_CHANGING_ENVIR
* q( t7 t, G' @0 a- k, Y- q4 ~
if( g_pPlayer )
8 A! G: p W; U& v
HookUpdateLight( pLight );
: l6 Z/ }8 s! D2 j+ v, I
#endif
8 m+ v H7 K" ^: h
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 C- I- I5 g: Z5 }* s; _5 d
0 s: S! R: d e5 C- J5 V% ~
#ifdef __YENV
' }1 B( v) `2 b5 b
pLight->Diffuse.r *= 1.1f;
$ }. X/ I; o7 U9 a) d( r
pLight->Diffuse.g *= 1.1f;
1 o+ t8 h0 b1 b! w" J4 ^1 H
pLight->Diffuse.b *= 1.1f;
( b8 @, V) m* h7 ?9 t
// oˉè* ??à?
4 g1 N, k' E, x; }( X6 `. E
pLight->Specular.r = 2.0f;
2 `4 `& j5 J. }! g) C. C
pLight->Specular.g = 2.0f;
4 D5 [/ W# K+ @8 @5 `* m' W' |1 f
pLight->Specular.b = 2.0f;
3 a9 ~3 c' ^6 A* w/ i
// á?oˉ
9 q& t A* v% W* c! P. z- W# b& S
pLight->Ambient.r *= 1.0f;
, F2 y" S5 D% `% X3 t0 y- e
pLight->Ambient.g *= 1.0f;
% V- g& @) b7 F7 b+ e" H' }+ o ]
pLight->Ambient.b *= 1.0f;
( S0 z; S! K5 S
#else //__YENV
8 a& P5 H3 f3 B# t! r) w* [
pLight->Diffuse.r *= 1.1f;
& y+ c+ c( a1 F! Q4 `' O" b
pLight->Diffuse.g *= 1.1f;
% @) V* K" q2 k3 Q9 Z3 f
pLight->Diffuse.b *= 1.1f;
' z! o+ e5 d. K& N: K
// oˉè* ??à?
1 H6 o2 K b+ s9 Q9 l+ [
pLight->Specular.r = 2.0f;
0 L4 y4 K- _' s% E
pLight->Specular.g = 2.0f;
i$ x: X2 Y$ W) I
pLight->Specular.b = 2.0f;
* T% Q+ J1 }' n/ E) | f4 V
// á?oˉ
5 b/ v9 J! g6 r. q! O
pLight->Ambient.r *= 0.9f;
. T/ Q0 X0 Z$ X; x5 u5 R% z
pLight->Ambient.g *= 0.9f;
% f+ g; r6 D) Z
pLight->Ambient.b *= 0.9f;
( }) {- ?0 s" C* T- x6 \2 `
#endif //__YENV
7 ~: D3 F! S+ e
. w( g2 U. `; ^+ t" b
memcpy( &m_light, pLight, sizeof( m_light ) );
; Q& a- k+ u; z$ t, q, v( R& R2 ~
, K4 B( B% F8 W# A( S, D
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
% X9 p/ O9 W- r* N1 n5 ^
D3DXMATRIX matTemp;
2 J- N3 P" [; w5 G; v) M: C
static const float CONS_VAL = 3.1415926f / 180.f;
- |0 V* V* _. w/ K5 P
: `" @" X0 R2 _ p6 t
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
. [# }* R7 a9 |5 y4 l1 y( m% Q5 }
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
2 d8 g0 ]% s2 O# d6 ~: Q
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
' s$ O: l a+ @/ Q
pLight->Appear( m_pd3dDevice, TRUE );
# D. M1 E% L1 d: }9 g5 g
. ^: _7 b: ~7 Z' e
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% d% [7 e2 E* u1 n0 L
// D3DXVec3Normalize(&(vecSun),&(vecSun));
3 _8 V9 H ^$ e( i/ r, @
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 ^/ M! g4 p4 Q: S3 b
3 e7 Y V: R# b5 o2 b+ U
DWORD dwR, dwG, dwB;
# `; m: [* L$ M0 G+ a
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 [: y3 v# K. I) D: V; G" y$ w
dwG = (DWORD)( pLight->Ambient.g * 255 );
! {4 q! `. J7 h
dwB = (DWORD)( pLight->Ambient.b * 255 );
6 ], `9 y. y) A9 D- n! \4 i3 E
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- o: \3 r) w6 m
}
9 Y. Q; f- Q- {9 G6 k
}
$ m$ p% \. `9 M0 m9 t9 D
2 C. z' C$ S6 ? @# L7 g6 g
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
) v% r/ c. a$ ]4 _
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 T$ C* U0 @6 E8 I7 }
::SetLight( bLight );
h1 j* P' N' Y( v
0 H1 l: B; h# F& A0 e* A
// ±ao? ?D?í???ó á¤à?
' g; I# o/ r1 y2 C( c; E
m_pd3dDevice->SetMaterial( &m_baseMaterial );
" M0 u: T' F2 x$ X
, m6 F. }! X6 B. L' R- e5 N/ Y
#endif // not WORLDSERVER
/ [& P( {* e" u# z& o- Z4 l0 K
}
! W. V8 t [) f% {& i* t
并更换
, T) @$ n6 f- Q, N5 [2 `! t. i
Code:
# d k6 K& ]6 x
__FLYFF_INITPAGE_EXT
; i* m' M* ]: w7 z+ N3 M2 b7 N `
定义
; Y: L- a% y" c' ]# h4 l2 z* _ K( k% p0 Z
7 l d: U6 c1 F- B
+ i. o* e4 g# z7 M. ^0 g7 p! ?
$ b, X: u- m/ _. D" q
6 r: a4 w7 C( H# e8 e" c J5 _
现在终于删除我的狗屁加速...
4 B; Y3 [9 j) T) N+ _& Z9 P" q9 D
; H; X" B; q! J1 N6 d4 g* D
6 b$ p: r$ ^3 B
* Y' d5 c3 h6 B
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2