飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
5 m; X/ u% k5 r1 z. d) K* u
尾翼:
8 I' l9 v8 q" |+ {& i2 E
4 l4 H/ M# d& B/ V) q% [+ {
代码:
7 g( K" u2 e$ Y
CWndAutoFood::CWndAutoFood()
7 e8 n2 l# ]3 O9 b& V. b! J4 q
{
5 A1 e2 H3 C* ]6 |: R& ~! y
m_pItemElem = NULL;
( }7 T4 R% r+ ]6 i/ e
m_pTexture = NULL;
- J; d( d# B! s4 x: c; X4 u
bStart = FALSE;
# ]" g2 t. ~0 Z; d9 D5 M4 ^
}
& } V. `& O1 K2 y6 N; R
* S. Y, F$ Q$ z9 @
CWndAutoFood::~CWndAutoFood()
/ ]- o, z- c* }; O7 y
{
) s9 l4 }; o& _0 u T& R3 K
AfxMessageBox( "AutoFood ist gestorben
" );
" d5 y0 d3 q1 z9 x
}
# v% q' Q6 B, D4 n+ v0 b1 u2 [! m
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
1 p6 ~/ u7 y, U9 F2 ?
{
& F3 j9 J' M P0 `) U! \: O' v$ r
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
- E1 ]& L" R* v
}
& {( b* i5 X i1 U' j
. e2 Z. [& T& w9 k0 y- u u8 n5 m
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
" s* v) l* n* N0 H8 Z
{
$ G0 p6 Y- D* ~
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ b! _2 e Y. \& u- g! g
CRect rect = pWndCtrl->rect;
: d$ [/ C6 A5 d; O( h& A/ V
if( rect && rect.PtInRect( point ) )
2 N7 A# G$ H: G. o
{
( C- i. q# r* n# F: _) I( D4 g
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
8 Y: x1 o3 k1 `% x( S& d0 f
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ n9 t* g1 A& c2 p
{
+ n! O. a. o# \( c0 P$ U' Q
if( m_pItemElem )
1 W5 D. C( c5 I% p
{
/ {6 f* h& C( w9 X: s
m_pItemElem = NULL;
6 h" x4 B8 l" D
}
' G. ~" D, A; ?6 N
m_pItemElem = pItemElem;
! R) R- W8 g/ ^& U% D3 r; i
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
1 [' ?! ^! O. H- o7 z% ^& i
}else{
4 r& G: |& T1 K8 j: E V, f
SetForbid( TRUE );
% I- B, K& {* W3 }
}
7 J" M [$ }( X. a
}else{
z- m; A& C0 U7 W. D, @( L
SetForbid( TRUE );
7 W7 V. K, E, B" N( u5 f3 p
}
8 p- @5 D" l" J( \9 Q" d
return TRUE;
8 c" t4 l: `" G
}
J" y# \* f8 k" G9 E" i9 q
$ I( e+ K- A& R
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
( r$ A2 x- h* {& W
{
5 {8 z* M( `# T ^4 Q! H) Z% q
switch( nID )
& T3 C2 Q' S6 K7 B6 e
{
4 y; b/ G1 |" k ?" q
case WIDC_BUTTON3:
3 [0 a( w1 a5 S! I& |
{
9 ?# Y' W( x% P, s. N
bStart = TRUE;
+ k" f# |' f+ D8 n
break;
) A) u5 n i" D. w1 a- D
}
4 b |6 ^) }8 c6 r2 a
case WIDC_BUTTON4:
" R- }6 t* A1 z m$ t
{
" G. C: [4 m8 E
bStart = FALSE;
7 {8 q. S, k4 y2 z: C# [8 N
break;
+ x/ x5 g- q2 _2 O0 V
}
. ^: P. C# S7 x3 s0 {4 S+ [& K) M
}
& L& k( w0 F" ~7 h( T- `/ K! a
return CWndNeuz::OnChildNotify( message, nID, pLResult );
/ k+ l7 k" p! [: Z* k8 p
}
8 I5 t( t+ Y9 ^
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
, b8 `) }) z' ?( q
{
0 t1 ]( _$ z2 b& ?& ^7 \% O) w2 q
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
F; u) Q) g6 A$ M
if( bStart || !m_pItemElem )
4 A" d1 |' `4 k \' x! i w) Z
{
/ ~5 Q! b) A% n6 K( w
pBtn->EnableWindow( FALSE );
% L ~0 s9 q2 q: Y- ~3 Z7 ]. A) Q4 q
}else
2 x7 |2 h z8 F# b% E4 N! `5 `1 @
pBtn->EnableWindow( TRUE );
! F& {0 I" g: k \
if( m_pTexture )
4 Z1 ~* K5 I$ a% C0 k/ u2 N; f
{
8 ^: P+ x# g+ G" I8 s; @
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 K$ g$ ]( w: j* F/ J
if( wndCtrl && wndCtrl->rect )
3 v% R3 T- B* M( b" C5 Q
{
/ y3 V9 ~3 l) l1 X8 Q& r
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
6 o! n7 w$ `5 F* l# }& K8 h, b
}
7 z% V" C/ s9 H5 \- a
}
2 D# z; w0 i4 S. j8 ?# n& j
}
+ a8 J ~% n" r0 ~2 h, w
- Q9 M: ?! F2 t: K5 J# k" l `
BOOL CWndAutoFood:
rocess()
! a! k1 C& B Q4 @+ @, Y4 f
{
/ H0 Q4 @' }: @4 g
if( bStart )
! ^1 V" |+ S7 q. f' j, V, l0 Y
{
2 L2 ?9 c1 w/ h. s: _ K4 @( G9 q
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
6 d$ b6 r4 A. u& E7 R9 C: ?
{
* t* X$ B6 g5 ?& n. T" @
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 F1 |) ?/ b: ~: p1 Z
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
% c0 U; |8 x0 `
}else{
4 y# _6 f2 ]& X/ \! o" T" R
bStart = FALSE;
' j4 h" h2 e7 P* h
m_pItemElem = NULL;
- c5 [) s, L" G+ b3 g
}
0 _9 Q4 ~' O2 l4 m5 | X- B
}
+ F2 L: t o, H) L$ {( v8 A
return TRUE;
, V6 r! y2 a" ]1 G1 w# `, q
}
- t' o9 }, e( X: v2 X* s$ ]
5 L3 m8 B2 n6 V0 n
登录视频废话:
; |) T6 w0 X% e1 u* p0 d6 b# @6 z
尾翼:
2 d1 k- _5 G; v$ u
. ~% L9 C' ?1 N+ t' R6 r0 I8 k
代码:
" i4 y* ~ |1 D
9 }& w1 }- ]" V) K l2 U
void CWorld::SetLight( BOOL bLight )
1 A& H0 z% x0 s W3 h
durch
3 r) \, u& T) g' l- i
Code:
' w, P+ F5 U w
void CWorld::SetLight( BOOL bLight )
9 N5 U- c: X$ C' R9 v( S
{
_1 M) M+ @+ x4 s
//ACE("SetLight %d \n", bLight);
# e: u) z) h4 p) U L
' Q" L7 z5 D# ]
#ifndef __WORLDSERVER
! t% ?& t6 J7 D5 [6 ^) V% F8 B
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
1 [- v: h+ C3 r6 S# y
CLight* pLight = NULL;
0 Q3 k0 G3 D' @" z5 Y2 k& m. t' r
; q3 W5 T1 \5 p) @! }) _9 z
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
# Y) J8 s$ N5 g9 R
9 b) i3 z1 r1 D* Y" W+ U
pLight = GetLight( "direction" );
" u+ z) D' T3 c8 y( }
6 S @5 k; o: f4 w* t. \
#if __VER >= 15 // __BS_CHANGING_ENVIR
4 I# R- ^2 N3 d3 c5 B! Q. y
if( g_pPlayer ){
% {! E9 q* ~4 g1 S, \, Q* P
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
8 [; i4 \1 l# M" }& ]3 H$ H
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
# @( B: [5 u9 u6 D
{
+ _. g4 k' T. q) b+ g9 S
if( pLight )
* H9 \8 w! |7 H$ L
{
8 f& R, z4 J' `
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
/ c/ `9 P( d0 t0 |. g3 ^; |& |7 I9 B k* n
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
2 s0 S: c' E4 Y ?. p& V8 k" I
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
/ L7 `4 K- l# f( n
( T1 m I' X, a) \
pLight->Specular.r = 2.0f;
7 ]. |% P3 A# x0 X9 z
pLight->Specular.g = 2.0f;
4 {& e& B% [8 I& @, h& U9 S$ _
pLight->Specular.b = 2.0f;
( N- ^( u# f, f7 y) v
% y* @; Y" _, r, b& [
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
$ F$ K7 M8 u7 h! q2 O' J2 E/ P
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
' u: j5 r! f/ q5 X4 C
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 w+ |1 Z/ `+ [. f& |2 M2 q
* Y- d, W- z8 c5 u/ s$ R
HookUpdateLight( pLight );
6 M9 o8 d) c @% n6 S
- N: ?3 r9 u. S3 [
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: m' s( z4 F" A" V8 y S( _
& {5 Q) O* Z! f0 W( m2 u7 T
pLight->Diffuse.r *= 1.2f;
2 w ~' [. V6 T
pLight->Diffuse.g *= 1.2f;
6 E4 q" \$ t0 B& o) L5 O
pLight->Diffuse.b *= 1.2f;
$ H9 _% Q& c; r! D1 l
+ k1 n* p5 z3 z4 P0 N5 N5 g. c' c
pLight->Ambient.r *= 0.8f;
, k. g3 l6 Y5 R
pLight->Ambient.g *= 0.8f;
7 U6 H9 k8 v- V+ `8 o0 a
pLight->Ambient.b *= 0.8f;
) K4 {1 u: g+ Q. i/ S& }/ C4 i
" D. F2 `0 }4 n0 H) \+ d ]3 w
memcpy( &m_light, pLight, sizeof( m_light ) );
9 x, _, W7 g, ~' N% E+ h$ Z r
6 i7 }- P; b) r9 k, y
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 T7 A1 \# d* d9 G9 @% O3 E
D3DXVec3Normalize(&(vecSun),&(vecSun));
0 `4 O8 `8 z ` s9 h! J3 x
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
5 G, ~! b, U' m) w# O
pLight->Appear( m_pd3dDevice, TRUE );
# \" n s" Y0 h& B& a
: {" u7 {& H. T
DWORD dwR, dwG, dwB;
0 k& D6 E8 G4 R: p
dwR = (DWORD)( pLight->Ambient.r * 255 );
- z& R w. ^! R+ O% ^$ u4 ]
dwG = (DWORD)( pLight->Ambient.g * 255 );
: ^3 v2 }1 \& T$ h4 S5 e
dwB = (DWORD)( pLight->Ambient.b * 255 );
& C$ R+ Y$ D1 Q* k- y* t1 m# K: _' B
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: S2 J0 I5 Y" A) ~( V' [' \3 a
}
9 W# X" a w8 Q- J9 r
}
# J4 A" J4 }2 `- W! ^
}
, o& O4 E% R7 S! R3 m& j
else
/ l0 ?( j! P" p R0 `% y
#endif
' F4 J3 E, G8 g' w K
. ?( ?7 s" _6 |
if( m_bIsIndoor )
5 \; _" E$ l- m' W7 \ l
{
- J1 O% S5 e$ w6 j$ |3 f: b6 `$ k
if( pLight )
, t N* `% Q: A& f, K; G3 b
{
: e, o# ~8 Z- \+ X& w
// à??μ oˉè*
% a) w7 ^) H6 A* S* |3 H
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
, R6 z. h+ E8 C( Z" K$ |" f
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
- T( h$ ? |8 ?
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
' [# q" ?5 x8 _
* a7 R$ I" y* y8 I. o; ~
// oˉè* ??à?
1 s8 K/ i" V$ z/ @$ b5 G
pLight->Specular.r = 1.0f;
* u+ O5 W# v) ~; d2 g9 R
pLight->Specular.g = 1.0f;
6 k8 r2 ~ S# `& C/ j- V
pLight->Specular.b = 1.0f;
1 g/ [; s% ?1 o5 v
// àü?? oˉè*
/ U6 S* k( P' P
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
6 a4 e# `! H5 X, O( E' j( ^4 G4 M
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
6 ?; b$ q1 \* Z* s) G2 C% _, v
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
8 R6 g( X/ B9 u5 `8 |
$ [% j" X( Q0 v; R8 j5 `* x: y
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
& P, `7 u# R0 O4 W
{
$ E5 h# ?6 A7 j8 g* X
pLight->Diffuse.r *= 0.6f;
- M+ h3 s. o2 L( ?
pLight->Diffuse.g *= 0.6f;
+ S2 |% s+ x( C3 \
pLight->Diffuse.b *= 0.6f;
$ i8 P, ^9 w* m
pLight->Ambient.r *= 0.7f;
# R+ d U8 I4 i/ l3 N
pLight->Ambient.g *= 0.7f;
/ \2 ^$ v3 e$ }( ^
pLight->Ambient.b *= 0.7f;
9 y. [+ }$ U- h8 d
}
7 _! d# U( L2 ?1 R! ~
8 P/ Z8 z4 O5 Y7 R5 T+ Z! H
#if __VER >= 15 // __BS_CHANGING_ENVIR
) u) [% P7 i+ q: \
if( g_pPlayer )
- e: }2 f& q( w! R% O
HookUpdateLight( pLight );
7 y" R3 Q- _# j! b
#endif
( @! T! a0 e( }3 X
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 X3 F9 ?9 F- s1 n7 X
. T0 O4 v$ S* V9 C2 O3 h
pLight->Diffuse.r += 0.1f;
6 P3 r1 q& h' o5 a3 Z
pLight->Diffuse.g += 0.1f;
) e6 K! g: X+ P6 F
pLight->Diffuse.b += 0.1f;
; K1 \- P* v- s; s6 y: ?1 P; n
// oˉè* ??à?
" G( _- n& ~0 N+ `% l D+ D
pLight->Specular.r = 2.0f;
; u) k, }1 @( p
pLight->Specular.g = 2.0f;
$ o7 K8 W% ?7 F5 Y6 B
pLight->Specular.b = 2.0f;
# J- d/ b% I4 N
// á?oˉ
% v) X$ \5 _9 g% l$ }
pLight->Ambient.r *= 0.9f;
; o; a6 @0 Z8 H# G
pLight->Ambient.g *= 0.9f;
/ D* @9 O$ j5 x+ y1 u
pLight->Ambient.b *= 0.9f;
, b. S0 X8 H) O; G2 j5 @+ v4 v
9 G$ f9 n8 `0 B+ z; z4 ]5 s
memcpy( &m_light, pLight, sizeof( m_light ) );
* ~9 y8 k. `) p" [/ x b$ |
, a2 [' F# \3 i3 e0 k# b" x
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
3 |, r5 y7 n/ N0 G' y: h- J+ o# U
pLight->Appear( m_pd3dDevice, TRUE );
/ A1 j1 S* y0 \, x
$ Q& e5 U& P! K2 m0 j7 G
DWORD dwR, dwG, dwB;
& D3 [9 | n g, Q6 `
dwR = (DWORD)( pLight->Ambient.r * 255 );
" R* E. y0 |* K* S' @9 U
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 Q1 N q" A5 U) X/ f
dwB = (DWORD)( pLight->Ambient.b * 255 );
e3 x8 ]/ f+ `4 Y( `
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: V5 f& U/ p" s
}
- @ h% c7 ]5 Z: m3 k* d
}
+ p3 |. n2 ]: q. I7 C
else
8 U4 |( j. M! N" W
{
6 c8 S) O8 v6 _2 F l2 A
if( pLight )
+ G+ p# f% T$ F. b* G: z2 X: Y
{
3 s8 D" i/ w9 x8 H
, [; g& C" F# _6 _) j& D5 i9 n
int nHour = 8, nMin = 0;
4 e, n; \5 @! n
#ifdef __CLIENT
2 i+ E" l) \0 F; |
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
7 H+ }- ?$ z. g- X. Q
nHour = g_GameTimer.m_nHour;
$ m/ H; X' m. Q9 C
nMin = g_GameTimer.m_nMin ;
; U% w; }7 G+ x% ?3 T* E, m
#else
' t9 _# l9 d5 S3 ^; p, Q: Z
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
) C9 ~* m7 R8 H6 r* N/ u
if( m_nLightType == 1 )
7 Y/ R* B; p8 v; l& l, g
nHour = m_nLightHour;
0 v5 O2 [5 F! F5 E& J7 ~2 c
#endif
5 X5 ]7 Z2 p! T; y/ \
nHour--;
/ v8 D- K) R0 U9 `; X9 p1 A
if( nHour < 0 ) nHour = 0;
8 @6 _8 E6 `/ [7 P7 N
if( nHour > 23 ) nHour = 23;
. C1 X+ G5 p* l l7 ~& }: y% U
% {- J1 ?' R0 ?" T* G7 [' |
//if( m_bFixedHour )
! \" a+ q; L3 S, @% w/ M. q
// nHour = m_nFixedHour, nMin = 0;
" ~( H& Z' {" d; k9 I
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
" G. V! ~- E# s: s) L9 k
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
5 k5 o3 Q" V$ f" b. Q& }+ C! r1 r
) U; N8 ?* H2 ]$ B( D+ Q" p
//m_lightColor = lightColorPrv;
/ A4 R: U: L6 J
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
]. r9 D: w" U" ~1 ]) A: Z G* F
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
& y$ v3 R/ d# r8 e/ w( f Z
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
2 w5 S+ B4 W- V! K0 j$ o
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
$ a: \+ L4 N$ \) F
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
) t; v2 @. D6 k- `1 d; c e
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
6 o( v3 I5 W# I+ n+ {4 X! E
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
# l8 g% _8 K. T q* u) X0 Z5 \
( x/ H/ f! U6 j5 m# c- W
// à??μ oˉè*
0 w6 ?* X2 g, t1 t" n, k' C
pLight->Diffuse.r = lightColorPrv.r1;
" j" `! O, f. L3 j0 X
pLight->Diffuse.g = lightColorPrv.g1;
: y5 R6 }# }# q/ ]. n
pLight->Diffuse.b = lightColorPrv.b1;
; D5 f7 o- E' C. l
// oˉè* ??à?
, n$ @* p! N' ~* N" A+ K
pLight->Specular.r = 1.0f;
+ l5 ]$ s/ A' o6 e. _" P
pLight->Specular.g = 1.0f;
1 w; k1 T, T" k p! Y* t! C% T
pLight->Specular.b = 1.0f;
2 M) \; g% w, E7 A* b7 o1 E
// àü?? oˉè*
* a' r$ W6 |7 J0 v! @! g: Y8 \$ A
pLight->Ambient.r = lightColorPrv.r2;
: Q; v# A* ]% Y9 V3 S9 C0 G
pLight->Ambient.g = lightColorPrv.g2;
* u% b& e7 H5 A6 p+ |
pLight->Ambient.b = lightColorPrv.b2;
% r" L4 Y; Z( b' U7 d. X3 n9 B% k
! ?5 t6 A1 [% l' z: b0 ?1 |6 Y: v
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
8 S! X. }/ F5 h5 P
{
% b; ~: [$ ~# {# Y! C+ Q2 O& u+ D( [
pLight->Diffuse.r *= 0.6f;
- Q& G+ Y% l4 }+ T* }. ~
pLight->Diffuse.g *= 0.6f;
' ^7 C1 l" ^* t2 |
pLight->Diffuse.b *= 0.6f;
6 }) i' g6 H0 t3 B; O3 R
pLight->Ambient.r *= 0.7f;
! R8 p3 p/ z+ a# r
pLight->Ambient.g *= 0.7f;
& {5 K0 d5 n( L- `& U2 B7 f7 `9 x
pLight->Ambient.b *= 0.7f;
/ Q" n) b3 i0 q' R# L1 F
}
/ `" Q' v( H2 K8 [( t- ]1 u1 C5 L
; R9 q9 u# {/ y
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 W) I1 Z1 Y: ~: F, B' ]
if( g_pPlayer )
9 F3 o% q4 ~4 X% n2 ?0 k
HookUpdateLight( pLight );
0 g. E6 r, h- m" P
#endif
: [/ v( t6 z; P% ~! j
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. j @1 w' U7 H0 u9 v
! z0 W/ I5 W& P+ v! ?
#ifdef __YENV
- _1 m0 ?7 F4 q5 s( f5 l! C
pLight->Diffuse.r *= 1.1f;
1 e0 x( X6 a# ]) I& f
pLight->Diffuse.g *= 1.1f;
0 o- T; O5 @- u& {2 a
pLight->Diffuse.b *= 1.1f;
' P5 S( `. l, y
// oˉè* ??à?
5 |8 }$ v+ D8 N V9 M5 w5 o" h
pLight->Specular.r = 2.0f;
# z% Q0 F: Z1 C& D8 R3 h
pLight->Specular.g = 2.0f;
$ S- R$ a5 Z5 u& T+ N! L
pLight->Specular.b = 2.0f;
: d, R9 x" R$ B7 A9 [" u
// á?oˉ
8 D6 J9 G( i- @/ @* l. N7 q( ^
pLight->Ambient.r *= 1.0f;
2 P" E+ b" p" E+ x- |! {
pLight->Ambient.g *= 1.0f;
, n3 t6 W$ Z( B/ [% a
pLight->Ambient.b *= 1.0f;
$ |+ e: }, B( Y- L* w
#else //__YENV
! e% F- T" ?& b0 v# H) Q. ^
pLight->Diffuse.r *= 1.1f;
' E0 h& C3 ?" N
pLight->Diffuse.g *= 1.1f;
U2 l( e1 `/ X0 U& t9 p- l
pLight->Diffuse.b *= 1.1f;
3 z+ M" {6 V$ N$ U( P; U1 \
// oˉè* ??à?
, @# J% k% i! ~" p3 ?
pLight->Specular.r = 2.0f;
/ m( v! k& h" m0 D8 _+ i: O% f. |
pLight->Specular.g = 2.0f;
9 @( w' Y2 }; f
pLight->Specular.b = 2.0f;
7 g* U6 s u8 y" g
// á?oˉ
d% N M3 v: I3 y
pLight->Ambient.r *= 0.9f;
8 y& p5 O$ k; j
pLight->Ambient.g *= 0.9f;
" c/ s4 z+ l v1 [
pLight->Ambient.b *= 0.9f;
/ Z3 @7 l1 Y! z
#endif //__YENV
9 |% G6 }) s2 T$ ~" x; q( D
- J! g7 y8 s0 b8 ?
memcpy( &m_light, pLight, sizeof( m_light ) );
3 S# v" K! b5 H* d- A! @1 y
" ~+ d0 A; L, E( I- C
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
5 d( x& ?0 s; r4 K/ ? d4 ?. Y
D3DXMATRIX matTemp;
" R+ J% q9 E9 a0 E
static const float CONS_VAL = 3.1415926f / 180.f;
- \2 |4 j* r# N$ L u h' P
6 g8 d$ Q' W5 Z
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
, y" d, K1 @! C5 S) Z3 ~9 M
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
: E3 M7 u4 g7 E% C3 X
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
, i5 @" E& y0 u3 Q: `3 _
pLight->Appear( m_pd3dDevice, TRUE );
# I0 q2 q5 I# Q6 ^* j0 @
: E1 N3 [! Q8 a
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" Q1 h0 y1 V1 E" V8 S/ u7 D
// D3DXVec3Normalize(&(vecSun),&(vecSun));
# l* O7 V5 ^0 u9 p0 O7 X5 H( \
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
& S# G, `$ l4 k5 F( h
7 o0 a5 O3 U, K r& Z! a* J+ R# P( s
DWORD dwR, dwG, dwB;
# w, P4 P8 H. H& c& m+ o0 f9 c, p
dwR = (DWORD)( pLight->Ambient.r * 255 );
9 I. P! K6 q* F3 h5 S
dwG = (DWORD)( pLight->Ambient.g * 255 );
9 t4 J+ q, s( k, e* t
dwB = (DWORD)( pLight->Ambient.b * 255 );
L3 {; V2 e8 |7 T7 ]& v# e, @1 B
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# E. E% J. _% J1 D4 d
}
6 a* o4 g' f, p S% L% J
}
7 m& p' `" E: W3 p
" M9 ~1 s& s0 q1 o
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
5 Z" x! A& R% x3 j: b9 S
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) );
% x% D0 |8 z) `$ W: g
::SetLight( bLight );
: P$ ?) U1 a; X* u! u7 \, o3 b
a( i' E$ @! e: I8 k ~
// ±ao? ?D?í???ó á¤à?
6 }8 o, \" L/ u, i
m_pd3dDevice->SetMaterial( &m_baseMaterial );
4 w4 {0 b* B D$ W' J/ s7 P
6 n! ~ [/ { W
#endif // not WORLDSERVER
9 y2 H3 b3 F, x' R6 @
}
1 P6 L7 [, h, V6 a
并更换
) o* w2 w k2 e! h; S7 h! [
Code:
* n3 Y9 K/ a/ Z% X
__FLYFF_INITPAGE_EXT
. ]3 ~' l% k, L' b! w5 I
定义
2 @9 M8 x3 _9 a' v' U
9 z0 G0 ^5 o1 Y) N3 I, C. I$ l
& z1 Q) e) M/ C2 A
$ ^ ]6 C$ \! S3 r6 L w$ h7 \0 p) K
4 |3 }# C. z) l& k, S3 M6 r% ^6 v
现在终于删除我的狗屁加速...
- P: I- }* [( R! y& B5 c: o2 S
$ _' o' d. w m/ ]; M
. S2 n" J" }! }. D& P
+ L- E1 o2 u# O# L( G- b2 u, ^1 I7 Q
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2