飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
7 k, T0 o0 C5 _, V$ v$ E
尾翼:
; r/ B& N) Z2 R' G
; L# l3 f: e% }* G
代码:
6 b8 T. `! h0 I( m
CWndAutoFood::CWndAutoFood()
7 Y0 n2 G) c, Y; C+ [$ T
{
& m6 e% K; ~( i% `4 }/ p; o& a9 `8 ]
m_pItemElem = NULL;
( U8 K: M, k" _% k( a4 h7 `9 m
m_pTexture = NULL;
/ t/ h- _$ c' X+ X/ S$ Z2 l
bStart = FALSE;
5 f6 `6 d0 @2 t$ n! W9 d; V2 U
}
% k7 k. a; r4 e9 D9 g; K
& d' q' A7 w' q5 T5 b) F
CWndAutoFood::~CWndAutoFood()
7 |# @" r$ ] E
{
! K/ ~3 w5 x& R" K' J1 W- u
AfxMessageBox( "AutoFood ist gestorben
" );
. p% ?: D! I+ x4 X; k. Z) J) I7 }
}
( o [; [, B) Y( @
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
2 V3 a3 R# x( ]4 y5 K4 @, k7 o' u X
{
; j' Q0 n1 V/ B' q5 A( N6 J( h
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
1 _3 ]) N; ?; e% M5 P6 b5 D
}
0 b7 M7 z: l0 K# p, h8 E7 ?0 Y
7 F3 y- \+ w4 V4 S7 J
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
& _% t6 C( n8 \& P+ }6 D
{
! F# \7 ~0 T% e. l1 X
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
% K4 f! O0 m. _5 O7 N8 ]& Z
CRect rect = pWndCtrl->rect;
" H1 F3 g. h% ^0 Q$ ?( M0 R) s% E
if( rect && rect.PtInRect( point ) )
# |% x$ S B2 h7 j
{
* h- M% I4 _ O7 d/ t
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
% I4 @, ]( b' r. k0 G
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
- w$ t* p/ r3 G( h8 j) K6 D5 C$ v
{
9 i9 X4 E1 z/ A$ k' Q
if( m_pItemElem )
6 d9 ]. h9 e8 i4 W- J; e7 l9 Z! s- i
{
. Y0 R* _9 ]( V* X0 X
m_pItemElem = NULL;
9 _2 k+ Q& v. m4 G" z$ `+ u( Y
}
0 d" y0 ^1 Z( T2 B% X
m_pItemElem = pItemElem;
+ r& X* w. K/ n. r
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
6 J: B; }) z7 B' {7 n
}else{
5 m; u5 u3 ]* A# }7 n; ^$ e6 m/ y3 S
SetForbid( TRUE );
8 g% Q! p3 z* v0 c6 K8 E( m3 H: I
}
1 `$ f/ i& D: y/ h$ d
}else{
! p4 v! i/ a& s X Z0 v
SetForbid( TRUE );
6 X2 l! C+ A1 C$ U
}
, b7 H- P8 Q5 p: o1 f
return TRUE;
% c8 W7 F7 i* b) @9 f X. N
}
, f# K8 L0 W9 B C" i
1 Q) u- b+ c# K% E* Q' A% T# T
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
) c& i9 D% z, a
{
" D- y) h& D* I
switch( nID )
$ d8 S) W( k% K, B: }
{
8 j5 Z* h; V2 [4 y6 p2 x) |: A% y
case WIDC_BUTTON3:
+ p' ^3 ^* {, L
{
. T8 g4 R, B- T0 r% H6 T7 _6 w5 m
bStart = TRUE;
; ~3 V" X! j; D& W( u
break;
4 W- x f1 c7 O4 w# ~4 Z
}
: i# z& e; e. |3 Z+ P9 p& n O
case WIDC_BUTTON4:
% g; v- y6 o2 i4 Z8 H5 B& ^0 Y9 P1 s
{
7 J& M W; c; d" [- g" v% C) E
bStart = FALSE;
7 H2 h! c) \% t f( K* B3 o
break;
5 f! w P7 w6 Q: ]* I
}
. _* r. H) F! ]/ P
}
- z; S# v/ o2 K2 |1 B
return CWndNeuz::OnChildNotify( message, nID, pLResult );
9 V( S% H- l3 w4 M: u& j
}
1 c: ^6 F+ e, q9 j1 A; }
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
, e! V& `2 k8 v+ s) f2 |+ y# {# S
{
7 Y) B% F) g% Q! o0 R! A0 N
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
{4 ]2 B0 \3 D2 b1 E, f( T
if( bStart || !m_pItemElem )
: q+ |3 {( g4 B- ]; h6 F9 l
{
+ Q2 p$ w1 a# r; c2 ^
pBtn->EnableWindow( FALSE );
) I- h$ e! n5 H- I; t# p
}else
( S0 v# B9 ?/ ^- P: P' e% ?
pBtn->EnableWindow( TRUE );
5 M, W; l, G8 W8 [, Z
if( m_pTexture )
9 d& j5 _, Y5 c$ N
{
8 ~: M( }8 O7 y5 X9 a
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" i6 y8 J9 K+ Y
if( wndCtrl && wndCtrl->rect )
4 e, @' Z- M$ ?2 V% l
{
; t0 U1 Y U( L/ V
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
9 g$ S+ k5 p6 j4 g) p
}
. P. y Y; E+ P/ K k0 [
}
4 @" D* N3 T4 L8 D
}
# k* @6 i+ {1 c K$ o- R+ Q
7 B0 B6 |1 w7 A
BOOL CWndAutoFood:
rocess()
" `- c; j8 V$ H2 O! _6 |+ r
{
i) z. J+ Q# w ?+ D6 D& W
if( bStart )
( ^: C" I& j+ Z5 s
{
" o9 c! t, [6 M9 {7 Y. i8 @# g! x
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
4 J$ R8 M( a7 v+ Z
{
8 u. u8 K" ^: ^4 f7 i' S
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
$ |. k# P. H0 B& S
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
9 H5 Z2 `& B: X# f
}else{
! y6 L, B3 u3 M$ J& {
bStart = FALSE;
& b& h/ x5 k$ ~$ m9 j) o8 h& S. q. D1 O
m_pItemElem = NULL;
) p) A1 S# q4 S! W' ~) H9 s& k
}
( { F; s1 _' d5 V0 q2 H
}
% n1 ?* s' l. U" Q( ]0 w5 c" z
return TRUE;
9 G4 B8 D7 F9 X: q
}
, w. S! l: z" P
; e$ B2 n% m+ \0 z$ x7 g' [
登录视频废话:
: S# B9 E7 b7 O) y4 S2 q" Y
尾翼:
/ }, s+ h$ q' \3 ]6 e2 z0 W
+ Y& Z9 ^* V8 i2 q
代码:
$ U, _+ G+ s9 G5 b4 A
9 { Z' l& c, P
void CWorld::SetLight( BOOL bLight )
W& X* S9 P) m
durch
, b0 Q# \* L* w" z5 H! X
Code:
' I, v& O+ i+ g6 t" r3 G, }
void CWorld::SetLight( BOOL bLight )
; N- m# `* ?) c* D) c9 C
{
1 V( i. V) k) }1 z$ }5 E. X0 \
//ACE("SetLight %d \n", bLight);
+ W9 j @0 Y! ? j; D5 p" \
z- p9 r& C( {3 V& t
#ifndef __WORLDSERVER
% i4 s8 Q B/ b! Y2 y" v& p( B z
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
5 l. a/ z$ t) x# P. H, ]+ `1 s
CLight* pLight = NULL;
9 q; `5 K1 a7 J
5 y5 \3 d& V' ?- M! m8 g0 u
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
3 M' L$ `& Z( @2 I6 a; t
6 g0 n6 A; u. y
pLight = GetLight( "direction" );
, j: U9 {1 @9 b2 N2 {
/ U. N4 x3 w- g1 w
#if __VER >= 15 // __BS_CHANGING_ENVIR
& D2 m7 j3 e# D7 ^( f
if( g_pPlayer ){
; f4 [- d( N4 B
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
2 K; ?/ Y( ~4 J5 @6 w
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
- ^: K( z" m2 p: ], Q
{
( B9 i" v6 _+ g, Q: n7 U: m
if( pLight )
, g, z5 n8 X7 |1 D/ Z( H" \( y
{
; o( e! ~+ `5 q: N" S# e R3 g) P9 r
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
2 D' z8 a( k: I/ b. @
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
/ e% }8 y V" a& Q
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
" Z$ _6 ~* Z, x) H+ \0 \
3 c/ A+ }( ]; l! D$ a
pLight->Specular.r = 2.0f;
/ H3 Y3 ?9 k d. ~( M
pLight->Specular.g = 2.0f;
, i0 _& W) m" o& {
pLight->Specular.b = 2.0f;
4 F1 _ P6 H6 j& f2 I/ o$ H
9 ?4 X) r1 V; h9 t+ t0 u2 t9 A
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
$ T1 b! j: Y1 |8 N! ?: u9 R* l3 A
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
& g, s( D( G" \+ h4 z' Z
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
( P2 k e" w( e* q8 O, R' r7 k
1 y; u- Z5 B$ J j
HookUpdateLight( pLight );
; v) h& U. R4 ~: M
( z, B2 F+ H9 \$ {$ O
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' R9 G$ G3 A- B1 u/ ~6 R
2 d6 K& S! t* z8 d2 y' \# ?/ i x
pLight->Diffuse.r *= 1.2f;
5 S. T f" `- q4 f( O) Q- m5 d
pLight->Diffuse.g *= 1.2f;
7 z6 c" S, V5 b
pLight->Diffuse.b *= 1.2f;
' K- A* W# h2 Q+ `3 i# [/ h" q
/ O3 c: |' \# T# m1 X
pLight->Ambient.r *= 0.8f;
# d4 j5 S: ?3 L
pLight->Ambient.g *= 0.8f;
6 H" @" V% I6 E; P. @+ A* z
pLight->Ambient.b *= 0.8f;
8 d; ?) }% ] I) i' K' S& Z& E; `
1 A* ~) ^- \' t0 d/ x5 @9 o
memcpy( &m_light, pLight, sizeof( m_light ) );
5 d: ~6 D5 n- ^. L
' K( M D1 f% y1 Q
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 q* q O+ G. l- M7 ~+ c3 s
D3DXVec3Normalize(&(vecSun),&(vecSun));
1 F- b x! z4 i$ [# ~
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 o7 c5 z h) j! [, Z7 ~
pLight->Appear( m_pd3dDevice, TRUE );
, t8 [7 t6 Y. D
1 F' q% j g( m v' Z/ V
DWORD dwR, dwG, dwB;
8 s. v% f! G: p7 |. ]! r8 r
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ i4 ~ q7 `) ]4 S' l1 K' ]3 G
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ R) u% F( M/ |1 `* v- C! D9 f; S
dwB = (DWORD)( pLight->Ambient.b * 255 );
" H W& @3 O( ]. ?
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 n( a5 p0 `7 h+ f
}
8 b, t9 u. x( j3 u1 z
}
! L5 i* @' U3 z V
}
( S" g* U- R. T$ N9 ?- ~0 ]2 ~
else
2 z7 X) m) w/ c6 G9 O
#endif
+ {# a! k* v9 n5 m: c( e
6 j* q9 T- S2 n% \2 z( O
if( m_bIsIndoor )
+ `: C. T. R4 D: X5 O
{
/ Z% s1 Z7 M2 {
if( pLight )
! s% B! |. z# }, C) e
{
$ I7 T5 N: g- d, z1 _
// à??μ oˉè*
) _( f5 X$ B j9 @8 D8 i
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
* z8 ~( ?/ o- w7 u# ]" `
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
# c+ I! j+ t! ^
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
! M; [( l* d3 F& G: v8 P8 d* s8 w
( h% _ g! Q7 p/ k, [$ x3 r, V
// oˉè* ??à?
* W3 X8 p: d! j8 }( h
pLight->Specular.r = 1.0f;
* w1 w! j# Y3 Y1 e. w
pLight->Specular.g = 1.0f;
! N: d) N" H' x$ a
pLight->Specular.b = 1.0f;
- ~/ q2 p0 u( A1 { `' @& }3 {
// àü?? oˉè*
5 {8 w# a0 R: K& l1 T$ i+ d
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
- K s: V+ b+ [# G' s" V
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
% ~+ G X0 a, G0 m4 T6 k- z& X
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
. X n$ b r. I0 n% [) s1 p' q
1 w' `5 L- u% R, U8 X( [5 j
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 Q1 W. O) Q3 w [. ^
{
) [7 [0 l$ s: s% `. R
pLight->Diffuse.r *= 0.6f;
0 R9 `8 q$ I9 H0 X" D
pLight->Diffuse.g *= 0.6f;
! {: \1 T" h/ ~9 a/ g
pLight->Diffuse.b *= 0.6f;
1 N2 x- F. G- N9 L1 i1 J/ R9 F" ]
pLight->Ambient.r *= 0.7f;
5 \& `2 p* w8 d9 S
pLight->Ambient.g *= 0.7f;
- c, O& [/ q( U; d* a1 F
pLight->Ambient.b *= 0.7f;
4 z9 M0 z4 z4 q" T2 o0 `' n
}
' U" i, o# @ t2 W0 V3 H7 v( {
8 ]0 L, [1 E* T" O% \7 `
#if __VER >= 15 // __BS_CHANGING_ENVIR
# ?4 b" E9 S$ W! Y1 t9 p
if( g_pPlayer )
$ a' |4 @# w$ K" ]* l4 s: ^
HookUpdateLight( pLight );
V) A3 I: h9 u! l/ q2 B
#endif
8 V: G- A2 i0 s( _* \
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: n" a4 @# O5 B1 u) O0 B4 r3 {
2 E n% F5 ?8 c: u+ y$ \% y2 @
pLight->Diffuse.r += 0.1f;
+ w. a f! j) S1 L/ Q: t
pLight->Diffuse.g += 0.1f;
( j# Q; u( J& b4 b, D6 D
pLight->Diffuse.b += 0.1f;
- C2 z- a- j) E+ g* L& C
// oˉè* ??à?
4 V% |/ R# { D' ^
pLight->Specular.r = 2.0f;
! o: S3 ?' ]' _& K! h" ]# a% Q
pLight->Specular.g = 2.0f;
' R; y* c3 V* W4 d0 T* H) d
pLight->Specular.b = 2.0f;
3 T3 R. N0 [% y1 X4 A' {
// á?oˉ
- w/ f5 a; W& e" W& N# m
pLight->Ambient.r *= 0.9f;
$ a9 H5 p# y) g1 I' Q
pLight->Ambient.g *= 0.9f;
# {( B$ |2 l. \6 m! H2 j
pLight->Ambient.b *= 0.9f;
$ f0 K( M6 {" J3 |) o" l
! F+ |8 w3 q: F# r
memcpy( &m_light, pLight, sizeof( m_light ) );
. C. u+ |7 z0 f# Q& ~& C
% f, K5 `& i6 N9 [8 d+ i* m
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
" w9 f# p$ o, }+ C4 e
pLight->Appear( m_pd3dDevice, TRUE );
3 P9 O& I: }. T0 m0 i2 O0 m# d
* x0 [( x) A: J0 @
DWORD dwR, dwG, dwB;
6 I& n g/ a6 ?# A C
dwR = (DWORD)( pLight->Ambient.r * 255 );
S; _5 _8 z- c: j6 n' Q; _6 X
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 C( W, ]( [! t( p
dwB = (DWORD)( pLight->Ambient.b * 255 );
. g2 A/ L F1 E7 B: u
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* {* G5 l. v/ _% ~
}
3 I& d F' u3 N" v5 i! W8 b
}
" n* I1 d' H7 m: Y4 V# i) ^
else
6 q" g+ l" P( v5 | H& i
{
4 Z: j% W/ M3 X; r% D
if( pLight )
; m2 }0 L* C8 m% ^* V/ h" z
{
& i, y6 r3 @6 s% y
' @! O. Q {8 h4 C
int nHour = 8, nMin = 0;
& W1 ]. X; l2 @% T' L% x
#ifdef __CLIENT
8 _6 W5 j8 N& D; E- |. B: V; P
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
# O" \ ^3 z+ W9 q1 r' \7 G* @! X
nHour = g_GameTimer.m_nHour;
9 {9 M: g& P# p) M/ r) e
nMin = g_GameTimer.m_nMin ;
! Z3 }8 q" z" s! H
#else
% e' q' o5 Q: a
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
& ~- ?* |) K+ O2 @. V! {
if( m_nLightType == 1 )
2 U5 j1 f. L$ |4 R8 T/ _& ]
nHour = m_nLightHour;
' f& ~$ x) V" H* W+ m( ?) i4 ]
#endif
6 H$ B; \7 ?8 X$ j& b
nHour--;
# }- i. c$ P/ ~1 n/ j
if( nHour < 0 ) nHour = 0;
( w) \* I. K8 r8 }2 z' h
if( nHour > 23 ) nHour = 23;
; B0 _6 U2 }: P2 v6 X. _8 Q* K9 s
# h$ B- j% t5 j1 u! W
//if( m_bFixedHour )
3 }6 n5 q$ F+ e! e2 L3 d8 C- V
// nHour = m_nFixedHour, nMin = 0;
+ E. O. N2 d. F" j. T- X) M
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
3 Y7 M1 C% p- s- e% Y8 n, I- m, A2 y
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
9 @6 E4 B( U, l/ U' n# S0 E
( ~- `7 V: e# }
//m_lightColor = lightColorPrv;
! s2 U/ m# Q Y Q
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
+ q3 R2 K7 v2 n9 _: y! h- {+ D0 ^
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
4 z7 r+ ~: M: [
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) x; Z+ \% e& |9 j1 v, ^
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
) |( K: f+ `# q, O4 `' c+ j
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
0 q$ M$ {' B2 K
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
1 t$ I' S0 j9 y: h, S) @( @) W
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ a4 @ N, s- c2 T, ^/ y) A' R
( e' ]* F: d3 ?8 n
// à??μ oˉè*
' B+ E9 i+ y3 P- @
pLight->Diffuse.r = lightColorPrv.r1;
' W5 |- q _2 k" ~& L/ p. R4 `7 m8 Z& A
pLight->Diffuse.g = lightColorPrv.g1;
+ ?6 E d3 [0 `* n& T6 j, @: z
pLight->Diffuse.b = lightColorPrv.b1;
/ a Y+ s3 ]; q6 w2 T1 n5 W2 V
// oˉè* ??à?
& y2 J, i5 q' ]+ X: h4 g
pLight->Specular.r = 1.0f;
8 C, c: {5 x6 d+ b+ L- S, J
pLight->Specular.g = 1.0f;
- }4 ?: C0 Q# p' g" Y5 z' F1 V
pLight->Specular.b = 1.0f;
# Y$ x/ R! V8 {) D: v; x
// àü?? oˉè*
! P, T" k4 h( ^8 s+ w8 X
pLight->Ambient.r = lightColorPrv.r2;
" L+ y& F# w4 G+ q1 J
pLight->Ambient.g = lightColorPrv.g2;
* t4 w: [+ L) W) ], \ A2 ?/ P$ f
pLight->Ambient.b = lightColorPrv.b2;
% f0 r( u- H0 A) Q. Y6 k
* f, b$ |, D* x! ?' U4 t6 p
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 u) j- v Q. o7 p- [/ Z
{
) ~( ~' d L: g1 w# g) }' t9 b& Y
pLight->Diffuse.r *= 0.6f;
) t# }1 k" R* U4 ^! R( X
pLight->Diffuse.g *= 0.6f;
/ b0 p% q* v1 }0 P2 E! Z
pLight->Diffuse.b *= 0.6f;
( a _9 I5 Z( t, z- W5 _" I4 X
pLight->Ambient.r *= 0.7f;
: c/ s4 l+ x; y) P
pLight->Ambient.g *= 0.7f;
; t7 S4 b* [5 P: @) `3 S
pLight->Ambient.b *= 0.7f;
6 A! H4 A% y" K8 B- ~
}
- G+ x2 d( z' `% w) ~6 O$ l
8 b" D6 k; f+ G) H, g0 x
#if __VER >= 15 // __BS_CHANGING_ENVIR
y, C4 `; r8 G8 g
if( g_pPlayer )
8 _# i& q6 ?4 C$ ^2 b
HookUpdateLight( pLight );
2 W* V. p3 K& Z0 X
#endif
6 J+ C J* g" K6 N. k3 x
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 O, Y& ]* y2 u! E+ x
* f- o* H! w9 O& }
#ifdef __YENV
2 Y* R q8 Q( v* U, @
pLight->Diffuse.r *= 1.1f;
- e+ z7 q8 |" r/ b8 `3 t; \1 }
pLight->Diffuse.g *= 1.1f;
5 N, l( \0 g q* |5 j7 v
pLight->Diffuse.b *= 1.1f;
) s! H/ L$ } m$ N9 t
// oˉè* ??à?
: @' M4 y. {6 f$ C [6 e: L
pLight->Specular.r = 2.0f;
) ^3 X& e$ E8 N& u8 Z9 o
pLight->Specular.g = 2.0f;
. M0 a' ?' J/ w
pLight->Specular.b = 2.0f;
6 i# Z4 v$ x( n4 ]
// á?oˉ
6 I! w( A) A5 L' d
pLight->Ambient.r *= 1.0f;
" ]0 i' U9 V1 z
pLight->Ambient.g *= 1.0f;
6 i F; o$ D- ~7 B- J
pLight->Ambient.b *= 1.0f;
' |0 Q' Y" Y# N& S# ?( i" k
#else //__YENV
! Y1 v0 {- c2 N, K
pLight->Diffuse.r *= 1.1f;
* k& f( N# m+ y- P* @* f# i+ X
pLight->Diffuse.g *= 1.1f;
" F2 Z K* c( F* i7 N3 }% b/ Y/ z P
pLight->Diffuse.b *= 1.1f;
/ Y' l& {- o! U# b
// oˉè* ??à?
& {; Q' h8 `- r% W* R" f4 x+ f
pLight->Specular.r = 2.0f;
6 ~& e! N* ?/ m) s
pLight->Specular.g = 2.0f;
1 ^6 n& \5 Q/ ]6 g
pLight->Specular.b = 2.0f;
# g0 `5 G* o1 I" g; o1 r9 p
// á?oˉ
) g7 Y+ E/ q2 h
pLight->Ambient.r *= 0.9f;
3 q7 s3 h/ r, d' Y( G/ z7 s
pLight->Ambient.g *= 0.9f;
3 L4 Y: O4 S& ^% N$ G8 x
pLight->Ambient.b *= 0.9f;
2 W2 }, D0 ?6 \% w% J- H& i
#endif //__YENV
2 O, Y( x; r2 l( @
' [8 X8 z; _0 m9 v$ B" b& ]
memcpy( &m_light, pLight, sizeof( m_light ) );
+ C! t( V- W( n% d4 Y& f
" E. y( m* O0 n" x- O: U+ f
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
( m4 z3 `3 a$ N6 J
D3DXMATRIX matTemp;
# ~5 N. h# V. G
static const float CONS_VAL = 3.1415926f / 180.f;
: K' z Q* I& V$ H4 S5 q
; @* d% v8 u# ^* L& g- A" `
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# [# q4 e9 _" H0 l9 Y6 E8 R
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
& y0 U E! ^ T$ _' f
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
0 n0 Q% H) D! X
pLight->Appear( m_pd3dDevice, TRUE );
, D% v1 a) N9 o
' v( c& y! d' [( `, T' r
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
! j& l+ s1 w6 \# }
// D3DXVec3Normalize(&(vecSun),&(vecSun));
- M7 q G: B* h* C3 z& M. Y
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: R/ ?! Z/ a" I. G7 X: T
+ p; S; F+ D8 G8 H) G% c2 `
DWORD dwR, dwG, dwB;
7 T9 z9 [ l8 V& d) Z
dwR = (DWORD)( pLight->Ambient.r * 255 );
# S: X0 s+ ~, J! t# p8 Y
dwG = (DWORD)( pLight->Ambient.g * 255 );
. b! k+ K; n; x) q- [ {
dwB = (DWORD)( pLight->Ambient.b * 255 );
; h3 Y; T1 `" r6 g7 d
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: b R* H, Y* p7 u4 n
}
7 x f8 j5 ?% H
}
9 x0 k/ V$ G* m: |/ C8 ]
: y5 C! Q' c& B7 ~& C4 U
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
9 i: e6 j$ _8 R$ T
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 c4 z3 h! b( I7 c
::SetLight( bLight );
) V1 |3 K N" S! G) f
% G' k+ U7 C" M' a
// ±ao? ?D?í???ó á¤à?
* y; V$ ~, H C6 L( q
m_pd3dDevice->SetMaterial( &m_baseMaterial );
/ V/ H/ [, r6 k
7 L; q4 E# C1 Z8 B, E* D
#endif // not WORLDSERVER
$ t [3 t d# w. U. _5 ~
}
4 r' k! R& Q' ~& C. H5 V
并更换
& G. `3 k x$ R# Q% \9 L9 R0 [, k
Code:
' o# T2 b! g* V6 e8 i% e
__FLYFF_INITPAGE_EXT
! x( {, q& U/ }( _& H
定义
* A) Q- O# E3 u; ?1 h
8 Z( C* E9 q( n2 Q/ y# s( O- D: j9 \
! R0 B& Z# l; D) S6 r$ O& u; R3 z
1 A' p# S9 p( g
% o4 j) t- K% P( r6 W6 B7 ? s& a
现在终于删除我的狗屁加速...
) ] w( D$ |: K/ T6 D; {
: s R! \% T. V' l' i* c8 s
' r- Y9 |5 W* j. K4 x
9 ~% M* t; ]. d5 u- |" _: {
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2