飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
7 r3 I& l0 k# h: A( u4 U' j' N
尾翼:
) t* o) j6 Y8 _; J# B# ]" a% v1 V
% ?$ j. z( B! N+ J* S" s2 |1 v
代码:
" I# z# Z* A4 P( J
CWndAutoFood::CWndAutoFood()
8 l( [, ?; D) z' x9 m
{
$ A8 Z" t# e% I: M! V. F
m_pItemElem = NULL;
% q% G- O3 X b# G5 B$ O
m_pTexture = NULL;
+ B# F! l7 R, K9 e" C) n
bStart = FALSE;
5 O+ k9 ^3 U, V1 N# ^1 V* ^
}
- u! R' y% L$ a. _9 i2 q) }
- U+ \. z7 W1 n; M: I
CWndAutoFood::~CWndAutoFood()
; K' j* k0 [1 S; T% X* @& o
{
6 y$ @. ^2 d9 G/ f1 V5 a6 q
AfxMessageBox( "AutoFood ist gestorben
" );
* a4 T! |( f* X# R3 z
}
7 X) v: d" l4 c& a9 V
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
) X$ Z: ~1 v. v" o a
{
3 g4 Q9 ]/ ?: c9 z; v$ p: `
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
- T$ n; n! H; K) a: R- S( f
}
. A; R/ R# U6 C4 V g) [
0 t n3 U e; x9 |& I& ]( N' L
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
7 u$ L- W$ l9 u% h6 |: O
{
: U# l! Q' P! Z
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
$ ~ a% [+ |8 e9 C! K- R+ B$ P$ X$ W
CRect rect = pWndCtrl->rect;
" Y6 P0 w# t: G' R- \# B/ j
if( rect && rect.PtInRect( point ) )
* W' F; O' L1 K, J
{
7 w8 G# E$ @$ D1 K) O6 L) X
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
1 H: U6 e8 Z5 V: u/ @) }
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
' n. d) d; P% D5 L. |
{
5 o u5 D/ k! c9 |8 e- K- z& Z' d
if( m_pItemElem )
7 V4 f) ~$ l' z" u2 n4 k4 p5 `
{
( d* m: t. t$ _4 d3 o8 k% A' J/ s* i6 v
m_pItemElem = NULL;
) t' j8 q- D2 r, Z" V
}
, ^8 L9 A8 a% S/ i& Y
m_pItemElem = pItemElem;
- N" F+ f: f9 C# w' j! j+ E
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
* H' T& E, C5 P: A
}else{
& I# g- y, p( Z7 `, E. r( ]
SetForbid( TRUE );
) a; r* z& \$ |' r% G9 `
}
6 z7 T# h% \! U1 g
}else{
- f2 j# K: ~7 i$ b
SetForbid( TRUE );
' b6 p3 T4 b+ S* I2 b$ v
}
6 l) T& H4 w8 T' ]; j. g) m
return TRUE;
/ e7 s1 o& P& \( P
}
7 r6 u# C+ q, P# N; y
0 k; m$ T# J0 g6 F/ e0 O, O
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
6 q2 } z- U% D. A0 G8 b4 P
{
: f$ W( Q& A( Z" q$ W
switch( nID )
" h! ~" y) u. B3 j5 f2 Q/ ]
{
( |2 I) S, ^& {+ Y+ u c0 l
case WIDC_BUTTON3:
4 y+ ?' ?# `/ c ?! T9 k
{
0 q. `# e/ G1 H6 |) K$ M
bStart = TRUE;
3 y) d+ `/ @. c! f6 e% ~8 ?6 K
break;
, P3 V# s0 y! l2 k/ Z+ Y$ a
}
7 B1 [ c' a" V$ H- M
case WIDC_BUTTON4:
, s) K9 F! y7 y7 D. Y% H, k3 R
{
+ v( M) j3 L3 O( N7 t4 K
bStart = FALSE;
4 A* E! Z2 Z( J3 s. B9 b
break;
) y) U8 G3 l' _% k5 Z" r; S
}
& W' A) i% Z! {7 Q2 |, |7 g: V
}
9 ~, N$ P/ i4 Q& i) _
return CWndNeuz::OnChildNotify( message, nID, pLResult );
: K: [! n1 {6 c2 F; s
}
( J- H" g/ O; b( j9 \
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
1 m+ X& {/ b' @; y
{
/ [& H3 z0 e; l+ `$ @" ^/ L
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
Y( _# S% ~0 ]
if( bStart || !m_pItemElem )
; k% J5 x4 B" E& g1 N* Q
{
! _& |8 f7 \' r3 t- e/ M
pBtn->EnableWindow( FALSE );
- a9 D' p _7 j5 v. o' l- k
}else
6 A) m5 m( t! i8 V" G
pBtn->EnableWindow( TRUE );
7 |( z- Z2 I2 x) L1 I5 ]
if( m_pTexture )
, Q/ J9 X4 c6 i4 \9 }; e; E1 L2 `
{
, `) p2 T3 l" z' k! Y6 `4 A- R1 U2 j
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* y( s) S- _: V
if( wndCtrl && wndCtrl->rect )
. i0 v6 e" H7 w/ P+ R: \
{
j0 s4 d8 P) r7 n
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
: N' b% m; F5 Q* U% y: ^
}
# Q8 ]% |+ R7 P V# X2 _
}
$ j2 V2 M$ C, S
}
6 ]7 k5 |8 W& M5 c) p; p
6 W% ]" ?, {& `. g1 |- I
BOOL CWndAutoFood:
rocess()
0 q1 W( b6 Y4 ?* H( j. j! |
{
, s# ?) f/ z; z$ z0 T
if( bStart )
4 r. ~. n) }) C8 W, f' g1 b
{
& C) j `; r \' ?' f. z+ T% s
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
, `$ O% \/ D8 U- _: c0 T1 S
{
( L3 e" G9 @7 K% B& W
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
; C" o! D- V' v3 |# X6 D
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
( G% Q) a* o B# k
}else{
& v/ r- Y5 l$ a# @- A0 b) ^
bStart = FALSE;
6 r/ u- C3 L$ Z/ Q/ x
m_pItemElem = NULL;
- ^7 j. z ~* c" f7 p6 F7 p( h
}
( v- J8 b. h! m8 H% Z
}
' D) h( Z8 d! }3 t4 z* G
return TRUE;
# T8 g, D! R- s7 ?9 Q
}
, n+ L9 n) C) n H+ }' ^1 M. c2 Q
& g0 X6 \# \9 _3 A# c7 b6 r' P
登录视频废话:
; b: e/ W* q' U' I/ t; v7 n% x
尾翼:
# `- ?8 L- u+ p; q5 A+ o* I& H
" A3 J2 O: i& r$ B5 R1 D$ ^# P
代码:
* ^5 ]+ E* r6 K" O) V7 B* p
+ S* a! Z# ~# v8 s
void CWorld::SetLight( BOOL bLight )
' u; G* M9 Y9 l' i9 t
durch
+ H, U% h+ r' [( o% u. j" I+ q
Code:
/ X T5 e( d3 O! }/ X
void CWorld::SetLight( BOOL bLight )
2 _# @. D5 _2 ?
{
7 a8 `) M( q# c5 t' B
//ACE("SetLight %d \n", bLight);
4 {4 t- D+ z+ y9 Y* v$ b6 w% P
& V" v% J1 E9 i6 @! w# {
#ifndef __WORLDSERVER
6 ~: j; S( W7 z: D/ z! U0 A
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
% l* B0 q+ B9 A6 \' ^
CLight* pLight = NULL;
$ v- v' t3 n" U h2 P8 {( F' y
+ w* ~6 w. `) q& q$ m; _! N
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
2 Q! O7 Q8 `8 ^# c# Y/ _1 r
0 J/ F/ J" ^$ H9 [% \* h
pLight = GetLight( "direction" );
5 z" B. T( i+ F5 E4 J" M* w
4 x0 }' `/ l5 q0 m% u8 v
#if __VER >= 15 // __BS_CHANGING_ENVIR
4 G+ v7 z2 |$ w+ o; d6 q
if( g_pPlayer ){
& ` G: N# E7 V1 ^; a `9 U
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
% ~8 Z% ~" Y" A+ V' x4 _
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
1 M: o z1 p7 w$ _, h. I) p
{
^! |+ O Q' |& H3 Z k" ?; L
if( pLight )
( M+ L. m2 b U& F: ~4 a( @
{
6 f8 K. S; h, q! \, M
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
; x1 Y" Z. W( W, U& }. G( l
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
5 C+ C5 w c! ?- |# b E# w
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
2 T3 J0 d2 ^; k4 @4 e$ W! n2 `
, H9 T6 O5 m: z5 s
pLight->Specular.r = 2.0f;
, t" H7 e+ e) W: l$ v
pLight->Specular.g = 2.0f;
# R5 x0 ]6 ~5 j ^3 |
pLight->Specular.b = 2.0f;
: [2 {: T7 o. b6 z4 [6 E
& m4 V* n6 L! |' H" I! I& s9 O
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
9 [! ^! q5 P, S
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
& b% n: ]$ c+ w' U
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
) O0 R8 J0 N+ o
0 S" o6 t4 Y( N$ X( K. E# r
HookUpdateLight( pLight );
, \, Y# s6 H( D: J+ V5 @) F
! p) ~2 A4 h Y( _$ d4 I3 A' \
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 ]+ r, q* i( T/ S/ S
8 E1 Y7 ]' g: U C# B( K
pLight->Diffuse.r *= 1.2f;
" C/ L( t- ~, K s a7 `2 H9 u
pLight->Diffuse.g *= 1.2f;
+ F0 C/ H6 h4 d
pLight->Diffuse.b *= 1.2f;
$ u$ n5 B+ C$ B1 t" b
. r3 k Y7 F' W% w. I
pLight->Ambient.r *= 0.8f;
; Q) c% _5 J P8 B5 W/ E" W% x
pLight->Ambient.g *= 0.8f;
' ?- ]- n5 u1 y' W9 I; Q' c8 h) d
pLight->Ambient.b *= 0.8f;
) h7 H$ [7 @' q2 u: a# f- U
" y! w: s1 A5 X0 m
memcpy( &m_light, pLight, sizeof( m_light ) );
3 e( B& P0 F( w- I7 ?
- \; b* G5 c5 F9 W2 E
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) F* i9 ^ P$ C. x
D3DXVec3Normalize(&(vecSun),&(vecSun));
! O0 \1 m. L! j* w1 B& m& g
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
( V; S0 e- X, {7 c& p/ e8 A
pLight->Appear( m_pd3dDevice, TRUE );
6 M6 | O+ R0 r
2 ]8 n/ }$ Z# L3 N, p
DWORD dwR, dwG, dwB;
4 g. e* o$ B \! p1 k
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ W- D" i3 H/ T1 o8 I& |; r; m
dwG = (DWORD)( pLight->Ambient.g * 255 );
H$ j* _! D" `' E# L3 E
dwB = (DWORD)( pLight->Ambient.b * 255 );
5 S. z" r4 ~7 b1 A7 j$ q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) t0 P7 B6 Q/ O8 R# j
}
, H3 r; |% a, F) f- ^, J5 M5 s/ Y
}
: h4 F! g% j; i' P
}
7 j& J, n; w3 b7 c/ S- @# r
else
! e8 b6 R" D2 [. {3 O# \& q
#endif
- v0 H R( ]2 e+ c
, W0 V3 ]# V% v9 E
if( m_bIsIndoor )
7 a4 b! x( C. T6 ~9 u4 Y
{
% H7 w, n R3 @; O( u
if( pLight )
7 I% q: w; E2 W* X/ R: s. t9 F
{
* |' |6 |$ O5 L% e
// à??μ oˉè*
, \3 E$ a& q i) Q8 }
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
; p% u9 b1 K/ x' v7 p
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
5 Q. D( b6 {1 h3 K k( k, B! U
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
" |4 v0 l M* C. i
) m5 s- e) I+ |1 |; Z: ^3 J
// oˉè* ??à?
) T# T! F* I. |" {5 ?- g
pLight->Specular.r = 1.0f;
! E. ~& v# [ |& q3 P5 b$ g5 V
pLight->Specular.g = 1.0f;
4 X# x+ ~7 P4 Y4 w% G
pLight->Specular.b = 1.0f;
4 E' \3 S/ K7 ^
// àü?? oˉè*
A! _, Z, b7 z
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
9 y r) I0 I- u, P- T: q" d1 q/ ~
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
7 L, q/ C! R+ \
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
, g4 Y2 y# u) [9 a
7 N- R9 v' p: j6 e8 `$ `+ [6 n
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
( W& U; S% I0 [7 Q& W3 U' q; \0 Y, K) B
{
! ?4 T- W6 V2 m1 V7 A- g {9 z
pLight->Diffuse.r *= 0.6f;
/ T5 ~" i& h! I) N0 `7 t9 g
pLight->Diffuse.g *= 0.6f;
6 a* E: |! C3 Y, L1 N% W& g& x
pLight->Diffuse.b *= 0.6f;
5 O& Q, L' c3 {$ N' p7 P0 ~
pLight->Ambient.r *= 0.7f;
. X7 L H$ N# V0 Y0 l
pLight->Ambient.g *= 0.7f;
8 }! _' g3 c, P0 R5 I7 @
pLight->Ambient.b *= 0.7f;
6 Z6 y% _) D2 r' T$ ~1 L
}
7 \8 E, c* I/ y
3 [4 m0 v9 J7 ^
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 ~7 u% s; R1 |! ?
if( g_pPlayer )
& e: |9 q6 g* z$ q' u: J4 ^
HookUpdateLight( pLight );
?' D( i* X4 S
#endif
9 Q o# m1 P+ Z5 M3 W5 X: s
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ @, A" \) m p) @' G2 l- ~
4 d2 |5 D3 R! B3 g
pLight->Diffuse.r += 0.1f;
" m; a# \8 i5 \" P+ o0 S
pLight->Diffuse.g += 0.1f;
: f, V1 }5 F$ n; a' A8 ~$ }
pLight->Diffuse.b += 0.1f;
9 a4 d) u. O+ G1 d: Q
// oˉè* ??à?
2 y. r; }* E# T9 g- V' @
pLight->Specular.r = 2.0f;
* b9 J, [8 {" ]' p' q2 r! F
pLight->Specular.g = 2.0f;
7 @: |! y6 ~; x3 A- I! O! S9 L* r, \
pLight->Specular.b = 2.0f;
: N9 I1 t0 K8 z* Y S5 ]- W$ c
// á?oˉ
7 A; a7 D) D+ p! ?$ s7 Q+ L$ I- n+ H
pLight->Ambient.r *= 0.9f;
+ X- S: l# H8 K" z# r' O0 t# \. B
pLight->Ambient.g *= 0.9f;
C3 O6 O) ?) z+ d- |: K6 O
pLight->Ambient.b *= 0.9f;
, \) x, `" e! L8 f- u% U
! z* I' [$ W8 Q3 r' \# K
memcpy( &m_light, pLight, sizeof( m_light ) );
# f% @+ s9 o$ `# @
! ?; \! ]$ M; w8 |! E- {2 o
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
7 {+ j2 y, Q# c A7 _
pLight->Appear( m_pd3dDevice, TRUE );
+ E* a1 f$ {7 @* s; p
6 r. }1 n, m8 M# m' n5 F
DWORD dwR, dwG, dwB;
5 S: F* ^5 ~. i% \9 R, n) n- W
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 Q0 a+ q, v& S' x) `
dwG = (DWORD)( pLight->Ambient.g * 255 );
* J, a5 N! t1 T4 B% ]6 c
dwB = (DWORD)( pLight->Ambient.b * 255 );
- @" D4 K* D8 d0 h) y `, Z
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
9 [! u, t8 B- v! u
}
% p+ X9 `4 ?0 e1 M
}
# V, G6 u6 n* M+ D W
else
2 L* E5 \6 j" v
{
5 w. C$ D' F4 m3 U3 }
if( pLight )
* O, c& W e& Z9 p% k2 L3 M
{
, g7 J6 r' F3 }
+ n" ?3 l% E M6 _
int nHour = 8, nMin = 0;
1 A+ O- C8 V- C' S' `5 v
#ifdef __CLIENT
8 ~. H# G4 V2 R3 a+ b
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
: _2 }6 ^. N1 V' E- c v
nHour = g_GameTimer.m_nHour;
: j0 q2 O ~3 c$ | t
nMin = g_GameTimer.m_nMin ;
2 b$ H7 z. Y. } _
#else
" y+ b n3 p( N7 J! z' N/ c5 @
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
# B5 b3 K0 G+ ]2 b. d
if( m_nLightType == 1 )
& Q, _: }, w: i
nHour = m_nLightHour;
, W6 Q8 L7 {$ j% \) C& S
#endif
0 [) D( U- ~* G3 }" S7 ?
nHour--;
" E7 `5 f9 g) |: b( w6 k* `- F' ^
if( nHour < 0 ) nHour = 0;
6 }7 w9 J1 t U% O# F
if( nHour > 23 ) nHour = 23;
) \' c: l, k* e3 I0 I6 y
7 Y" q+ [% W& l8 M/ s; m D/ z" d
//if( m_bFixedHour )
. ~5 B4 f" v8 m- P: J8 }+ Z
// nHour = m_nFixedHour, nMin = 0;
& Q5 ~' b8 q. c/ `% q5 E ?
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
$ j# Y0 u1 F' ^2 ]3 H
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
, ?1 G/ q8 F7 Z& n% Q7 W
6 n9 f1 m2 h$ [% i% b. r5 g, A0 B _7 g
//m_lightColor = lightColorPrv;
: \8 e$ M ^2 c i N* U
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
% y* {4 v& m- j" _6 H7 ~ I
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
/ d5 O! @; s* m& X
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
; K ?5 q# O4 D" O; [% ~
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
% V+ J2 c4 w! q% {7 `/ l
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
# r' `& ^% D; b
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
' a% x2 J, ^, x# P
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
, ?4 j& Z0 K, Z
' `' J/ R# z# Y3 p& R( m7 o
// à??μ oˉè*
# N+ w7 h" j. [4 W
pLight->Diffuse.r = lightColorPrv.r1;
6 B7 `& f5 z+ @1 n
pLight->Diffuse.g = lightColorPrv.g1;
( ~& H7 d& `4 F6 G$ ?
pLight->Diffuse.b = lightColorPrv.b1;
+ _; {( h. M1 }, @( b
// oˉè* ??à?
/ L4 P' r5 E; @8 d5 u; b- ]' I
pLight->Specular.r = 1.0f;
& D3 s- }2 y A* o( ?/ t9 z
pLight->Specular.g = 1.0f;
0 L$ I6 F- B1 r2 h9 `
pLight->Specular.b = 1.0f;
" I( q8 \1 H. C( @4 j! T2 c- @
// àü?? oˉè*
$ q! u1 j, N z" Y4 t7 ~
pLight->Ambient.r = lightColorPrv.r2;
& m* J" V! ^1 X7 _7 b
pLight->Ambient.g = lightColorPrv.g2;
7 e k/ a p% P# P/ |$ W) p9 D
pLight->Ambient.b = lightColorPrv.b2;
E. C. T" N {8 R/ s
0 q( T" A$ d, X0 \: B: n3 k
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
: {" F7 X- `: o
{
" B0 t4 s! k% B# R" D
pLight->Diffuse.r *= 0.6f;
/ l% c' _3 }7 o, D6 M2 T+ b; _! o
pLight->Diffuse.g *= 0.6f;
8 c/ r l# ?/ M- {) H, B* P6 x
pLight->Diffuse.b *= 0.6f;
5 n! K, f0 L( k- ^
pLight->Ambient.r *= 0.7f;
( @2 l+ U8 c3 x* }
pLight->Ambient.g *= 0.7f;
2 [3 X# E! T5 E, F& H
pLight->Ambient.b *= 0.7f;
; u1 C& ^+ r8 l
}
# R5 N5 \+ D. |4 I* `
; P3 i& H& _0 L
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 Q1 w" h- y' k7 g1 i
if( g_pPlayer )
# q- _3 Q* H# S3 [. [7 P7 d9 y5 O- ?
HookUpdateLight( pLight );
/ t7 N/ _9 h$ V+ J$ ^
#endif
- p7 e: p1 @2 B S" d5 Y0 @3 [, v. o
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" x7 C' s, p" F! ^2 `
, {7 |7 `2 X5 Z$ C; [
#ifdef __YENV
1 x! ]& D& N/ @3 V- ?# F
pLight->Diffuse.r *= 1.1f;
+ }- }8 J x( r2 z4 t k
pLight->Diffuse.g *= 1.1f;
; L1 e! ^$ p' D. a4 \' K
pLight->Diffuse.b *= 1.1f;
# ^& f9 F& J2 }' Z8 d
// oˉè* ??à?
! r" p) X6 |+ k1 R
pLight->Specular.r = 2.0f;
?# Y% i9 L: f* Q. V) f3 e
pLight->Specular.g = 2.0f;
1 `# l- Q2 K \+ e
pLight->Specular.b = 2.0f;
! I* H! _9 ~. X# D
// á?oˉ
) m# g5 C/ Q( A6 b
pLight->Ambient.r *= 1.0f;
1 Q0 P7 ^& d! Z5 ]
pLight->Ambient.g *= 1.0f;
, I' m8 ]7 j- f; Z; T- d7 y
pLight->Ambient.b *= 1.0f;
) O1 m- v1 ?) G, w; q8 D
#else //__YENV
/ l) T/ g' z) f ~( Q6 K: h
pLight->Diffuse.r *= 1.1f;
4 N& h2 v3 V- O, \
pLight->Diffuse.g *= 1.1f;
0 I$ v5 N/ H: l) i1 h) a
pLight->Diffuse.b *= 1.1f;
& p' D# m! s# x7 H
// oˉè* ??à?
7 [" c: r1 ?" H
pLight->Specular.r = 2.0f;
. _* @2 c2 c1 z5 w l- {
pLight->Specular.g = 2.0f;
8 ?, l0 }) i1 f
pLight->Specular.b = 2.0f;
. w! T( l' U. V& o% `2 ?: c3 q
// á?oˉ
# w0 b, _# R5 e
pLight->Ambient.r *= 0.9f;
6 s; C6 ^; J5 ~' }; Q
pLight->Ambient.g *= 0.9f;
0 q5 p; \! V3 ~4 |
pLight->Ambient.b *= 0.9f;
( j9 s& {% }0 W
#endif //__YENV
0 c& s: G# A, b- f. X. w* c, Y: k
, O9 m- k8 p( c# D8 e# U, P
memcpy( &m_light, pLight, sizeof( m_light ) );
! i% D7 D% ?4 U: D% G. Y
5 K& _+ M0 L- j4 e) e/ o: }$ R4 ~
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
8 t1 x2 ]$ ?/ K- I, G+ h
D3DXMATRIX matTemp;
% H6 v" X# K2 H- A. ^( f( h& I
static const float CONS_VAL = 3.1415926f / 180.f;
( \% E5 x7 R8 z2 a% ~* W" ]8 ?
, Q' @& K H% K0 p4 H
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
/ c; v0 Y% K3 n5 [% X( _
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
! U. K' d2 R/ ]& c/ e( a! D
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
: O' p' I2 d- ?( w
pLight->Appear( m_pd3dDevice, TRUE );
- u! s, S/ X$ q( i4 n1 C
" G; \1 Z7 X; v. M, Q* E
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
4 u9 V. @( A; N# L3 ^8 Z( X/ V0 O& _
// D3DXVec3Normalize(&(vecSun),&(vecSun));
4 d' j7 H& ^! j* m
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
* X% a# l% s% E1 N0 M9 E Z
& u4 R! F. U) r% K& D
DWORD dwR, dwG, dwB;
6 X; r7 l2 w t8 d* [2 D* x
dwR = (DWORD)( pLight->Ambient.r * 255 );
) {& V- C5 {, y/ o! o2 v% r8 D
dwG = (DWORD)( pLight->Ambient.g * 255 );
% F# {; _' @9 t, L- I/ I5 d
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 L; p" h1 [$ z% A' ?+ l2 c
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# I% E3 R5 ]* c5 y
}
' D+ v4 I- B/ W- Y
}
& r7 [0 D! v0 V3 r
1 }; @2 b# G% k8 t; n. F2 x( U
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
+ `- s9 x, V U/ v3 v
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 X; p# u* w% V5 |; r; Z1 s
::SetLight( bLight );
3 R' `' z# h% S, J* q: @/ M
' ^# C$ C' u5 F( Q' X, P
// ±ao? ?D?í???ó á¤à?
( y L0 |: `9 _" W
m_pd3dDevice->SetMaterial( &m_baseMaterial );
) ^! T0 }8 A6 V% `
% Z9 s9 e3 f: u: @6 W7 V$ L3 E
#endif // not WORLDSERVER
& k& f2 v! E0 x
}
' y8 u' d" D6 w
并更换
7 Z" V g# a9 { P3 N, ]) F% S; X
Code:
; ^) j0 r+ u3 }* V J
__FLYFF_INITPAGE_EXT
2 ^/ \7 N3 C% q
定义
; q% X+ S9 i! _' ]2 L l4 j
4 D, U: B+ y- Q; i$ [) }7 v
* M8 ^( q% [) x8 c, r9 ]" Z; e
7 H9 Y1 n6 f4 K9 r5 z! }9 E
1 k$ y: ? U$ B1 n) }
现在终于删除我的狗屁加速...
& W9 v1 V( X/ |5 J/ X: p
" q6 B8 G( r7 B# z
3 [8 ~0 Q8 \& f5 [5 h# L3 l% [
$ H) i+ l# c/ s
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2