飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
3 d; k6 t" p0 Y) u" {% Z
尾翼:
' P, R0 I' }5 N4 r) c$ [
# B9 n# ]! k% U9 t0 R" E
代码:
U+ y, q% x5 @1 u' e& D
CWndAutoFood::CWndAutoFood()
. s! D+ L" q3 T3 u" h: l) j5 R3 ~
{
' f! Z2 ?& F" P# i" t5 k
m_pItemElem = NULL;
: v( b+ ^# I4 c: \# R7 c9 Z1 _
m_pTexture = NULL;
$ @+ t2 b, j! ] Q& C H, f& _& K
bStart = FALSE;
8 v$ w1 j$ r8 D$ ]" P: ^# F; r6 w
}
/ o, A, @$ X# h+ N) m2 V+ Y
?! J2 s# \' `# K. a [. y
CWndAutoFood::~CWndAutoFood()
4 I f3 z/ Y2 s1 ~. }, l; {
{
9 N. k) K" g- w# N3 I
AfxMessageBox( "AutoFood ist gestorben
" );
9 r0 d9 `6 U5 Q! e) ?1 u8 l7 M
}
, H1 T1 ]) A8 r
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
. B- l! t1 {' w" I) _& D1 J
{
* N, F8 u& j3 f3 d1 ~" _; c2 E
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
) {5 ]9 G& o) u
}
: {" X" B4 W8 i# @; i; r0 ] K$ T6 L3 |
/ p* o2 U& }. w# M& m6 U
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
: x; W7 I& J8 X
{
( T2 n/ p1 z3 h; a$ \
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* b% p* V& n2 B9 t( o9 E) M
CRect rect = pWndCtrl->rect;
j1 s b+ L2 K7 E* V4 U! n7 m
if( rect && rect.PtInRect( point ) )
( _+ D/ v) a+ w+ L# J5 [4 ]' Q$ }
{
7 Q4 h, U0 z) z' T, F# s
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
0 r' a3 U! K; }7 k8 o& K
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
& g& L/ C% h1 Z" m+ D
{
4 w9 I7 l5 u! S/ _
if( m_pItemElem )
: `0 I+ b" \9 f" v* ~$ U& v
{
/ s8 Y$ r: F# L
m_pItemElem = NULL;
3 j, L/ }3 O; c7 O$ D" `3 z
}
. p! B+ k% r+ D k( V! \# z
m_pItemElem = pItemElem;
! A" e: H' Z, c* i' {9 I; y6 |" M5 q
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
9 z( G- Y- w$ v/ G1 }+ T4 Q, A
}else{
) r3 O% @ ^3 H
SetForbid( TRUE );
5 y [8 H. c1 G: C
}
- u5 F3 V$ [/ [! f
}else{
. P" a2 p# @) G& c2 v: ^
SetForbid( TRUE );
! j( W2 n& w! V& ? d
}
( J* K$ b. g8 k. q
return TRUE;
: }2 E# ?, |+ _# e
}
$ E; U; S1 l; O4 w* H$ B' Y
' _& }! ^. \9 X1 Y% |
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
5 N7 x2 m) u2 E$ i3 j
{
6 u. {8 Z* x$ s3 i; m+ ]8 e% Y$ [
switch( nID )
+ n V# e, v# I9 |1 s/ t. ?) X
{
- A' @4 f" ^5 [1 H; }4 W# [
case WIDC_BUTTON3:
3 [7 R9 D4 u6 h" ~" }" V" I" e
{
8 m0 Q o9 p8 t* j
bStart = TRUE;
8 r0 @, e! s* a- ]
break;
# D, _: c# D$ g! F
}
8 Y+ |$ I. {# F
case WIDC_BUTTON4:
$ b2 q; B( T5 d; f& v# r* e
{
. }5 _0 \" F& h2 E1 n
bStart = FALSE;
; |: H! L3 y" U/ k8 k7 m0 T
break;
& _" u" H: [9 r5 S+ A
}
5 P9 c* w8 G5 ^, T+ E
}
0 z3 m* c; l6 t4 l
return CWndNeuz::OnChildNotify( message, nID, pLResult );
$ U0 {, B$ \0 ~- c
}
' H- ] @% _; f( V% s F. g/ p
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
1 B, Z5 t+ j& b, p' F! G
{
8 ~) u; m2 q# R% B' R8 Y: b
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
$ e* O' e1 w2 W8 Q2 o& A) ?
if( bStart || !m_pItemElem )
8 F6 w0 F o: S$ | d& Z% f1 u' z
{
3 U, s. x5 [, J) x& _0 i2 U5 G! V
pBtn->EnableWindow( FALSE );
7 D: a' L I) n5 c$ {6 a3 U1 {
}else
7 @, F! l- H4 c: w
pBtn->EnableWindow( TRUE );
# L7 @! M/ f$ d4 X1 H- T+ ^
if( m_pTexture )
% r: M/ |+ u+ O+ L
{
8 v2 w3 o# [/ `+ s% c
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 P8 J3 \5 s2 ~2 ?! T
if( wndCtrl && wndCtrl->rect )
, \ R# q, l% @9 ], ?' [
{
h1 M4 ^4 j1 |: E) V9 o G
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
) Y8 h$ K( c7 A8 L9 @' r% X% g6 [8 d3 s
}
( Q# U. b$ c1 i* g" C
}
$ P6 M4 O* r# Y9 l2 [$ @, d% \
}
" O" h2 A% l& S( j
t! M: u) P" j6 [" x
BOOL CWndAutoFood:
rocess()
* ^* X- f, w0 R2 Z
{
" I: d/ l$ d% ]9 T9 U5 X& Y9 f
if( bStart )
, R: X1 W6 L$ ]) m9 u
{
% m& b" G- q8 N
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
6 B7 J# ], s* [# W
{
& ^0 O7 a7 l, q: q' c. ?
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
% \/ a$ v6 r5 Z; z) f' P
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
& O3 e" W5 ~% U! C: r/ V0 ]
}else{
& R2 [; |" s$ Z- ?' q+ T3 @
bStart = FALSE;
( F0 k9 V: X; S. F' v# A- J
m_pItemElem = NULL;
# ^- L8 w" [0 S# C; H2 e
}
! C& C4 x7 t3 G8 {, W
}
, ] p) D1 q* C5 a$ H) ^
return TRUE;
; Q E0 t5 o, I9 [+ s
}
2 ^2 L9 ~' Q$ p' |
& X7 F6 e: t* s3 Q
登录视频废话:
# h8 A2 r6 H0 m3 [+ y- V% Z
尾翼:
: }# N; a+ l% u) @
. d, [; [ x! q" a
代码:
8 _. N+ N$ T) E1 V
/ j! p: r- f+ h+ `
void CWorld::SetLight( BOOL bLight )
" U9 X; d* _, `2 i* o- V
durch
0 I" r( g3 z9 D
Code:
. E& B' f- P1 A- ]8 r/ f/ x
void CWorld::SetLight( BOOL bLight )
, H! C8 \# _4 r- o' L. E
{
3 u; ]' U" n- u0 S# }
//ACE("SetLight %d \n", bLight);
6 ?& V! d2 b. _. F0 P% S1 c
, ^- m/ i9 Q5 h2 w9 D
#ifndef __WORLDSERVER
) S/ _, I" b& ?3 n9 ~$ |* d/ }5 X
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
/ P5 I7 W$ K- {
CLight* pLight = NULL;
" {* u/ x( h8 g3 U- X: C9 D! @/ g9 N) e
5 R, m/ t# C! v3 b# w; o) Y$ u
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
( D+ o5 U2 O0 i6 x8 `. _0 ^
% {3 B2 V" c% E7 |( a- m! F' m
pLight = GetLight( "direction" );
. d p6 Z- {: Q) f
$ h3 S: p) }3 p5 }5 p
#if __VER >= 15 // __BS_CHANGING_ENVIR
% J' _2 z S+ C8 I
if( g_pPlayer ){
/ o& q/ n a- D
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
9 {2 i! \$ C# l( s/ B+ u
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
P! a$ ^* S! V! G/ G* o% L
{
! X. g7 F3 ]* F7 p' e
if( pLight )
; q+ m& d5 k" c' R* k, P2 c6 D
{
* ]( h1 ~5 w. c; X2 h$ M+ r
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
3 Q! |) U2 m8 l; G5 T. a
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
3 K3 `5 `) I7 f! H2 P3 u5 V
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
2 m/ x+ {' B. S' m; g3 C/ Y# N
2 {7 Z: Y* j1 K$ t$ g3 x9 J
pLight->Specular.r = 2.0f;
8 e* W4 H) p: \7 d4 l
pLight->Specular.g = 2.0f;
# q4 L" K5 [) W$ P+ y, Q( K$ D4 B3 Q
pLight->Specular.b = 2.0f;
, i! r! s I" W# Y, q
* z% w j* K1 P/ E. v: {
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
7 ~' {7 I/ ^9 X! g8 p
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
9 B2 o% A$ n. [7 {
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
9 a6 s/ n6 j) {) s. o
m) t& c$ u# C
HookUpdateLight( pLight );
; F- A* y3 J! e( L2 b
2 [& m1 Y3 G9 E& ^$ x
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ N+ j* W" ?2 n& m2 E. i
0 Q5 P! |5 t+ z
pLight->Diffuse.r *= 1.2f;
9 ^3 c0 T' U, ^3 t- X9 D
pLight->Diffuse.g *= 1.2f;
' X& ]2 J0 G, @
pLight->Diffuse.b *= 1.2f;
4 v U, a" H6 U: ?$ e: o4 O( }4 e3 U
( \9 u- q! k0 t. I8 Q
pLight->Ambient.r *= 0.8f;
, K/ b" q( z8 ~% \6 _; b
pLight->Ambient.g *= 0.8f;
* I& v! U2 X/ q/ E9 E5 [7 y
pLight->Ambient.b *= 0.8f;
7 \9 |/ \/ v) l8 j s
% e, c% V1 J; b+ e7 k! A0 R( U; F3 H
memcpy( &m_light, pLight, sizeof( m_light ) );
! o; I- |9 k; ^( ?5 ~0 z
( A9 g i Z8 g* X3 E
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
2 s, G& S) C" J. y4 o7 ]& W+ H. ~
D3DXVec3Normalize(&(vecSun),&(vecSun));
* A$ A1 _; U. I8 e7 [
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# w4 G: c! Y; e# m% F
pLight->Appear( m_pd3dDevice, TRUE );
/ t: {2 A) K4 i
: s- s" ?: j% C, k G, ~
DWORD dwR, dwG, dwB;
( ~- F2 g: o# @8 \5 `4 `: d
dwR = (DWORD)( pLight->Ambient.r * 255 );
, m5 Y& t; T) X- ]! R; W
dwG = (DWORD)( pLight->Ambient.g * 255 );
, I8 ]7 `, T2 c, B7 v
dwB = (DWORD)( pLight->Ambient.b * 255 );
# G! P6 W7 ^* h% H. @
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
& P' X3 d. |" f
}
% H/ {7 X, e' z8 D4 g6 I! t- G
}
8 W6 y+ e8 Y1 l( U8 y8 K8 [
}
' z# f. ], r. `# [
else
5 H+ \, { l4 d% u5 W7 \7 y
#endif
: W* w5 t7 z3 e% g4 B
* s. m3 D+ M9 t. p4 j- J
if( m_bIsIndoor )
$ J" e6 T% s5 d5 I
{
6 E! R, v9 Q/ p) J/ ]+ E/ r
if( pLight )
5 D$ ^7 B' V8 K8 n
{
5 ?% e0 I6 _6 O. J" A3 R- x
// à??μ oˉè*
+ U7 b* R! N& g; P; z; Y+ k
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
& V- F. e$ M0 x, q& K
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
& @5 h) l! e) r: o; a" q
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
. {- O9 I! I! X4 N. @
$ c2 K" {* I5 Y# h
// oˉè* ??à?
+ `: L0 V' y4 ^) U$ A4 A$ O
pLight->Specular.r = 1.0f;
; |. c0 L6 V5 M F) m+ C) ?
pLight->Specular.g = 1.0f;
0 F r0 `) J6 M A/ E
pLight->Specular.b = 1.0f;
+ J6 Y( u/ c4 @9 W0 x8 ^
// àü?? oˉè*
[$ L2 _7 e1 M
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
7 S! X9 J5 S8 p" e, R5 Z- k
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
( Z, `9 l& J7 ~3 h) i
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
7 C6 g0 O# A% @ ?* `# D7 e
$ {0 \; P( `! v/ r7 p
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
8 a+ ?' p3 I" V2 q
{
5 l; E( z G. G8 h5 V/ {8 h" H% G
pLight->Diffuse.r *= 0.6f;
- d# i" t- Z7 _" @% |+ d$ a
pLight->Diffuse.g *= 0.6f;
+ D' p" t# }7 z. g& s3 _
pLight->Diffuse.b *= 0.6f;
k- ~1 v0 o3 }& V I( j
pLight->Ambient.r *= 0.7f;
& t# R" e: H; _8 |3 c" o# z* w
pLight->Ambient.g *= 0.7f;
' I% C, S* O7 ] b
pLight->Ambient.b *= 0.7f;
: n {" M: T& ~" _( m
}
/ _4 F1 J* ^3 T5 D
0 ?& n5 n' y, X4 X5 x: O) v: u
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ @4 m! s( D/ n+ a- d3 ]
if( g_pPlayer )
2 W+ a, y* y( m) L( I8 X. P
HookUpdateLight( pLight );
) z5 D4 s% v, n G2 G$ m
#endif
- F, s& d, }7 k) m# t- c' }
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. C( M9 I* n2 d. X) H9 ]4 a. b' U
O* p* I& J9 u' K* `5 n4 c, C
pLight->Diffuse.r += 0.1f;
% k5 i5 r8 [3 z, j& U' \
pLight->Diffuse.g += 0.1f;
U/ C6 \! g, H9 f$ h, A. ?: ~' u
pLight->Diffuse.b += 0.1f;
' [1 o# `. E; \1 C/ ~
// oˉè* ??à?
' D" N( i7 E& y9 N0 V9 T: `0 a
pLight->Specular.r = 2.0f;
. N/ d* z- C7 o+ a* o, L: l
pLight->Specular.g = 2.0f;
6 a$ i3 F7 h0 {$ w6 ?; Y X
pLight->Specular.b = 2.0f;
2 K7 s" u( i' Z
// á?oˉ
* z8 e) W2 n" B" F
pLight->Ambient.r *= 0.9f;
! w7 Z, \& b% k# U B+ E/ u8 o& j
pLight->Ambient.g *= 0.9f;
- |5 Z$ `: ~6 q# U! i
pLight->Ambient.b *= 0.9f;
. }3 j# i1 ]/ N8 T0 H
, g: K7 }4 m. L( C
memcpy( &m_light, pLight, sizeof( m_light ) );
; t4 O9 \5 u u
5 `, c9 T3 |- R
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
* T/ c3 M5 S$ T7 ~
pLight->Appear( m_pd3dDevice, TRUE );
! }8 ~% e/ E' D9 s5 s& C7 ~$ b+ M
2 ]! B7 _ h) b- O( ~
DWORD dwR, dwG, dwB;
5 Z; K: D; d$ V4 \1 f- j" i
dwR = (DWORD)( pLight->Ambient.r * 255 );
( |5 e% x2 s+ @. L* m
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 Y) o/ y9 `6 o6 G
dwB = (DWORD)( pLight->Ambient.b * 255 );
( i3 s0 _+ J) u! x
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' X _4 r0 }7 L; ?$ T7 @3 W
}
- ~) O1 l8 y6 c
}
4 J' Y4 q/ D2 o
else
' e6 q; R2 p8 d% y/ Q
{
: m0 b/ C! q! `3 m
if( pLight )
: \, S* r6 z. {) E* K& ]
{
* w. l" `3 y8 w" I* ]9 L
M$ T7 E( V# j2 O( G3 @1 [
int nHour = 8, nMin = 0;
7 @5 F4 x! b2 ?- r1 \3 }# {( _
#ifdef __CLIENT
, ?, j% \2 ~- [7 Z: [
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
* {' V8 d+ }# z$ `% Q
nHour = g_GameTimer.m_nHour;
1 \3 x8 n! _1 P
nMin = g_GameTimer.m_nMin ;
* G4 B) Y* X" L4 g( w3 b+ A* A2 E
#else
0 G/ q4 Q' w1 Z% ?( m. `
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
8 ~, t5 ]4 ]1 e# q
if( m_nLightType == 1 )
2 Y4 K: i9 u) V; B% L$ C; U/ w* }
nHour = m_nLightHour;
8 A( f; g; Z' ]- _ U: I
#endif
* @; W0 d9 A1 {9 q5 J! {, f
nHour--;
" E1 g" b$ O6 C( `. q4 Z/ G
if( nHour < 0 ) nHour = 0;
3 M) p# V( o. h0 Q z' @
if( nHour > 23 ) nHour = 23;
# }; @" y$ U. ^
: P6 G3 X- |/ ?- H- J/ O
//if( m_bFixedHour )
. e; {/ ^$ U6 t+ F3 L
// nHour = m_nFixedHour, nMin = 0;
) p" X3 a5 e O, { o. U
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
' U& ?% _1 ?5 C. j1 H; N$ S4 o
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
7 u d3 u: R* ?! t
6 h. R ~0 y4 X* P% E0 h
//m_lightColor = lightColorPrv;
; L' y. w _/ P% J
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
L) z( |2 r& s5 W! m) ~
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
: _* U- M; x0 T# i4 s( ]
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
' O1 K8 R$ s5 r$ k
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
" j+ r9 t5 j% }3 n9 U6 P, `& f
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
" @, H+ r2 A8 O. M
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
4 \7 P& F4 q5 x+ X
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
) q" x% u7 q& t9 v2 }0 d
/ ]( }1 h% e, {) q5 X0 g/ R1 Q
// à??μ oˉè*
! y" R+ y3 {; G8 w
pLight->Diffuse.r = lightColorPrv.r1;
3 k% e/ ^0 t: I U
pLight->Diffuse.g = lightColorPrv.g1;
: L+ h* I- O8 i& q, ?# @
pLight->Diffuse.b = lightColorPrv.b1;
1 n5 C. S' |3 `& r- I
// oˉè* ??à?
2 F' W) n, F8 c- _- y
pLight->Specular.r = 1.0f;
% m' p" R. G* |8 K1 X4 m
pLight->Specular.g = 1.0f;
# O! h. t) x f; z' o; s
pLight->Specular.b = 1.0f;
& O& j, T4 ], a) _3 }9 T
// àü?? oˉè*
0 r( {5 X9 s- |' _, M5 S1 [/ z: S
pLight->Ambient.r = lightColorPrv.r2;
8 f9 M2 s" X- T K9 }$ D& g/ b" J, e
pLight->Ambient.g = lightColorPrv.g2;
& Q, }! P; S# _3 | I9 O; L
pLight->Ambient.b = lightColorPrv.b2;
( ^7 M' B' v8 I
* T1 C+ n+ L3 v- m- N
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, \! ^) Z8 p" @2 }, C2 }
{
9 K# V# ]+ c' @% {, k4 j
pLight->Diffuse.r *= 0.6f;
, z5 j/ j) k+ } O
pLight->Diffuse.g *= 0.6f;
: z- m8 _: q, Y# h4 i! y* B! |2 e
pLight->Diffuse.b *= 0.6f;
6 I/ n" d6 c8 b4 [ |! i& T* b2 S" p
pLight->Ambient.r *= 0.7f;
2 d/ X+ e ]! m& l( l0 ^( n: v
pLight->Ambient.g *= 0.7f;
% B7 `# M8 f+ l& _, w
pLight->Ambient.b *= 0.7f;
L7 [9 ~" d# e9 T
}
/ d5 a) E: Z$ m( G# |! X
" g O, P' Z1 c
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 i2 n5 n Z% ]7 d' c7 q2 R) Q- i7 L
if( g_pPlayer )
. s7 X/ a8 F) R/ r6 d$ |
HookUpdateLight( pLight );
6 ?$ w9 |# G9 ]; ~; M g1 w
#endif
) O! b: _! S, W+ l+ U
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: F# ~9 Q& A2 f3 L) R+ s4 A
9 h1 ~. N# | O7 W- G3 e$ j
#ifdef __YENV
! r5 W$ R6 ?* ^: O3 X3 P
pLight->Diffuse.r *= 1.1f;
~7 B5 Q$ m5 k9 O, {1 }
pLight->Diffuse.g *= 1.1f;
( l6 @# Y4 z0 f; D; ]8 d$ U
pLight->Diffuse.b *= 1.1f;
" U8 a; L- K$ b) p9 A4 T* b
// oˉè* ??à?
) u" {4 Z9 K/ w: _
pLight->Specular.r = 2.0f;
- l2 o. p. Z' {6 C
pLight->Specular.g = 2.0f;
& i. `+ \' X' W: c
pLight->Specular.b = 2.0f;
: q" X8 q# \& |: B
// á?oˉ
; ]7 t, Q& s! ~' i! f6 I; t$ w
pLight->Ambient.r *= 1.0f;
" m" a. m, J9 P7 r; ]6 A
pLight->Ambient.g *= 1.0f;
% @6 D3 F- V) w8 T/ E1 l
pLight->Ambient.b *= 1.0f;
9 Y& X1 |7 w5 i1 u' y5 e
#else //__YENV
; w- I2 b. u! _& p/ k
pLight->Diffuse.r *= 1.1f;
+ w1 ?. I# D/ q8 c
pLight->Diffuse.g *= 1.1f;
. ^0 v0 v7 V* X+ A9 v9 g% D
pLight->Diffuse.b *= 1.1f;
9 d# j. c( x$ K2 h# z: u$ Y# {5 d
// oˉè* ??à?
! K0 P$ {/ B- C+ U4 G
pLight->Specular.r = 2.0f;
2 h# u+ x; r! M8 k( K( z4 L, ?
pLight->Specular.g = 2.0f;
3 U4 l/ F, P8 e V4 {, K
pLight->Specular.b = 2.0f;
1 |/ B) D1 g. ]1 D
// á?oˉ
9 D1 C( H- Z- K* m9 \
pLight->Ambient.r *= 0.9f;
]+ `5 e u5 b
pLight->Ambient.g *= 0.9f;
6 I' Y0 \, Y* v/ m% e
pLight->Ambient.b *= 0.9f;
! A' N. m Z* Z W
#endif //__YENV
4 P2 M; X8 y* r# C' F# }
7 j) {, a; c# j, q7 h4 ]6 Q% v
memcpy( &m_light, pLight, sizeof( m_light ) );
' o1 A0 e% K& t- o+ h* r
* {1 }: x" ?7 f2 l6 ?6 A1 E! @
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
. B, f9 }. h6 C( W B% Y4 u4 t4 r
D3DXMATRIX matTemp;
d( N l! h7 b, I5 d
static const float CONS_VAL = 3.1415926f / 180.f;
, E6 P; k7 @" m+ x( H. z+ H
: \9 r3 J, I {; L
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
0 d+ S3 c0 Q0 }0 G F+ g7 p
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
% I# a& |$ d4 D$ W- w
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
M) o: Y' F5 ^1 S! c7 Y
pLight->Appear( m_pd3dDevice, TRUE );
+ F# g* _6 q1 V5 q3 B1 j" b* W
' q! k, P' F: p; y- E! R
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 q E( g1 D' l3 L4 O
// D3DXVec3Normalize(&(vecSun),&(vecSun));
" B+ W* M8 n% V
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ R! [+ s. m" c8 |, t" K
/ U8 ?& _: ^7 n/ K. A
DWORD dwR, dwG, dwB;
; ?: m3 Q4 b/ N: Y
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ S1 g7 B7 g0 R
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 H" P& v. ?$ m" A; n' V* c
dwB = (DWORD)( pLight->Ambient.b * 255 );
! l2 O" B: a p* D3 b& x
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 Y+ F. o5 ~. Z1 C+ q# s
}
6 T/ O! _2 ?& v8 P
}
" g q4 R8 Q3 d0 _5 z
- o- u, C/ n; |1 U H
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
1 c8 B( A ]9 y# A8 Q( M+ 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) );
w; c9 T4 a0 p8 ]
::SetLight( bLight );
" S* W+ ^/ t6 R$ W# v
1 q: l( L- Q, d* [+ ^3 S
// ±ao? ?D?í???ó á¤à?
9 t- u/ J& J' E& p9 q
m_pd3dDevice->SetMaterial( &m_baseMaterial );
% r6 [2 V! p6 }( A4 B
" X/ s$ Q2 o; y; [1 c6 H3 C
#endif // not WORLDSERVER
5 C& P1 t& F& \5 q) t5 e2 Q
}
7 _3 ?5 p) T* O) K
并更换
2 u, @, {5 N2 l/ r' ]3 T
Code:
8 ~8 a3 @1 _: T" I6 }! g
__FLYFF_INITPAGE_EXT
! J! J- |- [" g( I8 Q# F
定义
7 n# A: d% x" K+ g/ `! o
& t" L; D3 O2 }5 H: `
2 e: e9 ?+ p, |4 V7 U
, s3 u# y2 _) K g7 g/ a
5 e0 b0 F! Z- Q- n3 A. F
现在终于删除我的狗屁加速...
- ^/ S8 n4 n% N2 M7 x
1 J$ A5 X0 c5 ?0 c5 ?! c
; O7 f3 m. u. D" e) G
; }7 }0 p$ x5 Y9 Q% P
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2