飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
- A6 u% k# V% ]
尾翼:
& g- R/ {/ }+ s3 n/ X
& e0 Y6 G8 V) o9 \. J
代码:
% C, A0 r# `+ i& r! R6 `" A8 b
CWndAutoFood::CWndAutoFood()
5 u C! Q/ h- ~8 o( F4 a# G
{
4 K0 u: E/ _3 ^2 M9 o# L) R
m_pItemElem = NULL;
7 |, i+ Q0 _; \ {% x2 f. ~( I5 f0 z1 u
m_pTexture = NULL;
2 U" i8 L: L) s. z3 y5 L
bStart = FALSE;
* h8 g8 \) u( Y; b
}
% L0 O5 _; [2 z% @" B( p4 }9 t
" h5 R+ k: E: |4 V# N/ M a$ i
CWndAutoFood::~CWndAutoFood()
. K# f) _. ]6 T" z' R/ Z
{
, P( S+ C I7 P6 s$ k! R, ~
AfxMessageBox( "AutoFood ist gestorben
" );
2 t z+ p4 U; Y' g
}
5 C. u: Y9 |. }' o
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
7 C. d# D0 j9 n$ V" J7 C. V* u$ c
{
* U2 Q6 Q0 Q1 R( F! I% ^
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
: y: H4 n- B' Z
}
* F% ^6 C$ J$ f2 Q$ f, }, c
/ b( F/ u# X' `
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
6 E; r. @+ a: B/ [$ |. m$ ~( R8 e; [
{
+ |5 n9 m( ?. d% f3 _% n
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
, _1 u0 y( b4 P
CRect rect = pWndCtrl->rect;
0 ~, z8 W# Z) k3 L
if( rect && rect.PtInRect( point ) )
6 U( [: @ l g! T7 q5 I
{
4 i( m9 E" l r7 J9 ]; z
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
# w/ T5 n4 I/ Q+ U' G
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
# M& \5 g; ^* b4 j( h
{
7 E9 W7 V7 ]$ P; o' p7 U$ I
if( m_pItemElem )
$ \- c6 N+ E& E$ [ A/ R' i' a
{
$ A7 `# [, z# Z$ Y2 b0 [
m_pItemElem = NULL;
; O g6 _- |0 O( M# Z2 n
}
2 `" H% P- V7 y8 s/ j+ I
m_pItemElem = pItemElem;
9 M' ]3 Z( Z7 `8 ]
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
% i& A2 L; n9 F( v; J5 X. N' r
}else{
& D2 I; A8 M: e6 e/ o6 F
SetForbid( TRUE );
, o$ L0 j$ y( }5 h+ R1 B8 b
}
! Q, d1 S9 z5 P/ ^ J7 P
}else{
7 F; ^3 o/ A! \4 Z/ r4 X- q3 V* o+ `
SetForbid( TRUE );
$ B, d: d" O% ?: J, d; c3 m( W
}
0 x6 W N e. V2 K% i1 w
return TRUE;
3 u6 _# `/ o# L+ L/ Y
}
- \, x1 U8 J) u5 K% j
; |7 ]* j' D! b( j
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
7 u3 b: H; O" d( N
{
& E( j0 t5 U+ X% z0 O* s
switch( nID )
0 p {8 U: j6 u, y h* Z2 G# ?
{
n! l6 f8 h* D5 m3 d
case WIDC_BUTTON3:
0 t; ~5 p1 o1 L8 q
{
& Z" d* r' a; \7 {4 q0 a
bStart = TRUE;
}+ ]% B, x6 H; h: D
break;
7 E3 V: d6 Z* L6 X+ z: I7 R% g
}
( ?4 F0 p0 O5 D4 L: y, X$ i2 x
case WIDC_BUTTON4:
. E; M A( R* O3 O$ A# _
{
8 P0 L% i' N5 ~- V" M& e8 e( o9 u
bStart = FALSE;
) V4 P. _6 G9 p
break;
b" f% o A. T7 O3 l# O& [4 W
}
+ l( [8 y& V1 g1 A/ @: S
}
6 N+ \4 M1 e: A$ E) p
return CWndNeuz::OnChildNotify( message, nID, pLResult );
5 D, Y+ c% s& K4 O2 a( ~
}
/ u; ]3 o" J; x
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
' n) U, }. a/ C, I& z& y( c
{
8 R% J0 C" o" ^* Q( l" H4 v
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
v% G3 D0 y) y0 q& x7 w- n
if( bStart || !m_pItemElem )
& E# M6 r E, F: J% p$ B! c' U3 Q0 J6 L
{
$ i6 z3 s# @ {6 j4 p
pBtn->EnableWindow( FALSE );
2 [! d8 ^6 e2 M% E' m
}else
7 y4 U; c* B, f/ l$ _2 m6 I
pBtn->EnableWindow( TRUE );
. |) B& [) \* \
if( m_pTexture )
% J& [5 b! S# J6 p# J
{
" Y6 {- C# b) B2 W% e5 G7 s( j4 U( i
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 N. v+ ]& ^) _
if( wndCtrl && wndCtrl->rect )
7 ^ A' [2 N2 X- r
{
; e: U# X' v9 K0 t9 J; u
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
3 z1 ?+ _* }9 r
}
, S6 V: y) l( R" d" ]" K
}
, T( j1 B2 q0 w! f& {
}
2 i4 c5 ~6 C: b8 u2 t+ X- W
" J! }" k- s) o1 u! C+ _
BOOL CWndAutoFood:
rocess()
0 g& V8 V ]( T7 ]' b' t
{
" A1 R* ^) r1 Z& |5 D
if( bStart )
" i4 r* q4 @' r* C- x
{
7 b; c- k+ ^3 A+ Y
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
1 C. E3 t8 K8 R2 [! V9 ]$ B5 k
{
$ n c5 s0 a% b9 d2 ^- r9 n" \1 ~1 B1 ?+ q
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
: N) U$ t& @6 @ q
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
8 S& n7 E% H! j$ i+ \' ~
}else{
1 W3 F: f2 `. o o) L! N9 |
bStart = FALSE;
" v% }# Q* n0 \3 B0 Q0 v
m_pItemElem = NULL;
& Q, U$ ^ w# h2 Z* X$ b$ W& a' P
}
. I# r; C2 ^' q
}
+ C3 g# v. h8 |0 g/ C. @
return TRUE;
/ A: n; n+ z" v" h9 G
}
/ L& t! ^4 K5 i/ f
# }# {! `- Y5 C0 w% x) q: |
登录视频废话:
5 y* }3 ?: Z( q; l: V; [, Y# }& E
尾翼:
h0 U* W) H* k* D$ ?7 E9 `" a
3 {* l& c; Y9 J0 I
代码:
1 c$ b7 c D8 H- v% Y
* H# G2 t2 e! t4 [
void CWorld::SetLight( BOOL bLight )
7 |+ i5 ?5 y M# r, x& ]* |9 s
durch
# T7 c$ k2 a' z8 K2 C2 P
Code:
( d' c. `( q! t
void CWorld::SetLight( BOOL bLight )
U) V/ Z. X4 j- b6 M9 ]
{
3 S3 c. Y) {& Y# W/ z& ]/ y4 o6 Q6 N
//ACE("SetLight %d \n", bLight);
7 n# C+ B8 K' f* V# a: u n7 ^
" v$ E" r- f, U" f; a
#ifndef __WORLDSERVER
L9 ` K( [) d
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
( I* Z3 z7 d1 G$ |
CLight* pLight = NULL;
R% ~/ _" y( D8 }/ p) i5 H
% P! \' v: I2 ~& ?* n
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
2 E5 i1 k: o# J' ~# @
* T" A d0 E; `8 i$ Y
pLight = GetLight( "direction" );
9 l7 ~! C* e& ^( C& M. s4 a9 v
1 |* Q9 x3 y, W2 {
#if __VER >= 15 // __BS_CHANGING_ENVIR
: d- C% A* R' f
if( g_pPlayer ){
6 K0 x5 K5 Y& _- N
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
7 o0 k4 Q j Y
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
" l- B5 V! t7 e, t2 n; K
{
. b I y3 e% u6 b0 L4 M/ E
if( pLight )
! ^/ X, V8 B A7 p$ S
{
! N0 I, @; f0 x. z1 P& X
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
; n& `4 Z; E" \5 A( Q- }
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
% O0 z5 ^2 G, x8 p' n
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
3 p0 _' Z# W {2 B; K/ e" h3 U
5 u. b" I* F }0 K7 C! t
pLight->Specular.r = 2.0f;
* I, R- `8 V. a0 o$ q$ c! @: D
pLight->Specular.g = 2.0f;
; W9 r8 e9 S3 i: |" [9 I4 N' {
pLight->Specular.b = 2.0f;
3 Y$ z; R8 n Q7 I
3 }, Y. D' A* n* v) V+ a/ i
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
& ^' g! O2 Q0 g) S+ T
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
3 j$ s% X% a# p$ N
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
8 {- i5 U2 p3 e# h( Q% _
1 v1 D; S @2 N% Y6 {4 u
HookUpdateLight( pLight );
' t1 b, H' ~+ F+ T/ ^: l
6 e7 R6 J+ N) Z( o4 Z' F
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 D8 e+ W9 H! V4 R( m
8 H4 f# h, o" m& J
pLight->Diffuse.r *= 1.2f;
" d# T h) ^* {/ z5 n! F
pLight->Diffuse.g *= 1.2f;
! d* p0 t/ K/ l I" k1 n& H
pLight->Diffuse.b *= 1.2f;
; w' [5 n% N: o% L! l8 I% B6 m
; ?# q1 o" W% @( Q
pLight->Ambient.r *= 0.8f;
1 _3 H; G7 ?* T3 p( q
pLight->Ambient.g *= 0.8f;
( C! M# b$ `6 e$ w0 H2 p% g
pLight->Ambient.b *= 0.8f;
0 O) @! K/ {8 k7 g0 c
' i8 n( j9 O2 `$ V4 h
memcpy( &m_light, pLight, sizeof( m_light ) );
7 Y) n# C0 G% v
p- b9 Y8 i+ e$ \7 a
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
0 A0 ?3 N3 Q8 R) i
D3DXVec3Normalize(&(vecSun),&(vecSun));
4 E4 t+ O3 ?2 h- Z# c1 c- x
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
4 `. W3 f) ~ Q9 ~
pLight->Appear( m_pd3dDevice, TRUE );
* K5 y9 e/ z7 v8 G
# E6 H/ {) p, j9 a6 J
DWORD dwR, dwG, dwB;
7 U7 v0 O5 N& |4 w) }. q; u7 q0 E
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 f9 W% u! ~. Q* E
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 ~0 r- D& Q! T& K# M, u+ Z9 p
dwB = (DWORD)( pLight->Ambient.b * 255 );
7 l2 O7 p8 E5 a3 j3 q! c! F) J- G- F
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ z" j. l3 {. Z) C
}
/ \9 B( A/ r1 }& r2 A8 v
}
4 K, j$ N* T9 ~; R# C# I3 ]
}
2 y* i3 \* W" @6 l6 N
else
3 D& l. @* M! h9 w& O( Y
#endif
8 W5 h) p: O' a% ^
7 x( j# k5 ^/ e \9 |
if( m_bIsIndoor )
, v) m% v- `3 Q3 b _
{
% g( Q# u6 M# ~% c
if( pLight )
! h7 J, e8 W. h- U9 G
{
# P/ f/ A0 Z1 V7 H x
// à??μ oˉè*
* H( Q: T- N' q& H0 u9 [
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
+ I o& n6 I; X) U% ~- |
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
0 T; Y( [0 z# B+ v4 U- a* D1 ?; d8 h
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
$ M7 M; Q' l+ d. ~9 W+ H( [1 t
5 S7 d$ b7 u( f) W' w: O0 g
// oˉè* ??à?
- R( U. w4 Q5 ^
pLight->Specular.r = 1.0f;
/ q5 v9 M/ {/ ^( J9 t0 n
pLight->Specular.g = 1.0f;
# k9 J9 e0 S; [6 \6 N1 @" d6 Y
pLight->Specular.b = 1.0f;
( v0 R( x% [& t0 `/ W
// àü?? oˉè*
; L& _& U! V" M9 c) Y9 {: H
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
+ y- U% B! [8 [; U! f
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
" v) g- s' M+ g% x4 m
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
+ ^; n1 p' [) | a' z# w* [
, P* u* z$ \3 k
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 `) F- O) d3 k/ r1 \/ f6 H
{
' y u# t! B7 q6 {" \
pLight->Diffuse.r *= 0.6f;
- H9 K r! ^6 d7 y- q) H; D
pLight->Diffuse.g *= 0.6f;
- q. }0 i$ O& N1 N0 T
pLight->Diffuse.b *= 0.6f;
3 P# Y ~' b6 D8 a
pLight->Ambient.r *= 0.7f;
- v8 t5 \3 }6 R2 H
pLight->Ambient.g *= 0.7f;
8 r' l& P" l+ M" d
pLight->Ambient.b *= 0.7f;
j0 `4 R2 J. q7 F
}
4 j! P) p" B, _6 y0 B3 i' p5 E
( A! G1 u3 [1 g* h1 `- v w9 z
#if __VER >= 15 // __BS_CHANGING_ENVIR
" n- @" b& V. Q; y5 z( r( N
if( g_pPlayer )
" \. P) P% C- m' ~" W& x& @6 i( Z8 h
HookUpdateLight( pLight );
5 l2 L/ @1 m3 d
#endif
1 z9 O4 o5 D) B6 ^. ]& r" q8 i
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ `# N. }' P5 J5 T) z
& D/ f: J+ e0 [& t1 T, w
pLight->Diffuse.r += 0.1f;
& _+ N! `: H# v- Y- K9 a F
pLight->Diffuse.g += 0.1f;
) q7 z# s6 z7 K+ n
pLight->Diffuse.b += 0.1f;
" _) n0 c- B# i6 p! U# o% u. y& N
// oˉè* ??à?
3 G$ ~0 Y: X m; B
pLight->Specular.r = 2.0f;
. D( \/ }5 c* y+ L
pLight->Specular.g = 2.0f;
& N* ]2 o- j8 c9 p: {
pLight->Specular.b = 2.0f;
% B- ~1 u w5 w, p8 ]. n* a" b
// á?oˉ
- D5 O/ v* i# H; N6 A
pLight->Ambient.r *= 0.9f;
5 L+ _5 ]2 b, J3 F3 ^
pLight->Ambient.g *= 0.9f;
/ G( ^- h, e2 P5 w- T1 Z
pLight->Ambient.b *= 0.9f;
; O! j/ u, P$ W" r
* t; `* ^: K- i3 I# r% o6 \
memcpy( &m_light, pLight, sizeof( m_light ) );
# b: n* B+ [6 s( g" n: n/ {
( O. w; O9 V# d4 V9 Q' K: ~# D
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
1 l7 ~7 [3 J4 j0 B f7 r4 f- ?
pLight->Appear( m_pd3dDevice, TRUE );
# r F# O. h( ? E* `: ~
) u+ Q+ i; W7 o- o
DWORD dwR, dwG, dwB;
5 R/ e: I3 `7 N
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 w9 u# Z8 P: R/ L- [& ^. T, O4 E
dwG = (DWORD)( pLight->Ambient.g * 255 );
$ Q- L* H2 D3 v4 z* ]4 t' Q
dwB = (DWORD)( pLight->Ambient.b * 255 );
1 f( X8 E# e) y* R
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 M- G; T+ S0 V4 k* W5 M8 T
}
; j% A1 k- _$ a8 g
}
, y: u4 B, o2 h" D
else
& V* _: _! g* i$ M; l9 ]
{
0 `2 W% X% W2 K i
if( pLight )
& F/ c s, z. A4 |+ T& q: `0 n
{
; o" o4 a# l' U) L1 ^! q
5 p# A' T& }8 h8 t3 r0 W+ K; e0 i4 S
int nHour = 8, nMin = 0;
( V0 t+ U( W; m9 K* ^
#ifdef __CLIENT
2 G+ M7 v& f, I
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
, V$ I$ d# ?# b- z
nHour = g_GameTimer.m_nHour;
, G+ N+ f. a! w# P' d" D
nMin = g_GameTimer.m_nMin ;
" [2 c! ^, {1 M j2 m- z
#else
' D# w6 C9 B' a; P
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
$ N5 K f8 m" ], X. {* X+ K$ i) D
if( m_nLightType == 1 )
' E: s- L& V9 ^- i& ^2 H% Z: I
nHour = m_nLightHour;
# `. k' J/ ]7 f( H! L1 z
#endif
' p8 J, W" n" _% }' k: _" b' c
nHour--;
8 L! ~$ X7 o2 ?1 o0 U0 Z
if( nHour < 0 ) nHour = 0;
7 Y$ ]. j ]. E( N' U; o3 E( z" z
if( nHour > 23 ) nHour = 23;
+ C! s3 d; b2 t$ e4 l2 t: S$ C% V
/ U6 A" q. S- {, ]% f
//if( m_bFixedHour )
9 K/ Y$ ?9 f1 X/ ^
// nHour = m_nFixedHour, nMin = 0;
3 j* [8 B! ]! @3 K+ O% U1 ~
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
, u/ x+ L# p; Y$ x
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
% B( B& R# {, {& G- g+ O
. C7 \, Y2 ~2 Y7 B
//m_lightColor = lightColorPrv;
9 Y# W2 }6 d! L# \) V
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
: T, C. N1 I9 ?. X0 ?" E2 `2 L
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
, b* z+ n# m- \9 a3 V# ?, H
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
0 F) v7 V3 D* K v2 Q" P$ x2 l. c
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
& G+ \7 U0 Z, ^3 i
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
' F- q4 g# C' C0 t: E" ^6 r Q
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
, N# O0 d( |1 o7 ]: g7 w
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ u2 [3 ~. U) ~$ _
8 l) u& Q# t" ^+ ^- Y: B2 V* ~
// à??μ oˉè*
5 | P" [0 b8 |/ S& h5 y3 S" R
pLight->Diffuse.r = lightColorPrv.r1;
. V- x# x% ~2 |6 t5 F3 E: x
pLight->Diffuse.g = lightColorPrv.g1;
$ T: R6 t/ [2 w" Z8 B$ g
pLight->Diffuse.b = lightColorPrv.b1;
; X3 t" T, b! f8 G8 \4 i* c
// oˉè* ??à?
1 x5 J7 ^, [5 L) \
pLight->Specular.r = 1.0f;
1 h& m( H; \% X
pLight->Specular.g = 1.0f;
) k( ~& J( W. O- ]: h O2 f
pLight->Specular.b = 1.0f;
; F" X% u% R' H0 Q8 I! {
// àü?? oˉè*
6 b; }1 A, u/ n V9 g
pLight->Ambient.r = lightColorPrv.r2;
5 h- N" p3 h& l8 N" @, P, D
pLight->Ambient.g = lightColorPrv.g2;
- v4 R5 B( u* m5 E X& |: w
pLight->Ambient.b = lightColorPrv.b2;
1 [4 S% X$ F% t2 f+ e# t, C
6 c" L! V; m- h& @& \/ _/ D9 U4 y
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
. a( z6 @ Q( ~. n, A' m* ]& B/ a
{
+ G7 @2 ^0 @% g: V ?+ `) X# q: \
pLight->Diffuse.r *= 0.6f;
% O! l" ^0 K# c4 f8 Z6 |6 k# P1 C
pLight->Diffuse.g *= 0.6f;
! ?( t' Z: n7 L: y8 u$ B; t& e
pLight->Diffuse.b *= 0.6f;
7 j0 J) {- {1 j) r* @" R+ _3 y0 h [
pLight->Ambient.r *= 0.7f;
a% I3 o8 ], n; w# P. D, `
pLight->Ambient.g *= 0.7f;
% k# W7 f4 j7 \1 W
pLight->Ambient.b *= 0.7f;
. K7 W! B, T+ b U B
}
( L7 l) I6 P3 R9 }5 Z, Q
4 w, k2 y6 N5 p$ Q& G
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 y/ t2 ]1 l6 D- A, I
if( g_pPlayer )
' ^- U* _3 J) X6 d9 X$ @
HookUpdateLight( pLight );
8 Y/ S7 T6 S1 `9 w* |; J, ^' E
#endif
4 _8 n! l0 g$ `9 j, P c' i
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 N1 W1 U$ Y+ w0 S" n. D
% ~9 p, A, f3 R7 Z
#ifdef __YENV
8 R3 r# f% x6 _( }
pLight->Diffuse.r *= 1.1f;
* c; V& s' v# |6 u& U$ X0 a
pLight->Diffuse.g *= 1.1f;
) m3 J6 O- V( ^# w3 e/ f9 e; R! z
pLight->Diffuse.b *= 1.1f;
& @7 p5 A% _& r0 U3 }# @, Q
// oˉè* ??à?
% ]/ X! m+ J; [2 G% M2 P |# X
pLight->Specular.r = 2.0f;
; A, }; x* Y7 X! A3 ~9 o, Y: F
pLight->Specular.g = 2.0f;
7 }5 a; |" x' r3 F, f& ^
pLight->Specular.b = 2.0f;
" B4 ~" V' ~ u' S- k/ r9 e0 h
// á?oˉ
% w# _. d1 F* N" h6 B$ t8 ^
pLight->Ambient.r *= 1.0f;
. V2 \9 F" a3 ~
pLight->Ambient.g *= 1.0f;
! C1 k. N% m, s- U& ?
pLight->Ambient.b *= 1.0f;
2 _; N' A Z4 Z$ J' y- v" A
#else //__YENV
3 F" J `' w6 k+ r0 `
pLight->Diffuse.r *= 1.1f;
: L6 S. Y/ \: {, S1 U
pLight->Diffuse.g *= 1.1f;
! n+ |- e7 x) O* H1 f& i& t& k
pLight->Diffuse.b *= 1.1f;
; K) }3 r. t$ K [' Z% u1 O3 ]
// oˉè* ??à?
. H$ ^% G& n6 V" @ O
pLight->Specular.r = 2.0f;
+ e/ [# E% Z$ Y. H P
pLight->Specular.g = 2.0f;
! M$ p5 Q4 G2 G' y; k8 n
pLight->Specular.b = 2.0f;
: u H6 ^: l$ {
// á?oˉ
! @+ a/ ]( R% K6 a4 s3 l2 j6 k6 T
pLight->Ambient.r *= 0.9f;
( i5 @; ^/ f, @ D; _/ R `4 o! o
pLight->Ambient.g *= 0.9f;
' J" q( Q0 [& F( m+ Y# m/ V
pLight->Ambient.b *= 0.9f;
% G( }) i! Z0 m! j O3 e* D9 e
#endif //__YENV
3 h% X ^& I$ C% R' u
# M5 L2 S( B# N; ]8 W
memcpy( &m_light, pLight, sizeof( m_light ) );
% d7 g& p( s$ s- m
! K4 I9 w( ?) h2 T | E* \
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
' u7 u2 s2 T5 U( P1 P' q5 \
D3DXMATRIX matTemp;
: {, v' \7 ~; E; R1 j
static const float CONS_VAL = 3.1415926f / 180.f;
) d8 [; e, f2 @% b) w$ [
/ f/ p$ L+ d+ |1 Y) S
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# B8 e1 B( U9 `7 ?+ @/ B
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
3 h- ?- } H& N: {( ~
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
0 I" b* G# {" [9 {! r$ a4 T
pLight->Appear( m_pd3dDevice, TRUE );
. a( T: d+ f0 }5 }* m! F
! N8 b* S+ L% t3 D! j& p
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
. g# S" a4 P0 I. X. B
// D3DXVec3Normalize(&(vecSun),&(vecSun));
/ W: N- q' ]- e. w2 F* h
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ P% F, X* D) o; v$ ?
$ C7 [" q. e* _' R2 W/ `+ n
DWORD dwR, dwG, dwB;
3 S6 {# ~3 a9 U, B2 q- @/ b5 t
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 A: Z9 Z4 `7 _2 J1 S1 d
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 L& G9 G, [# R1 B3 Q6 b
dwB = (DWORD)( pLight->Ambient.b * 255 );
) y& ]) V: X$ N0 z9 p7 Y' u
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* n$ X8 P- U' u, _+ @& W* Z
}
& C; P8 k; j' Q K t
}
+ D( @ T S" o f6 o- A/ Z
9 l7 J4 w7 H T% _! c& J, M8 p
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
2 V: X7 ^9 q1 z2 H+ t! s. U& k
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) );
7 }! I5 d) P! \0 V; g
::SetLight( bLight );
1 r% j1 w, m$ i! e$ R- I
& \: f0 B! m& G3 ?3 X
// ±ao? ?D?í???ó á¤à?
) y4 h% z" x7 X- M4 v0 A
m_pd3dDevice->SetMaterial( &m_baseMaterial );
- I: r* L, p7 G% G
$ C( I6 M! N4 a3 P
#endif // not WORLDSERVER
9 R8 G2 f/ v3 l E7 e* X
}
" k+ z& [% I5 ` g8 ?9 P6 ~& r, E
并更换
. b+ T7 B/ M2 [6 K8 X
Code:
) j/ l: u2 _) t$ D- g5 [4 A9 r8 C
__FLYFF_INITPAGE_EXT
* l" Q2 y; q( Y2 _; I" \) p# h
定义
. e2 C1 a7 B' L( A- Y6 `
. Y6 m8 l \! D: g8 f
& \4 z* t+ Q/ `- s3 Q5 t
0 a. X2 l. \0 r, C
5 j* P7 q7 ?5 |% A6 i \
现在终于删除我的狗屁加速...
9 w6 n( G! g) j% R
1 s! x# `( K9 n- S& }
" u/ m8 [( ^* f$ B% W
: d5 ^ k% l) H0 x& t0 t1 y/ L
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2