飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
, }( I6 \0 c) i7 @9 `
尾翼:
+ r0 ]* I3 g, {7 m
* @7 d: w. Q# Q1 r- z
代码:
/ [$ S' g& [7 P% B8 G& F, i
CWndAutoFood::CWndAutoFood()
7 q* B$ j7 w( q- J5 y8 o2 q
{
7 q& ^+ `, s0 _8 _/ N+ M/ d7 f
m_pItemElem = NULL;
: [% @0 A' g& a
m_pTexture = NULL;
; N4 h1 K+ L, U/ w
bStart = FALSE;
1 b8 I2 l/ P. f- e( P
}
& D! Q7 Q3 ~! j0 A7 N0 b3 A: i
1 M/ x& b4 v$ [
CWndAutoFood::~CWndAutoFood()
0 C: W" t- u- _+ z# Z$ A, B: d
{
8 I9 r( r* l+ a( s" c8 _
AfxMessageBox( "AutoFood ist gestorben
" );
- E' J; s# G- U4 p
}
3 t+ y d! Y0 L3 q+ ?, i2 p$ E. N
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
4 e! Y) S. ?7 h( F
{
; j+ r$ \1 N$ l! Q/ ]
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
( B: S" n# ?8 \5 |6 H( @
}
! W N& b& N |! j5 @6 R4 N8 j
3 s4 F/ Y) q# L5 k, S
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
# A' G, _; R1 F8 ~/ J5 x9 L9 X7 `
{
6 w( L. a4 R9 |: q9 {$ g
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- ~ l1 I5 k5 V5 }" Q; a
CRect rect = pWndCtrl->rect;
7 U i4 O( c8 D
if( rect && rect.PtInRect( point ) )
' ?# e) |3 _; Y$ L. k# R3 x# D
{
9 Q& g8 b3 Z' M8 t5 E+ K; x
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
( _# d4 I8 G" T
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
6 y3 a C* j. `+ \5 \; |: p: o
{
9 Y9 W5 A- @* H Z
if( m_pItemElem )
: E6 h+ Z2 f. Y) q
{
( i5 w. T/ P7 K7 K0 u3 K8 d' G
m_pItemElem = NULL;
" T! d$ P9 \7 w& V% M! j7 i
}
/ i5 J# q& j# t1 f+ ?# p
m_pItemElem = pItemElem;
$ G4 N, B n3 }( W9 f
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
! `5 x- I% ~1 i% g
}else{
' q% o2 [4 S2 b- p
SetForbid( TRUE );
! c5 H. D2 v: G9 d" F& [
}
, g! Q8 F0 f8 V [
}else{
4 E8 c+ O1 T0 m' G
SetForbid( TRUE );
~" B- L! u: y( G8 R" S
}
' L+ ]$ N7 _4 `7 z0 ~
return TRUE;
. g6 \# y3 A* J8 j I* t$ R* d$ A
}
! b* w/ v0 Y! ?3 l4 W; p, P/ q
$ u$ L/ S) y- W) p7 H* z8 t! {! n$ n
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
3 A; i4 K, ~6 q5 f2 l
{
: h# l2 C' F7 }, M- x# g# K% j
switch( nID )
4 y' T2 x8 _" l- P- `
{
5 |2 }4 X {8 u& f+ p6 o# \
case WIDC_BUTTON3:
2 x8 e; C- W; t6 w3 `" [7 Y
{
2 `1 h& K+ }* H- C3 J3 J' S# r& M- @
bStart = TRUE;
. r/ i. E7 q! e2 ]
break;
" | w6 ]% [* x
}
# |* H5 U2 `% X9 Z- ]% Z
case WIDC_BUTTON4:
' H7 `" j7 q! d
{
( ]9 f! ~, }5 i: z6 _6 F: m, S g
bStart = FALSE;
! D4 z2 B H+ }3 i- k7 _2 W
break;
+ L; f- a1 q; _" a( r7 T
}
% ^5 P- M7 n6 M( ~0 n
}
! ]3 O; M4 p2 R
return CWndNeuz::OnChildNotify( message, nID, pLResult );
% `6 P, q; U- [( X x
}
! M0 k9 {6 A# [. {
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
0 n: B" L2 z1 P
{
8 b& l' ^$ f X3 c8 h$ r
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
/ o5 F5 S; ~6 _7 w# O0 c" c* k9 `4 L
if( bStart || !m_pItemElem )
6 G z% B3 Y% k* w# j. v1 B
{
! Q; m! g% `5 K4 B% k' |
pBtn->EnableWindow( FALSE );
! B5 }: ?% j0 _/ n9 ^) N
}else
1 k) s: m7 V3 ~6 ^* M+ o
pBtn->EnableWindow( TRUE );
" Q8 q. a+ I& O5 \: o% a+ y) M
if( m_pTexture )
( j, f/ r4 g; X$ L
{
8 v3 t3 A! P5 C5 u$ ]
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- M% y$ r! e: L4 E
if( wndCtrl && wndCtrl->rect )
) {% g) }3 q* a8 d
{
5 f3 z! k+ q$ b
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
B$ v' f4 E: R7 Y
}
8 O" b9 e$ w5 X8 Y9 m6 b6 ^
}
+ `) y+ L" R4 ^8 g- k1 k
}
: V! Q5 R( U6 y' b
/ D S+ m- ?( b9 q
BOOL CWndAutoFood:
rocess()
7 W) I3 ]* l+ a& h9 j9 i, L& M
{
9 q7 N% b( ?2 E8 l2 e
if( bStart )
' r0 ?$ M% U$ f
{
& f4 t$ Z: A* F( K# N
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
% s7 B) t- ?" n: E) y
{
$ n! [" x( s {' t) x
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
. w5 t: x# r/ I; q( G
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
% u; e! I3 N9 o! ^% x' ~
}else{
3 F) x3 K6 `2 Y, S4 s* t! Z
bStart = FALSE;
/ T9 b; @: u. }8 R. Z
m_pItemElem = NULL;
2 Q8 O* m6 c2 O0 X6 ]' C3 b$ g
}
4 ~/ N* A3 f/ _
}
/ x+ Y- C# P0 B: O
return TRUE;
! }# X- h3 H+ \& K/ E* ^2 x2 w% Q0 p
}
$ u: d4 O/ J6 T: U4 S
6 W( g7 c. y' b" d( o
登录视频废话:
7 D6 w' z5 u& G) m
尾翼:
2 E6 ?+ j% u& \* Z2 c3 p" b% l# Y5 h
2 e; ~) D& O3 D+ n) _
代码:
( l0 t# r' X! b5 ^
6 }& H% Y3 P9 G
void CWorld::SetLight( BOOL bLight )
- t4 E( O5 O+ a# t
durch
: K" H& b: V9 z5 U$ o A$ A! h
Code:
3 h# r8 o V% z1 t. j
void CWorld::SetLight( BOOL bLight )
9 z0 A. r/ \2 ?- \, K7 D% e( w
{
$ v$ t( N' r7 h) o* t! G+ F. P% \' R
//ACE("SetLight %d \n", bLight);
2 H* B: ^$ m& B! _' `" D+ u
* y8 s* }& B. B% |# y' ~5 N
#ifndef __WORLDSERVER
& A/ f' R5 V$ n& f; W
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
5 z. ]# q! Y2 I8 u# s$ r% ^/ o6 C
CLight* pLight = NULL;
6 y7 d5 W2 _6 _
5 K& J9 j) ~: w. Q& l6 l
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
& b) ]% {9 c% \ e' v5 ?
2 H: y) q- N- `
pLight = GetLight( "direction" );
& a5 u! s) {+ r. x$ E$ K/ l
9 x7 h/ h4 h5 W% b6 l0 ?
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 v3 A8 y5 E6 Q+ K9 t/ K
if( g_pPlayer ){
6 M. t/ Q& {' u8 z9 M
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
" \# b- r, t# g( @
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
. k% p. d' C. ^3 Y, x3 |1 w
{
7 G Q3 E' c7 K
if( pLight )
/ a2 O" o5 f$ y6 }) m$ \1 f7 L) a9 o2 H
{
+ R+ T' \5 ?) [5 e( _
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
8 A5 E4 Y9 D, Y; Y
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
7 q3 A+ |- r9 R1 M& M
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
( |) ^4 R( {& c5 c- x7 z7 @
, L& W/ K- o. E
pLight->Specular.r = 2.0f;
# R: J6 d+ }/ d5 F
pLight->Specular.g = 2.0f;
: [: x) F3 k% i. P* x# O6 }
pLight->Specular.b = 2.0f;
7 S5 I, d' i7 t! x$ a5 x
5 N7 I# ^& p! o3 i4 U
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
) g' x8 U7 Q. o R
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
* f" [6 P& t/ a1 J# q
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
+ U0 M1 G+ A2 ]! l; E
9 Z- l ^. j$ f6 C
HookUpdateLight( pLight );
' {, y9 E4 G3 U4 V4 O# Y# S
# b$ r' y' |) m' Y
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 g, L0 Y# C) z) k+ n% {
6 {% h: \0 G+ D8 N* }0 I
pLight->Diffuse.r *= 1.2f;
' E) n7 ^3 Z4 K" x( F
pLight->Diffuse.g *= 1.2f;
( h F* S) ?$ z
pLight->Diffuse.b *= 1.2f;
! z3 @$ Z% ]( w5 Q( g+ L8 L+ `
! M# J: }. v0 @( } S a3 p0 G A
pLight->Ambient.r *= 0.8f;
4 O9 m( Y4 o" O& B6 q, H4 S
pLight->Ambient.g *= 0.8f;
# B, L B8 x; E5 g0 ^! F) e
pLight->Ambient.b *= 0.8f;
$ y' w N9 Q8 h+ o/ O W: b
9 m# y6 c" g) Z# s, Y' I
memcpy( &m_light, pLight, sizeof( m_light ) );
6 Z, B# J' S" m5 m$ g+ s# O, W
( i. H* X' ^2 O5 a2 D
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
g- D: |. W1 x
D3DXVec3Normalize(&(vecSun),&(vecSun));
z: i& r% F! r6 X
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
& n* r: Y" F; Q
pLight->Appear( m_pd3dDevice, TRUE );
( J! G) W9 P1 T6 n8 n/ t* g! P7 O
! _9 y% S9 B9 K0 n/ n# D
DWORD dwR, dwG, dwB;
0 Y: `9 g, }8 _- O
dwR = (DWORD)( pLight->Ambient.r * 255 );
* T7 ~3 P y) m0 j% F) N; r7 h8 z3 b% |
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 m! Y- N8 X I4 a6 A8 X6 E
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ G8 J5 D* M$ _# M8 P5 g S- B
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
8 ~* F6 x( D& z! K, I/ y
}
/ ^" a5 r2 R6 Y1 l0 _
}
3 T$ Z; O" \. S0 x- t$ L, w
}
" N3 N, R: p7 R$ S2 ^ B
else
$ |: u/ Y% [0 k* t9 [5 \' G; V. Y
#endif
* l4 X8 t0 F) I% B0 ~! d
5 K2 N% G5 r" |7 e
if( m_bIsIndoor )
' K7 f5 u( b" x3 O6 a/ i5 l
{
, y1 ^1 O9 K7 U$ G
if( pLight )
7 c' f3 i! m& ?- p8 ~3 q6 |3 y
{
, }) |: j$ l- B$ \
// à??μ oˉè*
$ p. _; }9 K4 T9 |8 w1 {
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
! |' X) n. W1 Y# d/ ~# L" Z
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
1 w8 o8 e$ O) w* M; A* w- n
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
( W# i9 }2 E! A/ W
0 Y- {+ v7 e8 e# I) L) z* y
// oˉè* ??à?
4 G" d2 S: h5 ]
pLight->Specular.r = 1.0f;
. O' D# _0 v+ |2 G
pLight->Specular.g = 1.0f;
: W" y2 Y( ~3 C/ w# @, [ v
pLight->Specular.b = 1.0f;
' W5 H9 M. w; o
// àü?? oˉè*
# H( r, h: b% |9 F( {4 p( f
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
- I' e. M! @; m$ U3 e5 N
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
" t* i8 ]2 u; j7 c4 @
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
4 A9 v, B/ n7 w- ^3 U
' z! R/ n2 O" |4 s2 w
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* h# `3 q$ @: |; O9 _! ?
{
4 n+ A) \0 a7 w6 `
pLight->Diffuse.r *= 0.6f;
% |: ^8 ~) B4 [0 i
pLight->Diffuse.g *= 0.6f;
$ i8 H9 m3 P, ]4 C! U7 v" a! C
pLight->Diffuse.b *= 0.6f;
9 J: }; n4 v$ y9 A
pLight->Ambient.r *= 0.7f;
; x! Y6 s+ w6 X& d) d" ^" G
pLight->Ambient.g *= 0.7f;
/ i! x1 [# Z6 q% o* A* Q" A: |
pLight->Ambient.b *= 0.7f;
% [' y$ T7 \6 U, L1 _% b& W( }/ i
}
2 t- G$ m' }+ Y( ^) \
; {3 Y$ }$ T& M8 J9 D: y5 M+ N$ o
#if __VER >= 15 // __BS_CHANGING_ENVIR
* v8 [: I9 h4 K5 g0 t+ C
if( g_pPlayer )
4 S5 p0 z, g: ~& N% g- x$ _
HookUpdateLight( pLight );
2 h- T: F6 c$ A" L& x
#endif
6 l1 r0 A( s a/ f& F
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: S7 b, u! E7 r2 w2 y2 v
+ c7 M4 Z0 z1 |0 k
pLight->Diffuse.r += 0.1f;
$ Y+ A4 s+ ^2 [8 F
pLight->Diffuse.g += 0.1f;
4 |; e" n: E( S5 ?: F4 e% H
pLight->Diffuse.b += 0.1f;
% }3 W9 p1 ~2 J3 T
// oˉè* ??à?
( Y* O0 [# j' X9 v
pLight->Specular.r = 2.0f;
: Z: U% L4 r) d- I4 E
pLight->Specular.g = 2.0f;
# T$ q5 v3 R2 f' _8 ?
pLight->Specular.b = 2.0f;
9 D- h- ]4 X" ?6 m! Z
// á?oˉ
, u) d7 q" N9 A0 }$ U$ }, K# v
pLight->Ambient.r *= 0.9f;
2 s. c! C; m' a; ]; [0 T7 w8 i
pLight->Ambient.g *= 0.9f;
0 J+ Y$ r# a: r, U
pLight->Ambient.b *= 0.9f;
/ {' A2 h, @4 R. D9 C5 i S5 o- h
2 A8 C: O U6 A: ^2 u: |
memcpy( &m_light, pLight, sizeof( m_light ) );
2 q ^0 \) M) i" X5 w2 Z
1 s' w2 q& t9 T6 K( R% i
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
2 R0 H5 z, [! O @5 ?
pLight->Appear( m_pd3dDevice, TRUE );
! _, e" O/ h+ X0 x+ O. ]2 s
7 n: R3 A* j- p- z4 t6 E8 f
DWORD dwR, dwG, dwB;
* c: D. i9 H4 T# J+ Z
dwR = (DWORD)( pLight->Ambient.r * 255 );
% T3 Z' V) H6 g% _1 Y2 k" J- {! R
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 `- P2 d6 n0 j6 r* n$ e$ e' k
dwB = (DWORD)( pLight->Ambient.b * 255 );
( t) H- ~1 r3 o4 ?4 y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 ^, g: f. O( M i, ~
}
) ~+ X! Q( f! m$ G+ v% P9 |" |
}
) f# _. s0 I0 e% m/ W- l9 y% ^
else
5 z4 |3 k) R v% q) S$ N
{
; e! _# p2 T. e" Z% A) d! v+ u# ]
if( pLight )
7 [2 b5 V0 ~: i6 Y1 }3 P$ D3 _
{
+ c, B9 q5 Y, ~. W( v3 S
}3 ~! q& r7 t* K$ p& r$ e2 W- g
int nHour = 8, nMin = 0;
# Z2 H& O; |% M0 i2 z/ [% P; P7 h; X
#ifdef __CLIENT
' d# v# A5 p3 k6 M5 G) ]
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
8 F* v6 V. i5 @5 b/ Y" {+ v: N
nHour = g_GameTimer.m_nHour;
0 x4 U: I2 E! e2 x* I
nMin = g_GameTimer.m_nMin ;
$ F/ t, x0 d8 |; e6 t( d I
#else
* O" H/ O* `7 e; n% z' Z: X: ?
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
6 S+ L2 ], B% \# F
if( m_nLightType == 1 )
: T. h4 ]7 y% X- N* s
nHour = m_nLightHour;
! h' q6 ^4 C0 q$ y* N$ u2 J. s
#endif
9 s" X2 {1 l- B. X3 d$ ]
nHour--;
7 M3 Q" b& B* c" M
if( nHour < 0 ) nHour = 0;
$ I% j( w4 c6 R. ^, b6 P; p
if( nHour > 23 ) nHour = 23;
- [2 I( l$ n( F
- m: O1 c- J7 B: L; w3 q( s
//if( m_bFixedHour )
# ^# ~5 M# \, m9 d u( A" z
// nHour = m_nFixedHour, nMin = 0;
9 D0 G3 g$ a. |1 B7 a) B! H
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
: k$ k. V1 r! i% J
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
/ y F+ V8 H! ~- Z
- c4 E8 u! S( Z$ Z
//m_lightColor = lightColorPrv;
- n5 k5 F/ q, B8 |3 }
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
" A2 g; b4 z' `' A0 r* e5 p
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
! m( R' Z0 p6 N0 O. Z
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
8 f; Y: a( l* \3 V g$ Q2 L8 Q
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* S8 h* p; f, J' s' N: A
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
' u; ]1 z; X/ @5 \* d) t4 U9 v* X/ ]
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
3 s' o" \2 z( }4 o
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
4 {( s% n ?8 F
- m4 N( ?9 H$ j6 i
// à??μ oˉè*
, L# i3 }( K( s7 o b* U
pLight->Diffuse.r = lightColorPrv.r1;
7 N2 U4 k, b8 Y# M' T. c! G
pLight->Diffuse.g = lightColorPrv.g1;
4 q3 `, x, g* b. {$ Q: A
pLight->Diffuse.b = lightColorPrv.b1;
- M6 u3 y9 n' c+ a+ Q$ X# _2 l% j
// oˉè* ??à?
/ U! E/ E& I( [' I% A4 S
pLight->Specular.r = 1.0f;
6 Z9 r' p" Y: z$ n
pLight->Specular.g = 1.0f;
/ W: K, F0 O4 j3 [7 K3 l8 @. w
pLight->Specular.b = 1.0f;
2 W5 G" n. J7 I& L; p
// àü?? oˉè*
. a( K7 U5 T5 i' a4 w' j
pLight->Ambient.r = lightColorPrv.r2;
# w( J+ L. B2 e( M8 \
pLight->Ambient.g = lightColorPrv.g2;
- ^/ b7 E# @4 V4 ]9 ?
pLight->Ambient.b = lightColorPrv.b2;
" q2 L/ B6 L9 W+ [
8 u) x" e9 i4 Y1 @3 s
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* t4 X! r3 r a, y, U
{
+ }; J1 y# c5 V$ y; B
pLight->Diffuse.r *= 0.6f;
1 }# C8 l ]' W
pLight->Diffuse.g *= 0.6f;
2 C6 q3 `4 m# [5 w! \, j0 d
pLight->Diffuse.b *= 0.6f;
' @0 a/ i; }% T7 P) F. O: Z
pLight->Ambient.r *= 0.7f;
% s8 M; R% |' d: s. L) R
pLight->Ambient.g *= 0.7f;
j. J1 z, k( n1 @. l2 ?1 I
pLight->Ambient.b *= 0.7f;
1 s# u0 l" w% y- H; \# \: J6 F: L7 o- ]
}
" V G/ E# u" R9 l) x
$ u& V; Y5 _- N, [% b/ \8 A% T
#if __VER >= 15 // __BS_CHANGING_ENVIR
* Z7 l3 ^! o5 N- v
if( g_pPlayer )
! ?- k9 \5 u- W% \0 J6 x, w/ c
HookUpdateLight( pLight );
, _5 s2 g( [5 _' |& W
#endif
* A3 D% S- ]( W* Z7 y
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
y# {2 ~9 Y9 M- y+ Q/ y6 n
, ^3 c4 u$ h8 s" a1 J, `7 s5 Q" W
#ifdef __YENV
0 v/ ?8 [1 j; z
pLight->Diffuse.r *= 1.1f;
! b" S) o$ O* O+ V0 }& |
pLight->Diffuse.g *= 1.1f;
7 c+ l: H: i, v1 g
pLight->Diffuse.b *= 1.1f;
9 Q: C" c! D) p3 T a
// oˉè* ??à?
* n8 k3 B0 t4 R) V$ A+ Z
pLight->Specular.r = 2.0f;
2 c% I, v0 \3 c% J4 D
pLight->Specular.g = 2.0f;
6 {" h& ]" L' a2 @' k1 T# S1 L$ W
pLight->Specular.b = 2.0f;
/ T) r" d8 @: D/ M% E, g5 p! A
// á?oˉ
; I- V4 C) ]- n+ g$ Y( L+ y6 r$ ?; w
pLight->Ambient.r *= 1.0f;
; M7 z. Z q D+ Q ~4 z( g( F
pLight->Ambient.g *= 1.0f;
% Q( v5 B5 @+ u" `& S
pLight->Ambient.b *= 1.0f;
* e9 L6 Q @8 ?
#else //__YENV
& n! B4 ]1 u9 {1 q3 G
pLight->Diffuse.r *= 1.1f;
3 M h: z0 E, K u
pLight->Diffuse.g *= 1.1f;
% }: F8 z' Q, P8 I; }' w: Y
pLight->Diffuse.b *= 1.1f;
; G6 ~8 x+ L6 g1 o; F
// oˉè* ??à?
' G- o& O: _0 y/ u# _) b
pLight->Specular.r = 2.0f;
; n( L& T7 j& k' v6 ^2 v
pLight->Specular.g = 2.0f;
+ d( V0 y+ H6 J
pLight->Specular.b = 2.0f;
- x+ A B, s. B- |( F4 t
// á?oˉ
6 L# P' Y1 o9 w
pLight->Ambient.r *= 0.9f;
. Y7 v% y/ p# b, i! m
pLight->Ambient.g *= 0.9f;
) l) ~$ k# k9 [" D: }. `5 \
pLight->Ambient.b *= 0.9f;
# e. B3 {7 e" I$ z1 k/ m
#endif //__YENV
' [5 O. k5 R) P' a, C
& A' [& A8 z( c8 w1 _
memcpy( &m_light, pLight, sizeof( m_light ) );
) K% A" C+ R, `0 {1 n
) w/ d B6 C% n
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
/ b) g7 b/ N5 R4 S0 E0 M
D3DXMATRIX matTemp;
4 J/ c$ t) [: q# P- H3 W r
static const float CONS_VAL = 3.1415926f / 180.f;
; V Z* S- j: ]* ]3 Q# l# @! U
; x P/ S. N- y O( l' a( _
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
- w) e1 L. Q! ?1 W& v& l/ x5 y
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
6 ?( [6 s' Q. F
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
# |5 G6 d% f6 `" A# l
pLight->Appear( m_pd3dDevice, TRUE );
! H: o% D1 U0 U& U% n
& H1 S/ O5 ^0 g
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) }- j4 E7 t5 p) R* G- ?2 i- }
// D3DXVec3Normalize(&(vecSun),&(vecSun));
' ^: O a- X' ?) f
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
5 G. }7 n% K* |
( w9 G% W q2 w- c7 P0 U
DWORD dwR, dwG, dwB;
# \6 I- p: O9 T! H5 l7 u
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 }* ?* C+ Y! z' `9 a4 _2 x8 k- J
dwG = (DWORD)( pLight->Ambient.g * 255 );
# M) ~ K3 m$ s
dwB = (DWORD)( pLight->Ambient.b * 255 );
# Q* v; ?' r5 }* `/ r$ \
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ U' b! J' \7 q! _4 m6 w O
}
8 n. m* Z- H# `4 E4 \4 }
}
) r" E/ ~7 A9 \
/ |+ N* i- x6 q. M
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
: K& p$ W; p; }2 m& d8 R
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 F3 X0 r& r9 j0 Y \7 O
::SetLight( bLight );
( }. t9 c) S! j3 X6 U
7 ?% o u; p$ @! `0 Q4 f4 s
// ±ao? ?D?í???ó á¤à?
4 n- P4 h2 l9 A+ Q- Y! y
m_pd3dDevice->SetMaterial( &m_baseMaterial );
: m2 J' K' [9 I7 w/ i
( k4 a* |7 Q! _
#endif // not WORLDSERVER
6 P; [: D$ q* h/ M3 Y
}
- J" e+ C+ W& [" d
并更换
( `3 U# r# }' V# R% r
Code:
7 e; d* n* L) D* A- K
__FLYFF_INITPAGE_EXT
4 E) Z) g$ m3 X
定义
5 q ? m; I* E. q
* Y1 T/ @4 t7 i4 d; E7 ?
* }6 [# x# }; I2 D2 `
1 l, X4 F+ }/ e+ ?' R* b( g' X& ?
! C# I* `' S3 |" _( n' j
现在终于删除我的狗屁加速...
6 S# l0 W+ h: D0 k7 m; K! m) g# R
- V$ ?0 s7 L6 ?% U( _1 @6 c
8 i: k! d3 a' q. j9 Q
. R; @. o6 t+ N& `- l
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2