飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
. h2 r7 x9 J9 l( R) W
尾翼:
; p J6 H' R6 v* w* k2 R
+ t4 X5 L7 R- G9 }( Y$ [
代码:
& l2 i( \7 V4 i* o
CWndAutoFood::CWndAutoFood()
' [0 y& s: @' M# C! X z: \
{
" Y, L! T4 f8 F' b0 C. y
m_pItemElem = NULL;
: ^/ r' w; F/ n+ M. S0 ~! M
m_pTexture = NULL;
+ K( L' u# g; \, q+ l9 D
bStart = FALSE;
( K5 Q# m& @* @/ \2 B6 G: F
}
" m& N! @6 M+ L& A
9 `3 x# t9 |3 }- E
CWndAutoFood::~CWndAutoFood()
. S& H2 T. ~( J, O
{
+ z @+ e8 x7 J0 r1 _
AfxMessageBox( "AutoFood ist gestorben
" );
5 ~! `1 m* Z8 \) Y
}
3 k$ x( l' C1 {( I
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
4 v3 o* G* K5 G$ X, A' p" L
{
4 g+ J2 l0 L" E6 {
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
7 F$ X% H" h) t A; G5 ~' Q' d
}
3 R; y. z9 N$ b2 ?4 E# l# G, _
7 A& o6 a: A f" n, m. q
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
# r m+ S* n+ K/ b! n+ O
{
- a2 i/ x+ W; S' B2 [- I
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ J1 j0 F0 e) Z" v- d) f
CRect rect = pWndCtrl->rect;
0 }4 q! O# Z& j, w
if( rect && rect.PtInRect( point ) )
, y( W) v; N6 r& O# F
{
# C1 C9 b+ B" z5 ~. Q% |
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
6 K0 R7 I, V* Z& S5 j2 C
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ |: Z/ H' V- {) K0 }
{
% [6 K- d1 {# f7 `5 J7 t- t
if( m_pItemElem )
' z% Q) p; Q P( T
{
4 D3 J/ F5 |/ d& R9 D. A
m_pItemElem = NULL;
! ]+ X- r. R( Z. ?
}
" u) L# P, k8 |
m_pItemElem = pItemElem;
. ~& V" M, z( q1 R2 Q1 b0 D
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
" e* \3 ]0 g" E
}else{
0 V! u- }( [) A. X
SetForbid( TRUE );
, e7 f$ I" H G
}
0 m5 T7 B ^4 K, ^& v# o! }; b5 p
}else{
]' A4 V) h' o0 r* d
SetForbid( TRUE );
7 I8 z: n+ g) P/ e) u
}
. ]. H& I9 g: D4 q1 x f. @! T
return TRUE;
" V$ c9 C! N; u# b) w( ?1 }
}
% [8 P6 G' x: R7 `5 x) l+ m
6 {5 i, ]3 r( `" T1 O
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
; ?4 Q1 i: |( V% r4 D1 f: ^6 g
{
) b' e- a- a: M) D5 N! E
switch( nID )
' {9 Y; i+ q; s6 T2 e& R/ Z
{
' ~" V8 H4 | K# _
case WIDC_BUTTON3:
" B0 U/ Z! f: s; [7 [
{
' U% s) `6 h) p" I2 R
bStart = TRUE;
. k8 d% O0 ?9 |6 b
break;
: ]$ @8 d3 O' z1 v8 I
}
5 A, B" n$ u! f* V6 r6 ]% {
case WIDC_BUTTON4:
) V' T! y$ V2 M. T6 ^' ?
{
8 p5 C% e2 q6 s1 B. u" l
bStart = FALSE;
; o: q h1 a$ ?4 a' V" ~: P+ B2 _
break;
0 U7 n4 V+ ~$ n9 z
}
8 I% X7 b; U) g4 s5 t5 J$ D# U* ~
}
( x# @, s1 c$ t- n
return CWndNeuz::OnChildNotify( message, nID, pLResult );
2 }, v; X. m$ J
}
+ N, C& t) H$ Y9 `9 f
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
4 s4 _& E/ v/ J$ B
{
) V1 J% x! i" m% I
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
0 j+ F. g3 f3 U
if( bStart || !m_pItemElem )
5 X/ s* t' P3 d+ R7 d' f& A
{
- O, l) E( D* s/ q6 o
pBtn->EnableWindow( FALSE );
" I* c. Y$ u8 F' e3 i) b
}else
$ A$ M6 e* I% u( @
pBtn->EnableWindow( TRUE );
$ g5 H3 @8 G0 R" U0 W6 I
if( m_pTexture )
5 w! a- x8 r2 _" {/ S& {# v4 Y
{
2 V+ `5 ]& o0 J+ _
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
7 r$ F- L& E& j1 y% G. N9 o: ~' d9 ? }+ |
if( wndCtrl && wndCtrl->rect )
6 `- d3 G0 b3 @9 I/ j4 h: C
{
6 w5 z" R" k$ x Z0 [$ {
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
, Q% e& j3 J& c
}
7 T) {8 Q+ M( V: i0 I2 F
}
8 t# [2 M1 u* ?6 l. Q2 e, o
}
! ^3 I7 E, N E Z! ^4 S# \9 `" G
# {" O0 d; o! y6 |4 J$ x
BOOL CWndAutoFood:
rocess()
; ]9 b' |+ G8 ]& c: k* H
{
1 }/ \6 R8 @' t6 b
if( bStart )
1 j k! W+ Y1 q9 [+ S
{
. m) _; N% R6 ]; n" I
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) a' Y( y2 F# F1 o, w2 O' p
{
" `- S) B f- z2 _% E
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
( B: j7 j# M/ e$ i$ h
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
1 g" y3 Q) c+ w6 k( z9 G) ^
}else{
& w1 h/ K6 j) m8 m5 {; r( i) S& T
bStart = FALSE;
$ z# @5 S% i+ D; ^( F0 N& a% w
m_pItemElem = NULL;
" k6 ` p# D: P) j
}
( Z6 [' ~ \0 w1 M
}
/ R6 ~; s3 l) l1 n
return TRUE;
' O) p( d5 V: a
}
9 y3 \2 K$ Z0 ?5 z
$ x$ Z( T0 j+ o. b. C4 f; {& ?
登录视频废话:
( c! D; H. Z6 I9 i7 n
尾翼:
' z; A: [; Q7 i3 I
9 i, k, Q3 H2 p( O# P8 Y
代码:
' u- V5 g4 p1 v& a* G- \
: I1 ?* l0 u5 B; h0 Y: N, p
void CWorld::SetLight( BOOL bLight )
3 g* j& R c `% U# G9 ~
durch
3 m' f* y/ l D1 n& Q
Code:
: P& s8 n3 y5 v) j6 S! T
void CWorld::SetLight( BOOL bLight )
4 X; b% g. j* M @
{
7 F% a9 N% {$ R7 ^6 N- N
//ACE("SetLight %d \n", bLight);
& [4 P0 ]% S6 _# t2 h1 n
# q: k( G# I+ p" F; X
#ifndef __WORLDSERVER
7 X, P. v9 S2 A$ [. c
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
2 b, }0 \7 O9 ~6 C5 Q
CLight* pLight = NULL;
: F: z. r- m& u, z4 \
. N& ^. i) _3 g! t4 L
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
: o( {! t0 ]" k# l* e8 r t6 O
6 b/ S' Y5 F c! b* f: A* J' C' d
pLight = GetLight( "direction" );
& v( Q3 {3 p. y+ C- g
( F ]: {2 \. R: R) B: r
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 I- U% e3 W- z$ K/ p
if( g_pPlayer ){
3 w8 b1 T* u: b4 @* [" P1 }
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
+ W! p4 X3 L( R8 V# U/ p
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
9 D4 A* C. {6 O, S V
{
9 A$ H6 S/ b b$ A
if( pLight )
8 s+ r: `) i1 r
{
" c5 N$ S9 z h6 n X) o- \
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
3 R5 i0 ~3 ], y" l
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
* S, \% D8 {$ A3 R
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
3 f+ T( o- r. B
9 \' S2 P3 P7 o' m& K
pLight->Specular.r = 2.0f;
) o3 z& G2 i2 A+ m
pLight->Specular.g = 2.0f;
: w: d( h* P; w: z5 G
pLight->Specular.b = 2.0f;
% h1 D; q0 b8 d& G4 D& p
. ] R0 p) \. D" ^
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
: l& X3 E8 A; K7 C+ Z& o6 `
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
& a8 K4 L& ]# N/ k F
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 s! e2 L" t3 l2 ^4 V2 N! s
# _, T% H/ }. N1 T6 ?. _
HookUpdateLight( pLight );
6 A8 ?/ x; I- u8 ]4 |0 {8 Q( o
' R- G6 f+ Q5 y+ @
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# P, V1 V4 i0 C. Q4 R8 j5 y8 @
& L# b8 D0 n2 \* |% Q- f% n# i
pLight->Diffuse.r *= 1.2f;
- T7 l. N9 l7 _* E$ o3 v
pLight->Diffuse.g *= 1.2f;
) ~& {: N1 k( |. [
pLight->Diffuse.b *= 1.2f;
' w) U$ Y" I# @1 b4 i
) [1 ~! \7 K( \" u+ t
pLight->Ambient.r *= 0.8f;
- e! a/ g8 z* C0 J( F9 F
pLight->Ambient.g *= 0.8f;
$ R& g. h/ q" \5 B- G, p# R3 c" J0 E
pLight->Ambient.b *= 0.8f;
9 g9 c2 @6 z: I& Q0 Q$ l
m8 Z% W$ |4 l5 T9 l; l
memcpy( &m_light, pLight, sizeof( m_light ) );
, V/ l1 W8 i$ Y1 A* O Q
- {+ ]# c2 S- a- S" l
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 [( e% i7 N9 |5 P8 o
D3DXVec3Normalize(&(vecSun),&(vecSun));
6 ? R# Y1 x* U% ~( i6 f7 l
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 ~6 d- {7 w& m+ J$ L
pLight->Appear( m_pd3dDevice, TRUE );
. i `( y+ e& ]% R( a! M9 Y
8 e5 L4 c. o# `0 h) D q0 S# w
DWORD dwR, dwG, dwB;
& X/ \2 q" i' B9 _9 d
dwR = (DWORD)( pLight->Ambient.r * 255 );
v1 e' T! m! t% t( i
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 L! `1 m9 r5 Y0 [! q
dwB = (DWORD)( pLight->Ambient.b * 255 );
- P3 C4 {# I; P9 \6 y/ N
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% u- [& r7 v9 o* q9 n: a
}
" Y- B$ W2 e. N9 D w! Y) |
}
- G$ w G+ ?' v5 J" X: Q
}
, |; ^+ @5 P' y$ ~& _: V
else
- }! m! R+ V; F% n. D! a+ Z. y4 C7 B
#endif
+ y* V- `& b7 f/ U
4 r0 v8 f) M9 `! o3 Q k2 r
if( m_bIsIndoor )
) i# s1 c& r& U/ [! T
{
/ ^9 d/ T' Y5 R+ b
if( pLight )
+ K/ S1 X |* j3 |7 i7 L1 ?$ i
{
- `. t3 [" {: _
// à??μ oˉè*
! r7 Q6 R a' J
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
5 U# j p% E$ z" J5 M2 G+ t% M
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
4 S9 z9 A% I' Q x" r. A9 e" E4 v
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
% @! A. g0 w: K% I+ X& G: l
8 D: g, l" X/ Z$ r/ _
// oˉè* ??à?
4 `$ ^( K+ C0 \6 R) k$ v
pLight->Specular.r = 1.0f;
2 m1 s0 A/ S1 B& X- A
pLight->Specular.g = 1.0f;
( P( F/ {/ T: y4 f
pLight->Specular.b = 1.0f;
# G, s$ ?% T4 `5 F# U
// àü?? oˉè*
' ^0 D, d5 J" \6 I0 }1 A
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
" D% [$ c6 L/ E2 o. N! o
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
6 Y0 m% q" o8 r* m# Y' u) K
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
3 a: n( I, O+ \! O; P; p
* y5 B$ Z t- S9 a
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 w* K& A. J) d3 j
{
& c @- m1 w& K8 O: c
pLight->Diffuse.r *= 0.6f;
: q- D) F, ~2 [. j
pLight->Diffuse.g *= 0.6f;
' P! C" h3 ], L/ E
pLight->Diffuse.b *= 0.6f;
: B* H7 ]* b# I! [, y, b' N0 I
pLight->Ambient.r *= 0.7f;
- z: D9 P2 V& S d: O
pLight->Ambient.g *= 0.7f;
( X. ^ T# j& {2 j$ G5 Q& N4 n
pLight->Ambient.b *= 0.7f;
# q9 c# m# I, @$ u
}
9 k7 w( z3 U' {) x' ^
~2 R) d% o( v* C, J
#if __VER >= 15 // __BS_CHANGING_ENVIR
( K- @0 N& r$ @
if( g_pPlayer )
5 q d& _! h, p9 H# }
HookUpdateLight( pLight );
3 T1 }. n0 y. p
#endif
4 [4 n( S# @( ^
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' ?) H1 |" |8 c, n' _; N+ ]) o+ g1 L
& K6 I L3 e6 N, q
pLight->Diffuse.r += 0.1f;
; ~, Z# ]; t" m |- n
pLight->Diffuse.g += 0.1f;
5 A6 Y% Z) K- r' Z( d
pLight->Diffuse.b += 0.1f;
6 d" p0 `6 K5 k" A9 ?. k$ M
// oˉè* ??à?
5 f" i+ O8 J& k3 Y$ V# u
pLight->Specular.r = 2.0f;
& i$ a- f$ L& \8 b1 Y
pLight->Specular.g = 2.0f;
1 U6 E) p+ v) m+ D
pLight->Specular.b = 2.0f;
) Q; m5 c$ n8 `# u* J: P7 E
// á?oˉ
$ |- U8 e& `& v! v* c6 W1 i. E0 C0 y: n
pLight->Ambient.r *= 0.9f;
. ~1 Z2 v9 o* j8 N1 \% t
pLight->Ambient.g *= 0.9f;
2 _, y5 k: B7 Q w) k
pLight->Ambient.b *= 0.9f;
: {2 R3 u: n) C1 n i9 t
& \8 P$ T' {! B% ~
memcpy( &m_light, pLight, sizeof( m_light ) );
1 j V4 m+ i1 t, @( l& A2 k) {
" O; i! S M" L7 w# h- v/ k5 {
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
" X- D6 T/ j5 N _( I$ L& j
pLight->Appear( m_pd3dDevice, TRUE );
Q8 K2 E$ ^! ~8 K2 n* Q; b1 e% @& c
' O% |5 `9 ]3 F' I- V
DWORD dwR, dwG, dwB;
) [4 P* Z4 K, }
dwR = (DWORD)( pLight->Ambient.r * 255 );
% j9 Q' ~# y$ Y" C2 M' f
dwG = (DWORD)( pLight->Ambient.g * 255 );
" T- o/ m1 Y2 M% B# e
dwB = (DWORD)( pLight->Ambient.b * 255 );
5 ~5 z% F6 F; p* s1 y p
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
+ ?6 S3 Y* L& V! b- q3 Y
}
3 v1 Q% t$ y8 m/ {! `& E: ]
}
9 |" Q. d. m* A
else
) w; Z8 u! ]( L
{
! }; ~* g( }: }4 O z1 X% A
if( pLight )
+ o( X" f0 N1 B1 z( U* B1 W2 _
{
, Z) ^# j0 H* ?/ m, W5 |5 [/ Y. W
( O) W# H5 R X* A
int nHour = 8, nMin = 0;
; v& V; v% `5 J. E
#ifdef __CLIENT
9 r( F! I+ w( ~% M! J) I
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
; O+ q* i# V2 L) M: i7 t. o4 {% _
nHour = g_GameTimer.m_nHour;
D4 j# N4 \5 b, m: p; F
nMin = g_GameTimer.m_nMin ;
1 l6 Z+ z; S% r9 o* m" @, F! Y
#else
1 r: z/ y% m4 y; b0 H$ A& F
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
1 @4 @& L8 z. v
if( m_nLightType == 1 )
. o2 l5 q1 F+ _4 L; a& Z0 t: |
nHour = m_nLightHour;
" Z& l- f# K( V5 Q) w' X. s; m* [
#endif
, h# ~1 j! ^# e
nHour--;
/ c# {' N! h' [+ k& \, D
if( nHour < 0 ) nHour = 0;
7 ~& w. P6 F8 P; d8 |' \1 M: o5 k2 A
if( nHour > 23 ) nHour = 23;
9 J* P. C4 n# V* x5 {4 w3 l& B, T
; j4 @8 {2 w P% S6 @6 ^0 S# D
//if( m_bFixedHour )
6 h8 h* V* N g' }, t
// nHour = m_nFixedHour, nMin = 0;
" R$ o% p1 ~% ~- ]7 W. S
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
& H8 O# p1 M5 G4 z% v; B
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
# U5 z# e" t' o/ Z
0 U* ^) C- a. j( g5 V
//m_lightColor = lightColorPrv;
% i* v$ O. M) @& D
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
% }& b- O5 t, g$ G! p& a6 g$ M4 a
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
9 [& \: U! C% Y, A" @" s
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
# {) R. Q# _; j3 W! {( R k
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
^) q6 ~" k! H$ X
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
; @0 d! T" L) m' x
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
, S Q+ Q; D0 D( A6 Z, x1 X
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
+ @4 C: x+ p. B
5 i' G2 i. {& g. l: S+ |# i4 W
// à??μ oˉè*
* b/ G. Y+ c1 l
pLight->Diffuse.r = lightColorPrv.r1;
3 ~& z c N1 s l$ w; F$ O
pLight->Diffuse.g = lightColorPrv.g1;
* \/ U0 a w N6 H8 w9 u1 i
pLight->Diffuse.b = lightColorPrv.b1;
; a& ^9 }8 p1 T
// oˉè* ??à?
8 J# ~0 O) Z# I4 E( m
pLight->Specular.r = 1.0f;
; n6 q# k" G- @. L$ t
pLight->Specular.g = 1.0f;
' ~5 O, R# g. [7 z! p
pLight->Specular.b = 1.0f;
& `% F0 U5 B6 O- }/ H5 N
// àü?? oˉè*
% e/ ?1 d8 M5 J/ M7 [! o2 x
pLight->Ambient.r = lightColorPrv.r2;
% s2 |3 t8 h! I. n6 x; t
pLight->Ambient.g = lightColorPrv.g2;
# s* i' C' v6 _6 k- ?% Q' D
pLight->Ambient.b = lightColorPrv.b2;
7 K- L- D- u( L. V7 L% W1 d; j
$ c- [8 l. ]) [
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
6 o+ c, d0 C* B! o2 H& J$ _
{
+ \" n7 s& j, l; t! I6 ]
pLight->Diffuse.r *= 0.6f;
6 \0 I$ c0 l4 D8 |1 d$ F: M8 w
pLight->Diffuse.g *= 0.6f;
) H1 o( U( l# H4 g. s. [( R
pLight->Diffuse.b *= 0.6f;
% _3 { z: x7 l5 Q5 w. `
pLight->Ambient.r *= 0.7f;
_3 X5 Y+ I2 Q: n
pLight->Ambient.g *= 0.7f;
& ?; |# J' V& W3 z! n
pLight->Ambient.b *= 0.7f;
: n2 k/ M- l! H) M# _
}
5 z- E& R5 S, Z
3 n' \! ?4 A, K- h, `+ c
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 I. @; T) i5 S; N& q$ Q! d
if( g_pPlayer )
2 @& g4 ~8 O2 s$ y0 F
HookUpdateLight( pLight );
7 p) B) `5 u% e( R- i
#endif
; y; R# ]+ [3 G7 [$ u s0 \
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# D, L: p- e7 O5 v
: N0 c# q& x3 _6 ?) J
#ifdef __YENV
1 p3 @& y& J0 \" a9 b' u3 ]
pLight->Diffuse.r *= 1.1f;
2 G6 V* Y+ b3 U% H- u4 }1 w
pLight->Diffuse.g *= 1.1f;
7 C2 v" s. Z: a
pLight->Diffuse.b *= 1.1f;
; d7 I6 h. A5 ^4 ~( S7 N- w
// oˉè* ??à?
. J" r9 R; k, v* a1 _# K
pLight->Specular.r = 2.0f;
% d x0 c' ?. E1 U
pLight->Specular.g = 2.0f;
* g/ Y% E/ {1 `& @- o Y
pLight->Specular.b = 2.0f;
+ a! }. r# f& T) U5 _. Y
// á?oˉ
4 q. x. @, j _4 M# q S' y
pLight->Ambient.r *= 1.0f;
) t. U6 x* P: S6 [ U/ a
pLight->Ambient.g *= 1.0f;
5 T1 I" t7 p+ Z$ R* `- P( A0 D
pLight->Ambient.b *= 1.0f;
4 e' j$ ~1 G5 m6 d$ r; ?
#else //__YENV
F) g/ D: V n: h1 K3 R5 O9 M( d' G
pLight->Diffuse.r *= 1.1f;
2 I, j4 J5 d, i% C& S. o2 j8 E: z
pLight->Diffuse.g *= 1.1f;
1 o% _' @) {7 y, E9 Z) [+ C9 l
pLight->Diffuse.b *= 1.1f;
8 S2 c, u" @( N
// oˉè* ??à?
6 d: a0 _5 k0 H. Z. i/ N& c L/ e
pLight->Specular.r = 2.0f;
* M6 G: ]/ E" @4 S
pLight->Specular.g = 2.0f;
7 N4 a. p8 G4 X* A/ K1 X
pLight->Specular.b = 2.0f;
0 C# I& m6 A% W
// á?oˉ
9 i2 P" M( `1 G' M
pLight->Ambient.r *= 0.9f;
! S( ~: a, R w2 M8 z
pLight->Ambient.g *= 0.9f;
, P! U, L: B* \; f% a
pLight->Ambient.b *= 0.9f;
1 o( N# _3 I/ [* C) o( {
#endif //__YENV
0 {7 v* }6 P6 _9 G% |$ C( Z
9 {* M5 n: H( a' ]6 ?- z5 O
memcpy( &m_light, pLight, sizeof( m_light ) );
4 x6 l8 d( Y" O* |8 k0 A' ^$ m+ A% N
8 {5 m: U! k( M9 _/ Z6 ?
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
) \# e" r3 S, U# x
D3DXMATRIX matTemp;
: M8 `) i$ `8 E; w1 N9 z" e- l
static const float CONS_VAL = 3.1415926f / 180.f;
0 \( X0 s& ~' ]0 s
! ~4 }9 {$ N; E4 o
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
( w. a/ g. U2 D7 r& G
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
6 S% T) d3 C7 u* S& R7 |
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
- r% X6 }0 k" H- B
pLight->Appear( m_pd3dDevice, TRUE );
1 @1 I& H$ k% H; V1 B# l) }3 E
: z: F+ M* z$ ?4 \
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
8 l9 v# O* J3 [2 C
// D3DXVec3Normalize(&(vecSun),&(vecSun));
. _/ P9 N- p% J" `" g' J7 i$ \
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
8 n. G" x; N0 X2 D" M3 J
+ h$ Z- n( Q% q) P% a9 C. o' B. U
DWORD dwR, dwG, dwB;
% z) @6 G' w; i* u0 H
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 O9 s" j& [( y
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 p! J, M6 l: p2 r2 J
dwB = (DWORD)( pLight->Ambient.b * 255 );
& s2 E O, s6 T9 {
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" d9 n# n6 `' I8 a4 n( I+ I
}
$ W0 J, C, D/ k& r" M4 {4 e
}
- h1 F- Z2 L/ X" O3 I5 c, m
% P L' e6 j/ _% {4 W z' s! c
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
7 t, L `# O6 C
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) );
: Y) g: Q( l( R1 Z% g
::SetLight( bLight );
]+ _! G9 \3 D* C
6 V7 ?2 H% Q# B: X- K9 `7 k
// ±ao? ?D?í???ó á¤à?
~, A& p3 v) w* L
m_pd3dDevice->SetMaterial( &m_baseMaterial );
, Z2 j( g3 ], }% p( I% r. k6 ]
7 _, C/ |) i) K: Y } f8 }
#endif // not WORLDSERVER
- H/ y/ f2 p5 S% E- x
}
~( U) ~4 X, c* ]( j5 B( I2 ^ R
并更换
, B9 T" @9 F# T6 o
Code:
6 R6 `6 H/ k- }+ l
__FLYFF_INITPAGE_EXT
2 b: k# {! n% @- R: W1 F* Z5 Q
定义
& M! R: g9 ` z3 z- D" p p
9 r- e0 K7 ~# a: s
* _, E' U# d0 _/ b; P: d) [$ b
& f+ Q6 v- g2 T, e1 w
7 k: c" N* h6 E5 U; E
现在终于删除我的狗屁加速...
, Z) P% [7 q( r0 r
' k/ e2 |# V2 U
. I4 H7 m3 w' W4 {4 l' e: _$ ?/ v
& S+ n& ^5 H# E% Y% {& v
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2