飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
" ?' W! T0 D4 m) @) e
尾翼:
+ E! h1 l I8 d) X8 i
1 N$ J9 A! l) J4 s$ a6 p
代码:
2 e7 W& S! }8 m& |
CWndAutoFood::CWndAutoFood()
+ s* I+ |" Q A: o
{
" y" K* n: A9 p3 Q7 G9 V
m_pItemElem = NULL;
1 z$ O5 q( u; C4 c) v& v, i% ]$ b
m_pTexture = NULL;
, e1 u/ f: W5 Y! n0 J& f
bStart = FALSE;
" E" R% D6 ~% g5 V% w8 O$ u
}
) G5 x4 f6 }. Q, l( I
9 C4 c$ E* `( S0 M) _% o) ^9 F
CWndAutoFood::~CWndAutoFood()
; t: n: c& s9 |; d# s+ v* i9 v
{
+ q& _ e1 y: m9 b }# j1 V
AfxMessageBox( "AutoFood ist gestorben
" );
$ L, ~) X- J$ e+ S
}
9 M8 X [6 B, K$ J" [0 U
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
# F/ t$ X, Y# g5 l
{
# ^5 U" {; B3 I/ b1 X" p
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
c! L: \* d* S6 H; [1 W
}
8 S- I# ?! ]/ o3 |- D$ i
* J6 p h9 C3 p4 a5 d8 Z
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
6 w. D+ v3 o5 G7 m: V7 ~; @
{
2 E3 K! m1 ]' H4 {) P- z2 k
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
9 e# K1 ~2 m% |) w. C1 H* Y8 z3 F
CRect rect = pWndCtrl->rect;
4 N) Q/ v* n( ~0 ]
if( rect && rect.PtInRect( point ) )
7 W$ z2 P. a o
{
8 g+ m, @! X5 ?5 x) X% k* t
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
% p& \5 T9 T2 U8 _+ N/ X2 {
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
7 I! |6 A1 E% j& N( Q/ P/ i# Y
{
$ W- ?9 |0 I N/ m0 A
if( m_pItemElem )
" p& D7 T/ e6 A9 }
{
% x' n x1 I& P6 s
m_pItemElem = NULL;
8 Z& J1 [& M$ U5 v4 j9 ~8 ?' Z
}
9 e* L. Y b( a! m7 s
m_pItemElem = pItemElem;
0 @; F" U( S: y9 g
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
8 N; N6 M3 m, h2 p0 b3 `% | H
}else{
) @# V2 C$ h& r
SetForbid( TRUE );
1 B# _# ?0 F8 i/ G. a4 r
}
5 o& K2 _( {7 E9 q8 m& a
}else{
) ?' _; t: F& A x' b$ }6 J
SetForbid( TRUE );
9 z: Y' @0 e1 E3 H/ Q
}
( E/ u) \& h( d
return TRUE;
: a. d/ Q& D4 z- P# ?) c% P
}
& r4 U- O0 }2 s- s) q8 ?7 R
: |. T* T3 s0 v
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
" i9 t& X8 ~+ q9 F1 N. Q1 o9 o
{
9 O- ]6 q2 ?! B- y6 W
switch( nID )
+ p( W7 k5 g2 L" _" I' F* n& X
{
! M+ T! H& n2 z( H0 V
case WIDC_BUTTON3:
& _6 i3 k4 `- F1 K. S2 i* \
{
; c, y7 Q7 I+ M1 o" p$ u/ S9 s4 l
bStart = TRUE;
, |# e% v: m4 W' W
break;
, ^; \( P: z! m0 a# g
}
8 H- A+ k- {2 q1 C) |* z9 \
case WIDC_BUTTON4:
; b7 V$ @* T5 y2 n6 d( {# j$ D5 v
{
# i" r* q) @/ L% U
bStart = FALSE;
' D) O/ l: l9 n( o/ k! M, B2 w* C
break;
) f# Y% N$ K4 Q0 i( ]
}
) c8 H4 R C7 G% R4 n2 X3 Z* M
}
: P5 m0 K' V! _7 R( A2 C7 n
return CWndNeuz::OnChildNotify( message, nID, pLResult );
4 `3 g, F; i. \ e5 c; U
}
3 F4 b W5 g* H! Z& c
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
* p2 N e( S! @4 J/ T) @7 P
{
8 Z) z! _. ~- P- e: X
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
9 _& ]( H m( z
if( bStart || !m_pItemElem )
! r+ @4 Q4 v! n2 J6 ~) V
{
& ~* K( V4 o7 G+ Z# e8 y
pBtn->EnableWindow( FALSE );
: F; E' m8 q5 }7 r. I
}else
: V( }& N$ J3 o6 `" z3 l
pBtn->EnableWindow( TRUE );
4 n# H5 v D( N! h8 b. r+ a
if( m_pTexture )
. M$ \0 Y4 o1 l: n; `/ v1 h; H
{
7 z! G+ Y* ? j
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
: y4 P4 @9 ?8 `% X& T3 B0 E
if( wndCtrl && wndCtrl->rect )
/ o" U* M8 i- x- U% b/ [
{
: m- Y: ~& W- X3 D+ C k
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
( _2 w1 p1 _3 P) @ u
}
/ I$ Q! X/ W) P" W2 H
}
' s7 n q8 v1 ?# Z
}
/ B/ B. F3 J8 M" I. X$ c
- [: {7 `5 k# z( ^ K
BOOL CWndAutoFood:
rocess()
5 A0 ^1 m6 o4 A, A
{
% N1 P7 i: `4 R- r3 u$ x4 R8 Q
if( bStart )
3 H2 i2 B1 ~# K4 a1 q/ p# G* }
{
$ K& @5 E- h3 b
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
; l" l) B- z" z* ]9 o
{
7 j" _& K7 U( R
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
8 t# E$ q2 W- S$ S- p
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
& h3 \$ Z8 p3 c b% `# V; T' R3 C
}else{
% N; ~" C( o m5 k
bStart = FALSE;
- }* G$ v% }: s$ z! I
m_pItemElem = NULL;
% d$ D% E! J* S" R" ?
}
' D9 r6 e7 O+ w, y
}
1 M3 V2 `& v3 ?) c
return TRUE;
$ O& z/ f9 P* m3 l: G( k j
}
2 O. s# p2 c5 ^# H
. S( M0 l) `: z- T6 [7 v& Y. U D
登录视频废话:
. X3 }- F$ f2 }. F( w! o& i* h- y7 S- _
尾翼:
2 I( }) h# L& F
: W1 \; u5 I- n8 I+ v' O+ a
代码:
( E6 a- G& }5 |" h
, w/ M: Q: ]6 Z" G& ^) o- i3 P
void CWorld::SetLight( BOOL bLight )
2 t$ C8 f- G" a' w
durch
3 h2 D' }: q& }2 M* S% y' l
Code:
0 t; e5 }% k4 R& H+ I
void CWorld::SetLight( BOOL bLight )
: q; |, O' ?8 W+ y( a* B" o: e
{
8 t) V9 B2 @/ U" I+ |
//ACE("SetLight %d \n", bLight);
- ?+ m+ X2 ?. v
" n+ {: s& I) c, z7 Q, ]
#ifndef __WORLDSERVER
9 V+ o: i2 N) p$ S
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
% C i p! L$ g: S
CLight* pLight = NULL;
# p3 n. E# {" B* F7 B) m& z2 B
! _9 E! M! a3 P
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
4 @# V B% y' |: d0 J) o( W( n
% H" w0 f+ r' z9 P+ U2 E, p
pLight = GetLight( "direction" );
; Y# U# X: i/ k! _$ J1 b
( l. o9 v) G1 I+ r/ F
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ Z* Y& X' d [
if( g_pPlayer ){
0 _" U" R2 q, A6 u6 B
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
. C: j. h, {0 o, \+ S
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
' w. m& W0 J4 O D
{
" ^$ V) N6 X% {% x# p! g$ g
if( pLight )
( }" K8 y( M( C0 y& b
{
( l- ^$ B5 Y @( |. ?+ h% V0 E7 C5 D
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
2 P) X. m4 }( w4 M& S; p& y
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
" i! }# y8 ]8 n! R6 d
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
' [& i% H3 K$ Q+ \6 o
9 }' s* C; [& o) v9 @& O- l; L ~
pLight->Specular.r = 2.0f;
' E7 X2 a5 G, \
pLight->Specular.g = 2.0f;
0 z0 c/ ^* `- g9 `' v* ?% @, ~. ]
pLight->Specular.b = 2.0f;
$ c/ u, v0 U4 N1 u# w$ S2 v
0 K+ v9 {6 T- A% V2 d
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
8 X5 ]7 z, ]! }7 i8 Z
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
+ W8 h2 M0 r! V9 W k9 Q
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 J& L8 w. [# c& d
) d( R# T1 D8 o' l7 I
HookUpdateLight( pLight );
f" {' O& m' _9 H1 S
- j) O8 c. K+ @1 N: D
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 ]* I3 K6 i5 y6 }$ B! o
9 V/ G! u0 q4 E
pLight->Diffuse.r *= 1.2f;
. `& P3 I# ~/ J3 a' {2 {1 r" x+ o- K
pLight->Diffuse.g *= 1.2f;
1 }' Q4 u+ d6 Z$ y
pLight->Diffuse.b *= 1.2f;
; m" ]( X2 W9 N4 L8 `9 Z" q
- w# S9 r+ h2 N3 Q; _" w( b
pLight->Ambient.r *= 0.8f;
! P. ?; i% R/ X( {/ [) t9 F1 G
pLight->Ambient.g *= 0.8f;
! `' J7 a P8 R- \
pLight->Ambient.b *= 0.8f;
; w" s4 ^% Q( Q& U `* F
6 b+ U( @/ E( ]/ `
memcpy( &m_light, pLight, sizeof( m_light ) );
7 Q6 H6 k. f/ u% X3 [
& S1 d- s. D P* F$ G
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; L6 q( L1 q$ A! i4 W4 |% n2 i
D3DXVec3Normalize(&(vecSun),&(vecSun));
6 _+ m; N. f( d7 {- ~ a6 Q
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
7 H: P( G$ O) p5 b0 d) {
pLight->Appear( m_pd3dDevice, TRUE );
: [& X8 _, j6 Q
8 U/ d" V$ U% O6 T
DWORD dwR, dwG, dwB;
2 r1 S& r8 N0 ]! c6 [ ?: [
dwR = (DWORD)( pLight->Ambient.r * 255 );
; o4 z4 Q% M: a; M: z
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 N; J8 W& k3 x r' \! \2 Q
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ X5 D* H- q" W4 H1 h, h# P9 ^7 b$ q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" U5 i5 @; a9 U/ F; T8 Y
}
. I1 `7 J2 W; `
}
% E/ S% u6 z8 f: ]
}
0 Y0 }+ @9 ]* X9 ?! C8 g, Z
else
+ k& J& ^6 G: f& D& G
#endif
# r, _9 \' G4 O/ S9 m; s% l
5 U7 h- a. _9 Z# o/ B8 e
if( m_bIsIndoor )
! H4 @# G3 Q5 q) d: B; |+ y) _
{
! t- `" J4 J, k# F) J
if( pLight )
+ e" z1 o) w6 M8 A# k: B
{
7 i* C3 J, w' r) W$ a
// à??μ oˉè*
$ p% S, N5 o7 `( `: T# f6 x
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
9 A8 x; _- b' s( y/ ? V/ W; t2 @
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
* T9 n, E& V6 ^/ A6 E0 b
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
! {/ t* b9 E3 ]& L+ K7 I
4 T' u, s5 Z' a0 | _# Z
// oˉè* ??à?
! ~5 s3 P' C1 A3 I
pLight->Specular.r = 1.0f;
- h7 c+ ~! V" Z, `, U& g9 b8 `
pLight->Specular.g = 1.0f;
. ~3 v, ~; L# T
pLight->Specular.b = 1.0f;
: ^; u6 ~4 p( s$ {5 `0 ^* V/ T
// àü?? oˉè*
. @; U$ a( i5 o8 m) V
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
4 N. C7 p! P, F6 o# p$ G: K
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
6 t# I+ `( q. t% i9 Z) d
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
, |) {! f) H5 G, L, h" O5 u$ E8 l* b
. W: J1 A- q+ M$ _
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, `, G# ?% c) }* U7 Q7 s3 w
{
- ] d& O" R8 ^0 P/ c' V
pLight->Diffuse.r *= 0.6f;
1 u- _" n0 l9 S
pLight->Diffuse.g *= 0.6f;
! G8 r: A6 J6 M, D% {7 U8 D" C
pLight->Diffuse.b *= 0.6f;
3 P, c( v/ ~0 X ^/ ^3 G9 w
pLight->Ambient.r *= 0.7f;
1 x& M0 W" F9 s R: D, [$ S" A
pLight->Ambient.g *= 0.7f;
; Z8 ]9 d" u) W: j5 d8 C& ]+ e) s
pLight->Ambient.b *= 0.7f;
2 X" B, ]2 r4 P3 g" I J( I$ ~1 V5 y
}
3 g" l: o N: r L/ v' u. J
+ e5 ]+ } b& [1 s7 o0 v4 t4 _$ r
#if __VER >= 15 // __BS_CHANGING_ENVIR
* s/ H6 v) }% H
if( g_pPlayer )
7 R, l* k& u* \* \
HookUpdateLight( pLight );
, }2 |1 ]* f) R# R, B/ X
#endif
8 S/ ?+ E% {( L+ f
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 q+ \ F p; E- ?2 G. { H$ U
_/ j. j% e$ A. r w* l$ E
pLight->Diffuse.r += 0.1f;
; z6 V2 e* |5 G7 d, |6 L- S' C) [
pLight->Diffuse.g += 0.1f;
2 \+ F; h. ]' f2 H- m
pLight->Diffuse.b += 0.1f;
5 s; g2 ?6 ]( c, D5 r
// oˉè* ??à?
2 t) W0 c4 K( y' c, `; P
pLight->Specular.r = 2.0f;
H" _2 ^/ C6 m1 Y
pLight->Specular.g = 2.0f;
! B9 \! r* I9 K2 l5 j: o
pLight->Specular.b = 2.0f;
# A* m, t. l' |6 K# Y
// á?oˉ
5 k2 b9 U/ q" I1 ?6 W
pLight->Ambient.r *= 0.9f;
4 g( R; t4 B V2 O9 g' m2 n
pLight->Ambient.g *= 0.9f;
. O' t3 m4 b0 u1 p9 [- R! f9 c
pLight->Ambient.b *= 0.9f;
2 b* M' o. |! K: |
, X+ ?1 U7 j4 i, U
memcpy( &m_light, pLight, sizeof( m_light ) );
1 |+ s# G8 Z; k4 {2 ~2 s/ B
Q, M" {& y4 Y6 r" S1 M# S
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
$ p' s! M/ Z# K( `: ~$ r
pLight->Appear( m_pd3dDevice, TRUE );
8 R( I8 I& x- s
- x, ^2 j+ \1 o
DWORD dwR, dwG, dwB;
- o" L/ m& ~7 B( O$ }( b+ y
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 m) Q b2 ]6 o7 m0 U2 d# @
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 K4 N3 F" W F) C) F+ F8 Y
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ {: [# M+ `- P+ \6 C6 ~4 A, \
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
+ \% q, W8 y# @
}
& Y; G6 e5 q* d. f0 t
}
% ?4 v) d! Y4 }$ ?0 e6 J
else
1 U7 g, t& v5 P
{
* d4 N% N- D; I4 P9 f" M
if( pLight )
# d) ]! W0 R% n
{
* q0 m* K9 h" S
$ V; }4 X6 j6 M! q
int nHour = 8, nMin = 0;
/ p- P1 n! Q, F- _/ k9 L7 `
#ifdef __CLIENT
- {$ G2 E4 i8 o+ O: p2 u5 s
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
& C5 J. w* O/ ?
nHour = g_GameTimer.m_nHour;
5 o" x# c7 v; ^$ p4 b. W
nMin = g_GameTimer.m_nMin ;
$ Q I3 [. g8 r7 S. @( p
#else
3 N% u U5 X; ^2 o; \
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
8 r& g1 \: `! N! n" Y# ^9 J) f
if( m_nLightType == 1 )
" v5 P% }/ `0 A7 ]
nHour = m_nLightHour;
: D; x( w# Q) ~- s, G2 X
#endif
' A% J0 ]6 V/ t0 \5 ^0 n6 E2 F
nHour--;
0 A9 c& y# O3 t) @/ C: u
if( nHour < 0 ) nHour = 0;
7 @1 s, E7 t+ w
if( nHour > 23 ) nHour = 23;
3 [! M. g7 C* p
( R; m1 [9 b& ~8 @ f; K& W" a
//if( m_bFixedHour )
! ^1 v* m+ P5 u, B
// nHour = m_nFixedHour, nMin = 0;
) j/ N- q4 V# j6 s) I
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
/ l: C' z2 f9 P* Y
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
: T5 I! E% N+ G. [) E4 Q
6 c4 C0 k* x F( s5 H3 h
//m_lightColor = lightColorPrv;
+ e* t/ N9 B7 h3 q) J( A, P
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
* ^7 a& }/ k' i _ Z! w" D$ Z
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
. k+ M$ e; [: L7 u& u! p0 [; U
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) P7 l: w" j/ ]) g& V# z
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
4 U& B( m2 O% y j2 D" @* O- L
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
+ Y. o0 q! W% C/ \; m% E2 k
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
" ]( Q, k# }- h: m! L: T
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
3 K! ^" H( I v9 W7 k9 Y1 C. s
3 W3 {/ R3 \, n( s1 H- g& D
// à??μ oˉè*
/ N7 [& S8 N; p
pLight->Diffuse.r = lightColorPrv.r1;
% K7 f; g+ z* @/ u, O3 ]/ a, I
pLight->Diffuse.g = lightColorPrv.g1;
- ]/ g# @( A' |+ |: s# J V" d, N
pLight->Diffuse.b = lightColorPrv.b1;
3 u- M# q8 b, l9 k# P
// oˉè* ??à?
/ u& {! K* J4 `* v5 @0 t: h& a9 h N
pLight->Specular.r = 1.0f;
; R @4 W% n3 l% i
pLight->Specular.g = 1.0f;
+ R: h7 r! `3 P% k, d! X) G
pLight->Specular.b = 1.0f;
. u$ z3 r- x) r
// àü?? oˉè*
1 Y' n# h' L N
pLight->Ambient.r = lightColorPrv.r2;
0 \ X% i5 I# x; ]/ c: z/ H1 t
pLight->Ambient.g = lightColorPrv.g2;
- Q8 n% b1 A) v; A$ F
pLight->Ambient.b = lightColorPrv.b2;
* O, D, }) X7 l0 J: l1 O
+ x. k, k: f" H* n4 I
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
8 f5 f/ c( X; o) r& ~: W2 k
{
: P# p3 |9 X- l; i% y5 J6 @
pLight->Diffuse.r *= 0.6f;
6 ~/ l% g! F1 X: {- V, f
pLight->Diffuse.g *= 0.6f;
% f, O/ O9 g: ]* n8 w
pLight->Diffuse.b *= 0.6f;
7 {' E2 O6 o, \5 k {0 H' r/ Z
pLight->Ambient.r *= 0.7f;
* x3 F& A% n E7 w; ^8 @
pLight->Ambient.g *= 0.7f;
. ~7 ]# J: A9 O0 r# h
pLight->Ambient.b *= 0.7f;
% a& K! A0 b0 ^
}
( j6 D M( v: z2 q
4 D) J- @- ^9 |1 c
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 O1 F- Q% G# ^- Y) ]1 c
if( g_pPlayer )
, m& Q4 m4 {' m2 ~' ]
HookUpdateLight( pLight );
# w" ^- a' o8 o
#endif
1 G& Z3 _' I& L
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 O8 P: U: R/ U2 b/ I
& l' X* m7 K/ q3 ?, n: W! X" A
#ifdef __YENV
, l! }0 B/ n2 ]7 P
pLight->Diffuse.r *= 1.1f;
$ [' |6 g4 o6 B0 M% D, @& \
pLight->Diffuse.g *= 1.1f;
7 M8 N) `* ? F0 V" _1 L
pLight->Diffuse.b *= 1.1f;
$ O6 w. e& b8 X- O3 D2 q! ^
// oˉè* ??à?
& |" z% I' g9 H, B8 l. e
pLight->Specular.r = 2.0f;
' Y: u$ n/ Q* F+ F9 f+ t: j# b
pLight->Specular.g = 2.0f;
; g' X1 [5 M3 a# G) ^
pLight->Specular.b = 2.0f;
; Q/ d0 V1 P o
// á?oˉ
; \$ E0 F: i# p2 E
pLight->Ambient.r *= 1.0f;
+ V2 o; O Z! F7 B( Z( v O3 P: {# C. j
pLight->Ambient.g *= 1.0f;
6 s2 J w, X- P ^: d% n4 @5 S% {
pLight->Ambient.b *= 1.0f;
5 @- G6 ~( x; G; k! |1 k6 }
#else //__YENV
6 i0 `5 F; s" L. u$ D5 w
pLight->Diffuse.r *= 1.1f;
* V/ T8 P+ l! N! G$ w# k
pLight->Diffuse.g *= 1.1f;
6 F0 P* D* f1 s- r% w# v6 d) N
pLight->Diffuse.b *= 1.1f;
& u2 {& W/ R0 {' g
// oˉè* ??à?
) a9 Q- L6 `, d& _7 s9 Y8 e, s! ?
pLight->Specular.r = 2.0f;
* Z6 \$ q% [- D a( q* o
pLight->Specular.g = 2.0f;
% O' `6 R) A6 d8 \* ^: e
pLight->Specular.b = 2.0f;
; e+ t- X4 V. T' B- j1 m
// á?oˉ
" k8 t) n; } K: ^* e( ?3 p
pLight->Ambient.r *= 0.9f;
8 d7 X4 z1 D3 g2 H" g k* D
pLight->Ambient.g *= 0.9f;
+ h* Q ~& ]2 O2 v, ~2 M
pLight->Ambient.b *= 0.9f;
2 F( r- P0 R1 t- R" F3 {. v
#endif //__YENV
9 A# |+ S L a
, o5 O( }5 Q, ?$ D3 Y7 G( x- |
memcpy( &m_light, pLight, sizeof( m_light ) );
% }( I: F, ]0 O( H
* _1 Q" f- F( X" I
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
- B7 U. R$ U$ {7 U k
D3DXMATRIX matTemp;
# `7 r5 t5 [& F2 |% Z9 T5 l
static const float CONS_VAL = 3.1415926f / 180.f;
" ~+ f+ B/ n8 o, j y7 U
8 G" o H k& d9 t: G
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
" V3 N1 y/ x; [7 u' v( R
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
+ W% d. J- h7 {: D1 E8 k+ J( G- H
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
& l# S: x$ m9 N# O& I% @6 }, c
pLight->Appear( m_pd3dDevice, TRUE );
" m9 x* g1 @0 d+ u+ k
% O; Q. P0 L. z/ u V2 `
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# |: Q( ?7 Q: c* v1 X9 w+ e- ^3 v. Y: m
// D3DXVec3Normalize(&(vecSun),&(vecSun));
; J# i6 u* _' D/ q1 ?# p H
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. |( M. b u& y+ c& G7 I! m4 e
0 J3 M5 d' O/ t( i, j
DWORD dwR, dwG, dwB;
% j. G% V" w) r- m2 X% m
dwR = (DWORD)( pLight->Ambient.r * 255 );
# y0 D# r% w: c' F
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 v/ _& L& H+ u0 e: G
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 [& Z( }; f: y) c& y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: B4 _: `1 u' M- p& ~; Y) p( z, y
}
0 N" J) V6 u: E) g; [$ h
}
* T/ H9 ^ B% g, f" ~: F: j
! N% C; }+ A+ c" P& o" t. |5 l. u
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
: }. R+ }, o2 k/ I" D
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 }5 J' x0 k/ Y: Z. E+ t6 w
::SetLight( bLight );
* m5 ~% ~7 Y4 s: j1 f
: }9 E: C0 ]: C- w
// ±ao? ?D?í???ó á¤à?
5 `( F& N" P, D; n3 E
m_pd3dDevice->SetMaterial( &m_baseMaterial );
8 Z; e& F: c$ I
5 h9 k4 `; l' \$ O) M5 s
#endif // not WORLDSERVER
! i( x0 H+ g- I$ t# @( x% ~
}
9 E7 r5 a9 L$ M6 `* q
并更换
% I4 c' F) L. ?# l4 X* _/ [ R: S
Code:
# d5 X/ ^' h7 v- I2 ?6 j
__FLYFF_INITPAGE_EXT
8 H" g8 L% h5 \4 F' S2 x" W
定义
: r2 ^+ F# F) e7 @, I, h+ x( G
7 Q) N0 L! o: c0 Y" K8 w; }) K9 x
8 r, a- A% U9 ^" I6 X2 i% V
# t6 a$ v- \, U }
# U5 D- I) W" Z! f% y* p. Y7 ?
现在终于删除我的狗屁加速...
^% d* c7 O+ h$ l2 s9 Z& \
: x* D( B( C& r8 O- B, ]
- ^& g3 v1 j% ~* |3 e
7 X# e. y1 D5 B- Y8 N; l1 _
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2