飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
, Q* R; F$ L c! s2 C5 d! A4 l
尾翼:
4 P! D7 e. f5 L
9 |0 f: g+ U' b5 _5 N
代码:
( U/ T4 w/ a. K2 @' w, l$ F
CWndAutoFood::CWndAutoFood()
; N2 e5 e7 P* X0 ^) L7 ?3 n( C& A
{
: d2 T* u2 l# ]- P! U
m_pItemElem = NULL;
. y# x( G% v: j% g# m
m_pTexture = NULL;
8 P2 C- l) c" C( }6 I* J
bStart = FALSE;
- x" V }: y Y9 U% P
}
: v& _; \* y( E
' `: A, F! P6 a# @) V7 ]
CWndAutoFood::~CWndAutoFood()
) t/ Y1 }$ u$ o. o# q- s& V0 z) n& M
{
" f: v1 F3 }2 {! N
AfxMessageBox( "AutoFood ist gestorben
" );
1 t0 N0 b9 |% r4 b3 V4 F! F
}
' p# y" e( u; I6 [
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
" G6 D% N% I) U% }$ o+ N4 u
{
+ ?' S) J4 h+ P4 M. ]) P e
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
* m6 L" u1 O, [. x
}
0 } U: M; T* w2 X! ~$ s
T, p& A, U7 i
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
# t; D9 i: V; Y/ H
{
+ }. a' g9 L9 U$ A" e
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ ?) P7 J5 {5 R6 w
CRect rect = pWndCtrl->rect;
/ B( N2 j( H; S9 @
if( rect && rect.PtInRect( point ) )
# f& R& w& \4 [* K9 X3 {
{
9 Y7 E/ f7 H2 W' }
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
7 ?; _- h8 u0 j& l$ X, C
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
) `. \( A. G) c9 {# s$ u( R8 S
{
. h- u* [2 ~, Y: w
if( m_pItemElem )
9 X& I& N4 w2 P. G M
{
1 r$ z& E* w3 Z/ F3 K
m_pItemElem = NULL;
% S: V* u. `( I/ W; _2 f0 w' y' x
}
8 g$ Z+ ^4 T' L/ X5 M0 s& t, q
m_pItemElem = pItemElem;
* F4 T4 | a' i) \+ z4 s/ z% S( y+ {
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
) T! G4 s9 t2 n; \
}else{
2 {' W9 N8 p# k
SetForbid( TRUE );
# i) h" a( @* }0 ^3 c9 X2 ^0 @9 x- H
}
9 s+ S! P5 X2 Y1 w, S) ^ F8 W$ h
}else{
' B4 S% c& \3 h3 Z! ~; A' u0 c( H
SetForbid( TRUE );
$ L% W" V4 [' i" G- q1 P3 i
}
% L! D. ], ?0 m T" e4 w7 i
return TRUE;
' T- w* f9 v2 `7 p0 X: k+ ?; {
}
1 M! o, I( o, @9 B3 O- B% A
& v: X" v T8 Z! v# v5 q+ `: Z* k
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
4 n1 W% ]4 q" D* X& ?" U& `3 g5 x
{
$ H; o" { F' d& H
switch( nID )
' X4 W) Q6 Y3 T, w( z
{
& `4 K; |* n( U' w& P- l. v
case WIDC_BUTTON3:
; t$ D: S- }2 ]( P$ V% d
{
8 G# _: A( `6 B8 ?1 T& ~; J
bStart = TRUE;
% s& e+ F. w: g
break;
4 ]0 v7 W# J D+ b7 G( s
}
: n4 U! O( e# {& V* t% }
case WIDC_BUTTON4:
! F9 J O- W d" Z" h2 {
{
" ]& p, N- v0 W/ l& u! e" D
bStart = FALSE;
) @" l8 [ Z8 Q
break;
% H& t: C6 y8 L ~7 I
}
! W4 m; ^7 d1 H4 t0 G" N9 C! [
}
! W- V0 a8 P- ~5 [
return CWndNeuz::OnChildNotify( message, nID, pLResult );
% l$ m* A4 c- c7 ~7 ^! u" t( j
}
Z( g+ w4 F6 g5 ~
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
8 A" @3 q) D6 D" y# M
{
" v% j, m i$ A s3 x" o# a
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
: b2 G) b. D7 T6 P
if( bStart || !m_pItemElem )
: R: p) m \( u
{
8 p/ i! `6 L( C
pBtn->EnableWindow( FALSE );
; h3 ?& S+ D7 [
}else
' j6 q4 y2 ]2 Z: z( a* ]
pBtn->EnableWindow( TRUE );
, k+ H( s6 D# [
if( m_pTexture )
( H, G: l, U- c$ u1 j: U
{
; E) B$ H, @: M2 E. s
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* ~( j3 `, ^: T. p4 P
if( wndCtrl && wndCtrl->rect )
! N3 Y( G T1 l0 K) v
{
2 D/ \) d2 [ z$ A4 L/ _7 k- I9 o0 c
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
& I j$ s0 n" ?, V0 R' D
}
7 Y1 E6 B" J1 S/ J. u9 u( j; }( V& G
}
. n# s: |0 L7 G- [
}
& S: Q5 @- N- L& O" N
^9 E) b* z- }& y5 w4 m
BOOL CWndAutoFood:
rocess()
9 f3 d9 ], y4 w2 ^ R6 A: D
{
+ `5 q) W x+ N y) |$ C6 ~6 }! a
if( bStart )
2 F+ H* j1 y* O6 [
{
7 C- f1 y( K/ W) U3 D5 T( J
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
/ S4 t% J+ w9 @/ C1 w% k3 i
{
( ], J W! g- W0 L' 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 p6 l. O4 G( ~2 {/ O* S
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
6 Y: M [7 e. z, [3 d9 H5 E
}else{
8 ~7 z% ^# q. s* L3 v( w
bStart = FALSE;
7 Q8 u* G( M; ^& M
m_pItemElem = NULL;
3 k# z5 j. V4 H. k
}
6 z0 j9 x% D5 `' M
}
' l: X6 d2 O1 i; C' f
return TRUE;
1 Q) Q* o g$ j0 R- Y
}
% O! F; O1 z* I
7 j8 V& n3 H9 l [
登录视频废话:
9 r- H) ?( }; d4 s
尾翼:
+ o+ } ^5 O* ^' q) i0 k) t
' c: G( ]$ m1 v5 s! z8 j3 U
代码:
* v4 G; q6 h" H' M: b9 F; ]% H& y' _
4 M/ n1 T0 V' k9 Q( @/ G. w2 a" b
void CWorld::SetLight( BOOL bLight )
K# g: a/ {+ ?8 ?
durch
) w- ?; b* {9 N
Code:
. N9 F2 R+ G. [) u9 \1 C2 o$ N! O
void CWorld::SetLight( BOOL bLight )
9 Z$ V( F- g; @9 _! O3 B7 e
{
$ I: ~- [* Y. B! l S
//ACE("SetLight %d \n", bLight);
3 Z" q3 l R+ r- ^
: \6 |7 V$ ]: P1 Y h
#ifndef __WORLDSERVER
( U- n9 g, H. @: s+ k- d7 f
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
, u5 m* s: G# J" G* e2 {* z
CLight* pLight = NULL;
; I p ~& x5 H1 q# G/ n7 V
9 {; p4 v9 E! I% X
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
) Y" u8 i/ r) ~. S
# I4 ^ [% ~7 M A
pLight = GetLight( "direction" );
: w! ?3 l* x8 h3 J; _" K3 H
' m( M& M4 M- {6 f8 X! k, C
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 g( A: r% r, i" a
if( g_pPlayer ){
) @+ J( o! c* S$ m
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
1 D, w% u4 k& ~) K2 P# K4 V
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
$ ^9 V1 }' G9 f8 ^5 m
{
, P. n' D8 M# N" c5 r
if( pLight )
0 [. O4 A0 [1 j3 i
{
7 k/ o* h4 G% K/ C4 r
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
2 m7 {- o+ }5 m0 Y
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
) ?1 c8 a7 I1 C F+ N2 c
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
8 M2 w) \" ]8 c, j8 K# s
& j9 i H/ Q t! F, t! |
pLight->Specular.r = 2.0f;
( c. p; ]# a( d$ X7 {3 S2 e) A& b
pLight->Specular.g = 2.0f;
( {% Z5 V y6 e7 J9 c3 _
pLight->Specular.b = 2.0f;
3 Q9 p" W, q& e9 i( g x. D
5 }0 G: E1 q j3 [
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
. {9 ?( Q7 k& l4 c3 l
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
2 f7 x! j/ S6 W% j2 l; w/ V
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
! d6 [) i4 s8 j5 H
3 S) J6 U8 e+ W+ ]. ]- L
HookUpdateLight( pLight );
4 Z v" l+ n. [& O% h
* y4 @3 I, e- D0 I
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ }8 ~2 z+ w$ s7 V
$ D3 ]" M( b' ]6 B
pLight->Diffuse.r *= 1.2f;
6 l0 x- w3 e6 f" s* k, r
pLight->Diffuse.g *= 1.2f;
& q; I) U. C9 }' ]/ s
pLight->Diffuse.b *= 1.2f;
% W2 E* I& x6 H; l' Q: Z* ^
8 A: }# k. Y1 t, y1 `! ~0 j- F
pLight->Ambient.r *= 0.8f;
$ N3 u" Z* t2 ^& m: ?
pLight->Ambient.g *= 0.8f;
( V3 k. ?8 v+ ^
pLight->Ambient.b *= 0.8f;
# E* x: [$ O- T- v, R5 f; G% f" o
# Y6 P2 h; ]% q+ j- p- g
memcpy( &m_light, pLight, sizeof( m_light ) );
; j1 U+ d, Y2 Y6 w
" X2 V( d+ g. Y2 M3 ~' ]
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
C# k( @) \ L" A
D3DXVec3Normalize(&(vecSun),&(vecSun));
4 b* s7 r$ G8 m1 o
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
6 S0 [0 A2 P9 b
pLight->Appear( m_pd3dDevice, TRUE );
: k0 e$ Y$ d, ]4 M; I) e
, p; Q5 j2 d8 O9 H) F0 C5 A
DWORD dwR, dwG, dwB;
$ T' z1 {; g4 J+ @
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 s j* {4 a4 D9 `
dwG = (DWORD)( pLight->Ambient.g * 255 );
5 P* r9 W9 J( k6 x" y
dwB = (DWORD)( pLight->Ambient.b * 255 );
! }" O+ z5 |) j# h8 W
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- q4 X/ C7 ]- W" e
}
3 z+ S, u! y' l
}
1 |# E7 a; A: I! g# f1 {3 v
}
4 h, n6 r( g: \0 r: c" h" Z% F1 b6 Y
else
; O6 {' ?: V. c
#endif
; K) _! s3 ~, }
8 y0 u% E" i7 p5 r9 C$ z, d
if( m_bIsIndoor )
6 _& G; W6 O2 D: m3 ^' W/ f
{
5 \5 H6 F9 j' t( |$ m: D2 t, q
if( pLight )
! L% z( O1 F: e* l9 b
{
* x1 q1 L7 y7 [1 i! F/ k, B# D
// à??μ oˉè*
* b9 J( j7 I Y$ [
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
( ]4 }& A* R6 s) R7 [: Q; M* |
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
0 T8 v/ {. y5 `4 I( ^ r
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
( @" G1 C: i* o+ Q7 ~& b
6 C* ]/ q' }& Y ^
// oˉè* ??à?
1 J& m1 E- G) y; o& f5 T- y/ K( u
pLight->Specular.r = 1.0f;
3 a: c1 `4 o% s* X; K0 \& Q
pLight->Specular.g = 1.0f;
* P& g. b) `* b$ ~, M9 u& w
pLight->Specular.b = 1.0f;
) s- x# d% S/ `' k' P2 a
// àü?? oˉè*
& P J1 l0 c7 k
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
# s# M9 a# \( |* Z$ y
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
! B) N8 e# u1 t0 z
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
0 J: f- `% i6 k2 J
& ^; E$ D8 \; v" B [
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
" A, L1 k( o/ `: g6 G6 o
{
9 ^4 o- f0 l0 F: e8 Y
pLight->Diffuse.r *= 0.6f;
; z9 K+ Z/ R' j @7 M' U$ E
pLight->Diffuse.g *= 0.6f;
3 u4 M9 |4 p' x1 [& U1 S9 I) r
pLight->Diffuse.b *= 0.6f;
0 O0 ^, G# O* q V) g9 V! B
pLight->Ambient.r *= 0.7f;
2 | |3 Z0 D6 e4 X/ e1 A- e
pLight->Ambient.g *= 0.7f;
" Y, `2 @, p* G- @* t, ?( U7 x
pLight->Ambient.b *= 0.7f;
+ ]& E, ~3 A/ y7 U" Y3 B
}
: ~' i3 g* e% n6 m$ w, K" F& f" n
' S; j2 @& n4 F* f0 b' B# y
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ e# d9 |# L \. t$ y/ N1 |7 Q I
if( g_pPlayer )
! w5 [. u! T9 e: w9 c4 F
HookUpdateLight( pLight );
8 L+ q7 X+ P% X5 k/ j! F
#endif
+ n) ]) Z6 f; v& ^
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
- v8 k) K( \0 |( A3 g
% j v! d- }, \# s- P+ Z5 Z3 S
pLight->Diffuse.r += 0.1f;
- K8 Z/ C9 B( P3 I! F
pLight->Diffuse.g += 0.1f;
) U. o; [/ {9 P d; o! L( ]4 c
pLight->Diffuse.b += 0.1f;
5 r' A G' N1 M, _: `, I/ C
// oˉè* ??à?
0 c: z6 ~ a7 ]6 S
pLight->Specular.r = 2.0f;
+ }6 Y/ [% z7 Z: k3 Z
pLight->Specular.g = 2.0f;
7 K5 Y, Q) P* f) ]
pLight->Specular.b = 2.0f;
! q7 P( e: _9 m, D; G
// á?oˉ
% T. z! N4 \4 d# S$ T; k6 ~
pLight->Ambient.r *= 0.9f;
% a4 x' O: E* X5 n0 R! m2 [) ^8 M
pLight->Ambient.g *= 0.9f;
, E# S4 d8 ~+ T
pLight->Ambient.b *= 0.9f;
/ D+ [; K3 p" M1 R
8 A) q2 w' ?- Q) N
memcpy( &m_light, pLight, sizeof( m_light ) );
7 p4 n j3 I6 _' u
, R$ `7 S" S* E: [# a' N" @
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
0 ] b; @! X) Z3 y& z0 h9 z e) e
pLight->Appear( m_pd3dDevice, TRUE );
- E+ Z( L4 H4 F v
# G& B# h4 e1 x. `" h7 A
DWORD dwR, dwG, dwB;
3 J( R$ F! [6 F/ v
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 c" c8 ?6 V" s% c4 _6 f0 n7 I
dwG = (DWORD)( pLight->Ambient.g * 255 );
# |" h5 \$ a1 Z$ v$ J( H
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 m9 j' z' n( H$ u6 O
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- B' L$ |: R) W: m0 M1 H6 ^
}
' G4 P: l9 g5 u, g/ L! w
}
?6 l2 t# d1 g6 {5 U7 P7 t
else
z& I% d( T0 A! \5 \0 q# ?
{
7 t: ~, c$ }5 N& w5 Q% D7 W
if( pLight )
3 p+ o& v* L; X+ C! [. l
{
7 x$ @; h9 A$ u
7 ?- x4 ^; D- D% Y: ?' u
int nHour = 8, nMin = 0;
3 x5 ~8 G2 |! w/ }9 v0 g" D( n; p
#ifdef __CLIENT
& s: H0 ?9 v6 U6 d9 m2 \$ W3 _: r
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
0 K z/ b1 D3 \ y6 w8 B
nHour = g_GameTimer.m_nHour;
, h2 X: [! M0 G' ]0 H+ A
nMin = g_GameTimer.m_nMin ;
7 P' Q7 L, Z* u, D8 s
#else
+ h+ g4 N! h, {1 C/ I
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
9 e: s) p$ r9 R
if( m_nLightType == 1 )
: E5 N6 G/ V$ _; Z
nHour = m_nLightHour;
* p @* k+ }! H
#endif
* C4 o; P& \2 Z3 @( l% w
nHour--;
, f0 B4 F/ ^$ s+ ~+ k
if( nHour < 0 ) nHour = 0;
3 l Y; A$ N+ f9 g: R1 C' g
if( nHour > 23 ) nHour = 23;
$ L* M% l0 t( ?9 a7 J) f) h
$ e% @7 A5 u' h' X
//if( m_bFixedHour )
7 q$ B9 Y6 W, |4 E' H' u
// nHour = m_nFixedHour, nMin = 0;
$ a3 h7 ?/ {( O3 a4 I# F7 m3 H$ R
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
" P; |6 S$ l& q6 s/ D, u
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
$ G: F: q5 D/ S" j8 u
$ G; a% v9 z+ g+ ~1 f8 l j
//m_lightColor = lightColorPrv;
- n8 ^2 Q- n+ |7 i
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
* e1 K4 _# o% J6 T$ W
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
N4 _! N# z1 J/ K
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
7 i. F/ F" X' E1 |2 o
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
. {" y3 x6 H D- @; Y
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
& G: B% R' o( X, h! L0 ?
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
5 {' X. p: s* t( n1 g# {4 }
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
+ |& n# K: y4 X- q0 N# x' q) \- s$ O
' ]# l8 B: R* |, o
// à??μ oˉè*
1 h+ `2 e* K, Z# r: |- `
pLight->Diffuse.r = lightColorPrv.r1;
8 `! g) M& H z! d, q
pLight->Diffuse.g = lightColorPrv.g1;
8 h; F" a. H4 ~+ Z q. {$ ~
pLight->Diffuse.b = lightColorPrv.b1;
/ G: I! ]2 j' M c6 S
// oˉè* ??à?
" G4 e2 n& |) A8 M
pLight->Specular.r = 1.0f;
% ]4 [* f' D! R7 I0 o/ e/ n
pLight->Specular.g = 1.0f;
4 A1 I- X) b8 U) y
pLight->Specular.b = 1.0f;
3 Q- V" q4 h" D v/ D( B
// àü?? oˉè*
% O, p4 ]! B, ~/ X ~
pLight->Ambient.r = lightColorPrv.r2;
+ h& a4 Y# {- N$ Z
pLight->Ambient.g = lightColorPrv.g2;
+ |+ L/ Q2 `* E- ?' G. U
pLight->Ambient.b = lightColorPrv.b2;
( f- U- @( c; y" c* L8 v% y
7 ~! O& B6 e8 `. H5 M
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* i) `6 L5 X6 n5 q! F2 d7 C
{
- `& b7 y5 x- @ f M- t9 u/ e) i
pLight->Diffuse.r *= 0.6f;
- t( o) d' G ]; \1 h# u
pLight->Diffuse.g *= 0.6f;
$ J- ?' F- U/ [4 Q! e* T- x
pLight->Diffuse.b *= 0.6f;
2 p8 O2 e5 H' p0 s# ^
pLight->Ambient.r *= 0.7f;
: u& v' v" ^- [- i9 c
pLight->Ambient.g *= 0.7f;
- K7 H% E. _2 v+ f
pLight->Ambient.b *= 0.7f;
, A7 c% C) ^1 L# g! [3 f: P, V
}
6 i/ g% f) B/ A
* V! Y- I- s( O3 V& z
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 a3 r _9 Q* i+ B* }
if( g_pPlayer )
( [2 O) A8 @* g' [2 n
HookUpdateLight( pLight );
& I [% m& b9 Z" |+ i T' |
#endif
* P$ n3 Q. F1 }0 {
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: a* j. s& U& z( a4 f
1 |9 K! K( [- `6 Q5 s
#ifdef __YENV
/ @* o. S' |# C
pLight->Diffuse.r *= 1.1f;
9 n3 J& T" a" |5 k; |3 t& n
pLight->Diffuse.g *= 1.1f;
" ]+ Y2 p7 y' x( Y$ p
pLight->Diffuse.b *= 1.1f;
M$ t6 l. `5 i8 y: |
// oˉè* ??à?
( t; [" w- _2 ?, Q' t
pLight->Specular.r = 2.0f;
7 D' n% g4 M) O2 C
pLight->Specular.g = 2.0f;
6 E9 E- E$ I6 r( A' `( K
pLight->Specular.b = 2.0f;
& m& t2 l6 R% E- |
// á?oˉ
' t @* k! G5 n% S* O( O3 E S0 [
pLight->Ambient.r *= 1.0f;
" W! |- @4 [$ n/ A5 u* B- n
pLight->Ambient.g *= 1.0f;
4 M9 A5 }- f. z+ t- N
pLight->Ambient.b *= 1.0f;
( l) x7 y% T, j f4 Y8 B/ y
#else //__YENV
' a; v( U9 m- }2 E& E
pLight->Diffuse.r *= 1.1f;
5 V/ K% ?" X' j, b* |: Y
pLight->Diffuse.g *= 1.1f;
1 ?& O) @& J$ G8 U. H
pLight->Diffuse.b *= 1.1f;
; |5 e7 b) w+ ]+ Z# }
// oˉè* ??à?
7 a' y3 W+ t6 l. N& c" j1 t$ v2 Y
pLight->Specular.r = 2.0f;
9 e' `. e0 } j% u b/ [
pLight->Specular.g = 2.0f;
: Q) _. S Z% I) Z1 c% P$ M
pLight->Specular.b = 2.0f;
9 e5 D: e3 N# d. i$ T
// á?oˉ
" o- y: L; W, y2 b) x" @9 Z
pLight->Ambient.r *= 0.9f;
2 P! ~& x2 T' `. d' f& O
pLight->Ambient.g *= 0.9f;
& Z1 v L1 _% }' Q1 B6 G
pLight->Ambient.b *= 0.9f;
4 w4 t% e3 u6 r
#endif //__YENV
9 p2 `# X( s5 {% X' |
6 T0 k) B9 g" T# Y. A
memcpy( &m_light, pLight, sizeof( m_light ) );
1 F' `3 d7 K0 I- X, s) d
6 i8 |; r/ |0 t1 @. _( ]
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
3 ^6 B1 u# v/ z/ \* g
D3DXMATRIX matTemp;
1 r9 L" u' X/ c A
static const float CONS_VAL = 3.1415926f / 180.f;
! ^% v* |$ P" i- j C& P8 |8 J
6 ~7 H& ^; y# M8 {& }
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
. M( |$ m$ B2 O. \
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
0 k2 U* I; _4 @, Y* \
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
( x6 ^/ w! h9 Y. c7 ]
pLight->Appear( m_pd3dDevice, TRUE );
" d' [+ `9 Q0 S6 [
2 k& r3 P0 _- @5 X
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' P' J; `6 I9 h" F% U
// D3DXVec3Normalize(&(vecSun),&(vecSun));
0 Q5 L5 x* v* M
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
8 K5 H* u f/ Z2 {* p3 F
7 g. \# t. X: \" S2 N+ z% R
DWORD dwR, dwG, dwB;
: D2 w* E( I) l7 g e6 L$ C! J
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 w2 d5 {0 H. b5 t; }
dwG = (DWORD)( pLight->Ambient.g * 255 );
. j- b3 |' B; x; y! |
dwB = (DWORD)( pLight->Ambient.b * 255 );
: q. a G; M/ m6 m& M' l4 S) K/ c- b
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
& A9 _+ H" e' g0 T4 x, K/ [
}
. U& W% P) V/ H2 r8 {5 B: t6 Z
}
% v6 R* n0 e- G- ]/ h) B1 x
0 Y" {4 ~9 f) D) W% h0 f
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
* P8 B- v0 ~# @$ e4 m
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) );
" s2 ~4 N0 N5 T# f
::SetLight( bLight );
* i ^3 b) g9 u/ M) S# i* s
+ ?+ q$ ?' Z$ Z+ Q
// ±ao? ?D?í???ó á¤à?
' V# S1 L, _8 f" a! t* u2 _
m_pd3dDevice->SetMaterial( &m_baseMaterial );
+ g7 n" C6 |+ s, E1 ?7 ~
' L. ]5 O5 z. ^1 { ^
#endif // not WORLDSERVER
& G/ {; n) N. G
}
. k6 Y' e4 t* h# r$ W
并更换
5 r3 ?' ~6 v0 o: R. D' d; g
Code:
, W4 A3 ?6 R+ R% i& a2 W
__FLYFF_INITPAGE_EXT
, E( m9 f+ M+ ~
定义
' Y# }# L! k9 p( {: r
- N3 F) i9 ?* ?; E+ u g0 k
7 X6 T C' m2 q' a. Q( Q5 Z
5 _+ e3 ?% y9 E/ h. j( p+ c
6 f& U4 b' q8 Y4 T
现在终于删除我的狗屁加速...
) u5 y0 w8 c+ d9 G$ c* h. z! ~. u* C
/ j9 C* b( y, J! i) L, d
% z6 }) a7 c7 C; c5 Y+ V4 g( _
8 u5 r, B: q. M) Q0 K. H. U. x7 F4 o
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2