飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
) h5 b* A1 p) v P. F% f
尾翼:
9 \1 }( c) b! G
1 f3 Q- A3 B: w! F
代码:
6 }8 W Z/ G0 Z' \3 N
CWndAutoFood::CWndAutoFood()
% Z3 U5 V/ C" W. ~/ P0 O& g
{
) H! d8 l2 k6 C" h) D8 f7 K
m_pItemElem = NULL;
# @/ F7 t, N1 ?9 `- X4 k+ X
m_pTexture = NULL;
) c" r5 o* B$ M/ A
bStart = FALSE;
# L' k8 B* y$ m3 W1 ^# `
}
- k3 j K" S' E( w5 v7 r' J
+ m' O& v. k& X9 C2 w
CWndAutoFood::~CWndAutoFood()
6 t& ?! L- k2 I* L2 C! p
{
1 E6 @9 y6 M5 ^: k# k
AfxMessageBox( "AutoFood ist gestorben
" );
_; r! y2 W% b r# n. Q
}
6 K% R9 ~$ Q V
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
f* U+ j/ J1 \# ]" I* X
{
: W- E( V* w# Y- I# Q
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
8 x7 c& _. [. C6 R4 R" c# r+ k2 I
}
7 @" n3 G4 u4 L! a- I& |% U& z& ]
, v; ?; ^/ U6 I! Y% t
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
$ n, {5 I+ X8 J5 m+ {5 I4 u
{
6 A7 r' I0 h; G x7 C
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* j$ s; m6 S$ Z3 ?- O! Y
CRect rect = pWndCtrl->rect;
1 X* N4 F: z8 T f
if( rect && rect.PtInRect( point ) )
8 v- t; t7 `# m# k+ w
{
4 h0 J: q9 `9 k
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
& A3 \ C: Y9 s2 f; ^0 M/ K
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
! F% c3 M* S P( r; @1 E1 R
{
: }7 [5 k* x* ?
if( m_pItemElem )
2 ]) @& b5 q8 ^; o% j2 }/ k
{
. k0 B2 r& g- h" e+ p$ ^! @% Z
m_pItemElem = NULL;
2 F) F9 m1 |' \$ s1 A! W) m3 b- w; q
}
- }1 y1 P$ n8 t2 I
m_pItemElem = pItemElem;
, z j0 m5 ?2 @+ q- @0 l% L$ |
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
5 ]% a; H) T" T& _/ C3 ]. y }
}else{
* c) O; {; J Q3 i0 ~" i3 p
SetForbid( TRUE );
1 b! q5 S* y: p! ]% W
}
8 p2 B1 s5 Y9 J
}else{
+ i5 }4 \' A2 c4 J' Z
SetForbid( TRUE );
- [3 R# N2 v, e, ^
}
& }# w* b5 ^5 Q5 j6 Q
return TRUE;
# F' }1 }& F6 o
}
: }3 K) Y+ M* B; ?9 d" D
* u2 _+ t; W* M
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
$ P6 W! ]) |1 Q7 H6 j
{
4 l. d$ U4 B% v
switch( nID )
" A; i$ S" v0 J3 E5 ]
{
( y4 n' [. ~& j3 D* A& W
case WIDC_BUTTON3:
" ~* ?$ G) Q' @" R! y
{
) i5 N5 Q7 v' i% N1 C% Q7 V
bStart = TRUE;
7 n& J1 h- z0 c/ U
break;
% m" o8 \; k }4 v2 {
}
5 M) P* a4 b; C- }
case WIDC_BUTTON4:
9 j2 t) _" D: |) O' l H3 t
{
# q" W, y; w x6 K" W$ t
bStart = FALSE;
9 k K' m; V' a0 b: y' u2 l2 ^
break;
4 j4 |- H' X o8 l; d
}
2 I# T+ M0 T r- l0 e# }+ _
}
5 }1 J( u( _1 {7 ]2 G, g
return CWndNeuz::OnChildNotify( message, nID, pLResult );
8 _# Y9 U0 n1 \
}
. G. {8 U* c7 v' N/ _3 f# Z- c- Q6 k
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
' F+ h9 K- a. p% X2 B5 T' H
{
9 ]! S; u0 A/ F8 X8 N
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
+ t* ^* W6 z" [1 V
if( bStart || !m_pItemElem )
* a9 Q* k! w# v, i/ s
{
& h' K s) U& I1 b- G, W3 M2 J' k
pBtn->EnableWindow( FALSE );
7 x* B3 C7 Y) i; \3 j; d* \$ _8 P
}else
9 E5 t2 g" C$ e6 h, c) l* E
pBtn->EnableWindow( TRUE );
! s9 G6 Y$ P" M" J0 B
if( m_pTexture )
4 R: [; K: x) C& H# H
{
" @3 e; O7 ?. E5 i( u) u0 E6 x
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
) D# ?/ H$ B0 p4 I" b
if( wndCtrl && wndCtrl->rect )
t3 J# C8 S) w8 J* G
{
0 D; ~& v4 |! i8 `
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
/ k7 b [- L% t( Y3 w
}
/ |3 D% N6 t0 _, V7 B: P! D
}
1 |/ D, m% G9 u; g
}
+ L5 G5 l" ]6 R+ w
0 z: q/ u- V5 S+ @- R6 J5 R
BOOL CWndAutoFood:
rocess()
: z# h2 ]& K) G, }% M4 d, N
{
! j& O% m1 P# r0 U& j7 H. W
if( bStart )
1 C# ^ m) R; U1 ^( a! v
{
# ?* C- L- v6 Z# i6 N, W
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
# O. j U/ g. r% S" I* U7 L6 d
{
, w6 {" { @- s3 F: N$ u+ }" u E. b
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
& n8 g1 X# D# x8 Y7 @
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
# d$ v9 B l% n' Y& r$ O0 K1 s3 X
}else{
/ f1 D' i0 L4 p3 @- J
bStart = FALSE;
" N* r c# l' z% ^1 a
m_pItemElem = NULL;
# c& Y6 n L5 |% |0 {
}
. z* Y6 h: a/ V8 y8 S( X3 J0 g5 f: Y
}
" E# U. g0 h, U% k9 e
return TRUE;
/ R: J! q% b, Q _* n: K" G7 w% {8 n
}
3 g( A7 x" ?8 V) Y
9 O1 | X! V9 u2 Q/ v/ J) n
登录视频废话:
# Q, W. `( z7 L
尾翼:
# Z7 O! K/ R4 u" E
& X( E b7 v# `0 r% w. Q, A& ]
代码:
5 b4 D g9 E2 H# [+ ]% B# G9 b
# w. a. y7 a, P) {, O# O
void CWorld::SetLight( BOOL bLight )
K* m+ @8 W. s! c
durch
( _; H$ Z0 I$ u5 p; ?1 L( ^3 |% p% O. ?
Code:
$ T! g4 _& S3 p
void CWorld::SetLight( BOOL bLight )
& k& \7 h- G5 h+ ?5 v: L& i
{
7 B1 e' @, ~9 F
//ACE("SetLight %d \n", bLight);
. j% R; g5 v: D. q; }1 w6 W
# t3 [0 x4 {1 p( d) W4 E' e. ?
#ifndef __WORLDSERVER
1 G o/ T( f6 O& [' X6 Z8 p
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
. x1 k. x9 w" m/ ~; \5 e. x; O
CLight* pLight = NULL;
9 C% M) @; J0 z, K) ^3 y e
|- h9 ~+ F, j, p% e, u
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
3 Z: _0 a9 ?! r& l
" F/ l* Q- E% Q, l9 e) G) C6 Y
pLight = GetLight( "direction" );
7 ?! c5 f' p, E8 m8 K0 e
! ~% V$ k; L4 |' u! c
#if __VER >= 15 // __BS_CHANGING_ENVIR
# G4 {" j% H3 a H+ w6 f2 o3 U
if( g_pPlayer ){
, A' Q/ ]; O( {0 X
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
% J/ `8 R9 V! Q0 \ W
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
! V3 m$ E$ [! {. l; L
{
: m9 F& O- H% ^1 X
if( pLight )
, \- _) x8 e! m- `0 _$ N: x! o6 ]
{
; \1 u _- { Y
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
7 Z3 k/ j7 }( K( h
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
. D3 S: X7 Q" K% X* o3 M4 S
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
) C7 m- t T$ B
$ S7 y2 ?6 f3 @; U+ D+ y/ U
pLight->Specular.r = 2.0f;
3 Z& K# |( U+ u) K8 W
pLight->Specular.g = 2.0f;
% B7 u( B$ h$ e% e& g9 |! Z* ^: f
pLight->Specular.b = 2.0f;
" S& d, O+ I8 I& a
/ M9 u0 x# U- Q
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
, {0 O$ w* `) ~8 D
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
/ @4 D# m8 s" Z, d7 h# f1 S
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
8 P$ r6 W5 O/ ]1 L
, P$ K% Y9 z" V+ L3 {
HookUpdateLight( pLight );
. O1 C0 O$ v+ k
% U7 u( k' c0 k
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& L$ D. B& y p; h2 \1 w* i0 ~. P
) i3 ]2 g4 ^2 T% ?
pLight->Diffuse.r *= 1.2f;
/ g( w% r2 a7 ? _1 {7 b# T' Z: x" I, r! [
pLight->Diffuse.g *= 1.2f;
% U0 c2 D( N8 R# I* k0 V# {
pLight->Diffuse.b *= 1.2f;
1 g+ E z; g& o5 _( o& x2 j5 S6 L
6 ?9 X- A. y6 T6 P2 X+ V
pLight->Ambient.r *= 0.8f;
' @7 [' K* F( ]: { k- a
pLight->Ambient.g *= 0.8f;
2 V' r( i7 _. S* m- J( O9 V# d
pLight->Ambient.b *= 0.8f;
1 P( P- `6 {1 v1 b! S
* e2 _4 V8 A, g: q& r5 Y ~
memcpy( &m_light, pLight, sizeof( m_light ) );
' C0 k5 o. a6 p/ ]
0 w; I( j2 {9 {1 w5 J. _. \
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
! }+ u% D, _$ Y Z( u
D3DXVec3Normalize(&(vecSun),&(vecSun));
6 f' r! d# z& d6 @
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 n8 l# m9 d: Y: A/ C0 h. g3 f
pLight->Appear( m_pd3dDevice, TRUE );
& t# d. U+ c2 b" P1 a
( B9 T, j8 R2 `! \0 Y5 p
DWORD dwR, dwG, dwB;
( z0 h5 ]4 t! a! J. i7 X( p
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 }. k: X: Z# n- m
dwG = (DWORD)( pLight->Ambient.g * 255 );
) l8 _* K) M8 P' L) h* h3 ^
dwB = (DWORD)( pLight->Ambient.b * 255 );
# U2 ~8 ?* \: |, |2 k2 G0 }; B
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ U, M% b @5 j5 `$ Y8 t; A- h
}
% w$ f7 x$ Z/ S9 o/ @
}
$ j" I# o9 S0 w K: W9 w
}
/ W4 t2 |8 P. S. M, m8 `0 s
else
5 ^: }0 i6 v6 T( A
#endif
" A( m( V, Q2 p6 d% @4 Z! u8 ^; G
( p4 l3 {; t$ Z" [& L' I" ~; ~6 C
if( m_bIsIndoor )
- U5 P# @: ` V2 K& Q3 ?9 V& a5 e
{
1 [) N9 Z4 Q* F$ Z, |3 e
if( pLight )
5 A5 C8 o- d% y6 [8 }
{
4 J+ d, U2 j7 Y+ m
// à??μ oˉè*
4 O1 `. A1 J! g( W' m8 b8 e$ I4 g8 j% s
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
; _ O2 i4 H4 E1 [3 ` K2 J4 ^8 Z# {
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
; a2 _. Q& t& I. f4 j
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
8 d m7 B1 A1 R. I5 A
* r/ m- ~ y, X6 T
// oˉè* ??à?
' w9 F w3 g0 J5 R7 H) U
pLight->Specular.r = 1.0f;
6 n- c# n# X3 t& u$ K% v' l v& T
pLight->Specular.g = 1.0f;
) G' X) d% d# W. [
pLight->Specular.b = 1.0f;
' y5 X0 L( k7 W! G0 \# P
// àü?? oˉè*
; j- O! U0 q6 R2 x! m0 N: O
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
7 T; J' R0 |6 Q
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
4 R. h: Y" n. J! X" w9 Q
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
" Y9 b. l7 T6 g, n! ~# P. D1 ^
. ?" c2 p, y! T1 T" x
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
$ F5 T# k7 C: t5 F& ?5 v
{
& v9 d& ]# o" J* ?1 l
pLight->Diffuse.r *= 0.6f;
+ \* m) E% a! M$ N1 h
pLight->Diffuse.g *= 0.6f;
5 B/ K% N( v4 @0 s1 d
pLight->Diffuse.b *= 0.6f;
4 [, L* ?& W9 h* x0 e
pLight->Ambient.r *= 0.7f;
$ y- I0 J: i0 ]1 f4 P4 o
pLight->Ambient.g *= 0.7f;
, ]: P0 c/ X+ n. r9 O4 ?8 }4 q
pLight->Ambient.b *= 0.7f;
Z# E# i, Y- E% T G& e, F
}
" j! q4 d( h7 \) o8 }
/ i# D2 E$ ~+ _* C6 x& l
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 @' b. ]5 B E7 @8 l; p" s
if( g_pPlayer )
- F: g- B' c% E% g5 D( t1 W
HookUpdateLight( pLight );
# a2 J7 [9 w4 A. I
#endif
% F* ~$ k4 U @9 @ m
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 H: R# Z% G( G
; S- \" C% ^. |7 C) w" T$ }
pLight->Diffuse.r += 0.1f;
2 p8 ^" g* z" b! v# E# P" ^ K
pLight->Diffuse.g += 0.1f;
1 }4 H6 ^' K$ J0 j( T/ b
pLight->Diffuse.b += 0.1f;
1 T" Y- ]6 x1 z8 a+ r/ v
// oˉè* ??à?
' W) H, Y" }7 y3 h7 }$ i% n
pLight->Specular.r = 2.0f;
8 x, G$ x, i0 k, q! x) w- [
pLight->Specular.g = 2.0f;
* o( j( q/ |5 v1 }" {0 x: A
pLight->Specular.b = 2.0f;
; u% C! R- t7 j3 p" \$ a
// á?oˉ
) o6 A5 I2 d) \5 n8 x% V! ?" J2 ~
pLight->Ambient.r *= 0.9f;
1 k3 |# s& J! D Z6 Q9 [
pLight->Ambient.g *= 0.9f;
( {* M/ e3 N/ t
pLight->Ambient.b *= 0.9f;
( ?, D" ]5 s9 Z/ f3 P# l9 c
$ Z5 w2 [' I( A$ X
memcpy( &m_light, pLight, sizeof( m_light ) );
$ Z$ q5 p3 A* ]. W' b
+ ]+ H3 V# U1 I) ?+ I+ |+ f
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
- O) g7 L6 ]2 U, C/ S8 C
pLight->Appear( m_pd3dDevice, TRUE );
) A. C) n3 [( B" _- s1 `
: b7 d5 ~% |1 g9 L; y
DWORD dwR, dwG, dwB;
3 W% i" a4 X7 c0 G( e9 h% w
dwR = (DWORD)( pLight->Ambient.r * 255 );
. w" y* s* o7 Y8 t! a; R# m
dwG = (DWORD)( pLight->Ambient.g * 255 );
" |# ] g. z7 d8 p
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 v Y- n1 j0 ~0 u/ D1 L/ Q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 r7 J U( H* W0 Y# i6 t
}
6 R& f( _, t% s- l& O3 d7 W
}
1 d) K0 u9 q; y+ V% f8 t( c, [3 ]
else
3 T6 r& a1 x( x3 U4 b
{
" s) p0 K3 n; `1 w/ Q9 F8 o
if( pLight )
% i+ W# E9 b& s( W9 N/ r
{
5 b, N9 h0 V& A0 ~3 s! y3 T9 M2 J
' n8 \! O+ r: m0 D$ x' l& R" K
int nHour = 8, nMin = 0;
! Q6 J" k/ K" M& q( |# p
#ifdef __CLIENT
! }- M( q5 j2 d! C
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
) v: d" ~) S+ t/ x
nHour = g_GameTimer.m_nHour;
9 V" F& F ]+ [$ ^0 ]# k
nMin = g_GameTimer.m_nMin ;
: d: [9 {9 g6 C/ o
#else
% E: M4 X. ~% y
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
# C' Y% d$ ~ w
if( m_nLightType == 1 )
9 [* _" M8 X9 \1 @! J- q+ n" y
nHour = m_nLightHour;
! R: f6 T \1 ^! Z
#endif
4 N! \# F! D0 V9 W% H% Y9 H) A
nHour--;
; \8 N. p" z3 ^2 d
if( nHour < 0 ) nHour = 0;
: d4 ?1 O4 F0 D
if( nHour > 23 ) nHour = 23;
( A& x4 J, B( O& v/ d2 {) L
# r! `+ H$ X4 g* ^ Y% c
//if( m_bFixedHour )
; P. p+ t; F3 P3 F
// nHour = m_nFixedHour, nMin = 0;
" W6 e. y* x1 C
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
% v2 p; ?; w( w/ f: t7 X- i
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
3 E; H) a a9 |3 e2 \
6 |) W- A$ B1 I1 s, b6 Y: {1 T
//m_lightColor = lightColorPrv;
+ M% Z6 G6 r8 }' A1 p' {2 I
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
! S+ e1 @8 J M u7 @" n, y
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
7 `: w0 h5 s. w5 _
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
* B5 C: J, j3 a3 U/ _
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
" R1 M/ s' H5 E s$ E
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
% Z( p# [* i/ ]
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
; ]) E( g( J2 r( z* P9 u* p" D
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
6 o6 l3 _, u3 r4 ]& f. }* G
% p% C4 N. r, z. `8 l
// à??μ oˉè*
& N2 s$ E9 ^, {6 x% B
pLight->Diffuse.r = lightColorPrv.r1;
* X3 x8 J$ b9 g) E
pLight->Diffuse.g = lightColorPrv.g1;
- [6 X$ S! b: b, S' T
pLight->Diffuse.b = lightColorPrv.b1;
4 J" I0 E: x2 i
// oˉè* ??à?
1 V- r1 Y8 k1 q( R1 X; l
pLight->Specular.r = 1.0f;
6 {! J" k) ?' M- A0 O0 p
pLight->Specular.g = 1.0f;
6 `$ I% {* h1 ~2 i: M& U0 ?
pLight->Specular.b = 1.0f;
, L( k. f2 Q) b4 L7 E# c1 H
// àü?? oˉè*
; \% b0 A3 D! { ~+ P: F1 A
pLight->Ambient.r = lightColorPrv.r2;
/ j5 `) }3 t& p
pLight->Ambient.g = lightColorPrv.g2;
0 u$ m: n3 T' ~' f' T' |
pLight->Ambient.b = lightColorPrv.b2;
0 f- _# I5 D- s# `: T% [+ z2 d
. }7 w2 Z+ V# E: Y' E; ^& ^
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
& a# h# d# w( C
{
# g" q0 \! V1 X5 w9 X
pLight->Diffuse.r *= 0.6f;
6 v# {4 L* z. w- B7 B/ j& X8 ]
pLight->Diffuse.g *= 0.6f;
' o. d$ }5 s3 C0 ] g3 s1 s- h
pLight->Diffuse.b *= 0.6f;
% c- f7 h/ }# ^# r x( R
pLight->Ambient.r *= 0.7f;
4 B4 `$ t* a# n4 B4 `& x8 L! b4 Q
pLight->Ambient.g *= 0.7f;
* `# j0 b) T! X/ u
pLight->Ambient.b *= 0.7f;
8 _2 x* b; W$ @2 |* _% e. Z
}
( [' o4 t; e6 |+ J: \$ m/ w
: b: P% b% W1 i: B3 ^9 @
#if __VER >= 15 // __BS_CHANGING_ENVIR
' b+ l" d" d* `' m, Q, K! l) G
if( g_pPlayer )
9 H4 R2 B2 h$ r7 |6 j& U2 h! S
HookUpdateLight( pLight );
* l" m4 p* Z! C) `# _7 k, a
#endif
! Z- h1 M# _; y8 m! b% p
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& i2 ] C4 K* m% W, ?) o8 {6 |
; C3 x* |7 L/ b, O
#ifdef __YENV
/ U' W, h; n! m" P- c3 ~* R( Z2 j8 y6 J
pLight->Diffuse.r *= 1.1f;
& h' s r; C4 L& d
pLight->Diffuse.g *= 1.1f;
" S! {' Q; [. {& i- Y& r/ F
pLight->Diffuse.b *= 1.1f;
1 O& v. B5 z( E* R$ e
// oˉè* ??à?
( y; N' w+ A) `
pLight->Specular.r = 2.0f;
6 [; s; O* \. L& x/ S; w
pLight->Specular.g = 2.0f;
6 J$ k; r; ]8 {
pLight->Specular.b = 2.0f;
' \' S) p% r3 @& ]
// á?oˉ
* j% G( }9 U" M& e6 U
pLight->Ambient.r *= 1.0f;
" a4 y% y' F+ L* x0 N
pLight->Ambient.g *= 1.0f;
+ V8 g( m: [- P6 _
pLight->Ambient.b *= 1.0f;
8 ?! ]. g. Z- h: j
#else //__YENV
, s: U8 v) ?1 C0 u3 B4 W
pLight->Diffuse.r *= 1.1f;
; k% c- a- I1 w' b) M# I
pLight->Diffuse.g *= 1.1f;
$ |1 m7 v% u- K9 Q' e+ ?4 k
pLight->Diffuse.b *= 1.1f;
P [+ E* J: G+ I6 W
// oˉè* ??à?
7 U/ j( U3 z/ }/ O
pLight->Specular.r = 2.0f;
* ~% K6 e) l, U& B, F# v) S
pLight->Specular.g = 2.0f;
! [1 Z' f% v& X% _! M
pLight->Specular.b = 2.0f;
4 a0 {4 q; c9 _% {! P! s s: P
// á?oˉ
9 A; R4 b, b/ F9 V
pLight->Ambient.r *= 0.9f;
5 o& f2 |7 Q+ t; w: u/ A$ t* K, ~
pLight->Ambient.g *= 0.9f;
) k0 b; D/ \4 ]3 B/ d
pLight->Ambient.b *= 0.9f;
2 ~5 N" d+ h5 b+ ^% e& D W
#endif //__YENV
5 } a2 |# b/ ]! F( J4 q2 Y) f
1 c5 M2 n( m5 s/ Z/ P, ~4 D- L
memcpy( &m_light, pLight, sizeof( m_light ) );
. X {7 v/ y( |% n1 b1 l; I
; H- o7 ~" I$ I+ U5 V7 Y$ H
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
1 x; C+ x; J; _- v
D3DXMATRIX matTemp;
: i2 f5 O, G# d$ x2 M8 ?8 D: Y: M
static const float CONS_VAL = 3.1415926f / 180.f;
3 A8 s+ |' d8 S, \
2 ?: k2 R; @; I4 x- H
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
7 C: d$ k- j+ F# X f3 u4 M
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
* D. g+ o6 T" @) r3 _
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
3 c% }- @- c" \; r
pLight->Appear( m_pd3dDevice, TRUE );
* Q& O2 \7 @" I
! }# d+ p6 k3 r( [) U& \9 H
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
& C& Y; r, w2 R# L1 E
// D3DXVec3Normalize(&(vecSun),&(vecSun));
$ o. E! e5 h) O* f3 u2 L/ x
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 \( k& X# L% \4 P' e% G
5 g) ~2 d1 A! _& J8 F$ w( R
DWORD dwR, dwG, dwB;
# V' \2 F1 h2 h
dwR = (DWORD)( pLight->Ambient.r * 255 );
, g! F" A& D% ^0 l8 W7 C! t
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 N- I: J/ U1 v( o5 A2 l) q; g
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ p5 r, V5 H1 _4 ]% n) R+ o }
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' E1 C* @1 p- \/ _
}
* p5 l: p5 S: N8 e. ^
}
8 a* k3 ~# G% J8 c( q d. {
+ |& P* p5 D" ]7 j
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" E( n0 v) f' K* P9 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) );
! u) P q; \3 A. y8 T; F$ b
::SetLight( bLight );
; v+ p0 p5 O; X' u( o2 x
3 |, Q- I( c8 h
// ±ao? ?D?í???ó á¤à?
, r4 m( l: e( I/ G5 g
m_pd3dDevice->SetMaterial( &m_baseMaterial );
9 B! A+ N: Q4 \0 {, x A2 L
+ Q$ }# ?' n! [" ~
#endif // not WORLDSERVER
' _& P( l$ J% {
}
* c5 I3 A( i, r$ ?
并更换
2 \, Z" Z/ l/ P# E
Code:
$ Q! w% |5 b2 y9 j4 p" v
__FLYFF_INITPAGE_EXT
8 u' D2 c+ t4 a
定义
4 ^' W" ]; E4 x" g2 {0 O( [4 Z
" Z5 K; h: C h/ P
% S; R2 r+ ^4 M# I* u
1 r% Z/ z C: ?
2 `" B8 Q* S: z3 C" H
现在终于删除我的狗屁加速...
1 ]3 H( {6 ]# e: X
0 j7 c# S9 D% s8 j# f9 V8 n
- H/ @) H3 i3 i1 M
( P* [, } }1 ?8 H3 n* y% a0 [1 g# j9 H
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2