飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
! B2 W" [! z' H) B+ ^& L) z' n9 o$ s
尾翼:
' N' s5 l- m; h
8 H% \+ Q5 r7 B/ o. i) M
代码:
) L" T& C) b8 x$ J
CWndAutoFood::CWndAutoFood()
8 k, f5 R9 y* j7 Y& M+ i; P( y
{
( v8 _8 |. B% l; g3 z' Z! b1 Y
m_pItemElem = NULL;
7 I; b" I) H p$ }0 P% K
m_pTexture = NULL;
2 t$ F, a: v1 a! Q5 P: n" j7 W: \, N
bStart = FALSE;
% E3 d/ p7 F! o8 E- e3 `3 F! o
}
/ i0 @: C' S& d; O/ P
2 x# G: |3 i% {. R! @4 e
CWndAutoFood::~CWndAutoFood()
3 } l9 e- @: \
{
9 r) }" N" ?; ?7 H- d1 ^
AfxMessageBox( "AutoFood ist gestorben
" );
% d$ M5 e) ?6 Y. J0 q8 t) ]" @' B5 x
}
; z K8 J/ q; R4 P) S, s
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
' M5 W! e& n. H( M9 |- v' A3 L
{
. U% T, X, O, ]
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
$ L5 Y) m( S4 Z6 j. e# n
}
( d/ {4 `, m+ Z, X
, F5 [0 C# J1 z1 P1 u
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
2 Z$ E" ]- `& y( U
{
0 T7 M* G, r. G( y$ t8 g' l7 U
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& `4 _/ U# R# {1 n6 T( A
CRect rect = pWndCtrl->rect;
3 ^% p4 }- X: s# h& I9 J7 T
if( rect && rect.PtInRect( point ) )
: J: |% Q! w: V" N& ~9 m
{
6 u/ \& ?3 {( S |' ~
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
) {! J+ t+ Q {2 b. ^8 {" R
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
) m% Z& Z1 \0 B8 N9 ^
{
/ Z& H+ w2 a0 V( s8 i' i( H
if( m_pItemElem )
- R; }4 ^8 W' }9 e9 e) v" v6 J2 ?4 p
{
}0 R c- ]+ Y* U1 [
m_pItemElem = NULL;
) S" M b b0 t j
}
, @, l U" H( o* C
m_pItemElem = pItemElem;
& G+ e- z) @5 Z/ [) G1 a& @
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
* C7 j% X" Z4 | q; D. [5 @
}else{
; C1 F A1 L% w% a, d- h
SetForbid( TRUE );
9 i; }$ ]1 ~1 W( a# O, v: j& k
}
' I" n/ h. u7 n; R% l: r
}else{
9 X! ]. f Z4 f9 b2 S
SetForbid( TRUE );
4 K) ~4 n" j! R, W8 M4 c
}
_. l: \- Z1 Y8 b# N9 {2 i) C
return TRUE;
2 ~$ Y' y x% `% Y6 A v2 p7 V
}
t* Q' U* C4 Z7 f9 [2 |& k. A
1 c( ~! K+ |3 F# O3 t3 m
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
$ ~, E' Q! [8 ?2 H2 ~0 X! i3 \
{
$ R' i, l( W% T7 Z
switch( nID )
x/ B0 B& T* x( n( m4 Z$ f4 }
{
! o$ X! O n: F: r+ [- i
case WIDC_BUTTON3:
7 _9 r) p% ~. `$ G$ U9 m
{
2 G! y+ M9 e+ L* K7 t) {
bStart = TRUE;
) e. I, E; k2 P! Y+ L2 I
break;
/ W8 G( W# W5 }' Q/ P; o3 a
}
2 W7 Z- f5 W3 y
case WIDC_BUTTON4:
2 u( H. N- F T$ P: a) ?
{
& b: x5 B y3 j8 J
bStart = FALSE;
" a# b4 W, _9 j/ _7 A% N# `$ @
break;
+ Q# K, V6 p2 ?' w$ ]) I
}
! E, |3 w' [! K, J/ K* M1 R
}
( J- Q% d3 M3 _2 D6 H! }- R
return CWndNeuz::OnChildNotify( message, nID, pLResult );
9 h) h" i. W' v- C2 Y7 Q
}
( Z( ?* x) `) ~" N
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
7 |: S" u4 `- R" J6 v o
{
( q. }& |; w0 z# ~/ q! O4 J) I& K
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
3 I9 P2 f3 B1 ^) R* S% V$ h: Q8 }7 p
if( bStart || !m_pItemElem )
. g5 Q6 s$ \- u9 ]6 v
{
/ Q( ^1 a3 y3 z' ?: C4 g( ~
pBtn->EnableWindow( FALSE );
& y# x8 Y% M# c, T# R# |+ {
}else
1 D4 \2 u/ \* @- |; e! E, V
pBtn->EnableWindow( TRUE );
$ g+ V5 _/ D7 F5 p0 o$ s9 s
if( m_pTexture )
# _) D5 [/ `+ B! J' Z. `" T4 X
{
8 k4 Y) o" L6 b0 s1 `
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. B+ T8 S, U. e5 ^: {. P. C$ c% ]
if( wndCtrl && wndCtrl->rect )
2 K2 v3 j+ a* p- [3 c
{
2 w8 u9 ]3 [) {. e
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
) a* ^" j- P' y% e
}
2 ~* q# c4 V. G. i& X( q* c" G C
}
6 T- U$ [6 ?: K& {7 Y: ]' B
}
5 X" `; G( |- ]
+ S- L, Y- H: V0 v' N, F" J0 O$ c% o7 f
BOOL CWndAutoFood:
rocess()
) N' a: Z: F7 ` Y( |. z |' m
{
3 w% p0 T9 q% J0 v5 J( L
if( bStart )
/ K* b2 \) o6 y/ T! b
{
0 n5 l2 e% ~5 d) I- E4 G1 Y
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
0 w" b/ ^$ r) X) ?2 u2 |- w8 O, d
{
- v. }+ r1 ~* L, W4 f% L8 x/ r
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
. B7 h& O% S( x- J% u% K! O
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
' }2 Z1 w x- f$ R
}else{
! J" r/ z5 c8 X$ _ b) |
bStart = FALSE;
0 D* r7 t" G: t3 T" ]1 C4 [
m_pItemElem = NULL;
' m3 O" r0 e9 g8 K' m0 s# I
}
& B) Y) v) C! X8 T1 S' s- W
}
) R5 j0 i; D, B4 q3 D! [6 c
return TRUE;
/ Q8 ^, a8 C, c% `4 Y# W" [( [
}
1 p" z/ z; l' F) {8 S
! }* E+ ^6 `# T% T' E: I# `1 f
登录视频废话:
6 p5 @" L' G0 r' E0 T' T/ D( v+ E1 c
尾翼:
/ R5 q' f) _4 }- ~4 M9 Y: I
, a* \- T* {; P3 X+ ?& \
代码:
& S$ T0 h& C0 j! o: |
" H) O8 F& ~2 q' I
void CWorld::SetLight( BOOL bLight )
% _ J: Q) |8 Z! H0 M- ^
durch
5 z- R9 M! p/ V
Code:
# u6 f5 V* D! c6 }8 G! s
void CWorld::SetLight( BOOL bLight )
* q" ^% P& p0 R3 r) H6 d0 V
{
" l- Y: S: M3 ^# A; m# x. F) P; t
//ACE("SetLight %d \n", bLight);
; b; d- v5 e P: m: h+ Z5 A. o- ?9 F. x
# i) ]. I- E6 y4 J
#ifndef __WORLDSERVER
1 D# Y$ r( E" w5 N$ X
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
3 w' u' V( k f' ?9 v
CLight* pLight = NULL;
3 g* @8 \! |+ a$ [+ f: w$ r4 P
5 L; ^4 N. ^6 a4 S( r8 K* E
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
- Z. W. c6 A+ R: E7 Q z
6 a3 f4 g8 P9 c" j" @7 U
pLight = GetLight( "direction" );
* @( u7 ]* s* k C9 k
) y; m8 R: J0 ]; X. P' _
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 m) I) F2 o) F3 D2 @
if( g_pPlayer ){
3 o8 K# }4 z# E( E1 N# Y
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
+ ?7 l! d6 b5 J' P% ]
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
3 ^# B3 d+ P. q4 Y! }. L; d
{
5 d1 G( J- N, H2 x2 b2 K% Z
if( pLight )
) T; K( D& E4 e2 A
{
# U& v8 n0 r- |! s. k
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
7 d* d; Y2 P, x U+ q1 J% [+ |
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
) N& b" h+ ] M/ J: n
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
8 s. q6 t. R$ G. u+ M7 C& I
, V! g7 m, z# w v- }! e) }
pLight->Specular.r = 2.0f;
8 V) E7 z; p" p2 V
pLight->Specular.g = 2.0f;
) s6 O+ H8 Q8 s
pLight->Specular.b = 2.0f;
4 i, [+ ~; m8 Z. y4 _+ s
3 e$ r" v6 {7 j- W9 B" U9 K
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
! r R* V4 k6 |, v
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
5 g3 f5 F7 D# `# b. g5 b
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
: y8 h1 W( a# `5 w
B" A% ?* m- f9 }# m$ W
HookUpdateLight( pLight );
! u4 W r6 g% U; _2 E; L- ]
8 B" P9 {7 t- h: g9 c' r' f* c
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# E1 x4 k; t, R0 E6 e' T
" u/ `0 M/ C2 }% ^$ ~) X) G
pLight->Diffuse.r *= 1.2f;
3 g3 B/ e8 y7 w2 ?/ O; R. h9 t% z
pLight->Diffuse.g *= 1.2f;
- N/ r: o% ]! T# I' o
pLight->Diffuse.b *= 1.2f;
9 t3 ?" Z9 u) e' [; g: Y
$ Q. @6 ]9 ^, n% r1 A. I
pLight->Ambient.r *= 0.8f;
6 ~2 |, Y: v ]' p5 h! E+ V
pLight->Ambient.g *= 0.8f;
9 _* ~. s7 U$ ~
pLight->Ambient.b *= 0.8f;
" d5 h6 U/ Q+ Z5 W8 ~. X
$ o% V0 k# e* t+ j
memcpy( &m_light, pLight, sizeof( m_light ) );
4 i0 R2 \" ]) @) Z% g% V$ x
6 U6 z& X3 G6 u9 d
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
- z0 a8 {: m5 s+ C2 w& ~
D3DXVec3Normalize(&(vecSun),&(vecSun));
% ~8 c: e4 s! ]7 { H# Q, }
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% A# w0 f- u6 ~- \2 ]$ z' D
pLight->Appear( m_pd3dDevice, TRUE );
4 Y+ u& Y; O, b" I4 t1 d% @
( K3 W- {2 W9 L
DWORD dwR, dwG, dwB;
* B& y" `, q$ K, K, p. C
dwR = (DWORD)( pLight->Ambient.r * 255 );
. K- R0 T N. ^# J! L, i
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 G* X7 t7 @, r# T( E2 g
dwB = (DWORD)( pLight->Ambient.b * 255 );
. j6 m3 V& D& Y2 y$ l1 r h
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
|/ T( B! k; W
}
8 ^5 f0 m7 z/ L) U. s1 z
}
4 }% z1 N! E( a* k4 U
}
. _/ j( S; m' {( p) I
else
% B& i& D: g8 ]$ _2 } M
#endif
2 f, ^1 Z* C: X' N9 N1 |
h% V, `+ g/ [3 d; _2 R
if( m_bIsIndoor )
% N: X! k, @* G( x0 d& z% |) J
{
2 G3 s% f# y/ r& C1 i! N8 P
if( pLight )
# d3 G. V7 o6 J% c" D3 ]
{
9 G/ y; [; @5 J' Q" L
// à??μ oˉè*
4 Z$ B! j0 ?1 _0 D& o
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
' `+ L m2 _& Q: K2 c) d
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
, M- ^) f2 d$ `/ i& v
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
) m$ D9 s* ]- s: O
/ a' L! e) L$ B' V" D
// oˉè* ??à?
$ {' y" t7 M g
pLight->Specular.r = 1.0f;
9 ?- Y" f$ N2 s9 H# O6 A* ?. }
pLight->Specular.g = 1.0f;
% G+ U6 a0 i5 Q0 w: w
pLight->Specular.b = 1.0f;
0 {9 _/ I/ U1 H& r. c
// àü?? oˉè*
; O8 z- X( r- A8 r
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
7 |6 v( ?( {( t S
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
& Q' H( ` _7 t* h: ^6 y# ^# J
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
: x/ @+ i- t' r( k/ Y1 a/ z o1 ?; k! c
, s9 N0 U2 L- h
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
0 L! i- E6 z8 ~5 T1 j- C- A* q
{
' f+ t, D! q& I$ H/ L
pLight->Diffuse.r *= 0.6f;
/ g% ^3 X9 e0 H9 L( N
pLight->Diffuse.g *= 0.6f;
! ]" Y& Z( U- D0 O9 _
pLight->Diffuse.b *= 0.6f;
, _) y- R, Z5 d' ~
pLight->Ambient.r *= 0.7f;
. B0 D( G3 @0 i
pLight->Ambient.g *= 0.7f;
* B$ P* [( ?7 q3 e/ X
pLight->Ambient.b *= 0.7f;
- `! a' o F; `2 m0 p7 V
}
% W, M, z$ ^: i8 ]) w
2 |# Z1 w0 X; |$ Z5 r2 x0 t2 U
#if __VER >= 15 // __BS_CHANGING_ENVIR
9 g4 u' h/ ?' z
if( g_pPlayer )
; P& f( Z9 `/ I/ Y9 b7 w/ t2 ]% @
HookUpdateLight( pLight );
, d( U V0 C; ?$ o9 F1 u5 O
#endif
$ G$ P5 L9 v' a) O1 _' e
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 s, A1 Y( w8 d$ c! Z B( _& {
1 E/ O$ \+ n' `# y( J4 F$ @3 p
pLight->Diffuse.r += 0.1f;
# J& Q" [7 C8 Y
pLight->Diffuse.g += 0.1f;
( |+ c/ z& l$ s# E
pLight->Diffuse.b += 0.1f;
/ ~; U, g/ U* l8 e
// oˉè* ??à?
4 o6 z! ^" D- e" K O
pLight->Specular.r = 2.0f;
# c/ A9 w- L& |* g
pLight->Specular.g = 2.0f;
$ A( [, u( E. ^) w- `) l( _/ g
pLight->Specular.b = 2.0f;
2 u& R/ X y7 l. Y p2 ?* L6 O
// á?oˉ
& D. I0 S) ~' p1 R0 E/ [& h
pLight->Ambient.r *= 0.9f;
# x% ^: f+ I- B S$ R1 I% [/ [! U5 |
pLight->Ambient.g *= 0.9f;
" {: h3 P5 L) x) l+ I F( Q( u9 Q! V
pLight->Ambient.b *= 0.9f;
3 M7 L& R+ k$ c. z4 _. L/ v+ B/ ~
5 G& C4 S3 S9 [# P
memcpy( &m_light, pLight, sizeof( m_light ) );
& ` V1 E9 Y8 B2 Z( h+ E
, S5 _' m. k q: ?6 v
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
, |" M# u1 G; e7 o0 `4 W
pLight->Appear( m_pd3dDevice, TRUE );
( p* E* H1 x/ k+ @
! Y: t* u, `1 ~
DWORD dwR, dwG, dwB;
3 }% ~; y+ x' i/ W4 a6 Y
dwR = (DWORD)( pLight->Ambient.r * 255 );
: P/ z& Z9 ]. a3 I+ Z
dwG = (DWORD)( pLight->Ambient.g * 255 );
9 Z7 J2 R* j& C0 U
dwB = (DWORD)( pLight->Ambient.b * 255 );
. F6 I6 A2 ]* t$ L7 N5 ?& ?$ Z0 [
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% B+ z. { b! A9 a. l: ^4 S
}
+ \9 X9 I8 m1 \0 X/ N
}
; U v6 l- K/ T# [2 M
else
$ ?- `* }/ s8 v/ E1 u
{
- a! E- }. @4 B, ~% T ~9 \0 S
if( pLight )
! [4 W1 Z6 T+ R0 s/ @; _
{
5 |) W% P: X, N
" O# H6 C7 T6 D0 [, R
int nHour = 8, nMin = 0;
% F5 f% G8 w1 v2 A
#ifdef __CLIENT
, n: v2 P9 _9 S2 Y. G
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
. |6 j r9 t, v3 X8 O9 y- D: T
nHour = g_GameTimer.m_nHour;
8 Q7 d* `; Z* t' p ]% ]/ q
nMin = g_GameTimer.m_nMin ;
3 d w& [; @8 E6 d
#else
/ q3 L! p- z( R0 h5 F4 d6 G# I
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
# w: T: l# [/ l; c( ?7 J
if( m_nLightType == 1 )
3 K4 d b- K% G3 ?0 A# D- J
nHour = m_nLightHour;
: q! T, F. q$ O$ x+ {/ s& c
#endif
2 D; Z* K# q3 o3 }8 K
nHour--;
2 m% @8 |. I1 U! S9 Z t R
if( nHour < 0 ) nHour = 0;
: b! n9 ] s& J) e
if( nHour > 23 ) nHour = 23;
9 E! } O6 W& u3 S) o' A
0 d" }9 g ?* I2 t9 _6 T7 y% \
//if( m_bFixedHour )
" ?# K, i- {( b2 `) G1 B: G
// nHour = m_nFixedHour, nMin = 0;
% j1 b: O! F6 J! T! u2 @! T" j
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
" R2 }) f8 A% ?( x3 F) {5 G4 P
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
' l n, }' p+ O. g& W
4 ] A& o' o2 M9 i A- j
//m_lightColor = lightColorPrv;
& m5 r' `, |$ H* J
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
* d( T, ^$ g# [8 v
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
- i0 }# {2 e3 H4 a8 J. {* z
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
3 C) v4 J9 y) h. t
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
/ O7 T k R4 T" D2 ^& L) y6 a
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
$ T, Z; | A* N' b$ F9 ^
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
5 T7 |& N- ?% c
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
# W7 A/ i1 N7 O# `* W# @
, b9 W& p( e1 Y
// à??μ oˉè*
6 p3 L: |# {& @: w
pLight->Diffuse.r = lightColorPrv.r1;
4 x% x a$ }7 I6 x( d
pLight->Diffuse.g = lightColorPrv.g1;
( c+ }6 v+ t' X: n7 p/ d9 |' }
pLight->Diffuse.b = lightColorPrv.b1;
, C) w3 W) n7 `" O
// oˉè* ??à?
; n, ?9 R0 ~; v
pLight->Specular.r = 1.0f;
, g# J* T( K1 `/ B: m3 O8 _. J: Y
pLight->Specular.g = 1.0f;
9 _ k5 f! q) @5 L
pLight->Specular.b = 1.0f;
& W+ ?3 x$ z6 I8 r
// àü?? oˉè*
/ d" @7 q" j' r6 g, t+ M% @' [6 f
pLight->Ambient.r = lightColorPrv.r2;
0 h" ^) J x3 x$ o6 S0 g1 u& s7 j! L
pLight->Ambient.g = lightColorPrv.g2;
% A [* {6 i' q8 ?
pLight->Ambient.b = lightColorPrv.b2;
# V* x2 Q9 N5 x- y1 D
: y4 y% j! |! M c
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 k( J: O- p. }9 B9 V
{
& f$ F5 s/ O* V: ~- w
pLight->Diffuse.r *= 0.6f;
/ g1 i3 S3 m" ?! N4 e* |
pLight->Diffuse.g *= 0.6f;
$ L' j2 n2 b9 }7 x9 w
pLight->Diffuse.b *= 0.6f;
+ }+ t3 g( N4 |$ P
pLight->Ambient.r *= 0.7f;
9 w6 {5 `$ }: R' C
pLight->Ambient.g *= 0.7f;
- k; Z! ~, E) X, M: s+ h- Y
pLight->Ambient.b *= 0.7f;
- `% P5 V. G* v1 ^5 e
}
) v$ w$ \. m0 w# Z0 v) B9 j' a
/ z$ X. O' w7 V% {
#if __VER >= 15 // __BS_CHANGING_ENVIR
. a, \. h8 N2 a: u
if( g_pPlayer )
7 Q0 p* [, h& U; }$ c+ ]
HookUpdateLight( pLight );
: O8 I: e6 F3 _9 d4 Y9 K. l) Q
#endif
+ e4 |. z ?4 r" t) D
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. x8 Y2 `/ n( ?+ ?
& L# @4 h4 |. s* Y- q# c- G; b
#ifdef __YENV
1 p1 `, Z" N' o7 C
pLight->Diffuse.r *= 1.1f;
2 s' _6 [; N! c- [9 ]" O
pLight->Diffuse.g *= 1.1f;
$ V" P! o3 L, L, A- s
pLight->Diffuse.b *= 1.1f;
& x/ v) h5 q8 ^/ @6 z
// oˉè* ??à?
$ n) p( `! Y" _1 S0 |! \- g
pLight->Specular.r = 2.0f;
5 A. k1 u3 y1 f, i. V! z& d
pLight->Specular.g = 2.0f;
4 Z$ z/ _! z& Q1 S8 R/ a$ C! F9 i- g
pLight->Specular.b = 2.0f;
* X, [: H. K8 P% p& ~* u5 H, v1 e
// á?oˉ
, g7 P' S) w4 R& r# E$ E
pLight->Ambient.r *= 1.0f;
+ V0 d" ^! Y* I. l: O/ x8 u
pLight->Ambient.g *= 1.0f;
7 k/ Z9 `" ^' D% w6 i) g) U
pLight->Ambient.b *= 1.0f;
5 V: D- I' q' K7 E. x
#else //__YENV
( i& E, @5 r& s2 _8 ~0 i
pLight->Diffuse.r *= 1.1f;
3 ^0 m2 }; k7 I$ b7 f; M9 d/ }
pLight->Diffuse.g *= 1.1f;
) U! q- I5 C* j' w. A& C
pLight->Diffuse.b *= 1.1f;
5 F& Z2 z- f+ q: Z5 z6 H- i
// oˉè* ??à?
6 ^0 w6 Z# g7 M' \# h0 {+ f
pLight->Specular.r = 2.0f;
% K$ W( b K5 e( A
pLight->Specular.g = 2.0f;
8 m2 t5 {7 c( P; d
pLight->Specular.b = 2.0f;
( C3 U* w- O( ^- F
// á?oˉ
1 n4 e# A9 c5 s9 s; q' T& y
pLight->Ambient.r *= 0.9f;
1 O1 O' _. E8 z- E
pLight->Ambient.g *= 0.9f;
: t( O/ u" e) C
pLight->Ambient.b *= 0.9f;
" v/ d. f6 P \7 [0 w
#endif //__YENV
2 y4 g( D: o, H l* w/ M
5 G1 O, l' e0 A+ V
memcpy( &m_light, pLight, sizeof( m_light ) );
- k' a$ S% N8 r0 a1 Z6 V
h' E+ Y" c( @) L
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
' D3 ]- G8 P- j. L) D) f
D3DXMATRIX matTemp;
F; P) d- f, p1 o8 R5 m
static const float CONS_VAL = 3.1415926f / 180.f;
: J$ ~$ v: P5 `0 a5 _: L$ s
& j% o0 B" `6 v# {# A
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
$ b8 ]& j- ^8 P& _+ R1 o
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
8 I" [4 E5 @) ]: u) Y
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
& H0 D! u B; G" _6 C
pLight->Appear( m_pd3dDevice, TRUE );
+ A2 S4 h- k% y
. j% ~" F/ Y7 x; I; o1 V7 G% I
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
. K% ?5 @; R& j" Z2 B
// D3DXVec3Normalize(&(vecSun),&(vecSun));
6 q* f* E: \, e' `: ]% L, _2 x
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. g: @% w# E8 n6 ?* y
3 {/ k6 _8 c# a( z# F. I! x, t( K
DWORD dwR, dwG, dwB;
0 ?& \9 ?. f* n$ Z0 z5 [8 X
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 s5 j7 B# D& z5 w; c* S3 G
dwG = (DWORD)( pLight->Ambient.g * 255 );
: s# C2 ]6 [6 f: M
dwB = (DWORD)( pLight->Ambient.b * 255 );
; E, [0 w/ v; M: G
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ p8 j7 k7 h' g5 \. Z
}
3 |) [8 n$ @# I& t9 Y! t4 H0 J1 G* I
}
4 X0 u! T1 J1 T# M0 D
6 x% f) E7 X9 L; D- R
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
! h3 X7 ~* Y, k; p- h; x
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) );
( l7 D+ p+ Z7 Z2 @( ]7 x, g
::SetLight( bLight );
9 {; B, h8 P; h" e: ~
* Z% j* t* D: Y% w5 n; N
// ±ao? ?D?í???ó á¤à?
! ]2 K- P. F6 h$ X$ i& ^- O: f8 C
m_pd3dDevice->SetMaterial( &m_baseMaterial );
5 ]& {' d7 U9 @# N2 J
' a O! r. q% W% y* C
#endif // not WORLDSERVER
/ Q6 ]3 d" |( _/ [* T& q
}
5 ~% V; t [! o. n
并更换
: L1 Y- q8 U5 I5 v
Code:
% Y" L9 u- }) @ n( [& h
__FLYFF_INITPAGE_EXT
) t0 Y8 d- w( t1 w0 N( y
定义
4 a0 u$ P1 e) g' H" y
6 ~' a, _5 h/ f
& o) I1 ?6 A; [$ {2 U1 k% z* A
* p- g L7 E7 K, L7 T; n) e
% C( C7 Y3 g0 k
现在终于删除我的狗屁加速...
6 L& S6 s& G* x9 j
2 C( h" [7 \1 Y' B+ b
( U: j" C5 K; a! F
( S+ ^% O0 C3 W% \- F4 h/ z C
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2