飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
3 d7 e0 }. C. S z0 U* v" ]0 f
尾翼:
* u# h1 Y' ~3 k# t5 [$ C
/ m, e: {0 v4 d3 p' v. f
代码:
# g. a: \, o* R o8 s. J% h
CWndAutoFood::CWndAutoFood()
8 E% }8 J, b% G0 ?* p7 f/ ~
{
+ ~% c1 n) I+ i6 N2 d. M2 G. @0 q
m_pItemElem = NULL;
6 Z4 d% u! @! m+ z; s
m_pTexture = NULL;
% C _7 M$ o; j# e1 d
bStart = FALSE;
" Z/ @' O" D! a) ]
}
2 ]! d" r0 G3 i9 t
. q# L+ a$ F, [- _3 f7 F
CWndAutoFood::~CWndAutoFood()
; ~6 O/ g, w/ j# Z2 O
{
% w1 _. H/ ?5 u. H0 P/ C! S
AfxMessageBox( "AutoFood ist gestorben
" );
7 `4 K f% |. Y5 X" E
}
$ T( I4 x( H- m; C% ^+ I
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
2 F0 J: L2 H1 L! l& R6 {9 E) U
{
. w3 i w5 k9 w. m
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
" D& {, ~3 U" S2 ?0 K) H5 p8 M
}
- O0 I3 m& `% q# [; I8 S6 T3 R
* y6 ?9 Y% ?) Q! r6 y' _
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
1 M% u* A8 ~$ |8 h* {- T. c
{
( u E% q) `, ~5 m$ @. k( G
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# B1 z2 r% t1 d( B
CRect rect = pWndCtrl->rect;
; Y% y& O; m7 x: w6 U0 P& i. U8 s
if( rect && rect.PtInRect( point ) )
: s* V. Z+ Y' k, u
{
2 R3 V$ r N- Y& s
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
. M. @: c+ t1 |( Q5 p, u
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ T/ T- ?' D$ Z1 M2 a; \
{
6 O# i* b* G" Y1 @
if( m_pItemElem )
2 M3 m8 s3 C& b8 ]' _
{
# n& F0 I9 |0 o4 [8 {' Z+ e8 e7 x
m_pItemElem = NULL;
5 P9 j6 v0 Z. _9 L1 ]& \
}
# ^% v9 @$ v! W& t1 Q
m_pItemElem = pItemElem;
2 B) [1 {4 j% E6 X* y
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
$ x) a5 o: b, ?* i
}else{
; l5 r# M. f$ ?' ]* \$ u
SetForbid( TRUE );
: i8 U$ [5 m: _: t) x) o
}
! `* L8 Q% e. _( j. p
}else{
/ r* y4 n$ ~# K$ _) b6 E
SetForbid( TRUE );
+ o% Y1 _5 D/ ^. Q, T
}
9 Y" P) Y" L+ Z+ ?
return TRUE;
) r- Y9 v2 l, V0 ^' P6 k: @
}
# i0 b% n9 r2 R. R \
! g0 k& k! j% E% ~+ b
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
, y$ n" F5 r4 H1 @
{
) B! U' t. o8 w" ?' Y7 \' M) o' f
switch( nID )
0 R# e! U$ P( D5 w+ H4 e: S
{
" f/ O4 w. W% g3 C8 q4 V
case WIDC_BUTTON3:
+ @' |/ H5 x! i8 r
{
5 U9 M8 S4 K2 Q
bStart = TRUE;
* c4 l( n7 ~1 J7 f9 E4 |7 G
break;
& j( t3 x6 n- B' T
}
+ A1 Y) W2 i2 Z" W6 P$ F$ I- I' [, A( e
case WIDC_BUTTON4:
! F' L, C& R2 e+ w1 P# O- T' u9 P
{
( H4 y, K3 c$ d- \" R
bStart = FALSE;
6 C. C! F- p2 j* a" H5 ?0 y
break;
+ H) `% w+ I8 t1 j
}
! N; _ ]+ s& J3 x$ ]
}
$ g5 l# i6 ~- l! i+ t
return CWndNeuz::OnChildNotify( message, nID, pLResult );
; J8 e- `% @2 ^
}
+ o) P/ n' g+ b7 x' L
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
% c- J; m, J+ [1 c" M1 A3 h
{
( A+ H& T/ {5 k8 q! h+ F# W
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
( G7 O- W' r% o1 c, ]$ F7 s/ ~0 m
if( bStart || !m_pItemElem )
& x y. @, }9 |: c4 y# ~" b" w- L t
{
/ L1 p$ ^4 I6 H5 f9 G% l7 i
pBtn->EnableWindow( FALSE );
( l+ E1 ]5 r3 k8 o7 }
}else
$ ^! R5 G6 V1 ^$ }; @# ?+ q
pBtn->EnableWindow( TRUE );
) E6 p. ?0 t6 s/ W* _8 J
if( m_pTexture )
4 W* n5 C0 L! K* F% @
{
) H: S, Q! Y: D! @' L, Q: g
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
7 b' t6 }* v1 ^( x
if( wndCtrl && wndCtrl->rect )
, U! k* _$ E6 k7 V
{
* t: V, E) r5 L% g) T
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
/ S6 e4 h V- K* V/ F6 H" N
}
D& t% ~1 v$ t9 J, d
}
( p- ]% ]1 c) X9 b1 j. J a! l2 y* e
}
/ M5 H2 t, q6 L0 \
" d7 k% ]5 J! Q8 [
BOOL CWndAutoFood:
rocess()
) c" @3 K8 H- _& {4 n
{
* C2 h0 o; T. @# G( M: c5 R; l7 |
if( bStart )
9 o: N( ]& g: N* e# {: k/ m
{
: L& x& l+ u+ p* @1 r
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
3 b0 [# q# {6 S+ ^
{
/ j$ y. S7 j& a3 B' L
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, h& r" g7 e
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
# H' g$ m. Z, Y- ~4 L& N
}else{
7 Q) h# e$ h$ A$ t/ ~) ~8 j
bStart = FALSE;
% v: j$ r( Z, \( [$ y
m_pItemElem = NULL;
( D6 v, Z, n( n
}
, L* ?7 R4 I* |$ ]5 }( J9 L
}
$ Z4 z5 q y5 c3 ~
return TRUE;
: y7 Z- E w" t; \# v
}
. ]& k0 A, M# u5 c p0 H
# ?1 F1 |+ j5 H
登录视频废话:
. c V ?$ ^: u+ e4 f1 h
尾翼:
# a" N/ T; N/ n$ k# }- S
+ x& T: d! j+ t E- R4 I
代码:
( E0 F3 O$ ?0 w" D9 [" j2 r
: u" \# U. @2 @# j# U
void CWorld::SetLight( BOOL bLight )
- N* j( G/ P% h( k# r/ G
durch
9 h2 T. T( l' E6 n: T
Code:
& N7 A4 X2 U) J
void CWorld::SetLight( BOOL bLight )
4 b3 _; N, D% s7 t: h' \5 o0 R
{
, g3 X/ p( o' r; T8 ]
//ACE("SetLight %d \n", bLight);
. D# z8 L8 F* o0 h+ U- N* O2 S
4 r* B4 s$ N' U% L7 g5 C
#ifndef __WORLDSERVER
* F9 O2 L3 l( M& T U+ I1 L
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
7 e7 F0 y F' Y! _5 G
CLight* pLight = NULL;
0 k& F" {7 I% ~
2 ^" k4 D9 U1 L9 t4 A8 F2 `
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
' k2 h6 G) F# a0 R4 i- I
; j w( s. Y" N) t
pLight = GetLight( "direction" );
+ w6 s% k# V; W, }
7 M7 B, @$ e# G
#if __VER >= 15 // __BS_CHANGING_ENVIR
# T3 x; g6 U& c
if( g_pPlayer ){
' I, ^( W% m4 I/ ~9 @+ ^. r# U5 n
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
# z. h# O: r& b( }; G4 Y
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
1 A3 W" \, u7 m: X& y, e* r
{
' @, M. b: M3 j0 T5 `. k I
if( pLight )
; H% R4 @4 L: ?9 }$ k3 ?! O. }& V f
{
% z( x9 k- y2 E8 s5 _) Y
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
# i _! U _! U, j
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
; i& }: y0 `' l1 ^$ e0 u* O
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
$ v, h6 K+ a ?8 D7 z: V
& m, a" t( d' }# Y
pLight->Specular.r = 2.0f;
. x: E( l, G6 z. P3 |" o5 v
pLight->Specular.g = 2.0f;
) K0 o2 @' |7 Q8 x
pLight->Specular.b = 2.0f;
/ D) q5 p. K5 \) x
g8 Z4 X/ b4 z( Z. p# \% E
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
! Y2 O E! J+ p. p. b4 g% v
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
% p, w+ N( l% A, q
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
. J. P# ]& z. a1 m# g
S4 w% d7 M* C9 L- r) y( p
HookUpdateLight( pLight );
1 s: N8 n& P8 K' Z y
' _( l# C5 r" L
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ }' b2 U: @2 b. a+ ~- f+ X4 c2 ]7 h% b
! {3 b3 z) j4 a' S: k, x6 b
pLight->Diffuse.r *= 1.2f;
% k4 |% w( G9 H6 i2 Y
pLight->Diffuse.g *= 1.2f;
& `0 c& x D) n( E- }( ~& f+ {- e
pLight->Diffuse.b *= 1.2f;
9 W0 `( U9 ]3 d1 w* e% t) M
' Y$ B ^& v9 I. I( ~
pLight->Ambient.r *= 0.8f;
6 X7 `# `+ U( _& V. { l
pLight->Ambient.g *= 0.8f;
5 s. C$ o- o. _
pLight->Ambient.b *= 0.8f;
2 Z; k( u. X6 x% |
9 x/ j, W2 v% C2 t. @3 }
memcpy( &m_light, pLight, sizeof( m_light ) );
& G+ p' [: U3 y1 b1 E
, C' R( Z$ y- d$ e( E
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 U [; e; B6 z2 k+ ]3 Y5 o% T( p
D3DXVec3Normalize(&(vecSun),&(vecSun));
% O% t* v+ H0 W
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
7 z4 u# B& |, S' R
pLight->Appear( m_pd3dDevice, TRUE );
7 w5 i' ~! I5 I: E
: k; c) I5 ?/ ~
DWORD dwR, dwG, dwB;
3 L( [# w( R: V5 R! V
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 v- e( M- g0 ~) a" j7 D7 m: r
dwG = (DWORD)( pLight->Ambient.g * 255 );
2 q" w# m# n" h; k; g q' Z4 q$ v
dwB = (DWORD)( pLight->Ambient.b * 255 );
! p1 E! D$ v9 g4 R! n, n0 y+ a1 [ x
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# E2 C9 V' [: }
}
# H0 A: T1 b% f; C& c# W% S; Q
}
- w7 P) t9 ^4 R3 n6 m" {
}
/ N2 y2 N2 a; @
else
$ H7 w: _2 f% t& Y9 p& h; A6 u* m
#endif
& t, J& o9 V( S. E1 B5 r0 [( n
# z: b7 N% `/ P [
if( m_bIsIndoor )
! j. s6 @ j8 |' s
{
. s1 u" p. q! m4 B6 h0 U
if( pLight )
2 Y% B+ Q+ @# }2 F3 Q( H' `# Z2 M
{
7 f9 o7 ]; ^: s
// à??μ oˉè*
6 p8 U3 j- l. r' f2 l; [5 w6 a
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
" J* i( w. d& ?+ \" a
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
& \1 F8 w F8 A
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
" t; Z3 S# x9 q. c, U
e# s/ w# D; W, z* S9 M
// oˉè* ??à?
/ y- s( s1 ?: E2 `, N5 A( W3 q
pLight->Specular.r = 1.0f;
, s- Q& |+ Y. S( v4 y& `! {
pLight->Specular.g = 1.0f;
0 y( I3 k4 Z$ r0 J) p6 F" N2 c5 d
pLight->Specular.b = 1.0f;
& d! N' O( U0 g, e
// àü?? oˉè*
0 T+ b [2 `, q3 D% S; G
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
& w& R; _* n, D( d2 Q v
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
* T a8 S$ m5 j( a9 L; ?
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
2 {. ~+ V8 c) w0 q" b, {6 y! y
3 J* W- y4 x4 ` i3 k& S- z
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
8 L9 c/ X/ y/ z. U" s
{
% \& W" @" a& ?$ E4 b& P' A
pLight->Diffuse.r *= 0.6f;
/ C) q0 @2 K: K- k+ l
pLight->Diffuse.g *= 0.6f;
* {( Z9 G. |2 E5 v3 \
pLight->Diffuse.b *= 0.6f;
. V h- i; E6 B5 V T. K
pLight->Ambient.r *= 0.7f;
2 F* ?( M! [/ o" R6 d$ N
pLight->Ambient.g *= 0.7f;
7 U2 L, d6 m1 a; O0 W" o; ~, l
pLight->Ambient.b *= 0.7f;
7 r) k# n. P, Y3 k
}
/ T9 D$ Y/ V6 d0 o; M% E. L1 Z' v8 _
2 v: l5 m" Q8 V' ~
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 N N; A4 m3 D
if( g_pPlayer )
1 v3 U, i; D3 g# v' B$ V& u/ B- @
HookUpdateLight( pLight );
( E: i; u: ^2 ~! B! s/ z' ~0 b
#endif
% {( Z8 v: c4 K4 i
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 V2 Z; }, L# X+ L6 a
, N: ]: F4 i/ X# N5 s
pLight->Diffuse.r += 0.1f;
$ [8 w$ v3 p5 |$ w
pLight->Diffuse.g += 0.1f;
, u! F5 R+ a8 ?; q
pLight->Diffuse.b += 0.1f;
+ l2 d" v( s8 p# Y( N
// oˉè* ??à?
# S7 ^) H W9 m" Y {$ ~$ u
pLight->Specular.r = 2.0f;
+ ?+ p$ p, \8 V1 G/ b+ j2 l
pLight->Specular.g = 2.0f;
- C1 U$ t* X# e. f# y
pLight->Specular.b = 2.0f;
, c2 R, Q3 b3 s2 D& t" t( U: ^
// á?oˉ
+ }, l4 {# k2 s' X |
pLight->Ambient.r *= 0.9f;
- |' T( F. `. w
pLight->Ambient.g *= 0.9f;
3 \5 ^7 I# K% O7 R4 O
pLight->Ambient.b *= 0.9f;
' P5 {5 B& l' z$ s( b+ E5 c
) Q/ P0 ~) f- M$ j0 a
memcpy( &m_light, pLight, sizeof( m_light ) );
7 `5 U# A# N4 r+ w$ f B
! `/ o. Q2 u1 g/ B& _
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
: v* B* }. M! n5 P- w
pLight->Appear( m_pd3dDevice, TRUE );
5 h4 _/ f0 o* B* D8 j) z
0 ~9 S1 _3 {8 G3 y8 A
DWORD dwR, dwG, dwB;
: T: D6 ~% `0 r2 X
dwR = (DWORD)( pLight->Ambient.r * 255 );
; r: l+ @' ?' P8 P8 h
dwG = (DWORD)( pLight->Ambient.g * 255 );
) c1 m8 Y" r! g: v6 ]( G
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 H# W( V0 X. o O. s) g" N
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 i3 ^1 c e9 p% Y" h: ]
}
' a' ?5 E1 ^2 q6 b
}
8 u8 N' j9 L _0 U& r4 U& H6 x
else
& q# \# b. T) B. _9 y7 D; d
{
% r2 e$ w% u! `1 p% }, t2 b
if( pLight )
2 n: @2 I* I( V, x
{
1 M; G1 k5 g" O) p8 b
" U- z. m) J& h
int nHour = 8, nMin = 0;
+ ~ s+ c% V8 S& ~7 T
#ifdef __CLIENT
; m9 ^1 p/ @$ B
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
1 A8 i9 Q$ x! A/ W
nHour = g_GameTimer.m_nHour;
, Y8 N# ~( W, E7 c2 J
nMin = g_GameTimer.m_nMin ;
1 U; O O# Y5 Q) Z8 q
#else
) ?: h# t/ K* W0 d5 E' d% H
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
; r: v1 j, d3 ?$ W, C% J' L
if( m_nLightType == 1 )
0 ` e8 Z3 c( \0 p
nHour = m_nLightHour;
! n; W3 h5 R( ?5 B5 T
#endif
% H! y0 N3 D$ `" B, {. E
nHour--;
" o1 v& |) E/ H3 B( \
if( nHour < 0 ) nHour = 0;
3 a0 r* g" b }
if( nHour > 23 ) nHour = 23;
' k8 I( Z' J: V9 y7 J
" R' v! |& w0 \: g! B
//if( m_bFixedHour )
# T3 Z9 @* d" X, D
// nHour = m_nFixedHour, nMin = 0;
8 e2 d5 u' z4 ]# e. v# h
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
# i4 M+ i6 Z) p$ r) A
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
1 p: G% y$ z. ?1 [1 U$ Y5 t
8 Z1 [: c0 h* J) s
//m_lightColor = lightColorPrv;
; [: H, j: U' _
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
. V- U2 X8 i, Z! b
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
! B! w# X; _, R
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
4 O( g9 n4 H7 Z
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
7 |. [; \5 W v! E! t9 F
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
; x$ E, q+ o' v* G0 a& ]+ U
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
5 i. h$ X. @- q1 U
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
# m0 `1 r! [' y( A" [, D8 C
* x* N9 n! j" Y$ }
// à??μ oˉè*
C. W1 S8 q1 L* ]& O$ b7 K: r0 E
pLight->Diffuse.r = lightColorPrv.r1;
. W- o' q# v3 D( y0 m/ v
pLight->Diffuse.g = lightColorPrv.g1;
1 n3 l) `4 u8 @6 e
pLight->Diffuse.b = lightColorPrv.b1;
! z: T* M# z, b5 a9 ~9 _/ O
// oˉè* ??à?
7 [0 Y+ t# C) a4 B! L6 e
pLight->Specular.r = 1.0f;
: z# \. Q+ Z$ d+ P% I; t W P
pLight->Specular.g = 1.0f;
' ?- R9 R3 ?* j
pLight->Specular.b = 1.0f;
0 n7 ~6 W/ T7 e/ i* x) B
// àü?? oˉè*
" w- d) U0 h9 [3 s b5 i
pLight->Ambient.r = lightColorPrv.r2;
# ` P9 u$ f1 F9 u8 L9 q* }9 o
pLight->Ambient.g = lightColorPrv.g2;
( z" J R( ~0 a4 T1 s
pLight->Ambient.b = lightColorPrv.b2;
8 z$ G8 _" u" f% F
5 L8 T9 L. Q+ t7 [4 n
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! |' C% L1 {$ Q! l1 p( g: t
{
: z; k1 C# ~8 S5 T3 A' r. Y
pLight->Diffuse.r *= 0.6f;
" v: A' R g, c$ h3 s* @
pLight->Diffuse.g *= 0.6f;
+ O0 C9 i3 X( b" h# p
pLight->Diffuse.b *= 0.6f;
) M3 r& O |: p0 a3 @0 P/ e
pLight->Ambient.r *= 0.7f;
9 _! _+ \) H: ^4 w) m
pLight->Ambient.g *= 0.7f;
/ V3 p) r' C; @6 m( R
pLight->Ambient.b *= 0.7f;
8 Z7 d n$ ?8 ]- W+ t) U/ {+ v" j* s
}
- n7 q2 |% C8 T7 U/ `2 V$ j
0 P) G, I3 k7 H6 j0 T9 x
#if __VER >= 15 // __BS_CHANGING_ENVIR
# X9 J( O! I$ `1 C$ H* w d! @
if( g_pPlayer )
, R, x% a2 k/ ~( i& F D" i4 I
HookUpdateLight( pLight );
8 y1 S! d$ C- ~4 I2 C, t2 _
#endif
: a. D& A: y8 i5 E. p( t! H
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 r1 @& x4 f- [9 K8 B9 \
7 i$ o& ?9 y5 x4 d3 S8 X G
#ifdef __YENV
8 u& h B" K$ d# ~
pLight->Diffuse.r *= 1.1f;
+ g2 O$ b! O+ f1 ^2 m- V& I, Q. G
pLight->Diffuse.g *= 1.1f;
+ f; B5 P+ l, q1 U3 R( C. Y
pLight->Diffuse.b *= 1.1f;
2 b9 B; K2 n3 [
// oˉè* ??à?
: Q7 N' q% r1 {& t, b( e
pLight->Specular.r = 2.0f;
) t U8 C( w1 L. Q/ b* A( k
pLight->Specular.g = 2.0f;
& t: x/ H( q; S, h
pLight->Specular.b = 2.0f;
2 T" m7 M% ?# o) q( f4 J/ Z) [
// á?oˉ
- p# S [1 m8 e) H5 F5 L- m
pLight->Ambient.r *= 1.0f;
( E4 Z9 u7 ~9 N
pLight->Ambient.g *= 1.0f;
3 p9 y+ y* K T4 C4 y
pLight->Ambient.b *= 1.0f;
+ R6 M0 p' @. r, P% e1 v0 x7 h
#else //__YENV
! J4 s3 J0 d* o5 J4 e$ K2 z
pLight->Diffuse.r *= 1.1f;
# r; G, C' r+ p" {; {
pLight->Diffuse.g *= 1.1f;
8 G$ P+ p8 l; O q
pLight->Diffuse.b *= 1.1f;
/ c- a0 ~3 f o* O4 W& x
// oˉè* ??à?
" J: r6 l; z$ i# a# b; {- W& g
pLight->Specular.r = 2.0f;
l1 S. {/ G5 }. j- R' y
pLight->Specular.g = 2.0f;
+ s, i) \( Y; v/ P) Q7 ~1 O' P; {7 @
pLight->Specular.b = 2.0f;
. q, e }/ Q& D6 c
// á?oˉ
% w* V6 ` Y( X0 W1 j, U* L, \+ Z
pLight->Ambient.r *= 0.9f;
$ q) M- \$ V; K5 V
pLight->Ambient.g *= 0.9f;
) ~ ?. B8 P/ f8 y' s
pLight->Ambient.b *= 0.9f;
6 ]8 a, W2 S# t2 C' f6 I* E
#endif //__YENV
4 t4 ~* p9 `% M* Q3 P7 o f3 u# ~* u* k
! k' k7 i6 V$ s% S9 W, I- Y
memcpy( &m_light, pLight, sizeof( m_light ) );
# h/ A# N9 W; G3 m4 t9 [; s# e9 K1 p6 r
- `! ^" p+ u, N2 ~2 y$ u% U
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
! f8 b, B8 C0 _
D3DXMATRIX matTemp;
% P* I. _; O$ X
static const float CONS_VAL = 3.1415926f / 180.f;
' i, u- h: o1 P. y3 v5 S% I! x) w
# P) X% J3 u5 x! \( t
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
4 A! u9 T. ]$ v* f
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
0 C0 m* v. \: r2 f1 u+ t
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
% } c+ W. a0 u3 E3 v
pLight->Appear( m_pd3dDevice, TRUE );
" Z* a+ S1 [! H8 v. R9 @
& P# u+ S! h. H; ?) Q
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
. E ~" d: M6 x+ D9 C
// D3DXVec3Normalize(&(vecSun),&(vecSun));
6 p0 X$ [- \$ g% Y0 Q
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
0 R7 U8 [8 M' r
) V) P3 e+ p/ Y7 o- |1 [/ ~
DWORD dwR, dwG, dwB;
' v$ g" k; D9 E8 `
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 c- j+ z J+ X' B" {
dwG = (DWORD)( pLight->Ambient.g * 255 );
. n: C' s1 \3 g2 z
dwB = (DWORD)( pLight->Ambient.b * 255 );
& G5 K5 U" b& C: O! m8 {2 r
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! a" ~1 q1 _5 `) X1 n# s0 _3 ]
}
$ J- F6 t; U I
}
0 \! A& M2 _( Z+ O6 R L
5 A2 c: N* c5 C; K" i/ i
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
! W" N) N- D0 {! N, Z0 b
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) );
6 T; ]4 f m& @: ]5 D* k
::SetLight( bLight );
: K2 T5 V& ?6 H# u0 w
$ W1 p' {, c$ ^2 B* K+ w& T3 q4 \
// ±ao? ?D?í???ó á¤à?
& H& r) [! v; D8 n0 I
m_pd3dDevice->SetMaterial( &m_baseMaterial );
- S G5 D9 j. l% O: I
9 h) p/ ]* g3 Y! L+ u
#endif // not WORLDSERVER
# J1 t- J0 v) t( J" e
}
, T& e& D- \" a+ l& N6 ?
并更换
7 h6 S$ i u. z6 K5 |0 B. W W$ |7 R
Code:
& C* V, x0 S* P9 \5 m( ~8 [8 R
__FLYFF_INITPAGE_EXT
3 [+ C8 V# {! h
定义
5 O- l. H/ l) _. l) ]; {
3 E- v8 u2 P$ I+ j& v
( V" f, f3 J- M8 V2 g/ c
# e! v) S3 X; z: ^: i0 i
( ^$ @0 z6 K# l) b4 i
现在终于删除我的狗屁加速...
/ l; i! L* x" L& k% P* J0 C
, j, y0 ^( J0 R' ]8 T1 S
2 l: w% l7 s5 K1 X$ o/ I
9 o9 Q/ s0 ]4 G& t4 l) ~: O
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2