飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
6 R% ?( T- g3 X% g& Q' J
尾翼:
1 L3 n6 ^: @" d& m' ~4 E( `
% i6 {4 n3 M6 V6 W2 g$ i! M1 d
代码:
; f0 s9 T5 M: Z. \+ m+ p" }8 a
CWndAutoFood::CWndAutoFood()
" G4 j! E7 V3 E. h' m2 G
{
" z( B% p; O0 a) ]6 Y* Z7 _9 S/ L- r
m_pItemElem = NULL;
$ @( b5 {6 s9 h7 t4 z
m_pTexture = NULL;
. S% I2 Q. B) x% |" |
bStart = FALSE;
0 K( Z3 f V; B" t1 e+ R9 O W6 z
}
; o& [' j7 n& V% w
# k6 h- |* y/ ~1 c( Q d: R% ^- J
CWndAutoFood::~CWndAutoFood()
( {1 R" @' x! ?1 a m
{
0 v/ c9 B3 ]' F/ R# ]
AfxMessageBox( "AutoFood ist gestorben
" );
$ K- Z: \1 ~5 s
}
$ b# w2 g' g% f6 u
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
2 k5 q Q5 E7 s6 w H. q5 G6 `$ ]2 m- {
{
; \2 A7 ?* R/ A/ t
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
/ p' }6 h! r. ~8 J' S" c8 |& X
}
/ ~/ F$ G3 a" q7 b6 y/ j
) }1 b- K0 j5 z2 f# c: N
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
! v! E2 n7 Q0 |5 u( b
{
& t6 t) P9 P* m; C7 K3 [
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
7 n8 {% `: ]% t( v9 d
CRect rect = pWndCtrl->rect;
+ c# `+ a! Y" F
if( rect && rect.PtInRect( point ) )
" U- x) c7 \* F c' ?" M: ~( |
{
l8 M4 N+ I! ^* K, G" q. x* \
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
% U5 G) S1 c: c ]
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
& r# W. w1 Y9 u( V4 W
{
0 g8 h4 h: M* _
if( m_pItemElem )
1 }1 U! v+ b1 e: J0 b
{
% {# y; R e/ [8 V5 U7 F: z1 k
m_pItemElem = NULL;
0 C; ~6 U( V7 N3 B, p
}
! G7 n+ l7 {, c) L5 n
m_pItemElem = pItemElem;
( R" V: @4 X$ Y0 n! o& r1 r# Z! V
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
- N- x2 P7 w+ W5 f& S
}else{
; ^) S1 R) k$ n! \* e
SetForbid( TRUE );
. n. Q. \1 i2 C# z) n
}
. z0 q" q. f* s3 K9 s
}else{
2 B0 J' K1 I: A# |
SetForbid( TRUE );
8 u; r% ?) i" D( i1 \
}
3 X) s6 Y y: v- Y/ h% [" E
return TRUE;
+ m' r, j& @9 o# A+ [
}
1 E! i1 V9 p' X( U
, n6 Z' e' v+ l
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
3 A% O7 T5 |2 q- F
{
: }3 f6 K J, M
switch( nID )
o0 K# X D) O$ o2 D8 D ~
{
- D2 R$ b8 l( Q
case WIDC_BUTTON3:
+ y; i. y0 f$ M6 `+ ]
{
7 H7 r# N) }/ Z
bStart = TRUE;
! w4 B+ a/ h3 W* V! v5 U$ ]
break;
. {! F$ z3 Z# u' p
}
% v' n8 g1 t9 x4 i
case WIDC_BUTTON4:
, I) T4 {3 r: ` Z3 R; s3 f
{
* ]- Y0 g/ Q0 S9 m0 j0 v; |
bStart = FALSE;
) [$ y" K; b) P9 I" ]* @% t; Q
break;
0 M* Z' Q0 C2 Z. N7 O+ ^1 B
}
7 x, w( C; e. ` ^) N1 \
}
5 x$ C" l3 s# \" t) a- g+ X6 |# h
return CWndNeuz::OnChildNotify( message, nID, pLResult );
3 K- s2 { T( h0 k4 R; i
}
* w( P9 Z; y0 l6 {( t% r0 k* B5 ^
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
9 }/ X" k5 a& y. d# l1 F9 l# Q) j
{
1 X5 d6 Z: X* ~: g% I6 U2 n
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
4 c1 o; Z6 j/ Y! {
if( bStart || !m_pItemElem )
* @( I4 I/ s' o& T) K/ D* L# T \
{
/ ]* z: j% `# J6 O( @' N
pBtn->EnableWindow( FALSE );
7 ?! x+ o V3 p9 \
}else
% |( U: c7 k( j' }( U" l, _
pBtn->EnableWindow( TRUE );
2 G9 V W4 J1 n+ e8 Y
if( m_pTexture )
0 }( c+ z7 t, ? i8 W9 m$ A
{
* e1 h. w: N& Q# J7 {
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
) c+ q1 H5 Q c( Y' A
if( wndCtrl && wndCtrl->rect )
- F; B6 n L! ~' r% k
{
9 O+ p* D* w# {, N3 P7 z- h
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
. l9 [ u ?; ^$ `+ p
}
, @& J9 ]) ~' j* X( L
}
+ ~5 X% i# _1 H/ W
}
2 y; L1 y2 B0 t5 X/ n1 q
1 ?) L( [. `- |$ N6 ?
BOOL CWndAutoFood:
rocess()
) M/ e: y/ ^6 j) ^! k/ n
{
& X; m, j: K6 G5 }5 O
if( bStart )
: w1 g- |5 }3 ]- c# i* a0 Y
{
" d/ R) ]0 [3 O
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
" z6 F5 T4 Q/ `7 e- g# d# ^
{
4 L P' F( H$ N
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
% d& s, j/ o) k- o
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
+ G1 L3 ?6 s8 ~. O% y" S! l
}else{
( m& | d3 l3 F9 @
bStart = FALSE;
0 N6 I' U- d; E
m_pItemElem = NULL;
( ^$ `: _7 f5 u# A: o* E3 n
}
; S* ^% J% j* v% S) B; \& }
}
6 H+ e+ P2 I: g) `
return TRUE;
O8 H8 p" y3 S* |' J5 z
}
+ z8 ^* X8 u/ w% T2 e+ k- ?
( P0 p5 b4 T5 ?2 \
登录视频废话:
+ r1 v4 k; \/ h, D
尾翼:
1 ]$ {' U4 w" `; X- k. u& C
3 t) B+ `3 @. m
代码:
6 Q3 I( a, E, u. C6 g, n
" h" J0 J0 C1 @- `3 i# \4 N- w) e
void CWorld::SetLight( BOOL bLight )
- E0 K W7 M! Z" B9 x+ ]
durch
6 t" v" a" ^$ ^4 g( }3 G8 E- {% G$ e
Code:
# R" {+ \; R3 \. n
void CWorld::SetLight( BOOL bLight )
* A) G+ s' e. P! T# ]
{
: F2 r/ `6 o1 a8 m
//ACE("SetLight %d \n", bLight);
$ v4 H8 G9 F5 A8 H: Z9 i4 `. Y
& s B3 T. a- K4 p" L
#ifndef __WORLDSERVER
+ y+ }+ H/ k: e* D' E- ^& S! v
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
2 i7 @( E0 j5 K4 c, d2 e7 ?$ }0 y8 ~
CLight* pLight = NULL;
D6 J; f+ N B- O
6 N# a, N) o% H' T: `1 m' {6 M
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
' C# {! n6 J4 l$ F8 ]
" V. p4 c+ T, X+ E( c
pLight = GetLight( "direction" );
0 I; O ?2 u8 D
+ R$ ?/ H: X7 o$ i
#if __VER >= 15 // __BS_CHANGING_ENVIR
4 t" ^) y5 ?5 Z
if( g_pPlayer ){
3 y- L6 s! J3 Y3 {2 r7 a
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
- h y9 w2 p( i# V# A' O w
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
5 ^, N2 [9 [$ N- _
{
. c4 m, N6 n9 A$ p1 V6 G5 u9 l
if( pLight )
, l$ H7 l6 F7 P6 }2 x
{
% I$ C! q$ {: k. F" R
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
1 }/ ^1 H% Y+ [& V' _- k. b
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
$ Z$ L u# _5 I* Q/ F7 M
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
- g2 p6 e/ I) ]" `$ d
2 b& Z( a: k- a9 C# H$ t* l
pLight->Specular.r = 2.0f;
- s% Y0 `) j' N+ F5 D- v
pLight->Specular.g = 2.0f;
- e' i4 e+ R/ K2 [0 b# F6 I+ v* j
pLight->Specular.b = 2.0f;
- ^7 ~. x$ s2 r' Z) ?
! y$ R; T& y% v( x
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
& k% b8 Y F* q/ H+ _. w
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
/ V( z+ v6 s' K5 v& G6 c$ N
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
+ W5 H' v9 g/ r9 E P
! i f, y. ^9 k+ S5 ?
HookUpdateLight( pLight );
S# k6 a) c1 s# B, W
; c1 v3 @; z. ?) ]
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# [0 H4 ]- \. i0 G
6 Q2 G ? I, f2 a2 M$ q$ k8 x6 [' E
pLight->Diffuse.r *= 1.2f;
3 M* ^1 d+ C) S: T+ y( J
pLight->Diffuse.g *= 1.2f;
. i* y: f) \0 ]
pLight->Diffuse.b *= 1.2f;
4 f }2 L5 ]1 _8 J# O$ @) m g
$ k, ?% W5 f6 z5 g
pLight->Ambient.r *= 0.8f;
: o1 s2 r; i! x% n/ `
pLight->Ambient.g *= 0.8f;
/ r c0 c. [: A! V
pLight->Ambient.b *= 0.8f;
. i' U: h& x8 u8 @$ o
& A" L- L5 C# \
memcpy( &m_light, pLight, sizeof( m_light ) );
$ }$ D" [3 c* {/ @% E8 L: X
% ?& k+ @* ~% n3 k- @) G
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
- q' S% s" N0 q( V7 } R" y
D3DXVec3Normalize(&(vecSun),&(vecSun));
+ Q! R. O0 X0 [2 ~- v
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. p6 S# o" Q" t6 s3 p
pLight->Appear( m_pd3dDevice, TRUE );
3 r# V( ]; u5 \- r
1 J" u6 X, e, H
DWORD dwR, dwG, dwB;
( b9 e" X8 B3 q7 z, z2 P3 y
dwR = (DWORD)( pLight->Ambient.r * 255 );
9 p H1 J, z% Y' X( ]* s1 b+ W9 h
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 Y+ w5 r3 j) E# K8 \( ~$ L ?
dwB = (DWORD)( pLight->Ambient.b * 255 );
! E8 Z; v4 E% K
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: U( `6 J. u9 U. Q" |# z
}
! x( K0 U, S1 \
}
! \8 ^9 Y3 s A
}
9 y" X8 e9 ?& k7 s9 {) l" b
else
8 [; ?0 Z) Q( J2 D7 W, F
#endif
8 I0 }. `5 x; E+ [& s; F' h
8 D+ K& i5 Z1 }& D4 F" T
if( m_bIsIndoor )
, |/ x. l; \' u5 B) S
{
& @ h3 J/ ]' m0 i4 W% [
if( pLight )
6 D. A6 r- j6 s( {% Z: D8 p' i
{
+ G) R2 J1 r, l, Y) T$ Z
// à??μ oˉè*
6 G( M6 P( Y# v3 o' p& E
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
. i+ U5 F' M3 _( H0 P/ g3 b
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
, z5 }0 M+ _9 f2 G: K! |
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
7 f) ~/ C0 |! L' [' s! d' s
; m7 q) k2 P0 s3 \: F5 B
// oˉè* ??à?
8 I" E& G$ t2 N( @
pLight->Specular.r = 1.0f;
5 R8 Q& B6 Z% u+ v6 j* S- A. x
pLight->Specular.g = 1.0f;
3 D- v* f3 s. I! f+ K8 \, a( @
pLight->Specular.b = 1.0f;
" [+ U) o8 Z$ ^+ ?. f
// àü?? oˉè*
/ k5 }7 ~0 s. F6 w
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
, P4 _$ \5 F, b& g5 P; P2 W
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
1 a4 L" x p* B9 D
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
# I6 }' u; G' `- u3 V1 J' k
* {; S, f% e c+ c
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
1 J6 l" p: u( s; c6 F
{
9 L1 h9 Y# ?' H, W& T
pLight->Diffuse.r *= 0.6f;
9 N1 q6 P+ ~+ @$ V e4 ^$ t0 }
pLight->Diffuse.g *= 0.6f;
, \- Z7 ]3 h9 s* `! P
pLight->Diffuse.b *= 0.6f;
- s+ k, r; c$ U/ ?& I- A$ S
pLight->Ambient.r *= 0.7f;
* Y/ X1 g4 k ?) R' b
pLight->Ambient.g *= 0.7f;
! B d% `. B0 R. ] l# ~5 f
pLight->Ambient.b *= 0.7f;
4 K! f6 U+ A2 y8 W, o/ y
}
5 a& g- j! m( `! n6 c2 w
c8 i# U) s, k8 \
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ v4 I7 X6 W; N3 `8 k" H5 r8 c& w) A
if( g_pPlayer )
( D# }) y* x' I' E
HookUpdateLight( pLight );
0 _1 z- H+ l. ~
#endif
% P# i u) \$ ~# V
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 Z" R& K1 J3 ]& L
i) ^ d) n5 S; g$ J' d/ n2 ~ ~
pLight->Diffuse.r += 0.1f;
5 U+ ^- q$ K5 c3 ?
pLight->Diffuse.g += 0.1f;
8 C9 p) `: U( J
pLight->Diffuse.b += 0.1f;
# P- Q6 ~2 E* B
// oˉè* ??à?
# v" y, ?; n' o( {+ i' O5 q
pLight->Specular.r = 2.0f;
9 a( z m' N2 Y- N0 m U
pLight->Specular.g = 2.0f;
, s5 m( c7 m" X" }8 }3 Q7 d1 Z
pLight->Specular.b = 2.0f;
. u' T2 e& h1 g/ `5 z* g
// á?oˉ
a5 }! L& s# A# B6 I! i
pLight->Ambient.r *= 0.9f;
& ?- q' S; g/ S! a
pLight->Ambient.g *= 0.9f;
' N$ _ u2 ^& S0 ]$ B
pLight->Ambient.b *= 0.9f;
! ?; H& {8 `& N% F1 }3 s
_$ X: [! `9 S8 r% u
memcpy( &m_light, pLight, sizeof( m_light ) );
/ j8 Z7 w. E5 ^8 K2 @
% J1 K; H( ^3 `8 ]+ u& j: z, v9 M
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
* a5 r& q- ~: m" I$ y
pLight->Appear( m_pd3dDevice, TRUE );
! W6 U) z1 B: P* x1 X& r' I5 x; O
3 J* ?% Z2 b7 V" L8 g! k2 S" ?, X* N
DWORD dwR, dwG, dwB;
Y* U' M- |3 @6 Q- R
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 e0 A/ I& T! p0 |5 K, M1 p
dwG = (DWORD)( pLight->Ambient.g * 255 );
- M! x! l# q( f/ v1 e) q2 \
dwB = (DWORD)( pLight->Ambient.b * 255 );
7 W. P4 e) P' y$ ]4 j/ j0 H
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 W- O# t& V' M# ~
}
$ [6 J/ Y* ?* n+ r X' I0 U
}
+ G4 k' A7 X% F3 I! y7 S: a
else
! ` \- e X( {- z6 \% {' i. B/ ^) |' A
{
9 [- ?+ o* l- d6 G
if( pLight )
$ R- _2 i( v9 [7 T P7 W
{
+ k1 p- c- o0 i8 ?9 ~& D
/ J. f* f5 c# j# e
int nHour = 8, nMin = 0;
) G! l, `1 K: R3 V, z$ w& U6 G
#ifdef __CLIENT
- \+ B5 ^, y* o
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
3 z! j. f5 K' A; M8 y& L( L: j2 _
nHour = g_GameTimer.m_nHour;
/ t7 E8 S! p/ p- _5 P- O
nMin = g_GameTimer.m_nMin ;
* O7 D6 S0 f5 _5 d/ H
#else
4 D. {% _! {6 @, {
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
6 o3 A4 n) g6 c/ K. ]8 }
if( m_nLightType == 1 )
( p+ {3 p9 ~2 E, x% l
nHour = m_nLightHour;
/ D* O2 b' ~% r' q4 g
#endif
9 q* s1 ]* m: K: a: [6 F
nHour--;
: Z3 g- j7 o4 ]4 F6 Z, b
if( nHour < 0 ) nHour = 0;
" D3 @0 n0 J) `" f
if( nHour > 23 ) nHour = 23;
7 a! |* \6 O/ F3 {
. O5 g3 s5 w; l s8 u0 z
//if( m_bFixedHour )
/ o6 Y. L$ R, Z5 `- r
// nHour = m_nFixedHour, nMin = 0;
" c! J! J, j8 z6 c0 O0 B
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
4 Q! P; Y( V$ x1 M% K
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
0 L; @, F3 O7 m, x' q1 l0 [
: B U% F# o) i# M* g2 J# y
//m_lightColor = lightColorPrv;
$ L' X" m9 S$ h7 w, S
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
/ E7 x8 o _! p3 q( }* T
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
: y& K4 G* L. r4 G* u
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
3 O; e, H5 F) Z: M
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
0 v4 J0 O$ Q% t2 d4 n
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
5 x* }9 L- G, h6 f
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
. s& L8 w! ], c0 ~4 ^
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
8 a5 H( k! B; b0 L0 I0 R
$ W7 e- S. {6 ~+ c0 W# M% X. W
// à??μ oˉè*
' Z, Z, U- F( H. x' J! |
pLight->Diffuse.r = lightColorPrv.r1;
+ k3 e! U; K& b7 H) C. p/ z
pLight->Diffuse.g = lightColorPrv.g1;
, z1 t; X( U- E$ O% ]0 ~
pLight->Diffuse.b = lightColorPrv.b1;
' @1 X7 o1 Y8 N& O
// oˉè* ??à?
" M* O, A" {7 Q! t4 I9 r
pLight->Specular.r = 1.0f;
& T+ ~* B- e' J4 a2 ~# r
pLight->Specular.g = 1.0f;
; l3 ]$ G* d+ [- |' c& m& G; L
pLight->Specular.b = 1.0f;
- e# k; h6 F3 Q3 l+ f, u
// àü?? oˉè*
$ d ?' M/ b# }" `
pLight->Ambient.r = lightColorPrv.r2;
% w- m2 \/ i7 p$ h2 a
pLight->Ambient.g = lightColorPrv.g2;
" |7 n' z3 X% y Q5 Y: _
pLight->Ambient.b = lightColorPrv.b2;
1 z# o7 n% r$ h0 a$ g8 f
* F3 Z* E+ T5 k/ [0 m
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! V0 M/ |. k# B& Q$ ?7 S
{
/ m7 u- o" @$ X" D% B2 A
pLight->Diffuse.r *= 0.6f;
, B+ N/ {# v* a# |$ C
pLight->Diffuse.g *= 0.6f;
3 c) g3 @' d( W. Z# o8 M6 j
pLight->Diffuse.b *= 0.6f;
$ i% b. E3 o& Z7 `& n% F8 h5 v
pLight->Ambient.r *= 0.7f;
" U5 [) G) @; ]
pLight->Ambient.g *= 0.7f;
- ]7 L+ F6 m& h n
pLight->Ambient.b *= 0.7f;
8 W4 ]- l+ j3 N% s8 n$ t9 p4 ?, {
}
# T; |/ [& ^/ _& t- r
3 g. S. E- a* f" a) q# Q' U. S
#if __VER >= 15 // __BS_CHANGING_ENVIR
& t" K5 n2 Z3 c7 V
if( g_pPlayer )
# u: }" [* T' D2 k) t3 W. n
HookUpdateLight( pLight );
4 u, `( S) L. y" [
#endif
3 c- z; n, ~$ b9 T2 Q/ Y. L, \3 o' `
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 h% ^/ t, W' T
( u/ Q. x$ l2 ]1 U2 Q+ z
#ifdef __YENV
s7 @/ W, P1 Y$ P" H
pLight->Diffuse.r *= 1.1f;
0 j+ g( v0 f* B6 j, f- Y3 b$ @
pLight->Diffuse.g *= 1.1f;
& k! Y+ B" Q, h# D* u) ?
pLight->Diffuse.b *= 1.1f;
7 N% p# Z6 t! q: h6 b, P2 c
// oˉè* ??à?
- A( A9 T# m2 m4 D( p
pLight->Specular.r = 2.0f;
) N" B6 k$ Z! i* w1 D2 X/ J: _5 R
pLight->Specular.g = 2.0f;
. N% X w' q$ |: ?0 \
pLight->Specular.b = 2.0f;
+ y+ i& h# H- f/ J1 d+ A% y" V
// á?oˉ
( A& D, E7 f6 }$ T
pLight->Ambient.r *= 1.0f;
6 G, w) e( M! X4 O9 v3 b
pLight->Ambient.g *= 1.0f;
( {5 z8 {3 g9 A% J
pLight->Ambient.b *= 1.0f;
0 y9 M( J+ h: }) k8 h5 U. e
#else //__YENV
: G9 C* C n( f4 Q; E/ k+ `
pLight->Diffuse.r *= 1.1f;
. `- W2 q4 B+ x* z3 [1 I# P! `
pLight->Diffuse.g *= 1.1f;
" N' @, P) C. p4 ~8 K
pLight->Diffuse.b *= 1.1f;
# f+ g- j" {/ u) Y3 F" S
// oˉè* ??à?
' j1 |/ b; A, i; \7 J) Q' i1 Z( w
pLight->Specular.r = 2.0f;
+ H0 n+ ^8 z" g% z5 w, r. C1 y( @
pLight->Specular.g = 2.0f;
3 V+ J4 L& j! O, v4 m5 I
pLight->Specular.b = 2.0f;
+ H5 U+ [* L3 R2 f+ C, h* ?8 g
// á?oˉ
+ ^! q& ~: ~$ s2 e' E
pLight->Ambient.r *= 0.9f;
1 U0 D3 y% K J7 s; G% x1 C2 O
pLight->Ambient.g *= 0.9f;
2 j: a( l% G( a" ]/ c6 l+ F8 A
pLight->Ambient.b *= 0.9f;
( ?& P# ~/ l9 n$ z9 h
#endif //__YENV
; O) ? D! v7 @
" i- a e2 h- M1 K( R
memcpy( &m_light, pLight, sizeof( m_light ) );
9 z5 M2 y# t5 r i! A/ s' f
( g. [( L9 w$ S* G' ^0 B$ u1 O
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
4 a! D; ^8 @% L; e4 E; j! H
D3DXMATRIX matTemp;
. i5 c- n! ]" u& ?7 g
static const float CONS_VAL = 3.1415926f / 180.f;
7 s/ l* E2 q4 k7 p; ~2 k& u+ x; K" E
5 ]# ?* X% T2 X
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
3 ~" k: g$ @9 J' x+ X
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
' a+ h, R/ |6 V1 P3 m7 k7 x
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
. y0 r; [$ ~$ S' V5 X" f" d+ g
pLight->Appear( m_pd3dDevice, TRUE );
% g) b* {0 Y% u( m$ c) x! g
" Q9 Q! Y9 ]# L1 @6 P9 p! S5 z! i
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
. {0 _& H, D8 S N& W
// D3DXVec3Normalize(&(vecSun),&(vecSun));
) z& H3 H9 W+ E
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
; ^ e2 F0 r. @- a! |
8 v& v, L% I, M# J( u8 C
DWORD dwR, dwG, dwB;
# X5 E% w5 R$ f( {% {: h8 H4 k) S
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 M& F: F4 D4 q" Y( A- I
dwG = (DWORD)( pLight->Ambient.g * 255 );
% c9 T6 B& [. [2 C& m% Z
dwB = (DWORD)( pLight->Ambient.b * 255 );
) a' X1 q S; O- |; r; H
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
, g# i; F) U p- t3 l2 l: W
}
$ ^' b8 Z- H5 Y8 ^8 r( a" I3 Z
}
9 G% `# j" ]; C' q
& g( v3 r, s; ^7 @5 U9 b
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
- x0 `: t6 l6 N
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) );
0 N6 c7 X: \3 G4 h) H3 b, b; Z. H* K
::SetLight( bLight );
& N) X& u5 H# V, i h4 z
( Z- R6 S' r+ w/ i4 A( Z4 k/ h
// ±ao? ?D?í???ó á¤à?
/ D; ^2 g& z0 i! z
m_pd3dDevice->SetMaterial( &m_baseMaterial );
$ D* l: ]! w' b: |4 r* B& W
- r- q5 k8 @0 U- o7 R6 p
#endif // not WORLDSERVER
* \; r7 ^# u* I& C
}
/ E7 ?1 l% D! p! p( _/ U4 v6 q- \/ o
并更换
: r/ s2 s) B. D8 j* W
Code:
* Z5 J5 E0 T! W7 B4 ]
__FLYFF_INITPAGE_EXT
% |1 O# T4 z. w- G) k9 O( X, n) E3 M
定义
; U5 J5 B. N6 x7 N: j, y0 n r
$ t1 l" f! V' d
! y% b9 K$ b' z( H. m
4 X0 p/ K3 f2 k+ T
5 K; X( G) H6 B$ }' j% \6 ~
现在终于删除我的狗屁加速...
% A7 |( m# o8 f4 P+ i z5 g
8 W5 J, L. C" b+ v [- B; v
8 l, I* b8 J+ a8 H; n) x/ ~
/ I4 y" Q/ M& b" [$ E3 x
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2