飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
7 U1 W; N/ `( H7 z% k5 o5 t$ i$ v
尾翼:
) G4 ~0 |/ k4 h! h/ z% F6 u+ ?
7 K# u) ]8 `7 e
代码:
8 ]5 V: k T. K/ O) p
CWndAutoFood::CWndAutoFood()
% S& D" B t+ W7 g$ H o
{
4 t1 K1 W9 F' ^
m_pItemElem = NULL;
0 M- R, ^: O7 [+ [! [
m_pTexture = NULL;
( B( K0 ~6 D' n8 p7 v9 w
bStart = FALSE;
5 E' Q% Z! V: ^0 }! \
}
$ u/ Y' r ^( C i+ S& D w, ]
% `6 p$ b/ m6 X, E& i2 M3 e; n
CWndAutoFood::~CWndAutoFood()
# `) K8 b8 X ]- _1 `/ e
{
& g! [+ p+ O4 ]" @2 x
AfxMessageBox( "AutoFood ist gestorben
" );
% |- P4 `$ S5 |) t
}
5 {4 o1 G4 E1 b( A& V
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
7 q+ n8 K, [: p& r4 U4 l
{
8 v7 \$ k2 w1 Z; y9 ]/ J2 ` w
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
; R% T9 r6 J) |, b
}
* I V L! N5 a7 o$ F q% W% v* _
+ F7 x& `! E& B
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
8 f _1 w9 r7 K) ? f6 c( L
{
! \9 m9 [5 }+ `1 D1 {
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' {# O; D" I- s, Y: U& f. V
CRect rect = pWndCtrl->rect;
! T0 Z# [8 `8 O/ M r) q5 Z/ F
if( rect && rect.PtInRect( point ) )
, |. }- C. s- R) l ~
{
7 }3 X1 {* s% Y
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
, S$ v* Z& X9 Q0 L; r
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
m: l8 `- {5 _8 ~8 d# _' b
{
/ o9 o1 S" u( n4 z6 L
if( m_pItemElem )
9 u) _% ~% G4 G/ Q
{
' |! n9 B- u# W8 K4 {' d
m_pItemElem = NULL;
( B) |# c: \ X& R, _
}
/ ?( I6 q6 [- n2 q. X9 x
m_pItemElem = pItemElem;
, C+ Q4 W' Y4 }8 U7 W. M, t" u$ x
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
6 N, s' z( j$ w( I
}else{
! f7 [0 G6 f3 t$ d( H
SetForbid( TRUE );
- v& S$ q8 y$ h* w4 l6 a
}
) G, u0 y; o7 g7 ?
}else{
8 C) ]! _ a5 t1 _
SetForbid( TRUE );
; q3 a8 J! @2 a! e3 K6 U
}
/ G a% A' d2 L' Y* @8 B, [
return TRUE;
+ ^6 Q$ M% [- @' r) y
}
" W* x x( K6 K
4 ]6 r- E6 ^0 @& g! V
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
/ _# ~- D; |% s1 o- ?& k) e z
{
. K0 i. N# w# t, e
switch( nID )
" O8 k* X" \, r" K5 O
{
7 o$ j( w/ y: d3 q8 s
case WIDC_BUTTON3:
7 y& n4 |1 w8 K, S' O: f9 Z
{
+ J" q5 Y1 ` z7 I
bStart = TRUE;
! Q; _* }0 f0 ^, w
break;
9 Q% N& _: ~/ S, k1 m1 [, ]9 }$ P
}
( V: U3 v/ r; A
case WIDC_BUTTON4:
) s& C; m' `! k8 Q, K" Y
{
" G* s' Q& M+ ~) z- y9 I& b# y
bStart = FALSE;
" {; _% l, Z0 c% I x! m! X
break;
7 o9 h7 P# ]# A
}
: |0 K$ g* m E$ N& X/ U4 L" R% ^
}
8 ?& S* z$ l% M; P# C- x0 h
return CWndNeuz::OnChildNotify( message, nID, pLResult );
, I. J, A' g) y. \
}
4 Q* k! ^8 d' I. N' {- P
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
+ M0 W! L H9 c& h1 ]$ j+ e' q
{
! f( Q) X/ ?' ^+ ?5 c
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
, [! ~; X2 e1 D! K
if( bStart || !m_pItemElem )
# h @6 _/ O( a
{
7 k/ Z1 H6 N# ~9 @) i& T" {: q
pBtn->EnableWindow( FALSE );
2 p3 h4 A- t7 j. m5 {! _! u
}else
, {1 I$ J7 p3 y# x7 Z& `( P+ ^
pBtn->EnableWindow( TRUE );
1 L: A# X8 P* X& I" e
if( m_pTexture )
; _4 {7 W, R' E$ ]3 r
{
/ X" W+ _& e* _# I6 w/ A* ]% w2 w
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" O j+ G! r7 U8 B- `+ G: `
if( wndCtrl && wndCtrl->rect )
" B* V( H" i! d& @$ z
{
1 {3 V! O, L; s! T7 \) i
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
6 |& { b* L! r8 g% w3 o
}
2 P1 }- f* r- Q9 N/ i
}
8 K7 j: h$ T, e: H; N8 P3 M
}
6 d- v( S) L5 N2 t4 ]. j" e7 w, n& f
2 C2 u' z3 v! W2 K9 K+ K' R2 Y
BOOL CWndAutoFood:
rocess()
2 u% N% T1 v2 O/ U, @* O3 Y
{
: ]9 ^) C1 m- X1 j& l
if( bStart )
, q z9 W% D; ?3 I9 P
{
* o7 t7 V" n: v9 H1 s. `
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
5 U: k& i J- i2 B4 @/ F4 {
{
& q/ D, F( ~6 d8 V, r; 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() )
& F3 U4 K/ h% U2 B: ?, C1 E
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
5 N( c* s6 Q2 ]0 ?! o
}else{
" b8 e$ b+ x# t7 S/ ?' ^" l
bStart = FALSE;
$ ]5 y, [, V) M+ @3 d' ]3 i
m_pItemElem = NULL;
' b! e2 K% Y# u& T
}
$ N0 C# w: R7 b
}
^7 T2 D! N. k8 H0 ?8 c* c
return TRUE;
+ t: [5 R8 ?7 h0 W# k
}
1 j. F5 Q2 ]) I
2 E7 g2 |. s1 l6 S' x! |1 A
登录视频废话:
: k, |- q. T8 j+ z$ L; u& N1 \2 H
尾翼:
" c: T" x. }6 N
1 Q/ P4 {& [& U- V
代码:
5 r9 u% v, B" |% S% u, V
* j! N/ W- u: Y' ]: J
void CWorld::SetLight( BOOL bLight )
& E; U# W2 S# Q$ c8 ]0 z
durch
1 Y' i+ m; o$ ^4 N r
Code:
7 L3 X% K1 ^" P# h
void CWorld::SetLight( BOOL bLight )
6 e. m m" d `6 f& t
{
0 m# p5 F& Q. l4 W. p C
//ACE("SetLight %d \n", bLight);
, E9 n1 \4 W% _
+ V7 M: x ?/ C7 @2 I' m; Y5 r
#ifndef __WORLDSERVER
' R! s% }3 O7 U) n. k/ T1 }6 |
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
! \) E8 ^" E4 t* u3 ]$ \) X6 O
CLight* pLight = NULL;
8 T/ c6 m1 ^: D* k6 n0 ]
5 Q1 i7 ?0 c' x" E, X) S
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
' ~$ w% t8 T. K& V* ^
; ?7 H E) i# S) L
pLight = GetLight( "direction" );
5 Q. h7 v/ j# ^/ U4 {' U
- L; h! p" T: W6 a
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 N& f! P7 B; |, p
if( g_pPlayer ){
( P) S+ L9 |, _' F V4 L2 n8 w N
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
/ C: e6 E W" Z+ ]
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
: i" j7 w4 h# h8 c. J
{
. @9 l2 G. i& V" \- \$ T
if( pLight )
1 B' v2 F5 s3 i# k& j3 _
{
0 m/ V0 y6 L! t* \ K: p
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
" D1 _. X* G. w" r
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
, c" d) R0 s4 N7 j
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
! ?1 S# @7 c" ]
% L! Z0 K- c3 l. c% |
pLight->Specular.r = 2.0f;
! O z* C8 v x8 R- }; K+ p& D
pLight->Specular.g = 2.0f;
6 l4 V- |* @, M% A6 I/ r0 y, X
pLight->Specular.b = 2.0f;
5 h/ j' e# T+ L! P! T
E5 c5 D9 w' b1 H; L% j {6 k9 r
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
, o+ o5 S/ n+ H- F7 A" Z
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
- ]% W" Y8 v" J, J* i
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
. Z$ l( v% j) d7 P7 f( G
2 {% M0 J0 q7 k5 `! G" q8 q
HookUpdateLight( pLight );
" d& f4 N" Z; b2 D8 n% D1 ~
( @3 j5 v) j9 I9 j& q6 P4 v
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* G! W: L& H: ~5 L/ K
6 `3 R D# f6 W# t. q4 B
pLight->Diffuse.r *= 1.2f;
! @# E8 c5 k6 L" t! ]
pLight->Diffuse.g *= 1.2f;
. ^2 M O5 c, Y, ?! |/ ]% h
pLight->Diffuse.b *= 1.2f;
4 p1 a Y% X2 R
% y! F4 c& ]7 B6 x3 i: K, U
pLight->Ambient.r *= 0.8f;
' H; [) S& g! C* P
pLight->Ambient.g *= 0.8f;
1 M) H k' @$ q: ~4 d; W; {& ?1 }; ~
pLight->Ambient.b *= 0.8f;
1 e# n3 J3 q R, X O& ~
) o& a; f5 {/ q& s3 B" n6 {
memcpy( &m_light, pLight, sizeof( m_light ) );
9 @5 D: f8 I. |/ t
" w( ~5 J( }, H3 g
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; Z8 M5 P- P/ r5 S" Q
D3DXVec3Normalize(&(vecSun),&(vecSun));
0 e8 b* R2 m, r0 n" | d2 r; J4 Y1 \
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
7 P2 ~. @4 ]1 Y, L! x* v3 @2 B
pLight->Appear( m_pd3dDevice, TRUE );
) w4 x& O% r5 p- E% |
. c R8 o l0 Y
DWORD dwR, dwG, dwB;
3 k- u/ N* x: ^3 ]
dwR = (DWORD)( pLight->Ambient.r * 255 );
: E9 t, B! O5 [* k b
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 O i3 D% s1 {) ]/ Q9 H6 v
dwB = (DWORD)( pLight->Ambient.b * 255 );
& @% D# z9 Z3 o% I6 M; \* K0 ~0 k
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
+ [7 p6 E6 [: a0 T1 E! Y. T9 K
}
, _0 H" c5 G" G+ C
}
" W w! g- A, n/ a$ ?$ W* @
}
4 i1 c8 q0 g; V8 F8 |4 Z
else
* s) l; z0 V& W0 |1 y) R
#endif
( ]: \$ ], o7 @5 L
" E2 H4 Q( ^, ~) H4 ]
if( m_bIsIndoor )
2 [. r' n& h% |( n) N
{
$ V* [6 o; `/ z0 h: ^
if( pLight )
+ S+ z9 g# N/ o7 F1 r) \
{
" z* a: }- o6 ~. C
// à??μ oˉè*
3 z* u+ h1 `( ~+ F6 @& g1 G
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
) @$ Z: d B1 t3 `' Y* K
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
5 G) ~. _2 u/ B3 O
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
" p/ h4 h* `/ H3 z2 j g
# C3 j+ f* q( G
// oˉè* ??à?
, i" g: |3 r% S H# p) c
pLight->Specular.r = 1.0f;
" O! b9 o4 g8 F
pLight->Specular.g = 1.0f;
# P8 v5 Q# R, i& J6 m
pLight->Specular.b = 1.0f;
# e3 O# O4 H: S9 b' o6 t
// àü?? oˉè*
/ ?9 p+ \) O% H, _' s
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
1 }7 L2 r9 T' g% V
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
3 @* I0 [% D. C. q# W/ E! |; D
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
; {6 E2 B/ c% ]/ Q
E- l6 z% t1 |. e
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 L2 R8 ^2 v! |! a- P
{
( Z/ c& H& t8 ^- \0 {# s; I* y
pLight->Diffuse.r *= 0.6f;
1 C1 d; t1 Z4 P9 l1 ~
pLight->Diffuse.g *= 0.6f;
3 g7 ~1 b. c( }& s9 ^/ `
pLight->Diffuse.b *= 0.6f;
& n6 i5 ~1 ]' T( q9 @& J( c& p0 i, ]
pLight->Ambient.r *= 0.7f;
6 T d% {# J+ p2 L, _
pLight->Ambient.g *= 0.7f;
" J7 S( l) N8 ^* a0 z
pLight->Ambient.b *= 0.7f;
, f8 p7 w3 `7 P8 ]( ]$ o
}
- L% v8 F* B6 {% H# w# Q$ o' i
! r* s+ v- [6 G2 B$ F& e9 v
#if __VER >= 15 // __BS_CHANGING_ENVIR
: \$ S) ]( j9 b$ }
if( g_pPlayer )
2 T$ O' R- c4 h/ N
HookUpdateLight( pLight );
* q8 K: D! x$ ~" g& p1 e
#endif
( | c( P2 D3 V1 a, k$ n" u3 d
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 R5 l% m! G# c8 e. Q' X
* d5 N3 x% Z* v* e- z6 Q- H* A
pLight->Diffuse.r += 0.1f;
) I* W( a6 [+ K' A# k' G* [* d0 C
pLight->Diffuse.g += 0.1f;
$ a( X' q g: V, ^4 M
pLight->Diffuse.b += 0.1f;
% |- |, T& m. M; J
// oˉè* ??à?
! Q* F/ C) S- Q7 @& S9 j' ]9 \
pLight->Specular.r = 2.0f;
* d7 Z2 D! F. a; u7 n' t0 P
pLight->Specular.g = 2.0f;
$ F- G, Q( ]: p8 \: M% R/ f% O
pLight->Specular.b = 2.0f;
0 y7 b, v+ X C& \7 {
// á?oˉ
- \; C3 K+ m3 Z' B4 t1 ~) E& @) R
pLight->Ambient.r *= 0.9f;
[! ]% v, x( i$ B, \' o) H
pLight->Ambient.g *= 0.9f;
0 v. x; K: Y6 V- A9 L# D: ?6 h
pLight->Ambient.b *= 0.9f;
' ^& q; r; D- T S! C* X
& U& ~2 E5 u7 M
memcpy( &m_light, pLight, sizeof( m_light ) );
9 Q9 p8 ^+ W7 L. X3 P3 }& W |: K+ b
* \( D& k) ~% n
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
8 g6 H0 i: p' ?
pLight->Appear( m_pd3dDevice, TRUE );
8 e& ^6 L/ j% R
. | O- b1 n7 X7 }4 F/ D
DWORD dwR, dwG, dwB;
' d/ r8 c% Q; u6 j6 ?* P
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 B4 J! [( n- }9 I l( A7 r
dwG = (DWORD)( pLight->Ambient.g * 255 );
% L8 e0 U# a9 K+ u7 J
dwB = (DWORD)( pLight->Ambient.b * 255 );
2 U% ^' ~2 h9 [
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 t$ L/ o9 N! Q; w
}
9 y. y: I0 {- L8 |
}
4 D( ]8 r% @ b
else
" x j" ~* z& s3 B" L: u
{
7 k) O7 N5 Q) }3 N
if( pLight )
3 m j) l+ x! V% s% p
{
- K" W Y- u9 {4 M5 e2 g
, V+ D' {/ H, A" |: p
int nHour = 8, nMin = 0;
& g. ^7 W1 _4 Y. @' f* Z) ~! {9 c
#ifdef __CLIENT
! c9 }3 ~6 k; y9 _6 Y
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
5 b, t1 n" \' K8 a. W8 W! c
nHour = g_GameTimer.m_nHour;
% q! B$ S4 w r7 W, Y0 B! ~
nMin = g_GameTimer.m_nMin ;
! Y* q: b/ R( e3 @3 W0 ^
#else
/ u) t6 L' Y, s4 b6 L' G3 V
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
& _9 k, s$ _ Z& N' i8 u% [
if( m_nLightType == 1 )
" o7 E/ z- l! Q: W, c9 I) v i8 B
nHour = m_nLightHour;
, F* s5 U: K5 ^ c$ l; i4 Q
#endif
+ b4 l7 O$ h, I. D0 L
nHour--;
1 o! l7 p/ N$ `* R
if( nHour < 0 ) nHour = 0;
+ o. X7 @+ f+ o( g
if( nHour > 23 ) nHour = 23;
" C9 \' \9 \2 i# x2 m
/ c# }( T) X* N
//if( m_bFixedHour )
5 _2 i9 s k5 v! i5 S- m5 s
// nHour = m_nFixedHour, nMin = 0;
/ o% J6 p- N* S0 h
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
" i" L) |" } E7 O$ B; s" z9 w
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
' E4 Y* ?% N3 Z+ g
& o4 i) l1 k5 [/ J
//m_lightColor = lightColorPrv;
C# h0 F0 Q7 G" U, J
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
- j) O3 [! G7 O* o; V" o+ {
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
: f+ A2 I J6 q5 W
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
6 Y7 {% d) p0 z8 d- U! c
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
/ Q5 P% @+ E ]3 c6 N& ]) F
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
8 B) C; T* z: \8 V* _
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
( s! s1 k6 ?, Y2 l4 u. N- O
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
% V, g+ C/ j0 r+ K3 z
7 |; h* p! e2 D" n* k
// à??μ oˉè*
$ M7 W) p4 z( ?/ p% H6 R0 T
pLight->Diffuse.r = lightColorPrv.r1;
2 R1 B Y% N' ~- T4 v4 d4 L- p" y6 C: y
pLight->Diffuse.g = lightColorPrv.g1;
+ x- a( R$ Z7 p; M
pLight->Diffuse.b = lightColorPrv.b1;
* \2 B- |# p0 r0 m o: K
// oˉè* ??à?
' i. n% F5 j w- v9 L, p; n3 W
pLight->Specular.r = 1.0f;
! k. I9 \7 q) E; D/ K
pLight->Specular.g = 1.0f;
3 k5 o5 N2 M+ ?7 D' v) } d2 U5 T4 u
pLight->Specular.b = 1.0f;
1 i. Y# ~( p T" e K2 d9 ]) `2 i
// àü?? oˉè*
: E+ W9 j8 z! t) L V5 K
pLight->Ambient.r = lightColorPrv.r2;
3 w& m& L) Y6 x3 g1 D3 {; ]! V- a
pLight->Ambient.g = lightColorPrv.g2;
: {: P, X% u" _9 h$ Y5 g o, }. i. V
pLight->Ambient.b = lightColorPrv.b2;
+ x) r( k) b6 e6 \: a
6 d) G2 P/ O$ Q x
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* Y* W6 Y! C9 l: H( N# `: V
{
# b" i. l; @9 M2 r3 [
pLight->Diffuse.r *= 0.6f;
8 U& L& S, z; U# @% p, [
pLight->Diffuse.g *= 0.6f;
( q C' X: L# S' D- u. c. K
pLight->Diffuse.b *= 0.6f;
& k/ W; c% z: `4 S9 V# Q
pLight->Ambient.r *= 0.7f;
1 N5 V3 G0 u9 h6 ~, y
pLight->Ambient.g *= 0.7f;
0 X7 p" d6 ]/ H2 y* C5 V' b( ]
pLight->Ambient.b *= 0.7f;
# A9 L- C6 n: p# n3 b/ j
}
) w- O. ?: n8 z7 S) t r
" q) @( ?& [/ @3 a, U, t
#if __VER >= 15 // __BS_CHANGING_ENVIR
( S& t8 Z' D3 f4 E6 A. M6 \$ P! D
if( g_pPlayer )
8 k2 }% q! s8 f* W
HookUpdateLight( pLight );
6 x* g. B0 i% w; V3 D+ s
#endif
1 g- \: l& S6 @+ J* S
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' u; q* M8 j2 W
3 R+ c$ L6 w6 f; F' ]% ~, G
#ifdef __YENV
4 J; v1 w7 ^5 j3 g( @% V
pLight->Diffuse.r *= 1.1f;
4 R4 [( y: Z7 J) a3 G
pLight->Diffuse.g *= 1.1f;
% M, {8 W, Y: Q- c; Y s
pLight->Diffuse.b *= 1.1f;
8 A* S) L% I3 w
// oˉè* ??à?
0 p5 J1 @5 J3 F7 i* X" d; V r
pLight->Specular.r = 2.0f;
) b1 a* S: l! ^6 u5 l" l) l
pLight->Specular.g = 2.0f;
" \1 J( k- k; S9 g( H- L* Y
pLight->Specular.b = 2.0f;
0 S9 q5 f; t; w, ?8 @8 @
// á?oˉ
* |0 @2 x! L" k( a9 ~) T8 {
pLight->Ambient.r *= 1.0f;
# n3 U5 z6 V( C% c% p' @) b- R
pLight->Ambient.g *= 1.0f;
$ X6 `) f$ a' Z( a+ `7 E
pLight->Ambient.b *= 1.0f;
+ w9 j9 f4 s; A$ `
#else //__YENV
: @( G5 k* O; J
pLight->Diffuse.r *= 1.1f;
) \7 s! }! l$ U0 r) X+ @$ ]* q
pLight->Diffuse.g *= 1.1f;
1 ?3 x7 a$ A, I# N7 T# X* ^/ K
pLight->Diffuse.b *= 1.1f;
. u# w2 z0 w+ a- E
// oˉè* ??à?
+ c Y$ O# c7 B/ M$ T6 h. d. C
pLight->Specular.r = 2.0f;
+ \8 L+ \+ |, {& w
pLight->Specular.g = 2.0f;
7 I! i4 u: h, ^0 t$ E
pLight->Specular.b = 2.0f;
. E- |* B: Q: o* s
// á?oˉ
6 P& ^+ f( m7 l5 `' v! S
pLight->Ambient.r *= 0.9f;
+ J8 ]% Q/ {& m" G+ @
pLight->Ambient.g *= 0.9f;
- e# ~9 p( T/ G9 f$ i: K
pLight->Ambient.b *= 0.9f;
1 V) v1 P7 D( W. p- I
#endif //__YENV
* Y; u3 S2 o/ \" W, ~3 ]
- U8 p1 q/ [) m
memcpy( &m_light, pLight, sizeof( m_light ) );
y5 @2 x+ [. n7 L
; h4 i4 Z/ }$ T
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
0 T1 a' u/ @9 O: I2 z# x
D3DXMATRIX matTemp;
2 F7 i) o, e! j
static const float CONS_VAL = 3.1415926f / 180.f;
; O( z% e# a; v
$ H* G. S: {6 I
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
) b" W0 y: a8 G& e2 i
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
) M5 _5 f; x/ K" }$ G' \8 H
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
: x$ o/ a4 e* U( I" u# B
pLight->Appear( m_pd3dDevice, TRUE );
- h; }1 t4 F- U- C
# A- r# l& c5 l7 ^& m9 j
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; x. h' y2 j0 ^
// D3DXVec3Normalize(&(vecSun),&(vecSun));
$ v" o2 _% C/ v* Y
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 I% t2 u, {4 y2 Q* ]3 x" d
2 o4 X5 G% Z) k2 y0 o" X, h
DWORD dwR, dwG, dwB;
" I# O5 j H) m+ l" ~/ ^; F1 ?3 G5 L
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 m# N h( z, r/ v" [; B+ D
dwG = (DWORD)( pLight->Ambient.g * 255 );
5 }( U7 `0 }9 Q5 m
dwB = (DWORD)( pLight->Ambient.b * 255 );
2 S& n" \" X# `
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
7 j: H# x; f. o- R8 ~
}
: I0 r" X# i0 y# ~6 c
}
: p9 @8 j4 x7 i; j
" r+ h6 V1 K+ [' [
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
- f) ~, X: d/ y' a
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) );
2 z; q) K/ Z* b: t& S, W9 M# F
::SetLight( bLight );
) {: A3 [( {% V, r p
( k0 _* J. w- ]3 p
// ±ao? ?D?í???ó á¤à?
: C% |" F; ^9 J
m_pd3dDevice->SetMaterial( &m_baseMaterial );
& H% |; t# q, x- A; I
" O$ R4 K: t' ~1 j* v6 ^. V. r
#endif // not WORLDSERVER
- Q( ^. K0 [- `) W$ d6 m4 {- Z. k
}
. w+ H$ K" d/ j' y
并更换
- ^7 Y' [5 t1 M8 ], o% P8 b
Code:
/ M, |8 p+ @% n: [. z
__FLYFF_INITPAGE_EXT
! y9 K. p0 s: z: {9 x6 o8 }
定义
( o: M& v5 F9 h) e9 r8 M
' x* J1 T9 |* q# B1 n: N* C) A6 u/ j
- J" D6 Z7 B- M$ ^5 C4 U& |# [, O( ?
" H( ~1 r& N' E1 b& P( r) h
7 m, x1 M- u# P& H+ c
现在终于删除我的狗屁加速...
4 [2 f" ?) J9 U4 b& Q$ Z. K
8 ?: p- q( @6 O3 `
. z I3 B |" K" R" E( w( o
1 l {9 h/ [& W9 K
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2