飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
" l5 M! s+ |& a* r
尾翼:
# m8 Y* K& h0 J3 D. V G5 s$ G
+ ?* r- w: f, i4 J
代码:
' \0 z1 W$ j7 m2 }1 G! a$ j
CWndAutoFood::CWndAutoFood()
' X* v7 m; m" `# i
{
8 W. ?' p* F- Y" D
m_pItemElem = NULL;
9 e6 i- P4 S" a. G: N
m_pTexture = NULL;
& O% V* d% Y( x- @* J2 g$ u! I
bStart = FALSE;
q- h/ h1 C% k3 \
}
" N7 c& W0 o0 i$ t0 K+ n$ h
: T7 p$ E# w( B) B* r8 J3 B5 v
CWndAutoFood::~CWndAutoFood()
; b9 u1 W# r4 K3 ]2 ^6 c0 J0 S
{
7 \) Q/ v8 ^7 p. h. m
AfxMessageBox( "AutoFood ist gestorben
" );
j7 J, z9 a7 d# R+ Y
}
5 s/ I: V$ v, n1 E, Z
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
* X1 T" g H5 a2 b- s: _
{
) s% j. _- T3 \, C
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
4 `* n% \- e7 V
}
& g3 X2 D+ ?% `! f* v
' ]' J4 ~1 z3 s' h8 T. B4 F
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
2 R6 U# t- }' W
{
( j O5 M/ { R) i
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# Z. i8 |5 C* ?4 u
CRect rect = pWndCtrl->rect;
. ~+ | h* Y6 K; r
if( rect && rect.PtInRect( point ) )
* u! t) k m& ~1 o }8 _
{
$ F( S |! y6 ]8 [- y
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
5 Y+ k# W# Q0 w) b5 @
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
' g8 e' s* |5 k3 n
{
2 I% O+ R: y9 D
if( m_pItemElem )
) T& Q, }2 C5 O( i: r; B
{
" X/ ]. `' D' R+ Z
m_pItemElem = NULL;
$ A% X; r% |! m; @
}
/ {& l7 R. o R9 ~
m_pItemElem = pItemElem;
4 R& I7 i1 _( u. z2 T. M8 z6 R
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 J. |- y& p7 `7 G
}else{
$ U8 p5 j6 J2 a% l3 Z
SetForbid( TRUE );
( o0 P' ~9 K, `0 x& X: s
}
8 j# Y3 R% L+ I D. N
}else{
" K$ a* M, `/ w- S0 t
SetForbid( TRUE );
\* y8 {( O; P5 S; M+ L+ M2 a
}
0 L. q- ? l" n2 C* _. A7 E6 w: n- @
return TRUE;
4 P" P; j) ]; c, p7 b0 ^- x
}
1 k c' @, f7 F4 {
0 ^8 X! N! P) U; q5 Z2 x1 R# \
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
+ Z- ^; _9 r7 U
{
. {- ]5 T- V& ~5 J
switch( nID )
+ z) E. V- i; l- C' J) z( x/ d6 ?
{
5 c! X1 c7 a5 ~. a6 ?; [ j" u- l
case WIDC_BUTTON3:
: P& ?+ i( F0 Q6 U4 C* P+ v2 f1 W# g
{
2 r# O( S$ _! Q8 Y8 D4 z
bStart = TRUE;
) w, L+ W# _6 e0 T
break;
4 {" e( \0 H4 f* ?4 \- ]7 S
}
4 }/ n# j( Q# v& `( Y! B- c
case WIDC_BUTTON4:
# ^4 d+ R% ?0 }6 }' n8 {/ }" A
{
" Y. ^7 P5 u) H& u
bStart = FALSE;
7 Q0 _, M& K8 {+ C$ g1 {' Q8 p/ o/ }
break;
( q& z( f1 G. z4 [1 T$ c: H
}
! M$ {$ w' }! F! {+ k) h1 j
}
3 X$ s9 e6 Z0 C) y" {3 o
return CWndNeuz::OnChildNotify( message, nID, pLResult );
8 h, h( C' x5 e( a! M) C# X
}
5 X! K! J5 a8 X2 z! U
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
2 s8 T- l. Y& d0 T# _
{
7 {+ _8 k- ]" T; o! V5 M5 x$ J1 N
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
$ z8 N% \: N; y+ h+ e7 {
if( bStart || !m_pItemElem )
- ?3 A/ H! V0 H* P+ N
{
3 ^3 \* L2 \; p8 o4 @
pBtn->EnableWindow( FALSE );
* ?, l3 h6 [; }" B9 T/ W- e
}else
/ u; V: f) |0 _( u4 r- s9 c
pBtn->EnableWindow( TRUE );
' D& Y) t4 j; Y
if( m_pTexture )
1 U" u# g) k4 V: |' r; G0 ?
{
5 s0 D q& b! L4 e; z! h; q
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" V$ h \5 r% D) f
if( wndCtrl && wndCtrl->rect )
% g4 z) l _- ~* L# } t1 {7 q
{
! a8 [- J; C# i! ]+ M9 I
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
0 i1 E: Q) D; `8 }( {/ a3 {+ j; G7 a
}
! s" O, L8 a* v
}
, u% ~7 S; l( v* a/ k9 @" d
}
- e! _. C$ Y, X8 {7 Y
! Z3 u+ y! H' m5 B+ q, X' p) ^3 V
BOOL CWndAutoFood:
rocess()
% [% z: J3 U' R
{
) d: @3 ^ K0 a- Q2 H- A( l) i
if( bStart )
, P+ E# l1 C9 ~ Z& O
{
# `4 E( e/ G2 [- Y8 i) ^: N
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) w" ~4 Q, c4 W0 }& E/ X* B
{
+ }$ }0 g" M) {& {0 Z1 X+ H* V' f. 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() )
' z7 ]# i( x: z
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
- B7 w5 D; j( x" C( w( j
}else{
9 ]% o! X0 H3 t2 Q1 L$ r2 `" Z
bStart = FALSE;
7 ?2 X" {5 s# i4 Q" n! s0 x
m_pItemElem = NULL;
6 b& i: R- V; e: l8 X. L
}
% O' O3 c: j" z! u
}
0 v" R8 ]; M; F- t
return TRUE;
2 F; E* m0 @4 G
}
# v% y7 M1 v% m% i. E
& s5 Z5 x k# S9 |
登录视频废话:
% w$ @" m1 n3 c& e* ?( e
尾翼:
3 n" u; c6 q: O0 i6 g
0 ~! { G2 I% b2 S
代码:
7 D3 ~ K9 \/ S5 E: N; O& M/ x
# } O" w; j2 D1 o( X# j
void CWorld::SetLight( BOOL bLight )
/ j' e5 r; T8 D1 h
durch
; M+ W& z2 [$ e7 ], p. A: F0 ?/ m- E% v
Code:
& ?; J9 I# L" B) |
void CWorld::SetLight( BOOL bLight )
& i" X, _* K }
{
4 \- Y) p8 d, @0 ~* o& P
//ACE("SetLight %d \n", bLight);
) D$ w5 x: d: o" V a# d
/ W/ _0 {$ G9 }
#ifndef __WORLDSERVER
: V. v# r( ^% G& {! D8 s- D
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
+ v4 P% |; |1 L
CLight* pLight = NULL;
; ~5 Y1 V0 Y3 S9 C+ v3 [0 G
( y, o9 b1 k8 @8 p! c" v
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
0 \* I6 j7 w& s( I/ I6 j
/ R. ]% h! u' @$ A# N
pLight = GetLight( "direction" );
' ?! K9 P# j1 D& k- S. ]+ r+ a5 @
( Y4 Q8 p5 u/ M2 T' {. B
#if __VER >= 15 // __BS_CHANGING_ENVIR
# e, M# F: F; C/ W& s
if( g_pPlayer ){
4 x4 T$ r% [3 G: |4 X5 H3 c4 U& j
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
' a* u! {" t3 \/ v$ e9 G
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
! t. H& O, |/ t+ s3 E R2 u% n1 k
{
4 P6 J7 P1 }- I# e& m, V3 n/ R
if( pLight )
( C; d+ j6 R4 ~+ `& j {
{
U Z& [. {$ Q1 [1 X' } ~! |
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
. W5 s ?) ~, M F# K' o$ d
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
- f1 K/ ?. x o
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
- Z' ^! Y0 r5 P0 o
# `- Z8 \) k: w- Y. h+ \% N6 v
pLight->Specular.r = 2.0f;
: Y& j1 [- n% B5 i* s% ?( d
pLight->Specular.g = 2.0f;
+ O/ T5 v4 b! {$ y, Y0 o: i
pLight->Specular.b = 2.0f;
+ V& G/ O) \) }$ P M+ y
5 ^2 Y) S+ C% x6 E/ Q
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
" j; U% U! O" Q/ @9 t
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
4 m/ m2 e+ X5 n2 k. |8 ~) P: T. Q
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
; u, k! v8 M7 ?8 _$ [* c
- [4 _ a- ?) o% l1 k& W9 N' _- x
HookUpdateLight( pLight );
$ Q1 P/ u) J: k2 I# R3 |
" o: w! v4 x! t1 l S' {, e
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* I5 ]! }% E. r: R5 n: C8 a4 K
0 d8 W9 d9 g9 M- R# a8 d
pLight->Diffuse.r *= 1.2f;
1 ? v5 v9 | k4 T6 j! i6 E
pLight->Diffuse.g *= 1.2f;
9 \% B, l9 ^5 A7 i; y& M' H3 w
pLight->Diffuse.b *= 1.2f;
# ?. `- A1 @" S0 m7 o7 |
- a. M) }! l/ `- L [7 B- q- I
pLight->Ambient.r *= 0.8f;
2 y$ U+ x1 ]+ t5 N
pLight->Ambient.g *= 0.8f;
4 r5 w9 i3 n3 A# @/ [
pLight->Ambient.b *= 0.8f;
% b/ a4 L, X$ q( d) p+ t4 W+ i& p
/ i" S" t6 n' ^
memcpy( &m_light, pLight, sizeof( m_light ) );
( a+ ?# Y7 M9 U. x8 G1 j! J/ p
/ C& B" P8 N' K( i
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
2 Q8 j% o3 a6 m) t* M1 ]4 R
D3DXVec3Normalize(&(vecSun),&(vecSun));
# L: h) g* C2 O, V K( E ?9 h
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
0 r. l% ?4 W( _3 `! e7 u# K/ t
pLight->Appear( m_pd3dDevice, TRUE );
4 L0 A9 _4 I! v' v
4 T" l0 ?9 C9 `
DWORD dwR, dwG, dwB;
- L2 J4 X1 p% _3 x$ j
dwR = (DWORD)( pLight->Ambient.r * 255 );
9 Q+ L$ C% F! I; W9 v. y
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 i; b j2 W7 i* k* J7 A# O& Y
dwB = (DWORD)( pLight->Ambient.b * 255 );
! L2 Q: X8 P: I* I. H
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) p* v6 I# C& j% c% Q6 w; j# g0 _% }# b
}
: N7 Y0 W* u- ^3 X3 g2 z8 Y1 x
}
& N6 ^# J+ n9 y3 w1 `( t" S! A
}
0 a+ J; y( l" V0 o# e
else
/ U5 H' H) s" f/ L
#endif
}' \ m8 U9 [! S" S/ V8 J
/ U/ o' C1 ]+ ^2 b5 Z. J% r) R
if( m_bIsIndoor )
3 D# u* w3 Q( p+ i' Z9 A
{
9 r: }- @3 b& S) E8 j% J
if( pLight )
]2 g& t6 p. @! D5 @' e6 }9 [
{
) k5 @7 ?$ z& r
// à??μ oˉè*
8 b/ e+ q5 t O$ {
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
( V% I5 I" `# _: a( p1 Z+ O
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
1 g# B* U o5 h& U
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
* x2 c9 n' Y/ Y8 o
' q" R. C0 q0 Y2 y5 f. L+ A1 ]2 C
// oˉè* ??à?
" p8 L) l8 ]+ T
pLight->Specular.r = 1.0f;
8 f1 m |. n: h2 H! f
pLight->Specular.g = 1.0f;
9 w6 `$ i2 I) J
pLight->Specular.b = 1.0f;
/ k" @) `6 J2 ]) A
// àü?? oˉè*
g. n* y/ _5 ~
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
' r' v+ d- F0 n, I p, z/ f- `* c
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
e! h" M7 p6 |" I$ G
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
6 B! ^. |. A4 Y& E4 K* S
. r7 i* e7 {0 O$ W
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 I" `, U, u: @" @
{
+ ~; _2 |, `! K1 L
pLight->Diffuse.r *= 0.6f;
- d! [% P9 g* M, B! N
pLight->Diffuse.g *= 0.6f;
, s1 f L. A4 D3 D' E& s
pLight->Diffuse.b *= 0.6f;
u' q5 }; t7 f7 Z& a
pLight->Ambient.r *= 0.7f;
% M2 a( x/ @4 e
pLight->Ambient.g *= 0.7f;
2 l6 P+ u- g- t4 n' o" m& d
pLight->Ambient.b *= 0.7f;
! _6 n% S2 {" u. y2 T3 p
}
1 X4 F; x \) k
* r% S% a1 f( `6 O) f1 J
#if __VER >= 15 // __BS_CHANGING_ENVIR
; c) H* [* G/ k% m% n. `
if( g_pPlayer )
/ c D3 I7 M7 V, O
HookUpdateLight( pLight );
7 B* K5 r) V' p e; ?. L) t# D1 y
#endif
& V6 t& u, @2 C5 X7 P& I
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 o4 o; U, }' y1 A' T7 [. J
1 Y( h1 D3 K/ \3 f+ R) u
pLight->Diffuse.r += 0.1f;
$ h1 s. c: E7 F) i9 f8 M5 K2 E
pLight->Diffuse.g += 0.1f;
) _7 h" n& O; K/ R M8 F: r
pLight->Diffuse.b += 0.1f;
& w6 h. y8 B. q1 M2 ]
// oˉè* ??à?
6 ^7 o# i) Q( y2 D
pLight->Specular.r = 2.0f;
: B9 k: y* G" _1 s8 W
pLight->Specular.g = 2.0f;
, m9 _8 i( n2 K [
pLight->Specular.b = 2.0f;
" Y7 {& ]( m( `( i5 R. b( J4 b
// á?oˉ
) Z8 v* F8 K6 e$ R4 w B
pLight->Ambient.r *= 0.9f;
/ h( j- i: x/ P4 P: W) R6 L" k$ C" a# q
pLight->Ambient.g *= 0.9f;
+ ~: v$ E) M- P5 J0 @" v
pLight->Ambient.b *= 0.9f;
* K" v) L& U/ }* ^9 d0 i3 z6 _# k: T* Z; L
# d- X6 [1 _& X$ R) D4 H, b( u2 a R$ g
memcpy( &m_light, pLight, sizeof( m_light ) );
8 {6 K( O7 [, l3 Y1 u
) k4 c4 M& g& \' c' E; s4 |
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
, z( H5 B# W4 L+ c g j2 H( n
pLight->Appear( m_pd3dDevice, TRUE );
4 i7 t9 A' e) d9 ?" K
1 ?6 h% C/ P- K
DWORD dwR, dwG, dwB;
- T, ]2 O& p1 J; g
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 G) P: \+ B( c Y) m- l6 N _
dwG = (DWORD)( pLight->Ambient.g * 255 );
. r- a% l, Q P1 v: f
dwB = (DWORD)( pLight->Ambient.b * 255 );
; N% @4 K4 e" M7 p) B) m! t! C
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ C) O0 ?# q+ @6 p4 Q2 ^; n
}
- K- D6 E4 m1 {, V# X3 I* J' Y2 {8 W
}
W0 N* D7 T3 M
else
p; D0 | d" q5 e
{
1 n# K( j8 d) E* a6 H
if( pLight )
8 {$ ^8 R) H; M0 U
{
4 V9 p3 m* |& C. ]
4 v2 ]- r( H# V8 d6 O
int nHour = 8, nMin = 0;
# L2 E: U0 G" S
#ifdef __CLIENT
' A4 j- W* G- r& ^4 f: p, S
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
+ F# a3 ~8 b4 D+ L
nHour = g_GameTimer.m_nHour;
8 q$ l$ F& Z. u
nMin = g_GameTimer.m_nMin ;
/ ^. r# l! \; J! j/ {& F6 |' ?
#else
: `4 n- q" V# @; [
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
+ S9 i$ Q& T& [- H' J' S. i
if( m_nLightType == 1 )
6 x9 T. g* \* n& g1 s4 s
nHour = m_nLightHour;
8 t% L( j3 f6 q: e- x7 I
#endif
$ ~; l$ R7 u1 [$ d
nHour--;
% a' S7 Q8 [. b! w f- p4 K
if( nHour < 0 ) nHour = 0;
" G A3 h2 _, j" T
if( nHour > 23 ) nHour = 23;
( g" C2 u" {8 u! R3 W8 S. b
. D4 v& q) ~6 r1 t, y8 F
//if( m_bFixedHour )
" Z i# P' k8 u, D( m
// nHour = m_nFixedHour, nMin = 0;
! m0 @" w# }6 \! U5 [) n
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
+ ~' @" F5 ^/ }
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
( w% Y& }- W- M! e4 a% c% D7 s
' I+ X+ `4 ?! _
//m_lightColor = lightColorPrv;
5 b Y# T' s( @( `' z* T
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
$ r9 S, h( ]; X& l
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
0 S( |: n/ C! D# U
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% }1 |! m$ ]4 P
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
f; C2 o. G% h6 |& n
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
- \% l' r7 J4 K" I
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
1 w+ J) ?- b( T9 {) `/ y8 B7 c3 H
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
- u: O: |+ I7 f7 k; t) a6 M6 N
. ]* S( V( _2 G' Q3 l; V- l
// à??μ oˉè*
8 U9 r* H. ^( t' g: q( Z
pLight->Diffuse.r = lightColorPrv.r1;
$ W+ } ^5 C( h! j$ A* b
pLight->Diffuse.g = lightColorPrv.g1;
' Q& o) L4 N5 L& `7 \( j
pLight->Diffuse.b = lightColorPrv.b1;
, L1 P( }! ^4 B- a
// oˉè* ??à?
6 h- r1 _* @9 O" r5 G2 b
pLight->Specular.r = 1.0f;
) y5 I/ V9 ]8 F4 m9 i
pLight->Specular.g = 1.0f;
2 O( f! x& p7 G7 m
pLight->Specular.b = 1.0f;
6 i! g4 R% v/ r% _) Z
// àü?? oˉè*
! S" m9 A# v# c2 B6 ]. @: C
pLight->Ambient.r = lightColorPrv.r2;
8 Q7 b* d9 {, ^+ G* g5 T9 V) F' }
pLight->Ambient.g = lightColorPrv.g2;
8 I: c- B1 F5 r5 r( ~6 E
pLight->Ambient.b = lightColorPrv.b2;
$ b' m$ N6 ` Y3 f
1 B$ L6 P3 A0 L+ F
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
1 w- h+ s9 T6 G' \4 b
{
: _( ^; c. ]5 w! o v
pLight->Diffuse.r *= 0.6f;
1 \$ e7 A1 t* `7 S; B
pLight->Diffuse.g *= 0.6f;
# L5 s& u7 h% f8 H- R ?1 l
pLight->Diffuse.b *= 0.6f;
% |3 _! g. W1 h0 A
pLight->Ambient.r *= 0.7f;
0 |, g* y4 {; A! H5 M( G" }, [
pLight->Ambient.g *= 0.7f;
; |- k, ]6 x3 G/ J' z
pLight->Ambient.b *= 0.7f;
! p1 S$ ^; d! {+ _
}
- L# y h7 Y- {( ~' P3 S3 [
0 i$ _9 N l9 K" x' ?, C6 `
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 e. h, U# B' w4 Z1 ?: h2 k
if( g_pPlayer )
9 U+ k# i0 @- X" B7 S) r1 A$ C
HookUpdateLight( pLight );
. d* Q7 ]# c4 X+ h
#endif
" p( r! m, w) j' w7 [
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
! w1 X% _8 {% E* x# N( u
# D$ V. ^2 G% H9 H% V; T# j; y2 A
#ifdef __YENV
$ D1 |* n" ?- W6 v( a( @& f
pLight->Diffuse.r *= 1.1f;
9 j4 W& u* N0 ^- i2 w0 ~7 @! a
pLight->Diffuse.g *= 1.1f;
8 ^! c' Y( c7 H6 C
pLight->Diffuse.b *= 1.1f;
# z F& F6 y( ?3 K/ R
// oˉè* ??à?
7 |5 m! e) `0 Z) L" s; Q( M" P4 z
pLight->Specular.r = 2.0f;
7 K$ j/ s# {! j% W" i" ]: y
pLight->Specular.g = 2.0f;
( Q% h4 y7 O1 I$ Q
pLight->Specular.b = 2.0f;
o( c7 T( a7 l& r. r8 y) D
// á?oˉ
/ y: P$ i0 P/ ?, O# d( u' m
pLight->Ambient.r *= 1.0f;
; F( c" s) l3 k3 Q/ @. n
pLight->Ambient.g *= 1.0f;
& x* N# e& i" {% ~2 t3 f
pLight->Ambient.b *= 1.0f;
: d9 \# C% ^ y: e0 v# v
#else //__YENV
: ]- i& N- t) @' C1 }
pLight->Diffuse.r *= 1.1f;
7 A% M( c9 z3 K8 ^# e2 {+ ?
pLight->Diffuse.g *= 1.1f;
5 @3 K# ^( N `1 z3 V
pLight->Diffuse.b *= 1.1f;
7 S; p. i7 J! b" k* Q, }' O' ]' T
// oˉè* ??à?
. q& E! _% d4 X( e' w! }
pLight->Specular.r = 2.0f;
3 N" _0 O' r) x/ K
pLight->Specular.g = 2.0f;
: b1 \! i) D/ K3 |# j# j8 j+ [
pLight->Specular.b = 2.0f;
: p' M8 L" x B: ~
// á?oˉ
# q7 `0 M# m% P3 f$ Z
pLight->Ambient.r *= 0.9f;
! d2 S6 r3 t* ?7 W* N" V
pLight->Ambient.g *= 0.9f;
* G: d$ r# v+ c9 g
pLight->Ambient.b *= 0.9f;
9 w8 ^. e6 G% B5 x! r1 }0 W
#endif //__YENV
0 N3 S. f) l d" B7 Y" {$ a
! n, b, X- E! N. B
memcpy( &m_light, pLight, sizeof( m_light ) );
6 L/ v/ I& `0 S1 W! j
A: N; q, Q: e3 J' V# A1 `. o/ L8 S
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
. O5 q7 Z# E, [1 t; M p/ d
D3DXMATRIX matTemp;
& e7 }: r; Q7 [2 T3 m# U
static const float CONS_VAL = 3.1415926f / 180.f;
% G3 R+ [, w4 v) S) g5 T
1 p+ L ~( \0 f: t, h1 x% \
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
/ G8 b2 g3 W# W( ^" ~9 B
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
# R0 Z! p0 f2 y
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
T! K8 q1 K2 o. T% D
pLight->Appear( m_pd3dDevice, TRUE );
5 N$ O' s0 N6 ^2 ]' S
6 e3 K( C+ @) W. z! P/ M
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 z4 a. ]0 ]- r6 w9 T
// D3DXVec3Normalize(&(vecSun),&(vecSun));
4 J) u; A; u: ]! A- i: e% X- O$ M% L
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 _8 |# c9 M. |% t0 |
1 |7 E3 l& P. `: S$ z" k6 D
DWORD dwR, dwG, dwB;
7 x$ y/ K) Z, X8 Q5 P* U% e6 N! h
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 r; ~! B% S8 s2 H
dwG = (DWORD)( pLight->Ambient.g * 255 );
: a( n _! r, g6 C7 Y
dwB = (DWORD)( pLight->Ambient.b * 255 );
: S" D; c; Y% T/ ?/ @) r1 I3 k
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 I7 I! m( \2 v$ u5 C: |
}
4 X; d7 ~+ [' a& a) S" l
}
! Y% T. c3 S. F9 o q; s+ ?3 W% g
6 {: Q: U5 A( A! Q$ Z
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
1 P+ I5 M! T; N1 r; Z/ D/ A
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) );
" Z$ U% K% D) ]2 T0 O c
::SetLight( bLight );
( _' O' a; W0 ?; Z. `* S
1 Y/ }: _+ d F0 n) _1 Q3 ]
// ±ao? ?D?í???ó á¤à?
- v6 F4 T8 F L
m_pd3dDevice->SetMaterial( &m_baseMaterial );
6 t) ^1 M: K8 w, T1 i
/ G% V" G& j+ x) ~4 M& F" F
#endif // not WORLDSERVER
' H. W* Q8 j* z# v; `; J
}
- n& a- e& `. m/ Y2 ]
并更换
$ ~* q! } w# o3 N
Code:
# _3 Z, v9 T9 R Q
__FLYFF_INITPAGE_EXT
) c! U" J- S$ X$ `" W1 x
定义
p! E& c3 A+ R% L e! I2 e+ a5 G+ k, e
3 q" c" d( j2 h ~0 L) m
( w. h' f g8 l+ X. C2 I4 M# l
+ ^1 y# n" k0 M; Z, p3 C* @" c
( D( o3 }) T4 I) x) ]2 w
现在终于删除我的狗屁加速...
: O7 }. y- y* A( x( ~7 G4 k
* B: ~( ` ~$ T* b
5 Q2 p6 f4 S# Y
7 i6 w9 l9 c, k8 f( F7 \* }8 q
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2