飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
+ m2 v1 P4 v+ {1 }0 Z9 r
尾翼:
" U1 C7 H8 g. O: a% v
7 W( `8 E* M1 q# w/ c/ u9 e% K& M
代码:
# O3 _/ j7 z# @) V E7 J
CWndAutoFood::CWndAutoFood()
% c5 w2 z2 S& q
{
g% F! f# m- @" |, S
m_pItemElem = NULL;
0 \. w6 c2 P7 B
m_pTexture = NULL;
2 m" [( t0 Q8 f7 `5 E- s: u9 s0 u
bStart = FALSE;
1 i: r& x9 x6 c3 [2 ~9 k
}
* ?9 R4 B) C, o9 C
9 q% G8 |2 |0 E F' g
CWndAutoFood::~CWndAutoFood()
! v4 M$ J5 H0 Z$ }
{
" `9 Z: Q A+ {1 F" E- i
AfxMessageBox( "AutoFood ist gestorben
" );
! n3 }6 D5 J+ v% L9 P
}
0 Y) Y' J4 K4 D7 p5 Z# u7 b
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
8 a, ~6 e Q/ P& k3 [& f
{
% t% @4 M% O6 I. e
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
4 x: Q1 e2 k* _( m0 J
}
' [+ X2 W$ k0 n
6 D1 D/ g* }. L1 N: X$ |
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
' ]* k+ a$ t1 n* H- n& ~
{
" D {" [. ?% ^
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 c( Z9 l8 a1 q8 a' d
CRect rect = pWndCtrl->rect;
` W& z! X1 `% }( y
if( rect && rect.PtInRect( point ) )
9 h) G% y) q0 v, m. m
{
' E, g8 _9 y+ v, A2 ^
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
1 Q& Z* H- |( I% e: W2 ]
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
5 B9 O; F" ?7 t: r* A, Z
{
1 ]! Z# y* t3 u- V
if( m_pItemElem )
7 _+ s8 F2 Z3 J* |. t" `8 ^) l6 d8 [
{
) p7 e+ T0 Y) I$ |5 Z
m_pItemElem = NULL;
* t1 X8 t% L" ^ J# K+ W
}
6 c& T' {, k8 E) Q! \: n
m_pItemElem = pItemElem;
( E _9 o# F6 i
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
. y& p4 Q5 `2 r
}else{
# Q, S" W) n- t3 X, H/ @
SetForbid( TRUE );
, c$ ]# ]6 z" `3 v' I; i [
}
* e9 \# V7 G# o( X
}else{
: d# ^1 O2 I+ {* t O' ], Q; O
SetForbid( TRUE );
& q, h) |" H2 V3 z g2 }
}
7 O( E2 V) r# H) A6 p, O6 { N+ G
return TRUE;
. \0 y4 Y& U6 T- D
}
/ C5 x. C2 c8 M0 M+ U4 C* n
! M: R! {3 X; A! r
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
1 `9 H# i; I# i
{
; A/ t. @$ ]% ]4 L
switch( nID )
2 y4 z4 X9 q! ?& l
{
8 r. I ~; a$ Z9 G. P( a
case WIDC_BUTTON3:
# G9 G2 m; V( h4 @
{
; H' h( b% K) M( n
bStart = TRUE;
( _0 ?, C7 H4 Y8 U2 R& E, |, o
break;
9 }7 K2 C, v$ P* `# ?
}
0 A1 `& ^, v1 g5 ~- f3 F. V2 t
case WIDC_BUTTON4:
" n( K6 g2 p$ w$ }/ r
{
2 C$ J+ C$ W5 o6 c, v n- k( v4 S
bStart = FALSE;
O# v3 j9 k# D) m1 Z
break;
& a2 n, W; I5 z4 }& e
}
$ t/ M- s1 @3 B/ N4 v
}
1 ]+ c3 N) }% p o2 N
return CWndNeuz::OnChildNotify( message, nID, pLResult );
4 X$ T. ^9 U" g3 m' O
}
9 B' B: k6 E3 `: h8 M+ {
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
W* E. D5 D! h" Q
{
6 m9 z* C% w, {! @" T1 P
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
/ o' \- W- h( x6 Z# n
if( bStart || !m_pItemElem )
% x2 E- H/ o* Q# @8 H1 ~1 L
{
5 G# y( w$ b: M8 s7 W
pBtn->EnableWindow( FALSE );
7 w) {. L/ d1 c x
}else
: m! w4 E% U j9 L
pBtn->EnableWindow( TRUE );
. ~& e2 S, S) D" N3 e$ @) e$ h
if( m_pTexture )
1 {1 x0 w2 ^5 o6 U' T1 h
{
4 I0 H& `$ i7 Y9 Y6 m
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& P0 |6 |4 F6 f1 N9 ~- }
if( wndCtrl && wndCtrl->rect )
% I& S* G% R8 x P
{
' b+ X& _% I5 P9 ]# [/ I- H
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
b' B' a/ O/ J2 p& Y, T
}
3 L8 {8 [' @, B2 w) @
}
; O4 z9 K0 g8 F! `- ?; n
}
5 c/ B: a. g4 o
& T G- s& E$ m: W6 ` n& U, A. a( _& s
BOOL CWndAutoFood:
rocess()
) F3 s; J+ T& e9 c$ u
{
$ l2 p) J* l, ]/ r: v6 k
if( bStart )
5 i. y8 P4 x ^* c! f2 I5 _
{
! R$ k: |" M& }0 Y- z2 S( r
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
" o! j. v- I' O
{
" q3 y5 j% F* V4 k! ^
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
( ^3 r A) `& K/ t
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
; f$ m" K. U- [
}else{
7 _! Z8 s8 I9 p7 `% w! N: V
bStart = FALSE;
' y$ h9 J z) q% H' L$ d3 u
m_pItemElem = NULL;
9 z8 @/ a/ U0 J: a& t
}
( `, _; Y" F7 p* A% T9 b, E8 T
}
: D5 G0 F5 K# }& U. y- C0 b
return TRUE;
2 v/ }( J4 B) j3 m6 L8 {
}
' ]2 A6 F9 j) d: g
! z+ E: C r% W, z) i7 B
登录视频废话:
, i3 y4 m' n/ z) X' b8 M, q
尾翼:
% e9 l* ~( c; N
6 V7 m2 g7 K4 q e
代码:
/ h$ X* q ?$ d
8 w' T% ]; Z- Q+ h' F, v
void CWorld::SetLight( BOOL bLight )
. o+ H. O# V& ~
durch
" S# J; x' t" s$ N) l
Code:
; f! y3 O3 m2 c: ]" R
void CWorld::SetLight( BOOL bLight )
( K/ r( O% G, `8 Q N- A1 I4 x# c: X
{
9 O; T5 L% Z! Q4 b) [; Y: i- {
//ACE("SetLight %d \n", bLight);
! r; R& b# }& t
$ i. a! Z4 i8 k/ \, M. n- X
#ifndef __WORLDSERVER
* N6 I8 z; b. F: }
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
e5 w. M* ^! H
CLight* pLight = NULL;
, c5 I% F% b& P# v9 z
0 D6 Z% n, c6 p8 I! K# {7 ?& F
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
& r( E1 e% P' L
9 q- F/ }: \6 v9 N+ K
pLight = GetLight( "direction" );
2 R+ E& e- W' d' R& |* N0 g9 q
: A8 M, ]) F' p$ R) C
#if __VER >= 15 // __BS_CHANGING_ENVIR
" e; s7 w) A- E8 X4 E
if( g_pPlayer ){
& M6 w# ?' s* R9 S6 z6 n
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
/ B! X8 J8 S) K; d# E, z/ y8 Y2 W
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
3 m3 A' ~5 Y, z# k0 H. U
{
, f+ H2 U8 `+ ]4 {9 l/ g
if( pLight )
! G' u5 k1 R+ \& i/ q8 T! X W3 g
{
/ l: y5 V- f2 j9 p- Q2 W( _
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
# t3 w" o" r, r
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
# s" B3 i- M9 P: _; W6 h0 _
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
0 F6 N- l$ n& d% I7 z5 l7 A
) J3 b; S( V7 y' o0 N
pLight->Specular.r = 2.0f;
# y! @ M3 l) m% \& g
pLight->Specular.g = 2.0f;
1 `7 M( O/ Z, z% v4 ?4 J# e
pLight->Specular.b = 2.0f;
( j) A# L: A0 u) e
3 S2 A+ q' u1 T* ?2 k. b3 {/ K
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
. S8 \* f- S/ R
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
) F( V# J5 v9 _. z ?6 P+ l" ?, H/ D
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
! l# I% n; e: c$ f: o
3 M0 T! S$ `- V9 L- `+ }6 @
HookUpdateLight( pLight );
/ g. H- D( O6 R
1 o9 y, }6 F# H9 |* i
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 j0 y7 H+ B$ F* A( E
$ V, {- Z& w* M2 |% r
pLight->Diffuse.r *= 1.2f;
4 E( y' Q) F4 E$ a* H
pLight->Diffuse.g *= 1.2f;
, J/ H1 }9 `" A- c
pLight->Diffuse.b *= 1.2f;
3 ~/ S$ g7 Z3 ^, |# d
# Q% O, i- w+ {: X }1 R
pLight->Ambient.r *= 0.8f;
$ s' A6 r A& U9 V4 x
pLight->Ambient.g *= 0.8f;
! \3 D& E) s; y( u" K6 ~
pLight->Ambient.b *= 0.8f;
V. c, H4 D, R; Y0 x6 a" b0 k
# N7 _& p) l0 a m' d' g+ u
memcpy( &m_light, pLight, sizeof( m_light ) );
# H" j: V" g7 d. G5 V6 n7 z
& Q) r8 S I7 C; O
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
$ Z, n- U q% w
D3DXVec3Normalize(&(vecSun),&(vecSun));
) g! L1 s! g1 D" ]
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
' a7 K. X1 I5 c5 w
pLight->Appear( m_pd3dDevice, TRUE );
# V. i) f7 x$ @ Z9 w
+ s4 ]2 f# ?% r
DWORD dwR, dwG, dwB;
5 b# F8 S& \ ]9 @# G7 V6 F1 ^& W/ K
dwR = (DWORD)( pLight->Ambient.r * 255 );
* D0 N5 T' U3 n
dwG = (DWORD)( pLight->Ambient.g * 255 );
5 r2 N( D$ X }2 e+ W
dwB = (DWORD)( pLight->Ambient.b * 255 );
) s) A$ N0 D/ t. g; h
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( U: F9 O7 C1 q0 `2 j. d
}
) D: X8 c& [0 F* \5 q
}
1 Z9 H+ g' Q/ ?8 j/ R5 K
}
. E! k& y3 _9 U
else
9 v2 O9 W% g2 ]; N+ @1 i6 \
#endif
5 B7 n- }4 U0 ]9 e3 L* H
+ X4 {1 V' B) a2 y3 N4 I- ]
if( m_bIsIndoor )
: w: M& T$ F3 {9 i, w
{
# ^, ~; T' L3 e9 F$ @- d
if( pLight )
3 d! `# J1 F( J+ v
{
4 Z: [5 x4 r, l9 o1 _) h& M* u) r
// à??μ oˉè*
* V" R& Y+ d' T. f7 s* I) F5 ~" s# ]
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
$ i: U r- t$ w4 W9 H; v
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
/ ?9 v; N$ g U2 ^2 l$ r
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
/ h0 I0 f1 \* ]0 P1 p- V
0 l! Z4 z, m$ X( O3 N* b; u
// oˉè* ??à?
; r }6 Q; I9 [; C2 K. b; V
pLight->Specular.r = 1.0f;
) n+ e+ s* z/ y$ s) [9 @9 j
pLight->Specular.g = 1.0f;
, ~8 m( O) `$ O" G( S: j& ]6 L
pLight->Specular.b = 1.0f;
& z; c1 H' M) J! |; Z7 f8 u! e; A
// àü?? oˉè*
4 {% J# s; S9 m$ I3 k6 |+ }
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
) ^! h. [8 H1 N* c) ]( `2 B
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
6 u) d A5 X4 H# O
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
% U5 ^5 R9 S/ o4 a) j
$ A7 E2 }" z% X, Z
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 {# {6 ]1 Q2 @0 E
{
7 T- q+ Z9 A9 h
pLight->Diffuse.r *= 0.6f;
0 K4 b! ]: F+ m% W
pLight->Diffuse.g *= 0.6f;
" w! Q! C+ o$ o5 `5 U
pLight->Diffuse.b *= 0.6f;
3 k$ {' X! B4 z6 D% X- |3 M
pLight->Ambient.r *= 0.7f;
3 v) m+ J8 }, s3 Q7 k( _) z
pLight->Ambient.g *= 0.7f;
. D" c l3 G T4 A2 \" T2 o$ u
pLight->Ambient.b *= 0.7f;
" F) w) i7 U3 R/ C8 x
}
3 r: a; M7 F! u* p1 u8 T
; Q8 B7 Q ~3 ^+ Q) R% x
#if __VER >= 15 // __BS_CHANGING_ENVIR
, Q* L) s4 m/ Q- t2 m ]
if( g_pPlayer )
5 \9 N/ J2 u; O- \" H
HookUpdateLight( pLight );
7 [3 ?5 P* q0 P/ y' R
#endif
' E1 N! [. n( P$ D, ^, }
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 ~- _+ N; u' }( |3 l# T
/ {8 m7 l C8 W! O
pLight->Diffuse.r += 0.1f;
" E- A/ I, O) j w
pLight->Diffuse.g += 0.1f;
) l% ?0 F2 F8 Q' E1 V. I! F
pLight->Diffuse.b += 0.1f;
4 o0 u$ G V7 o- c3 i
// oˉè* ??à?
2 L' {0 ?4 A) f: \+ G# y
pLight->Specular.r = 2.0f;
* N) N' I i+ k
pLight->Specular.g = 2.0f;
3 _' b' f' |7 h0 s$ I9 K; F
pLight->Specular.b = 2.0f;
7 s! x% G" ^& u6 k: {: y
// á?oˉ
% Y. w( ?2 R0 z, e% o& U9 w8 {; X
pLight->Ambient.r *= 0.9f;
! u1 }/ Z, E {8 A8 R0 o& P, x0 d+ x
pLight->Ambient.g *= 0.9f;
0 j: s& x1 T: V
pLight->Ambient.b *= 0.9f;
- `* a8 Y b1 R3 u; e7 G
" p" D0 J0 N( D. y
memcpy( &m_light, pLight, sizeof( m_light ) );
# B% A3 s% H0 ?2 j% t+ \
# g8 `9 Q# [; G) ]
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
- E K5 j+ a! K0 M
pLight->Appear( m_pd3dDevice, TRUE );
6 M- q! } t6 e# \) }' M
m7 U6 \, R8 a+ R8 G
DWORD dwR, dwG, dwB;
+ T, l+ K3 z& z
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ E/ \6 V; Y5 q' U4 e' P
dwG = (DWORD)( pLight->Ambient.g * 255 );
, D+ x$ |* Z' v( L& b5 X2 o
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ h1 w* C( q2 h& g& N5 s F
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
9 W8 \1 n* g% M9 s# ?
}
: S1 p j5 Y! i" L
}
2 M2 c% _. m( Q4 t. T: R
else
$ |. z! k0 n! {) q9 T
{
) }" J. M# p/ K% z7 }% B
if( pLight )
- s# n0 {# F3 U2 P5 x5 [0 o$ E
{
p6 ^2 |$ G5 l M: c5 P: n! h |
. N) t+ g8 ]6 j; {5 ?- C
int nHour = 8, nMin = 0;
0 C* E" b- Z& D) U" v
#ifdef __CLIENT
4 b' v! o! R$ e; v {5 m
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
$ e2 s& _: |( s2 i- c" j4 N3 c0 N
nHour = g_GameTimer.m_nHour;
9 W9 N9 R% F+ A: D
nMin = g_GameTimer.m_nMin ;
& T* h4 j" H8 O
#else
( h2 t- W4 m1 B# v# T2 B& n
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
' _ j# e/ {+ ]. I
if( m_nLightType == 1 )
6 b( P. W- p0 {0 P8 y& D& H- a
nHour = m_nLightHour;
0 v1 @" C. B7 e9 e
#endif
& U( J7 k$ Q+ [% C7 X( e/ [9 |& ~
nHour--;
' { i0 y, ]) k6 C7 W
if( nHour < 0 ) nHour = 0;
) }0 ~, l' o. x% {* p% a! w
if( nHour > 23 ) nHour = 23;
- v( I# `1 u/ ?3 }% M; z
+ w4 w& c' {5 f& a2 t- Q
//if( m_bFixedHour )
( l3 r, o3 v! l6 O$ P
// nHour = m_nFixedHour, nMin = 0;
7 Y, c* ?, J3 b) R" u7 S! p
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
, O. f/ f% F% i& o. `0 Q9 `
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
. H" i7 R1 M6 s' m+ @( t# n; I
+ x, q1 {, D* _- G5 g9 k3 B( i* a: E
//m_lightColor = lightColorPrv;
: m5 r+ W4 k; l0 h+ D
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
; h9 b1 \. i) z; X. q: y
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
% P. |: Z! t9 v; K
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
; G( U! O, A) ~" p; l5 U
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
0 z$ ~: J/ H. W- J
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
1 t0 L4 e1 |6 r( {( g2 X
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
/ t, z. X% c! w; z* m
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
2 j7 ~; O0 ^4 }, l: ~) l
" F+ G& K2 f0 \
// à??μ oˉè*
) X6 P5 ^) g2 K- ~+ X- A& M
pLight->Diffuse.r = lightColorPrv.r1;
' j: I/ I \6 u9 ?
pLight->Diffuse.g = lightColorPrv.g1;
3 h' a) g. a$ ]7 _+ l7 O& k- w4 [
pLight->Diffuse.b = lightColorPrv.b1;
% o4 p9 r1 Y j
// oˉè* ??à?
6 q$ u6 N" Z0 c7 z
pLight->Specular.r = 1.0f;
$ _% E- N. v4 I" p& e
pLight->Specular.g = 1.0f;
/ W% F+ @9 N& J% V6 D) [
pLight->Specular.b = 1.0f;
# l8 a# {/ w% B4 D+ C8 L
// àü?? oˉè*
; [/ K& Y) b9 k8 n
pLight->Ambient.r = lightColorPrv.r2;
6 G, w7 d% W. X( q' p2 w
pLight->Ambient.g = lightColorPrv.g2;
3 S% [- u# b5 ]* e9 }5 R% m
pLight->Ambient.b = lightColorPrv.b2;
$ T: ^+ s' {/ M5 }
/ \) K( V8 h0 i
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 l# U' l4 G' w# O L' {
{
; I2 q9 a7 ?6 C+ X1 L) X# w6 g: p
pLight->Diffuse.r *= 0.6f;
) u# ?1 `5 v* ?+ h4 _7 _
pLight->Diffuse.g *= 0.6f;
) z# x; }+ K$ }& d9 d
pLight->Diffuse.b *= 0.6f;
* w) U& U( Z+ c: I0 Q* u" C& u) @& M+ @
pLight->Ambient.r *= 0.7f;
: a# I" f( K. _1 o7 n
pLight->Ambient.g *= 0.7f;
2 o2 o. r0 Z" q! e* ]5 ]! E
pLight->Ambient.b *= 0.7f;
2 {6 r/ ?+ s- f& `. H
}
+ I; L7 t1 \! O
5 p# p# k0 N |. z1 T5 I- N. N
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ [& O2 u' s1 x# y
if( g_pPlayer )
" L, p; l* M/ q& J1 G0 q1 Z8 a
HookUpdateLight( pLight );
/ _5 Q& v* A3 @4 W! C9 ?8 u3 o% K/ x
#endif
- `9 z0 k0 f9 n) n7 ]1 H# l
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* y# t; ?: N" j* v" s0 F0 S
' x6 @: d. U( [% P/ d% {& Y
#ifdef __YENV
. w/ M, a4 C1 v. L. N B+ v
pLight->Diffuse.r *= 1.1f;
0 d$ M% M7 S6 ?2 [' Q
pLight->Diffuse.g *= 1.1f;
4 R/ J* h9 w" b8 }& j
pLight->Diffuse.b *= 1.1f;
- Z k# y. H8 T$ L ]
// oˉè* ??à?
7 ~% k3 {* i/ ]0 c. c
pLight->Specular.r = 2.0f;
$ U- r1 P, d* Z( g& e
pLight->Specular.g = 2.0f;
5 T$ M3 ?5 P( a5 J
pLight->Specular.b = 2.0f;
( l R/ p6 ^! u* w# ?3 w
// á?oˉ
o. Q! Q5 d5 n3 ^% W- g( v
pLight->Ambient.r *= 1.0f;
3 E2 Z' R0 Y( ~+ ]! ?
pLight->Ambient.g *= 1.0f;
R( L# y" L: q/ `# N
pLight->Ambient.b *= 1.0f;
- d# j" A1 X# E
#else //__YENV
0 u: d! |1 W$ Q; b) t1 w- A
pLight->Diffuse.r *= 1.1f;
! F4 U2 L6 G3 R1 i: a$ r! [
pLight->Diffuse.g *= 1.1f;
/ C6 N/ ]; n$ o* ]! x' N
pLight->Diffuse.b *= 1.1f;
% p- z9 I, U- p1 W: M7 p# _
// oˉè* ??à?
4 \0 U2 d; k+ V
pLight->Specular.r = 2.0f;
0 k6 h/ J4 k* M9 z7 Y) w
pLight->Specular.g = 2.0f;
% }# f/ @* I$ y2 ]
pLight->Specular.b = 2.0f;
0 |6 \; c$ a) S$ K) ]" S! F: ]
// á?oˉ
. D4 Y" P5 Z( Q5 f4 V
pLight->Ambient.r *= 0.9f;
+ ~% J. Z. ?/ W% Z( B$ `
pLight->Ambient.g *= 0.9f;
7 [# h1 U4 w+ l+ r
pLight->Ambient.b *= 0.9f;
$ s1 }9 S; u0 F6 T. G0 }1 U
#endif //__YENV
$ X h) s, C& C! r) J" G- }! X- E- ~
- \1 g7 ]2 t5 |6 C$ H+ c6 r+ H, P
memcpy( &m_light, pLight, sizeof( m_light ) );
9 n- S, b0 n) y9 R
' s) E) m. ]0 {
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
' C1 P& i+ B1 i F l
D3DXMATRIX matTemp;
) G. p0 A) {* ~" o
static const float CONS_VAL = 3.1415926f / 180.f;
* o+ E/ F& F* f" k5 r
" m$ w( ^/ D! V* s; k& `
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
+ \! E, M# x! W2 \: B
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
I9 F: X8 I6 a5 V- q
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
1 y+ H$ b0 R8 j6 M% |+ u+ A: b! V7 C
pLight->Appear( m_pd3dDevice, TRUE );
! w) V$ }& B; y0 H5 U; @
% N* `. I T0 n9 Y1 v
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
! i2 M7 X! C' u: r; w$ I i
// D3DXVec3Normalize(&(vecSun),&(vecSun));
x& r; G( j% @
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 K9 s9 W6 _, f( g9 O$ b
5 O1 I& m9 K4 F
DWORD dwR, dwG, dwB;
5 x1 g/ Q/ I& k9 [
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 @! j% W, p$ n$ e) |. K5 Y" E
dwG = (DWORD)( pLight->Ambient.g * 255 );
2 E# }9 E$ t2 U5 a: H+ \. D! ^
dwB = (DWORD)( pLight->Ambient.b * 255 );
& j$ Q0 P$ [) ^! g. E" p, B6 ?
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 N' \% W3 d# {! ~! }+ t6 s7 o" e
}
~( {! i8 O, R4 A8 y( M
}
, v2 {, q5 H' v. A, M$ U! \
- @' i4 L8 `5 @* z6 v! @; d
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
) y% |5 V6 B. ], O
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) );
$ v, i5 d" O" I& a$ w
::SetLight( bLight );
^2 _/ V; m# T8 a8 @
5 d% p: Y' G: F b! K0 ^
// ±ao? ?D?í???ó á¤à?
2 p) P% K- B4 p! c* g/ x# M) g! h' y* J
m_pd3dDevice->SetMaterial( &m_baseMaterial );
! V6 h/ k+ |! h* t' S
/ y" U: N; g4 }6 R, c) t
#endif // not WORLDSERVER
# w/ E2 c; ]1 ^% C1 K
}
2 }8 p1 c# [; J! p$ m/ e( [
并更换
6 ?) N6 z, C7 I/ w) T
Code:
: f; \6 ^8 ~) B, x
__FLYFF_INITPAGE_EXT
7 J& Q s; x, e3 [8 c R
定义
9 G1 Y' E% `. ~3 [
9 f0 J: e. Z" t6 q, z3 K! M& A& E
( `4 c! U7 f9 d7 X) S1 k
# R3 y* d( L9 L. y) D
a2 M) T0 K1 g9 l8 h" g; n
现在终于删除我的狗屁加速...
3 ]. H: [$ N5 |
4 H& ?- {1 R1 u
& N" N6 M4 B, ?2 R7 a
g0 ]5 J- p- T! D5 z2 L
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2