飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
8 A* ^/ C# o2 W; c/ O2 O
尾翼:
# g' |7 F+ z9 w5 O2 r A/ \9 e
_1 N: `* b$ H* F
代码:
/ o, o, f9 d1 i7 k, _
CWndAutoFood::CWndAutoFood()
+ A& g6 ?, v* K4 t9 Z
{
) e% b/ s. R/ Z9 @
m_pItemElem = NULL;
. f/ L4 c9 k- R2 J3 Z5 s) j
m_pTexture = NULL;
6 g0 U% v* p3 E5 X
bStart = FALSE;
I5 ^4 o7 `1 Q( o7 p3 S9 d
}
5 I7 p. ~3 U" x) b
0 s/ E/ J! J9 R7 U, R* T
CWndAutoFood::~CWndAutoFood()
( t }- G u! `& B7 K: Z/ G
{
: }4 k% ^# D$ ^: y/ p
AfxMessageBox( "AutoFood ist gestorben
" );
: s1 U" @ D8 i9 y/ |( f4 f
}
8 m w1 `' H/ `/ v0 R
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
8 `% P) q5 @2 [7 ~+ y$ o
{
) {) N9 N3 }' {
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
$ r9 s& Z) J C. j9 Q6 E$ B
}
* w$ m5 Y& F% G) J
. g% u+ ~. l6 x" ] ?% S& W
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
' G; e% Q$ Q/ h
{
* t% U' R8 ~7 a1 Y+ G) n9 L: i
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 _( \) o6 q2 Z/ R% }! P- P# m5 a1 a, |
CRect rect = pWndCtrl->rect;
0 z( N7 A5 b7 M
if( rect && rect.PtInRect( point ) )
5 {/ F9 v) m% e& c7 s7 c( \0 n J
{
! a7 q/ q& n. U
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
/ |; F% [0 f+ l- J
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
5 q/ E3 E4 a3 s- ~8 V9 [6 c/ ?
{
! R. q% V4 o3 k1 }
if( m_pItemElem )
% \$ x# L2 z9 a9 g( x
{
+ ?, q' n R, y% W2 r
m_pItemElem = NULL;
. g) R8 S* p% l7 {
}
5 u5 m9 A, ~" L! j
m_pItemElem = pItemElem;
) a; G9 o* O& W
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
; K$ y t {3 v z
}else{
) E% b4 I2 p0 B& m# D
SetForbid( TRUE );
8 o% [! c9 }" H( t3 e- ^
}
3 E0 S" w. l( I+ h9 I% l
}else{
& [" b( H- f r: y3 D6 h7 _
SetForbid( TRUE );
+ u/ t- q' F3 a2 u
}
1 a$ X _& M9 Z5 Q+ y& h' ^
return TRUE;
7 e% f5 W9 {( ~# G: f
}
! W7 Q6 v( V+ Y
4 Z. C9 d- p0 ?! D
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
/ [+ X5 x# f1 _8 p [. w/ V3 j
{
+ Q$ S: I" X* ^. Y
switch( nID )
! A* C" ]0 o0 ^ s u/ O
{
) ^+ h1 D! F/ V! ^5 ]/ ^4 }
case WIDC_BUTTON3:
- W" S3 e+ B, T* |
{
# f6 s q5 \% W; _ o+ O3 C+ ~
bStart = TRUE;
+ Y4 E6 s, Z8 Q% y
break;
% S; g! W/ `- r) K- m0 g- E
}
! g9 k- u, U- g, O' i- _1 n
case WIDC_BUTTON4:
5 D. ~5 Z' ~. Q# P1 l" [9 L/ t {
{
+ @, M4 S( _& {& u/ @2 c
bStart = FALSE;
7 `7 _5 Y1 l* r+ F! ^
break;
# G7 X) ?4 o8 J v
}
) l5 ^- m& H$ \+ a1 F2 R4 t
}
! j2 ?$ ]% s. i9 n( {, c
return CWndNeuz::OnChildNotify( message, nID, pLResult );
) ]) B' @5 R$ i/ y
}
+ v2 g* n+ }( a- P; g( P/ {
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
. k" j1 w8 z, |
{
$ ~1 W4 @ m7 H/ n9 R. i D
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
: r- i9 R( A+ ~0 c5 ?
if( bStart || !m_pItemElem )
+ z1 V$ @2 s L% T8 E9 N6 ^
{
- G' }% ?& ] _& m
pBtn->EnableWindow( FALSE );
* @3 E; c! }# f+ ^; n/ @# ]
}else
9 @5 t! s- X& C- h3 e5 {
pBtn->EnableWindow( TRUE );
# `* r$ D0 |$ t/ U& k7 y
if( m_pTexture )
' m- g2 W$ {8 v/ G
{
. `! X) o) w# T6 W" }
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
1 v" K) @0 ~/ @9 [
if( wndCtrl && wndCtrl->rect )
# A0 R4 {2 H; v- j/ [- q
{
5 R8 r4 Y4 i/ `2 i9 l4 N' t
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
% i T7 I" Z0 p E# s% Q/ J
}
: I! v S F4 x
}
% ^6 K8 A3 k: Q6 E4 t- z" ]1 x
}
" i7 |) v+ `5 Q4 _- B m/ w0 T
k8 v6 m8 S* U4 w0 o+ A
BOOL CWndAutoFood:
rocess()
) J+ ~: |) d! w4 J# ^' \
{
& p5 d. C" B9 K0 v4 z
if( bStart )
( B- `7 N7 d; L
{
8 k+ y2 p% D& f
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
* a2 V; q( {- s! m9 j
{
( t" F9 m# D+ Y+ r& m
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
8 ~- B# o5 I/ l8 ^2 P1 V
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
& n+ ?) H6 l8 W& s. W; ]5 ]3 r, n
}else{
# @0 S/ a4 Y( C1 o. Z
bStart = FALSE;
* H# y0 w: s2 |1 K% L, f! v
m_pItemElem = NULL;
( q, P/ H0 f4 Y. g1 `0 ]
}
: C3 r9 _/ O9 q: C# s5 h) R+ [- A
}
2 Y/ c; D7 x( r) M
return TRUE;
0 t9 d; d+ H/ x: S% a
}
# I8 q* G6 E: u, P6 y% U
& U3 i& u8 v) k6 w* o" W$ c c
登录视频废话:
7 _5 ^" `' S/ I Q9 B' q
尾翼:
/ z2 a3 [0 \3 v# S$ \
: L2 B7 Q$ U+ d( D- ?( N
代码:
4 R$ f* H8 ^; H; t$ C3 U
% a+ A+ G, l g I/ b
void CWorld::SetLight( BOOL bLight )
5 a7 z4 v$ Q& g/ U4 h S
durch
' f+ O1 m* N' C9 H! r' `5 k
Code:
) Z& s4 P9 G) p# o) o9 a) `5 C+ S
void CWorld::SetLight( BOOL bLight )
( F, R% x& O1 `$ I& E5 l5 n" M* \, }
{
$ Q' j0 O* F4 q+ O; g/ w" z- m9 n
//ACE("SetLight %d \n", bLight);
* B( u( G* n: t4 Z6 Y; I
: ?! G3 O+ Z P" m
#ifndef __WORLDSERVER
+ |3 B0 H3 [, x8 Z
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
6 j9 L5 H+ Q4 P' v( a9 ^7 R0 K
CLight* pLight = NULL;
7 l5 q- L9 p- J' V
, \( o4 W' c1 ]7 g6 d+ p
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
: v: x" d; G& u/ w9 K
6 j2 t: z, ]9 q% o
pLight = GetLight( "direction" );
: ~ J% A% ~% `0 @ [9 ^
% T, l2 `' `! G4 _
#if __VER >= 15 // __BS_CHANGING_ENVIR
' }/ ?) Z$ z6 d5 F% g4 J. X' {4 k
if( g_pPlayer ){
' ]2 h/ ^: m. p# i, I" e9 k( q) f
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
. _0 Z+ K/ w. U ?0 u1 l4 e, ^' o
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
/ V. I1 U2 W0 M
{
! k0 \0 i5 ~- f; k! {# c# j
if( pLight )
: g( Y( j* ^5 E2 ~3 K. V7 g$ h
{
+ A; V% T4 w8 g
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
4 e) |2 f6 D6 s, y) p B
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
+ X' M6 v9 D M% G! x
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
! z$ ^8 C7 k( O# K9 r, M* i0 s
, n: S$ Q k3 M: ~' |0 u- `
pLight->Specular.r = 2.0f;
0 @4 L: p) e) s$ q. M
pLight->Specular.g = 2.0f;
3 {8 T* Y) m, r
pLight->Specular.b = 2.0f;
8 N b6 y% s* g8 q" N" m
/ H8 v% l6 ^! N6 }7 A; h7 X7 N
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
, A/ F6 a I! r4 }# e* ~5 R
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
# X) R3 L. b w
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
2 o$ T7 F7 t( a9 D$ B
5 v* R( I$ h" c$ v8 v& E6 T& H
HookUpdateLight( pLight );
& Z6 m8 S+ H/ b+ }- A! p
- ]% q$ i8 s/ r+ ^, |
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; m& t" B) m2 F1 `- ]
" @" n a; u6 Y0 ]1 o/ L/ c
pLight->Diffuse.r *= 1.2f;
- Q0 Q0 j9 V* |& G2 O* e- ?
pLight->Diffuse.g *= 1.2f;
8 m; K" n( h/ L* W6 k: E5 L
pLight->Diffuse.b *= 1.2f;
' I5 e4 I$ `% E( q1 `% x2 p
. g% `* m; |* [% I
pLight->Ambient.r *= 0.8f;
5 j% u! C L$ E0 c; u' V
pLight->Ambient.g *= 0.8f;
# Y$ I7 }+ Q r' Q ^1 U" b' F
pLight->Ambient.b *= 0.8f;
- s# y% [2 s9 y+ V( ]; u$ }* e
3 d( [( l# D5 P+ ?" E
memcpy( &m_light, pLight, sizeof( m_light ) );
% n# e4 s) W% n$ x i9 @
4 y7 \$ O5 ^" p
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" L6 D. \9 g5 q( K5 q
D3DXVec3Normalize(&(vecSun),&(vecSun));
) z/ r. g& F$ ^ ~- E8 A
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. ^) ~( g- v9 |
pLight->Appear( m_pd3dDevice, TRUE );
5 B5 E1 H3 h5 D! B; D3 p9 K/ n
4 c% }. z1 J' y/ n3 l6 R2 m
DWORD dwR, dwG, dwB;
0 e: V7 f F' @
dwR = (DWORD)( pLight->Ambient.r * 255 );
' j. H m! s- A+ Y1 J
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ L* S0 |/ ^( J
dwB = (DWORD)( pLight->Ambient.b * 255 );
& M5 N' A. V0 | R' T h
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
, K) n; M3 @+ |7 g! G7 R
}
+ v( x" x1 g4 n+ a" [- ?, _6 l
}
+ i8 n/ \( s$ t" C
}
& Z5 F1 H2 ~) G8 ^
else
' M/ u/ A' p- s
#endif
6 w4 ?+ f, x/ W1 i7 m& S& A' {
" k7 ?3 |( w S3 h0 W% P6 ~6 d
if( m_bIsIndoor )
! }; N. T+ o1 {; R3 `' ~9 [1 ?
{
4 k" N# ~% D) J- i7 w! S
if( pLight )
! ?$ c: p& r& x+ k
{
1 o+ g- i3 v; x/ E/ y8 w( P
// à??μ oˉè*
. L/ M9 E' P8 O" w) d
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
9 L3 I2 _* c7 ^- H3 n& h' O N
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
5 o* N2 B( M& ?& n9 r9 k
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
# v' h5 e, @9 ~2 Y, ]0 ?
+ X& _! G5 Z2 I) s/ g% x' h* S
// oˉè* ??à?
0 L7 X: P" |0 q; D
pLight->Specular.r = 1.0f;
. v# `! f- K1 I0 H
pLight->Specular.g = 1.0f;
, Q/ d) v2 n& ]1 c- w
pLight->Specular.b = 1.0f;
- Y3 [% y) U4 h2 l
// àü?? oˉè*
: a7 E. B: S/ _" m0 l
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
" ^9 ~+ ~0 A4 X2 g5 _
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
( P9 _$ R7 X' m: U6 g b- v
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
; z& D! Q" O/ ~/ N4 a
: d% H/ F* _- f2 O7 w
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
6 ]2 M; e5 F; E9 z: S1 U1 Z! Q
{
5 _3 l) H. x; q, N
pLight->Diffuse.r *= 0.6f;
3 _" V W- C* i. s/ ^: h' ]5 Y
pLight->Diffuse.g *= 0.6f;
6 f+ T! d$ n! v, u: E
pLight->Diffuse.b *= 0.6f;
$ v! M' ^% |7 j) m- f2 p! S
pLight->Ambient.r *= 0.7f;
$ {) T' @) v# U# ]2 ]' Z- P: m5 F
pLight->Ambient.g *= 0.7f;
1 N! Y8 K4 U) J/ Y- l) t: E
pLight->Ambient.b *= 0.7f;
/ c1 t9 o) \7 ?6 A, h5 @, w7 k0 |
}
$ `! I/ o) ?: b
9 X. J6 o; e4 U- i. R# T
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 Q$ m& D4 ^$ T! [7 Q
if( g_pPlayer )
7 C: ]- f, S% |
HookUpdateLight( pLight );
1 i! Q4 T. J0 v+ Y, |: S0 `: a
#endif
" j& X( [8 z! L
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 a, i3 m: N6 t- ?4 e/ v
/ m0 U6 s" \ k4 r) O9 x+ [
pLight->Diffuse.r += 0.1f;
1 t7 B7 S; A. Y( h8 e% J7 w2 ^
pLight->Diffuse.g += 0.1f;
- z( ]7 S8 E; d, ^ H+ ^' C
pLight->Diffuse.b += 0.1f;
+ F; f: o* X" K, e' i
// oˉè* ??à?
* c ?" }8 m3 [3 M5 |! V
pLight->Specular.r = 2.0f;
. h0 S( y( C, F1 @* f. F) X/ J
pLight->Specular.g = 2.0f;
7 e9 y$ j* l! i1 m" @/ Y
pLight->Specular.b = 2.0f;
- z! S; _9 O& K; `3 u8 X
// á?oˉ
) S0 e* W) ?! ^2 k6 A
pLight->Ambient.r *= 0.9f;
) c5 ?8 w8 v B' d8 P
pLight->Ambient.g *= 0.9f;
! O! P7 I8 F- i- L: G
pLight->Ambient.b *= 0.9f;
/ Y% R: N% N: z! g' f& T% `
6 D% K) k d X+ [& J( g
memcpy( &m_light, pLight, sizeof( m_light ) );
2 S0 @6 z, |4 v# l+ j3 E
& V0 `: H. z& p
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
7 A8 e1 r9 k S/ e7 l
pLight->Appear( m_pd3dDevice, TRUE );
. J1 D" N. h8 e+ Y" j) h) T3 d
: g; g) l7 a) h7 F8 j7 L
DWORD dwR, dwG, dwB;
% G" q$ _8 G/ g
dwR = (DWORD)( pLight->Ambient.r * 255 );
# |" K# K' S; y7 q
dwG = (DWORD)( pLight->Ambient.g * 255 );
5 }9 |" d. _) H) l" k2 d5 H
dwB = (DWORD)( pLight->Ambient.b * 255 );
7 ]6 `$ W& i6 G, }9 K/ Z
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 F2 ]8 `+ w4 w- l
}
( r& J7 h: `7 Q9 y
}
7 o7 ?4 g0 k2 E: Y
else
6 u# m4 W1 F4 S, T h! c9 f
{
/ `# n* ^; x7 w. L" a# c
if( pLight )
! `$ B# ?: l Q- L' M# D
{
, i Z$ W( S" M) D' x
; P# K4 H2 N# O' f2 p( R
int nHour = 8, nMin = 0;
" _$ p; h; F+ M- V: D' {5 E( g
#ifdef __CLIENT
. J3 Q4 j9 Z) v% ^# F* W( I
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
, M. t5 b! [% x1 c8 \
nHour = g_GameTimer.m_nHour;
) y8 Q- @* n$ M2 t5 i- V
nMin = g_GameTimer.m_nMin ;
3 J) P) ~1 _) q s6 n) o7 a9 z
#else
& i9 I7 @1 q- u, ^7 Q
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
3 {7 {3 W6 q; P v4 A0 y4 v! h3 l
if( m_nLightType == 1 )
2 E& j1 g/ a7 f8 w* e" g: e2 q+ F; t. H
nHour = m_nLightHour;
" Y! v) M" N( D! |/ v
#endif
; J7 { ?$ d' \
nHour--;
5 R1 M1 J. ^7 X* H# A
if( nHour < 0 ) nHour = 0;
V1 P% ]; |% r
if( nHour > 23 ) nHour = 23;
+ x2 ?9 ~7 p% a" m* F5 T
# W d' @! `" x1 V4 e. f
//if( m_bFixedHour )
4 R0 J" l; a0 K& i
// nHour = m_nFixedHour, nMin = 0;
8 g* B! k1 b5 {: J3 Y3 f. U
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
# H# T' n, H$ p1 c. B. A0 f$ I
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
, ~. f9 U' p8 j( J5 A; n
9 _+ ]$ k' i3 ^ \
//m_lightColor = lightColorPrv;
?5 w/ T4 k d# ~
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
6 r" \# J9 q* U( f/ E m+ K
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
. ]3 y: w$ i; m1 F: B
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% n: b8 b" y* q1 }. z6 t
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
2 c8 Z" @/ ~- S2 q: G6 ?
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
" n& N9 P' R7 a) v3 i4 H/ ~+ g+ }
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
- J0 z. ?& b/ {' d7 f, o
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
& w) H* T+ Z3 y: l/ Z: S+ ~
7 E. ?" W7 o3 Y S) p. j
// à??μ oˉè*
0 \( @: z6 R7 l: X9 l
pLight->Diffuse.r = lightColorPrv.r1;
+ y* b b- l9 o2 G" Z
pLight->Diffuse.g = lightColorPrv.g1;
' @7 c' u% i! \$ I9 {
pLight->Diffuse.b = lightColorPrv.b1;
' r9 T% e# K! [ i! a
// oˉè* ??à?
m0 L/ x4 z: l/ h
pLight->Specular.r = 1.0f;
- T R5 }* R7 Y# w4 d
pLight->Specular.g = 1.0f;
& |0 w9 n) ?0 J, K j! U
pLight->Specular.b = 1.0f;
3 J6 Q& s, C- l% e
// àü?? oˉè*
8 k& Y1 Z M9 ]
pLight->Ambient.r = lightColorPrv.r2;
, b6 \5 v" j( v( \' z! P8 e, G+ a! P
pLight->Ambient.g = lightColorPrv.g2;
: d8 H1 A9 r( o% l; v2 g
pLight->Ambient.b = lightColorPrv.b2;
8 N1 `% A% E. X% L3 O: D5 g
' y( R# m3 F% `/ W! f
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 p4 n( m: Q1 F& _; C5 f' ~
{
5 u# j0 P! W% K9 H
pLight->Diffuse.r *= 0.6f;
5 [% a. d" M5 |$ D; E: _
pLight->Diffuse.g *= 0.6f;
" w- [; A# V# _" A5 ~0 z8 v v+ ?5 J
pLight->Diffuse.b *= 0.6f;
6 D6 q8 k4 Y7 Y0 j
pLight->Ambient.r *= 0.7f;
; ~5 W! c4 M2 W: ?4 `1 g9 N6 P/ G
pLight->Ambient.g *= 0.7f;
. q/ c) }4 G Q! R0 d2 p
pLight->Ambient.b *= 0.7f;
. L" w! O( V" u' O' |
}
u S/ u! b% ]4 A! K9 a
, Z8 I' P! g* y" s2 {; k5 ?6 X% T/ M
#if __VER >= 15 // __BS_CHANGING_ENVIR
" m8 h4 Z t/ [/ D/ e+ v
if( g_pPlayer )
8 k% O0 K% L7 |: ]& e
HookUpdateLight( pLight );
0 X6 E& X, w6 K9 Z5 ?- x" Q3 C: M
#endif
: C$ \, k* C: s6 i2 m& A
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; H _6 ~2 \& q5 Q' }: V: V* I
1 j/ _! E% w e4 n! N
#ifdef __YENV
6 r6 b% U7 W" K A2 ^) {
pLight->Diffuse.r *= 1.1f;
: }: i2 ?, K6 \! L
pLight->Diffuse.g *= 1.1f;
! S1 P& [5 i2 _6 n; N; m3 @8 b1 n5 f
pLight->Diffuse.b *= 1.1f;
3 h+ I$ ]$ ?' K: H
// oˉè* ??à?
/ q) B- V$ i* d1 B/ X& q
pLight->Specular.r = 2.0f;
1 o- E1 W* J+ v) H3 g; Z+ K [$ P
pLight->Specular.g = 2.0f;
9 l0 `( |9 H9 D9 I1 d, d& v! s
pLight->Specular.b = 2.0f;
; ?$ @* g1 @. ^6 f
// á?oˉ
- z& ~! a# b% f# c( T
pLight->Ambient.r *= 1.0f;
! N1 Z2 z: K" |- d/ i6 A4 I; b/ U
pLight->Ambient.g *= 1.0f;
8 K2 \: F4 J ~+ k( m3 c
pLight->Ambient.b *= 1.0f;
7 B' Q' Z6 ~& j- q: L+ W8 x
#else //__YENV
) g6 ?! r6 x5 d
pLight->Diffuse.r *= 1.1f;
( v2 Q2 l, ^# W8 ]) Z
pLight->Diffuse.g *= 1.1f;
& A4 W- p0 S) u6 w
pLight->Diffuse.b *= 1.1f;
( L% T/ q# x9 _- h( O% L4 h
// oˉè* ??à?
+ a$ B2 j" R; h; U+ d
pLight->Specular.r = 2.0f;
) `3 z( w8 r. e. ~
pLight->Specular.g = 2.0f;
+ U) W7 e% q, D; j
pLight->Specular.b = 2.0f;
' o' t& a# C7 [* k- o$ k. g+ j
// á?oˉ
b) Q/ \( g! @ V% s6 P, L
pLight->Ambient.r *= 0.9f;
( n# f+ W( W" i/ L8 k8 T
pLight->Ambient.g *= 0.9f;
2 e# f+ Z% T) F/ g1 g( {9 @
pLight->Ambient.b *= 0.9f;
8 T2 }$ Y5 d, Y
#endif //__YENV
; c. {8 c* ~1 x: s3 x1 v) ]% k
2 ^ B/ P8 c1 r$ c+ R; k
memcpy( &m_light, pLight, sizeof( m_light ) );
, w3 J v2 i- H9 W
f8 a5 W9 _% G$ T
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
" T( Z/ q3 A) A% b8 w! N1 C. K& K
D3DXMATRIX matTemp;
) y, y6 ^8 K) { \' m* \% ]3 d
static const float CONS_VAL = 3.1415926f / 180.f;
- z7 L3 t8 h: a* {+ p
H) I0 u4 B2 t g; g5 X- d
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
1 P$ u: ?6 R" J
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
! A3 M9 p( K- b m' p# t% s7 p m
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
1 |" J* U4 B: O; W
pLight->Appear( m_pd3dDevice, TRUE );
9 J, f: Y4 M& W% F" {( u/ T9 \% q& _
: o8 Q" \6 _+ S: Q2 H" O5 E* u! A
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 M. Z& @( _: s/ d `8 p
// D3DXVec3Normalize(&(vecSun),&(vecSun));
w: w1 {2 X# O1 H7 ]% v: m3 F' J6 h
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
- V# p1 P) B5 \0 y$ @' p3 m
, ]; L, _- I, |+ o& h) r! H" @& f
DWORD dwR, dwG, dwB;
2 |9 d' p7 S9 ]5 D+ C; c
dwR = (DWORD)( pLight->Ambient.r * 255 );
* R$ o& X1 o" R$ T( O1 \1 s* x
dwG = (DWORD)( pLight->Ambient.g * 255 );
9 x- n; R, l0 [2 j& y I
dwB = (DWORD)( pLight->Ambient.b * 255 );
& u/ E! @, I" |* p
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
9 W4 Y/ C5 G9 @' H# m
}
4 }$ \8 _& }+ d/ P" N, h, h5 n7 ?8 \# @
}
( @/ [! A& |. V# w7 a3 h- i( Y
$ H" \$ _: P- F4 w- A5 P, ?. c
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
& Y2 @/ H) l3 w& @
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) );
" L" p$ Z) \7 q! Z
::SetLight( bLight );
1 `: `6 m. Q1 r+ e
4 J% @: }, m4 k. h
// ±ao? ?D?í???ó á¤à?
9 M; J4 X8 f* J1 {; n
m_pd3dDevice->SetMaterial( &m_baseMaterial );
+ q" L! l: x: n2 B
7 P; B& T: H; m' R( g, w& x
#endif // not WORLDSERVER
% L$ F, }* ?, `( K) \
}
7 K6 f6 t4 h# \# y
并更换
$ v' Q# g% q- ]( L- D* j1 ]
Code:
. T6 o3 d# e1 ?2 `0 h
__FLYFF_INITPAGE_EXT
5 M. U9 t- e6 R8 E, f7 E
定义
6 ~ [0 b9 \/ t: J/ A: T& M. u
( d" Q) ^7 C9 C* I3 J) }2 o; @
$ ^. Y$ F9 E% U% y* g- x
& W- h- _9 |, r+ g" v) E- \
; }5 Z3 C' K( A) t2 O. Q7 x2 O
现在终于删除我的狗屁加速...
/ |( d/ a& V' g7 d
1 e7 A$ x }6 V# U, y- G
3 d+ D# o, ~6 n' y
6 g9 e: F0 d& T
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2