飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
, X9 L" I' j: q
尾翼:
6 s8 P5 q/ P9 C8 `7 D" Z; T: \/ k
$ S6 F3 F+ m/ D- K1 U* t" o$ B
代码:
) y6 B- U7 m9 w; p' ]4 O
CWndAutoFood::CWndAutoFood()
# R' B- m) r' \6 b0 s) ~
{
2 z0 R% v( A' P7 B
m_pItemElem = NULL;
2 ]! g/ u) `+ v. Y; J6 W
m_pTexture = NULL;
1 `. f5 u. v" M f+ P; P* [8 s
bStart = FALSE;
* l( E+ _ f/ M( h0 t
}
( ~8 s+ C5 Q# [9 p1 c1 S
- s7 X: ~2 S) u d- i$ A! l
CWndAutoFood::~CWndAutoFood()
! Z5 P7 b: C' [
{
- ~" X& \6 _. X9 f V
AfxMessageBox( "AutoFood ist gestorben
" );
7 M: H; m j4 t$ f7 x
}
2 N5 c0 Z8 A9 e% p. Z
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
! E- M5 E( v, E% M
{
7 x6 B8 o3 q; G& s8 f( u S% j
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
2 q/ b% T5 B7 Q# q; c) p
}
" P; f# k9 `; a! f
( X4 ^3 Y$ R+ _4 `. p) R$ a
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
9 V+ L9 L2 ]( T$ w6 m
{
$ W9 j4 b; f7 r( G& E# v
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
, I ?/ f N0 C9 u6 W
CRect rect = pWndCtrl->rect;
7 V& {' M6 S7 z- k8 p. E9 [
if( rect && rect.PtInRect( point ) )
3 R, _7 i1 q& Q. _- J$ ]+ x
{
+ Z: w& ?4 }) A% u- ?
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
2 w8 Z5 ]2 ?; h% w2 i
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
4 z* c' s$ M, T, J& ?
{
& q; s/ |- \2 C
if( m_pItemElem )
" m4 X$ C' D9 J$ `
{
9 u- q1 Z" G/ ]! s. n
m_pItemElem = NULL;
# `5 K7 j2 I- l0 [4 U+ c- J; H8 a
}
. P6 G( s4 X$ J: ?; W
m_pItemElem = pItemElem;
' a3 i" V s/ R' t& O
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
, t) p5 Z; B7 F9 r+ v0 x8 ~
}else{
) j$ o f1 t4 I" c) G$ Q7 [
SetForbid( TRUE );
8 A# h& K, ]4 l8 l, ?! L* W
}
& U- c. k$ c0 Q& Z
}else{
" U; w4 P$ c" V( P
SetForbid( TRUE );
* D7 |0 k1 c% F6 l& E
}
) _+ H [6 k3 B: x( \
return TRUE;
; q/ g2 n( o% Y* ^# H3 ^
}
$ N* V' P9 b& }7 `
+ Z C, B6 V7 _6 K' d
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
& j5 g, ], b# b, h7 D3 M, ~' [
{
7 M) T) n- U; W; J' i$ \
switch( nID )
5 u6 m2 z2 s# w7 K
{
0 u S1 j' W% |& X. B% c; A0 g. L- m
case WIDC_BUTTON3:
: D1 G: x7 q, R! d$ S6 D
{
6 h% {% I. k+ D- {
bStart = TRUE;
1 d# x" R4 t4 G; o T0 e* h
break;
- [& o+ X0 u- T# Z* K' Z
}
7 A$ j. ]* b$ d2 Y4 [" f" r" W
case WIDC_BUTTON4:
5 a; [6 h) C, f8 u* B. F
{
8 Q/ \5 Z5 _9 ~$ E" ]! T
bStart = FALSE;
1 e) a9 z7 a( d1 A# c
break;
& h2 f. W) m1 b; O" z
}
+ _1 k, [' e1 i: c! T
}
5 c$ b2 Q' c) q+ R9 t% K
return CWndNeuz::OnChildNotify( message, nID, pLResult );
% k3 F4 v) l P# P4 A8 r
}
9 a( _' P8 P6 _/ E" E3 e3 |& B( w
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
/ {; o) X" F5 m3 F, t9 ]
{
9 C( }+ H: l \6 D
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
, G1 H6 u+ E, p
if( bStart || !m_pItemElem )
- o: d0 h7 b/ o$ u
{
J; G0 E3 z# ]
pBtn->EnableWindow( FALSE );
3 x* H" I, G: x* H$ Z" K3 L
}else
5 u: h/ ?& y2 B: I2 D; q# O, a
pBtn->EnableWindow( TRUE );
; B. c1 E; ]' ~4 s. x
if( m_pTexture )
' G1 q, p8 ^8 @
{
4 R w3 e: w+ T; n8 r A
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
( Z C; _3 \3 v) |5 S$ j g ^$ y
if( wndCtrl && wndCtrl->rect )
' N" s/ L$ V0 |+ v5 g; V
{
- o7 O, `8 p6 R4 f" m8 D2 V ]
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
* R& ~( n2 Y6 R9 p7 e! L( q2 D! Z
}
8 R F) K5 n+ ?3 T1 [
}
" R% T! B# z1 @1 a. l1 z
}
) i, l. c8 P$ M$ _; Z2 ]& A" R
/ _- M5 m; O2 }. ]% Z
BOOL CWndAutoFood:
rocess()
$ ]! O, R. X5 N- B) T
{
# C5 e; v3 S5 Y
if( bStart )
5 t+ k4 ~: X; D. f& L
{
5 t: f- I5 L- w. b6 h9 n9 w
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
3 J9 F+ r, f% A/ `
{
2 ]0 b) r" t8 {+ w( f! @' Z
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
0 s; n A3 Y0 b$ H! W7 w. u) X
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
/ w9 }/ N5 z* i$ g; `3 d0 N8 q' J
}else{
! J* M% u/ @6 h2 |$ ?- [5 e6 w G
bStart = FALSE;
7 ^* ^' m* J( z |6 F: x) A
m_pItemElem = NULL;
3 g! ^& ^) f: r) v; ~# G
}
4 @ |7 u( F: D7 H
}
( A+ K; D- p _4 H' `. k
return TRUE;
8 D) f2 m" S2 Y
}
# _' W3 P3 c3 |& R2 s! `1 e K
+ A) L! C3 h8 V5 h' ?) f
登录视频废话:
& A( t/ C+ K6 r1 @' ] ?9 M
尾翼:
1 W5 a( @9 i7 v |6 a( n5 {
: P* ^% l8 d6 H
代码:
* c ^# F8 r9 p
4 K* O3 h% ~0 ]/ G% d
void CWorld::SetLight( BOOL bLight )
3 t2 T% |7 c. [) v+ }
durch
( j9 Y8 M n4 q& G3 A) \/ s- F0 E
Code:
8 s, Z+ t5 q; h& M9 M( E
void CWorld::SetLight( BOOL bLight )
" N! Q8 j0 k% f8 I0 I
{
- V e/ ~) h; r- w
//ACE("SetLight %d \n", bLight);
& Y6 y& v5 J/ u7 B3 u0 A6 {) J
1 y) |. ]2 ^8 U. D9 U A' H4 h
#ifndef __WORLDSERVER
7 \/ m, M, Z9 j
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
& }) y3 B! u( l, k& \/ U3 P
CLight* pLight = NULL;
- S( y: X6 ~) c0 F8 h
7 h( h. N; L% u
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
9 m% [! A$ o/ s' O
) V! e5 v) m9 d {
pLight = GetLight( "direction" );
6 g% q2 h& S, v
: N) x4 n6 ]% d! \; ?) E7 ?
#if __VER >= 15 // __BS_CHANGING_ENVIR
. C/ b; R* q/ [+ v; i; J) s
if( g_pPlayer ){
) o+ C$ w& j! C
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
' R' J* ?! [1 ^7 g6 y6 Z
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
$ G0 x- K, u) I
{
% s1 g2 D, {" [5 d6 `
if( pLight )
: K G! O3 m2 d0 {9 M3 `
{
G: w4 v2 x: k. G' o6 J7 e
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
5 |0 f2 V& q7 f6 f; D9 f
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
& G1 A! ? L7 o3 r
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
. N3 m' ^* d5 N) f7 P- ~- v; h# G$ p
, H# w$ H- b6 i1 z8 c9 G: {6 i
pLight->Specular.r = 2.0f;
2 M7 @* N% `4 V/ V# H8 Q
pLight->Specular.g = 2.0f;
) q' q* q6 ?! Z: {
pLight->Specular.b = 2.0f;
* m( P' [5 @" W' f- A$ n* b5 i( r& e
' X) q$ J( A- Q
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
# Y5 y* ]* `& V6 `! \/ s
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
$ N& G% } J6 ^7 G# F8 `
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
7 P" j0 K' q* G
. y( @1 k4 N% l8 X7 n- N9 {/ Z4 W1 n9 ?
HookUpdateLight( pLight );
0 L) z/ i$ m: U/ t+ R# f; P
/ l3 G2 \) ]+ Q- B$ j, U5 m
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# g9 E! E* ?7 T) @. A
. ?- Z5 t1 K/ t, P
pLight->Diffuse.r *= 1.2f;
3 a2 E: d( i$ @
pLight->Diffuse.g *= 1.2f;
& G: w8 Y; X8 I8 l) b8 q
pLight->Diffuse.b *= 1.2f;
. x( S% w5 i9 T* Z) Z) ?
. }4 D6 h1 e/ Q) `+ j) V1 p
pLight->Ambient.r *= 0.8f;
1 d0 G* m* w- ^$ J
pLight->Ambient.g *= 0.8f;
2 p$ d- p1 [$ O. J8 m' ^# P L
pLight->Ambient.b *= 0.8f;
( l3 N. C; J' Y0 p$ G, |4 I
g& A$ o$ z, C" c6 q
memcpy( &m_light, pLight, sizeof( m_light ) );
' W8 D& `5 i& I( X4 g8 Z
% l2 Z) T9 Q0 [3 h. B* X D
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ y* m7 ]8 f5 N; `5 S" C
D3DXVec3Normalize(&(vecSun),&(vecSun));
2 k: H3 Y6 a; d& P
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 z0 B+ R4 q8 q0 c* f
pLight->Appear( m_pd3dDevice, TRUE );
' i, s" v m5 I; |) e: Y
5 B3 j# ?- }* d6 M3 u( l
DWORD dwR, dwG, dwB;
0 R# ? e( `" ~; K3 Q8 V
dwR = (DWORD)( pLight->Ambient.r * 255 );
, n n! a: V0 }8 t0 `& |) P
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ D5 e/ b7 O; m& M7 h9 h9 N
dwB = (DWORD)( pLight->Ambient.b * 255 );
# l6 a/ H# A. U! K. ?
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
7 D) c/ \! Y4 i9 U1 m* Y
}
& Y6 ?3 L# \1 \- c
}
) \; K1 T: U, R7 i% r& Z8 p% R' f+ v
}
3 @! I1 @ T' b# R8 a4 \! }
else
* t3 T( K% C2 j* l
#endif
+ Z) d1 D8 T! E3 o6 O* }
- Z1 I* D0 w4 _
if( m_bIsIndoor )
) U' m7 p# o5 |9 X. H( @: V% D
{
7 l/ P% W. L" N3 K) c. n
if( pLight )
* m) a% m. \, F) q, ^) q! B/ {
{
0 ~) e' ` Z4 P' b A) t, E
// à??μ oˉè*
# W; A0 \9 r+ T8 y. G
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
6 z/ \2 J+ i5 Q4 \; e5 U
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
6 h! c8 P% Z- }, U$ R
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
7 [6 F% c3 ]9 S; P: p
- r, n% i' t$ v% t0 ~
// oˉè* ??à?
( x! k. ~" Q0 K) E- a
pLight->Specular.r = 1.0f;
1 \- ~1 x$ C8 k h- G! M1 ^( s
pLight->Specular.g = 1.0f;
5 R7 V+ p' w" q
pLight->Specular.b = 1.0f;
! Q7 e/ t+ Y! E9 C0 c
// àü?? oˉè*
9 z5 c7 F/ ]8 g; o( Z+ t, E# N I9 S
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
% k& x! N* i" Z% X2 K% q( c
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
4 j6 a) ]: l' v% m1 G
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
, q3 w% \: [0 f/ l3 S' ~) B
+ i( `, T# y2 R2 l' ^
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
$ T4 n0 D- ?) f
{
4 b( v& _, v' E
pLight->Diffuse.r *= 0.6f;
7 ]! y! M) [' p& H( X4 k9 ~
pLight->Diffuse.g *= 0.6f;
& Z3 ^* Q% m! G2 n
pLight->Diffuse.b *= 0.6f;
+ [/ O+ T9 N1 T+ @
pLight->Ambient.r *= 0.7f;
6 x2 X, r i: F7 K9 S/ [
pLight->Ambient.g *= 0.7f;
5 q1 T. e) I" q& `5 T; c
pLight->Ambient.b *= 0.7f;
1 I% V3 V7 L2 w& ?- C7 N; ]6 X
}
* n5 t: l. M, y" D& P0 o: U- R
0 Q3 K- Y4 }: \3 ~. I
#if __VER >= 15 // __BS_CHANGING_ENVIR
- `% n% N$ o- ^% B4 m3 M
if( g_pPlayer )
9 E5 Z% D5 ~; p
HookUpdateLight( pLight );
/ z, G/ P0 {( c* `8 ]. l; t
#endif
) Q5 b; h: Y0 L/ s. `
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
, Q( Y s% ^2 b* W0 c% a: F
9 V1 ~9 F2 b2 w2 p1 M
pLight->Diffuse.r += 0.1f;
9 y ?2 h2 R% V( f
pLight->Diffuse.g += 0.1f;
$ f( v5 x! k5 B7 ?0 v# p
pLight->Diffuse.b += 0.1f;
6 Z( \0 `; B1 @5 @/ O
// oˉè* ??à?
; y3 X- z( P" k$ h
pLight->Specular.r = 2.0f;
0 c% T' }* s4 B8 X* M; X, X
pLight->Specular.g = 2.0f;
" h N0 x8 Q9 `6 x1 S
pLight->Specular.b = 2.0f;
* Q- w% ^, H( F8 h t
// á?oˉ
9 P6 h$ [# Q+ n/ }- T
pLight->Ambient.r *= 0.9f;
; t& K! v- i0 o; w. p n+ A5 B3 u5 v
pLight->Ambient.g *= 0.9f;
' A, N+ Y( K- i* Q+ G3 R
pLight->Ambient.b *= 0.9f;
% V' I+ K# M- H; w$ r; ^4 B
6 N* C# A# l& k$ |! a
memcpy( &m_light, pLight, sizeof( m_light ) );
: o& }0 {9 s" n }
( C5 b R/ q) `/ {+ K+ D6 n
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
) w- L/ U& c' s# ~2 X7 P
pLight->Appear( m_pd3dDevice, TRUE );
1 }. ^: P) u: Z- [2 q- S5 G
' u; J$ u0 ^0 j c: L0 s0 G `/ I6 K
DWORD dwR, dwG, dwB;
2 Z0 H* @9 p5 }! h
dwR = (DWORD)( pLight->Ambient.r * 255 );
' ]' W' a) F: w- S) z0 R
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 r ^: w- f9 o, m
dwB = (DWORD)( pLight->Ambient.b * 255 );
' T, f: t: {$ S/ t G0 D* j2 s$ ~
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 k9 B" L4 v% G- G/ r
}
. M; b4 o2 u: l" n* M
}
2 H! E* \/ ?- P
else
) ?! t5 f, {$ _% ^& t
{
( T: y1 q* \5 `8 h7 @
if( pLight )
- y. m; h8 E3 {" r
{
0 S% e' q5 F+ a
$ n6 H6 B3 U8 N5 U! n9 Q3 j
int nHour = 8, nMin = 0;
& T6 T! Y* r8 f0 l! Z' a
#ifdef __CLIENT
5 k0 n1 X9 s3 {3 x3 E" w
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
0 E4 k5 Z0 \2 M7 e$ Y) F7 [1 Y4 ~
nHour = g_GameTimer.m_nHour;
/ D D6 v' r2 a9 c
nMin = g_GameTimer.m_nMin ;
- x/ o1 V. ?/ b( ]3 k
#else
@4 L J5 I# Q3 Z7 \% ]( V
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
4 N& }& S, h7 F4 Z+ t
if( m_nLightType == 1 )
$ [& i" x3 J5 E: H, R$ s
nHour = m_nLightHour;
p5 m( }# `! P8 }) C* N
#endif
/ F5 f9 @1 @2 h9 |
nHour--;
: j: v. x; w, ]" g# U/ q( x
if( nHour < 0 ) nHour = 0;
& I; l9 w8 [! u9 w) c4 x
if( nHour > 23 ) nHour = 23;
: g' R# J( K) n' Y2 c; v% m
, b: Y4 O, \8 i- i8 ~6 J
//if( m_bFixedHour )
: O! {, a; ]5 G- I# n x, v; u
// nHour = m_nFixedHour, nMin = 0;
2 }) C) J- c, x9 V2 I
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
, G4 ^; J% h- o' o
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
/ D- a% v$ K6 G$ ^2 r0 ?
$ \6 r) W" p2 h% u$ K
//m_lightColor = lightColorPrv;
) r* r; U% o1 I* b& c8 {
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
3 ~6 c- ~$ l3 F. R' M
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
& x% ` B1 y$ T3 I+ C
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
: t0 G4 t. \2 S6 k4 E1 W4 |9 V
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
# {& A7 Y( x1 h6 |- D
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
: X! D8 S% c# ~7 ` M8 [2 T1 d
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
# W% s# \) ?7 R, U6 E3 G
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
0 X9 _1 S! [; Y
; U) |0 t5 Q" Z3 D; K. e
// à??μ oˉè*
6 r: G+ i: T5 \5 d& [4 R* W6 B
pLight->Diffuse.r = lightColorPrv.r1;
7 L: c9 z5 c" m9 f
pLight->Diffuse.g = lightColorPrv.g1;
" |% H1 u @# a; l! R
pLight->Diffuse.b = lightColorPrv.b1;
( P' H5 v" n# U+ n1 I' f6 e) h
// oˉè* ??à?
- l9 A% w3 B) H1 |! {& ]
pLight->Specular.r = 1.0f;
* [. v1 H* D# W1 @& A j! p
pLight->Specular.g = 1.0f;
" V1 @/ \) s% e @9 J9 c, B3 F
pLight->Specular.b = 1.0f;
9 m: v+ c) s! M
// àü?? oˉè*
* W% R) g; p3 ?' J6 Z: r! b m
pLight->Ambient.r = lightColorPrv.r2;
* a* g# M! q6 N* ]' S6 k
pLight->Ambient.g = lightColorPrv.g2;
, y. G, ~) O* m3 d' v+ L6 R5 _
pLight->Ambient.b = lightColorPrv.b2;
! V( d- J5 `4 D2 L
" n5 A {/ m; `! ?
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
^" u# W1 N6 U' q, b9 t' t
{
! p1 V! e. \5 D
pLight->Diffuse.r *= 0.6f;
# k0 l8 G# A' {, k
pLight->Diffuse.g *= 0.6f;
- }0 T" ~2 c- u/ h3 b8 x+ ?
pLight->Diffuse.b *= 0.6f;
4 e+ r2 Y6 @; A- R1 ?* L
pLight->Ambient.r *= 0.7f;
/ W0 o1 N/ T Y& c
pLight->Ambient.g *= 0.7f;
( M5 n/ k' o; q' g3 I2 J
pLight->Ambient.b *= 0.7f;
2 {' Y3 |- }7 c6 e
}
7 j5 h+ V. h5 W
' B; P( V1 y! b7 i4 x
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 |+ n! ?) e& o! J$ s$ [
if( g_pPlayer )
* Y/ F- r9 `: o6 Q5 O7 O" I, h
HookUpdateLight( pLight );
0 q5 y/ l# j) L5 t
#endif
+ L, z, m9 E3 T* r9 V, D8 ]
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) {6 @. X- e; F a0 {$ q9 Q
+ e' {, [+ n0 l& L
#ifdef __YENV
2 [* Y6 B) s6 {
pLight->Diffuse.r *= 1.1f;
; l6 ]$ O& z Z6 H r: o
pLight->Diffuse.g *= 1.1f;
, l6 o! q' x4 f- M& l# \" o
pLight->Diffuse.b *= 1.1f;
! k- q# n+ I( w; |! w; _, R
// oˉè* ??à?
* \8 `; O5 A G
pLight->Specular.r = 2.0f;
5 i9 o- B. M& g# a! U- t
pLight->Specular.g = 2.0f;
$ q6 \, `7 s1 v8 `+ [
pLight->Specular.b = 2.0f;
6 S z' O; a* ]+ V
// á?oˉ
; i; X: L+ x+ ?
pLight->Ambient.r *= 1.0f;
# A4 |+ ?3 a( V. K
pLight->Ambient.g *= 1.0f;
! S" I( T" |/ r1 U
pLight->Ambient.b *= 1.0f;
" ~( Q* x# ~" l) X; @+ p
#else //__YENV
& I; P; l9 ]1 x8 \+ E! G, H' L
pLight->Diffuse.r *= 1.1f;
$ Y# G" d6 |. E `, `3 `
pLight->Diffuse.g *= 1.1f;
' G2 ^! l- ^7 u; t l$ i5 }
pLight->Diffuse.b *= 1.1f;
) _- C4 g- |- d @+ Q- f
// oˉè* ??à?
+ A9 R( r: `% z
pLight->Specular.r = 2.0f;
# V8 \0 Z q3 |8 w! _+ [0 T
pLight->Specular.g = 2.0f;
: E! e# o$ k* g6 {" }& a
pLight->Specular.b = 2.0f;
7 ~5 @1 P4 ]2 D, e5 m" P7 ]
// á?oˉ
/ P" @& i, |$ k" B6 }3 [; ~. q! U
pLight->Ambient.r *= 0.9f;
$ {- x! J: z5 x1 c/ m
pLight->Ambient.g *= 0.9f;
% y5 ~: r3 ~ d( n* U" d1 r3 P% ~
pLight->Ambient.b *= 0.9f;
U& d* h: V/ R& Z! G" c
#endif //__YENV
& j& J' ~; M, u
. H( o! B9 _& V+ ]" B
memcpy( &m_light, pLight, sizeof( m_light ) );
9 }' e) t' b8 Y6 U0 n. i+ E" U) Q& @
7 y+ U8 ~ P& t4 e
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
, l; d: V- |: t! u* r/ w: H3 J) g
D3DXMATRIX matTemp;
M3 g9 n9 F( O) l) R
static const float CONS_VAL = 3.1415926f / 180.f;
! y3 ?$ X3 U1 M, A2 e" G
+ z& U: T: Q r3 c
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
% S& v; B' P3 W% u
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
; K h0 K, v$ \* y% T" C
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
4 L& k" Z; d! y# j8 y2 ~9 ?
pLight->Appear( m_pd3dDevice, TRUE );
6 h. _+ E4 T) I: V9 W
, \/ C$ D7 O8 {0 N6 l4 B$ m7 L& X
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
, O) _0 @0 s# q9 d+ {7 _$ k
// D3DXVec3Normalize(&(vecSun),&(vecSun));
- e+ ~% w- }% W; J; T- z! }
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! ?0 H; I: @3 a5 A6 S
: c" u+ \9 y9 g1 |. w1 X
DWORD dwR, dwG, dwB;
% Q3 L) ^& J" m- w& Y8 T8 G4 B+ l1 s
dwR = (DWORD)( pLight->Ambient.r * 255 );
/ r1 E, j" a2 L# e0 I
dwG = (DWORD)( pLight->Ambient.g * 255 );
& E1 l6 {& O% D" D+ `3 |, |
dwB = (DWORD)( pLight->Ambient.b * 255 );
; ?, Z, S$ U0 }1 [& b" b0 m' \
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) }* C, Z$ o5 ]$ t1 W; {: o
}
q: k" R, l; G! P! y% e
}
% Q; K' o( F6 x2 v1 ^
+ c6 T' u9 o3 v7 a
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
e, }6 o+ Q. J8 B0 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) );
8 X0 ]: m# s2 _. F' ]5 T. B1 \
::SetLight( bLight );
# h/ [5 X4 ]0 @' t: N" \
' ` b4 k5 d1 [" {, `, _
// ±ao? ?D?í???ó á¤à?
; T7 m r) w/ v" @
m_pd3dDevice->SetMaterial( &m_baseMaterial );
& r7 G- U; a0 T0 j
: `8 r& G/ \' |6 _) E1 i
#endif // not WORLDSERVER
( V3 E/ ~& G7 ~8 t4 d# E, O) j
}
# @2 O( T% W, `9 A6 Y1 z" M+ J6 Z2 X
并更换
2 n3 |: f* b7 P7 x4 w
Code:
! Z! _" h' ^5 ?2 ~- i+ S2 l
__FLYFF_INITPAGE_EXT
- J, Z4 U6 T! F5 R$ q5 @
定义
. K H0 i" ?8 _
- O- y! w& v$ J$ [3 q" o+ ~
* O8 b# ?! Q" [
3 _" d5 R) v- c) V
) U0 S5 D$ }( w* M$ v+ g" v w8 Q
现在终于删除我的狗屁加速...
s) G5 ^2 `7 P7 Z( i
: o ~3 A# j1 X; Y' x
' H: A) \: ]3 ^1 j% [$ B
( Q6 [( i! B) H+ T) b$ j
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2