飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
/ \- {# K, `: \3 G% y' Y; H
尾翼:
; _& T3 g8 w6 T6 Y8 h
5 b3 x( z5 L; p, p' x
代码:
! H8 e4 n- V2 u l( _
CWndAutoFood::CWndAutoFood()
6 k/ g. f% {( u$ x
{
( G* `+ K/ i- a* w7 p
m_pItemElem = NULL;
3 q# a: n9 P5 z. ~9 k& X% k0 q
m_pTexture = NULL;
# ^/ _3 p' R4 ~; O1 s9 S
bStart = FALSE;
2 z7 s' `/ {0 {; B
}
3 `; N% b4 x+ E/ B: E* e' m
9 X1 {0 H% E5 F A1 c
CWndAutoFood::~CWndAutoFood()
A1 _3 @4 B. o! S: y/ C& M1 ]; U$ {
{
3 j+ E+ H* L, d3 V
AfxMessageBox( "AutoFood ist gestorben
" );
2 J( d) }/ [/ u0 U
}
' E* w6 H4 {4 }" j8 \" t- K: u- |0 I
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
4 P3 t3 R# `8 t
{
, d9 Y, c4 d& {0 |! W
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
. h$ D3 N1 g) R9 _- M' F2 v
}
) I, }1 _5 g: X6 w( }, M. K3 W
4 m% I. B% L, Z6 c* F' ~1 r4 P' r
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
. n! x2 }7 T. c* r3 i
{
% E8 {1 \; F8 T: X" V/ [
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ a0 l2 w! l3 G% G/ I+ l
CRect rect = pWndCtrl->rect;
+ X4 @9 a$ I7 ]
if( rect && rect.PtInRect( point ) )
* ]7 A0 G- @! n5 G M6 w/ l
{
6 f* F4 M2 E& d8 O
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
6 S. E% @( v/ h
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
6 G' R, W: s5 p2 ]
{
$ ]$ ?) a: G' o) N
if( m_pItemElem )
' A4 c5 r5 x/ G
{
- `% E+ m8 B9 g5 j& {
m_pItemElem = NULL;
" ~$ l6 f, `7 g, p
}
$ r9 w( ~3 R8 L0 q5 V
m_pItemElem = pItemElem;
9 b6 Q! y6 ]% A" G' K% ~( `
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
; Y( Y; ~8 m- V) p# w" s9 S, X
}else{
# C2 u- Y) }& l Y8 B
SetForbid( TRUE );
# N2 l+ q* f: p! j
}
" D6 _/ }$ X2 q' e* C& T, U0 Y
}else{
2 n$ r/ ] X0 m- x9 E, Q
SetForbid( TRUE );
- |3 u( ~" v5 X3 z0 M, ^( D6 L
}
8 G8 y2 m8 T4 }* X
return TRUE;
5 T5 e0 n( E4 A1 c0 Y- {
}
: C1 [3 l) } p b5 S6 q
: @& f- [ K& Q
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
$ |6 o' v8 U+ M+ @+ S* M
{
9 d, k, ?' H0 J2 c
switch( nID )
! u& w* f% W3 |% W% ]
{
C# F: H+ V- Q T, y0 ?
case WIDC_BUTTON3:
( b, Q+ P/ S8 z. Q+ c$ p; I
{
7 U2 |- @4 u% K3 s
bStart = TRUE;
+ `0 x5 L% M4 l& J- y
break;
# q) p( E2 a. B# [7 l: O3 q
}
" Z7 r$ v; `8 O: M B
case WIDC_BUTTON4:
! ^/ D+ `( e7 n- _$ @7 e
{
/ E, ~+ W7 `( p8 m3 W4 s. U
bStart = FALSE;
! a" i( I4 i; ]# B$ e/ H" [+ Y
break;
% U4 C6 Q! {9 k5 T5 |- N5 }
}
1 w/ l$ z! c6 S1 @( V
}
. d7 @; q6 _8 v4 ? Q/ i
return CWndNeuz::OnChildNotify( message, nID, pLResult );
4 H9 ~+ ?' ~; D9 ^, E+ \" J
}
; y4 z* e( F0 i
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
# |, J5 E; j0 G- }0 ?1 U
{
# I+ k, C8 B5 ^6 U' ~3 u& ?- G8 O
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
* v& r. T% P8 {* s8 P( i
if( bStart || !m_pItemElem )
; q$ i( G. p7 |) ]" G
{
$ d j w1 l8 P" ?9 d; A
pBtn->EnableWindow( FALSE );
) {# W) e+ N1 H
}else
3 |; k$ ~6 I. l9 p. } }' l+ w
pBtn->EnableWindow( TRUE );
4 O' k; O8 [0 B& S. j# Y0 A
if( m_pTexture )
3 F+ X- v/ i% Q! E% n. r
{
% U3 v- e# R7 j& P' {/ q2 D
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 M, g; p% z5 S# v& c/ `% b, [
if( wndCtrl && wndCtrl->rect )
( @+ V1 }7 O( c7 i' N
{
. l2 x" C* O2 U. x% O- u
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
n( r7 R% J" \& ~% w# c9 g' }
}
; m- S! x! |/ q
}
/ J! E3 {, T6 ~4 ~2 Q3 f' l
}
9 Q& z0 Y; y# {8 {8 C2 p
( {. L c% k+ o4 s$ G
BOOL CWndAutoFood:
rocess()
* G+ X0 F) Y" I8 O3 W
{
) B; u( O" D+ U5 f. p$ E; p
if( bStart )
& s! |) i0 T0 A* k' U1 V" @! L
{
L$ ?& N' e( K2 K- _ @9 Y
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
! F/ z( B4 r- ]
{
. s3 E/ j1 I9 X1 h9 k
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
. @ g3 C* f# m+ T3 Q6 J v
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
8 f, V+ R3 E% B* t+ Q* V/ s
}else{
2 B4 r# W5 W2 S
bStart = FALSE;
: s3 X) U% U( R* Y
m_pItemElem = NULL;
1 s( U8 C" t5 r4 X% t
}
4 j8 ~5 }' {8 v1 E$ z& b
}
" B$ C! u: m$ G# C I& M8 ~" W9 U
return TRUE;
+ n" I# R1 }; T) }/ a2 J
}
`4 j1 v9 e: @7 w8 a
4 x' \. T6 c5 ]) N. e
登录视频废话:
( @' d1 ?: ^& e$ M0 k
尾翼:
h1 E2 U9 R* @9 g& q, e
) B J5 l3 P" x. X; b2 u: \
代码:
1 f% J- h4 k: c8 X- ^4 C( A5 }
( Y3 t3 `) o& [$ x6 n
void CWorld::SetLight( BOOL bLight )
& ?+ P2 n: e4 @$ Z) z3 j3 \8 w
durch
. H6 B: s9 m8 x4 k x, A- g
Code:
0 }' ^6 y* [7 J7 z0 p8 f
void CWorld::SetLight( BOOL bLight )
5 {5 f, O. i1 W* d: n$ k
{
; I, n8 _7 l3 ^6 h, s) ^
//ACE("SetLight %d \n", bLight);
0 \: j% W/ G* y7 b1 T# [: w# S
7 D. z1 t8 z) {
#ifndef __WORLDSERVER
; C4 D( q$ G# ~ z7 k0 p
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
8 N4 m. M9 |, W- o/ A$ U
CLight* pLight = NULL;
8 @5 b- d5 V7 W' f+ @
# u E& Z) a9 }8 ]
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
Y7 Q% ]0 P, o9 U- B
. Q' ]; F3 e H& Y1 z
pLight = GetLight( "direction" );
4 o/ x# u6 z4 j) X! g3 t* @
' A: e1 ^- j* p
#if __VER >= 15 // __BS_CHANGING_ENVIR
# H9 b# C$ U) ^" a6 j# i+ Q
if( g_pPlayer ){
! j: v$ X1 x. [( E1 U
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
2 h) k6 k" }6 M4 v8 g/ T! V+ D
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
. |7 x- [! r% H
{
2 \ z% g2 T) t1 L7 [- n
if( pLight )
' I5 ]1 n4 G# U5 [
{
: {, Z) y9 s' t/ I5 P
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
& {: N: J! }' {; B
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
[$ N! Q5 a X3 b: T
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
- ?! {: l e) G5 Q7 v
# k% n1 |) X0 O! j3 n
pLight->Specular.r = 2.0f;
# u' b& ~; g' B
pLight->Specular.g = 2.0f;
, K- d5 R/ Z# X: E+ s
pLight->Specular.b = 2.0f;
. S: c& Y* T. g1 \
) Q- \0 d; ], @
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
8 B! z/ F8 b+ j" K; l) i: p5 R# ]/ ~
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
) F1 p+ Y' T) p- X; `+ P) h
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
/ h5 k Y! [4 O- l
4 u' D7 ]( \( K4 M4 U
HookUpdateLight( pLight );
3 p9 S) P5 e- ? m& v
; Z0 N; z! U% \: G. `3 _
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 ~3 Z$ q: j% s4 A: Y/ S2 @
& k7 y4 J( d- ? `& G u- b
pLight->Diffuse.r *= 1.2f;
. Y+ o. T- e2 {3 N# F, B6 ]" [( ?5 u* l
pLight->Diffuse.g *= 1.2f;
! _. w0 C- {, v4 y- ~
pLight->Diffuse.b *= 1.2f;
?- j# D. P) K$ I9 ]+ V8 f+ A3 T/ Y
3 F: V5 y I/ J1 t+ C6 {: _2 b
pLight->Ambient.r *= 0.8f;
5 {$ v8 e) q5 R+ I/ W/ d- V4 W
pLight->Ambient.g *= 0.8f;
8 { U! I. ~1 L J8 A7 F5 Y7 U
pLight->Ambient.b *= 0.8f;
& Y2 X) j c( [, ^
! `. v! C% M2 v$ q3 s
memcpy( &m_light, pLight, sizeof( m_light ) );
. `) N# S" i) e% l8 g9 \$ G
8 F! g7 y* b; N, @
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
. H5 h# [" G" O) l$ ]
D3DXVec3Normalize(&(vecSun),&(vecSun));
, ]6 K4 X: B" L7 P7 q2 U5 f1 G. a( E
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
; E# q* ~1 j+ W; h! K& ~. y8 t
pLight->Appear( m_pd3dDevice, TRUE );
* i2 \2 f; j3 c
; u- d! y4 U& B/ g" f3 Z
DWORD dwR, dwG, dwB;
c3 Q7 K- b% O( W3 U
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 Z: A7 i9 i. r$ A
dwG = (DWORD)( pLight->Ambient.g * 255 );
$ I& ^2 \% N/ Q, R$ j: J
dwB = (DWORD)( pLight->Ambient.b * 255 );
' v4 X/ z: W# @4 L! m8 i8 ]- U
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 l0 K. q/ p* o
}
w: q2 h: H g6 q
}
# {) m9 P+ o4 }
}
: c3 e6 Z/ j! ]3 j/ G! z1 N
else
: L% l9 n( i o+ [
#endif
7 L3 ]( }/ _5 ?) y, _
6 I# d! `7 m0 n1 G# W% A
if( m_bIsIndoor )
& Y7 X2 {( P0 l( X
{
" W& Q7 T7 o$ S' r- u3 {8 O
if( pLight )
0 M5 D7 j. u, t
{
6 E. u# M. k! c: Q$ R
// à??μ oˉè*
4 u) C" s; d1 t d
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
) `+ s( }4 O4 T* \: H) W) V4 C8 c
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
* p) {% |* O: n- X
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
# L1 B: y! E4 {9 o; i# |
7 R( W, c: l. h* Q
// oˉè* ??à?
2 [+ l( b9 b+ b% V# k# Q4 C
pLight->Specular.r = 1.0f;
6 L, ?: u% ^) [
pLight->Specular.g = 1.0f;
% z6 f" a: u$ w S2 a
pLight->Specular.b = 1.0f;
G' e/ ^9 H" _. P3 w
// àü?? oˉè*
0 R+ a+ R; S! U( A5 r
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
" D, I. l3 `# C i' x8 J
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
6 j1 A) N6 S5 }: x" H; z
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
5 S, @! Z. w7 J3 N
/ V4 ]; c$ a' ]+ x7 p
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% O0 k k: H& I9 n8 Y" g
{
7 d) d; u- U m+ Y
pLight->Diffuse.r *= 0.6f;
+ M( A( w2 S0 i2 _& l
pLight->Diffuse.g *= 0.6f;
9 g/ s1 O6 h! N% D& S
pLight->Diffuse.b *= 0.6f;
8 y: j2 b, Q6 f/ b! W, B
pLight->Ambient.r *= 0.7f;
1 N% I3 Z0 N0 R7 _ r2 j8 G
pLight->Ambient.g *= 0.7f;
% a' B2 o# T. @6 b2 E ` }/ H+ q
pLight->Ambient.b *= 0.7f;
. }. O5 a# x; k
}
# { @: c& B9 O- r+ u% Q. H
9 j: h' M! q% x1 D/ @
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ G3 P3 @9 q$ r0 ^4 _4 e/ A0 [
if( g_pPlayer )
- b+ ~$ M; w5 W; W ]2 h+ p
HookUpdateLight( pLight );
3 s5 ^* N; V, W
#endif
. u+ z' P* Z7 \- L) k
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ p: E8 g; u4 a: L7 q
/ w$ @2 n& Z# p' l* `. }
pLight->Diffuse.r += 0.1f;
' O5 j8 S% A8 ^$ n/ c6 ]( f
pLight->Diffuse.g += 0.1f;
; c: p! p f. G3 v, o: h
pLight->Diffuse.b += 0.1f;
6 U! L& H! X4 Y6 b5 x4 Y
// oˉè* ??à?
+ \2 r4 C; c) W, ?3 C/ q& U
pLight->Specular.r = 2.0f;
5 I6 ?) l; J/ A+ W; T
pLight->Specular.g = 2.0f;
6 [% c6 F9 d2 E6 v! J
pLight->Specular.b = 2.0f;
+ K% T3 i. I" D9 W0 |
// á?oˉ
+ D8 w4 Y6 T8 i2 Y+ n
pLight->Ambient.r *= 0.9f;
; h' }- m: A! U3 K) x9 ~$ E
pLight->Ambient.g *= 0.9f;
% W# U; `. Q* t% m
pLight->Ambient.b *= 0.9f;
/ N- t" _1 q* Z6 T1 i' S- u1 v9 m
3 G1 Q( H4 F* @7 r, I
memcpy( &m_light, pLight, sizeof( m_light ) );
) o& p& S; ]' A3 h* Z- K
+ b' ~+ _: w* }" Q9 y% P1 H/ c
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
3 r2 g' |# @1 p5 K4 A* ~
pLight->Appear( m_pd3dDevice, TRUE );
; t& ~3 j" w7 q( n5 x$ v
, O# H" q2 j% g9 Z: _( N8 R5 K
DWORD dwR, dwG, dwB;
2 W8 t6 T7 g1 @0 p1 k3 \& e5 N0 M
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 B# X' c: i( o" H8 R7 Y' E
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 m# J, x* M1 z0 b
dwB = (DWORD)( pLight->Ambient.b * 255 );
2 a5 q; Y: C' H. ^. }9 T6 p
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 W7 l1 I* b. [ b8 ]4 O
}
+ Y3 l; I9 O" E; E! R5 P5 X2 T& n
}
{2 K" U3 ]: A6 G5 i3 B1 \
else
: a; U# W& O V/ x/ L3 i% c
{
. i6 \' `; n4 b8 g, p
if( pLight )
* D; c: H# R1 K- T# P( {) o
{
1 C- ?+ A) u. `
( _5 F. T1 ]. `' E! j* o5 |5 v6 P
int nHour = 8, nMin = 0;
2 c- x2 F' b% @1 m' J- |
#ifdef __CLIENT
) s( z, Z }2 g k% u/ i
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
% X* j3 ?1 [. `; }! h8 q. i
nHour = g_GameTimer.m_nHour;
6 ?& J* z2 n3 @- D: D
nMin = g_GameTimer.m_nMin ;
; i4 i& O) B# D( f) O3 p
#else
" t1 n3 q. f- H) m! s- b( m
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
2 U, @5 k& t. s! U$ |/ Y. e( ~
if( m_nLightType == 1 )
( X5 E3 s# \9 V. h# I1 v& {9 k E
nHour = m_nLightHour;
. a7 D8 G. n9 h/ A/ z" _
#endif
% E7 F* Z% Z% `- p
nHour--;
3 W2 l9 a5 A* A1 J; D
if( nHour < 0 ) nHour = 0;
& G8 z9 z$ n- b
if( nHour > 23 ) nHour = 23;
( }3 v0 O7 l) Z' q4 h2 m& T8 M
+ ]7 u% A7 H e' x7 }/ j$ ~
//if( m_bFixedHour )
3 b2 j3 O4 F4 z- {
// nHour = m_nFixedHour, nMin = 0;
9 D+ a) I+ q2 h
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
$ {# }6 b" y+ O7 w; b6 b9 ?) o4 }
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
. @( J# s1 A% V6 P
1 f) C. T+ {. e* I" O
//m_lightColor = lightColorPrv;
, u" V, [0 Z7 {9 e1 `
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
& l; \. [$ g, \) C8 N' u, D& a
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
# U' R% _7 r( t/ e
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
# F z1 w# r) ~2 a/ d0 |
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* q$ ?( E* ?8 y/ B2 A9 p
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
5 A: J" F }8 z1 Z6 G! s
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
) ?/ x) X/ d0 K- {( C: @
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
' P$ Z& A9 p! N& S5 g
9 t/ f5 j; S% x* _+ a
// à??μ oˉè*
: @2 {0 A: v" G
pLight->Diffuse.r = lightColorPrv.r1;
9 ^) R4 E: ?( J; B- w$ B
pLight->Diffuse.g = lightColorPrv.g1;
! @' ^% }- j- `% E
pLight->Diffuse.b = lightColorPrv.b1;
/ u _1 r( @/ d" |* J
// oˉè* ??à?
- R4 C8 F& Y2 P: G& f! ] s- }- c
pLight->Specular.r = 1.0f;
3 f/ G. m' z( {+ L! _
pLight->Specular.g = 1.0f;
; r$ J8 e2 b2 a" s5 c
pLight->Specular.b = 1.0f;
9 g- _# ~( p! p5 y, L
// àü?? oˉè*
+ S- b% O/ k( `8 c0 h8 D: g
pLight->Ambient.r = lightColorPrv.r2;
1 @. V* R* z. i8 p
pLight->Ambient.g = lightColorPrv.g2;
0 |: s' C7 R' M
pLight->Ambient.b = lightColorPrv.b2;
6 L3 I0 i- _! b5 Z3 c
3 h0 N! s5 ^; e% f! L
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
6 T" t0 j* D* M+ b9 D0 m0 c. W0 D+ o
{
& w: ~( F/ J$ v& T
pLight->Diffuse.r *= 0.6f;
4 W7 E& h* K: ^
pLight->Diffuse.g *= 0.6f;
" a5 q5 B8 _$ Z
pLight->Diffuse.b *= 0.6f;
9 W, S' @% w, h* I* N7 o6 M, J8 ?
pLight->Ambient.r *= 0.7f;
( }2 Z6 p0 I# ^- D$ I* [
pLight->Ambient.g *= 0.7f;
0 W) p0 w( ^$ \4 @
pLight->Ambient.b *= 0.7f;
`0 F8 _1 u: S1 ]3 f
}
$ d" `1 U5 G( Z; ]) f
$ S. A" x% P; C
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 \+ C: b: s& d# g9 m
if( g_pPlayer )
+ w% B' ?* i6 p1 _9 K$ W9 `
HookUpdateLight( pLight );
: _, R2 o3 K9 h& ^3 A* y
#endif
! e3 Y. p# Q5 c% v% ^' `
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' Q# J% \4 }3 C' l& h
5 l, d) I J- W, {- {
#ifdef __YENV
3 g2 c2 o' f: ?- \; y
pLight->Diffuse.r *= 1.1f;
# f! K5 z5 L* j. H- h
pLight->Diffuse.g *= 1.1f;
/ O) t. J# B& |% N; w# i
pLight->Diffuse.b *= 1.1f;
& l! Q+ ^) Y4 K) a/ T! M/ h" {
// oˉè* ??à?
8 r4 L2 o( Z8 H2 S
pLight->Specular.r = 2.0f;
; ]% @- n$ C6 T5 _
pLight->Specular.g = 2.0f;
n1 j( v: K- t0 Y- h
pLight->Specular.b = 2.0f;
, H- [/ F) e7 Z2 T( Z
// á?oˉ
3 o; N% S; ~% h6 o+ R
pLight->Ambient.r *= 1.0f;
2 h2 _2 {/ ^! p! g; m
pLight->Ambient.g *= 1.0f;
: X7 n% w0 S1 ~3 X# B: ^1 h
pLight->Ambient.b *= 1.0f;
* Z) E1 Y* ~; ]3 |6 s' [
#else //__YENV
' j P/ y( C8 G
pLight->Diffuse.r *= 1.1f;
3 x$ ]2 u" ]' c4 m; ^
pLight->Diffuse.g *= 1.1f;
9 f+ F4 d1 P+ n: C! ~4 j- Z$ x$ h
pLight->Diffuse.b *= 1.1f;
2 H n+ L0 L8 I9 i" V
// oˉè* ??à?
/ J2 @4 u9 g. q. ?/ ]# i( @
pLight->Specular.r = 2.0f;
, Y# U, I+ ` P/ ]- |% d
pLight->Specular.g = 2.0f;
~. J) G( z$ O% \$ s
pLight->Specular.b = 2.0f;
$ o1 x4 Z5 C* v9 J% m# U, i- `
// á?oˉ
/ W! k/ |0 n0 I& M3 z" h. H' A
pLight->Ambient.r *= 0.9f;
: V' _) c- V# x3 ~0 ^- C! h
pLight->Ambient.g *= 0.9f;
: J5 _9 V* {) p- N3 P: O5 \+ [, ~
pLight->Ambient.b *= 0.9f;
2 h8 u' p& L" `
#endif //__YENV
# t: H9 k2 l3 ~- F$ u1 M! O0 l0 ~. C
' ]2 ~4 i2 Z* v' L$ W, l& Z% {: C9 n* g
memcpy( &m_light, pLight, sizeof( m_light ) );
6 y; [% q6 g8 w/ X4 G, H" g4 U
/ n& B+ o+ x# L! p \* z$ Y
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
( n' b- [& W, D6 G+ u
D3DXMATRIX matTemp;
8 w3 ~5 O% k: l3 d
static const float CONS_VAL = 3.1415926f / 180.f;
& W3 l- L! M1 [: D' _
% c6 }) j: [* n$ E
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
! J R* f) t' F ?1 w: v+ V
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
) `. p) \) o! r3 y7 K
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
, d5 V* k w! @% E% W) ^6 O* y, u
pLight->Appear( m_pd3dDevice, TRUE );
6 v N$ f) i5 z
' _7 x) i! u3 s' O' A6 E* H
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
& I: `7 W( o; L. e# v' S2 D% I; d
// D3DXVec3Normalize(&(vecSun),&(vecSun));
* \0 B4 l5 P% G9 m7 p6 V. Q9 [
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
' X2 A z2 H, u( ^2 N$ C6 e$ X
7 ^. r: |1 H( P/ I3 L' Z
DWORD dwR, dwG, dwB;
+ i) s! Z- c) Z; b/ s' b
dwR = (DWORD)( pLight->Ambient.r * 255 );
) B4 g2 a, k8 D0 G' x# Y7 g( \" t
dwG = (DWORD)( pLight->Ambient.g * 255 );
# b$ w/ J' {, A
dwB = (DWORD)( pLight->Ambient.b * 255 );
?3 c- B7 I4 }: V0 q$ [/ s9 `
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 x" _; I+ P/ [
}
3 O2 V/ u4 v+ n ?4 ]
}
2 Y" x% s u' K8 j, q- V! s# l
8 Z* n& L; ]9 D: t4 m
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
# P5 D5 W9 C% V+ |5 F4 |7 `
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) );
3 m! X- @! T2 W5 @
::SetLight( bLight );
* T3 b q3 p, }0 ~6 d/ F7 k
& q7 R$ G$ Z5 O: F h
// ±ao? ?D?í???ó á¤à?
4 Z# ^, e5 z8 A( b& C' f9 [- ^
m_pd3dDevice->SetMaterial( &m_baseMaterial );
) b# a& E8 h6 ^1 J- `6 O
5 G' X# g2 u/ {
#endif // not WORLDSERVER
! u9 j1 V1 R l' @1 R3 W7 I
}
3 N8 C$ p0 X$ u1 V, k6 n
并更换
- e. x- A. j5 j# _
Code:
6 u8 a8 h. R5 `1 w s8 k
__FLYFF_INITPAGE_EXT
; p# A, G3 F, J' E! F2 `
定义
, p. C0 R; Z3 S& E" d
1 j* q1 U& U0 Q* D! Z9 I2 b
7 W& X4 [* m; H/ ]2 L
# S2 O8 c* c+ n* ?7 n0 W# n5 @
3 G# j* s( P2 T6 Y1 ~
现在终于删除我的狗屁加速...
. R# U. B9 ~& W
4 y: G# e3 c% l
; h9 b/ H' B! X s& d% K+ y
* i J7 q- F. k5 X# G: K4 w5 m+ g" u
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2