飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
2 w! U4 d2 {3 u# U$ F5 S
尾翼:
1 L: F* b6 p3 k9 {
5 z' c3 L$ O5 E: M0 Q7 m3 {% u
代码:
0 u8 S9 |' a" q( t% z* O
CWndAutoFood::CWndAutoFood()
0 o" ~3 u5 j* P% E) V9 M$ |
{
* N/ {7 }! Q# U6 m( i" f
m_pItemElem = NULL;
& D) e7 p% g* R
m_pTexture = NULL;
Z N. l- g0 i* r+ \. q8 [) u
bStart = FALSE;
7 ?" O. e, u* ^) Z3 j
}
1 g" A: G1 t0 S5 k6 `' G
9 p% Q* q; _; U v* c+ F
CWndAutoFood::~CWndAutoFood()
3 |0 C5 [6 a! b7 X& w
{
, ]+ z3 `% O+ b2 _
AfxMessageBox( "AutoFood ist gestorben
" );
# e: }; l0 C- }& J& q& @
}
% `6 M2 d. D5 a" p! G3 W# S/ ?5 }
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
w3 {* k' v( Q$ q
{
# e$ g1 B& |8 h( o
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
# z% u( N4 }! _3 t0 v, ` ]' T
}
8 i" N3 W8 `. E$ v
9 M9 @8 _% ], n: p- H' x) ^/ n
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
! Z4 L3 K* z& g2 X* ^) G) c. I
{
! \7 W. b A& p2 `: d
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# d1 k4 J8 B- O: p
CRect rect = pWndCtrl->rect;
" K9 z9 ]; b; |
if( rect && rect.PtInRect( point ) )
1 j1 q& g% K& [
{
9 n& }6 r9 K A8 G0 u, @5 ~
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
+ g8 n" n/ k1 P5 {
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
0 L4 l1 B( O7 f' h6 D
{
j2 x! y+ |+ G
if( m_pItemElem )
& o w% L( j# `9 b. k8 N5 y2 {
{
8 t, P! R' A- M H( w: u
m_pItemElem = NULL;
- I# k7 ]7 K' x; J: t
}
6 Q+ S- f* d) n0 L- ~, N
m_pItemElem = pItemElem;
4 s8 D: b6 x! G" X$ i
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
% C! @! o& w3 E" }; V9 p) A, d) z
}else{
, [2 q- s) Y2 l5 I9 ~ W0 {6 Y
SetForbid( TRUE );
3 e: |4 T) P* j6 b* E: r( E
}
0 a2 p3 ~1 N) g8 K2 {$ \3 v
}else{
& C( z, v) R; Z8 @; K$ q
SetForbid( TRUE );
9 a$ {# `3 O8 R0 j
}
' x0 M: C/ x9 R! L0 ~
return TRUE;
/ q, G) U* z) i! a0 n3 x
}
: P) S, f$ ~$ p4 g8 z( L
0 N3 K3 t3 f. Y% H8 f* B0 ^9 G! j
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
/ l: C, P3 L( d
{
! `$ L2 q* A0 D9 c) z& A1 K
switch( nID )
, v9 S( d$ T8 ~ w$ S( q, Y+ E0 i, Q
{
$ t( R7 R7 M% ^
case WIDC_BUTTON3:
. |% N/ K8 j2 Z3 _
{
/ [ C" e3 z4 l
bStart = TRUE;
& d3 T# U0 o' N
break;
; a0 F: \/ ^# X8 j
}
& k& N9 Y" U4 y. [' c. d7 ~0 d
case WIDC_BUTTON4:
9 V6 T3 ]: P7 g* O! q* b
{
4 g y4 C$ @* E. k, O& C- t
bStart = FALSE;
{# ~: h; J2 V. ]8 m, ~
break;
* C1 {1 E6 O+ n4 A7 m
}
! ~" _0 Z* S8 t; Q8 u; x) P
}
7 Y3 j9 E- ]$ A# O$ P0 ]- M+ V
return CWndNeuz::OnChildNotify( message, nID, pLResult );
9 {% ^( L2 d; |& D( N
}
+ z$ Q' ?# H6 A' z' s9 J
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
5 Y! T7 i8 ?) d# x3 J
{
: ?) d9 t: l! a; Y3 _- M, i6 _
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
" Z! s4 P% P& b$ J6 ?4 @$ W& M
if( bStart || !m_pItemElem )
4 d6 ?# J1 e9 ]+ u7 ]- s# _
{
" R+ n7 \ N# U" V; h. O
pBtn->EnableWindow( FALSE );
0 V! w$ a7 g& }% y; R& V
}else
$ q& e8 K! @+ N$ u4 @7 Y& S) r+ k5 i0 H
pBtn->EnableWindow( TRUE );
$ z& R1 ]8 O2 }* _1 H
if( m_pTexture )
6 \" F) d: p. I: }: x" ^2 Y2 a! q
{
' \) Y- ]/ t& p( }( @
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
1 L) d! c3 G8 v: S! x: f
if( wndCtrl && wndCtrl->rect )
" B! l( o0 U9 F9 G
{
7 w4 K5 i: p2 w9 X: e
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
" |, A% g9 i. `
}
, Z# A( K0 d( U) z
}
+ j2 Q4 c. ~# I9 _
}
+ `( d- l& }9 t4 V. v
) L; o% }$ o% B& s/ k- H' x0 H
BOOL CWndAutoFood:
rocess()
7 T3 g3 {% j% j0 n% B2 ~
{
3 E" L" t6 `* m' ?
if( bStart )
0 X8 u5 I; o9 k$ |1 q# _
{
; v. f+ i z8 U9 V% |
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
& M- |. {) z# ]: e6 b
{
0 [# w/ K4 C# n* F/ J3 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() )
0 F$ k, G5 O$ @& N) J4 ?6 |
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
" N0 C7 c; U0 T/ k7 v- I
}else{
" S; V `0 ]! x- K( B
bStart = FALSE;
- |0 k5 s1 O% D+ o
m_pItemElem = NULL;
4 Q. w' o1 U" K2 T& P
}
: y/ `2 Z4 s" Y: j7 c
}
9 v0 M* e; t& J" `0 V! ^! e, q( t* g
return TRUE;
4 Y7 B" g% B& C
}
* A7 @6 J+ ^8 }8 e$ n
6 { I! N6 \0 ~ w" e+ D+ H
登录视频废话:
+ I( U1 f+ W1 x# `- r/ }6 N1 y }
尾翼:
! t5 x1 e- C& B9 x3 v* X2 V
: i) J$ e7 R! X4 ]' }2 m
代码:
- X6 c% z: ?! A9 J* D, A" I
+ _6 ]+ F$ d7 y* g+ _0 p! D
void CWorld::SetLight( BOOL bLight )
& A/ r, ^+ F$ W6 `: s
durch
1 E# L+ G# K8 S% L
Code:
5 p4 ?1 U5 Q0 j9 z/ R# R
void CWorld::SetLight( BOOL bLight )
$ T! } C+ X' B$ q; B2 l. O
{
( s! Z! Q4 {+ V8 E) [2 s0 S
//ACE("SetLight %d \n", bLight);
0 x: V. Q- E0 ?1 }: z( h* z7 o
( ?% a1 {2 e' |1 m4 E: i4 x0 I
#ifndef __WORLDSERVER
# C* t# x# U* t& t# T8 {% E
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
1 D7 C' m2 T0 ^
CLight* pLight = NULL;
" ?4 d0 I- Q( _' f# [ |4 H* t0 b
$ d5 \+ g; L6 V' @# C) M
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
6 B5 e9 E6 m0 G7 Q
# u, x2 d$ |. I3 J# D
pLight = GetLight( "direction" );
8 ]9 _& `3 E: k
: G9 `; e J& }0 F
#if __VER >= 15 // __BS_CHANGING_ENVIR
% f6 f" U4 d3 K$ Q% h3 J: X
if( g_pPlayer ){
# `9 u+ I: ^8 @* U
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
* W2 X1 e6 \# p9 ~% @0 R
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
3 F$ y. ~/ n9 f
{
1 r$ O: D" x( T2 V, F6 w
if( pLight )
, f" |! v2 Y! H7 X) N% S" x3 G
{
: t( d' V# I s3 i3 e
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
1 U m4 Y0 `" W/ o8 j
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
2 j6 |8 [% o& H& G
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
0 X2 l9 h6 I4 X& u1 l
2 b3 n0 T. [5 P1 i) j
pLight->Specular.r = 2.0f;
2 V: A* ^. X# u0 y
pLight->Specular.g = 2.0f;
% G C+ B- C! W) l; V* q
pLight->Specular.b = 2.0f;
% R5 ] S$ H4 o7 g4 E P) `
1 G: Z% Z# A9 ]# v! }6 A
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
( W" j( ^5 [) n, ]. k; ^; T
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
0 t: A" q, c3 R! L
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
* M. U+ Q E8 b1 [. J: y" s
3 ?( |0 x. F: N9 w3 I& J
HookUpdateLight( pLight );
. Z6 F! b1 c& [. h2 C1 B, o$ t
$ \2 V2 }- {. K7 [' v& s" K, ~
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# e. K, p, R4 Q( r" `6 b
( C/ W1 D( ]- o7 v, S
pLight->Diffuse.r *= 1.2f;
+ h1 s% `+ H5 `& S1 @" y
pLight->Diffuse.g *= 1.2f;
! V" Y4 {) s) f7 [$ `( C$ P! F
pLight->Diffuse.b *= 1.2f;
4 J: E/ J' \. L
, [4 G) R) S6 I! `
pLight->Ambient.r *= 0.8f;
6 E( O& a9 U- v: m' e
pLight->Ambient.g *= 0.8f;
& u3 o( b) P3 ?. y
pLight->Ambient.b *= 0.8f;
6 M8 U4 b$ x. h' T1 X0 l/ q8 R8 t
2 Y% n" ?6 v, b9 K ?- D: F: l
memcpy( &m_light, pLight, sizeof( m_light ) );
5 K9 Y3 `% K' F) C# }: t( Z. N
) D9 J) q7 d6 s9 E( S2 e [
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 Q/ ^! v, {$ c7 L
D3DXVec3Normalize(&(vecSun),&(vecSun));
3 I! o" ^+ P' E* M
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 f( E) h& p8 q1 _4 `) Q$ {/ L
pLight->Appear( m_pd3dDevice, TRUE );
4 j5 B) b9 [" `& G6 K8 E9 y: N
* e: Y, C. W5 _+ N. A- W! g
DWORD dwR, dwG, dwB;
$ Y8 u- x* W/ a8 V9 V
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 G+ h: b5 x5 Q3 _$ m
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 U2 Z9 H1 g& D8 ^
dwB = (DWORD)( pLight->Ambient.b * 255 );
) a5 i1 E( V d; O# W3 w l
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 }7 a& Y8 r% L, R% K
}
& K9 Z# W: c, T1 l. Y
}
) Y5 h. j) r4 t# Q
}
0 e$ z: O- X: Q* H3 i4 n/ I
else
& k6 {! f/ x" m2 ~
#endif
. m9 s2 I) \3 c* b
" [( s. _0 Y* Z6 q) S$ d
if( m_bIsIndoor )
' l \6 m. `; ?* @+ _7 O V
{
5 d. ~/ [6 v: R
if( pLight )
' [+ ^/ V# @$ Y/ G. Y0 t
{
& b2 k' H$ Z7 e. [3 O0 \ \& W
// à??μ oˉè*
" y" O1 \2 l+ C( o$ h7 w% w) k
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
+ X8 ]* y* B" f: i; @
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
8 V& L/ k M2 V- ~8 g
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
* G; c* [5 Q( g3 y
0 I- g2 t6 C& O% I6 i
// oˉè* ??à?
4 D- z+ n4 w# _
pLight->Specular.r = 1.0f;
* V0 b' P7 x( F+ f; R" Y8 \
pLight->Specular.g = 1.0f;
# S: R+ _. P0 C: |
pLight->Specular.b = 1.0f;
8 a% y& C) ?: l9 y% Q0 d
// àü?? oˉè*
/ r# e4 K' }* c$ I' q; N
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
+ ^, j1 |3 e5 ]1 Z* ~
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
% w/ ? h6 [3 ~- C: d# I
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
$ ^3 c% s! k) h) b/ P/ Y9 M
_9 |/ u3 Y: y7 S0 M, a% A
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 t" I9 a0 n) R' G, O, t: i
{
: q# T( N( A o& ~( K2 k
pLight->Diffuse.r *= 0.6f;
' z& X. }/ ?: `6 t f }/ O
pLight->Diffuse.g *= 0.6f;
2 C m! p% j* A$ f
pLight->Diffuse.b *= 0.6f;
8 s" n0 `) x0 P: T9 a
pLight->Ambient.r *= 0.7f;
8 M1 E: {6 M# T5 @9 r7 q
pLight->Ambient.g *= 0.7f;
6 P, D7 G' |. T. ?9 X0 ^
pLight->Ambient.b *= 0.7f;
( ^9 [: D, b5 x3 w4 G
}
# _- z L# p: u0 N1 ~( b& m
( N `6 n* a( r6 J. o {
#if __VER >= 15 // __BS_CHANGING_ENVIR
8 s8 ~+ b- ]5 F" r D0 D
if( g_pPlayer )
4 m) K2 c8 r, I. Q: E' c; l: r
HookUpdateLight( pLight );
! `/ x/ x" x, K" c* u, v- ]
#endif
& g/ P0 v; @( I9 z! C3 S
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ p/ G0 p) J1 M* X K. U6 K6 `& H. ]
0 a4 ]$ F( o5 h- p! l3 ]
pLight->Diffuse.r += 0.1f;
6 k, g0 ? N! E% T) B5 K
pLight->Diffuse.g += 0.1f;
! O0 h0 k1 z1 H9 P0 o# {
pLight->Diffuse.b += 0.1f;
# |: h, e' C+ \/ u/ |4 R8 h
// oˉè* ??à?
6 U* q V! J+ c1 [4 l, j
pLight->Specular.r = 2.0f;
, d( b/ t$ _" o+ m5 d* A
pLight->Specular.g = 2.0f;
9 w1 D' M" Z, T c; l$ k) Z" d
pLight->Specular.b = 2.0f;
- p. E5 X: H! o( Q8 }# s
// á?oˉ
3 R/ R4 N5 q( n
pLight->Ambient.r *= 0.9f;
/ u: V: ~6 t( B% Z4 _- S+ ]
pLight->Ambient.g *= 0.9f;
3 i/ {1 N8 q) @$ I: P- g. B
pLight->Ambient.b *= 0.9f;
" y: H4 ] p+ P& B
2 _# ]8 S7 S9 C1 z1 U. L8 X9 n
memcpy( &m_light, pLight, sizeof( m_light ) );
' I: |8 ~1 M7 g4 Q
, u* e i0 `; d5 L
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
7 r7 X, b, ^ s
pLight->Appear( m_pd3dDevice, TRUE );
+ |6 _- J$ T# s7 S8 D) a- k9 `5 a
2 f2 f1 M) v' u M( V
DWORD dwR, dwG, dwB;
* k ]3 y$ H; B
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 v5 b) M0 I0 x
dwG = (DWORD)( pLight->Ambient.g * 255 );
, K' X7 o8 y) d, U! V1 Q; {8 d
dwB = (DWORD)( pLight->Ambient.b * 255 );
( `' f0 H& o: I `
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: j; S2 T4 M) s- ^. ]5 }+ n# n
}
0 {5 ?* m! h- G! J+ L
}
9 \8 ?5 f1 U, y$ ~" f U& F/ m
else
% e' u5 n4 B/ a8 E( O2 I+ u
{
5 L% ], N: W8 G. X
if( pLight )
- |3 }* s/ B6 x; y2 j
{
& s4 S* o7 O$ t' T( g0 x2 z' ?! a
! d" @' q" N* E
int nHour = 8, nMin = 0;
- ~3 w) R! [: Z7 {2 H9 k/ e, Q/ Q0 H
#ifdef __CLIENT
2 L h$ y: P0 h. d- \* l1 X1 H# d
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
. Q ~5 k" n+ \% p Y, e3 \& @
nHour = g_GameTimer.m_nHour;
. T# `2 [1 p2 P+ W7 Z
nMin = g_GameTimer.m_nMin ;
$ ^& r. X* R, w; D; K, l
#else
$ J/ H- F' s' G1 v
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
0 `3 z3 N1 G8 B$ \9 f
if( m_nLightType == 1 )
5 W* f6 x9 j* W, S0 p
nHour = m_nLightHour;
0 e2 C1 a2 u' v" w9 p. V/ L) V) L4 W
#endif
/ V7 _' Z8 t, i4 z3 s$ g* r: \* M3 Y
nHour--;
) w9 ?) X, {& q
if( nHour < 0 ) nHour = 0;
' n2 r, f; p* r$ m
if( nHour > 23 ) nHour = 23;
3 n4 S3 B U/ I4 J4 D% Y
. Z/ x0 P9 k/ K; w( J4 K N
//if( m_bFixedHour )
% ^: u- h7 o% I+ H/ D6 l
// nHour = m_nFixedHour, nMin = 0;
% O% c2 ^: D* n0 y: v
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
& `9 z, T/ e, q0 t0 K
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
0 a8 ^* P; x1 B/ t
0 d5 c" O! o2 J) f& f/ b6 o
//m_lightColor = lightColorPrv;
$ ]6 `, S9 a- Z# m
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
3 H' F: j6 O: y& h. h# a
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
' F* Q1 }2 g! I
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% R F B- P1 F; D9 g
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
$ ^. B2 K" ~3 }: S, q
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
& b4 Q( S$ t0 s% P( ?. G
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
* u3 u- q7 e/ u7 p
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
. t& v4 o4 |* K4 f# r$ K
8 o; ?- i5 G; ?& C
// à??μ oˉè*
, [4 E) q4 d( Q8 T5 m) B$ T
pLight->Diffuse.r = lightColorPrv.r1;
) }/ Y2 y- v- A5 h
pLight->Diffuse.g = lightColorPrv.g1;
) q- v( m0 g2 J5 [& n( l
pLight->Diffuse.b = lightColorPrv.b1;
, n+ @0 H" G7 I6 J
// oˉè* ??à?
) U. ]; m4 R/ n& ~" C( e
pLight->Specular.r = 1.0f;
0 E D! z" f* `: N) [
pLight->Specular.g = 1.0f;
, L0 D1 B' G7 X+ W- @
pLight->Specular.b = 1.0f;
: x* }/ y @& j, G# n" Y
// àü?? oˉè*
) r# J; X! s+ m" G3 n
pLight->Ambient.r = lightColorPrv.r2;
; e; D4 z3 d O9 M
pLight->Ambient.g = lightColorPrv.g2;
% N9 k+ G/ k" O' m7 Q! M( {
pLight->Ambient.b = lightColorPrv.b2;
5 k! m1 A- j; {, Z: F) b- [% R
/ D: m ?7 a+ |, J( N8 _5 }
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# j% n* I' a5 g6 ~0 Y# N8 k
{
" |- S+ z* R5 G/ B
pLight->Diffuse.r *= 0.6f;
. k- d3 M5 Q. _# P$ J& R7 R
pLight->Diffuse.g *= 0.6f;
$ ?5 H$ e" j8 V9 \2 }
pLight->Diffuse.b *= 0.6f;
. Y$ b0 P& q+ x* i
pLight->Ambient.r *= 0.7f;
$ t1 O# w6 J$ n6 Z% x( a
pLight->Ambient.g *= 0.7f;
' w6 b3 \6 S" X( }, U
pLight->Ambient.b *= 0.7f;
4 x4 M* t; d* W6 z$ D4 o
}
! e& r$ D3 S2 _+ V
$ x. n3 N& K" u. o% a7 N; h' X
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 a+ B h- C9 \( b/ p
if( g_pPlayer )
/ m% a$ w K1 U8 ? Q1 ]
HookUpdateLight( pLight );
: d- f! M6 W9 Y: F2 l
#endif
+ n$ l: S8 e8 w! G4 v) n
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) A& `- H' o4 m8 W) s
' k, ]' R* k/ Z# ?6 h1 B: ]
#ifdef __YENV
) o- y7 P$ T* J9 g6 w
pLight->Diffuse.r *= 1.1f;
* T6 |1 O$ l* |% Y
pLight->Diffuse.g *= 1.1f;
! e$ ~4 g# \3 ]8 U# ^) e* h$ p: W; F
pLight->Diffuse.b *= 1.1f;
. `1 V% u3 q- ]* g t0 V
// oˉè* ??à?
3 m- V4 Z5 J! g( m5 O l# ^
pLight->Specular.r = 2.0f;
& f, `" M" S9 L
pLight->Specular.g = 2.0f;
1 s' R# N8 B* \, x1 Q/ ~) q
pLight->Specular.b = 2.0f;
) ^/ v( J+ V4 J; h
// á?oˉ
! k' ]( J7 P% ~9 N* ?
pLight->Ambient.r *= 1.0f;
5 U: \; r; S' f1 M. I: i
pLight->Ambient.g *= 1.0f;
8 K% ~2 u: p2 d( R
pLight->Ambient.b *= 1.0f;
( {: X6 Z& [& `* c2 j* ]
#else //__YENV
4 A; h2 k9 J+ @. I+ |3 g3 l
pLight->Diffuse.r *= 1.1f;
# F6 t7 _, E& H9 y0 J# m0 }, P
pLight->Diffuse.g *= 1.1f;
7 D T6 M6 X6 _, E3 x
pLight->Diffuse.b *= 1.1f;
9 P7 S% A4 i: c* e* L6 f
// oˉè* ??à?
3 b; c1 T& X; S+ J2 l
pLight->Specular.r = 2.0f;
6 F( N3 z$ ]/ Y' K1 a# Y
pLight->Specular.g = 2.0f;
" T% E, w# n. w9 g4 G
pLight->Specular.b = 2.0f;
- D1 m9 V0 W- x
// á?oˉ
& W9 L, ~, [! L3 W* m: ?
pLight->Ambient.r *= 0.9f;
; ]% j" u' _: J
pLight->Ambient.g *= 0.9f;
8 F* b- G( h5 ^4 g* W+ E* ]
pLight->Ambient.b *= 0.9f;
/ Z7 @. f6 S" \
#endif //__YENV
o# O+ {: N, {/ F e8 q. \
) [4 [ y T8 \7 v( i$ F. j- J p
memcpy( &m_light, pLight, sizeof( m_light ) );
2 g7 m/ t, X; b
) H% a1 R7 y3 f
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
- p+ n4 T3 w; h0 W+ v" M
D3DXMATRIX matTemp;
. K% c: g, |7 L& V$ a" V! v
static const float CONS_VAL = 3.1415926f / 180.f;
" t) B5 D: l- b2 B p& j5 R
+ ?# X( H1 C# E# w" W
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
' y: s; i; r3 d( w% K* m
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
2 n9 n, f. M5 T$ G, K( V6 e; d
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
: n' v _. O* Y) K# B* |! \
pLight->Appear( m_pd3dDevice, TRUE );
" M+ t8 U6 c, x
, R( K3 y7 {; N* R- j8 i' Q1 v
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# f% M9 y8 ^; a$ R
// D3DXVec3Normalize(&(vecSun),&(vecSun));
. n8 {* z, K7 U M. t K
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
( k3 ` F# z; r4 [9 U0 E% G. m( ~4 C
5 J4 h& w5 i0 y( l/ ^ m" S- Q
DWORD dwR, dwG, dwB;
! N. L+ m0 Z! k3 j
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 g* `6 h2 U' V& `( \( \" g4 ]; D
dwG = (DWORD)( pLight->Ambient.g * 255 );
' w/ ~' f. ~# u1 S2 T' A
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ t7 q/ V$ @: r, L' t
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% }# m5 [- e. I+ v% a
}
* t6 p( e+ W* Q6 M1 H
}
: y V. M9 D8 N+ Z& M! n8 ^
/ z# ]7 i8 w }/ \: X/ \3 {
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
! o7 F) E1 t- ~ l Q
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) );
X) T! E) O" o7 y- F5 w
::SetLight( bLight );
& J/ g( S0 x9 h- y' f6 o+ U
1 }2 @1 q5 b( Z6 J7 g1 o9 W
// ±ao? ?D?í???ó á¤à?
4 r% U& C7 D) u& K, O6 l
m_pd3dDevice->SetMaterial( &m_baseMaterial );
5 I ?1 B; y& Y; {
0 ^' D. c5 D/ Q P8 e* r
#endif // not WORLDSERVER
+ c' x( s0 i" b8 c% e+ ]
}
" s1 ~; m e, y5 S
并更换
. S" C5 G8 W, p- d( \; a
Code:
3 _1 u: S5 Q$ ^. ~* k% c& `: S1 r, j; R
__FLYFF_INITPAGE_EXT
9 d9 X) x: p) r* d
定义
1 q$ P' }( j! r' E( {2 ]' F: h
, n1 o& g Z2 E7 y
1 U$ l0 o8 Q/ D4 o+ B
h" g% Z! o& N& X
; d% C! v# R; U9 j% n+ L
现在终于删除我的狗屁加速...
. w& ?7 n4 V; S, j& h: {! N
( {6 k4 e% ^( n' a/ u' E' _9 ~& x
$ p0 ^0 C2 X1 g/ |
, `+ F8 {* `, ]: \ ~
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2