飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
9 f0 f+ _& e' S6 u4 S9 R
尾翼:
: W N% X. J6 a
, Y9 m8 W6 o5 t( V' v3 U. N9 a
代码:
5 Z3 F/ n) Z2 Z. l# o" u
CWndAutoFood::CWndAutoFood()
% k% |0 J$ h3 i* X8 @- L1 e
{
) Q# q! G+ t: F$ M
m_pItemElem = NULL;
+ _3 [- U2 V. i- v
m_pTexture = NULL;
3 {5 h# u5 z( b3 E6 x d
bStart = FALSE;
8 W7 {7 h: s2 W( z
}
3 f: A0 P1 K7 [6 B# v7 S
. e4 y! p. m4 l1 t" t
CWndAutoFood::~CWndAutoFood()
+ ? `2 k( J j+ M
{
8 H3 q. ~, y" X2 ~0 A, ]
AfxMessageBox( "AutoFood ist gestorben
" );
9 b, g3 H' T$ ]$ M+ T! Q& n
}
/ _6 j1 I. R! M& j1 m2 G! t
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
# [% d" h5 L+ y. @
{
' U4 |; N, R% Z2 I F r
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
: d1 A/ B* |: r' ]% @& _
}
- a5 W, n# z* ~( \6 O$ i) C8 f
+ ?3 H1 L, H& m, y5 G5 Z% I8 q) `7 ]9 i
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
6 j, q6 k: k7 _& F% k& t$ ?! m2 Q
{
; F3 k$ H2 q2 ]# Z( J' p
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. C, K& G8 y$ \) W: {# G
CRect rect = pWndCtrl->rect;
! V8 x0 C8 S+ f2 f2 X- Q% `3 n
if( rect && rect.PtInRect( point ) )
: S$ S0 G8 `& t. n/ l- \
{
" K! d0 l* @* H( H" h
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
3 G/ Z! T1 g, e4 @0 T4 C+ Z
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
, P2 ], C6 ~" V7 q
{
2 G1 C* D+ h9 z* |4 c
if( m_pItemElem )
, m. a9 U) \) W1 _8 J
{
$ s% B( j# |; n! C D3 |
m_pItemElem = NULL;
# N5 S$ L- a3 A( z
}
5 ^% G0 W( u/ T9 ]2 c, I
m_pItemElem = pItemElem;
% y: a6 y! s/ f6 h" V# W
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
5 o2 O" l0 c- R
}else{
3 Q4 ~3 p& v& }9 o7 s" \
SetForbid( TRUE );
1 t* k: h) F! [* P, H
}
8 n( m( q& O- i) P
}else{
* s# N$ n3 Q M4 k5 _* B2 v6 h
SetForbid( TRUE );
8 s/ a) c, ~* f* i( ^; M
}
' y% ?& N0 T' d, a+ k' x V+ n* F
return TRUE;
2 i7 L$ Q2 M6 a' R @% S+ o+ F
}
& e$ Z1 C l5 Z: N* i% X! i- `
( N4 [4 B1 J, A1 D
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
- K# m& ]; A! B, T3 J+ J
{
: ^' a! ^0 \/ F& m0 K5 U9 @
switch( nID )
9 o4 {8 ~5 g2 P* V* O9 f
{
4 d/ V$ z* Q0 C$ Z! [5 d8 O4 i: y
case WIDC_BUTTON3:
. {! z0 n9 G3 M( m" W* }7 S- a
{
& g+ R( m4 Z N7 L3 p
bStart = TRUE;
2 @4 I) X# R# o' i
break;
% Q- l% t4 R, Z( s, \' ~* i2 V
}
3 A" N$ W U% N2 D9 |( \
case WIDC_BUTTON4:
1 e& }4 Z e& i' V% \# M8 S2 q
{
4 K" O, b/ ~) }$ [8 Y
bStart = FALSE;
* v9 f7 G* G: G5 N; A. j G2 o
break;
o: b: c# f7 {! z
}
% ?$ F* R. p2 l
}
& _: T$ S$ h7 ~ F
return CWndNeuz::OnChildNotify( message, nID, pLResult );
1 S U5 p4 ]& E. x% r2 Z5 R! n
}
: H% p+ W/ Y. H3 U3 ?
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
; p: {5 O/ L' Q j# _( Z% {( W
{
8 H( u% p* O" H
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
' _2 N* `: Q& ^2 q; }3 b, C
if( bStart || !m_pItemElem )
( E& g2 p; Q6 S N9 q \/ S
{
- D7 n+ e5 Y- {9 ~! [ r$ A
pBtn->EnableWindow( FALSE );
4 ]- h# w% P' W7 j* P! h" d) u
}else
8 ], @6 X# V# Y F8 e3 K! t
pBtn->EnableWindow( TRUE );
) g; y2 h5 E0 ?) z" B4 m
if( m_pTexture )
( a6 P) |3 f& s: Y( z }" x! N* T
{
( y7 d/ h# q3 w& Z d, s4 |
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& T9 s1 a7 Y w+ e$ W& e" d* o
if( wndCtrl && wndCtrl->rect )
& t( h1 Z; Z' C
{
$ Q/ W% S/ q+ L4 Q3 H" m9 t
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
4 {; `: ^0 G e$ l- K
}
- ?! N7 b6 T. J$ D8 @( ]
}
% x0 O7 A# P; N
}
7 i4 ]/ I0 E; i* K5 s2 G6 v4 d
0 A' o, a& ~4 i
BOOL CWndAutoFood:
rocess()
. Y; _: U: O1 h* t6 v
{
3 _7 J0 z- H# t5 G( w+ U
if( bStart )
9 W: d6 n, U% `- `' P
{
; i- f; A- w/ R. V
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
! w- e5 }3 N# H4 M
{
/ ^6 @, Q) x; 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() )
; o0 M7 @- M% K
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
* j- R6 g$ f3 k4 V
}else{
4 b6 p6 o# F7 ^- A" v8 z2 ?6 P0 P
bStart = FALSE;
e9 K' v% v& Q7 S
m_pItemElem = NULL;
' Z) o# ^4 {9 R7 R T' r8 m
}
. U. E3 W- t. y
}
5 I# m: p/ {% d) f5 s/ z
return TRUE;
4 q3 `* q( h. M9 x# Z% F
}
3 k) l+ b) a8 Z9 r/ W- ]8 m
: D$ _3 C o2 ^" x" S
登录视频废话:
2 z( q3 e8 i% i1 U% N4 X8 t# r
尾翼:
% Z$ |, z' q7 \9 o. T- q5 M
" \1 a* ^! w" K" r6 O# `. G
代码:
( i `3 P) t( d6 }6 v% K; g
3 y( K# N5 o2 G. V! M4 p! h
void CWorld::SetLight( BOOL bLight )
4 v& w* X3 |/ y/ z# s/ A
durch
; o0 V3 s" U$ v; `/ u: t$ h; u
Code:
5 A- W8 P0 I) c# e C& | E( a+ m8 v
void CWorld::SetLight( BOOL bLight )
$ N7 S: D# @! U( m- K4 e
{
+ o$ Y" H) ^- E) s; r1 S/ G. V
//ACE("SetLight %d \n", bLight);
" J) Q! E" g7 _% z& g: P6 I* H
$ [) K" _ o4 b; o# b
#ifndef __WORLDSERVER
9 Z8 R/ W4 S) s) Y9 q% a' m+ ~& c4 n
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
/ }# t5 x" v+ l& o% g
CLight* pLight = NULL;
7 }7 g' h W* R- h4 } f& i Z. N
- H8 ?+ K2 I2 O* D% [. a2 F
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
5 s- \4 N. G" S% n
0 K( W$ i: z/ R' J* t6 x
pLight = GetLight( "direction" );
, k4 V. D6 h3 H, s) u8 l
# W8 k3 o/ r* u8 v
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ `6 L/ |# ]$ t$ [, Q7 b# v
if( g_pPlayer ){
- ]3 T8 A. h, {5 G. _" y( D& W- `
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
& Y1 |) a+ a0 ~( T; b
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
+ D0 g% f, \; x6 S) F
{
" N. k3 q2 a! @
if( pLight )
! e4 v' G% j( H! ~, I4 L6 j" ^/ G
{
% T: S3 y D& F/ P5 A2 X/ R; y0 z
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
7 g# T) \6 ^1 {$ g
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
, j2 k' o2 m Q4 g
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
, |9 x+ I S; V8 U
* t. ]+ j4 B& F# ~/ ^( E% Y4 |
pLight->Specular.r = 2.0f;
3 _4 ]& m( k" N7 j0 O: }3 ]
pLight->Specular.g = 2.0f;
) ~" G6 v' ]* e+ L. Z0 {
pLight->Specular.b = 2.0f;
8 l7 U! e; }' Y! l$ e# K. W. y
( c1 R0 P* r. O9 o0 O, B3 j
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
% O1 ]7 G0 K7 _9 k# E6 |
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
( ?7 R8 q; `% z6 ?8 A2 N( _1 O
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 I- O! i r. |/ u N6 B
/ j3 `: u3 c) {' }
HookUpdateLight( pLight );
0 J! |: k+ c" b4 {' i/ }, N1 H8 m
; v& U8 F9 a$ z5 G# L# c8 z, @
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 b+ S! A# Q( F4 O! x" Z0 g
: C2 B& X8 I& E, W
pLight->Diffuse.r *= 1.2f;
: Y. V" l; }; p, N; ]; w. u
pLight->Diffuse.g *= 1.2f;
' J0 A0 k* S/ _& D. z* A( q8 S6 g
pLight->Diffuse.b *= 1.2f;
# _6 f6 B: W6 R4 F3 x# {
' s# [' l$ K+ s# W
pLight->Ambient.r *= 0.8f;
2 k/ I4 M. z4 C. u3 Y; ~
pLight->Ambient.g *= 0.8f;
9 B0 y4 m4 K4 W5 K! M
pLight->Ambient.b *= 0.8f;
: z% s: Y* B% Q, }9 u3 R3 M
. D+ v: ^4 `" O8 ~9 ^
memcpy( &m_light, pLight, sizeof( m_light ) );
7 c' C5 _6 [7 h5 f: M. f
6 r) W7 r; G$ N% J
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
! P: `2 M& O/ F
D3DXVec3Normalize(&(vecSun),&(vecSun));
! Q8 I6 C# a2 A
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ T+ U5 g0 H$ l' c9 E2 P# l
pLight->Appear( m_pd3dDevice, TRUE );
4 ^" {, m' a; |/ l% G# P
2 w% f8 }3 u) M6 Z! S# ~
DWORD dwR, dwG, dwB;
2 [9 t2 q0 Q5 r" {
dwR = (DWORD)( pLight->Ambient.r * 255 );
" V4 k0 N4 ?5 [+ ~
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 v8 u- l) W4 u; a5 ?
dwB = (DWORD)( pLight->Ambient.b * 255 );
; y* w6 s3 m7 ?2 R0 P, u( F0 q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
9 h4 o( T# u! f7 w( U( N
}
( s6 L( B( }5 \, T# q' Q- |0 ^: x: ^; D
}
& B, [, U' J6 Q& j% s% u
}
7 f" c, W2 O& O
else
$ C2 C( b& t. U7 S& a" {& @2 i
#endif
6 S4 @6 w% E& I7 v* w
7 z' q; t0 E; T9 u/ k
if( m_bIsIndoor )
2 L# ?1 s4 k* f1 f0 t. t" R) Z
{
& O3 R/ L4 Z+ L; X' W, q
if( pLight )
% p7 |. a: B6 B/ n1 B2 R* L+ M) e7 R
{
1 N7 z$ B% w3 O9 A% b
// à??μ oˉè*
/ z1 Z0 B$ u+ G% y7 _
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
& |) m. _# I" ^( v% l& m* n6 \
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
) D1 b/ ?1 d3 s6 z8 d% a8 s- g
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
6 j% W/ s: R. a( E5 w9 q
5 x E: [3 G/ Z8 D# ^+ r
// oˉè* ??à?
% J3 U2 ]' k d% }
pLight->Specular.r = 1.0f;
3 d0 a1 q1 W' T
pLight->Specular.g = 1.0f;
8 S! I6 S Z. M/ r* t1 m/ K% f O/ A
pLight->Specular.b = 1.0f;
& e6 h+ [0 Q& s# ?2 t( H
// àü?? oˉè*
: P) r, `$ v' [3 ~4 J6 ^* c8 I
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
2 }6 }) b; W; M3 `9 e& C
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
2 F: s; b! p& Q( `4 n9 j
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
9 Q4 O8 W: E. w$ g7 {- i( T
: L; V; ~1 q9 U2 ?6 c
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 d1 @8 B& }- ]# D
{
9 J" D6 W" f0 }2 V( d8 c6 b$ D
pLight->Diffuse.r *= 0.6f;
9 w, ~9 a% O2 X |- D4 z
pLight->Diffuse.g *= 0.6f;
j5 R5 h" |4 W0 v
pLight->Diffuse.b *= 0.6f;
6 ^- W' E6 y! ~+ T/ g
pLight->Ambient.r *= 0.7f;
8 f0 h5 e5 T; w3 Q1 ?) o, G
pLight->Ambient.g *= 0.7f;
x+ P' n2 i7 O6 X+ v- a
pLight->Ambient.b *= 0.7f;
& D: S. q$ }& B3 E/ a6 v( g
}
. x4 G* J c2 z4 \8 R/ `8 l
0 |+ m9 y I! P$ y( S& Z
#if __VER >= 15 // __BS_CHANGING_ENVIR
b& k0 h' c5 J3 l. M! Q- d
if( g_pPlayer )
( ^0 R( s+ ?3 e3 L' W$ {# @1 Z
HookUpdateLight( pLight );
" R2 n. }$ b; ?2 u% Q# U4 J7 h
#endif
; {. p% r* t% Q2 l
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 E& O0 g: k; y. U
4 X, a) [# c! t, F# E5 T% M5 D1 T J& ?
pLight->Diffuse.r += 0.1f;
8 `9 m! l# ]+ ]% I2 E' f. v+ {& o
pLight->Diffuse.g += 0.1f;
2 W2 y& x* l# L6 N" \" N! k
pLight->Diffuse.b += 0.1f;
a* Y1 ]5 A; X( |+ I( D$ @( Y
// oˉè* ??à?
$ |( I0 K! p8 D
pLight->Specular.r = 2.0f;
3 h4 U1 [: x7 ]) B
pLight->Specular.g = 2.0f;
3 i2 V' T$ p8 t/ R! e
pLight->Specular.b = 2.0f;
1 I6 l( l8 M/ }( K1 z
// á?oˉ
" _4 o- {* j9 S8 ]( ]! _' h: Z# O0 A7 w
pLight->Ambient.r *= 0.9f;
Q5 c- P! T! P1 b
pLight->Ambient.g *= 0.9f;
! ~4 u3 V8 ^) E" X+ @9 s
pLight->Ambient.b *= 0.9f;
% e% S) O7 E2 V5 q5 R" P
4 h) m$ ~; o# h& Z& g' k/ p
memcpy( &m_light, pLight, sizeof( m_light ) );
; y1 n& o6 E, H' M9 Z) v+ k6 O' M
% V- `- E+ Z* G( Q* Y, k
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
3 t6 R9 h7 S. r9 {. z
pLight->Appear( m_pd3dDevice, TRUE );
, V" i: ~; x' S6 J; U0 \9 z3 e
2 d; r) K* R# |$ Q; F
DWORD dwR, dwG, dwB;
7 J7 M+ \$ G' `' r/ ]) G
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 P& P9 F: k; U8 R3 V/ |0 f8 W
dwG = (DWORD)( pLight->Ambient.g * 255 );
' t' d8 N, n. e7 u
dwB = (DWORD)( pLight->Ambient.b * 255 );
7 E' ?. f$ s9 y( J, f$ p
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' M& r- D, ^8 Q! ~
}
: J- @7 L6 U" ~) f
}
" c/ s; L. H7 F! g
else
2 F8 y& [$ m; c3 J# Q, u
{
9 Y" J: ~8 j9 k s7 m l
if( pLight )
7 [4 e3 B$ ~( Z) v
{
+ z; i7 c( r9 g+ z: T) P
1 R! Q4 S4 {. m5 q+ b2 d& z
int nHour = 8, nMin = 0;
Q7 p9 \" S1 a
#ifdef __CLIENT
) t* J1 |5 C. L9 M7 z9 w
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
, a! X/ v3 h9 f$ N$ O7 }/ B! ]
nHour = g_GameTimer.m_nHour;
9 w* b' V3 X5 ]
nMin = g_GameTimer.m_nMin ;
5 b# l6 g3 j. D5 B W2 F, r
#else
1 K1 A- ?: Q ]9 ^3 Y7 o
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
; H/ q4 W$ K% ~; _ ] A5 A. z
if( m_nLightType == 1 )
) |( j4 S! P7 {1 n9 W$ }
nHour = m_nLightHour;
, h7 P2 ~2 l6 F! O
#endif
o+ R* K( J4 ^* K
nHour--;
% F4 \2 ?" y+ T: b
if( nHour < 0 ) nHour = 0;
$ j3 L9 a$ D- s! F9 X. |
if( nHour > 23 ) nHour = 23;
) r: }" H' R$ E+ T, c
% ^* u! |4 u( ?* S0 Y: U; F
//if( m_bFixedHour )
, S* f8 A, m( u1 n& x8 |4 ^- e
// nHour = m_nFixedHour, nMin = 0;
+ S7 d& r! m" d9 f- R
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
/ X- m5 [; S( h. `* C1 [& e6 |
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
% i2 Y1 z% X# z* B
% l& l3 ]! R# r" q+ t2 \) g
//m_lightColor = lightColorPrv;
# t2 z3 E4 j2 O* n# [3 t* U' K8 i, G
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
, I0 d6 r8 d% D0 ?6 Z. y% M u: G( E
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
7 o. z: c. S5 W+ a
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
: G: y0 Y! ]- |. _4 X1 ^: \1 _
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
) [1 x d9 d5 ?/ u' X; E
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
, ]" Q& O( W/ i- y/ r$ w
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
9 x- ?$ |, D$ c$ L! G2 r
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
2 w2 O1 d0 J; b8 }7 K( ?
7 n+ a7 {( ~) Y6 {& i% B ^
// à??μ oˉè*
5 a! r6 J, q" P; u3 b9 R3 M
pLight->Diffuse.r = lightColorPrv.r1;
, T; Y, R" a0 D
pLight->Diffuse.g = lightColorPrv.g1;
8 h: }0 o. `2 V& u' x' H
pLight->Diffuse.b = lightColorPrv.b1;
9 v: L; D8 c0 p$ s5 \# |( Z5 G
// oˉè* ??à?
5 F: q# h, [% j9 s/ W5 T1 E8 a6 F0 u
pLight->Specular.r = 1.0f;
, l( e& @) o. R" {4 Q) q
pLight->Specular.g = 1.0f;
2 |' s' i3 o; d: w8 j* V5 j
pLight->Specular.b = 1.0f;
; s+ b3 S" n) F. h8 g
// àü?? oˉè*
. K5 E) v/ y5 L% X% u* Y
pLight->Ambient.r = lightColorPrv.r2;
9 f) q# [3 i6 [9 I: G0 h8 t3 L5 V
pLight->Ambient.g = lightColorPrv.g2;
: H6 W6 F9 f( \ v. b. F
pLight->Ambient.b = lightColorPrv.b2;
' u; g" n8 K' y( ?, p% W2 j
" `& G/ c( G W
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
6 A- Q& s! K& P2 S) a0 a
{
8 q/ [. ]1 r/ {% W; d1 \9 ?
pLight->Diffuse.r *= 0.6f;
( U% Z8 ?% c, Q$ i
pLight->Diffuse.g *= 0.6f;
5 t, e) }) K+ C
pLight->Diffuse.b *= 0.6f;
& P$ A; b3 N# z) m7 S" E3 Y+ k! m
pLight->Ambient.r *= 0.7f;
" d3 C4 B$ c1 }
pLight->Ambient.g *= 0.7f;
9 R: C0 d% | f
pLight->Ambient.b *= 0.7f;
' ?* l4 k; S6 P7 S: G5 R
}
% W2 a% J! ]/ o0 [- a
! b$ r8 J& g9 _# s5 j
#if __VER >= 15 // __BS_CHANGING_ENVIR
: v/ F W, k% u. c* D( m
if( g_pPlayer )
4 u6 Q# A, U9 h9 {
HookUpdateLight( pLight );
' W E* H$ N, w. w7 X
#endif
0 ?% m% s; M* i/ j% S7 z, I1 b' C
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 |- t9 x5 x3 n9 k# R. Y1 [0 R
( }& G& ]) p. Q3 B
#ifdef __YENV
8 u$ _2 Y7 Z2 K3 d8 Q' l/ X
pLight->Diffuse.r *= 1.1f;
9 Z' ^" t1 H9 F* ^! v+ ?& ]! }
pLight->Diffuse.g *= 1.1f;
* H! i, J7 Z p% S0 Y3 \; G5 E8 r
pLight->Diffuse.b *= 1.1f;
4 `4 ?' D5 q9 J+ n8 R/ s# {- s4 R
// oˉè* ??à?
% m/ L1 R$ {1 s) \
pLight->Specular.r = 2.0f;
; ^9 b; r3 K% Y- k4 B
pLight->Specular.g = 2.0f;
& b. u0 W$ }$ K
pLight->Specular.b = 2.0f;
6 d4 l E3 N! s7 \1 ~1 _' `0 P7 k! v
// á?oˉ
% }- z, L3 K0 i% \& G( {. k
pLight->Ambient.r *= 1.0f;
9 N. q; f1 u, o3 ?, K3 f! @. ?
pLight->Ambient.g *= 1.0f;
* G3 p/ D+ \+ a: ?8 i- u- N
pLight->Ambient.b *= 1.0f;
7 J5 L' e3 _6 a8 o! w' e
#else //__YENV
' B, D1 l9 L5 o6 |8 o
pLight->Diffuse.r *= 1.1f;
4 s( d. \) @+ B, b) {
pLight->Diffuse.g *= 1.1f;
; A7 [2 @- I7 W" w' ]
pLight->Diffuse.b *= 1.1f;
6 `* [8 T3 C7 F; r+ s
// oˉè* ??à?
( X9 ~2 N" ?; f6 M7 T
pLight->Specular.r = 2.0f;
5 V% t' l7 @# Y- H
pLight->Specular.g = 2.0f;
7 X& L( C0 W9 t) M5 X5 [
pLight->Specular.b = 2.0f;
" ~" v! v, y+ w L) [; U! ~+ o
// á?oˉ
0 }: M7 ?0 {, o) z
pLight->Ambient.r *= 0.9f;
" t8 }$ X, |1 t3 i* Q7 b
pLight->Ambient.g *= 0.9f;
/ g+ |! b- H4 s3 Q3 i8 k" V: S
pLight->Ambient.b *= 0.9f;
+ S4 F+ l# m8 K: a' @; R/ \; Y
#endif //__YENV
4 H& P8 ]$ B2 P- c
6 N+ m# N; l$ D) j9 y5 N
memcpy( &m_light, pLight, sizeof( m_light ) );
; O3 K9 u9 I; C. R
: |. U5 A5 w- X- T
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
: {3 u* H1 B' r, P! L3 l' j4 J* P
D3DXMATRIX matTemp;
. y, s9 v$ |* g# z0 ~% O) V) E; v7 O
static const float CONS_VAL = 3.1415926f / 180.f;
+ d( @3 w8 Z/ d
4 J: j% U# @# b7 i
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
6 U. k( r- u8 |
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
, j0 Z) l/ d( ~3 C4 u6 S$ q& P' g
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
/ u- p1 ]' D7 F* x+ y) {& E& E5 h8 |
pLight->Appear( m_pd3dDevice, TRUE );
_ u& `: p+ Y" f( {+ i9 e
4 C& @: ]; C/ H% Q& v
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 m1 H* v6 Z2 ]$ p1 ?7 O/ |
// D3DXVec3Normalize(&(vecSun),&(vecSun));
$ h0 P9 n7 v* K
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ }" l& x1 [1 X, _0 s/ d/ N" w
2 m4 K0 [" i' ~8 a" C
DWORD dwR, dwG, dwB;
# U1 m4 E# K8 f; e
dwR = (DWORD)( pLight->Ambient.r * 255 );
# P1 l, s& n( u4 `' g
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 u3 S+ ]+ C4 K; C3 U6 v8 }
dwB = (DWORD)( pLight->Ambient.b * 255 );
) ~$ M# C+ ^9 K) I4 m7 [
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( d! q3 S7 t/ w1 O" H5 l5 _
}
4 W! g- h9 a! i* B8 A4 }" Y" S
}
4 U* U3 u- w& v
1 m$ t$ N4 a+ X: r- w, Y$ [, e; d
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
* q4 p6 \4 B. i8 G: @1 ^7 O
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) );
( V# `5 @! n$ y+ T+ y
::SetLight( bLight );
0 P8 h8 e1 w& \ y1 P# j" I
3 D/ b9 [- k* Y/ S5 F D8 P
// ±ao? ?D?í???ó á¤à?
) w: \6 y' w$ R
m_pd3dDevice->SetMaterial( &m_baseMaterial );
s! u( ^( x \+ Z) N
]: a1 {. c# ?; u
#endif // not WORLDSERVER
+ Q S/ U) D( {# {$ j8 T; M
}
1 G& q+ i( v2 ~/ K* @* ] h2 q9 ]# a
并更换
! g; Y/ u. @+ G( {- g; `8 U2 }
Code:
- Q3 B, x2 ^( s' }- L2 S7 f$ j5 a" R
__FLYFF_INITPAGE_EXT
3 T/ T3 N2 I6 Z- h& O% q
定义
+ G5 P$ V; W9 e6 v n) q
3 u- U$ s( Z7 P8 \ o1 s2 }; g7 A
% b% p0 `+ j3 ?/ B- h5 K6 o
4 M( U- A* Y# W1 g( l0 O
2 c2 E a4 v. Y1 r* X8 l$ B- t
现在终于删除我的狗屁加速...
: y& R3 C4 M. n E- s
8 ~: [, H. |1 r# o1 [
+ l9 l, f. b: D8 Y" p
3 C. d" ~9 C! M$ q
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2