飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
4 |. e# i& X5 \: Z6 c% e
尾翼:
; O" f a. X" Y2 A* H
8 J; |1 p. T1 ^" e% u" P
代码:
# X/ _; k7 }# s+ G8 o3 c
CWndAutoFood::CWndAutoFood()
( B& w( ]( } _" ]5 y
{
# P- j$ Z9 P3 K! ^2 `
m_pItemElem = NULL;
! g# r$ k8 U; o( c& d9 W6 G: {
m_pTexture = NULL;
; b/ w9 `: P2 s& j! R
bStart = FALSE;
" E% Y! s; ], ~
}
# y& v, r# ?/ K
7 Y+ B( K( G' S- c- ^( d
CWndAutoFood::~CWndAutoFood()
0 ^" G# I3 L: ?$ B8 h
{
+ \9 ]2 h3 n4 @/ {5 G# |
AfxMessageBox( "AutoFood ist gestorben
" );
4 K3 f" T, h! ^+ _" Q
}
8 g8 o) t5 \! m& @. P
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
% j* {( L. A& ^
{
6 G* T( `8 I# W- e
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
" P* r& h2 R$ w* y4 D: H% G: L4 g/ G7 t
}
' }$ `5 z8 I* a
8 m8 G/ A0 Z5 U$ U; |8 D# A3 ?
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
q [5 N4 M! K) S2 b8 y; ~
{
5 A" u5 {( ?. ~+ c
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' b, Q8 j Q# D# S& Y
CRect rect = pWndCtrl->rect;
1 b3 o0 ^( Z+ m2 \" j1 Q. K7 M
if( rect && rect.PtInRect( point ) )
8 l3 {. o4 g! [9 B
{
/ s1 _( @0 m+ F4 R
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
( E. s2 }" m" M+ q! _! U! [
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 M# D0 H/ ^8 Z5 @
{
! a! U5 q& h' M3 D1 w
if( m_pItemElem )
( b9 x& c& s6 f o( U
{
$ ~4 h2 ]5 X# V. ]; ?9 u1 h
m_pItemElem = NULL;
7 B3 z# c5 E3 Y7 l& X. Q
}
4 {( n7 r" |3 Q& r
m_pItemElem = pItemElem;
5 y* G* {/ L, z, X: v T+ V% ~3 o
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
1 b! |2 m0 e, K* P6 T- m
}else{
9 a+ r3 m6 Z( F2 V
SetForbid( TRUE );
% F# h/ K) u5 y! ?
}
- e& o- h. f; n$ m7 e
}else{
2 I# G5 l" E$ F- N, J1 [0 y
SetForbid( TRUE );
; S2 N* {0 M1 q" m1 O2 b
}
2 C6 k! v) n; }% E/ I9 b
return TRUE;
" g0 u9 `& M6 F' g
}
2 N: T# o8 G3 o+ c# q7 N- {
3 f A, x% C$ h2 o' C0 \
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
- _ n9 y3 I4 I& ]
{
/ _1 s5 C. u# e: m
switch( nID )
6 o! u4 X% l: c( b3 P
{
* |. x8 ?5 o$ S- m5 N
case WIDC_BUTTON3:
+ w7 P, N% K1 P6 j1 U. ~
{
: `+ Z6 y" w& ]8 v
bStart = TRUE;
/ S+ h! T) w7 k+ c6 p
break;
! h ?; z7 s, V1 R, O0 l6 B, a& T
}
! i. c* G- }' P
case WIDC_BUTTON4:
) \2 o1 M9 V; Y! M
{
" { V7 |' l: O" \; t
bStart = FALSE;
, J8 i& {5 a5 X$ a9 P
break;
" {, }/ j: I/ \# }& i2 n
}
4 f, Y2 O' J3 a/ E( [$ H9 g
}
, G0 m6 P5 F" E/ d( n! J
return CWndNeuz::OnChildNotify( message, nID, pLResult );
@# u1 h0 z* y4 X/ d5 B
}
, ^- n" Y9 e: M" i% i! x0 u
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
7 A/ ~) ?6 F# b) J$ N
{
) C( L0 L9 v3 V3 d' h, g/ x
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
4 g9 A" Q& L4 g* R7 r5 V
if( bStart || !m_pItemElem )
2 _1 r0 T& } \ L/ o
{
2 b5 `3 d- s, r# |2 R
pBtn->EnableWindow( FALSE );
, Y4 ?7 g, p! F. C' p; j
}else
% S/ ?9 B4 A) @# w
pBtn->EnableWindow( TRUE );
) ^9 L$ d j) g9 g
if( m_pTexture )
8 q/ Z, t+ z" t! x/ O
{
9 o$ m% j* ]- M- h
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' o. ?+ \+ B* ]
if( wndCtrl && wndCtrl->rect )
; z" {+ u, S6 }# A, |0 h' J& h: X
{
' {, k' w8 b! [$ n1 ?: ^
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
$ I2 I) g. U0 e, Y
}
* Y2 d7 z8 n6 c+ g4 ^' H
}
. U P: e1 p/ E& t
}
9 V* `% g9 V, b+ z: W! L) J
* q( h$ E; j) k
BOOL CWndAutoFood:
rocess()
+ w! H4 s1 ]9 Z4 W
{
6 v. F- t3 T6 n9 l0 T' ~0 \
if( bStart )
5 @& f5 k! p' y6 \ ~& g5 @
{
! {2 F# L9 h8 M, V8 `5 i/ X
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
6 W& h v0 P4 a+ s/ G, H$ S
{
/ ^) w. r: U# x/ a
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
% }9 b2 q! @# f* k- ~2 i# d
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
9 U% l# ?8 _' D+ s' M5 Q
}else{
) H2 D2 _7 {& A8 I* o
bStart = FALSE;
" C& o; M. }4 ]
m_pItemElem = NULL;
# }% t1 r1 e2 B4 r: e) E
}
6 |0 ]0 g+ a7 e0 N {
}
\1 Y6 \/ O/ V# ?$ ^+ T, T( Z
return TRUE;
3 i2 e) \8 w( J6 c
}
, P) `% V% D1 c& e5 \2 `* l! b8 Z1 r
7 d% K: Q, m% G9 d' g* }
登录视频废话:
) ?7 L0 q9 n9 ?- \
尾翼:
! n: a7 O' z( r0 _& S
8 D3 v: L' @; W4 \
代码:
( G% t. q9 B" T* ?- m' Y
) y; G5 d4 G. k, ~/ ?- o/ o/ f
void CWorld::SetLight( BOOL bLight )
" b( K" I8 x; Z" L* G
durch
+ V' f. A p0 t5 I) ~
Code:
- F6 U/ N; I6 Z4 l% c6 E1 e6 K
void CWorld::SetLight( BOOL bLight )
+ W( w/ G' L9 S! P6 e; j& S
{
s; E8 Z& [1 e% L7 G7 l
//ACE("SetLight %d \n", bLight);
6 s7 \/ h8 |! v0 r0 @
* i2 m4 d/ m8 I2 _$ B2 P4 B5 ?
#ifndef __WORLDSERVER
+ {; E* G- @" v
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
8 T7 G& n1 ]5 L' C
CLight* pLight = NULL;
% c- Y0 Z) }( @ x
% p4 t- P9 [- B4 u. M
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
1 P1 ? o$ C4 J& X! n" H$ g
. I7 s( q9 R' a1 y; a
pLight = GetLight( "direction" );
! R4 o/ I, T3 L }) n/ b) q2 M
" P& i! t) m8 w2 d& B/ ^# L
#if __VER >= 15 // __BS_CHANGING_ENVIR
. d( ]" G1 ~* A" b: Q# p/ p$ l3 p
if( g_pPlayer ){
5 I. a* T/ g5 h0 ]3 [# w
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
- k% W+ B6 H6 z8 ~
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
- o7 K2 t1 {- R# P) W
{
- o8 z" P) ]' O; _ u# ^
if( pLight )
4 _9 S1 J0 R& I1 u9 d4 w+ E- ]
{
- Y9 Z( m) W+ y
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
) z9 X+ K( q5 n+ B, W* [/ V
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
& M; j& e! C: N! {( D: ? k. b
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
, P/ G1 c' m! ?( k& n
, C4 ~, ? v/ p5 |
pLight->Specular.r = 2.0f;
2 K! {8 q) j0 q6 K5 l
pLight->Specular.g = 2.0f;
9 s5 D! u9 a' l5 v
pLight->Specular.b = 2.0f;
8 x5 O3 U% ~! @- `
# @ e+ E) D" i' z5 W M0 g$ u* l3 M
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
5 p; `! ~$ g8 W# h3 F: V
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
# e9 i' _: ]4 e" K. A1 M
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
' E; N5 a8 s3 u) a; G
0 u- w! k( y' B( ], g
HookUpdateLight( pLight );
- G6 M' ? ]) l9 ?0 X
# d/ D; e+ \9 k# @1 s
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" _+ ~- s# v% l7 N, S: t5 F
$ ]3 Q+ Y: l) a3 i% h
pLight->Diffuse.r *= 1.2f;
$ x8 b+ z: W4 @* J' l0 W& w: c! U" N
pLight->Diffuse.g *= 1.2f;
% B7 U4 s1 v" B* b
pLight->Diffuse.b *= 1.2f;
* I6 ~! ~( F; ^+ d: w
% H9 R4 J) d; Z9 w
pLight->Ambient.r *= 0.8f;
. o1 k$ y, v' ^ t9 D
pLight->Ambient.g *= 0.8f;
8 a2 D: \- T8 `$ w# K* U
pLight->Ambient.b *= 0.8f;
8 W9 b- p% a: T: p$ H, c8 _& Q! E
$ b7 c* t5 B1 I8 _3 d( g# o& K
memcpy( &m_light, pLight, sizeof( m_light ) );
6 ^) S7 S3 R7 x' J7 D2 y0 q. Y
* I2 a6 q& h% |
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 w$ m5 m5 t& X) d
D3DXVec3Normalize(&(vecSun),&(vecSun));
( P. n7 m; ?; }
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
& J |9 e" o6 q1 F9 t( U% `
pLight->Appear( m_pd3dDevice, TRUE );
) C2 A5 b E2 p" d( ^' B
2 e8 B: K& U! c: M
DWORD dwR, dwG, dwB;
& K' B+ A% G* M- \) U
dwR = (DWORD)( pLight->Ambient.r * 255 );
, Q$ Z5 a* D7 M8 C( h! T
dwG = (DWORD)( pLight->Ambient.g * 255 );
) Q& c. e5 ? s# @4 E3 a- W) ]; ^/ E* A! }
dwB = (DWORD)( pLight->Ambient.b * 255 );
2 [- z) |0 ]$ G
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ ]& u1 l" H8 z, G3 u7 G2 S- \
}
D4 @, B7 M) T1 [
}
' n8 {6 O A2 Y6 d8 S
}
8 F9 p# u# @) L1 w
else
! z* c, Y" e0 j7 F5 \
#endif
9 o$ _4 w, q* @. s
7 ^" g9 k; g% t. b' z# U
if( m_bIsIndoor )
( O3 D ^; D) j, H* D' I
{
9 C; O! R8 H5 `& k
if( pLight )
7 B8 p' B( e7 r. E8 F6 o% f( a; j
{
# b# j' T# K! v$ w
// à??μ oˉè*
! O! ^1 J2 k$ @/ t1 M3 C
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
7 n% Z% }) n$ k) F
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
' j3 S5 g# R' v+ c6 L
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
$ C c% N4 u' s
4 X. |* o9 A) [9 Q4 [
// oˉè* ??à?
" T9 M( F; G1 N2 D" S
pLight->Specular.r = 1.0f;
5 I. R7 S6 @. [- [2 h: k
pLight->Specular.g = 1.0f;
" B# b: `5 j* V. g
pLight->Specular.b = 1.0f;
1 _$ W7 O, C4 T) m: u7 `
// àü?? oˉè*
, Y# v/ v( h+ X( ]
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
/ R) M l5 F' [
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
! C2 h7 k# ] w$ J# a9 H8 w
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
v8 j2 B+ @+ D
) J% q- ~; P; X3 p& d& Z
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
) c! m3 B, k" Z: ^- d/ }
{
6 W$ S' i7 f% H+ Q0 ~( }% W
pLight->Diffuse.r *= 0.6f;
, l+ c& }4 _& y6 w+ o' B! `
pLight->Diffuse.g *= 0.6f;
6 L* D+ A, p5 {- c7 u0 D4 {
pLight->Diffuse.b *= 0.6f;
9 }% W' K# b$ w0 H) u+ f2 q8 W' o
pLight->Ambient.r *= 0.7f;
8 O# W- ?" t3 F1 k1 Y& a4 ]
pLight->Ambient.g *= 0.7f;
) d) z. y2 H5 W( T q
pLight->Ambient.b *= 0.7f;
4 ^9 z9 |1 }0 c) a* ]) R3 `& o
}
4 L% B, \' p. c( d- }3 v
6 o) k+ L- \; Z) A9 n+ ?8 U
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ a9 B3 C! p6 |3 y( x2 y
if( g_pPlayer )
( ?4 H) i# h4 P5 Y/ z
HookUpdateLight( pLight );
8 c& M4 H5 u$ V9 b
#endif
: X9 g t+ {. |! y7 `* i
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 G7 `9 u1 o3 g2 Y/ y" P
$ B$ V9 T9 A% B+ }! [% f
pLight->Diffuse.r += 0.1f;
- m: m( v! Q! [5 @( y. U S+ P# R; O
pLight->Diffuse.g += 0.1f;
" E, F; B% V& s5 k& G5 n' X/ u
pLight->Diffuse.b += 0.1f;
" p* z% @/ e( t3 X; C7 Y( T
// oˉè* ??à?
* d% T: `/ ?3 Q) ~$ s1 a
pLight->Specular.r = 2.0f;
T' g7 | w& \7 q4 d* z. U% P* {
pLight->Specular.g = 2.0f;
& \: ]. E6 b- g4 \7 ?
pLight->Specular.b = 2.0f;
. [: K/ e8 Y+ K( y+ z! |) h
// á?oˉ
* o0 B$ |% {! T( ]; U) b% d
pLight->Ambient.r *= 0.9f;
0 }% r9 _0 G1 \
pLight->Ambient.g *= 0.9f;
. X1 ?( s2 X8 ?
pLight->Ambient.b *= 0.9f;
1 e5 _5 L, t: e F) z1 x
' Z8 q! Z3 [% T0 n% g
memcpy( &m_light, pLight, sizeof( m_light ) );
' ^/ l0 B: w+ e& d3 O+ e c
; V/ n$ r4 c8 `" G0 h- D
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
' ^- |) L6 Y/ C9 \
pLight->Appear( m_pd3dDevice, TRUE );
& O+ H! {+ l! Q5 N% |8 e6 {" }
0 X7 Z' F+ p* w3 Q1 W; d3 Y% [
DWORD dwR, dwG, dwB;
) N4 N g F; k8 X# |- p; G8 K
dwR = (DWORD)( pLight->Ambient.r * 255 );
) M' K5 P% l0 r+ S0 n! r' O+ e3 ?) e9 E
dwG = (DWORD)( pLight->Ambient.g * 255 );
& I X( J, W5 j+ h/ P7 q
dwB = (DWORD)( pLight->Ambient.b * 255 );
U- P D# B, z9 i; b0 w
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
, u9 V* |5 P4 o2 h8 @( w
}
" C e5 J5 \) z7 F& Z2 |
}
& O; n: w" o5 Q
else
, |6 y; W9 d B1 E/ h% @
{
5 ^) @( L5 k2 k
if( pLight )
! ~: b( c3 i* x3 q
{
" v; W0 }; z* {" _) _2 @: Y- b
7 M6 c3 ^# g% d6 E2 g5 X2 h
int nHour = 8, nMin = 0;
% i7 C3 Z' f1 Y7 ~
#ifdef __CLIENT
- i r3 {' r. X( W
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
2 [' l( ]2 O1 _7 q+ Y) T# W
nHour = g_GameTimer.m_nHour;
: @9 [( [5 G' M. a0 a* u
nMin = g_GameTimer.m_nMin ;
& a5 }+ J. l x R7 i
#else
1 \ B g S4 Y5 C9 R* H+ b+ C5 a1 B" x
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
7 C. n" V( F% V! a
if( m_nLightType == 1 )
- v0 u$ d) a; T8 [/ u
nHour = m_nLightHour;
5 B9 q: V7 s, s9 T6 @; P/ J, e
#endif
; S9 c% E0 m- H5 I7 ~
nHour--;
* N X* Y* M7 [' p+ L
if( nHour < 0 ) nHour = 0;
% Z+ ?7 S: A" k1 q7 x) E$ Z
if( nHour > 23 ) nHour = 23;
U. O7 @1 s/ p R- z* E& C( a5 s
8 @ e% ]8 b+ {# u
//if( m_bFixedHour )
; T3 V; q$ H+ x
// nHour = m_nFixedHour, nMin = 0;
, t6 M0 o' H8 n) D* t& u7 S/ Y2 A
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
- p- h- q; g% x/ g( c
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
, _- r2 `4 @" L6 W% @+ _6 S, U
7 i; q" `, \+ j' K+ j
//m_lightColor = lightColorPrv;
( D- O1 n7 W8 h
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
/ [0 W N |( O F6 f' Y# h% U' T
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
# Y2 [ F5 x4 ~$ f; j! X
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
$ E# d6 G, M1 S2 p+ O. g' [3 ~
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
; Y# K) h# t9 ?. o
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
4 j$ Z& D6 C- D8 N
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
: h) R$ s8 K ?( Q" {- }
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
' E; J" Q$ [) F8 D. c
# y! c* d& t& l1 Z2 _# @; ]0 B
// à??μ oˉè*
/ U( N7 Q. E( l, B4 A; \1 U, P
pLight->Diffuse.r = lightColorPrv.r1;
! N( H- W- y8 {$ f! e9 y
pLight->Diffuse.g = lightColorPrv.g1;
6 J* E1 N9 D$ c( q
pLight->Diffuse.b = lightColorPrv.b1;
. K- B( t8 \% }
// oˉè* ??à?
/ u" X6 Q+ a! o. Y; j
pLight->Specular.r = 1.0f;
* h% ^& j0 {7 f# n) m8 s& P
pLight->Specular.g = 1.0f;
8 U, r- e( W! O5 e5 k
pLight->Specular.b = 1.0f;
% _* `! g" k1 |1 N3 ~
// àü?? oˉè*
, n2 q8 X7 R& X0 Q
pLight->Ambient.r = lightColorPrv.r2;
& h" t" Q. _6 ^, W3 }- o
pLight->Ambient.g = lightColorPrv.g2;
6 m) \5 z) B' _9 c1 U
pLight->Ambient.b = lightColorPrv.b2;
" R4 i, Z4 N( d& U$ c# I/ ^
/ N( `( e; n6 m6 d/ {/ r! X
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, b% `7 s( v# ~$ A- @6 H4 \: {
{
7 f: p- @) X# {* U7 X
pLight->Diffuse.r *= 0.6f;
9 q& ~6 w3 w( R
pLight->Diffuse.g *= 0.6f;
+ g5 [ q* ^. t
pLight->Diffuse.b *= 0.6f;
" \- G! a6 ?4 D( z# O- E
pLight->Ambient.r *= 0.7f;
9 X* b! u" h I; o. |1 P% Y* l% I
pLight->Ambient.g *= 0.7f;
7 E% {# d' ?$ I8 f9 O6 @1 a- z
pLight->Ambient.b *= 0.7f;
- V$ T' b: l I P9 W
}
. u m9 R6 ^ K6 G- x
7 S* F, Q/ \. o; s$ T2 l% X
#if __VER >= 15 // __BS_CHANGING_ENVIR
" \# ~, T: B1 p. q% K) k" t1 c
if( g_pPlayer )
# |: w5 [& u: G8 I$ u2 W" p) ~. v
HookUpdateLight( pLight );
- e% Y5 _! \" I1 J: @
#endif
' b7 ~2 W5 H. Y" h7 E
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& V( s# l# N9 M0 [& H/ p% o
7 \5 }6 p# B w3 b, @3 r6 _
#ifdef __YENV
: S- N( m) a% L
pLight->Diffuse.r *= 1.1f;
6 } Y. t0 G( p$ ^, N
pLight->Diffuse.g *= 1.1f;
- Q" x2 j# r3 k* V7 J/ z
pLight->Diffuse.b *= 1.1f;
. b5 O0 v" P: N' G
// oˉè* ??à?
0 y1 B/ x v0 _! L5 N
pLight->Specular.r = 2.0f;
3 M# M% a3 N6 b: j8 I7 N& ]
pLight->Specular.g = 2.0f;
# I& e; ^! O3 b7 z
pLight->Specular.b = 2.0f;
/ g& n" Y. K( `0 @
// á?oˉ
) x5 R9 b+ K8 n0 D) M: G: z
pLight->Ambient.r *= 1.0f;
' o; m. {& z! ?* y; u
pLight->Ambient.g *= 1.0f;
3 c! E4 [" P! O7 b2 K& u
pLight->Ambient.b *= 1.0f;
y( E- w; c7 T# m; O# }
#else //__YENV
* X7 Z1 w2 e8 Z8 j
pLight->Diffuse.r *= 1.1f;
, S/ D5 n! e4 |5 }
pLight->Diffuse.g *= 1.1f;
+ r: H* Y# T: d$ `/ y0 |2 W/ N
pLight->Diffuse.b *= 1.1f;
2 W0 v3 c- k; z
// oˉè* ??à?
+ U [, d! C$ O |( |, i+ D6 O4 P
pLight->Specular.r = 2.0f;
7 U, J+ N$ ? V
pLight->Specular.g = 2.0f;
( |0 _7 ?# J* P. d+ {' y6 V
pLight->Specular.b = 2.0f;
! Y) ~, @+ u. S; F7 o* K8 |) h- z
// á?oˉ
|- k& H; u: n
pLight->Ambient.r *= 0.9f;
, b8 k j% r5 W$ a9 |
pLight->Ambient.g *= 0.9f;
4 y/ j. @" X( A5 [
pLight->Ambient.b *= 0.9f;
9 A/ @$ C! e# P% I% e8 G& L
#endif //__YENV
: Y" z) ~1 q+ a( a2 Y3 s
* Y- G" q. K- A( Q5 B9 J7 F4 l
memcpy( &m_light, pLight, sizeof( m_light ) );
2 \( b+ ?. V' j/ n- ~
3 @: Y& `: c" B* i. {
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
8 m! J) m5 U. n( W
D3DXMATRIX matTemp;
) A4 }! p# E% \* I/ j: ^- D
static const float CONS_VAL = 3.1415926f / 180.f;
) h; s7 _/ L3 |, M4 a# w, `2 F
) Q( B0 W' b: Z, a0 X# n) ?, G* x- [
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
+ O8 C6 i8 u( S- W7 W
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
5 l/ [8 r6 a% k: \! L# ~
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
- R. ?2 E$ i! }* X3 F4 b
pLight->Appear( m_pd3dDevice, TRUE );
" N, W$ e$ w t$ f
& h* v! Y" e7 H7 A2 y! ?6 d9 c A
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 n" f8 e& H$ n* J/ g2 W
// D3DXVec3Normalize(&(vecSun),&(vecSun));
6 ?. V+ x+ t+ k7 j1 _
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# T1 Z3 @' z) e/ D4 x
- s* q6 w \2 O C* @' B* k! B
DWORD dwR, dwG, dwB;
' d( T7 e' h* E P+ M+ t
dwR = (DWORD)( pLight->Ambient.r * 255 );
! p. x+ |$ S! g! q
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ ~' E. |+ Q, O
dwB = (DWORD)( pLight->Ambient.b * 255 );
' l2 _( k" K+ W ]+ K
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
7 f" `) f" r& l- \! I5 b
}
2 O6 {1 n0 f9 f) E3 G! J
}
" z- [) R( c+ r4 {
$ U; `3 p) t' o: f6 ?
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
# v- N+ ?7 V6 [" P/ `) l: G
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) );
' Q, i. p2 S' Y7 B* g
::SetLight( bLight );
9 X) w3 q8 T# m7 i, A1 u+ l' U
- K) I6 @. K8 q9 g9 b0 ^& ]3 R U
// ±ao? ?D?í???ó á¤à?
2 j7 {' n$ m9 @1 l, x% L. ?
m_pd3dDevice->SetMaterial( &m_baseMaterial );
2 P! f* U/ I% e; J9 [/ c. I
% F5 }* y% ]) w; k: _; I: U
#endif // not WORLDSERVER
8 b# ^/ a. w( q5 @. f5 j
}
- r& |1 Y* ]$ C- H
并更换
. Q! @$ w0 P8 y. l9 z z# E/ h7 H+ D
Code:
/ K. F, N1 l" J# r
__FLYFF_INITPAGE_EXT
4 e* Q! Y ~9 u7 L
定义
# X; \1 v7 b8 e6 [. J/ E
& j/ r7 O+ ^$ n! S* J) s n
' u: m; p& G& Y# q9 \
2 `+ A% e7 G' `( C/ C
+ g" ]5 R) g# d* p( E2 Y% B T5 [
现在终于删除我的狗屁加速...
" W6 H) |! [6 {5 p3 c$ x
( a* K5 u8 B2 k+ @% P g0 {2 D; G
* _" S6 F( K5 ^# B0 s/ V9 l0 ~
8 O, t; ]: d) Z- X- [8 W' d
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2