飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
" y. t) _, h: G6 W4 R
尾翼:
U& q+ d( G- U0 G$ M
( p6 g& S# p( {4 s6 i
代码:
1 f1 X& K( u+ ~. ^( O$ F
CWndAutoFood::CWndAutoFood()
" s: k# @$ ?0 E8 Z$ {2 i
{
6 v: t6 |# ]) b
m_pItemElem = NULL;
9 ~0 L) f1 k9 {0 L6 A( `
m_pTexture = NULL;
: Z* W1 w) \6 T5 t; D$ p
bStart = FALSE;
* z" O( k9 k8 B* |$ |
}
" a+ U7 [* g3 s2 G9 X% A
5 U+ j* ]3 D7 P& k$ S' t
CWndAutoFood::~CWndAutoFood()
5 K9 l5 |* h; D9 c0 H/ z$ ^
{
, r$ a+ Z# r: v( A( q+ G
AfxMessageBox( "AutoFood ist gestorben
" );
! J7 h5 V: C+ y( @1 @& s2 ]
}
8 }2 v9 q7 q9 s! Y" Y5 K
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
' G3 D2 L7 y. @( h
{
7 |6 e/ E1 |3 ` W2 f
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
5 m/ J" X. B' [8 R: o
}
+ t9 {) t9 b; J' p# N8 \( h. i
# J, G/ c) ~. B* I
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
7 c% ?0 s; O3 Q4 z# c+ w+ \
{
9 g/ F8 m& R8 U5 J' i$ Z% b
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
9 h$ f0 L ], X) f, S* L
CRect rect = pWndCtrl->rect;
7 c0 E( {- n- M9 r" ]* s7 N
if( rect && rect.PtInRect( point ) )
3 \" C: t" e5 `" Y; b) [
{
2 k2 \3 q G6 q- r! r) ^
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
' u" P* R3 i% L3 G
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
- y2 h% g4 I, g$ R. Z" O( M
{
5 A# {9 q4 |4 }3 [. y1 W
if( m_pItemElem )
4 d2 b# l8 t9 a* z0 I
{
7 K u' e6 e7 d2 P
m_pItemElem = NULL;
$ W o. K- y% v' ~, @
}
2 Z$ E$ V5 E9 @/ E9 X3 |+ y$ u' s- X
m_pItemElem = pItemElem;
9 o+ y( f } H w6 ]
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
; t: L i1 q/ v: }' |
}else{
: g' p" ?* H: D4 e
SetForbid( TRUE );
3 T& L4 l4 w8 B1 K
}
; W9 R/ g! I- Y* p/ T- T: P
}else{
; z, a7 ^) e: k2 A6 O$ v! m
SetForbid( TRUE );
3 D2 _: I: }, `+ n% o% I4 J7 e0 u
}
# F u: e5 U* x% `' P: O0 L; q
return TRUE;
2 M- B& T* G0 }! x
}
V+ |5 I9 C& R
% T; M8 l- f) F0 ^4 h* A% r C
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
4 ?2 n, t/ S& Q2 l
{
7 S8 f7 _- O. L O) z
switch( nID )
+ k0 i" i% u' _) a& @- X9 H, Z
{
. F: ~" M) ?2 }# u' q" C* K
case WIDC_BUTTON3:
/ e9 E, S$ z( X7 N
{
! v( I' } J. x& U, T
bStart = TRUE;
7 Y! ?5 _/ w& j, U: r& s
break;
! ~0 M4 ~. I" P+ u) }, H" H
}
* o8 ]8 Y9 n/ q0 Y, O
case WIDC_BUTTON4:
# c; O; k$ `+ Q; g, S8 |
{
& @( A4 X# t- ^% I O! k; R- b0 Q
bStart = FALSE;
5 m$ _' J+ R' ?9 h7 Q
break;
0 H @9 p2 f/ I0 a
}
M2 {9 D# L2 ]+ t
}
" _- I$ T5 J2 e9 l6 A3 y
return CWndNeuz::OnChildNotify( message, nID, pLResult );
. D6 Q/ M- |( i# j9 J
}
2 \8 @* e7 K: n1 s0 F9 J) N c: q [
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
8 _2 O0 r8 N2 n+ K* r
{
! E% h$ Z) }4 T4 ~) A5 `- O) |
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
( U Z2 N* B4 ~ ?
if( bStart || !m_pItemElem )
5 K% c" ?4 L2 }$ A9 [% L% X
{
+ l) d' c% f* Y+ A& z* j4 D
pBtn->EnableWindow( FALSE );
# b, D3 e2 r0 p8 B- R, t
}else
. A1 X/ t2 }6 h5 u* o$ B+ S. g
pBtn->EnableWindow( TRUE );
$ L, v0 V) H7 l
if( m_pTexture )
; X# Z+ }. h% p/ E
{
$ X+ c N4 s, b, Z9 ^
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& X. k. ]- L6 x/ `( N6 Q* H
if( wndCtrl && wndCtrl->rect )
9 `3 }. v) ]& x5 H
{
; G( d( u8 y# M# r
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
# o/ y* G+ v) j/ b
}
! x( r) i; `2 z& Q
}
. T5 w/ Z4 O: z" Y: G1 J
}
' l# W+ G2 p2 y6 [$ S; S
h" G6 }& x5 y3 t) s+ I
BOOL CWndAutoFood:
rocess()
^, c$ _$ E/ y/ @$ ?5 }
{
. R; B- S# o @
if( bStart )
% X( Q1 [: d2 _$ f' ?+ s. k- n
{
9 v# l |; [% A6 U8 p$ T" C
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) A# @2 Y4 I: [/ D1 L
{
9 x3 M, P$ {4 b" J3 _
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
6 n- @( U1 ~8 y* a* x2 W% {' i' {
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
5 t: E" B( r+ ], @. e
}else{
\7 o% s* u: x, v9 h1 n& ~$ F
bStart = FALSE;
: ^- o/ e5 r: ?& W5 q J. v5 S( T
m_pItemElem = NULL;
! n" a! T/ a3 t1 ?
}
5 H1 I: x2 y) [& P. F _9 t% g
}
8 I, n' ~4 T1 n
return TRUE;
' A K9 w1 U: W# w( i4 n* \
}
. ~7 q* U% _6 v7 v% l: ~. o" v2 _
. w: j# J# o5 y$ B7 }! A3 \
登录视频废话:
9 c: ^- y! d- c
尾翼:
9 s4 K |0 p$ F2 S# c
) C0 H- y) b" h" |* R% d+ y8 `
代码:
* t& H6 m0 F5 `: T8 a4 F$ x
, J* Z) R7 A0 B% f
void CWorld::SetLight( BOOL bLight )
( @# {! s' u" N! ]7 h! r7 U5 E! [
durch
3 n- A: c, n8 `# ?& N& z+ r4 M, N
Code:
9 P' v0 y# R2 M3 d& j; F
void CWorld::SetLight( BOOL bLight )
" h$ N! `, z% m2 s& V2 C
{
% [2 M6 G0 G$ T( ]' \
//ACE("SetLight %d \n", bLight);
/ j$ `5 S7 c0 ]$ @+ [, M
* q! W) h; m2 R( A6 ~4 h2 B& E9 O! `
#ifndef __WORLDSERVER
, H5 ]/ x/ n) L! Y
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
4 l. G: d7 b% \& H% y
CLight* pLight = NULL;
' v, B$ }! E9 C7 A- S. u, E. P7 Q
4 ?7 D* K( m, U9 j+ f
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
( t: d$ b1 V% e( K; g) u8 p/ X
5 p1 Y" `1 ?3 {( Z
pLight = GetLight( "direction" );
( m5 @) d5 m3 c" u& Q* b
6 z4 o, r& L* N: F( x1 e
#if __VER >= 15 // __BS_CHANGING_ENVIR
s# ^( ?1 C; Z$ p0 a' D! [/ \
if( g_pPlayer ){
3 T9 w: N4 d# v; K! @
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
6 Z) Z* A; O2 l& a z
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
4 g- Q) a0 B. D$ w
{
% T) B" ?0 ~, f( `' j3 X
if( pLight )
) O4 j1 I! o- Q7 K' g$ ] l& g+ F
{
0 O. F7 K( g6 ?9 q% ^ U. c
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
7 d' T6 m3 J& s+ Z+ v C* f8 M
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
3 I2 t% b+ j' m5 { L P
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
( Z' e3 ?) m7 c% y& r6 h$ k8 g
5 w& K, Q8 h" N0 q2 F2 Q
pLight->Specular.r = 2.0f;
+ M0 c- f) F9 l2 G6 J" D
pLight->Specular.g = 2.0f;
& K" E; `- b# h4 h$ G) M
pLight->Specular.b = 2.0f;
$ s$ Z) V' @' c3 c# D8 [# p2 h
2 w8 Z5 }3 q6 _+ r
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
! K: `: \) o. n$ J3 u
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
5 e& C' e) ]) v2 B: @* B% @
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
5 f, v7 k1 R' [5 b! k& U9 H, b8 H
; w9 S5 ^- @5 }( ?! Q& M6 a6 p' ]
HookUpdateLight( pLight );
C; Z/ ]0 m& S2 t# Y6 u
" D K& f ^- A* w3 }
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 [# C5 I* M x# |: O- A- ~# b7 x9 Y
: q. R u9 h g* g! A' |3 k# D K' j
pLight->Diffuse.r *= 1.2f;
% M+ `, ]" \" r& e; Z3 m
pLight->Diffuse.g *= 1.2f;
- j7 W( @0 j$ F6 K
pLight->Diffuse.b *= 1.2f;
& d) k: g# q0 M
" [& V3 U3 L) A- s/ F6 a
pLight->Ambient.r *= 0.8f;
4 H: ]6 o9 P# Y' ]2 d
pLight->Ambient.g *= 0.8f;
4 M* `' T7 }5 l" Y7 M2 Q2 `
pLight->Ambient.b *= 0.8f;
9 t4 Y" g7 I5 {3 j6 ~8 H
1 j `! e j' U' i' ^; \/ p* i' D
memcpy( &m_light, pLight, sizeof( m_light ) );
5 i1 O' t7 w9 C: a" V5 U: E
( r& E- ^) x, `! E& }8 s
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% [7 \7 e* `. i0 x& _) J7 \2 q
D3DXVec3Normalize(&(vecSun),&(vecSun));
" _, O3 \& L: z" e; s5 G
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ Y% t: y) ~9 g/ o
pLight->Appear( m_pd3dDevice, TRUE );
- t" `( t3 b! q- G
$ i. p- W5 i/ ~3 [) {
DWORD dwR, dwG, dwB;
/ j& ^! K p% v# u `9 F* Y3 e
dwR = (DWORD)( pLight->Ambient.r * 255 );
" X& ~. A5 ]$ L
dwG = (DWORD)( pLight->Ambient.g * 255 );
) C+ C$ S) V. M0 t: V& P2 S
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ G) A1 t% ]3 x9 _: C4 f# ?4 K/ e
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! f' N* M3 E2 a9 I) u4 g; f
}
4 f. L% z0 q q9 @8 k8 h' W" \8 q, T
}
5 D$ c4 `! z& C! R% `6 H7 Z0 R
}
. f7 w! Y3 S# |: F3 |
else
0 d2 E- r" @7 W! @+ B- i
#endif
, {" y6 G/ ]% s" L( m
, z9 l& x: ]# E# x7 w; P
if( m_bIsIndoor )
: c% W2 g1 j/ g
{
" w& B: T# T' o5 f0 P: `
if( pLight )
$ u( b+ p/ b6 K3 ^5 l1 d/ q
{
& S& W* R8 G) h" I0 ]/ u2 O5 q
// à??μ oˉè*
8 x V- a, Z! h# x# V, H6 h% h( U
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
. [7 b% U6 v$ d5 F) I) ~6 B
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
9 q. u3 N6 G8 V& `* B2 r
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
, D( k/ Y7 ~) N# u" Q$ ~
! I9 p. v% X4 u+ f
// oˉè* ??à?
( G1 g8 ]0 e- @' M' {/ j. ?* U
pLight->Specular.r = 1.0f;
& Q) i8 A% O( C; c- N" N
pLight->Specular.g = 1.0f;
) J, W# w6 V( A& N+ H- D" V6 j* L6 I
pLight->Specular.b = 1.0f;
2 M) l+ q& F/ \% v6 T4 W
// àü?? oˉè*
4 X% w' t$ n0 h' D- L- {* |
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
" ?9 q: U, c8 j. ^ }4 n# d1 T
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
: ^+ |6 l9 v, t4 ~2 a
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
& R3 }. v3 P( c6 v
; j/ Y4 B8 g# Y6 s! z
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% ?' U' ~# o3 C7 a
{
: r0 Z+ d5 ], M# T9 B
pLight->Diffuse.r *= 0.6f;
) G3 p8 q. n9 t) ]9 [
pLight->Diffuse.g *= 0.6f;
% \1 }" M- L; O4 \- s0 b2 Z: G0 a
pLight->Diffuse.b *= 0.6f;
2 T7 F! @' o1 ]+ o& X, k
pLight->Ambient.r *= 0.7f;
: J8 ~) v, |* v" n* M$ s d
pLight->Ambient.g *= 0.7f;
- x4 ]" k( }% {. k. w3 y* Z3 a
pLight->Ambient.b *= 0.7f;
3 P1 P$ t# w6 R" X1 f: Q8 U2 |+ ~
}
z& {* f1 l7 m; W
, n( Z" _$ w& P# p- q2 W
#if __VER >= 15 // __BS_CHANGING_ENVIR
& M+ ^( B( x. ?
if( g_pPlayer )
/ R) R+ P l5 }+ R4 \8 c
HookUpdateLight( pLight );
3 m8 u2 h5 w* C
#endif
1 A4 L& R1 Z: C& u8 Y; _% L& d
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' u% `- _" d- G8 D/ ^" V
, P3 M4 E9 b, |6 Z K0 Y
pLight->Diffuse.r += 0.1f;
; u J1 a2 ~1 }7 t+ _4 N
pLight->Diffuse.g += 0.1f;
: f$ O5 \9 d5 j
pLight->Diffuse.b += 0.1f;
1 ^ S2 R$ N8 @% `* R' I
// oˉè* ??à?
2 `# V3 I9 E7 G* O
pLight->Specular.r = 2.0f;
: W" h/ I8 |( \1 r3 H V. N( L: P1 [+ Z
pLight->Specular.g = 2.0f;
) ~! L, q3 I2 |! f& O
pLight->Specular.b = 2.0f;
+ y2 x; k5 n7 P2 T9 P% D0 n7 H! n
// á?oˉ
1 {: X$ T- K; Z2 a1 P
pLight->Ambient.r *= 0.9f;
. [% V% p6 i; A, _
pLight->Ambient.g *= 0.9f;
" P7 O0 g) x& W% Q
pLight->Ambient.b *= 0.9f;
& E# t$ J6 z6 m. |( e S% Z* D
8 w5 d/ Q4 f* }6 B, ?: Y
memcpy( &m_light, pLight, sizeof( m_light ) );
/ t0 J5 x# K& [- ?% u
# a9 ^& v% i) b5 E) V; E
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
J$ k p, E, C. [& _$ ?8 E
pLight->Appear( m_pd3dDevice, TRUE );
' h1 F- B% J$ e8 s# p8 }) Y
6 w0 | _) Y$ A, {. v0 L
DWORD dwR, dwG, dwB;
# t2 h3 }9 I) N( O
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 ?+ o6 G2 ?3 `7 N, _9 h
dwG = (DWORD)( pLight->Ambient.g * 255 );
" q6 g# } w: _; K
dwB = (DWORD)( pLight->Ambient.b * 255 );
) ~9 b4 v& [- C4 w: w6 P
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 U- u( S. H+ H
}
3 O7 f2 v* c: {/ c/ t
}
; U: Z+ O( e5 z5 @
else
6 t) m# B* j& M# F8 m5 x$ _
{
& D' y9 T. x) m% E5 y0 m- R
if( pLight )
5 q5 v. N: k- d0 i" i
{
" L l& V, S! E' E! j
5 V+ U3 I1 m- N' l$ d u3 ]
int nHour = 8, nMin = 0;
( z- ~4 J% Z* o* z4 e2 W
#ifdef __CLIENT
$ q' i9 a% }7 r8 f" Q
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
, `5 c1 @/ E9 ]1 ?7 ~$ S
nHour = g_GameTimer.m_nHour;
# t3 g* k! q. S8 f
nMin = g_GameTimer.m_nMin ;
3 [7 J7 Y' m, x: D% y2 Q( Y; ~
#else
, w# P8 C/ D1 w/ V8 T% A8 m/ d
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
3 h0 ]) o, J g5 I' h1 f/ v8 B3 n9 c
if( m_nLightType == 1 )
! k1 ?1 ?9 O$ u3 Z$ L1 P6 o$ ]" a9 Y4 v
nHour = m_nLightHour;
5 q* \. ?; T" l7 l1 F
#endif
- i9 ?8 W* \6 c$ k \, p R$ a+ e
nHour--;
, @* y) c8 i3 w; P( Z. v
if( nHour < 0 ) nHour = 0;
) t% `) x7 F G* V3 ?1 ^. @+ u/ I \
if( nHour > 23 ) nHour = 23;
$ W! y8 O M6 T/ P
: d/ j- Z/ W9 z) e
//if( m_bFixedHour )
7 U# h2 K$ P- U) X1 H
// nHour = m_nFixedHour, nMin = 0;
) S& `, W8 e+ k) ]1 r
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
/ _- w: W* p/ x
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
4 a9 q9 S1 ~& q! q; I6 Y
# ?! M& n: M+ Y, a
//m_lightColor = lightColorPrv;
# n M2 q, q: b* y& j
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
! W" M4 ]- P5 p8 }! }: v
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
7 b+ f7 k6 D8 B! C
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
7 Q$ J0 U4 |# h8 R5 B: u# N. d1 O
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
: F! z. [/ j- R
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
( e4 @6 L M8 U( W; D, c
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
. j( V) i [: S+ l* t& m4 s2 `
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
* D# x3 N; O4 [
: ]" y5 ], S7 d
// à??μ oˉè*
* U% g, F. \" F/ R9 H
pLight->Diffuse.r = lightColorPrv.r1;
* { _( h) V9 K9 j% A' ^# j. B( l
pLight->Diffuse.g = lightColorPrv.g1;
8 F. s2 z; U5 G1 P
pLight->Diffuse.b = lightColorPrv.b1;
: i& @' Y( {% U5 P! G K
// oˉè* ??à?
9 ]: S7 p! Y3 p0 n: g
pLight->Specular.r = 1.0f;
0 ~) H, N( K, j6 b0 t
pLight->Specular.g = 1.0f;
% `& W `) w3 `
pLight->Specular.b = 1.0f;
& k) q, g: G& x. f
// àü?? oˉè*
3 n8 w8 S* c2 R
pLight->Ambient.r = lightColorPrv.r2;
6 N! ?- L5 p. \7 x
pLight->Ambient.g = lightColorPrv.g2;
! c4 h2 o1 j/ y3 M! ?& [/ D/ {0 A
pLight->Ambient.b = lightColorPrv.b2;
+ @4 d+ l& I! Q J) [! h+ ?
0 L$ g/ @8 v, G$ t9 }
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
( n' L$ I9 X# b8 q* Z$ ^
{
" S* |7 f, b# @+ y6 [1 G# [
pLight->Diffuse.r *= 0.6f;
5 i. I1 T5 |" |8 V6 P. Y1 j
pLight->Diffuse.g *= 0.6f;
$ o. x( B: y; `8 k( A1 U
pLight->Diffuse.b *= 0.6f;
9 B5 |* @8 g4 S
pLight->Ambient.r *= 0.7f;
3 T3 l' W4 g, s8 F* j1 C
pLight->Ambient.g *= 0.7f;
- z# f0 I D7 s" Z
pLight->Ambient.b *= 0.7f;
) j- Z* S( q- J+ `# N g
}
* i9 v5 G; ~4 [
$ q0 {3 b3 }+ \* R
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 V* \0 i( z4 d+ S8 z0 d
if( g_pPlayer )
?; u9 I3 D# @3 A+ \6 S: d
HookUpdateLight( pLight );
8 Z7 }) e4 j( D* m
#endif
4 D, B7 H* E" c2 ^+ f: X
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& G( O) f7 y$ [( r9 e8 ?- w ]
9 }* p" _( U: A" L
#ifdef __YENV
/ m: K# `; y$ F/ W6 V- ^7 S- m
pLight->Diffuse.r *= 1.1f;
' O: I% y7 D! i( c Q3 H" \* d9 `" ]
pLight->Diffuse.g *= 1.1f;
! p* Q, M9 O0 f
pLight->Diffuse.b *= 1.1f;
$ ^& E. c$ `4 h: t# c
// oˉè* ??à?
8 @: `# u, g8 S& v& @
pLight->Specular.r = 2.0f;
0 F, W. q; }; K4 |6 {# I; K
pLight->Specular.g = 2.0f;
' m5 }/ m) z# D; x" i8 N
pLight->Specular.b = 2.0f;
) D, v- W$ j0 o
// á?oˉ
. Z# J8 i4 ~" [. `
pLight->Ambient.r *= 1.0f;
: B8 i7 }) O/ \" \+ A; k
pLight->Ambient.g *= 1.0f;
) C8 i2 O0 z& X- t4 r4 H! C
pLight->Ambient.b *= 1.0f;
+ z, g. n' l/ ^, z6 T6 ~
#else //__YENV
' i1 f3 D3 i; s7 M+ V
pLight->Diffuse.r *= 1.1f;
' Z: ~9 F% J! r, P/ r7 I3 R
pLight->Diffuse.g *= 1.1f;
$ _2 w7 D' b3 r. _3 K
pLight->Diffuse.b *= 1.1f;
$ {# X0 e: s( E: `- H+ Z
// oˉè* ??à?
3 ^4 u% M2 q& g* D5 B9 L
pLight->Specular.r = 2.0f;
- B5 v4 `. D3 Y$ w
pLight->Specular.g = 2.0f;
" }# J; | k6 I4 R+ D% z
pLight->Specular.b = 2.0f;
* c% d+ w: H: H d
// á?oˉ
. h; l& C/ l: @/ x
pLight->Ambient.r *= 0.9f;
% n8 P: v! R# v0 \- B" S* y( k
pLight->Ambient.g *= 0.9f;
8 E r2 z. F1 j; }
pLight->Ambient.b *= 0.9f;
2 _' |! M0 s4 B9 c
#endif //__YENV
: d7 ?# v3 N- p' |
# l, U9 k, e3 ^% j0 A# z
memcpy( &m_light, pLight, sizeof( m_light ) );
$ S) X" d j) `: F4 |4 \
# V2 Z- K+ Q7 [
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
% [! n( c! q( L" K" _
D3DXMATRIX matTemp;
% k1 m" c0 m8 ^' m$ \: h8 V
static const float CONS_VAL = 3.1415926f / 180.f;
1 i& L2 J, ~3 E$ z' ~0 S; ^
! G+ c- L% G. j u: k
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
/ ]: Z, Q' k, Z. Q( q
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
5 g) S0 a5 ~" d
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
' g% I' j ~0 h: i7 ?- j
pLight->Appear( m_pd3dDevice, TRUE );
4 `( H) W" ?) q/ E1 `
* h6 g6 U. a9 x+ s% X7 }" b
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
- D7 m: k" q% T5 l& D2 G* G7 @& A
// D3DXVec3Normalize(&(vecSun),&(vecSun));
/ u+ t4 `9 H3 _% k3 V2 S0 u
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
4 h5 u7 n0 D* k: I6 E7 |! v, q
- x- \, W' b/ l$ a. @& [. ~- D
DWORD dwR, dwG, dwB;
; {1 D% B8 [+ Z5 e
dwR = (DWORD)( pLight->Ambient.r * 255 );
: g7 \* \; Z% x9 f
dwG = (DWORD)( pLight->Ambient.g * 255 );
' _# q" K7 x A- s' W' W
dwB = (DWORD)( pLight->Ambient.b * 255 );
* Y0 M. @; i9 l4 X/ A: F3 U
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( b# S* n" H/ Q" c6 y
}
' X. v7 m: d0 [0 z% f
}
8 s2 h6 z7 R. Z, }# v" s
- V8 I/ N# z u7 e- x3 c
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
: Q- q) K Q0 [* q4 d1 |
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) );
8 s8 C) u' s- u0 Y% y
::SetLight( bLight );
8 |# c: j" x; u$ ^% Y. X5 V ~
7 a1 ^7 ^& a W7 I; [, S6 N
// ±ao? ?D?í???ó á¤à?
& Z/ S6 ?2 H. T S! H: O3 \8 `' m( I
m_pd3dDevice->SetMaterial( &m_baseMaterial );
, e2 J/ y6 o( U9 Y) P
" S- g+ l7 @5 H
#endif // not WORLDSERVER
5 ]; |: i Y; A4 T
}
2 h0 I& l( H* X! _! r1 @( o
并更换
- Z$ ]6 ^0 V* o8 i0 b9 R
Code:
$ c6 N3 p8 S! o0 w# T- ~+ {$ u
__FLYFF_INITPAGE_EXT
4 k: A5 X; {2 R; ]
定义
\8 d; n. ?0 o4 V
9 q! x. ~$ G# h9 }& O! b
; S( b# @5 {# x! _3 J% [. H
( b: D" b* b' S, y6 E9 `7 T
* s: \& v" `/ @% q" q9 @
现在终于删除我的狗屁加速...
8 O; t o% L; o
8 @2 W. ^& `- j/ q) b0 O
* s' G) G/ a. M. |4 h3 m$ {3 T
' |1 G% H4 R, f: n+ Z( l+ e, @. B
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2