飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
+ }( c* \: E# K$ n) J, g S5 G1 U2 o
尾翼:
" O; G Y; k$ z7 j
: R9 t' K) y5 p4 N5 T- o9 a. e8 l
代码:
. E8 U8 ?4 g$ ]* ?- ?
CWndAutoFood::CWndAutoFood()
7 D- h- s: {4 E8 n% K
{
- m7 t. p7 `2 D& Z' t
m_pItemElem = NULL;
6 n4 p3 G0 P% k( N' U4 L! A. d5 X) P
m_pTexture = NULL;
; j) M+ g1 v' b5 q) ?
bStart = FALSE;
7 _$ C# a' g: g
}
) k) \8 Q/ H6 W( r- i7 m) ]; y
* D" K" E3 z; N) b3 v( X
CWndAutoFood::~CWndAutoFood()
2 n+ s4 C0 w% r+ z* T
{
( ]6 q" ~8 C# s4 F* }! O0 N
AfxMessageBox( "AutoFood ist gestorben
" );
* q$ b" S% J1 ~
}
% B d! f" ~: E; s. o' q4 a
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
0 Y0 x, G4 E! y) L" Q0 [* p
{
. r% n% L. `' L) e- p
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
' `& r4 N c# k5 }; Q2 M; X
}
4 H, F% o4 z7 V$ f
" H/ ^/ u9 q* ]; @2 p
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
% m$ T+ u" Z4 p" S5 Z
{
" @5 @" ]/ g: M K' [% o/ v
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
; C7 v! o B5 `& j3 B6 X2 q! R% a
CRect rect = pWndCtrl->rect;
- L9 m3 Z u% j0 |
if( rect && rect.PtInRect( point ) )
0 k7 @) q: s3 h" z! f
{
- j0 T1 A9 i! V4 }, h6 a
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
: p6 W2 i) O$ ^7 u, Y
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
; f: [/ W; g% n- Q* s
{
# d5 }2 `/ o6 e; b6 v8 H# B! c7 h
if( m_pItemElem )
% r. ^) P/ U5 f" ]- E
{
$ V8 }) U: ?1 c+ W3 W T3 P p$ _8 x
m_pItemElem = NULL;
0 I, O! q( G5 X1 B3 c, w
}
/ d: g0 o! G" h9 N+ Y8 L
m_pItemElem = pItemElem;
7 O: D9 Q7 M( |2 c( t8 i* r9 z
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
% _% D% f: Q) K/ Y2 v& \
}else{
1 @; A1 p( s. `2 f' @! r
SetForbid( TRUE );
& C6 B* B0 g, N: f' \* i) q
}
2 \. \% N- u! H. s
}else{
3 f6 c1 d, j5 i9 t. b# k
SetForbid( TRUE );
; z1 V! |' q$ ?! d$ f
}
9 l& R1 Q$ [7 D! E Q9 U! m o; U
return TRUE;
' |4 K/ j/ T0 ]4 H0 H
}
2 R7 c9 }7 k9 w
9 O9 o$ y R" v B2 R
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
8 q* a1 g7 ?/ Q8 b( W x" ?
{
3 f' d/ y3 X, u& W1 b! D
switch( nID )
) |/ @' l$ d1 O/ |
{
$ x/ b1 _" S0 X" f- w7 C: F0 \' w
case WIDC_BUTTON3:
# l( o( h4 T: d
{
& J$ q0 d5 E" f" Z) T( S d# k: K
bStart = TRUE;
0 L6 P }; J8 d4 n: I
break;
" D8 l4 \, i) J4 n: p- J7 S4 W2 q
}
. X- g! N ~/ r; m N2 y
case WIDC_BUTTON4:
2 n7 ^* f7 L1 J; b* a9 g. x5 X
{
2 U" H4 m5 N- V/ {3 k! A
bStart = FALSE;
( y; G7 d* F+ _' Z8 ?$ x
break;
! J. h# \7 ^ R3 E2 q
}
: d# d4 J' J9 C+ Y' L8 p" y
}
8 v9 i3 ?0 W" |" @, m @4 X* t. R, A2 e
return CWndNeuz::OnChildNotify( message, nID, pLResult );
* e/ O! ~3 a- I+ z k: Z
}
8 W* w9 ]+ z, \' V
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
9 ~- r4 x1 H! x' R) z
{
. l# e. ^' V: |( ]
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
+ q+ _ K Y2 i; N* V
if( bStart || !m_pItemElem )
" `) J" U! ? a+ Y1 p$ Q% R$ ~/ }0 r
{
! o" J- P# Q4 C* S
pBtn->EnableWindow( FALSE );
$ `9 a8 ~9 M% H1 f N
}else
5 N& g8 x. V6 v" C
pBtn->EnableWindow( TRUE );
0 \' l P" _2 x+ p5 d+ q
if( m_pTexture )
; _4 N1 E* u; Y5 G
{
$ v2 @0 u2 S* d P* i$ @/ ^
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 L A( P) f0 J# r5 J2 u; A
if( wndCtrl && wndCtrl->rect )
3 c1 Q& J& y2 i
{
# i6 R _% i! o/ G
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
% f& }4 h7 t$ l4 H
}
3 M0 ?8 _: g, N) u( d5 m) t
}
1 n" c; ~' q0 A
}
' l$ U1 n$ R, f6 B
/ b# t+ B8 }( b; o M8 H4 J5 ?! c+ J
BOOL CWndAutoFood:
rocess()
; }& J! R$ a3 V& M) G1 L; C& o n
{
/ y- U$ H, z) X) a5 W+ H E$ h; c, f
if( bStart )
; m \2 C% |: h9 @: L' b
{
6 Y( g" ^" J9 |4 {
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
% F) ~+ c( T3 ^1 j/ Z3 m; H9 u
{
) Y3 n" u: y! r8 M9 y& m) j; e' V( J
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 p2 c1 }& ?# p0 Y. ^
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
0 d7 _: d7 f5 M _# A$ o
}else{
! g- F1 I8 n4 B" B, l2 X: G$ @7 Y4 p
bStart = FALSE;
1 o2 O, q% e6 A9 K1 P
m_pItemElem = NULL;
: I' @, u5 E& P1 E2 j
}
- u) v4 Z+ ?+ g0 R4 k: j
}
4 b5 @8 ?" p! e
return TRUE;
. U" s& F% j2 A
}
; F9 \, E) C# M: K: J3 M/ }; j4 E
/ M' ^( k+ F0 F+ P% f
登录视频废话:
2 @5 U/ k Y5 c- R
尾翼:
+ z+ g2 R1 P2 b# ]4 _
# f' b( H& ?* X$ C/ B2 L3 G7 G
代码:
, D: x* w5 u" h( d
! k$ M4 c9 `1 p4 g7 E# t
void CWorld::SetLight( BOOL bLight )
) y# x9 J Z9 h3 s" F3 I
durch
8 ~" ?4 C0 a" j9 Y! a
Code:
. p. Z) {" y! g: S3 L4 l4 g; `
void CWorld::SetLight( BOOL bLight )
# l) c0 F& v/ L3 @/ P7 {6 ~- G
{
; z. v, m: p0 S/ }
//ACE("SetLight %d \n", bLight);
3 Z% V( q5 L' e. ~' ] j
$ g% A7 ~$ n L
#ifndef __WORLDSERVER
) u5 Q9 `' v; T# x4 `% [& |) W( \
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
; s* l" B! W0 \, b
CLight* pLight = NULL;
" C0 @+ ] a5 f+ _
1 E4 f& w- v/ W' c' y" m2 V' E: g
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
& d3 z$ S) j6 L! ~. B7 f
8 x5 ~ Q1 g9 m7 ?& W. y( t1 s& c
pLight = GetLight( "direction" );
4 ^. Q/ u; Z- V+ [$ j% U+ D
, Q( g8 }) m3 n- k" W& ^! h0 _3 }* w
#if __VER >= 15 // __BS_CHANGING_ENVIR
8 L+ S) [: F9 d8 U
if( g_pPlayer ){
, c) g6 N$ d6 N( U
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
7 ?7 S) b* Y+ {
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
1 p3 E7 o" a' d& h- M8 o% Z
{
/ I* y6 ~. Y# M" K! d$ _* N
if( pLight )
3 {6 Q1 `2 Q' N: R1 p: z9 s
{
0 R* c5 \! k, T$ S8 o" X
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
: R& n: f7 x1 J
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
6 t. L+ q3 H5 Z' Z' W2 V1 N
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
+ v2 f) Y: J* K
: u# N+ X+ A5 |3 p: z! K/ a
pLight->Specular.r = 2.0f;
4 N& R. d2 r. M
pLight->Specular.g = 2.0f;
8 {& I l( x. M0 Q
pLight->Specular.b = 2.0f;
2 f+ {* a4 r/ X- b
5 h& O- T4 b% W# R; d3 S
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
4 Z+ g8 z' G1 D: n7 g
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
6 X8 Y7 \8 {6 B$ V
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
4 b% W/ V' h4 y4 P& i5 K2 A
0 J) k+ q* S6 r9 B- ~9 T3 r
HookUpdateLight( pLight );
/ e. ^) p3 V* b' ?0 f# C
4 Y: T! ^ F9 J8 h
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 l: r0 W4 @+ U$ l( v: h5 k
1 N3 y* x8 ]5 M. x$ G4 g' ?
pLight->Diffuse.r *= 1.2f;
2 ?/ z4 \8 r5 g1 ^4 {
pLight->Diffuse.g *= 1.2f;
& U0 B0 B' ?# J8 p; }" x% q
pLight->Diffuse.b *= 1.2f;
" v7 N, w( o' J! r, e
( g. y8 n) N/ H
pLight->Ambient.r *= 0.8f;
& x! \4 U; t8 j4 \7 E( _% @
pLight->Ambient.g *= 0.8f;
+ C: s1 X+ k$ F- X7 \
pLight->Ambient.b *= 0.8f;
+ A7 J) d0 s$ z, \# _: r2 y
7 _/ E: m3 o& h2 B) a& ^! X5 I. D
memcpy( &m_light, pLight, sizeof( m_light ) );
1 s) e9 b% g+ X1 ~9 v5 @6 ~
$ N- h) V2 V/ O) E1 m( i9 _# K8 D
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: H4 l" S; W" f i+ N+ j# t
D3DXVec3Normalize(&(vecSun),&(vecSun));
2 Y! k: E6 B) x, A- }- q
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
6 [! t& l3 m- D
pLight->Appear( m_pd3dDevice, TRUE );
% h; ]6 a4 K- ?2 \" M5 d
v# W; Q& P# r" s
DWORD dwR, dwG, dwB;
1 {9 Q/ }3 x/ F3 w
dwR = (DWORD)( pLight->Ambient.r * 255 );
# [8 T( s7 S6 B' {0 n& f
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ ~4 |. G, Q0 p3 l( ^' q
dwB = (DWORD)( pLight->Ambient.b * 255 );
5 ~2 d# W* x7 ]+ k+ J, o1 _; p2 n. A
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% l* T$ f* a3 e3 D9 q$ Z9 X
}
- b* S: z" P& C+ q
}
" j9 \ H2 |9 U
}
8 C. _& h( u( d0 t6 X: J$ o$ X; ^
else
1 ^6 h! X0 K8 O9 Z3 z6 d# S; D) \. g2 e
#endif
& W7 j1 l4 K; W8 P5 D4 Q
; K; `$ M4 Q j3 u
if( m_bIsIndoor )
- y9 ~ U7 r' v1 o$ n0 e
{
g. \- `- W" o6 G
if( pLight )
9 @. [ F1 g( r( s
{
6 B" ^; V- D: c$ P7 a* h
// à??μ oˉè*
4 F. i' u; m" i$ c
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
8 X1 P9 V2 @/ p0 Y2 s. h
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
1 E9 l3 U4 M+ |5 \- J! C1 L. e1 p
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
# M1 F1 \; r9 H9 C7 ]
2 V- s1 Q% H0 @
// oˉè* ??à?
8 b, l! V' a/ w7 ?
pLight->Specular.r = 1.0f;
9 E% H& |. G3 x
pLight->Specular.g = 1.0f;
5 y0 M K* v/ ]' [& | ^- o
pLight->Specular.b = 1.0f;
; h) u3 ~3 N% Y1 \0 L$ N7 M
// àü?? oˉè*
6 ~6 ~+ M7 l3 P1 s- C1 u
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
# O- w: {+ P' e1 T6 A- K @ a/ u
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
- d0 q* M$ ]2 L' h" U: M
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
8 t' b' J% q9 F- A* C2 {# f0 ]" g
/ z/ Z* }/ n- g) ]7 K
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, a3 [) J; w1 h3 D# d7 O. x
{
# y9 f/ v$ z _& _" N# H
pLight->Diffuse.r *= 0.6f;
f7 |- _% z+ x# q; a
pLight->Diffuse.g *= 0.6f;
# o L' k5 R; W# P5 ^! F
pLight->Diffuse.b *= 0.6f;
: ^3 s: v' P8 b
pLight->Ambient.r *= 0.7f;
; k7 b [% C1 u6 V. {8 B$ K
pLight->Ambient.g *= 0.7f;
+ q2 G/ R% z- B+ d
pLight->Ambient.b *= 0.7f;
: C9 u4 x8 V K' B6 G: ?4 V
}
/ O$ Z- R# |% @; V4 N: @9 f; c
( e# W$ c5 n0 E* b) |, C
#if __VER >= 15 // __BS_CHANGING_ENVIR
8 W0 F0 u: B2 y1 Y, i
if( g_pPlayer )
1 g/ z' e- }. G( ^+ X _( K
HookUpdateLight( pLight );
0 Q; l3 V7 Q( X& p; U9 E
#endif
. Y; z( `8 i9 v# F/ C Y' C& a1 ^3 X
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ z! a7 x# Q& I' H% n) }
% h+ A/ R9 F p% r$ d
pLight->Diffuse.r += 0.1f;
0 {: a* S8 y% a6 l
pLight->Diffuse.g += 0.1f;
; s& o8 X' j% J c# Y. V
pLight->Diffuse.b += 0.1f;
3 }7 A0 ]$ Y* N0 V9 w
// oˉè* ??à?
- I- b, R1 c8 j. R( L
pLight->Specular.r = 2.0f;
9 n4 S- M9 S% S% z8 F) [
pLight->Specular.g = 2.0f;
. E- t+ c5 r. H8 h" ]* L! c
pLight->Specular.b = 2.0f;
! \) Y2 J1 L3 D8 t* K( a# A
// á?oˉ
3 q' L4 a4 F* [
pLight->Ambient.r *= 0.9f;
/ }1 O$ u( C. V% b( X! K* F
pLight->Ambient.g *= 0.9f;
9 m* e/ W. D0 n& o' V
pLight->Ambient.b *= 0.9f;
. C. P+ U" E! Z& n/ m
& D% x+ N' |' J
memcpy( &m_light, pLight, sizeof( m_light ) );
: D8 F( l. x' T' v! g4 @7 R
/ V1 L. M6 c# h0 u$ }
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
! q5 Q/ G9 i H0 t
pLight->Appear( m_pd3dDevice, TRUE );
& ^& j9 @4 b4 q) T
+ N% U6 f6 ^ P5 K( i U% C
DWORD dwR, dwG, dwB;
- E7 I% |; u+ E; `9 }5 Q: T' ~
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 V3 s; Z0 x, `9 t( \% g! ~
dwG = (DWORD)( pLight->Ambient.g * 255 );
! V" ]: `# R! H! Y) ?, U
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ R) w/ ~; k0 S( C* S
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; J) n. k- W" i* { l0 d+ z$ U
}
1 {1 t$ b( F2 \$ @4 Y3 H
}
6 a8 K9 C! o% s
else
/ b" j7 f$ N$ |7 p& I- e
{
2 w _/ y1 v3 s$ f2 a1 Y
if( pLight )
4 h {, J4 y0 N$ m: H
{
; ^, M$ I* g3 W9 V1 I3 _
6 c! _1 j7 R) y! R; C' C: \- W
int nHour = 8, nMin = 0;
' b2 n7 s% }& a& O2 h4 c
#ifdef __CLIENT
# I( p- `, z# D! ~% n* A" T
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
' t R. Z$ T5 r' z" h
nHour = g_GameTimer.m_nHour;
# \* `7 _4 S0 @* q; a
nMin = g_GameTimer.m_nMin ;
" f# ?! p; p# {4 {( ^: a! C6 C
#else
; i4 r. R$ X8 l
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
# D ~- v! j& c7 f: B4 n
if( m_nLightType == 1 )
! V$ n' ^ A4 n
nHour = m_nLightHour;
. {+ {( ~( O$ e: V6 b' d H
#endif
( Z( C h# @- W7 H; N7 E q! n7 M
nHour--;
# k! c2 x h, L1 A+ s% q
if( nHour < 0 ) nHour = 0;
. M6 x9 Q- A; [5 v* i/ X
if( nHour > 23 ) nHour = 23;
/ Y8 d! o8 K" @1 J* L# S, o, W
3 T. V# K+ `/ n E8 }% V& \
//if( m_bFixedHour )
3 I7 B& l3 V& _. G
// nHour = m_nFixedHour, nMin = 0;
: `2 Q6 m! @1 `* d/ d
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
0 m4 |' x- R' w5 ]8 w
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
/ O. Z/ }. m; Q: h6 W
5 o3 l& G6 _( F# K
//m_lightColor = lightColorPrv;
9 a u8 P% n# A8 W6 l' L- C" S- q
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
5 k; T' E- h4 `. s5 {% b
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
# g' `: b$ q, ^
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
, Y! |. s, |8 w# \* T! K- S, q; x
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
( \% E! b% o( ]$ e
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
n. }' J; p, M% u/ P
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
: _+ n- G: R' m# x4 G, f# @% ]$ g! `
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
6 L1 N4 q' ], I; a0 s6 \
4 V" r+ P* ]' b. T) S
// à??μ oˉè*
$ r, u6 ^5 O1 V/ [* W* O. P' h c
pLight->Diffuse.r = lightColorPrv.r1;
/ \+ q$ s8 E8 V0 ]% D, j1 n) R
pLight->Diffuse.g = lightColorPrv.g1;
" v3 q# Z. ?- l- ^
pLight->Diffuse.b = lightColorPrv.b1;
( S& O" M% C; K* Y! I8 D
// oˉè* ??à?
7 i# G' j( C6 n! j |( K
pLight->Specular.r = 1.0f;
+ v8 J/ j: n0 p k' D: i
pLight->Specular.g = 1.0f;
8 C" n2 K+ o+ V" @9 {: h; T
pLight->Specular.b = 1.0f;
' n. p' Q P R) G! _
// àü?? oˉè*
" U! Y. Z+ I6 N5 }
pLight->Ambient.r = lightColorPrv.r2;
3 a. a4 G$ G+ U' L3 b# {3 V
pLight->Ambient.g = lightColorPrv.g2;
0 v3 I+ J5 D/ E9 T
pLight->Ambient.b = lightColorPrv.b2;
* d( Q9 I; ^4 z8 _3 \, G
: I' Y& ~, a- l( U) A
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
0 V% [ y" `# N( E* W+ \/ w; u
{
X3 L) m5 f9 V% [" G# B
pLight->Diffuse.r *= 0.6f;
4 v7 M x1 m6 k T
pLight->Diffuse.g *= 0.6f;
" G7 X. r3 d- \' }, j
pLight->Diffuse.b *= 0.6f;
$ S5 G) x D! X+ c5 Q- A. R! {
pLight->Ambient.r *= 0.7f;
5 r5 h+ _8 d, w- ^
pLight->Ambient.g *= 0.7f;
K) K2 G% V) n1 x! j
pLight->Ambient.b *= 0.7f;
7 y6 i8 ~# L4 h
}
; A6 q7 ?+ Z2 U( ~( \$ @) n- H
& W; Y0 N3 l/ ]% E6 i5 o" X/ T
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ E0 @2 n1 q. Q8 R
if( g_pPlayer )
# J! R0 N: Z4 M, P0 \
HookUpdateLight( pLight );
' y Y# L$ y1 k
#endif
+ g! p. k# u! ]& b3 C5 J
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% S5 E/ t6 _: y7 G) S3 G
$ B0 S5 `# ]" b- U# |2 s
#ifdef __YENV
7 \ |- S4 Q4 j% R
pLight->Diffuse.r *= 1.1f;
' _' n% G' r( ~. l* D; E
pLight->Diffuse.g *= 1.1f;
$ _. n( W, R, T& d @/ [8 y0 \! {5 W
pLight->Diffuse.b *= 1.1f;
, ], W5 h v9 K( I; j) Y, B9 i
// oˉè* ??à?
9 |! {5 b" z9 |* n0 f4 |
pLight->Specular.r = 2.0f;
, Y& _- A* h& Z' E9 a5 r! g" F+ }
pLight->Specular.g = 2.0f;
. R& }. E" T5 T: o4 A# q
pLight->Specular.b = 2.0f;
4 w* t. H5 F* g% d' C
// á?oˉ
_, {( O% j5 I" l7 Y; K# i2 u# E. B
pLight->Ambient.r *= 1.0f;
4 @ P9 Z. o' y2 B2 D2 \3 O# @0 F1 g
pLight->Ambient.g *= 1.0f;
+ W& ^" ]1 g$ T3 Y. Q9 B$ n2 G4 E
pLight->Ambient.b *= 1.0f;
" _' @ V, d3 Y0 ~
#else //__YENV
: y. b! Q( p( v8 i/ h& k, M
pLight->Diffuse.r *= 1.1f;
1 T7 z+ O& b, ` W9 m7 @ \& S
pLight->Diffuse.g *= 1.1f;
( k. c! V' H& S% |
pLight->Diffuse.b *= 1.1f;
0 |- ^5 o- |# t# o2 {9 S
// oˉè* ??à?
& V1 ?/ e2 [, Y* e/ b# n; t+ E2 G. N
pLight->Specular.r = 2.0f;
7 b" k! h# A1 m6 n$ y5 b
pLight->Specular.g = 2.0f;
/ P7 K5 ` n- b
pLight->Specular.b = 2.0f;
+ I* x. o, D& K1 H. l6 |
// á?oˉ
; d3 w1 ^/ D9 ?2 x! u9 d7 r! N
pLight->Ambient.r *= 0.9f;
8 _. w8 z0 G; R7 t! P" |
pLight->Ambient.g *= 0.9f;
/ j m9 z- c' R/ e* z- w
pLight->Ambient.b *= 0.9f;
# n+ E" Y3 Y1 Z, B! A2 Z# n1 A
#endif //__YENV
$ L% x" b0 `: ]+ ?# `
3 h# H2 } n. Y
memcpy( &m_light, pLight, sizeof( m_light ) );
( n9 C$ g$ `2 P+ O
7 G+ J# _/ i1 E' \- y# A6 e
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
7 i G+ J5 W/ \! {5 N1 E, t r
D3DXMATRIX matTemp;
2 Z0 o \. |2 F( ~( Y1 I5 n! K
static const float CONS_VAL = 3.1415926f / 180.f;
0 @) M. H1 w2 \, ~' e0 H9 q. P4 m1 _
( z. ~) A9 N7 Y9 _! P: s% i
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
$ O5 T) Q. ?5 r2 `9 A
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
& ~" U" {0 O) y! P! A/ Y$ {# f$ g' z
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
# P! g3 [: A+ E5 V
pLight->Appear( m_pd3dDevice, TRUE );
5 Q! X2 X$ ]9 @! p8 ]4 p3 O
$ ?9 g1 u" y! S3 g j/ a
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 i( a( g. ~& K% I8 D$ J, S% `6 E1 k
// D3DXVec3Normalize(&(vecSun),&(vecSun));
! y( N, @+ H; C/ e @
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
5 B( ]6 A6 m4 l; _
0 a' `6 j7 l; x/ Q
DWORD dwR, dwG, dwB;
( t+ b4 x. ^' U" a3 n0 ^5 u+ e
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 B+ T. g; C; B3 J( k4 x/ |
dwG = (DWORD)( pLight->Ambient.g * 255 );
- Y7 H( w! |, O: U# {. D
dwB = (DWORD)( pLight->Ambient.b * 255 );
( K* d; N1 a9 @! [! r
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 k# ?9 Q6 [7 m9 w
}
, O9 v/ A* l0 a* w4 T+ i C {
}
^. e* Z3 s3 i
& T# N6 ~1 V0 ]6 a
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
) G- s% z& B+ h5 R' H
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) );
( z8 z o" C ^/ {. j* z
::SetLight( bLight );
1 {- P, V- u" ]) E
& y7 W' o7 ?8 X1 @) ]
// ±ao? ?D?í???ó á¤à?
1 ?8 N7 u$ |! O/ \) z! T! Z
m_pd3dDevice->SetMaterial( &m_baseMaterial );
# D, d2 o4 v) K& j5 l
0 ^9 Y- p' B" v4 D- i2 P/ `
#endif // not WORLDSERVER
$ W8 k! u8 t4 w8 y" s% R8 p0 C
}
[# v% v2 l1 t4 z+ A3 v
并更换
/ P$ j5 a8 Q2 D6 E7 P# G8 A
Code:
8 m: H( `: F5 M+ {9 |- L
__FLYFF_INITPAGE_EXT
5 W1 J: k9 @" U: K" S+ J$ b8 {/ \
定义
" u; s1 I" a( {3 S! X; u! S9 P
. x9 d0 U8 X+ o) Y P
2 d- T( ]/ q6 f& B
$ R* r; Z+ g3 m# m1 ~
; h, Q+ c9 j: {" f' W
现在终于删除我的狗屁加速...
" t0 Y4 t9 p, N+ d+ a3 J
# q; G2 @! g: y+ ^5 c+ N( E8 E
( }0 g& n) J e- W7 _
5 Y. ^* u% L1 y# L
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2