飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
/ ^: y B& C+ E1 l/ @
尾翼:
% A( ]. E4 l* d
( _% i7 g& p5 a, L- q+ A
代码:
# K$ Y x& P: m+ e& h7 b. v
CWndAutoFood::CWndAutoFood()
& p5 X8 T! u4 V
{
% ~9 ]3 |3 N3 b' p) _: u/ f- T
m_pItemElem = NULL;
# Q, t, o1 p5 d ?( C
m_pTexture = NULL;
3 W$ a; q5 r/ Q( k* e8 ~2 M
bStart = FALSE;
$ _# x2 t* t& i# F
}
* O) n( k N9 E$ H5 K
% J5 ~& c/ ]1 q9 |
CWndAutoFood::~CWndAutoFood()
- t1 s/ V7 |" x# T/ c
{
* w" ~5 d& T, a1 d/ _
AfxMessageBox( "AutoFood ist gestorben
" );
# F! i' B; G. n
}
: |% W' @9 a4 D: m1 ~5 m& U
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
1 i" `; ?6 T7 _3 v, z' i8 Q+ \
{
I+ U: C8 P& q+ M" N2 K- I+ Q
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
! j9 y3 V6 f- v1 H* K
}
* Y7 i4 I5 G' v/ ?: k
% k" ?/ r, f% i; K
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
0 O p3 W. G+ {! X) J
{
; z+ X7 o, E0 ^8 B; u' B2 p) U, f
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ t) g9 i: E& B/ o! E
CRect rect = pWndCtrl->rect;
7 |" a1 U& q' n+ Q! E( c& Q
if( rect && rect.PtInRect( point ) )
! ~) v& y) }' Q) j" {4 P0 T0 \, p( T! H
{
( q1 Q- j( G( _& d$ j9 u
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
" w6 Z1 Q. z+ ~7 {) Z
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 _# e* q% c- f
{
: `# Y/ _) N V2 c% V6 g% f- \5 d
if( m_pItemElem )
\: b6 x& X5 l2 W
{
T; G5 b2 t3 S: \# `& R. L C4 b
m_pItemElem = NULL;
Q' H& e6 o+ n) Q% h; M* Y8 a$ u
}
) a g9 W# k1 c3 N
m_pItemElem = pItemElem;
$ F' Q5 m$ `( y# m8 z, g
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
8 S% B! @. t! f
}else{
8 B/ ~/ d& g$ a7 z* t2 n4 F4 \* I
SetForbid( TRUE );
: o% d- d$ l& @ b- x
}
( _* w' o% l6 {$ m0 M! E
}else{
1 h! w" c q8 }. f8 [
SetForbid( TRUE );
, Q0 r; F9 \2 C/ C" o( `: i
}
6 s. z& [0 Y/ H2 y1 i+ n/ P
return TRUE;
$ ~0 v2 Y9 Y& _! v0 ]2 a
}
0 x4 P4 p, b& w, b' h
6 N9 k9 C6 l/ ~- w
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
! K, T& k a; R+ |. m
{
% q$ a1 W R5 `
switch( nID )
y. z2 [4 O9 Z1 B
{
0 `* s9 }/ a: b3 ^1 A8 X9 |
case WIDC_BUTTON3:
5 M# B3 b+ x. U* e; ?2 r
{
) ?& i$ S1 U6 `" Z6 s: c
bStart = TRUE;
6 I" Z# o: u& _
break;
/ u7 }) x, n1 u/ n4 b0 n
}
6 A5 b& j$ C! w; h1 y5 B6 f7 j
case WIDC_BUTTON4:
2 p7 \* V+ q q0 }
{
7 |, ] D# r6 F) }2 Z
bStart = FALSE;
( w1 u% k. L- \4 q. e' ` d# }- n
break;
& Z2 m R% A; n* u
}
$ Z7 C* X7 w8 ~4 j6 ~
}
: s3 W7 J) I6 G/ A8 @. E0 D
return CWndNeuz::OnChildNotify( message, nID, pLResult );
/ p6 C: |: M6 J6 s8 h+ Y1 N$ k
}
5 t `( W( O9 E. ]7 Y. C: F2 y
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
$ f* y7 D! e7 l9 H
{
( l8 a% U: K! S. ^7 ?4 T1 h
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
( [+ l% [ z: H: G$ k
if( bStart || !m_pItemElem )
% Z9 \ e8 j1 ]: j& S3 S
{
6 o* _8 U/ Q0 n* g$ ?: T4 _3 f
pBtn->EnableWindow( FALSE );
2 p% {! h" g, b1 g: u
}else
3 j$ I4 A; ?& F" W+ {
pBtn->EnableWindow( TRUE );
* L# e3 N% l$ b3 t, X, B/ e+ z+ f
if( m_pTexture )
$ A: \5 i6 c+ t+ t2 x( {5 w/ Y2 F% n
{
# b0 c, W, { I" h: C/ P
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. d8 v9 x1 h! x3 A8 q4 P( ?5 J2 {! m
if( wndCtrl && wndCtrl->rect )
0 d3 n' i ?- P3 i0 H
{
, `- m V: d7 j; m C
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
. [5 g- w% O) J- p/ Q4 }% v- o
}
0 q" n- u! \; @. D" |
}
$ U7 g, d |. ?' I. _1 j
}
# B. u+ h: H6 [. ?: A
0 e+ _! K, f% F* Z3 e+ `1 @
BOOL CWndAutoFood:
rocess()
, x' b) C. \9 t6 O
{
0 f% P7 k/ y1 ?3 S0 H# F) ]5 M
if( bStart )
' \$ a% R% F/ A- g# G
{
3 n9 z$ b" h; M. }6 C
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
$ s1 V/ ]( z) l5 L( U2 n" ~1 F" X$ d
{
7 y) d8 o9 E" L8 R% Z! h
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
7 j( n6 @% @4 r/ \0 j- r7 @
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
; Q) V' ]+ j( U9 I
}else{
3 b7 C% A- r# u& t# q0 G
bStart = FALSE;
9 S( _* h6 E! [- M( @3 H
m_pItemElem = NULL;
" S, y; b" C$ T: [
}
. m$ V, h! n. W4 E! n1 h
}
8 }5 Z2 d1 Q3 C3 n! g3 h2 U
return TRUE;
8 B+ M$ c* t, `4 z
}
( T- p3 O% X4 a/ Y7 j2 X
- q* }$ m) u, }' l# w. y$ `2 s
登录视频废话:
) y/ V1 A# M; \
尾翼:
7 J& l7 v: n; [9 }% E1 ?
w) r( X& m3 N. s1 g" w
代码:
" z# j$ G! _# \/ M: P p
" p' b' b0 C# d6 [$ F' o
void CWorld::SetLight( BOOL bLight )
l0 x+ w; w6 p* P
durch
" C X% F7 G; t. S& i6 J
Code:
: j* G4 a+ g2 P" K/ V: S4 t7 l) l; p
void CWorld::SetLight( BOOL bLight )
8 N0 [2 i r) H& J- H
{
5 m& M0 ^7 I% w9 A4 T" n/ O' d1 _% r7 z
//ACE("SetLight %d \n", bLight);
# }8 |: V' I& f9 v3 A# R
k, y) f8 t) I, M3 l2 s' T' c) |
#ifndef __WORLDSERVER
+ g% J. f0 j# }* Z* ?
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
& B7 {; }3 ]1 L. ?" N+ J0 m
CLight* pLight = NULL;
# t4 D- a. p4 y. s
; j! f6 l8 U3 E
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
) ]$ A6 g( A1 Z- g) d
$ a' B T: U1 u- `- \: X
pLight = GetLight( "direction" );
1 M" \. A, A+ P$ I
5 Y% m5 z; b# K! F4 }' P! ?/ d
#if __VER >= 15 // __BS_CHANGING_ENVIR
( ^) N6 t1 u8 L) Q0 ?8 V
if( g_pPlayer ){
6 t% _, P8 V- M* _6 h1 N8 G0 U
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
h9 }1 M$ F' W7 d& v4 _ Z2 {
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
: M2 j) r2 p+ y% w7 W2 _
{
" ^2 J. h, w: ?' b/ I9 L
if( pLight )
4 O8 @" u4 F, U+ H. W
{
! j" {2 C- e7 W! M% A. K
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
% @% n3 D" F! G: t8 Y( @9 K
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
) Q) b) Q9 [5 `% w% n7 N
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
% n1 Y* {9 W% @3 l8 {7 g; d
1 r* z9 [! S$ ?; ]
pLight->Specular.r = 2.0f;
* A# i$ W3 W; S7 f5 @8 d2 E
pLight->Specular.g = 2.0f;
: U% b( l6 d' `; O1 V) U/ {
pLight->Specular.b = 2.0f;
: |2 n- [- e7 w
* ]3 `1 a. d/ h! I8 m
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
) \* C9 `2 T6 L' X3 V
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
6 S5 D# e, i7 f! [8 ^$ k& z
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
% f/ {8 J; o" [( F
4 x+ P* ~6 E* x- Q6 z- u
HookUpdateLight( pLight );
0 Q9 E0 V# R0 {' q" E( ]) a' n
: [4 W) l, \# U* H; \2 P3 L
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. }* i0 ]* ^7 ?' k
- D: i+ i: ~' T' R; @# A: F
pLight->Diffuse.r *= 1.2f;
9 x, b7 f8 \0 ]1 a2 q2 D) @' M
pLight->Diffuse.g *= 1.2f;
+ y) A: S) g8 ?5 y0 m
pLight->Diffuse.b *= 1.2f;
9 L; R- E5 f& E# ]' W6 Y
0 u: M4 v, _: v$ P" ~4 y5 Y8 S
pLight->Ambient.r *= 0.8f;
% T) \, q6 G5 p
pLight->Ambient.g *= 0.8f;
, X/ ]6 s% r( b8 E# i- }2 l
pLight->Ambient.b *= 0.8f;
# z' ?# y5 c( W0 q$ _
/ z5 Y0 r: L8 z! a3 B
memcpy( &m_light, pLight, sizeof( m_light ) );
0 @1 I. {3 d* D2 J: B
' M& [) ?; h. |& ]2 K# Q* p
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
- k" m% N5 L8 H) {8 q, u \ l) L
D3DXVec3Normalize(&(vecSun),&(vecSun));
1 \! o- q! f( v/ {: e. ^7 c. {
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 j Q8 ^ o4 ?) r1 ^9 r) p; g6 R
pLight->Appear( m_pd3dDevice, TRUE );
4 m8 h; V: z9 a. E7 n9 g9 s
# T, g! I- B3 b0 W
DWORD dwR, dwG, dwB;
; H/ O, r4 b: S% ?, b" u/ Y, r/ P
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 e6 j4 y+ a9 j: M' J3 n
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ _" x/ }7 B& Z+ K5 T$ |0 `+ u( z
dwB = (DWORD)( pLight->Ambient.b * 255 );
& @6 V' Y$ C0 x6 T& w! G
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' c4 }6 f6 @0 e3 k8 c# M5 b
}
# z/ ?9 Y7 Z7 [/ k3 Y @
}
1 I* o( j$ N e1 {
}
; T9 ^! d, ^2 p
else
2 I: I5 b" B$ n. m
#endif
6 D% c+ _$ Z* C) V
' D# g: r- p, @6 i
if( m_bIsIndoor )
/ d7 ^( m" O4 i- |
{
8 {5 `: k; S7 z
if( pLight )
9 M( }* O! e6 x1 x8 y4 ]# M
{
+ G' S5 O% o8 b7 ]9 Z) y5 x
// à??μ oˉè*
( s! E% R* X4 L, g# O& [
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
9 @* P0 s/ C5 R9 M
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
0 h- w& R# ]( F$ m
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
) P: a' \7 P1 i% o7 k
5 S" P# n6 [1 ]4 {! N
// oˉè* ??à?
) b' s0 R3 i$ ]0 M/ S" V
pLight->Specular.r = 1.0f;
! `+ |4 I, k; `0 l* M5 G7 H. L7 h
pLight->Specular.g = 1.0f;
+ n9 F/ z& g1 U3 p3 ]5 x
pLight->Specular.b = 1.0f;
5 m5 u2 r8 m U0 Z2 _+ ]1 n
// àü?? oˉè*
2 E, n) G# L# `7 q) m% m2 N
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
4 r: B' v5 g/ m0 k# k, o
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
4 E% i3 A) |" o( r! D7 \) a' I
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
$ u' V- p' b' {/ G
# O7 |9 _1 i3 O+ L j& E6 A5 R
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# P P* L- @, U* B* t2 Y# H
{
# b$ \8 R2 u7 p3 f! \0 E
pLight->Diffuse.r *= 0.6f;
- h$ Z, C5 L' U o
pLight->Diffuse.g *= 0.6f;
0 P9 N# O' Z+ K6 Q( m
pLight->Diffuse.b *= 0.6f;
1 {, k" w8 F" [
pLight->Ambient.r *= 0.7f;
5 Z3 U! u$ ?4 [/ h
pLight->Ambient.g *= 0.7f;
! I4 b; M# C! ]& Z5 m
pLight->Ambient.b *= 0.7f;
7 p" ~3 G. ]2 a' E2 G' k; c
}
6 s( y N4 `/ V+ O7 z$ v
7 O4 m; N2 k2 L+ ?- S k5 H+ x
#if __VER >= 15 // __BS_CHANGING_ENVIR
" m% | h9 {. i! q! I& l. T
if( g_pPlayer )
+ |) p) b. ~" s5 p- U
HookUpdateLight( pLight );
/ H; P0 ~& t) l2 G2 \( L
#endif
6 S( H* [" C6 t
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 P2 p& T. C& J+ m- A2 i7 l/ y
( ]5 V4 e! o7 y/ u2 ^1 I
pLight->Diffuse.r += 0.1f;
6 N3 e9 t1 b4 ?! f- @" K# i2 ^2 \
pLight->Diffuse.g += 0.1f;
( h9 W7 A: T0 B9 C7 l7 y0 Z! p
pLight->Diffuse.b += 0.1f;
7 N( I1 ~2 x5 o
// oˉè* ??à?
9 l0 Y. G) h* w: j8 F7 u
pLight->Specular.r = 2.0f;
' D+ H/ W# ^9 c% s
pLight->Specular.g = 2.0f;
' |% F# ]* c- y9 ~, M" G$ ~
pLight->Specular.b = 2.0f;
9 }6 ]1 C* [/ L) B! D5 w
// á?oˉ
8 E2 Y; A0 e T
pLight->Ambient.r *= 0.9f;
& o. H( T/ s$ Z+ r- Z
pLight->Ambient.g *= 0.9f;
; z, z7 {, v' m6 N w; s j; H- g
pLight->Ambient.b *= 0.9f;
: Q6 L' H. z7 ]
( e# R. ]3 s* m+ v
memcpy( &m_light, pLight, sizeof( m_light ) );
7 r" a4 W# R3 g7 C0 G
/ a; s) V/ n" d+ V4 ~5 G2 i
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
( y4 _7 F9 B) D1 j d
pLight->Appear( m_pd3dDevice, TRUE );
' z: M7 ~2 e( L+ m0 l2 {
& G! f7 y/ w3 [0 s' {
DWORD dwR, dwG, dwB;
3 F I; |0 l& K+ s7 q
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ w/ g' U7 h7 j0 ^2 E; }9 B/ {1 Z
dwG = (DWORD)( pLight->Ambient.g * 255 );
9 C4 E/ E# c; ~# _' ~- C$ @
dwB = (DWORD)( pLight->Ambient.b * 255 );
! n# k0 e1 f8 s6 R
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* Y; t8 I" A- K3 I1 ~+ {
}
' z2 A1 |4 {5 j5 k: P: h- Y% w1 Q
}
$ `* B, D9 J6 d1 O8 S5 i8 z
else
5 g. G. Q( ^2 a! V' S% O# Z
{
8 B& X: ]6 N; q
if( pLight )
5 c* P o* S8 P9 O) O+ B# e5 \' g
{
+ j, k0 K! O( K, ~! ~: R: S7 Z
( L* Y3 t( y E {" J! S
int nHour = 8, nMin = 0;
# |0 j: l1 o- h1 ^' C
#ifdef __CLIENT
# @$ E8 s- Z) ?# X
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
& R3 Q- g6 x9 h( k* a
nHour = g_GameTimer.m_nHour;
4 J5 O; e" ]% C; ~* ~2 t E0 {: Z
nMin = g_GameTimer.m_nMin ;
& M4 ?4 \# m6 {! I& N
#else
. ^( ?( @. F4 Z7 l, Q0 \1 I
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
4 Q4 G" M8 ~" u5 w- ]
if( m_nLightType == 1 )
0 u2 A# A# a' J2 D
nHour = m_nLightHour;
, q2 k; X" e9 ]' |
#endif
$ g7 c; M4 |. C; v: M" T
nHour--;
, }2 D5 D1 ^& v6 I; z9 K9 R" u! Q
if( nHour < 0 ) nHour = 0;
; H* @8 z9 y3 I" a
if( nHour > 23 ) nHour = 23;
+ B; ?0 D' O2 A: w3 R
2 d# s9 [/ G7 k
//if( m_bFixedHour )
% f3 m/ ~+ L* w1 m7 J
// nHour = m_nFixedHour, nMin = 0;
- o0 s9 c4 I H$ P3 ?
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
- T8 E- n0 S* H7 w, Q2 w4 A) K
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
! i" b# Y: v6 [( o
( J( U2 W3 \. h
//m_lightColor = lightColorPrv;
% x8 \ a" Q V$ m
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
, P! H& s% r0 x6 j+ L* M5 }# N) j
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
v% e+ O6 u/ N. { l( O
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
7 m9 }( R4 p3 v. x' |' e+ G
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
2 z7 I" _$ b5 }! ]+ h; _: Z/ l
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
- T* ^, j. c, \* t+ B }
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
# @& p$ J0 K9 O; p6 z& ]4 }* i
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
" R! z- }; X) E& u( B' N
% s' g [% D* u: ]3 e, r0 y. U% h
// à??μ oˉè*
7 y/ t: J+ t5 c) M9 Q( w" ~ m* G
pLight->Diffuse.r = lightColorPrv.r1;
& T( Y' Q! J: G0 E& e
pLight->Diffuse.g = lightColorPrv.g1;
$ ]' \" y- T p. }+ @3 j C
pLight->Diffuse.b = lightColorPrv.b1;
' F: _3 |; M+ u6 ]
// oˉè* ??à?
+ t3 [0 r7 A# n }% A
pLight->Specular.r = 1.0f;
4 T- E7 \( a2 N$ p& r5 Y
pLight->Specular.g = 1.0f;
0 J6 u& Y3 p- }: A
pLight->Specular.b = 1.0f;
5 G4 m$ H8 I* O( s; y" t
// àü?? oˉè*
2 t1 B$ j. P$ R* x b3 a
pLight->Ambient.r = lightColorPrv.r2;
v4 G! A, G' u0 Z1 ?& n
pLight->Ambient.g = lightColorPrv.g2;
, A0 u, n% U6 w
pLight->Ambient.b = lightColorPrv.b2;
/ Z, p8 }# O* @0 _3 Z
+ i, b6 |# D0 ^1 d9 N, k1 Y
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
1 b1 g" ^3 P$ ]/ ?7 t( c+ Z
{
O& L8 \4 Y7 h
pLight->Diffuse.r *= 0.6f;
* o. G% l, @( v
pLight->Diffuse.g *= 0.6f;
1 n+ {$ W+ T( K5 x
pLight->Diffuse.b *= 0.6f;
x9 I4 p l L: c; F
pLight->Ambient.r *= 0.7f;
& [' W3 T, J# E' _5 m7 `7 _9 m( w
pLight->Ambient.g *= 0.7f;
! j0 I; L- y- e# q, }$ z9 h% c4 M' c' S) S
pLight->Ambient.b *= 0.7f;
. S, ~" }9 W6 F' o. \
}
% v( e9 \) l# g/ t
' T, z) f4 [# C0 U3 k( G
#if __VER >= 15 // __BS_CHANGING_ENVIR
% ?6 l/ z. `. [- g0 W
if( g_pPlayer )
$ h/ H5 D! ^, q2 T; `
HookUpdateLight( pLight );
: H" P& ~7 q2 ^
#endif
4 z+ X# z1 R6 P) O3 @$ s6 i) G
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' q0 ^# v" ^7 c( N+ G; e7 c
0 d& p! w9 i8 a% {% O
#ifdef __YENV
, u# `0 [4 J) J" M+ a! M
pLight->Diffuse.r *= 1.1f;
6 a. d. t2 ~2 l! }7 q, F) U/ T
pLight->Diffuse.g *= 1.1f;
9 }. s& U4 x0 N
pLight->Diffuse.b *= 1.1f;
3 j3 x5 J/ U5 @8 ~ b) J; G
// oˉè* ??à?
/ h1 }' D# @$ l% ?
pLight->Specular.r = 2.0f;
4 o; H* C- |& `, n. n
pLight->Specular.g = 2.0f;
) ?; ~6 N% f9 T8 S
pLight->Specular.b = 2.0f;
6 \1 F9 O2 w: D0 d! D) u
// á?oˉ
1 l9 H: q9 g& o: C% P
pLight->Ambient.r *= 1.0f;
* S% M! Y3 k! H
pLight->Ambient.g *= 1.0f;
: e1 o5 k+ Y: [% V
pLight->Ambient.b *= 1.0f;
! G$ [* ?9 D* v2 X/ ^8 M
#else //__YENV
6 M R8 R. Q. T% C& m S& P
pLight->Diffuse.r *= 1.1f;
% q+ z$ O) |+ O( t8 {/ g9 p; U
pLight->Diffuse.g *= 1.1f;
, m7 _) e* G& f- t ?. `/ x; T* i
pLight->Diffuse.b *= 1.1f;
1 X" Z1 Y6 U ~
// oˉè* ??à?
3 y+ B$ m( Z, D- a
pLight->Specular.r = 2.0f;
5 {9 i+ A% r0 e3 {* G+ {
pLight->Specular.g = 2.0f;
$ }8 Q6 Y, ]! u2 ]6 j! u- ^
pLight->Specular.b = 2.0f;
: e* p& H# x* k/ ]4 f$ b
// á?oˉ
9 A/ J. {! x( T( j+ O
pLight->Ambient.r *= 0.9f;
6 U1 ]: k/ \+ I4 m, h0 z" j
pLight->Ambient.g *= 0.9f;
: g. m7 s3 a9 B( j( @ n8 q B
pLight->Ambient.b *= 0.9f;
) F, n0 I# o$ P& t8 y- H
#endif //__YENV
/ o u+ Y. v9 g& e9 q
3 e* d1 U' V) T- U! _" j6 h# W
memcpy( &m_light, pLight, sizeof( m_light ) );
* ?& `3 x3 r6 _/ W* K
7 `& [) t: r! p+ k3 w
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
) ~1 N" U" q$ ~
D3DXMATRIX matTemp;
2 H8 `! O! D; O5 P ^' A9 C
static const float CONS_VAL = 3.1415926f / 180.f;
5 Z3 h5 G" O" p. F& _% \" O
, k; J7 b# u. i
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
. J9 {% v$ }$ _$ r3 x9 B
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
' p/ d' p0 p: T0 I
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
4 E3 y& i; t- @" a, n7 E( s3 y
pLight->Appear( m_pd3dDevice, TRUE );
3 c$ \' A8 K7 v0 R
9 K! }. q O( V( C
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' n# G3 n, ?8 i& s9 d+ q9 G8 P: }5 H5 h
// D3DXVec3Normalize(&(vecSun),&(vecSun));
5 {# U5 N. A0 V) d8 Y
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, Y% \/ K {$ W
: u" }6 c6 Y1 k3 f. [! d h2 p& C% w
DWORD dwR, dwG, dwB;
$ X- ~3 v: a8 [9 y1 J: a
dwR = (DWORD)( pLight->Ambient.r * 255 );
- K: `# o; Y7 A5 C& I1 l
dwG = (DWORD)( pLight->Ambient.g * 255 );
: j; X8 Y8 S" E9 K7 _1 d
dwB = (DWORD)( pLight->Ambient.b * 255 );
) M# J7 {" K6 \/ W: O: Y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* M8 z- V g/ i. o0 f8 t( r1 |. Y
}
3 b/ |/ M* }% V; o; b; |, g
}
# ?' l" q4 B& a! u
" G- a& h+ e9 M
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
; o& b7 [) `1 Z5 F
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) );
0 I1 t5 d4 V4 K6 N6 M8 S' h+ b2 }
::SetLight( bLight );
0 W; h) E y/ I; g# n+ W) L
) z z; @* A0 X/ v2 R5 j) u
// ±ao? ?D?í???ó á¤à?
' {$ R- [; f5 V8 f, M4 B, W
m_pd3dDevice->SetMaterial( &m_baseMaterial );
0 X7 J5 Q7 z4 F7 O
3 x8 D: t' H. o: d
#endif // not WORLDSERVER
2 [* w& f/ T( g+ @! y) m
}
! U" K" w/ [: ^9 A9 y+ p
并更换
) P$ v: u* a4 q+ D$ l$ p! A$ g' ], N
Code:
! |) s2 O% y" G" T0 S; C3 i
__FLYFF_INITPAGE_EXT
5 j: Q+ y2 l- w: s* C
定义
! Z3 P+ }2 o. o# s1 I3 z7 ~
9 y1 Z- {, U+ l( B* t1 ]& B
3 t2 u6 U8 c7 m# q
# s3 Q$ k. o& r6 M- M. J& h
2 y3 x& a) m( W3 n# M1 u" s( K
现在终于删除我的狗屁加速...
6 O$ M/ t$ S/ h% E& x3 M) o. E
+ }& ]1 Z) n9 X. Y0 Y
9 R6 ^5 k4 Y) q/ F" I
. R- p: J4 l. N8 N0 G) g2 S
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2