飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
B2 W* j/ y( j
尾翼:
1 X0 C4 i1 S9 _, J! @6 a0 b: b8 k: a
+ i4 L+ O! ]. G; t
代码:
- y' `8 _$ f+ |- Q/ `5 p7 V
CWndAutoFood::CWndAutoFood()
" I# X. D. C) t7 h8 `
{
# E. e3 b" U; x/ \
m_pItemElem = NULL;
D; j) Y7 x3 I0 ?% O7 q8 m* g* |& f
m_pTexture = NULL;
; t# V- h# ~2 ?/ J
bStart = FALSE;
) q2 ?1 F0 U- `4 e- n6 s/ a: e
}
" g# f* }2 \1 {% \ N
- G/ u" D6 \: N9 j
CWndAutoFood::~CWndAutoFood()
* I6 `0 y g. R3 T4 u
{
( \4 a( j- y, X! W
AfxMessageBox( "AutoFood ist gestorben
" );
: H; Q% c) k8 Z; a }
}
/ o. f' S# O1 x- x+ V, H, [# s
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
8 v. H$ y0 C, m' b/ L
{
9 y- F/ `" L7 H# L& P1 n
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
6 W% R. v7 Q8 e K+ }
}
' ]; \- Z8 D f1 E) s# V
J. `& u2 ^8 u/ B5 t' n* ^
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
2 ?: Z m* f! L) s+ z# V) i9 Z
{
- u" G% @' |- k9 S+ ^$ e) L
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
8 w$ \- g8 M9 n1 m
CRect rect = pWndCtrl->rect;
% o- {- I+ r; b& A0 D
if( rect && rect.PtInRect( point ) )
) i+ G% o ] [0 a. h* C
{
' } F7 F) @2 O2 `5 b$ c
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
4 b6 |: ~; ~) E* Q" t) q# r
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
" s, Q( R2 @2 G. A" S- X7 ]
{
* h9 Y, [ Q* E& y: ~
if( m_pItemElem )
) g" i* X$ B1 E! U [4 ~+ u- l
{
& i5 V8 @7 s0 ^
m_pItemElem = NULL;
7 ~3 r2 _, }. f5 n- C: e- f' M
}
' H# l9 W3 F O% L, F1 S
m_pItemElem = pItemElem;
2 @: X! x, d5 M) h, M5 Y$ ]. {# k/ j i
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 W& Y; }$ z) A9 v4 N6 e
}else{
; Q2 @) X+ C9 Z, p% _2 `, ~
SetForbid( TRUE );
7 B1 K# ]! ?; Y2 J+ g
}
" V V2 w) x+ U- E. A! b$ h
}else{
! y C' a6 O6 |" h e
SetForbid( TRUE );
4 w0 e( {$ h Y/ _- `
}
+ D8 z; P: H' _: F( A2 _' q
return TRUE;
8 t! w4 _) X7 [ y4 M: w* | h1 R
}
6 k+ ]. u9 }0 Y2 ~& |1 N. O7 u
8 v# J8 t6 m0 e9 v5 D
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
% I8 K3 d r3 ~2 [4 O7 z
{
6 s( L N4 D, x3 L; P# Z7 w0 |9 l
switch( nID )
+ h' f5 d' ~3 \
{
( y' M: Z9 l3 R* ~3 W, M0 e G9 o% {
case WIDC_BUTTON3:
* \ |, M$ ^$ q: j/ |3 V
{
. x- j' T2 }+ `# J
bStart = TRUE;
r% ^7 l5 E5 X- A+ z( p
break;
, ^" c& ^ C' Z. l: x# I1 M
}
* Z3 Q" m, h0 t4 d7 |
case WIDC_BUTTON4:
/ i8 F: h" u5 a1 R' J
{
6 M4 C: h* {$ [6 L, D
bStart = FALSE;
1 C5 O. T# T. D$ z) l3 b
break;
p/ C- t1 z8 U. `
}
$ y2 N- H. v$ H$ P
}
3 B* B& U( t0 o2 ^& S( }7 @/ w
return CWndNeuz::OnChildNotify( message, nID, pLResult );
# U( c* }6 l2 X" ?: t0 f1 f9 D
}
: ^* j2 t! A/ t% p. ?5 [7 P
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
q9 d) P% {: V# k# O' n
{
$ y3 K8 S) `0 V! o3 ?
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
+ J3 y2 {% T& ~
if( bStart || !m_pItemElem )
% j1 J& t/ n1 c+ Q2 F K. Z/ B
{
8 h6 W8 n) }4 o: Z2 @
pBtn->EnableWindow( FALSE );
: D4 E C2 N9 g: w
}else
- y8 V8 ]: Q; D( {% ? m
pBtn->EnableWindow( TRUE );
# U$ C6 u9 j( Y! b, D2 {
if( m_pTexture )
/ l. d) W7 g8 F( m }( w& O- d$ Z
{
% C9 L+ I/ \; Z# Q( {# Y( {/ g
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' Y1 e% n$ E: d; X% ^0 P
if( wndCtrl && wndCtrl->rect )
4 H1 D* h( c5 k$ y
{
% M& E5 p3 N9 i }0 p) K9 j1 W& l) @
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
" N/ C, S2 T* D0 ]& T
}
4 ~/ c$ F9 n8 b3 v& i
}
0 s1 |3 J5 J/ M- P: Y" ?5 \
}
' K4 h2 `3 l. [# Z; h0 p& f
6 ^! w% [- A& P, b
BOOL CWndAutoFood:
rocess()
4 ]3 ^$ b0 w# I
{
1 z+ r: D) z7 f+ D4 G* B' o }
if( bStart )
4 O# A* E9 |1 Q1 b5 J
{
3 k6 ]; U# B+ O- ?9 n& n9 D Y8 V
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
$ x o! S9 ]4 h' U9 W4 f: D
{
J: a2 H# J# ?1 m. ~
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
. V: w5 m+ U0 X7 d" P, X$ @' A
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
( \2 L; @+ S" E5 Q5 o
}else{
9 G% W+ z, T) ]' [
bStart = FALSE;
& V5 g8 F l C% K1 I& y/ L1 A
m_pItemElem = NULL;
& W" i5 b6 N x% K8 P
}
* K. J* `; c. D- k
}
( y: @9 z4 f9 }! T5 N
return TRUE;
0 C d7 R+ T% g4 B0 u% ]" U) ^& z
}
9 d! R2 G/ g; X( o, [4 ?: [" Y, c3 H$ U
7 f& b% {/ h4 e
登录视频废话:
; [5 C0 Q3 d2 i- {1 f9 k6 ~; i* g
尾翼:
7 B) s/ V# l( x8 C
^( d% o( x( y- J- d2 n
代码:
2 h5 y0 U x% [+ Q% M! m' b, a7 u7 J
3 C1 N7 l/ q" P2 N8 N2 Z4 q& c, e
void CWorld::SetLight( BOOL bLight )
3 W3 v' l* T0 i' s
durch
9 H& E2 r& ~ s7 k& E2 C$ l* C5 F* j
Code:
% S7 \' k6 t7 s, b
void CWorld::SetLight( BOOL bLight )
- N8 I3 f/ I$ p( {- ` e: u
{
* J7 v0 b/ ]* Q* t- z3 ~2 I: ^3 G) U! A1 _
//ACE("SetLight %d \n", bLight);
. {$ T) _7 V: ^
" Z- e5 Y) V/ |. h! p- v
#ifndef __WORLDSERVER
, x) q4 B4 G4 P. f) \& {0 R9 q8 ?
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
( h, l n; l, L, {) B; \% c
CLight* pLight = NULL;
% l) [" y5 Z) m: r
0 ^9 o/ [8 x" Z) M( N7 o3 e
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
2 y5 p: ?! z8 O) d+ @
) v4 p) v; p- u8 L& x
pLight = GetLight( "direction" );
7 a5 c) Q$ j, l
Y! R& I! t( r
#if __VER >= 15 // __BS_CHANGING_ENVIR
9 X$ P' `& R3 _! e# \& s
if( g_pPlayer ){
( E. i, a& C3 ]' K A3 L
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
9 j" B6 e. V, ~
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
u" f+ m4 h+ S
{
, s* M2 i) F" o8 j; a* y
if( pLight )
" e: i1 n$ r Y) J+ U- Z6 u
{
- k) s) U- S/ l( Q( O
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
: k/ e0 D6 D3 x- o. r
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
) L" d7 k% m7 Y+ n7 L
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
$ s% m6 |1 ~1 v: \1 J
2 G4 t! }4 Z: f* |' S& X
pLight->Specular.r = 2.0f;
8 Y. C$ L- H2 P( }% U5 f, A
pLight->Specular.g = 2.0f;
% ~; Y) v) ^1 I) _ c
pLight->Specular.b = 2.0f;
$ Y# r: j0 \9 H. \$ s$ j/ }, F/ y
1 Y b6 J2 {6 a3 q$ {8 |
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
1 x! Q9 U; h" q+ `
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
9 D) P; d! i2 ?' @. T1 r0 W4 D
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
4 K% K2 o* i. _$ R7 v) K
! o e7 j: `$ a1 q
HookUpdateLight( pLight );
! k2 q% y" o3 K& P8 j) y
0 Z! M0 s; e) i# J R
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 F/ r% `- I& ~0 _9 f% D
) v8 N9 p- y% p e. ^9 [
pLight->Diffuse.r *= 1.2f;
y v6 T$ P6 w; j) I
pLight->Diffuse.g *= 1.2f;
1 @" F: ?# a9 `6 I/ A% }4 w! C
pLight->Diffuse.b *= 1.2f;
& V5 ?0 x" J+ ]" ?$ l& i( k3 b
: L/ m; E6 ], _, F; I" z$ f! ~
pLight->Ambient.r *= 0.8f;
. [: D. v, f! V0 M1 h3 H8 k
pLight->Ambient.g *= 0.8f;
7 Q1 w9 ~* `& m' b4 f
pLight->Ambient.b *= 0.8f;
* w" w3 z) }" p* ^1 q/ ^
5 ?; y6 \( K# f; v# E3 D- p
memcpy( &m_light, pLight, sizeof( m_light ) );
; X5 e2 G- O! a. O' U
3 K2 k7 l" x+ }* Y8 ~
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" k8 ~8 `) H! j6 O% K
D3DXVec3Normalize(&(vecSun),&(vecSun));
$ z) @, @1 C0 g$ z2 H+ X7 |. a
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, o2 @% R& J7 u B% L' j
pLight->Appear( m_pd3dDevice, TRUE );
( i+ Y$ W: e& z9 T
3 W% S* l# ]. f: N, _
DWORD dwR, dwG, dwB;
% C1 c$ _. C8 b- I$ s9 y) ]
dwR = (DWORD)( pLight->Ambient.r * 255 );
- B# c" R3 H# q, @
dwG = (DWORD)( pLight->Ambient.g * 255 );
5 a7 Q4 r. o" L- h: I8 L: r
dwB = (DWORD)( pLight->Ambient.b * 255 );
, z8 _! J' u5 a1 N
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
8 u2 ~7 x+ c3 s1 }# s* s
}
4 e$ E( J$ |0 m" O `$ V
}
$ v. H4 _1 |. T
}
' `8 d$ k, W8 P* p4 x, l/ A. F3 N
else
[* c9 w0 j) Q% }# s
#endif
1 ?) |$ J- @$ ?; [% f
, K8 q- e5 n" Z/ E
if( m_bIsIndoor )
% v+ I& N: G$ `6 Y% d
{
( M- U3 d) y+ p" t5 l) n B
if( pLight )
- B6 ?6 A9 l9 i" l& r
{
" B' I/ P( X: d7 }
// à??μ oˉè*
5 g9 A9 R3 {4 f
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
\" y" E& @: R. C$ ~8 k' @! `
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
- z, J$ p- x; M' A( g, y
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
8 W2 @# r/ _/ O$ J# x& G
7 m2 U% s! l, l# ~* v: f% D
// oˉè* ??à?
$ g4 x; G2 R$ }, R
pLight->Specular.r = 1.0f;
; T2 H ^" E h% ^1 a
pLight->Specular.g = 1.0f;
# U4 s; X0 l4 e# \
pLight->Specular.b = 1.0f;
/ m4 u3 A% g& z" x/ U, \8 I
// àü?? oˉè*
" Y* ], e+ a1 x, v6 g
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
' b/ [9 S _- P5 { i% q
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
6 E0 E/ I3 F! R2 ~
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
# }& M7 c# |: b3 V
) Q+ M! L2 H3 x
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
; }2 A1 u+ V% K
{
) U, G, i% ~- s4 G% c4 }
pLight->Diffuse.r *= 0.6f;
& V1 h) X! [/ s6 E, n& g0 I
pLight->Diffuse.g *= 0.6f;
2 w/ G# \, D3 A1 k' k
pLight->Diffuse.b *= 0.6f;
' {1 x( {/ }: N/ U% C: F0 _8 J
pLight->Ambient.r *= 0.7f;
! T. N9 @+ R6 N6 ^8 k3 ^: J) Y% `
pLight->Ambient.g *= 0.7f;
' G3 S- [ _* E( s: W
pLight->Ambient.b *= 0.7f;
4 g( v* \% I$ s7 H7 d. p
}
Z8 \( X' M! @+ f! o' @
8 r1 z: ~; M( g( Z5 R
#if __VER >= 15 // __BS_CHANGING_ENVIR
. B n; B( \' u3 Q
if( g_pPlayer )
! C* J% i) _, g
HookUpdateLight( pLight );
6 o/ S# `5 o4 v# {
#endif
. O) C; _* E4 _2 I5 r7 a
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: H1 |2 }: V; \- w# k& h/ K
' P# V. n" a& e- w/ r' g* |
pLight->Diffuse.r += 0.1f;
o6 u* k* V# }. c
pLight->Diffuse.g += 0.1f;
7 j5 Y1 [" t5 j# S# T* d- z
pLight->Diffuse.b += 0.1f;
7 H) i; ?3 t/ |8 i: H+ v
// oˉè* ??à?
7 o$ t8 L1 |; K ?+ P; ^
pLight->Specular.r = 2.0f;
4 T, [- t8 l5 ~- e
pLight->Specular.g = 2.0f;
5 i- F! N8 e+ P4 ^. w4 c7 C
pLight->Specular.b = 2.0f;
6 \# D8 J* S0 T5 W1 J! _1 x6 B
// á?oˉ
. e9 z' F. }9 Q; }. i
pLight->Ambient.r *= 0.9f;
/ A9 X' l% \% E5 S. {0 ^. }
pLight->Ambient.g *= 0.9f;
& k m2 C+ F$ D# _4 x$ n
pLight->Ambient.b *= 0.9f;
) A1 ]# T: c m, N) a7 V; `) Q/ r
1 J! m' {$ p( a0 \+ L* V B
memcpy( &m_light, pLight, sizeof( m_light ) );
- Y, c8 }% U7 P2 c+ v+ C
0 a: g7 T9 x! F' R! [( i- K
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
9 m: T1 H5 ^# {( ?) ]/ J) H% d- U
pLight->Appear( m_pd3dDevice, TRUE );
9 m; R! ^* T( p6 c* p1 M
" b& \; [6 a+ Z2 s% L8 [1 H3 N
DWORD dwR, dwG, dwB;
4 K1 i% V) A9 ~5 x+ M
dwR = (DWORD)( pLight->Ambient.r * 255 );
n$ o3 {5 Z( `# J' m. Z) i
dwG = (DWORD)( pLight->Ambient.g * 255 );
( H9 S2 O6 f' ~9 R. _9 \( x
dwB = (DWORD)( pLight->Ambient.b * 255 );
6 H% {6 ]; A. ~- ^" L/ Y- C$ j: v
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 m. p4 V1 _( Z" | P$ J9 R3 W
}
. c& V4 M! j/ z9 T
}
$ I0 l7 h4 t* t
else
, h. y) D5 B2 w) D
{
3 [- T. c9 x4 { v, H& }% l5 C
if( pLight )
9 |* _: G" ]! b) I4 s7 B8 H2 [
{
3 A) E9 G: v: [( X7 ^, R; W- H
( j H' f' h! |2 p/ ]2 L! m
int nHour = 8, nMin = 0;
3 v3 n+ `+ Q, e& l: t
#ifdef __CLIENT
' l2 V4 ~; N+ j: y; ~
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
! j' `7 i) v. [
nHour = g_GameTimer.m_nHour;
% r% e% \7 C* \( r! G: d0 A
nMin = g_GameTimer.m_nMin ;
, G+ g$ F0 |, R( T! ^/ Z
#else
@4 R9 x' l2 i1 E; r6 c- _* t
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
. A3 g3 `8 v- z5 x* f& P" I8 B
if( m_nLightType == 1 )
/ g4 i2 J8 h& K5 A/ y2 Q
nHour = m_nLightHour;
7 z) M: B( w* r i- O: N' o6 V
#endif
9 j" k' M' `+ C7 t3 r0 i
nHour--;
' S6 N6 X, V' x$ q
if( nHour < 0 ) nHour = 0;
* b. N0 @! [4 S6 V) R8 ~
if( nHour > 23 ) nHour = 23;
) O5 c4 [; H/ ?; X
# \, E0 ?9 g, }* x8 t* t" H
//if( m_bFixedHour )
1 v0 y8 @: z8 ?0 J# M; M) }
// nHour = m_nFixedHour, nMin = 0;
/ i: x9 i: L1 \; l. T- Y2 p' P
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
L/ O" J6 n* ?# H! O! D& x
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
7 L P5 `* z" n1 X$ N
$ s; l( p( V8 S4 _* D. m" ^' U
//m_lightColor = lightColorPrv;
" g. A& e; B8 _+ K- a: H
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
# x# s2 r4 Z3 Q o6 ]6 D& n
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
4 y. D' t7 K4 X3 w% U
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
6 X7 h$ k! F) _4 W# L7 Q4 S
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
" Z9 r! V D5 d% k& P
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
( E9 ~; r) c7 r7 Z$ ]# ]# G8 p% h
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
% K0 h3 A, ~# P; u) A f" S: Y5 s
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
, ^$ P: F- c" ^- D! M8 X
3 B& \+ k- F9 c/ q; @9 p1 t
// à??μ oˉè*
0 ~5 Y7 F/ Y. B1 D! G8 x% l# v) }* X
pLight->Diffuse.r = lightColorPrv.r1;
0 b+ L/ R" S0 n8 I, S- A0 C
pLight->Diffuse.g = lightColorPrv.g1;
3 c5 [0 M: w! J" S: N6 K
pLight->Diffuse.b = lightColorPrv.b1;
) U. ?# P4 t) |% q5 v, j
// oˉè* ??à?
: L" g) Q! u9 o" K7 D
pLight->Specular.r = 1.0f;
* ~/ p$ I H; p& I5 U
pLight->Specular.g = 1.0f;
7 O8 W0 d+ [( l, [5 B
pLight->Specular.b = 1.0f;
4 Q$ ~2 F- i9 p
// àü?? oˉè*
2 y& E% c4 V0 A/ J( Z! [7 Y; R
pLight->Ambient.r = lightColorPrv.r2;
% ~' W4 S6 S8 q! U( w- z8 X4 s' g
pLight->Ambient.g = lightColorPrv.g2;
3 f/ H' M9 ^" V5 F" s1 j; _5 A
pLight->Ambient.b = lightColorPrv.b2;
7 h7 v' v, z0 [3 ^2 h5 O
6 {2 r6 @3 I( h/ E
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 ^, I, V0 [0 j3 D5 X8 l/ @' g
{
% A1 C% Z3 H i% I, F4 |
pLight->Diffuse.r *= 0.6f;
+ M7 h# w# F' Y" T" a5 k
pLight->Diffuse.g *= 0.6f;
6 P# \% W8 Y1 [4 M: Z6 }, n
pLight->Diffuse.b *= 0.6f;
) H5 ]. F% R$ m- t3 z% L, z; T2 X7 t
pLight->Ambient.r *= 0.7f;
a! N3 O' O% z0 S8 M3 E# d
pLight->Ambient.g *= 0.7f;
1 ~: Q5 K' Y z% j$ E
pLight->Ambient.b *= 0.7f;
+ h1 k: r( x' ]9 d
}
, t$ v- Y* \9 H9 ^, f
8 v2 q& r- F; v$ `
#if __VER >= 15 // __BS_CHANGING_ENVIR
* Y+ F% x- A* \2 ]" g! k
if( g_pPlayer )
! o; V: T& `* f. Y
HookUpdateLight( pLight );
! Q4 _& _; L9 Z" v+ d2 @- i
#endif
5 a' C9 G6 Q8 Y
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 k9 _2 T5 ?; s/ j
( L2 i5 B: A- ^, ]5 K5 F1 G, P* G
#ifdef __YENV
# z1 W* h7 ~: {. x
pLight->Diffuse.r *= 1.1f;
, U P' n5 {1 ? u( \! t; ^) Z0 d* f' P
pLight->Diffuse.g *= 1.1f;
8 T; m0 |* R- o! T( L& Y5 X
pLight->Diffuse.b *= 1.1f;
8 z: F9 W T% u/ D/ b
// oˉè* ??à?
- h+ s& F3 F& I' }2 c8 B4 X& s
pLight->Specular.r = 2.0f;
! F; V7 b7 r h ^$ t5 Q
pLight->Specular.g = 2.0f;
5 y# X: P: I# u2 z! g$ h
pLight->Specular.b = 2.0f;
# ]4 X) s7 B: l& f$ X V
// á?oˉ
1 Y4 {( ~" U% G
pLight->Ambient.r *= 1.0f;
7 _8 R3 ~7 B& I7 Z* o/ v
pLight->Ambient.g *= 1.0f;
: a: g* T1 d4 f9 {
pLight->Ambient.b *= 1.0f;
$ G1 U8 y/ M( E) {5 c7 @; }1 e
#else //__YENV
. n G& v) ~2 a9 Z" E5 }
pLight->Diffuse.r *= 1.1f;
( k- H, n# h, z' U9 Y
pLight->Diffuse.g *= 1.1f;
0 E8 m* C) M0 [6 h' M6 r
pLight->Diffuse.b *= 1.1f;
& E) z, @% p3 J1 v+ W6 e+ R
// oˉè* ??à?
: t$ o5 ~/ S' `& h
pLight->Specular.r = 2.0f;
7 o' Y' a6 i& N0 G& n
pLight->Specular.g = 2.0f;
% C( N6 T/ I2 o) L& Y; `- P
pLight->Specular.b = 2.0f;
: h: O- j/ n* m O4 i9 j
// á?oˉ
' }, [8 |. ?( n& k# e" o6 P7 q
pLight->Ambient.r *= 0.9f;
' ?; ^2 y( z9 t& ^3 p$ ^
pLight->Ambient.g *= 0.9f;
% U. N) ]; g* t; N* q1 |
pLight->Ambient.b *= 0.9f;
3 d& `2 {& D: a" E3 d+ A
#endif //__YENV
$ L" O4 q# \2 F! E8 S
$ P# y# z$ M# K9 v
memcpy( &m_light, pLight, sizeof( m_light ) );
- H5 R, `, d, C! s; A
* W8 a# X/ {( V5 L0 V
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
2 L" s! o# c" M. B" q& P& M. V: C
D3DXMATRIX matTemp;
9 W8 y+ G+ d+ j) S$ @* G( I! L
static const float CONS_VAL = 3.1415926f / 180.f;
! a$ e5 a& B" _+ Z
( Z9 `0 p4 f7 G& M @, E
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
2 q5 `) _6 V( W( j
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
" j/ u1 I- q7 J
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
1 f7 ]" b3 w) O9 q( l( D
pLight->Appear( m_pd3dDevice, TRUE );
1 Y C# [7 F A6 k9 ]( \
) p; E H4 }/ V) ]
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* K& C% F% p9 V' e6 ~$ h T% `
// D3DXVec3Normalize(&(vecSun),&(vecSun));
' q5 m' `4 z7 r6 k1 n1 B* N" w
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
4 i7 E- F, G8 J+ R
$ s8 j' D7 @2 R* A
DWORD dwR, dwG, dwB;
- N. u" Z. \6 P7 O5 s( M
dwR = (DWORD)( pLight->Ambient.r * 255 );
9 {5 ]# a9 q2 w1 Z7 N% Z
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 @9 {8 P/ B: g! y r9 T3 q' u7 G
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 b0 a' }; K" d- @! g0 Y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. w3 M: ^, @4 {) @/ U, j v! L& `" v
}
6 |& V' T% s5 c+ F% F6 K6 q. s" N
}
3 r- ^. k/ U" B
1 `: Q$ R, ^; ]) r9 }7 g, Y
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
: y/ l9 j. S1 b
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) );
5 V# N2 x9 k4 z6 @' Y
::SetLight( bLight );
+ [6 Z3 P- E* d& {6 F4 V# [, d
3 o# i: v% z* t+ Q$ L v
// ±ao? ?D?í???ó á¤à?
) [$ S# |; [5 R: c7 n* j& _
m_pd3dDevice->SetMaterial( &m_baseMaterial );
9 C! C$ a7 S. l k" P# e
# l1 u Q9 _/ @! @" y
#endif // not WORLDSERVER
( r2 F8 g% n4 E2 [4 D. y
}
1 L- u* l# ]5 F; L
并更换
, `2 r! t6 h9 K, Y% w
Code:
. q$ Y L5 I! T9 f4 x4 u; Y
__FLYFF_INITPAGE_EXT
) ]$ k/ E U- L
定义
" ? E* [ C8 h) m
, s( i- v O' A' L2 K
# M" k& L5 l9 `0 I9 H4 l
' \/ R0 I* c1 j
' k) O: x1 ?1 R9 y3 k9 e) d4 O6 K
现在终于删除我的狗屁加速...
5 e. j( P& |+ j1 o/ g; w
7 L6 y; ?' ?5 ?- B g
; W- m$ {9 B' T4 H
8 M' z8 d0 i" j b* l3 T
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2