飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
! f0 _, S) q# F; w
尾翼:
% G8 H h, c- Q' p% Y' ~: ]
" q& V; E) G9 m3 R0 u: Q
代码:
]7 }8 P) e3 U; C1 o: S5 U0 T
CWndAutoFood::CWndAutoFood()
2 ^: U, d J! z( S6 O E% r: t0 e
{
# G3 c6 {$ _5 x4 q5 |! L9 R/ U, L0 x
m_pItemElem = NULL;
* U/ {4 N- _, ?
m_pTexture = NULL;
* L0 Y" {# `1 \" G
bStart = FALSE;
4 ]$ ^- j& d0 F9 k' j
}
9 y5 t' q+ o* s+ N. W8 U) l; }
) [# C$ L' R! p# t! j+ v+ s* [
CWndAutoFood::~CWndAutoFood()
1 C0 b3 V# y* @/ l% z
{
* G( `: {/ g! Q5 @1 z0 j
AfxMessageBox( "AutoFood ist gestorben
" );
( V' n! V4 ]! F- f" j' k! R
}
- i" J/ W) x; r$ O
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
; j- W* ?( d/ C
{
6 l& r& u( @3 C2 G
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
' U' n5 H& \- d8 T
}
. k3 X7 R6 z: f
! E- Q Q, e7 E8 f, x
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
+ W, E+ z1 Z/ S7 A6 Q4 A8 H- r
{
* [1 J' M8 L+ l& x1 m. r
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 |( K+ Y" P& s# E
CRect rect = pWndCtrl->rect;
1 S& v4 r( N% c a* \, b4 k
if( rect && rect.PtInRect( point ) )
- ~! O, `5 B0 Y9 t
{
# ]8 C% K# t8 b* W1 e$ A
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
# j' ^* I7 T* L: v0 ]
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
' z" G8 q2 S' D
{
4 f/ D l7 ^9 g( w+ Z! U. U
if( m_pItemElem )
% Z+ C7 `/ K, W- P
{
: P5 a- M. p5 v6 L5 u
m_pItemElem = NULL;
! F: i G8 g. N
}
- a' w1 d* c! I. w3 b- C1 x
m_pItemElem = pItemElem;
. f$ @1 p' D! ?
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
' D$ ]+ d+ G+ e( E' u
}else{
% W* Q8 p& Q# X# N2 R$ S
SetForbid( TRUE );
5 W( i2 e- ~& D5 y6 O
}
3 W' @) N* v7 k |7 t9 U
}else{
/ H& B0 T x! m
SetForbid( TRUE );
% S- J- d+ u& G
}
9 N# p) q7 T/ \+ I. g! }: E
return TRUE;
+ M; c5 q6 y/ i% w1 @: {
}
/ V! X1 d0 b; [/ ^2 k, _! M
- e& s2 h8 ~4 M
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
. {; m8 J: F# n
{
: e- ~4 ?0 ?9 \+ j# @- x7 K# g+ y
switch( nID )
8 ?6 K: c. W5 @) n' ^$ }( t/ J4 @
{
; @9 H& U r8 N
case WIDC_BUTTON3:
9 r( H3 U7 @ T/ z4 ~" Y
{
. C& f9 U( \) Z2 O
bStart = TRUE;
" \* v# ]$ X8 F" A% w* X
break;
$ X4 g( g6 P! v+ n
}
7 x0 a9 x B+ J+ Y
case WIDC_BUTTON4:
% U( ~: `& n+ ^& E6 t+ A* u
{
, e* n: [& F1 P, J: } `
bStart = FALSE;
6 l9 N+ @/ X2 w
break;
2 g+ T7 ?' d D0 _5 ]
}
8 K2 ~* N2 @7 D" {9 z' G
}
7 ]7 R, G& U' g' @! s+ X Y; F- p
return CWndNeuz::OnChildNotify( message, nID, pLResult );
% ^8 v5 V6 i. a9 c, J" U' |% B
}
6 ]7 v1 |$ w! ?9 ?" p+ m2 z
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
* F. H0 B M* Y! Q {
{
/ Y1 V! _& O8 `/ X( k+ H
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
9 p' j0 ~: T( R8 N; @+ f2 F5 l
if( bStart || !m_pItemElem )
0 ?2 A3 d* R6 E
{
7 ?/ x4 a8 [8 g: ~3 u9 |
pBtn->EnableWindow( FALSE );
3 K1 ^ g2 K7 Y/ R6 Q8 n* J
}else
. B! ~) F6 e5 O; ~6 D: [6 g! L
pBtn->EnableWindow( TRUE );
( J7 e( s b& c
if( m_pTexture )
" ?4 |) ]. i e A3 f
{
, E5 ?7 I# ~8 y' Q1 |
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! r& [) I+ s% e) E( P0 d' u9 T$ Q
if( wndCtrl && wndCtrl->rect )
& f5 y q6 b% l U% ~: y
{
7 b" P) q2 j; S @& R- z1 w7 O
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
5 H! j. Y9 ~7 w, g# i
}
: }7 ^0 A2 a0 q" i' n
}
9 B! y f; y# }6 B" C! C
}
9 M1 {: U' B! Z/ M J! C
- h( ~6 K! {! L# Y
BOOL CWndAutoFood:
rocess()
" V+ h7 Y9 N2 `" d0 n
{
8 g3 F7 Y1 W( W4 W( d
if( bStart )
! M- m& u' Q* D( H
{
, i1 T$ M# z2 l: f& }
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
% C" }/ I" w, c! Q( `+ n
{
" g4 }6 Z& y1 o5 _- z3 ` Y
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
; o5 N6 x- L2 O: P( R$ m1 X
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
$ t7 Y% n* R- j1 @" u7 o
}else{
- B! H9 o. l$ `9 y3 Y! y
bStart = FALSE;
6 T& I6 v/ [: K- ]
m_pItemElem = NULL;
2 }9 m( p4 q) j4 q% ?
}
0 Z2 j5 @# X4 g
}
, G3 M' T* v8 y- P6 E: A' U1 }
return TRUE;
5 v P' Y; S; x- r5 |" B/ ?0 F+ D
}
9 r" U+ C) l( P" o
" u( [. ~3 G( i
登录视频废话:
7 H" m" Y* o, L! E% s$ Q- b
尾翼:
& U) G" L9 d0 v
( t; W' ~4 A: N$ ^1 C7 R* Z
代码:
8 o/ s+ s: H$ _ L7 w6 D; K! Z0 a
: q r5 W! i. ^! t1 _; j# G- e
void CWorld::SetLight( BOOL bLight )
% S' X$ i! l. Q' F
durch
& r0 z( f6 z( e' g
Code:
4 q( O1 j+ k' V0 g# U
void CWorld::SetLight( BOOL bLight )
4 s, w m" p5 r2 W# q6 X8 [
{
7 Z* ?6 _! I* J) P0 n, g0 K
//ACE("SetLight %d \n", bLight);
, T! C6 M/ ~7 s
+ I3 M( Z. c w8 S
#ifndef __WORLDSERVER
8 V `+ _& N8 v/ P- w
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
% g) h3 h0 n/ K1 s( B @
CLight* pLight = NULL;
1 _" g, g, D. G8 Q1 n) O
& i! o5 H; m4 w ~
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
$ L7 b; r) o2 X% B- e D7 F4 U" [: n
) M. i9 z3 o5 R2 ?
pLight = GetLight( "direction" );
( B6 ~9 M2 y! U- ]! }( w: x/ F
& x( @2 l' }6 T7 J2 j$ R2 c
#if __VER >= 15 // __BS_CHANGING_ENVIR
* e9 b" D4 t) p" ~% Y
if( g_pPlayer ){
1 v2 x4 y4 x( Y
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
+ T, A2 a. M" B5 o. F0 s5 j' u
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
' @. _. j5 R9 f, Q5 h# m
{
' W$ |' t* w4 A4 h, K5 j% c5 p# k2 s
if( pLight )
& j T! Q0 U# ~, f; N1 N
{
; r2 T8 x. @6 o/ o+ X' y
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
! A" I9 e0 b9 | J) d
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
5 Q& h4 V* q2 q0 g
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
( i' j- l5 [' w! O6 S
0 v8 w! e" I$ ^8 P" n0 F
pLight->Specular.r = 2.0f;
6 U! A6 r( `2 X% Z2 t
pLight->Specular.g = 2.0f;
1 }5 m! N8 v! G% ? u
pLight->Specular.b = 2.0f;
, I$ f: h: }5 n) D: r& [4 q8 v
" O+ ]% A3 X& X5 \- C3 D
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
1 {! z Z+ I( E
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
4 n& T) Q+ Z* A
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
+ w* X% s. V! [
/ K; e; E0 W- X
HookUpdateLight( pLight );
8 s, a4 W1 f" _) ^' `! ?$ E
$ S$ c, J T- m
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 {5 x0 o' P' \% H! I2 D1 o
% b5 l7 n& z, J# w
pLight->Diffuse.r *= 1.2f;
9 Q* T! N+ }$ r
pLight->Diffuse.g *= 1.2f;
* ^: d% s# ~+ n& q6 S; Z
pLight->Diffuse.b *= 1.2f;
1 {1 G; @+ I0 s4 |+ f# e4 g# Q& F+ G
. K& G$ F# v- ]. j! y8 p* C8 O2 n
pLight->Ambient.r *= 0.8f;
* M1 Y+ w, F1 |! ~, D- x% h C
pLight->Ambient.g *= 0.8f;
' R) r! Z3 M6 b2 o* {4 F
pLight->Ambient.b *= 0.8f;
7 N9 G+ Q# r, Y$ O3 V/ b2 v4 r
# A6 X. k( j j& p+ j
memcpy( &m_light, pLight, sizeof( m_light ) );
) L0 x* `* {* r- Q& v ]7 e, W) @
# Y( r, \* z+ S# ~5 @1 n, o
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 y# @$ }; i8 x7 V# ~& h
D3DXVec3Normalize(&(vecSun),&(vecSun));
6 g* C9 \+ u6 b7 S' a7 y. y0 H
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
* B( a1 u+ r! y) |7 R6 C- V
pLight->Appear( m_pd3dDevice, TRUE );
2 R2 T; d5 Z) @8 D9 Y( y8 i; E
]' I+ i! v5 U$ v; s
DWORD dwR, dwG, dwB;
7 J. U6 T5 {5 C
dwR = (DWORD)( pLight->Ambient.r * 255 );
* T4 f1 S3 E: Z$ v, Q5 [
dwG = (DWORD)( pLight->Ambient.g * 255 );
) w. {5 d6 F" s; f7 H6 e
dwB = (DWORD)( pLight->Ambient.b * 255 );
% `5 W+ {+ l( t2 X* W( u
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- t# z+ x9 w" g2 L
}
! ?* l$ P" K/ h& P: @# | E
}
' \0 V7 ~4 H" j6 @2 k% m" n3 U
}
" |+ e2 |0 Q/ a% Q3 S
else
1 g# S2 J, L; Y/ G
#endif
l" Y: {# N4 X" P0 k8 Y
% R- a: q! l% m" ^ S
if( m_bIsIndoor )
! p4 {! d% m" Q' I5 {
{
6 t5 G1 E5 L- F b
if( pLight )
+ B, R' ]5 r9 Q( \& M6 ^- H* ]
{
9 Q* S# L5 b& u4 H7 ]
// à??μ oˉè*
; q& x5 |& c& B0 _
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
! a+ Z8 I; k; z2 m2 b+ i
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
! s1 a2 {8 [9 k' R8 x4 } z
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
: O& y8 P# ^1 _( [4 v3 ^" Z
- a" X. T9 A% W6 N. B) ?. D
// oˉè* ??à?
. c6 e! R* y9 X2 ^0 ]* ^
pLight->Specular.r = 1.0f;
S9 [4 k0 V2 M y
pLight->Specular.g = 1.0f;
1 z! A( r0 U& p7 y
pLight->Specular.b = 1.0f;
2 {3 @5 }3 D* B, ?" @; N' h# i0 y, ^
// àü?? oˉè*
* q5 k& z) H; ?( B/ L( [8 ?/ x
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
. k, U/ Q9 c8 I w& O
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
) b1 O9 h+ s5 `0 E
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
, Q$ P$ {; ~" X# S: r. l
, _) U3 f$ A% U9 [' a1 a7 O- g7 E
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
( h. g" v# @: P
{
6 d8 h1 }7 A- o6 f( P/ w
pLight->Diffuse.r *= 0.6f;
+ _0 X! S1 U7 q- }2 ^
pLight->Diffuse.g *= 0.6f;
9 d& u2 E1 z) F- A: k! o2 |8 v+ f
pLight->Diffuse.b *= 0.6f;
M x9 |7 \4 Z/ Y7 d
pLight->Ambient.r *= 0.7f;
" q* ?0 c; |) u" _/ f- D" a
pLight->Ambient.g *= 0.7f;
- Q, g: R6 l3 s: S! x! v' T
pLight->Ambient.b *= 0.7f;
# J' E, k4 \. C1 g
}
& O6 y2 p9 c& S2 y, z' r* p1 @0 \$ t
* G5 A7 r! p7 A& W0 \% o
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 x5 Y1 {; \5 x6 a
if( g_pPlayer )
8 A: G( V0 D5 F9 k/ J
HookUpdateLight( pLight );
. P) b/ Y+ O; Q L: F. T9 s! P1 A
#endif
* Q5 x8 l: {! i5 t
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; N7 m; b6 F) Q( S4 N
" X5 m. _% b: r" i3 ^% k- T
pLight->Diffuse.r += 0.1f;
, y. ~# S) G' G8 T
pLight->Diffuse.g += 0.1f;
( i7 V! `/ R) a! d+ U
pLight->Diffuse.b += 0.1f;
1 d0 ?5 ^- A; {2 y. M! F7 \% `9 `* e
// oˉè* ??à?
6 J/ y7 }5 H; c! ~/ E m H9 D D& c
pLight->Specular.r = 2.0f;
/ G. X; v0 h' V* d, e' [' R
pLight->Specular.g = 2.0f;
# S8 y J2 P, f5 t6 k# T3 J3 V
pLight->Specular.b = 2.0f;
8 A2 n' p- z3 K$ B$ l9 x1 e( U
// á?oˉ
& n' N- f6 n2 ]: j+ @9 X; X
pLight->Ambient.r *= 0.9f;
k/ l+ S G/ w
pLight->Ambient.g *= 0.9f;
% o0 A2 G) ? R+ j
pLight->Ambient.b *= 0.9f;
) _9 v1 y9 x8 u# k3 w: ?
, I2 ~% h7 O: [' J: r5 S) `
memcpy( &m_light, pLight, sizeof( m_light ) );
( b' Y' W" E' s
$ y, W5 e0 R! ?+ o7 i
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
& O' o5 `5 O7 u. t0 E
pLight->Appear( m_pd3dDevice, TRUE );
2 b# s' m9 n1 ~8 y. P
/ ]+ ]9 V* t8 W/ b6 G
DWORD dwR, dwG, dwB;
. r# Z9 |# e3 c) j2 Y
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 o, C. Y7 P5 b" z: J
dwG = (DWORD)( pLight->Ambient.g * 255 );
: ^5 _ r/ d' }( c* p( { c( `
dwB = (DWORD)( pLight->Ambient.b * 255 );
. @) u9 a9 n+ @' M+ e" Q* G; h
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
u( u) Y' D7 y4 N* ~
}
7 b3 x- d: Q' ?8 `- N z5 |
}
) S2 }# W3 W8 ^2 e9 O
else
- ]6 \; B1 X( U0 w" Z
{
& A' s/ G' t' h* v7 I& Y+ D+ C
if( pLight )
m( q, u) P4 j& D" u! k: C
{
$ n9 C, W7 Z% V7 G8 x
0 h. G/ ~* k" t- N# O
int nHour = 8, nMin = 0;
3 Y1 J& K+ S. x
#ifdef __CLIENT
/ n8 W& y' D6 G4 J, i) O' W
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
; ~) V+ z. w0 D+ |3 h9 b
nHour = g_GameTimer.m_nHour;
: I) H6 X: Z; r6 s T5 V p
nMin = g_GameTimer.m_nMin ;
1 J( F6 `) ]6 V, ^( p" |
#else
# n8 k/ m3 W% g6 n' K8 W J
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
. j& x' b% R# F; v7 {+ `
if( m_nLightType == 1 )
* J/ a5 k) D1 n- Q" i+ \# R
nHour = m_nLightHour;
4 G5 z! b. F; [- e
#endif
* l6 h+ |. @5 x# f _9 z
nHour--;
9 N, S. Y" T! {. E- d
if( nHour < 0 ) nHour = 0;
6 M# Q9 _ p: q$ R* ]' l( h
if( nHour > 23 ) nHour = 23;
0 C1 y9 V. b7 ~* `+ _$ m
& u7 u7 L+ H- U" a
//if( m_bFixedHour )
" H5 q2 W0 Z$ U1 l. X9 ~
// nHour = m_nFixedHour, nMin = 0;
( Q8 h6 X) L4 e
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
3 L O; o2 v" o$ d$ F$ Y6 ?! X# Z
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
. _ n7 O& J8 u ^6 b Z
1 N3 R& g% Y6 U, [
//m_lightColor = lightColorPrv;
1 I* O* ?9 P3 t9 f" v9 W, Y9 W
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
1 b3 V! U v+ d3 n6 j+ g* i0 E
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
5 u7 S# v8 I! ]# T; ?4 t$ D% h
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
" V, v b9 _( s+ G
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
( L5 k0 y9 s0 N& _2 W' w
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
( @' N9 ?. W+ q- C& c' f
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
: F4 o1 ]8 x" S' t+ C+ h# Q
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
: Q, | m/ E3 _: _* F+ e
, I( j% h" S* M$ g" S, o
// à??μ oˉè*
6 m; N* [" @$ q2 A! q
pLight->Diffuse.r = lightColorPrv.r1;
8 e- e( [. I6 o+ U
pLight->Diffuse.g = lightColorPrv.g1;
% S/ x3 M( x, R, K- R
pLight->Diffuse.b = lightColorPrv.b1;
4 `- A4 q5 `8 W$ b& T" U
// oˉè* ??à?
/ }3 ?. W, R, `8 F# _6 |& w% ]8 {
pLight->Specular.r = 1.0f;
8 v5 w. Z/ {- G+ R+ u
pLight->Specular.g = 1.0f;
2 E! x0 v4 A+ o; W
pLight->Specular.b = 1.0f;
: U- ]+ h: L5 N, a& t
// àü?? oˉè*
% C. U8 ^6 K& ~' T" i
pLight->Ambient.r = lightColorPrv.r2;
7 a& I4 s F. q$ ]! L
pLight->Ambient.g = lightColorPrv.g2;
: z( G7 z. N( a/ y. z4 O( ?' r
pLight->Ambient.b = lightColorPrv.b2;
/ D6 I" T& g8 [- e/ e3 u, @
. X9 S1 P7 ?# v7 } f1 K& F
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ i4 j8 J& f( Y) w; p" q9 B s. O
{
U0 q3 l8 n3 q/ X
pLight->Diffuse.r *= 0.6f;
5 e+ I' L* i# r1 N# K: S" i7 l
pLight->Diffuse.g *= 0.6f;
6 ^& u* _! U L- g
pLight->Diffuse.b *= 0.6f;
3 j6 x1 n' D* F! X) k6 J4 L
pLight->Ambient.r *= 0.7f;
; G6 X$ ` T* e7 u
pLight->Ambient.g *= 0.7f;
7 Y+ y# u) p+ u9 x: J+ O) @8 P
pLight->Ambient.b *= 0.7f;
& h$ j0 I4 }1 X+ Y7 @, t
}
) E# V6 t/ W3 x5 V+ ]) Y
$ Y: w, P `0 h+ W9 G, d& D: w
#if __VER >= 15 // __BS_CHANGING_ENVIR
: j6 g& `; k$ t- U7 \6 X7 G" r
if( g_pPlayer )
9 S: z7 Y: q" D# i
HookUpdateLight( pLight );
" z0 `8 C& J9 e3 i
#endif
O+ }+ a7 ?* V
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; [' I3 t7 S! i; ?* L& a* L8 @
# H5 d2 n5 e$ M& k
#ifdef __YENV
" [; Q( h4 Y8 h& O7 q2 e( k
pLight->Diffuse.r *= 1.1f;
3 B6 s' G/ A: `8 ]5 ?4 B0 a& _( i
pLight->Diffuse.g *= 1.1f;
7 Q& I0 a" y) z' r: F: I- L$ C" i
pLight->Diffuse.b *= 1.1f;
% c7 R" ~6 C( q+ b9 q6 i
// oˉè* ??à?
4 Q, a. ^# t$ S: B2 d
pLight->Specular.r = 2.0f;
$ o, S" ]' g2 \
pLight->Specular.g = 2.0f;
+ [: z! v% B) E$ [7 I! p
pLight->Specular.b = 2.0f;
1 }9 t) P8 X% y7 g. c% T
// á?oˉ
6 Z" W) [9 h8 ^/ N# b
pLight->Ambient.r *= 1.0f;
- S; f# E' r( W) `+ v: \
pLight->Ambient.g *= 1.0f;
0 q9 K6 k2 t. i# c
pLight->Ambient.b *= 1.0f;
& ~8 O& J! t4 ~! U9 f1 f
#else //__YENV
+ ]: A( F9 x! V
pLight->Diffuse.r *= 1.1f;
, w+ B$ K" V6 f8 s# T
pLight->Diffuse.g *= 1.1f;
( l( I/ G0 v1 F9 }2 v E
pLight->Diffuse.b *= 1.1f;
5 L: y- v# B" K: b( q
// oˉè* ??à?
% K5 [) L8 d8 }6 O. k/ Y
pLight->Specular.r = 2.0f;
* ?6 h7 @8 t) ]! t' y8 L# i2 W% K
pLight->Specular.g = 2.0f;
" T! p' ?/ Y% H! T( b& I5 ?! `, p
pLight->Specular.b = 2.0f;
6 C! {( h$ a& @* u, v- B
// á?oˉ
3 ~( I+ Y$ {; ^) V* v, A; @
pLight->Ambient.r *= 0.9f;
* U6 s' {! ]/ c7 D+ G2 H
pLight->Ambient.g *= 0.9f;
/ [$ W: g: a; w0 i# H/ G4 R. h' i
pLight->Ambient.b *= 0.9f;
+ ]# C r" q! d3 d1 @ q( L
#endif //__YENV
0 q4 Z% s$ I! m/ l( q$ m/ ?
8 h- l0 O- `6 y- [3 A' G! U2 y, A
memcpy( &m_light, pLight, sizeof( m_light ) );
) Y, D1 J! C$ m8 S
1 W/ @- N5 ?6 P5 t: C
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
- w$ w k3 ]; X) V- @
D3DXMATRIX matTemp;
% |+ \+ V1 ^, D! {
static const float CONS_VAL = 3.1415926f / 180.f;
, Q1 g* P, h7 E$ I* z- N
+ o2 d& C: Q/ y0 _ U9 D
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
q y7 _, ~. {& H
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
: }6 d& U9 D2 y3 R
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
9 E& u& d* F. P# ?
pLight->Appear( m_pd3dDevice, TRUE );
& h5 E7 D' h7 `) y4 l
5 x8 z# w9 v* |9 @6 V" f: S
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
( Z# p5 ?9 k+ N D6 p6 p7 a
// D3DXVec3Normalize(&(vecSun),&(vecSun));
- w ^" v5 g+ N4 _" k' N
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ y* _# d! K8 g1 f
: x, s; \# c; m, `
DWORD dwR, dwG, dwB;
; M5 J; s5 g q5 y: e
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ N+ G/ [% G! g- ^2 t# ^; N7 s% r; }* t
dwG = (DWORD)( pLight->Ambient.g * 255 );
' Y4 r0 G8 j9 W
dwB = (DWORD)( pLight->Ambient.b * 255 );
& i6 J! N6 Q$ F# M0 \6 z. j
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
& O$ r/ n3 _+ T7 o# b6 m# R
}
% o. u1 z, z5 A( w' M1 B/ Z
}
4 |" k3 B# M: E. h5 q5 v
4 c+ O: I/ K: T- J; j1 V3 y
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
5 ]! @' J4 o7 X. X1 y- S3 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) );
* u! w& ^$ N6 c H1 K2 o$ `" J
::SetLight( bLight );
1 M6 I$ c' c7 }! W/ ?3 j
6 D+ x9 q+ |0 m& B
// ±ao? ?D?í???ó á¤à?
) ^4 n6 h/ o, M; \5 }
m_pd3dDevice->SetMaterial( &m_baseMaterial );
% T Z1 l# j }# U$ s3 I3 t
5 V, _3 r6 ? l1 i/ R7 J1 K
#endif // not WORLDSERVER
/ ^$ L* P" p A" S. `' L
}
+ r5 x# B6 d& b8 x0 S3 b
并更换
. D# I4 J6 v4 M. b9 Y% H3 ]4 e4 g
Code:
; B% u" r+ v0 b+ V! h
__FLYFF_INITPAGE_EXT
5 f5 U! ~. k; P- A/ [
定义
, \/ I- Z1 C9 ^. D+ y( t
& W1 c6 y8 s) a n
; x0 O' n- g/ |+ C/ L: y
4 [7 i" c3 h: |# \5 |
& X F1 \' @* r$ W( H2 e. I
现在终于删除我的狗屁加速...
7 R1 m8 ?7 E: i* E% `
: u1 Y4 m) f2 J6 C( a( E
6 y/ I6 E+ F$ a6 j+ h. M3 L
. F; J, b7 b7 E) P
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2