飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
4 u% M2 \# D0 r, h7 _9 d* ]- ~
尾翼:
- T( s- ~" u4 y
3 J9 I( X, m! v' R
代码:
# s& s, @; Q8 ?6 Q/ ?
CWndAutoFood::CWndAutoFood()
% W0 n# T* W7 i! ^+ x8 e! b6 c# q0 K
{
8 g' {* X. t. P+ u, \8 k: R4 l' c
m_pItemElem = NULL;
/ c) D6 i7 @- q7 `" J
m_pTexture = NULL;
6 L- N: i6 z [$ w; B% z
bStart = FALSE;
c. y j6 ?% n E
}
) K7 l7 e s1 L' R* I7 g @# p
7 W9 u9 T" z2 G0 e8 U: _6 z
CWndAutoFood::~CWndAutoFood()
; N* T% B- S q- S
{
; s' W; f" _/ T1 z+ F: M4 o! R
AfxMessageBox( "AutoFood ist gestorben
" );
, D+ K$ a+ v9 N. P0 H) b4 @9 u: \
}
9 ?) e- Y4 C- e% V+ Z! K% ^
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
c- x7 u2 X0 X- S! e( p2 n5 ~
{
/ {8 a/ B" K5 }7 z. k$ I
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
% d8 B- E* @& `! J; E
}
/ ]- y2 P& t7 U
: @9 |8 B4 F$ |+ R. Y
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
0 r& E* J6 ?$ K
{
Z0 `8 F' R7 \6 W* M
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- x" L8 r0 p% [2 Y
CRect rect = pWndCtrl->rect;
# \: X% [$ L2 [% u4 r: Y
if( rect && rect.PtInRect( point ) )
. M7 y5 @# E% {- f
{
0 c! ^1 O0 X4 X8 ]. i+ M) G
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
) K! M4 u2 F. B: D$ n
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
/ A/ h; J: @8 f: t M% ]
{
3 q" W! m% G* H4 x) r4 ]2 ?! d* Y
if( m_pItemElem )
- u2 y! Q4 f+ v5 P2 B
{
/ e0 g7 y5 l9 D1 i5 d
m_pItemElem = NULL;
' k0 a5 ~8 ]! v( _) e# k
}
0 M; @( A" h8 j# E# X9 [
m_pItemElem = pItemElem;
9 C- U8 s, [* A
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
) ~) t6 f& ^) A+ Y+ e
}else{
( v* e9 s1 }% ^& x0 M4 p8 e) O
SetForbid( TRUE );
, V7 s6 P) ^& u, G% g+ F
}
! U& |: z" V+ s; ?
}else{
9 Q' ~7 a+ ]/ K2 ^8 O& x
SetForbid( TRUE );
0 L5 `) q9 R. W7 d- ? t3 _5 b
}
, s7 Z# |* d7 ]+ D7 b
return TRUE;
" C1 i( t4 R K* Y
}
$ C. R# u3 H$ p+ ^! x4 E: I
8 a. J9 ?1 K8 o0 a+ F N1 y( p L7 I
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
' B3 Z9 p1 P+ |9 c
{
4 E H* R" _7 Q) @
switch( nID )
3 v2 L- b G9 a9 ~2 I2 w
{
; [& }) P) k$ i3 t ?; D) ]: ^& y. D
case WIDC_BUTTON3:
7 R1 J0 e5 Z' C6 N! y: ` s
{
, [( y' H# \* A9 A0 M, s" P6 c
bStart = TRUE;
( W( p7 K* r3 s. `3 a' ^3 C" Q
break;
! P1 T5 g$ C5 M2 F, {! X0 i
}
" F: u) h" Y) {; I+ B7 I
case WIDC_BUTTON4:
" d- M4 @% {; I! b; ?/ _* I
{
1 |5 G. `( r8 k/ E( \; }; m
bStart = FALSE;
- `* W5 M/ p2 Y+ _6 e, m& n# K6 I
break;
0 O% A3 @ S4 D- _) g& L
}
* m" p2 l: J, J$ ^ o& P7 R, J$ M
}
# k% d$ V$ c! o3 E5 P
return CWndNeuz::OnChildNotify( message, nID, pLResult );
d0 Q d! @9 c; i
}
; K" I( v) i7 N: I" B$ P
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
' }0 y! X; w# N
{
/ n5 `9 |, b9 `1 m- F
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
9 ^( a* h1 p; {: u' D$ E! t6 K$ R
if( bStart || !m_pItemElem )
+ m9 t( a& S( W" `' ]* n
{
! L2 I" S- T( v* C4 p
pBtn->EnableWindow( FALSE );
5 G% B& j3 Z* k, v; l/ M9 J
}else
" y1 q) h2 M! J
pBtn->EnableWindow( TRUE );
]4 `0 ] {. G/ J! z% l
if( m_pTexture )
4 t* s1 H" K* w; ^
{
* t! `& X' y) ^7 R4 K$ C5 G
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ z! g+ e+ D* o% [& b0 \& z
if( wndCtrl && wndCtrl->rect )
6 D/ b% m" A3 m; s! X" y- p
{
! x5 a: e: |* L
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
, t1 b# s4 Z; F e4 ^. u( y
}
5 C! i0 N: Z9 j
}
) L- h- ~; \ e! }) M7 e5 p* G
}
; `% D8 [# \3 c2 q Z
. }, S3 P8 _! `0 l D1 y( n8 f6 ^
BOOL CWndAutoFood:
rocess()
8 `2 C+ g8 d: J8 p6 W
{
5 P5 U$ f8 X% `8 y6 R' Z
if( bStart )
( ~3 a0 I' M# b( j" Q2 E `8 y
{
, Y3 x8 P0 V' k0 a% O" J6 }7 z& {
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
4 u& Q( l0 O) R2 y* ^ i2 T$ }5 Y; J9 N
{
! s! b1 [3 ]0 c' e, `/ T7 d, ^% D
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
: l5 |( T, ]1 K! }. A6 T- }
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
6 f7 t( K" C, h8 {2 F
}else{
% A- z. ]2 r$ z4 T
bStart = FALSE;
J/ ^/ q6 ]3 A$ S9 s4 s4 T
m_pItemElem = NULL;
, g R1 h& U/ b+ ?# {
}
, e/ i) ?# O! |( S, B
}
. m/ ^& k$ U+ U; U2 j5 |" b/ i
return TRUE;
; P0 B9 ]9 a- h$ i! S* I' u
}
+ p( a0 q7 l' F: G4 L
; }7 ? N4 A! e
登录视频废话:
3 Z8 [. i* t- G" T# y. i9 G
尾翼:
) ~; [* Q6 [4 R. d" `
2 B$ l8 N( F: z5 o1 X% |
代码:
1 z9 l# P* ?, k S! x* o* M! h& [
& J$ A' R3 E# g( C0 Q5 y
void CWorld::SetLight( BOOL bLight )
) Q/ F* j' u# W6 X7 C6 Q: ~# R0 i
durch
4 }( B5 ?5 s+ x8 {4 B# b
Code:
) M% Q0 f, Q* z' {. b9 d$ h5 \
void CWorld::SetLight( BOOL bLight )
0 S5 J0 V; B5 C
{
/ M; u: f$ S) \$ u. E. t
//ACE("SetLight %d \n", bLight);
; |1 } n' ~5 g
, s, |% I" ]" e
#ifndef __WORLDSERVER
# s: b- x6 L6 Y- S2 _
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
5 J! p2 i; B8 T
CLight* pLight = NULL;
1 c& S5 g& x ^& B' Q
) [% ~' {, V0 K0 R+ O
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
3 Y ?3 k$ m% O8 N4 W
' w$ t$ P6 ]4 u( \/ Y b4 o
pLight = GetLight( "direction" );
/ Q# ?/ D3 S5 a* r/ U9 C" @8 I
. h+ ^; Z. l0 D& f; W7 H1 [
#if __VER >= 15 // __BS_CHANGING_ENVIR
; I4 M* N) Z5 }% a+ |
if( g_pPlayer ){
- d3 ~$ H! e v5 ]' v0 B
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
( f8 N$ I- y" e" s; L6 N. R7 Y
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
+ |* x* t( V* p. ^* x6 m# `
{
, ]9 w5 X' K0 Y
if( pLight )
8 `& Q; r& d" A& F$ |
{
, D! o& K/ [/ W; k( ~* v
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
" ~8 v; }+ Q+ h; s8 y# O
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
$ b; I+ X% T) `; Q: v8 ?3 }" y: ~
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
) R+ e6 F; Q8 ?( U
1 g* Z9 Z% G8 b4 m5 i% `
pLight->Specular.r = 2.0f;
/ I% k3 B7 e7 a# C6 [4 q
pLight->Specular.g = 2.0f;
5 B: x1 S3 }3 F9 G2 a$ M
pLight->Specular.b = 2.0f;
! l1 K G% x8 e2 u, O
1 [1 Q( C4 z0 U% v4 U
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
9 @* F" W" Y( ~3 |0 e0 G1 }
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
. R$ Q! u. _2 X$ ^+ E
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
/ z* w/ B5 B# r6 d
) f1 J, @" ]; g# S' w/ l9 p
HookUpdateLight( pLight );
8 X9 m) P5 ~0 p5 @' y7 v3 A' Y3 S
& u% \' ]1 X3 a0 c) M
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' G8 d* X2 j& S6 x% h8 W O
2 a! M% j; n* V: G
pLight->Diffuse.r *= 1.2f;
+ F4 Y' f7 j8 Y* q, \8 ]
pLight->Diffuse.g *= 1.2f;
8 t: I9 u0 ]2 T5 C3 D
pLight->Diffuse.b *= 1.2f;
5 h. h1 _% G, \+ P& f7 Y
" K' w& i% j' {" o, S7 W# {
pLight->Ambient.r *= 0.8f;
$ W6 C! J' F. i
pLight->Ambient.g *= 0.8f;
( L( [5 s! ~1 ^$ s [
pLight->Ambient.b *= 0.8f;
6 W1 g2 r' f6 J8 s* o0 k9 S
2 }' {) ~+ T& t |4 Y
memcpy( &m_light, pLight, sizeof( m_light ) );
0 F6 V7 ]5 O8 i% H5 R
* y( y/ }6 i; ?
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
- e2 F7 U9 S5 L, X8 J
D3DXVec3Normalize(&(vecSun),&(vecSun));
7 l: p( \. |( R1 H4 Q2 u
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
7 B# ?2 j# J( T' a7 p' B" P
pLight->Appear( m_pd3dDevice, TRUE );
$ n. F5 d' w; q8 t/ N
9 ~' Z* W) S b7 A N
DWORD dwR, dwG, dwB;
# S0 r1 t6 o9 j E
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 G5 x8 Q+ v' S6 ~/ @
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ }! w' i3 [9 ]6 g8 g8 c
dwB = (DWORD)( pLight->Ambient.b * 255 );
) r1 D* `1 c- k1 L/ `2 h" Q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# E! I5 X( o* R; r% `, [& m; ?# y
}
) T0 g4 r. t$ d3 y
}
0 @- K8 o& p# Z) c( ]$ [% }0 M/ g
}
; a5 B8 G: B m. J9 P
else
# ?4 `6 i3 w( G% f" H
#endif
' V/ ]2 y4 ~4 K W
% e1 p2 V- j' @' O. S! q" L
if( m_bIsIndoor )
O0 s% ], Q- O1 D* v0 S" Q& G4 c
{
1 a/ a' |- i4 _
if( pLight )
7 \/ T; Y ~4 H5 G; H) b# @
{
* b8 {, z* h2 c( [6 [
// à??μ oˉè*
- q% f! ]# o( w# ~ j
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
. `) R0 W7 A- ~
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
1 b; H/ r% P7 s6 c5 X; c! D4 O
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
* k3 q2 g' F5 F( P
+ g; _8 w, j& l5 \ h i$ H, ]
// oˉè* ??à?
# M' w# d! O" Y5 f h4 g/ Z
pLight->Specular.r = 1.0f;
9 a. A- Y" V# N. w/ q
pLight->Specular.g = 1.0f;
' L- `9 O( K" f' @ f% f
pLight->Specular.b = 1.0f;
2 N5 _# B" g: ?2 F3 m
// àü?? oˉè*
# Z* _! f4 h6 B9 ~ I* \5 b- @
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
( z$ X# s/ g. H$ k& K; L& K
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
}' M6 @" `2 e
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
- X, e. N$ ~. @0 |4 q4 P
2 {/ f1 \3 V; U% ^6 b! I1 c
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
) [5 h+ y) [+ ^
{
8 s9 I# g4 V! n0 P' `
pLight->Diffuse.r *= 0.6f;
, u. l% ^/ [! S' u
pLight->Diffuse.g *= 0.6f;
% D' X+ u4 W# ]6 M
pLight->Diffuse.b *= 0.6f;
8 u$ `0 v, c, B5 V5 T! ^
pLight->Ambient.r *= 0.7f;
! o G/ T6 w8 z% B
pLight->Ambient.g *= 0.7f;
% F( w1 ? j( y1 n
pLight->Ambient.b *= 0.7f;
6 q, D& Q8 G5 E' c/ r, ?3 z, y6 ^
}
) }0 A) h' U% C5 \$ M( V' J
" P" F' z |, A* g
#if __VER >= 15 // __BS_CHANGING_ENVIR
: x- F8 b4 k' v0 ^
if( g_pPlayer )
: q: u- O0 F; \
HookUpdateLight( pLight );
- T$ b" Q, n3 w9 P, f# o& f
#endif
1 ?% O6 A5 c. D( k# J' q: N
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
, N0 w' f) O+ ^
1 E5 R/ m( }2 z5 H( f( p& E& ?
pLight->Diffuse.r += 0.1f;
' v* O% }- k, U% I4 ~( Q. ` {
pLight->Diffuse.g += 0.1f;
( G+ f; `( K1 M" p" s8 G
pLight->Diffuse.b += 0.1f;
0 x* ~. I2 k! P m7 O
// oˉè* ??à?
^. G# q: E9 x
pLight->Specular.r = 2.0f;
# o0 Q0 e) Q# I
pLight->Specular.g = 2.0f;
- o( [9 d/ K' w4 R/ v: f
pLight->Specular.b = 2.0f;
) k% C7 G2 q- J& R B' V' i
// á?oˉ
' z0 \* t/ [* }5 m- \0 _- z3 ^+ H
pLight->Ambient.r *= 0.9f;
2 t0 D5 \2 I2 @; R: ]( M- |
pLight->Ambient.g *= 0.9f;
* m2 r. G# m1 f& f
pLight->Ambient.b *= 0.9f;
/ l9 Q8 }8 z! |5 M2 \
( I* l5 D7 h0 f/ D3 c, d; ^
memcpy( &m_light, pLight, sizeof( m_light ) );
. k, s8 o/ |; |6 ]
7 V9 c7 b' n' ~1 A7 R
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
4 a, U3 r' h' L3 \3 \7 t
pLight->Appear( m_pd3dDevice, TRUE );
K0 o" C r: [6 c( }2 K
9 v5 H! I' ^$ j2 v
DWORD dwR, dwG, dwB;
; r) M3 X% W# v2 D1 y
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 t) M) t2 z; B7 H6 P7 }7 K
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 y3 E; D- a7 q/ x0 {' X
dwB = (DWORD)( pLight->Ambient.b * 255 );
4 f0 Y+ {) C: ?2 T7 e
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# `; e7 {. L5 t& D- F `7 B4 I3 P' C
}
9 a3 X% j4 i: \
}
* v, R" f, u" {, G1 I9 L) |6 X
else
6 }% {/ i3 c( g) m
{
4 l/ g0 [2 X+ p1 x; }; b A8 }: M
if( pLight )
9 w7 f5 B8 G i
{
a/ V, |; `4 Z4 j
( k( n" h- |( Z
int nHour = 8, nMin = 0;
7 |$ V( h) C6 J% b' Y
#ifdef __CLIENT
( I, _' u4 ^4 K: n! v; |& t8 ]
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
1 X/ i" k! s9 _% j/ d
nHour = g_GameTimer.m_nHour;
" k; l6 t, o3 }' a
nMin = g_GameTimer.m_nMin ;
8 ~4 J7 k, e( ~3 _8 _, c
#else
5 p) w$ Z7 U+ H: q$ V
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
! u5 v1 M" K* T' a7 F5 D
if( m_nLightType == 1 )
5 d% k6 B" q' C
nHour = m_nLightHour;
2 h5 E5 e# A, v) `
#endif
1 X r6 M0 v8 J3 h$ O
nHour--;
! v' P( b8 N [6 h: Z2 u/ d" U) W
if( nHour < 0 ) nHour = 0;
6 w+ A, D! q7 W2 Q5 l7 g
if( nHour > 23 ) nHour = 23;
, f- C& M* I G" I1 f5 d
$ L! M+ t( k( [
//if( m_bFixedHour )
0 j# i. ^, \1 r: v3 B+ N
// nHour = m_nFixedHour, nMin = 0;
" i; U3 F: K9 i( O0 n) y3 k5 J5 I. f
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
2 ?3 O) i- S8 J Q! D9 B* [/ ?
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
7 s0 L7 K$ p" b/ r% d k+ e4 c. F% o
6 I9 Q$ S8 B# f5 x N# W
//m_lightColor = lightColorPrv;
6 c( H# p3 h: O/ n: r4 P
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
4 ?; c, y9 x. V8 f9 t
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
& Y. |- b. V/ O% L6 a
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
! D9 q4 N8 s h- X5 R
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
, y# l" y; `; k2 l
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
6 u, A3 H# A1 W( O0 t( A. s4 V
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
) Y2 B6 n+ M2 I3 B0 d! K+ }5 j" c+ B
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ o. H: d2 M& K+ e
6 }$ I* Q4 [+ D0 J
// à??μ oˉè*
1 t$ I9 t! K, z( k* V5 m
pLight->Diffuse.r = lightColorPrv.r1;
$ y# `2 h+ j4 n
pLight->Diffuse.g = lightColorPrv.g1;
/ x& D& T Y: u+ d, ^5 u
pLight->Diffuse.b = lightColorPrv.b1;
n [: K6 S% h) O; b' N
// oˉè* ??à?
; k- L- U( L6 Z9 [
pLight->Specular.r = 1.0f;
3 ~& T4 W/ b! U& |0 N
pLight->Specular.g = 1.0f;
& F3 ^& z& C1 E0 N1 I
pLight->Specular.b = 1.0f;
+ V; S. [: p: W
// àü?? oˉè*
) b) o% ?. ]' n) J# B, F
pLight->Ambient.r = lightColorPrv.r2;
9 @) Q# L& _ y
pLight->Ambient.g = lightColorPrv.g2;
* R5 C. ~; p9 Q, }+ `" w& h$ k; c
pLight->Ambient.b = lightColorPrv.b2;
; n2 V% l5 X" r
( Q& X: O, _+ L7 w: }6 t
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
) L! K2 V6 H, Q
{
' P7 W' k& }8 H' D
pLight->Diffuse.r *= 0.6f;
) y0 ]: \, i' w7 G- b( y( b4 A0 k
pLight->Diffuse.g *= 0.6f;
$ e. v" Q `& g) X
pLight->Diffuse.b *= 0.6f;
" R; U9 ~" ]# V; |4 F8 P, j
pLight->Ambient.r *= 0.7f;
$ L5 |& }7 s+ w: q: R9 H: K D1 ^
pLight->Ambient.g *= 0.7f;
9 Z" n1 ]+ t) K
pLight->Ambient.b *= 0.7f;
% Q; h9 J! S6 D) @3 p; b
}
9 N! Q& o6 D- P6 x; ^
& m+ O: M; J4 V' r+ K. M7 y/ {( L5 }7 z
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 o' |* h: W+ ~! ~# _; Z
if( g_pPlayer )
2 e @& X+ D/ Z5 ^+ N: i
HookUpdateLight( pLight );
/ b6 J0 Z3 k5 i# s$ S5 j7 I
#endif
- n5 v4 k+ S$ J; } I8 p; `
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
j" t2 e1 n: n, U' V/ ]3 b
5 a7 J+ Z4 k; f
#ifdef __YENV
; T1 z* A( F1 _1 T, ~. d
pLight->Diffuse.r *= 1.1f;
3 W* y- N$ j. d0 d9 }
pLight->Diffuse.g *= 1.1f;
& x3 g" M! r8 ^' z5 {
pLight->Diffuse.b *= 1.1f;
5 E- L- M) \! @ N1 [, n* \. y. w
// oˉè* ??à?
' B% _4 G, R5 [* r- }# p! k. N
pLight->Specular.r = 2.0f;
S. `2 F; `+ O; O6 ^8 Q
pLight->Specular.g = 2.0f;
1 u5 f& D: g8 T) R
pLight->Specular.b = 2.0f;
. ^4 f8 [& L- b; _* Q, |! P$ q
// á?oˉ
& u; w# ~5 R% c- y! l
pLight->Ambient.r *= 1.0f;
7 Y+ w! z* ]& @; W" G7 b
pLight->Ambient.g *= 1.0f;
6 T x: |/ ]; z8 O$ c9 Q, ^
pLight->Ambient.b *= 1.0f;
+ C$ T( w9 V8 ?9 e2 o& ^
#else //__YENV
1 u) [5 {! k# Y/ x2 U: V8 q+ ^
pLight->Diffuse.r *= 1.1f;
& W+ c) I2 ^" T6 Y2 }/ M% E6 t
pLight->Diffuse.g *= 1.1f;
) c/ f3 I$ b3 O
pLight->Diffuse.b *= 1.1f;
- W5 u- d- c1 I) Q8 W8 H) _& Z. s
// oˉè* ??à?
0 ^7 l7 q$ q$ o/ i. |% G, J
pLight->Specular.r = 2.0f;
$ |7 [, N3 w% K2 T; L: o
pLight->Specular.g = 2.0f;
\8 H- x* `, F ]; Q
pLight->Specular.b = 2.0f;
0 h/ Y- n9 e8 f+ G$ {
// á?oˉ
* M" Q( h( U: Q g" s% k" F' f
pLight->Ambient.r *= 0.9f;
- o$ F! X% J3 N. l9 ~0 d7 x
pLight->Ambient.g *= 0.9f;
% l4 R4 H0 b2 M! ? p" l
pLight->Ambient.b *= 0.9f;
& p; Z- r2 t# h+ K+ L
#endif //__YENV
# e$ y; [0 ]& ]0 C' S9 t
: B8 j5 C3 q' |" B0 b+ q
memcpy( &m_light, pLight, sizeof( m_light ) );
- r/ Z3 _: C4 Z u
8 e' n5 H' v' A; Z
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
# _# Q/ j& {: b) R# S1 W
D3DXMATRIX matTemp;
+ }! P9 ~' I) T/ S( U( h
static const float CONS_VAL = 3.1415926f / 180.f;
. D' k3 k( y' \- ~) C' Y
& O" K6 @, G0 J0 ?( V9 ~/ |8 L
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
) [8 a& V6 h. i" R9 t% Y# A
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
1 r+ {1 [5 e3 b. m8 \* T+ n
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
7 Z/ |. P/ u' S8 M9 N: p: K5 F
pLight->Appear( m_pd3dDevice, TRUE );
. Q `4 h+ N' a8 W4 N! l
) v: I% k) U R; Q/ I5 M+ |& v5 q
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* m' a! p% h, @% B
// D3DXVec3Normalize(&(vecSun),&(vecSun));
3 E; x# ]# g( \' L0 S; E) C% u3 k
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ f3 E! i" u6 N1 _0 x
& H0 Q5 G! E( [( @9 X
DWORD dwR, dwG, dwB;
/ y/ d. } ?& H
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 {+ t4 n8 n- f) t
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 f( z+ t5 O' I1 I" R) ~
dwB = (DWORD)( pLight->Ambient.b * 255 );
- y! P- l, w2 P1 \% [$ j+ e" `
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
l' N* W" F w4 H9 S
}
* Y; l3 C, O3 u! Y0 G* h7 i4 ~) X. t
}
# L5 K* r, V& ]6 P
_ ]/ W- ?& J: j, _
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
9 Q! Z5 A0 z9 u: W
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) );
' F6 q& G/ Y8 F; f
::SetLight( bLight );
7 t* m1 e& Q' j) U
# p* }# P% v0 |$ Y
// ±ao? ?D?í???ó á¤à?
4 ? N8 K9 [1 G; V6 }5 O( t, T
m_pd3dDevice->SetMaterial( &m_baseMaterial );
$ z" E( }# O8 J/ ]4 ~
7 x H3 ?" R3 W7 M3 d
#endif // not WORLDSERVER
7 i* k8 f1 }6 X6 T5 l
}
: q, W! d* h1 W7 m$ [5 d; B$ }
并更换
+ ?# `; n- H* j. @; o# H* s
Code:
& a& |$ e2 W. {- ]( d j7 i7 g
__FLYFF_INITPAGE_EXT
2 k0 T, Z- f3 f% b# y0 H
定义
1 o* b- t3 d4 {4 M- k2 Z. C
0 T5 n% x) n* J7 p0 e
- J, X0 T8 m& a' W* y. \
8 h/ f' o* Q, c0 }) }/ _
/ B5 ?+ _ p/ y$ Z0 X, g
现在终于删除我的狗屁加速...
" [ V) f5 G" ]# o4 B$ O- d) O
; W5 ?9 r3 T0 `$ t8 {6 o( @
- C2 A' R7 c4 N1 s8 a4 b
1 W/ x$ y3 x1 A6 a- j. l
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2