飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
7 ? w! n7 r: t" U1 H" ]
尾翼:
w: a; m5 n! l4 [& Y% ^& c
( L) ~0 j0 z0 E; q: N+ o
代码:
2 C- Z% m- B2 j5 Z
CWndAutoFood::CWndAutoFood()
. g$ ~& l1 h6 m7 |1 W
{
( M, U2 o, U$ f/ b
m_pItemElem = NULL;
( w5 X, F. G/ t0 i3 b. d2 m
m_pTexture = NULL;
) K I6 }% Y0 k: R
bStart = FALSE;
, c u# S' j6 }
}
% k& o# t4 d* B. z
" B, l& I( @" ?! r) g, ~* c
CWndAutoFood::~CWndAutoFood()
. C2 Z/ ~! C4 n) M
{
2 A" k4 ^( }0 c8 K6 G
AfxMessageBox( "AutoFood ist gestorben
" );
+ a5 I8 u5 X' h! w1 w
}
* v. b2 `/ k2 V6 z9 [2 z
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
8 M s3 G6 i. O( E
{
7 r; K) `# f. f5 j/ z
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
, |* A. W/ V0 |5 j) n( K) _
}
1 n5 B _. ^ d1 C
, ]7 b6 g3 T7 X/ Y) |
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
$ k! Z5 {: S7 L. c
{
$ q2 R% ]4 J! ^/ K/ C
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
, }/ u( j, a# j1 y- Y+ f
CRect rect = pWndCtrl->rect;
- ]: n5 b' |" y- n
if( rect && rect.PtInRect( point ) )
z& u2 ]. h {) |
{
$ `# a i2 o% r3 f
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
0 o; K3 N' U0 ^9 w5 c
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
4 l" |' H! ^* [/ K( u0 r: L
{
8 }: Z& [9 b' G0 W
if( m_pItemElem )
: {/ ^5 Z: D8 M) i3 n$ E9 R& O
{
9 p8 G8 D8 q/ A. [/ X+ Z$ s
m_pItemElem = NULL;
5 f+ D$ i, A; B; h
}
7 d! v* B, v' l7 F! _! X
m_pItemElem = pItemElem;
+ Z6 t3 G2 T, L3 |2 ]
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 E1 w% J# t" g
}else{
; j, O1 {" [; U( X7 k$ d/ D( H
SetForbid( TRUE );
, e+ q- H# ?; Q+ t- Y$ t
}
: f5 W7 v% h3 u! ]
}else{
, c3 l+ O( c" f
SetForbid( TRUE );
0 Z) b1 \7 L* q- |' n
}
. D5 H- [6 i4 n5 L$ P
return TRUE;
$ O% c2 i8 p% d; i
}
2 D" R% b2 c# N: A6 ~+ l1 |% ?
0 z3 h2 B3 H. x; b8 @
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
8 U8 n7 p# O& _9 T1 T
{
7 ~% ?0 H8 I/ ~1 e0 A
switch( nID )
0 f$ h2 C5 ^/ m9 w
{
6 p& I) j+ m2 a/ Y X/ J/ d" j- x
case WIDC_BUTTON3:
# O9 n# j! {' p J
{
0 s7 F! e* P0 {1 ^
bStart = TRUE;
* `1 b8 O; a- ] i9 K
break;
$ ~4 Q; Q) |- S6 n1 X% r. E, U
}
* G% k3 V8 _8 F/ W
case WIDC_BUTTON4:
- P$ g5 ~% \3 t5 E, t9 `
{
# ?) {% b) n% U0 n% D
bStart = FALSE;
) K1 K S. n0 R4 h' Y+ j& i
break;
) E+ n( b# ?7 I1 [
}
" u# Y/ H5 M( H; E+ P. M% | g, L
}
( a" F. y8 `5 {) U/ l+ {7 Q( [" R
return CWndNeuz::OnChildNotify( message, nID, pLResult );
: S5 } Z/ m. K1 w4 V
}
0 w$ J6 H: a; s4 Z. \$ }
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
. S0 Y) X. |+ p5 S# V
{
! {. S& z s9 g2 I" x& D+ N
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
& g! a3 ?" Z& L0 `5 Y2 D
if( bStart || !m_pItemElem )
0 W; k. u0 E [+ t. m
{
/ P1 ~# S( ~2 X8 |) w
pBtn->EnableWindow( FALSE );
, r/ {( B3 h# C! r8 R4 I( \7 x- D
}else
3 C& k/ o( Y3 V! ~) `1 X* v
pBtn->EnableWindow( TRUE );
, ]5 v8 F( W9 j0 P, H# F
if( m_pTexture )
5 e2 K) }! `! Y. {, @
{
& ]. t' P: R+ A. l% y, k% ]
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
, b( g* P+ F+ i1 R6 T; l
if( wndCtrl && wndCtrl->rect )
- _ V& C; k5 j: n
{
, w& A/ N- v# b' R/ w" ~' S- g
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
3 N" h+ i# D; `* D
}
# a8 Y* j0 s9 g: i
}
/ f2 t& v1 l7 z( |' T6 y# s2 [
}
) }" _8 ]8 D5 ]3 q
2 f: y& u8 k* ?+ {# L. j! N
BOOL CWndAutoFood:
rocess()
# ]* a$ W8 G4 U" ?. t
{
; J$ G; G. P" D& F$ @# {
if( bStart )
' @7 U1 }4 ?. o" d
{
; U) X( s, W; C& N% g5 Y/ ]
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
( _! e6 w! |) ~6 Z: N( W
{
" a+ X0 N: Z- ]$ ~+ y* B/ r
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
" c( u4 }. @8 `2 ~7 A7 U
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
3 [ e6 R( u9 U$ p( ?( V
}else{
, Y4 l; J# v: V# M0 p. G4 `
bStart = FALSE;
) ^ P+ m/ }5 Q( n' X! T
m_pItemElem = NULL;
) E. m" [' U. r- O1 K9 [
}
3 C1 k0 m8 n* v3 F. Z/ J8 ~, Y {; b
}
- a [4 J) H6 @9 K
return TRUE;
& E) F0 A1 X) i8 l& W0 [
}
. X" y6 \( a% @' g: S
9 p" z3 |) V) o/ X! [$ g; G: w
登录视频废话:
% ^) n5 y$ T3 r {- k
尾翼:
5 s1 ^3 g8 A4 s+ k' U
+ s, p$ @3 n+ }; q5 A# V# j i
代码:
- {! W/ z5 m3 w+ I* q8 K9 ], d& Z4 \9 ]7 I
8 d [4 J* j6 Q g* {
void CWorld::SetLight( BOOL bLight )
) w' I% R6 J! B4 p5 T
durch
+ Q7 m8 a# B4 _$ l6 ?) l
Code:
. Q$ V1 B' m+ j4 y% \0 P( ~( c
void CWorld::SetLight( BOOL bLight )
8 G, R0 U) M" |
{
C! r# c/ d& r; C4 B1 K, w
//ACE("SetLight %d \n", bLight);
! J) _* q; {4 i
, [/ J* q* A3 n- G' a
#ifndef __WORLDSERVER
! [8 c. V5 Q9 H) Z K* J
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
( z0 B7 V1 Q$ `' ]% B
CLight* pLight = NULL;
4 |9 b. G# o3 u1 j' {/ e2 U6 ~
$ i% H5 z$ q5 N4 Q
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
, Z( e5 N- Y# A# N
. W' S j G8 E
pLight = GetLight( "direction" );
, ]. g+ m7 r" F$ a
4 x! i. i6 s/ ]4 P
#if __VER >= 15 // __BS_CHANGING_ENVIR
8 b3 t" g+ c, v z
if( g_pPlayer ){
. k3 I' a [- \* z0 C3 a" u6 b
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
9 _/ o( E/ Z- C1 }
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
( n7 h8 ~# A8 o1 E y1 R
{
+ q _+ K3 Z/ l8 q
if( pLight )
$ z* h* H/ |: o
{
( m X% ~4 H. f) _
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
: d5 T, ~5 m2 A7 G* B# Q! M
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
2 y/ \; t7 k7 m; o
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
' T4 O3 L3 h# `$ v2 K5 H
! E8 | [# N. {$ q
pLight->Specular.r = 2.0f;
& X* K H( I5 b/ a/ Q8 S2 j
pLight->Specular.g = 2.0f;
2 o/ G: [. ?% N/ Z
pLight->Specular.b = 2.0f;
" t1 u# o( d, C
3 a( y# h. l* _* p0 A$ A+ w6 E5 E
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
8 c/ K* M1 i5 I4 A
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
$ b5 u( T; r8 {4 i8 Y
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
# w3 Y8 _2 K6 |% _! U, ]
1 M8 x# r2 E9 Z% G
HookUpdateLight( pLight );
l- Z3 ^" y. k. X
, m0 D- c! W9 p3 Y. o
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ D8 W8 M9 B& z/ E# z* k
/ I& v! \; T8 `; y
pLight->Diffuse.r *= 1.2f;
% I' k/ j: z' ~; X; k2 V
pLight->Diffuse.g *= 1.2f;
+ y# z( Y7 F6 q/ F
pLight->Diffuse.b *= 1.2f;
2 L' V" B0 N6 }8 m0 J
+ u( T* g0 Y7 P/ R e/ u& m
pLight->Ambient.r *= 0.8f;
. k7 y* S, F: ?4 C
pLight->Ambient.g *= 0.8f;
% j9 R: {+ X# s O ~3 _& K
pLight->Ambient.b *= 0.8f;
( u( P3 o9 S4 v7 v, b% X* J$ x; |
4 j! x0 H% Y. c5 f
memcpy( &m_light, pLight, sizeof( m_light ) );
* `- M/ W1 Q$ g& ]2 B4 D
* D* [* ?5 A( y
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ a2 R8 ^& k! H& i) [ e; m1 V
D3DXVec3Normalize(&(vecSun),&(vecSun));
" k1 C* i. Z8 c9 N0 c
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 V K- j) |7 @- m
pLight->Appear( m_pd3dDevice, TRUE );
# l1 |2 i1 r8 t/ E
9 J9 l2 _6 g" {0 G, ]/ e
DWORD dwR, dwG, dwB;
0 I! Y; y: k/ X7 O9 U; {; x$ h" M
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 c1 f2 G# D6 e9 U
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 n Z+ a( i( G6 O6 h' V/ t
dwB = (DWORD)( pLight->Ambient.b * 255 );
% L& Y# t3 {7 Z
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( ]$ u; S) Z6 i5 N
}
7 F7 z) F) w% @5 {. V
}
/ T: V% e" N- {# k* j6 k; C r
}
% [ J! U) u7 E5 ?( r5 i4 X7 @
else
7 T9 a6 G; p+ k+ ?2 j# c" E
#endif
& o! N I2 b* {, N- i N+ g4 z
$ | Q3 b9 Z) w3 T& }# z
if( m_bIsIndoor )
T" Z! J% _. P' C% r
{
* |3 G# C; _ b: N7 S
if( pLight )
3 m& n# J1 w- `+ e! `9 u
{
" b( S* S& }4 y' D+ s9 F: t o2 P
// à??μ oˉè*
6 K: U9 z( R3 L' I. j
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
1 [; t ?, { u
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
) F% E$ y0 {5 m$ Q2 i+ S' |: Z
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
# T! J @, P0 B( a# i& U5 v
& @: Q& j2 \0 ?# O2 }
// oˉè* ??à?
w% p) f$ u* o* d# J
pLight->Specular.r = 1.0f;
) I, r; _. O) t2 X* ^7 B' ^( v
pLight->Specular.g = 1.0f;
9 }6 R" h- L7 O& W( t) C u5 O
pLight->Specular.b = 1.0f;
{' H, l5 U" y+ {( p. A$ F$ J
// àü?? oˉè*
4 `+ U3 `9 C* t, y$ v9 z. C4 A
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
7 |9 U) M: m3 K4 e6 Y0 \7 e7 b2 t
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
$ I" E5 c9 f: M+ A' U
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
2 G" Z# n4 y$ r r" ^
& O, \/ ?7 V' D2 S( F a
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! D. Q( j Q4 E
{
; V2 b" c, [1 j; `/ X7 \( n
pLight->Diffuse.r *= 0.6f;
. q- b/ m/ u8 Q6 d+ C
pLight->Diffuse.g *= 0.6f;
$ B4 ]5 m. {! A- k0 X1 \! S
pLight->Diffuse.b *= 0.6f;
* F9 n1 n0 f6 u0 p6 G$ T
pLight->Ambient.r *= 0.7f;
; P9 M7 X2 d; m% X5 H
pLight->Ambient.g *= 0.7f;
0 l5 J1 E. ]4 ^' m
pLight->Ambient.b *= 0.7f;
+ s, q0 V+ n, ?, r3 w! z" l
}
g! t5 C3 K( i4 O* i5 e
8 H$ a1 m9 q9 `9 D
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ L8 U! O% y. i* U) M
if( g_pPlayer )
5 d2 T5 i9 I5 ^
HookUpdateLight( pLight );
( L- T' H$ ]# E0 ?$ U: c1 J, y
#endif
' {0 l3 a4 H& x) W% F0 V! y0 h2 G1 S
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) `2 n8 q: W- Y
; \% ]; V4 j! U0 N1 A
pLight->Diffuse.r += 0.1f;
: N }8 \0 Q! y+ e d) V6 `$ p
pLight->Diffuse.g += 0.1f;
& v3 ~+ k2 `% @% I0 H, B9 ^
pLight->Diffuse.b += 0.1f;
8 f9 U+ ?4 O! o9 n8 D
// oˉè* ??à?
' {* G& r* y1 v# D. U6 e! |+ F, K3 D
pLight->Specular.r = 2.0f;
2 q7 |# X T- b/ f$ s9 y
pLight->Specular.g = 2.0f;
% y' [! t) x2 D% Q) F
pLight->Specular.b = 2.0f;
' E0 D: N5 {+ `- p
// á?oˉ
. Y% U' I" }8 w- P4 P& B: k9 M
pLight->Ambient.r *= 0.9f;
: s% v# y) D/ }; A' }) ` F% c, S
pLight->Ambient.g *= 0.9f;
o5 u8 F q5 r+ V# \
pLight->Ambient.b *= 0.9f;
: g' @/ ^/ q# o9 K" }0 g4 U7 o7 f
8 ?6 ?- ^5 }/ K" w2 I: \2 X
memcpy( &m_light, pLight, sizeof( m_light ) );
0 T6 W5 }2 f7 e
6 u$ U s M8 a9 r+ b5 O- h8 z" x
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
" _2 u2 a- ?: Q* |& \: r6 |
pLight->Appear( m_pd3dDevice, TRUE );
4 m0 {; k F" I9 f1 Z
% q, V5 `6 n, g/ t
DWORD dwR, dwG, dwB;
# y0 e0 d7 e7 {, F+ E
dwR = (DWORD)( pLight->Ambient.r * 255 );
& Z2 B2 D+ L) C) a
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 f( b. J! C$ H
dwB = (DWORD)( pLight->Ambient.b * 255 );
; `* `& u3 M/ ^3 X# s: `7 W
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
8 y* Q0 g; w5 y" d. Z# D7 y/ m5 y
}
4 @& a6 P4 c$ a3 E
}
8 N7 m; |, c3 |7 u' `
else
; J! \6 ^7 O! C( X- i& U4 D
{
8 u& L4 |( i! s) D
if( pLight )
- ~6 f7 w+ K! k, o+ u. n7 h
{
- |" D- S. Z3 v
$ R7 `4 ]3 y; E3 G
int nHour = 8, nMin = 0;
$ e& ~, D% {9 [3 @' `; s
#ifdef __CLIENT
2 ^( J V Z% r1 p, O Z
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
. w5 t" Y% e- C8 ?. m2 o' H
nHour = g_GameTimer.m_nHour;
* e9 Y/ E4 v7 r T
nMin = g_GameTimer.m_nMin ;
4 L% x2 x5 z: L! O
#else
8 }2 U3 C; Q6 M/ N/ m
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
9 _: g! X4 Y5 ~
if( m_nLightType == 1 )
, b4 B& ^5 C3 L
nHour = m_nLightHour;
/ x) i% G* |( K
#endif
( k% |7 f* r) L/ ~" v4 h; R9 }
nHour--;
; T( O) T( b$ S+ \# O [
if( nHour < 0 ) nHour = 0;
" x j' d& ]0 B3 ^( J9 z
if( nHour > 23 ) nHour = 23;
. f( ]; b' J% M/ C! R
( R- a0 B( r/ r" Z! F
//if( m_bFixedHour )
& _& [. U. n/ n. ?- d
// nHour = m_nFixedHour, nMin = 0;
_, q/ R* E1 {& {
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
# [% Y# k+ V4 _8 W+ T2 M0 ?! D
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
; p8 ]: H% d6 j
$ ~# n$ a4 f7 |% h# G
//m_lightColor = lightColorPrv;
, q, Z; Z i4 ~0 U5 ]
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
( Y, {$ k0 I+ L6 u* p. G: X2 F2 R
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
) ^ @( ~) o! p% k% j! s% D4 y
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
. F/ b( F) [, ]- Q4 X
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
. ~+ m0 G+ O* d) c- W# ^5 G
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
! b' {# u9 Z) X6 s' T1 O, K/ a
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
" G% \+ v; s, b9 V: g" {
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
- o( y1 V7 V4 o# W
- p# _3 \2 A% {1 A. u8 k
// à??μ oˉè*
P! V, r) Z# t# w* c( A
pLight->Diffuse.r = lightColorPrv.r1;
- ^7 D! c! a3 e5 ^
pLight->Diffuse.g = lightColorPrv.g1;
5 [1 w. R: V R* A% p
pLight->Diffuse.b = lightColorPrv.b1;
6 ~1 o2 T9 B8 j5 G6 G# L
// oˉè* ??à?
( J/ r* z& W% [( Z6 N
pLight->Specular.r = 1.0f;
. W; Z! z2 X. m8 d: ^" `: ]+ v
pLight->Specular.g = 1.0f;
8 [5 i# X e8 A4 X& b) @& X& J6 _
pLight->Specular.b = 1.0f;
- \! v J4 B4 z0 a! t/ m9 g
// àü?? oˉè*
# @+ c0 `* D. b0 _, b" l/ p' V
pLight->Ambient.r = lightColorPrv.r2;
6 f! j2 `/ H3 x7 i
pLight->Ambient.g = lightColorPrv.g2;
; v9 G/ e$ ?5 m2 p8 Z m: H
pLight->Ambient.b = lightColorPrv.b2;
# v7 q4 a4 R; A# } q \% o/ E
+ G) s: c p. |2 P2 T+ S
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' |- t& I( K g2 g
{
* |& j" U) q2 r, p. O
pLight->Diffuse.r *= 0.6f;
$ j" T( D5 s2 N3 B( O
pLight->Diffuse.g *= 0.6f;
3 G% {, W! n% I2 z) C3 x1 i' j
pLight->Diffuse.b *= 0.6f;
7 Z0 N. w, h- ~% f/ C" i4 g
pLight->Ambient.r *= 0.7f;
8 w9 Z( Y! s) \
pLight->Ambient.g *= 0.7f;
) K0 H+ ~( ]( a/ w
pLight->Ambient.b *= 0.7f;
' T* K# h$ [* d2 p1 h8 K
}
9 a1 m) j! X; U3 t
8 a+ ^( R$ V' C+ d
#if __VER >= 15 // __BS_CHANGING_ENVIR
: y+ P0 I8 x4 v* a# K3 P& m
if( g_pPlayer )
$ |& \. f2 Y0 C* G
HookUpdateLight( pLight );
2 ?3 G4 a& U( Z4 a% S( C( r* b+ C; g
#endif
1 I! S3 ^ L# S& V6 t, s3 y3 I
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: ^$ @( g( G) d9 o# e
' W0 L4 M0 h2 ?1 d; U
#ifdef __YENV
7 r8 l& k# k. J8 N2 W
pLight->Diffuse.r *= 1.1f;
9 e+ E# P9 M7 l; e' _0 T
pLight->Diffuse.g *= 1.1f;
# E' `8 l! l; V) y: f4 N0 U9 z2 v
pLight->Diffuse.b *= 1.1f;
9 b9 |; |% E% q: S. b) E
// oˉè* ??à?
9 l K" d8 |6 R: A- u5 s4 F3 c
pLight->Specular.r = 2.0f;
( }4 q1 C. h& }; |
pLight->Specular.g = 2.0f;
3 Y0 R0 ]% n0 m( j: V$ A: z
pLight->Specular.b = 2.0f;
! c X: ^& b8 W! ?
// á?oˉ
8 Q. _: Z5 l( H; }/ B1 w
pLight->Ambient.r *= 1.0f;
/ e0 l* e8 P3 I' U, u
pLight->Ambient.g *= 1.0f;
& _" Y* W( |8 A$ V4 V* _
pLight->Ambient.b *= 1.0f;
3 \- B/ }+ K: X
#else //__YENV
u I. S H4 H* @$ {3 L
pLight->Diffuse.r *= 1.1f;
, S4 p- G3 I' R/ P4 _
pLight->Diffuse.g *= 1.1f;
/ M1 e8 E+ F4 |% k! w
pLight->Diffuse.b *= 1.1f;
. m$ X7 T' E3 d2 P1 b2 X
// oˉè* ??à?
" ]! ~) O$ A0 ?/ l1 ^3 K& L
pLight->Specular.r = 2.0f;
* E& `# ~5 j- Q& P- h* L
pLight->Specular.g = 2.0f;
. V! K( x0 i4 }* X# x8 W" q* g
pLight->Specular.b = 2.0f;
/ u$ A; w/ ]8 a; E
// á?oˉ
* M) Q, ]3 J8 d7 o7 @
pLight->Ambient.r *= 0.9f;
y; Q- u8 w. [
pLight->Ambient.g *= 0.9f;
! r* t5 A6 g! e( w' O
pLight->Ambient.b *= 0.9f;
$ Y5 t6 P. j9 W$ |
#endif //__YENV
3 f H4 O$ A( z& @( i" h8 C
# X7 b! m( ~, ~- N d; p
memcpy( &m_light, pLight, sizeof( m_light ) );
" K: B; n3 x8 Z8 M) D1 @' I
j- z, F E9 s8 R) d# m7 S/ [( v
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
7 D: j- c7 q8 Z. X
D3DXMATRIX matTemp;
9 H, q$ J. n" o: M# C
static const float CONS_VAL = 3.1415926f / 180.f;
/ ?8 k2 u/ Y3 }
2 w. B9 f: H5 B% m. _8 H( \% z0 z) ?
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
) M+ M2 U3 ~: s6 U, k6 r
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
# L! m( B% F6 y$ g: x1 q
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
9 c! S' }( q' x' I5 z
pLight->Appear( m_pd3dDevice, TRUE );
+ }( F" d6 t: g3 Z' `
2 N4 N5 X, o$ _
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 Y: C4 y0 | b- ^2 X4 D- ? _
// D3DXVec3Normalize(&(vecSun),&(vecSun));
: M: _6 k( N7 ?" H
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ K/ |5 u( `* Z/ N
! x3 t/ `$ l& b$ I3 j0 |
DWORD dwR, dwG, dwB;
, }3 [0 s' j* Y8 B
dwR = (DWORD)( pLight->Ambient.r * 255 );
! q. f/ }4 n) x6 k5 I
dwG = (DWORD)( pLight->Ambient.g * 255 );
' E$ i ^: Z7 }2 U6 I! `( I
dwB = (DWORD)( pLight->Ambient.b * 255 );
' ~+ e- X; A+ O
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' B$ y4 F' P2 s6 W' T
}
) L f+ h0 {" Z" i5 M- Y
}
. _9 d3 A3 ?. l( n- L3 ^( X# i
e1 b) Z0 i+ C, D( {" z5 o. z
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
p( `$ M: n. |0 Y. a, `- |
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) );
' r/ q% l6 H: s0 C
::SetLight( bLight );
9 m/ M; R4 k( r. Y& @3 x
. h$ e! P' g8 h7 H& Z+ a; h! C
// ±ao? ?D?í???ó á¤à?
; D- A- Y8 n5 g: K8 q- E) a
m_pd3dDevice->SetMaterial( &m_baseMaterial );
# B- R$ V2 O3 ?4 W4 L0 L
1 D. Z2 x* }% b' b5 E
#endif // not WORLDSERVER
# R1 j" N5 p8 P/ @* U* T. ]
}
/ {5 y% O; S4 i; l
并更换
# G0 p' ~' M6 Y
Code:
6 P6 ]8 |3 l1 X0 m6 r
__FLYFF_INITPAGE_EXT
5 K$ ?2 M% ^5 J* z1 T/ S8 A0 n
定义
8 k9 \. J3 P2 O$ Z! v
7 |9 L! Q4 n1 P8 K4 |7 ?
& m# v \+ Z/ `- _9 j' p, i$ _7 W
3 F0 }7 D/ `, i! w( u% }, _
" P: V: E& u, ]* I( Q
现在终于删除我的狗屁加速...
9 [: A5 D8 t' E4 r% X) L" M8 f7 [+ U
' u7 h5 t9 {2 K) b% S& P
6 K3 c* j5 R% W" O
2 A2 X; g( {5 w% l% T# u3 P7 u$ r
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2