飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
4 \6 E9 r8 v% c% N; @* |
尾翼:
7 Q$ n$ `& K) J5 f% X/ X
+ {, I& Z( v, C+ O! m8 i
代码:
0 D" i1 q. N4 x4 Z% W
CWndAutoFood::CWndAutoFood()
2 R% T. f" t3 U* u( M& z1 n8 t
{
* r8 I6 d6 g0 k: N
m_pItemElem = NULL;
) y! C7 I# [; n" c/ z, j- l: }
m_pTexture = NULL;
( Q. e* j+ j4 m) F
bStart = FALSE;
1 G( J9 r9 N+ U% e( c. @
}
6 N6 v! x7 m. v# u% c. b, x- u, f
$ q3 K! [; s1 g. q/ g& d
CWndAutoFood::~CWndAutoFood()
# ^! C% G2 d* [$ i; f* @/ U
{
0 V2 G! u6 d! G" T0 g$ \
AfxMessageBox( "AutoFood ist gestorben
" );
' x0 l/ v7 f0 o" h% T( ^- ]1 h
}
6 [8 m3 j1 P. K9 |9 Q; ]
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
; `$ t' f- m, P+ Y; {. C O5 K3 L
{
3 `+ n3 r. c& _& ^5 k/ I" s) D
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
7 }& e0 _2 o9 H5 \3 P4 u2 l
}
1 [% |: A3 i. r. {) O4 T- A2 G3 y
& @* Z% ]8 x/ o# B7 E4 c0 p$ g& M
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
' }6 u# |8 O3 O3 k
{
: u4 S8 [0 {( `. j8 ^( {7 D" ]' }
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* Z* \$ ?5 s" i& p6 P& H! X
CRect rect = pWndCtrl->rect;
! d8 R8 D% \+ h$ R
if( rect && rect.PtInRect( point ) )
, ]& l1 |8 V- _& w1 I% H1 `
{
$ j' {4 b' v9 \0 ^; j h( I2 e
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
$ x+ B! _& h i3 E. _9 P: U7 t
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
9 d! {6 ~6 Q( g; Z! A9 M
{
- [+ u. A1 n1 [+ w! g% g1 {0 `
if( m_pItemElem )
" C: t3 ~3 ^0 Z
{
' ^( a& B/ z8 z% a& Q, Q$ @- d
m_pItemElem = NULL;
' q& W4 Y: c, l' Q% D
}
H& @- _- _: U
m_pItemElem = pItemElem;
, d9 G5 k3 P9 g- r& v; R
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
, ? L( H: I9 V6 e0 d
}else{
6 ]/ U6 a& ]* o, U' U
SetForbid( TRUE );
5 {: }' j! m) Q! _
}
/ ^# ]6 _' ~9 F3 n5 M4 x
}else{
, O* C; c( x, G3 ]( G, b/ M: y
SetForbid( TRUE );
- n& M4 J4 P' q2 Q
}
$ V) L$ K3 J. Z& c. i
return TRUE;
, z: j2 C' F& z. q9 J
}
' z: D( m5 w# V/ i: Y* ]8 T% x' v
$ ~4 e1 }. c; G6 B8 W
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
& N. V' [" F3 H3 E
{
9 ^# z3 R' ~, C% B
switch( nID )
2 q2 u* N) l8 V& P
{
`' _7 i _, ~$ F
case WIDC_BUTTON3:
# `$ O+ M# Q+ s# F0 G6 l( R
{
) H5 ^' a' U. E/ Z0 P
bStart = TRUE;
# `3 {& n9 n$ j" ^% o. J
break;
+ ^* K. L/ N# V3 a9 c( L# O! `
}
) J2 M& H# x' M, q& J
case WIDC_BUTTON4:
! S+ U& v0 z$ t$ T
{
H) C0 f# E* L/ ?0 M; C( J# Q
bStart = FALSE;
& a6 [" v, j) m. n. n" @+ @9 j
break;
$ p' L `& E- |% w
}
2 p4 f6 t2 X' {, H9 |. Q, m7 Z, t' |
}
3 | a R R/ s6 F6 Q* {
return CWndNeuz::OnChildNotify( message, nID, pLResult );
9 N% X1 n( p+ g; m* A: T
}
7 e2 a& v% ]; |1 Z: B! j. h
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
4 e. }; M. D q, p
{
: Q3 y9 r& v4 T- C/ Q
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
5 Q$ v: N4 j& {5 ?0 E
if( bStart || !m_pItemElem )
8 ]- h- M/ [6 `5 ]' u! U
{
" e" I, R2 I+ x
pBtn->EnableWindow( FALSE );
" G* M R( X/ | Z* S0 J* F
}else
# v: ]+ A4 y) Z3 e1 |# k
pBtn->EnableWindow( TRUE );
% @4 e+ u5 D6 \7 c9 x
if( m_pTexture )
9 ~* [1 _+ A& a7 k: I$ W. s6 L
{
( X! M9 s# y5 }* K
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# o: @# i3 c; d y8 G' r* N3 f: S
if( wndCtrl && wndCtrl->rect )
# ]8 T9 L% t$ ]2 @; ?& S! l$ |
{
+ o; o* J% }5 A' ~1 R
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
' i. z$ w; S7 p9 e* Y$ e$ [9 j
}
B5 K* B- u6 N! u' g
}
+ |. d! p- G, j" W7 R5 M
}
8 |4 w- [6 Z. K, D+ p3 e
' f8 Y9 e5 i; G- G% L
BOOL CWndAutoFood:
rocess()
- |; K% z# d/ x9 C% }% o. o
{
4 Q2 B8 ?8 O& e' z; T
if( bStart )
6 b, h- f F2 A& ]% C' o
{
: L2 h# c& L s* F& H
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
9 j% b. z4 ^3 m+ C, I& q
{
* \ l5 q" f; `: L
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. X+ s4 p& j0 H( ~# \' l
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
) d8 Q8 Q' u% x& v
}else{
5 v6 h4 ]& T5 k# C5 F$ ~ `
bStart = FALSE;
% R$ R" S. S( H# q+ E; ^
m_pItemElem = NULL;
0 P3 X' u9 k- _6 A5 Y# J W
}
+ X. S5 {+ B3 I1 A4 ~
}
3 Q' l& E: t: j) f. r
return TRUE;
% R, ]& | z! G( \4 T- B K
}
4 L9 Z6 V2 N9 r5 j- Q+ X
8 w% C/ I$ D" W% I! m4 z
登录视频废话:
* x1 y8 {6 f2 I& O- ?
尾翼:
4 ]% s+ G% c+ @4 }8 m6 H
+ {* w1 g0 X9 y
代码:
6 _$ s$ K) e {
/ L; d9 M# e" V5 }8 z
void CWorld::SetLight( BOOL bLight )
" y8 O; k0 y$ q; V6 m& L4 Z& a( G
durch
) @ }5 c: W+ ?* G# m
Code:
! w+ P+ B# s; I6 z" f- B& z
void CWorld::SetLight( BOOL bLight )
% T# w8 }! F0 D' j
{
4 G; J0 f6 k! w
//ACE("SetLight %d \n", bLight);
8 a8 e- H, I, r7 w
: A7 l- `& _! w+ \
#ifndef __WORLDSERVER
, w8 x+ F: {! k/ O+ ]1 r( n7 V. L
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
) S) s5 {6 z" E7 l3 G
CLight* pLight = NULL;
5 W0 z& s: h( C8 ^, O1 R
1 X) Q1 |* J* p) Y1 Q1 s _2 C! R
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
R$ L+ @& Q5 V$ \, o" Z
1 T9 E# [( e0 p2 b* \6 x
pLight = GetLight( "direction" );
6 B6 o" Z) @6 o3 M* I. ]6 m8 u
2 o- N& S9 N; _* i1 s* q
#if __VER >= 15 // __BS_CHANGING_ENVIR
- s M; a" J9 e {
if( g_pPlayer ){
- b U5 P, Q% B2 u6 L1 \* }3 Q
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
3 B; d0 t# G, o, B# k
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
z, y, ?- Q6 [; u
{
* N9 F& B9 U( M- G! R
if( pLight )
9 {1 H0 I8 Q# f! Z* e( |0 F; X
{
! G9 ~5 G# ^5 `- w
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
9 [* m, Y3 ]! P5 X7 ?2 v& c; v2 D
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
) u {& E) F7 Q
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
; O! n+ H/ E, Y" f
8 H& O. a4 R% O6 x0 h0 O
pLight->Specular.r = 2.0f;
* s1 k# Z. u$ S0 f% {# {' p \
pLight->Specular.g = 2.0f;
; D. F) p8 {- e% }
pLight->Specular.b = 2.0f;
7 [2 F4 u0 ^) j2 N7 \2 |7 ~" w
- d# X( ~4 U( q W- p0 K; b
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
2 l* t- i/ i9 V3 S! A
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
2 u4 b Q4 _! s. q4 a, i2 z0 O1 o: T
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
: B8 \, W" N$ H- ~
& L; G+ ~3 S$ x0 H
HookUpdateLight( pLight );
" n/ u4 j A1 L. J% w
4 W' J' a) `; F
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& \2 @0 T4 z0 m g+ E: D# C' l: ^
+ v9 l8 m& B2 h$ x& |
pLight->Diffuse.r *= 1.2f;
+ ^, f7 _ n6 f& n, Q. a3 g8 k
pLight->Diffuse.g *= 1.2f;
' e: Y3 r" k& H4 L. ]& j
pLight->Diffuse.b *= 1.2f;
" l4 t' K: v8 C. `, ]" Z
0 W, U7 q% v- `7 g
pLight->Ambient.r *= 0.8f;
- r& q2 g' t# o$ g' R+ W
pLight->Ambient.g *= 0.8f;
" l5 Y, m$ [6 m8 ~2 ]
pLight->Ambient.b *= 0.8f;
0 A2 w9 u: v1 A6 f
5 B% ^ g# A2 R5 }9 `- v1 M" w
memcpy( &m_light, pLight, sizeof( m_light ) );
3 r5 P* s8 S0 M1 o
% P- R) |# G @* @ b
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
+ g3 k9 N Y8 c. T0 m }% ^$ L$ W
D3DXVec3Normalize(&(vecSun),&(vecSun));
' {8 O& d8 l( ^+ x* W! l
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. a: m; s' {$ e8 m: u
pLight->Appear( m_pd3dDevice, TRUE );
0 _+ ^/ \" y! R& u( z. k
3 V* v* ?$ }# V+ p T0 \2 |8 f
DWORD dwR, dwG, dwB;
% V7 ?8 O3 L, k" i
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 t) A* j) B* w( z
dwG = (DWORD)( pLight->Ambient.g * 255 );
- R% m4 W) t$ t) N3 x" A% X! D
dwB = (DWORD)( pLight->Ambient.b * 255 );
7 f0 J$ b! z5 ^$ D
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
+ ~% D% c# W: ~1 M' {: S4 x
}
) m, k- o$ c1 k) Z7 E
}
" U$ m- \0 m: A H6 O- M; w2 A
}
9 L7 I( D. t. T. P6 B* H
else
; B. q e8 C( r/ H' }
#endif
0 J+ Z$ p: |$ j+ G/ `* r- a& n
! } _) Y2 I7 L% H9 l
if( m_bIsIndoor )
) t% |/ M0 X4 e4 \
{
+ N- D% T) N) y: h: |3 u1 V! [3 P
if( pLight )
4 y* U8 A: n" @% Y4 L
{
U# J$ x9 l5 H: ~4 k3 [/ g$ u
// à??μ oˉè*
) v# G& [/ n5 w& x6 M. s, z- u( s
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
2 @- ^+ F! A$ N
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
: H2 B( T8 a" E, a/ A& Q- _' B
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
5 K- i. B+ M, p, m
6 b/ ~% @' ]; `/ d% w; E6 R
// oˉè* ??à?
& L+ r+ W" U: a0 [
pLight->Specular.r = 1.0f;
8 G* ]6 M; v, _& ~# ]
pLight->Specular.g = 1.0f;
; @( D7 W0 P; T# H# H
pLight->Specular.b = 1.0f;
$ Y/ Y6 V& b" [% B& i
// àü?? oˉè*
( L% m) K( d B1 O8 K' _$ c3 T. G5 x
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
) F" K( P$ L8 u
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
+ W' N, P+ T1 R0 h0 c/ _
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
& ^' c$ U% }! @$ c, C5 D: s
, g. @: G6 q3 \/ k j5 ?" T* [9 T
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! T6 m! D9 Z- ?6 J
{
, p$ Q" C# P1 D
pLight->Diffuse.r *= 0.6f;
7 o; x) A0 G" j
pLight->Diffuse.g *= 0.6f;
0 o" G- x n6 B
pLight->Diffuse.b *= 0.6f;
+ k1 [. k H! O2 }5 ~
pLight->Ambient.r *= 0.7f;
c2 ~9 `: O0 p2 m/ t/ X
pLight->Ambient.g *= 0.7f;
, v. Z d) q4 }% o0 X
pLight->Ambient.b *= 0.7f;
/ t0 r1 l4 z) R' l! u; W) t4 n. }
}
, B. T% v6 @7 R# t4 [
4 _8 p8 _( k* Z2 D0 B% m3 ^; e
#if __VER >= 15 // __BS_CHANGING_ENVIR
. c2 g3 E# w( @+ v# x
if( g_pPlayer )
$ v( S0 u8 A# ?! m; H$ w
HookUpdateLight( pLight );
. f; l* N' Y: c3 Z9 x1 ^% T
#endif
+ u/ J8 x3 y) E" z: o
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 n" x& \; t1 s# e
1 V' Q8 _( b7 m
pLight->Diffuse.r += 0.1f;
% F- |0 G# |8 F$ q4 V7 _) d
pLight->Diffuse.g += 0.1f;
$ K' o( S; h+ Y: |
pLight->Diffuse.b += 0.1f;
1 E; Q9 O: y1 T1 P& D4 Y) D: r
// oˉè* ??à?
5 o ?3 N1 [& y8 W/ @& O4 K
pLight->Specular.r = 2.0f;
, l+ ?: r% l( K: n2 P) u& v
pLight->Specular.g = 2.0f;
. g5 u/ V% n& L1 R; h
pLight->Specular.b = 2.0f;
( o) W' K4 P% f# {% v) [+ T6 {: c
// á?oˉ
+ v- G# i; ?5 u7 M9 k z
pLight->Ambient.r *= 0.9f;
" H5 Y8 T. ]9 S8 u
pLight->Ambient.g *= 0.9f;
/ I1 I3 w' [4 ~! A6 ?
pLight->Ambient.b *= 0.9f;
+ c; k1 k0 f2 \! u3 ^, E
3 @! A0 k8 I7 c
memcpy( &m_light, pLight, sizeof( m_light ) );
, @5 U3 ?* ]2 q
/ q; z* ]& o3 H+ Y# D' N7 R
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
! {8 L' f7 F9 ^9 P$ o; ]1 C
pLight->Appear( m_pd3dDevice, TRUE );
! q0 J* g7 P# [$ E4 D; @
0 z3 j, I$ H5 x1 E9 Q% L: G8 o6 y3 s, W
DWORD dwR, dwG, dwB;
. @6 U! U) ]3 _/ k5 h$ n
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 z* u. [0 @' @& K1 ]
dwG = (DWORD)( pLight->Ambient.g * 255 );
: ?3 h* C: t8 |) ^) s
dwB = (DWORD)( pLight->Ambient.b * 255 );
* h; `6 f/ d8 z3 m. R7 D3 g
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% V7 k( q: i8 ~6 }" T* ~% [
}
; O+ d/ @; F1 s6 h# q! t/ O, Q
}
, y; \8 M) K m$ ]. g# Q( Y
else
5 ]# \$ _3 e D) r s, ~
{
) K9 y/ K; m3 l. r. ~
if( pLight )
; v3 w+ {) l2 W) Z
{
~/ u* r4 H0 G# g* |) i
: |( m/ w. R; P" l% t6 W; o- N
int nHour = 8, nMin = 0;
" t9 }! Z) Y: o6 ]( J
#ifdef __CLIENT
$ u1 X" g4 W W6 d/ }4 ^
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
8 d# C4 b8 D, `+ S- \. q
nHour = g_GameTimer.m_nHour;
- d. f7 S2 ~% ^
nMin = g_GameTimer.m_nMin ;
6 i0 g* E; W9 i6 s/ L( |
#else
+ v7 }- h" w: R. P7 T5 o- J+ r: ^1 y
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
: \( ]+ B; K# m' i; y
if( m_nLightType == 1 )
8 Z4 V4 D+ E3 x F0 z
nHour = m_nLightHour;
' g) i; j* ]9 q# _$ K; v
#endif
! W9 a5 `' n% t+ J0 W
nHour--;
2 j$ z8 T9 k( Q, p* H( C
if( nHour < 0 ) nHour = 0;
8 v! N. U" F% A$ k9 w1 @
if( nHour > 23 ) nHour = 23;
3 W& O. C3 g( y, I
5 c" R2 o. j7 m4 W" a# U; d
//if( m_bFixedHour )
' Y- V( A- P% {% E" p
// nHour = m_nFixedHour, nMin = 0;
4 S3 u# l7 }2 p8 [9 i, J* _
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
" y, ~$ f) `; k& @7 h& m: m
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
9 a* c! \- w, Z+ v$ w
! |4 i2 s/ g2 @( v
//m_lightColor = lightColorPrv;
3 _* ?$ k; g$ ~% l% i! p
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
Y; b- m, x0 q
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
. e4 x/ h; k5 ~) L9 U
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% v2 q( p5 E" m- m; f
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
; t4 c& }9 |8 }1 A3 R: V& ^
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
/ x5 Z U9 g- c0 F6 f" c P
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
/ F0 C" C$ I. x1 H
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
- j* {* ]! I8 y" @/ ?/ N+ L, b4 R
# a' A; _2 H9 A9 j
// à??μ oˉè*
5 F T, }" X& W: u* x" G
pLight->Diffuse.r = lightColorPrv.r1;
5 N- A1 r. O( e8 O) Q+ i
pLight->Diffuse.g = lightColorPrv.g1;
- i4 D0 T9 L9 M7 h6 P L
pLight->Diffuse.b = lightColorPrv.b1;
- j: B; S0 r2 E; ^6 z; t% o
// oˉè* ??à?
: V/ V) }$ h1 x' ^" Y, g2 D6 i
pLight->Specular.r = 1.0f;
7 y3 y4 L$ J9 u! F+ y! t* v
pLight->Specular.g = 1.0f;
/ E$ p- U2 A4 F! r1 z# _
pLight->Specular.b = 1.0f;
! F6 I Z( d1 n% Y4 m) R6 ~
// àü?? oˉè*
& A& ]% n8 Q& ] R4 t
pLight->Ambient.r = lightColorPrv.r2;
' W0 e q) |$ _. q0 R; X
pLight->Ambient.g = lightColorPrv.g2;
8 H9 p/ N) W! Q' J! R8 r3 ]
pLight->Ambient.b = lightColorPrv.b2;
* q5 |5 U9 M& w7 e. P$ n: i
# v7 r- `3 G8 U! h0 G
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 @# {9 H, h- a) b/ ]" I2 d7 N
{
y2 c- R* Y0 W5 H2 H% {0 K
pLight->Diffuse.r *= 0.6f;
7 G' P% ~9 {' L+ a% e0 i4 R% V
pLight->Diffuse.g *= 0.6f;
/ E' @* x' j/ i; o a$ r" S- A
pLight->Diffuse.b *= 0.6f;
' @7 B6 T& L9 L: g' P, V# ^
pLight->Ambient.r *= 0.7f;
0 R- Q9 ?7 B' f+ x# h O5 B5 t; i
pLight->Ambient.g *= 0.7f;
- o' |- T8 M( K) }
pLight->Ambient.b *= 0.7f;
1 k @) B8 Y# K: ^) O# S0 v
}
3 Y! S: u3 V4 E- _+ V4 P
- h- v; M8 F m! i: o# S
#if __VER >= 15 // __BS_CHANGING_ENVIR
" |6 \0 h0 C( b- u+ O; j; ]
if( g_pPlayer )
. E+ f2 h! Z& w7 V6 r+ F0 e
HookUpdateLight( pLight );
/ x% y! V. ?; J& n
#endif
" ^" s/ m* [, A' ?% [) U# |
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 b+ Q- ?; U7 i/ O, W
1 K$ R' d D$ L6 u
#ifdef __YENV
; }* n: y, B: a2 L
pLight->Diffuse.r *= 1.1f;
3 M5 Y4 {/ U9 }" j8 B2 A+ S0 ~
pLight->Diffuse.g *= 1.1f;
* E8 ^4 b: R, f
pLight->Diffuse.b *= 1.1f;
* m, t2 L0 E$ w. l7 @1 }, D) {& E
// oˉè* ??à?
* A7 s* p1 p4 f
pLight->Specular.r = 2.0f;
5 p0 B5 L \5 W; b( v7 w' L, [
pLight->Specular.g = 2.0f;
. o( `: M7 i5 A: T
pLight->Specular.b = 2.0f;
- @# O! {+ g. k) j
// á?oˉ
1 n$ z8 {$ E( v C
pLight->Ambient.r *= 1.0f;
! m/ e' e( ]% Y3 F7 |7 w
pLight->Ambient.g *= 1.0f;
1 V7 `# B. }/ M/ u- z
pLight->Ambient.b *= 1.0f;
5 m" d+ P+ _/ s7 S9 R# }9 _
#else //__YENV
, m* Y* \) G/ G! P& Q
pLight->Diffuse.r *= 1.1f;
. S8 X& u7 M* c$ X3 L; H/ D6 ?
pLight->Diffuse.g *= 1.1f;
$ @% W5 l: Z4 C. l
pLight->Diffuse.b *= 1.1f;
7 M7 R/ t+ D0 a6 {, ~
// oˉè* ??à?
: f& A1 z+ Q0 |1 O2 _6 }
pLight->Specular.r = 2.0f;
8 {/ Y7 v7 p7 U7 z9 K
pLight->Specular.g = 2.0f;
& y# k( j0 C4 X& t
pLight->Specular.b = 2.0f;
: m7 |- C( j' k+ y
// á?oˉ
: M7 [& Y' e/ M) w
pLight->Ambient.r *= 0.9f;
; z. G! u4 p) @
pLight->Ambient.g *= 0.9f;
4 L! d9 ^! {; V" J
pLight->Ambient.b *= 0.9f;
4 }' A4 h% I# Y1 n, Z8 O( f
#endif //__YENV
6 O* S. f0 e, I
6 g) e6 r: i7 d! N
memcpy( &m_light, pLight, sizeof( m_light ) );
- b, F# N) T# n( b6 A0 s
4 v3 M' k8 g1 I7 n% [9 n; Y
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
4 @: ? ]/ b& S' \8 T! \
D3DXMATRIX matTemp;
# b4 l; t: o% @$ k9 n/ v
static const float CONS_VAL = 3.1415926f / 180.f;
$ u; i! G9 S s8 |8 N7 h: o
/ Z9 A8 |* i2 x' i# y. _9 L
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
4 q3 b. j8 [$ H4 L |2 Q7 C4 H- q5 r
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
1 {; K3 h/ h5 k) t! [$ f+ g/ j4 @) v
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
7 c i: P1 E) ^
pLight->Appear( m_pd3dDevice, TRUE );
2 N! l u: ~5 r& U
8 t8 a- M& k- y
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
J) n. T% Y, A" W
// D3DXVec3Normalize(&(vecSun),&(vecSun));
d/ `! g4 N% u
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ O& L( n3 [; Y
w% ~+ c' I/ E; {4 K5 }. b. x$ r
DWORD dwR, dwG, dwB;
- J; |9 P2 N2 W7 R6 p d. Z+ Q
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 P' F0 ? i k* }3 k4 m
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 P3 _2 p! r" z
dwB = (DWORD)( pLight->Ambient.b * 255 );
! J0 u" Z7 z; P [' A1 V7 I
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. n& E6 ~" S( J8 p# _! g" K- u3 _& h
}
3 D0 d- {9 m9 c
}
6 m! o) i$ ~& p' J
( j. b) ^( k! z/ V
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
$ W0 O2 k1 w& Z1 c: `4 ~: R4 G
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) );
5 {; v% S6 F5 i6 ?
::SetLight( bLight );
1 n/ }! `, J! b+ l
3 i" L3 w. D% l8 t- T2 X
// ±ao? ?D?í???ó á¤à?
6 W% r: u* A: S/ {0 z3 k% U8 f
m_pd3dDevice->SetMaterial( &m_baseMaterial );
; p% S- Y; z* W9 X
. y; S" A4 ~. }% R
#endif // not WORLDSERVER
1 p3 j) b& O8 [8 i5 O
}
5 ]+ I* v& u+ S
并更换
3 ~8 d* P% l) A$ V6 U# F
Code:
0 J: S# t4 T `$ I8 Z. \7 L6 Z7 Z7 T
__FLYFF_INITPAGE_EXT
2 c* [) I- t8 L. s* v' ~) [
定义
6 [+ g. d- }- E3 L9 f$ r B) K
$ S$ t' e, [5 p1 c/ G6 g; V
( E) `+ L' Z& P* M
8 v; v' D+ F+ n( p0 l
2 y1 e. ?9 c6 i3 c9 B/ |' n4 j0 E( P) c: l
现在终于删除我的狗屁加速...
% L2 I5 ]- I/ r0 v0 d+ Z* ~
& K( O$ Q) R/ ^# G
8 M8 g6 J2 f" D0 z
+ A: m+ n: \) g; q9 w+ L, M- q6 Q
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2