飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
8 \# c! T" J6 G# F, u4 _" W+ H9 ?, b
尾翼:
% C# O% c9 w) z* t
7 N: y9 \* k6 F& g
代码:
- p8 {# ]7 V. W- V% f" W
CWndAutoFood::CWndAutoFood()
8 M: b7 Z! J( V! }/ A, @0 z6 @1 u
{
: [' f0 m/ @. I% W! ~: l
m_pItemElem = NULL;
4 }+ }. a# f% g
m_pTexture = NULL;
/ R2 {9 P9 u: C x4 C
bStart = FALSE;
8 b d" Y, ~. K7 Z0 ?
}
+ M: P5 {4 F7 K C
2 @+ E/ V8 w+ Q; n
CWndAutoFood::~CWndAutoFood()
! u _* [% G5 K7 {
{
7 t# [5 p2 @; D5 _- @
AfxMessageBox( "AutoFood ist gestorben
" );
, a0 w3 d3 W3 T* Q5 s
}
9 ~# d7 u( T/ [1 ?+ j
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
' }5 I2 R/ }0 F
{
0 e- p# k7 s7 ~: @/ Q: s& i) }9 ?
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
) J2 r7 t. O( j/ k' C, L
}
; q2 S( [ C; G- _$ `
5 T& v$ w, T2 I7 L
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
& d% ^' m9 `1 g* O
{
6 x9 b. u2 j/ ]9 g* j* B" D/ f" g# ]
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
, [" Y2 t' ~: `; _) L
CRect rect = pWndCtrl->rect;
* V9 G- `) P/ ?8 C
if( rect && rect.PtInRect( point ) )
9 H% _. k& G. d9 \, v; k1 {! x1 b
{
# Y) h* T% j* r# m+ v6 A m
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
: l1 M; G: U; v8 ?% e2 G
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
m5 n6 f& j, [# \: X/ H3 O
{
% D2 [# H1 e4 Z& O' H
if( m_pItemElem )
# P5 Z, j/ C; h5 ?/ X+ A2 X$ y1 Z. ]
{
( r0 c' U" ]9 I+ T H
m_pItemElem = NULL;
$ d4 o& @! T5 L5 ^2 |; Z- C: j
}
3 x6 {+ l. M: X
m_pItemElem = pItemElem;
7 {+ S) t/ h. v, @- y# K E
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
8 [- S- Y2 D3 t
}else{
3 \1 O0 Y7 e8 m/ F% {
SetForbid( TRUE );
* {' A" t. ]1 o) Q, M' ?+ f n3 ~
}
4 e+ x: Q" O3 ?' @# E* W0 M( v
}else{
" ]4 m a4 D7 b& s
SetForbid( TRUE );
2 |' A& h- k5 m- s8 u' ~
}
$ V& m- }1 d& n' j/ `5 P; X
return TRUE;
- O2 U! _3 r2 B4 j* g8 T7 T# M# Y
}
$ x1 D: g: y& L2 e2 M
0 \8 @: P# ~# C# b
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
2 S& x; Y5 V9 e! _
{
: c- d7 C$ }% y; `5 K. r
switch( nID )
V9 H. s/ a2 U$ `! _# W& }3 M
{
4 o' o1 D( t) _0 R( G+ J
case WIDC_BUTTON3:
1 M+ |1 P* P6 V* N( t7 E) u/ l' ~
{
& s$ d3 T. p p5 g, p1 ~/ E
bStart = TRUE;
7 p3 W* d! P9 X9 e6 x9 k
break;
9 b2 J J7 g$ b2 J. n& \
}
) c5 _, F% i! m
case WIDC_BUTTON4:
7 X7 k$ f p) A9 \ A' U& z/ n; N! F
{
; W. j0 Q) V# Q* H8 V0 r& b. y; B1 @
bStart = FALSE;
: u7 l4 X# M n0 z8 E2 F
break;
4 G2 ~& `' I3 a# M6 k
}
& C) P. ]% [3 A" Z% N2 N
}
, {2 W7 b1 z0 N
return CWndNeuz::OnChildNotify( message, nID, pLResult );
5 y! f0 ?1 ]: J: t
}
- j1 t7 M# a+ H& v4 o
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
2 ?& s5 j' m7 U- k
{
! L, a+ O7 O1 I+ |: o
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
9 t# ~1 Y2 n* g- P9 K
if( bStart || !m_pItemElem )
; p1 t4 k9 Q' A0 L4 m! L$ [$ a
{
9 U1 O4 k4 N: Y* A1 m4 @
pBtn->EnableWindow( FALSE );
9 i# v3 Z4 }. |+ N/ I
}else
: a& B. D: a3 N$ g
pBtn->EnableWindow( TRUE );
) x! h) w3 g+ O* p
if( m_pTexture )
* G/ R8 y& J( d8 Z! t+ V
{
5 e! v* ^ C0 f' N4 _
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
, d+ w5 l. p. N0 J7 A2 {
if( wndCtrl && wndCtrl->rect )
6 a8 ^+ O+ _' ~* M1 |
{
# _) ~$ A6 c0 H2 O
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
7 `8 e# f9 M- Y1 {1 p/ x0 ?
}
; O1 _0 V! E1 U1 }4 @' n; ?
}
( I$ }9 H5 B% W1 r
}
6 G9 [: Z% m+ U: s
- G: }% ? j% @9 @' B& w
BOOL CWndAutoFood:
rocess()
' {# S7 ^" A3 g6 B
{
" s6 Y' U' B+ D3 F9 o: R: f! I$ c
if( bStart )
8 K$ G: V& v2 u" t. v$ c+ e/ M# s" D
{
6 t: D9 R3 @& }2 G$ _' j6 @/ ^+ G0 e
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
5 V( m/ I, `( b1 O9 k. \4 B
{
6 c b' m( {, g7 N
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
& w& C/ ]( T' x7 n" J! p8 h
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
" y6 {1 }/ Y. y, H, t
}else{
5 | W7 A- G! m9 q! W
bStart = FALSE;
8 Y7 h7 Q2 ?& T0 L! }$ u2 o
m_pItemElem = NULL;
& T% p$ Y( S/ k7 N" ~$ L5 T
}
/ J3 X! O3 d% B
}
& n' c: l+ g! p' n9 s- [
return TRUE;
( E- m9 g! W$ o
}
1 |; G; ^ V4 @) z
# P' F3 u/ ?2 V4 G0 Q
登录视频废话:
% ^3 @' p$ c% h& M Q
尾翼:
8 A5 G" b& Y9 }) K7 E
& o( p+ {0 Y( z9 W% R; o$ N4 M4 K
代码:
* a$ _* x. d* y8 |& l% Q) l
) p/ j) J! Z8 t( d9 L6 D: T5 g4 m
void CWorld::SetLight( BOOL bLight )
0 N* D2 S# U4 K S7 M2 h& \: p7 _
durch
1 D& m$ h/ j( U& [% n8 k6 C7 R2 z( A
Code:
$ f$ B+ N4 O4 h) M1 r
void CWorld::SetLight( BOOL bLight )
' i% h7 L K% k' y( w- X
{
3 O, K& \6 z2 i
//ACE("SetLight %d \n", bLight);
$ w! q/ J# z) L
! x9 A# M. z2 A& m& J B: U
#ifndef __WORLDSERVER
3 f( n5 v$ U1 Y! r/ ?5 @; u5 X
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
( J' t. ~% O5 l5 m. F: z. |: D5 J) G
CLight* pLight = NULL;
9 ~4 o4 e) P! ^3 S# a( |6 {
! b, T0 M. T) V
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
( l! i& x; i9 x2 @
0 l5 F+ G& C2 V
pLight = GetLight( "direction" );
7 k/ u& I8 ?2 a+ q/ u
: i: Q% R' U; R9 U" A
#if __VER >= 15 // __BS_CHANGING_ENVIR
! L* b3 Z/ Y+ t% ^+ G1 r* u+ i8 f
if( g_pPlayer ){
- E5 y7 T } \" K) N& e
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
- d: P% f( I O, @- M2 C
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
b4 n0 k( T( i! W$ r2 S6 l
{
! u; R7 s. G/ D# O0 V! Z
if( pLight )
3 z: O, m2 K$ T e2 i
{
2 Z& R8 f+ u% Q3 |
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
* k! V+ J2 n: p$ |& _5 ~# b( `
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
2 K( o/ R; {2 b' n3 ^2 w( a
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
8 m' Z7 @. P2 A) S
( s+ S) O) {3 _, d1 m+ m
pLight->Specular.r = 2.0f;
( Z, t* F& E Y3 Q9 l, e- E
pLight->Specular.g = 2.0f;
8 m. r7 u0 v) H
pLight->Specular.b = 2.0f;
+ y: j6 j0 m( v8 o" ~
, A; x1 }; f- W$ r( N3 @4 O+ w# R1 v1 L
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
/ n4 _: q* K8 j9 R, c6 p
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
- g: _9 [0 g$ N7 ` O3 Y
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
' B! d" J! P; D$ N- s; Y
# S$ N6 Q! l+ {' G# [" h5 ^
HookUpdateLight( pLight );
& J! `/ S6 `, Z0 l' X
3 v. C, J4 {$ t% e
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% w2 z, |! c" S+ Y
0 C% Y3 r, @6 g: F1 z& D O% F1 h& G
pLight->Diffuse.r *= 1.2f;
2 b4 e8 c% m9 W+ y1 `
pLight->Diffuse.g *= 1.2f;
. K8 Y2 B' H* X# b7 f8 S+ C9 ]
pLight->Diffuse.b *= 1.2f;
) g$ y! {5 v/ L! @6 k$ x( P3 r
( }. I0 K' g8 Y- k8 `" u) a
pLight->Ambient.r *= 0.8f;
4 C( R6 A2 W* r7 I
pLight->Ambient.g *= 0.8f;
8 ~8 g" w# h& a& o+ F4 h9 l
pLight->Ambient.b *= 0.8f;
2 x) \- |+ J4 X# g7 ?4 `
* K2 V B# I8 |1 @
memcpy( &m_light, pLight, sizeof( m_light ) );
2 d9 `0 }. q3 @1 J- Z; H1 `( G3 r
% K, ?) j6 V5 D* j6 _& T
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
! f2 F7 y! d; P! u* x* C
D3DXVec3Normalize(&(vecSun),&(vecSun));
; b. x7 D8 I+ s; M
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% I% N& _, l6 c1 o y- m6 l3 A
pLight->Appear( m_pd3dDevice, TRUE );
# J# D& y3 M: Z/ e$ X
7 P6 U) C( b+ Q2 I
DWORD dwR, dwG, dwB;
" ?. {7 n. |( n6 w$ @
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 B- X3 |( x5 L. {! _- ~! X
dwG = (DWORD)( pLight->Ambient.g * 255 );
" D8 I3 x. n: _ S
dwB = (DWORD)( pLight->Ambient.b * 255 );
F* x' Y1 M2 G: r3 f9 ]4 I
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 b0 s# T% g7 \3 |# Q0 H( ~2 q
}
. o3 \/ c, h( Z$ }+ C4 z+ c/ C
}
A/ e6 n P; k
}
( Y5 { y" ~( N. E* j
else
7 o2 o; x* G% Z5 s
#endif
( }/ z. @( T2 m. ]9 |! }3 u
( ^+ I b" r# q
if( m_bIsIndoor )
4 U# j6 G4 |- l( V- z
{
2 Z" t& ~4 V1 D
if( pLight )
3 z, E! }; V4 p, A3 f
{
5 |* v7 }4 R" O0 s
// à??μ oˉè*
/ V4 w# H3 s0 z& I- l
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
; Q& R1 K# R' ]- D3 J/ e0 f
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
( N7 r0 A4 ]; H; @- w' P/ v
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
; l/ o; {1 J" w. u7 E
% w. p8 B7 K0 A/ ?
// oˉè* ??à?
" X% _, f4 x) L& |
pLight->Specular.r = 1.0f;
, }0 c M# d* u5 E0 z# q
pLight->Specular.g = 1.0f;
4 t7 Z$ G7 W( [8 O3 O) A
pLight->Specular.b = 1.0f;
0 L$ s' X5 r- K- n
// àü?? oˉè*
& o$ z& H* ?* S' e$ D+ [. `
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
6 a( I$ c' H( Y' }! Z" E$ x
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
8 f* G( Y) W, c) V1 ?- V
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
3 S- T2 L' P% q
d7 l8 g4 P# ? N2 o5 [
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
( l' A3 o8 B3 a. J
{
, n2 Q" `5 u8 d2 K; d
pLight->Diffuse.r *= 0.6f;
: W5 q) Z+ m F/ W
pLight->Diffuse.g *= 0.6f;
( l6 x4 z6 O; e p, D( c' p
pLight->Diffuse.b *= 0.6f;
4 ?3 J$ D$ T( P# D- r# W5 p
pLight->Ambient.r *= 0.7f;
6 s* n2 [8 Q9 K- W: j: j6 Q
pLight->Ambient.g *= 0.7f;
2 H3 F- |( ^# w" K3 x9 _3 q/ N
pLight->Ambient.b *= 0.7f;
) W. x+ _# s% t. o
}
3 G" X z% U* M- r& j- T: C
& i" x8 p4 }9 d
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 M% ?$ F: T8 w% i0 G3 p
if( g_pPlayer )
6 Q9 d9 G2 M, Y9 M! @
HookUpdateLight( pLight );
( J% O+ B# i9 ]4 }* h. v
#endif
- W$ b' P$ |+ G! t9 c* W
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ x" N3 I% N( W- s6 D+ Z
4 ~) E8 F: s; x% t
pLight->Diffuse.r += 0.1f;
5 F4 j. }9 c- k \
pLight->Diffuse.g += 0.1f;
3 U2 r. l$ V t- i6 o
pLight->Diffuse.b += 0.1f;
" ^3 [+ v0 e+ t2 f- [8 q% m0 x
// oˉè* ??à?
$ X/ H { t. G+ Z
pLight->Specular.r = 2.0f;
~6 h# B4 v' v7 D; u- a! d0 i
pLight->Specular.g = 2.0f;
; q; e: V+ }: R4 ^4 p
pLight->Specular.b = 2.0f;
n$ ]& h4 h6 n7 S, N
// á?oˉ
! y& Y# d5 v# d* W' d
pLight->Ambient.r *= 0.9f;
" l- B8 p( ^. M
pLight->Ambient.g *= 0.9f;
, u* A+ {0 z- B. ^, e) w
pLight->Ambient.b *= 0.9f;
0 r, i" ^3 @- _- K! K6 V
2 {1 k1 D$ a, M7 l3 }
memcpy( &m_light, pLight, sizeof( m_light ) );
0 u2 h9 P4 g: _3 m* X' w! f( q
3 w7 O# C7 t- @
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
; D) J7 [! l" `
pLight->Appear( m_pd3dDevice, TRUE );
" w% l' S! N" s. e7 V3 d
- E9 M- C# q( |: o4 o
DWORD dwR, dwG, dwB;
% a- I3 B4 d8 h5 G, G
dwR = (DWORD)( pLight->Ambient.r * 255 );
# H3 f4 y' n% P4 N" y0 U* |4 L
dwG = (DWORD)( pLight->Ambient.g * 255 );
' D, |# @4 E" o# v* k, J, r
dwB = (DWORD)( pLight->Ambient.b * 255 );
* \, {7 |& Q8 K. j' i( {* M; b
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
9 ^2 k2 ]+ |; Q# \6 q0 P
}
1 H; T, n4 w" j2 i
}
- s7 P; L( ^% V9 m2 Z
else
' T" r: U4 ? ]; ?7 c+ d9 r {
{
* L: H: `+ \! S; l
if( pLight )
" T X" J1 `0 ^; O; j( ^ Q0 H
{
1 H* g2 P; t" t- _2 b, Q' B( ^
% i) n) |/ }- `, ]- i; M+ @5 i$ u
int nHour = 8, nMin = 0;
& X- G6 x N: s4 W* h
#ifdef __CLIENT
: A- N$ U- s% F8 [8 O
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
' ?2 I; g( G0 d& `
nHour = g_GameTimer.m_nHour;
% }3 J* A5 Z, x& }% ^: B
nMin = g_GameTimer.m_nMin ;
: C9 R* z: M1 v) z# W }3 Q$ T
#else
( Y' U+ m: V- k" \6 I6 v! r
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
, E3 j! c* n1 I) F3 l
if( m_nLightType == 1 )
" I K8 I" s" ]/ G& U; V+ s
nHour = m_nLightHour;
& r* r: c0 n: |. \5 _8 ~" L
#endif
% _" h- F+ L. h' ~8 v; s! S- R
nHour--;
# X0 s6 w2 C& F4 l0 ]3 p
if( nHour < 0 ) nHour = 0;
9 v8 O, w7 U* |8 |" c3 u- A, Q
if( nHour > 23 ) nHour = 23;
+ i" [6 D7 P% U- m
$ ^( i# t- ]) r9 b6 v$ @$ [
//if( m_bFixedHour )
% E6 R. M* o S! g: ~
// nHour = m_nFixedHour, nMin = 0;
: ~. L8 i# b4 ]) O5 V, U/ s
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
& @! m/ Z% O* c% h
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
! X% X' ~) w+ Y/ {
5 l. W7 ^$ z6 M" r
//m_lightColor = lightColorPrv;
& f0 v, A1 O" k8 R+ D/ f
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
7 j b5 y/ G) l# t! o$ K( o/ b: B
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
) g% G( P, L' v: ?4 l1 a) t+ H
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
. ^2 k! Q9 G- D: A# @
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* i. [# X) E5 J' _ c
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
$ t% C4 X' p) M
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
1 Q$ I" Y4 K/ h# j) e. W
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
, C7 h, k4 C( x) k9 C
1 r8 ` ^7 e$ l7 e
// à??μ oˉè*
4 i% O1 |2 P4 r2 }' N3 \; N% | E
pLight->Diffuse.r = lightColorPrv.r1;
- ^6 W$ w+ z7 b2 K
pLight->Diffuse.g = lightColorPrv.g1;
' y% [& `0 i8 K2 j: o7 M
pLight->Diffuse.b = lightColorPrv.b1;
, q {2 O3 Y3 j& \/ b
// oˉè* ??à?
' ? X# D: R/ K" ?( C6 I- M
pLight->Specular.r = 1.0f;
4 S1 O5 Q/ @2 b
pLight->Specular.g = 1.0f;
@9 |5 x0 c5 _& {8 ~: t
pLight->Specular.b = 1.0f;
* B% U6 j$ \# c& p! e
// àü?? oˉè*
0 L- P# `/ [6 ]" a; R! i
pLight->Ambient.r = lightColorPrv.r2;
/ h4 k5 ^0 t4 N8 J
pLight->Ambient.g = lightColorPrv.g2;
& Y4 q) U7 |. W
pLight->Ambient.b = lightColorPrv.b2;
+ H5 w9 B# }/ e$ I. Y& v- p
( j8 I1 d. r( u; K# F
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 S% k# }( Y2 x/ ~1 B$ l
{
- C2 w9 C/ Y* ]4 s/ u3 H
pLight->Diffuse.r *= 0.6f;
2 r6 |7 [- t# O: G' Z: i
pLight->Diffuse.g *= 0.6f;
+ k& c. D* {, B# W5 {
pLight->Diffuse.b *= 0.6f;
4 E) j/ f& M, J* u. P8 o$ a: g
pLight->Ambient.r *= 0.7f;
9 f8 i0 x, N \' L7 E, v
pLight->Ambient.g *= 0.7f;
/ K7 C7 J6 a0 U4 I ?
pLight->Ambient.b *= 0.7f;
; P' r4 j Q/ o
}
+ k, q6 t, Z) q
5 N- a, b+ @) O2 i! @" O6 q
#if __VER >= 15 // __BS_CHANGING_ENVIR
. m# ~& B5 E2 p# Q; U% O; N. H
if( g_pPlayer )
. Z& G( t6 U' q
HookUpdateLight( pLight );
& L$ w+ N7 r( ]9 x' U/ m
#endif
& `0 ^) [# c A% V5 w& m
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
! h/ T5 S# L. ^/ H) P. f3 G: \
' c! Z! |' \1 i" c; r
#ifdef __YENV
/ Z, m( d9 A& T L* @; H! z
pLight->Diffuse.r *= 1.1f;
- `0 v: i+ Y& ]. A- U- k N
pLight->Diffuse.g *= 1.1f;
3 H/ w( l) b6 g# M
pLight->Diffuse.b *= 1.1f;
7 M. u- r3 l, D5 W, Y; P' m
// oˉè* ??à?
; M# X, u9 g9 O9 k
pLight->Specular.r = 2.0f;
8 a. o" ^" \8 g3 `
pLight->Specular.g = 2.0f;
5 j5 f6 R2 S+ l# |, Y1 r( O: a
pLight->Specular.b = 2.0f;
n* D* p/ D) r7 s6 g5 n; K
// á?oˉ
+ _7 Y2 G9 O9 u& V. V
pLight->Ambient.r *= 1.0f;
. q) `2 ]* e: I' t$ L
pLight->Ambient.g *= 1.0f;
1 Z5 U' }7 h& D# D0 r- }% ?
pLight->Ambient.b *= 1.0f;
" s; r, p9 F+ I& J: E& f( o
#else //__YENV
: P& B1 J2 v+ _; d: g+ C: z( J8 a9 v
pLight->Diffuse.r *= 1.1f;
; i7 L. ^' C/ g& Q
pLight->Diffuse.g *= 1.1f;
H# x$ v2 ^, `7 z4 \) H
pLight->Diffuse.b *= 1.1f;
: T& Z+ ]' K5 g. N
// oˉè* ??à?
) J* Q8 U% f0 w' u
pLight->Specular.r = 2.0f;
+ [ `6 ~, \% D" |" E/ p
pLight->Specular.g = 2.0f;
$ i; R$ w2 I3 L1 ?" r
pLight->Specular.b = 2.0f;
9 u8 C9 c- i0 I6 Y; U
// á?oˉ
4 i% \* P3 B3 o9 Z4 e5 I* E
pLight->Ambient.r *= 0.9f;
& b2 m4 h# ]/ _+ s( S: t
pLight->Ambient.g *= 0.9f;
& A5 L* |0 E) `' a4 h0 |$ S9 U
pLight->Ambient.b *= 0.9f;
2 c/ J K: Z. G9 g' }
#endif //__YENV
1 I$ w3 @# [: [% L& ~ k4 V& s
: p5 }' S; i4 O, E+ q
memcpy( &m_light, pLight, sizeof( m_light ) );
: W9 Y9 Q9 m8 j* g: _
& g* k3 T& T% R; F" Y( j
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
: I+ r! D8 n) z+ i% h; W
D3DXMATRIX matTemp;
- u; b+ O; q- U) _/ e! y& ^+ L
static const float CONS_VAL = 3.1415926f / 180.f;
" Q4 h- [5 B5 G% ]6 u* a9 ?$ F0 ~& z& i; M
6 U1 L: ]% a) Y1 |
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
, K9 h, E$ k; N4 ]& s+ b
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
( c+ k. W! V4 d+ E0 s' _3 c
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
2 t9 N8 H: E* k) r! r
pLight->Appear( m_pd3dDevice, TRUE );
! R' n9 p# Q: Q: K- x
7 X- K0 c: l* K0 R3 [
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
w' X* G* a/ [1 p( p8 ]) B& t; E
// D3DXVec3Normalize(&(vecSun),&(vecSun));
+ a; L. M4 R2 o* A- u$ s0 \. z
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ p2 Q7 V' v5 d v, w
1 J. v4 A0 f- ?& @
DWORD dwR, dwG, dwB;
9 i* o8 R3 A6 O# q [
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 R! @( w7 v- @- H
dwG = (DWORD)( pLight->Ambient.g * 255 );
# Z1 v3 s$ t7 E H9 s# g1 D8 m1 I) |
dwB = (DWORD)( pLight->Ambient.b * 255 );
" X4 u8 c7 r/ N/ ?
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 N+ E7 ?* s3 @* i
}
e5 y4 D7 ~' r0 J6 O
}
& b; s( g" |5 n# }) g. J3 d# V
0 A6 m8 A5 K4 w) s$ F% @% Q
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
1 N2 r9 t4 E: M/ h# \. [6 @
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% R/ |) J; f
::SetLight( bLight );
# ]- R8 }6 M+ b+ J6 A6 v
5 K$ ?8 V7 |: q+ Y
// ±ao? ?D?í???ó á¤à?
& K N+ \1 u- c; ~0 F
m_pd3dDevice->SetMaterial( &m_baseMaterial );
! z, z* H( ~$ j
4 f0 U0 h) v+ z2 N
#endif // not WORLDSERVER
- j7 U; F" }! P2 _& s7 e
}
; b7 M( u" j9 A h) d
并更换
: M% O2 [' Q" F1 Z% j
Code:
) y0 H' m5 b6 G# y! b% t
__FLYFF_INITPAGE_EXT
/ r" T0 Z* }8 y4 y3 R( A( D
定义
! i4 y5 O7 K0 V! E3 N* H
/ Z/ y- S$ I5 M' s) F7 Y% `
0 N, U" j( G" T0 D" G3 [" {! I
, x4 s3 P. _, z4 p$ r0 y& F+ \3 Q
1 J& c; p) O; W' M* Z
现在终于删除我的狗屁加速...
; u0 K' v# C$ d7 T& a n" o6 h
4 j: M# y' D! K8 C/ z" t1 J
/ w. n$ G) ]9 E0 D) l4 w3 c5 y: H
' Z: ^- q p: ]( w) I7 t5 }
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2