飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
* M+ v/ ~4 o. ]1 t
尾翼:
/ K! d1 g4 ]+ W: K
3 | {6 P: O& \& s+ }7 W/ I
代码:
. d' K9 R% N' m/ j/ ^
CWndAutoFood::CWndAutoFood()
2 r5 u8 s3 Q/ s0 o3 \2 q [5 S
{
# b8 h3 b; V; S! W+ E
m_pItemElem = NULL;
+ d1 p; b; P) z8 O! i
m_pTexture = NULL;
2 j2 _% F; O8 Q# u" M; t4 \
bStart = FALSE;
4 p L+ u H9 G* H
}
$ e7 Q: P/ J" V1 m) x* t6 S4 s
2 c* g0 I1 O6 I8 g
CWndAutoFood::~CWndAutoFood()
* Y9 v' W9 n/ v7 h7 B. r' q& ?8 O
{
, I! h6 g, f& y. A
AfxMessageBox( "AutoFood ist gestorben
" );
! B% I5 ]4 o9 V$ }3 V
}
p1 C; f6 t t }5 f% E9 z
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
, F& q; ]9 M. @9 \
{
3 }6 Z3 {% E* W3 T1 l
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
) t- ]/ r6 M8 P: Q. E
}
1 w8 C: C4 D# s* ?4 f
/ D# V- r2 e% Y; l
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
- G0 Q! W; ?4 Z- c% A4 c5 O
{
! w1 ]( M; V( ~' W4 ~- F
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! ?0 z0 ?- }2 ], w0 W+ l
CRect rect = pWndCtrl->rect;
! k0 E# X8 G# ^
if( rect && rect.PtInRect( point ) )
: _9 e8 T7 o' {0 k, l! t$ h' f
{
& A: V& r1 ]9 s# }2 W m
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
) r1 j* \# n7 h
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
: D: E; p- Z/ [6 j+ D; ], D
{
9 c) V- r2 i0 o6 w( ~$ [1 O/ I* C
if( m_pItemElem )
8 k3 z& O2 \2 R+ j
{
6 ^. x6 ?0 |% p5 W
m_pItemElem = NULL;
( m$ G. C: k* i9 `9 N
}
F; M- H8 q8 y' E6 L+ N j
m_pItemElem = pItemElem;
% N+ x1 c- D( ^% G# U
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
& o8 j+ V- w% Z5 K
}else{
3 q9 m: ^4 m" c1 j, e
SetForbid( TRUE );
& u6 c/ Q8 O3 S. T2 h& x1 R
}
% ?1 v! z5 i9 I, s' j; p4 r
}else{
v0 d5 l) f; A+ |! B/ c2 r7 i
SetForbid( TRUE );
( l* i7 x8 I( R
}
2 N2 k; c8 M/ f4 t8 _8 x1 K
return TRUE;
5 G7 W4 D- S% h+ a# }; g
}
1 {7 I8 w0 y& x, N& J
0 H+ H* ]9 J6 V. B2 d& C5 C1 m
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
# D0 x. d5 ]: s
{
4 {. s2 w8 v$ h) f% j7 p% ?
switch( nID )
6 \& h8 s) ]) M1 N3 o9 |
{
% B0 J4 M( @, W2 j5 j# d7 \
case WIDC_BUTTON3:
! w" ]8 ^# a0 g/ h
{
, M$ A: i2 p' X( q: w
bStart = TRUE;
/ W t3 F6 S* p
break;
, f- T `6 r) C0 q- k
}
/ k6 F0 v: p$ E+ e* s* H) e
case WIDC_BUTTON4:
& P9 x" g: y5 v/ \
{
) r& d2 Y: \9 K6 }" C8 f
bStart = FALSE;
, e+ A: X6 j8 {0 a
break;
i0 H7 R/ @ C- k3 j
}
5 {5 S' P0 d! A
}
. l# V N* F& G' ^4 _
return CWndNeuz::OnChildNotify( message, nID, pLResult );
+ K- v* G8 F8 \% v$ d8 R- t
}
8 D5 m d5 h8 P' R. G! d
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
$ o; z3 e- N) ]7 P. M
{
! S. N8 V5 ^, `! v; k
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
2 H1 {8 t6 H( p
if( bStart || !m_pItemElem )
5 n# w4 L$ [4 u" [" Z
{
1 P) s$ |9 d3 F
pBtn->EnableWindow( FALSE );
! q) M8 q. h5 H% H5 m4 c
}else
. `4 U) m4 @( [$ M. P, S
pBtn->EnableWindow( TRUE );
% u7 O' r; d6 {( G% j2 ?9 w
if( m_pTexture )
; ?6 z) x5 p. `* Y1 k
{
I1 @4 m4 F% T% c& ~
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
4 D7 h6 m1 A8 e9 |( d
if( wndCtrl && wndCtrl->rect )
1 H" |/ ~" m/ }
{
/ k5 E- m0 o |
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
, o# k: p6 V7 R' }/ h& T5 E
}
+ W6 }6 h. z: O; e5 ]; l
}
6 ^! s# J- b8 @' G. O$ O
}
: [; a$ q1 P* F+ j$ ?; ?
* m! }7 S0 q4 s- B: H5 J
BOOL CWndAutoFood:
rocess()
2 K$ R- T5 {7 S6 J+ q
{
; r2 c* _" m) o( j& x# {
if( bStart )
+ y2 N7 ]- Y0 R( N6 O+ L
{
& w9 W* p; D$ U( C
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
0 y& O6 }) V N; Z9 s& E5 A5 y/ s$ V
{
, Y" J2 U! |6 _4 l g, q& @2 d
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
2 z; [) S1 G, i: K5 O8 h0 @
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
/ E3 u) C0 |* ~, f
}else{
: F) K6 H5 k* v6 }- ]& T
bStart = FALSE;
& A; `9 P7 D k0 K' T
m_pItemElem = NULL;
, r* T8 A/ l: S
}
9 M$ y! b) z! l+ ? {' Q5 C/ @
}
. w! N2 h% U6 G- C$ x" F) h
return TRUE;
# y, ^" P T) C) Y) Y& G* g8 c$ m
}
! Z' G1 O4 M9 x
" _( Y I% c% [% r& ^
登录视频废话:
$ M4 a8 @; J! q" l
尾翼:
+ m+ o/ L& b! `% y" r2 x; l" x
8 [4 _( K5 I; H+ e' H
代码:
: n. C7 M G6 Z) U. E
: z% U+ I( ~: d( S* B* Y
void CWorld::SetLight( BOOL bLight )
4 j3 l9 J- e U- f: l
durch
* i# b! f* k4 }2 E. r
Code:
' e1 `% c# S- U+ ]
void CWorld::SetLight( BOOL bLight )
9 x+ g% K% x0 u# x! O
{
; y- X% Z n* `! k, t0 f
//ACE("SetLight %d \n", bLight);
. s! d4 z6 u( `) s3 Y/ D
3 T' f. `1 ~" P, c
#ifndef __WORLDSERVER
, p2 U: R$ \/ `- [$ a) l/ f; }; w
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
/ K. @3 |9 Q+ H/ U( C/ c
CLight* pLight = NULL;
1 N8 b9 Z+ _. I2 v+ a8 ~1 r5 _
% u3 C" ?: O7 @. Q+ e! r# r& n- E
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
- H: g) L) B3 S1 J
4 d6 i3 M. [4 t$ d) @: W
pLight = GetLight( "direction" );
! K( ?6 i( \; B B! n* b7 G, a
8 K5 Y! e$ |$ s2 R) V7 l
#if __VER >= 15 // __BS_CHANGING_ENVIR
( W" z& w4 l- T {2 I5 U) V; @
if( g_pPlayer ){
4 d- U& C. B" L U
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
. w4 t2 _1 ?3 H- g! Z" t
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
J8 |$ R M( Q) M, ?
{
* e; k4 k7 Z9 G+ i
if( pLight )
: v. o t" e$ i9 J2 f4 Y% [1 q- h
{
2 o- d' Y# z+ B! f
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
6 v* ^/ N" J0 n5 ]! F6 I8 N
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
9 r. p# P6 r) Q9 {3 h/ x& k
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
3 t5 ?; {( r9 z- F5 K! M- S
! v9 I1 X1 `6 W9 R
pLight->Specular.r = 2.0f;
+ ]3 _7 b j' ^% d$ s2 b; l
pLight->Specular.g = 2.0f;
5 e/ s7 L' ?- x% _ f
pLight->Specular.b = 2.0f;
# `2 ~3 n3 M$ r2 q
" J7 A4 _$ k" j+ s, f) B$ q
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
$ E) a; A; H: _+ A# m/ y
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
8 h8 M6 I( f# X4 [: [) n
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
A M$ O8 E# Z, k- j8 W* M9 f; ~
E5 R7 t K, }, i: v
HookUpdateLight( pLight );
) t: R$ K; c& H7 f
2 s3 ^3 h( E3 P/ X4 \4 j
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ y* ? B6 q" s0 w3 h
9 N4 [& M' V1 T7 f# V- H0 Z
pLight->Diffuse.r *= 1.2f;
. b' n" w, E \2 G
pLight->Diffuse.g *= 1.2f;
8 ~2 |3 J" F4 L+ ?; o0 L
pLight->Diffuse.b *= 1.2f;
7 V2 v5 F+ u) |% b) H
* M* @+ ~! \& e1 r- E
pLight->Ambient.r *= 0.8f;
1 V& J* g" g( m- v) t
pLight->Ambient.g *= 0.8f;
4 v7 e6 ~8 Q Q- e; K- [& ~
pLight->Ambient.b *= 0.8f;
+ f/ ?8 z5 @3 u* `3 f
1 _# W$ s" ?1 y. B9 [! \
memcpy( &m_light, pLight, sizeof( m_light ) );
* N H B5 v$ g9 m8 P: M* x6 k
0 |9 q7 k7 y X2 \$ e* c0 o
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; i1 R, z# P: i1 }4 Z" d4 x
D3DXVec3Normalize(&(vecSun),&(vecSun));
# ?% m# |/ w, u9 {( _ _& y
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! U9 n$ O$ q0 i0 @0 A
pLight->Appear( m_pd3dDevice, TRUE );
3 C! O, j( [6 D/ g; g2 ~
/ z' R9 {' w5 m' i5 N
DWORD dwR, dwG, dwB;
* z+ } ^& m+ g! D8 Q5 V4 R; b
dwR = (DWORD)( pLight->Ambient.r * 255 );
( [# n6 A' X4 @7 M& |* v; u. L
dwG = (DWORD)( pLight->Ambient.g * 255 );
* {! U& J5 z: x& L, N! H
dwB = (DWORD)( pLight->Ambient.b * 255 );
% c5 t5 T1 b' l& k3 {/ D7 |
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 D7 M+ h8 U& f
}
" {! v' U4 B0 Q% ^( g0 v; r5 _
}
" Y* t0 G: T4 \' x
}
6 s* x& p$ L; G: F ]
else
2 x$ i- \* M/ z
#endif
% B0 B; w( \. V6 u
+ a' [5 I( u) @2 G4 e# [: H/ o
if( m_bIsIndoor )
! \* h) |; V2 B' L) _3 t7 Z% Z/ e
{
+ p* w# w) |7 y' n3 C n
if( pLight )
: s7 e9 t9 j, Z% Z
{
8 r# Y$ Z8 P7 H% V! C" E
// à??μ oˉè*
$ T6 L$ T8 R5 o2 g; Z6 a' d+ t9 ^
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
/ _1 }( M' y& m; P
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
; o; { \/ }. F% v( r
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
1 }. i1 f6 q( ^. ?2 L8 [
1 Y; r+ s# S1 g
// oˉè* ??à?
$ \/ X8 @- ?4 S2 E4 m
pLight->Specular.r = 1.0f;
5 x( o; K/ H+ x$ i, f* T/ B1 k r
pLight->Specular.g = 1.0f;
; K4 v1 f l- s, v0 ]1 A! X
pLight->Specular.b = 1.0f;
; f3 H% _# D( x
// àü?? oˉè*
* P l1 r) e3 t
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
7 B3 O; X r8 W: V( v
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
$ C; D# P) a/ Y- ~
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
4 s& C! y( R& {& \0 v7 b8 z+ M
6 {6 ]& P7 T* I" G& {- h: Y; j9 z4 s
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
2 o5 w7 g, o' s0 e6 Y2 E% E
{
. p% [( X. t) ~) ~0 I0 p
pLight->Diffuse.r *= 0.6f;
D; `! `! d$ }% ~" U: U6 e
pLight->Diffuse.g *= 0.6f;
; f" D: ]: d# r, g4 e$ s- N
pLight->Diffuse.b *= 0.6f;
& Z8 w' i) ]+ @% Q
pLight->Ambient.r *= 0.7f;
! s* v. c% V4 X# w$ ?3 I' z
pLight->Ambient.g *= 0.7f;
0 S/ u! S5 V7 A# v
pLight->Ambient.b *= 0.7f;
X0 m2 S/ n4 p/ {" L% o/ f+ V- U2 }
}
- o |8 R% h% h# u. d G8 f d
4 D6 ?$ t; d; o: ]$ B
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ c3 O/ ]. [# v) V+ `
if( g_pPlayer )
* o3 t9 p, G6 p
HookUpdateLight( pLight );
; P# M% l: I' G
#endif
% r% l, L0 ~* V. W/ \; C
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
- Z# G2 l9 J: R
, A* Z3 G2 s: ]: z
pLight->Diffuse.r += 0.1f;
1 ^6 g- @5 ]: p( r5 B& K! t
pLight->Diffuse.g += 0.1f;
- o8 i$ s$ @0 _
pLight->Diffuse.b += 0.1f;
* t2 w% R, y9 f" E8 w
// oˉè* ??à?
; w2 j' ~' I8 L; T! {* N. Y0 P
pLight->Specular.r = 2.0f;
. w0 J& A: w Y$ A2 f J
pLight->Specular.g = 2.0f;
5 H9 ?; R! ? F+ s
pLight->Specular.b = 2.0f;
5 L N; p8 z* r5 l X
// á?oˉ
1 z9 b0 Y2 D2 q" d- U2 v/ I
pLight->Ambient.r *= 0.9f;
! I0 U1 }7 A( z" y) P" `0 ]
pLight->Ambient.g *= 0.9f;
& Z* s+ g$ r- j0 k) r! G! v6 h
pLight->Ambient.b *= 0.9f;
& |( T O& L4 \8 m! E+ a5 t$ z5 o/ ?
3 m4 ^/ d+ @+ k# A
memcpy( &m_light, pLight, sizeof( m_light ) );
9 B% {' ^; g# T; H* ?
6 C2 K6 I$ r( N# `6 } ]8 U
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
1 l+ S! y+ t$ a
pLight->Appear( m_pd3dDevice, TRUE );
, n! J3 w9 j5 ~+ G A$ K3 h
, e3 |9 {- x! O
DWORD dwR, dwG, dwB;
$ g9 c- s* {# @
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 B8 n" t; L9 {* y2 f
dwG = (DWORD)( pLight->Ambient.g * 255 );
5 i9 y8 ], Q8 q) S2 m3 H$ n
dwB = (DWORD)( pLight->Ambient.b * 255 );
& b' s5 |. w2 A( [( \( d
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
t2 T/ i! s0 S1 v# j# a" W8 i6 i
}
8 c$ I6 V# |* a) Y1 [, K% W9 u5 |6 W
}
% |3 c) v. s# z, [- B! A
else
' m% Q# M+ u: j$ @( K9 D+ \
{
8 N, n/ r1 K/ _) w+ d6 M
if( pLight )
# C, [) B, C0 `! R) n
{
% o7 m7 |2 d0 n5 O0 g5 _
$ S5 {* x4 v6 q
int nHour = 8, nMin = 0;
: ~& P+ s( s0 P" W/ b. h1 `* a, C
#ifdef __CLIENT
9 A, K5 F. _& i) B! _6 W0 Y E
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
! H3 O* q) {- |2 c1 B g0 e {4 A: S8 ]
nHour = g_GameTimer.m_nHour;
6 A* k \3 M' d8 x5 `
nMin = g_GameTimer.m_nMin ;
; m, [/ B. a2 w- b
#else
6 e) g; \+ ]) I+ G5 ?& b5 J
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
9 a6 X' N* X1 y* M( g. g! L
if( m_nLightType == 1 )
, Y4 k! S+ G0 k1 P
nHour = m_nLightHour;
2 R2 B- ^: |) N1 ~2 \6 A5 Z" {
#endif
( @- ~8 s3 w/ y# [: k! J7 U
nHour--;
' m1 r* C# U; l) k. K
if( nHour < 0 ) nHour = 0;
. u" F: ^, T- s: N/ ?6 r
if( nHour > 23 ) nHour = 23;
5 [6 r9 G0 ]$ ^! R6 Q
- Q, F; U# ] L8 u
//if( m_bFixedHour )
! n7 N" [! ~& W- \. z" }' N8 a
// nHour = m_nFixedHour, nMin = 0;
" Q& X$ t& @1 Y# Q
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
8 B* k* O) F/ u- w V. z
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
, V2 F4 w# e* o/ C; C! D
% s1 P* w+ U7 P1 P
//m_lightColor = lightColorPrv;
; q0 J! s% g, ^2 M& ]/ A
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
& F. Z2 z: A- T! t _* t' G
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
: B, s4 m" b2 {7 U
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) h5 F4 J) k0 s$ L
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* _8 C9 E* o3 u+ D5 ]9 q
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
' M3 b2 j7 }; A% r6 |( U& g0 l
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
. E0 r; q: L, P
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
9 ?/ v( c+ m" u, ?" Z
' e. h4 t; e( g& ~6 P
// à??μ oˉè*
, F, M/ \9 `. W
pLight->Diffuse.r = lightColorPrv.r1;
% M/ C1 `( l% ~: Q* u2 l
pLight->Diffuse.g = lightColorPrv.g1;
1 B; ^! ~ p! M/ P* J. g
pLight->Diffuse.b = lightColorPrv.b1;
3 F! {; f, q7 S4 m& V: s! {7 u
// oˉè* ??à?
6 s2 C2 I8 Z. K' B0 _' Y4 i
pLight->Specular.r = 1.0f;
7 ~" w4 X- A! C, V$ G* P6 Y7 C
pLight->Specular.g = 1.0f;
. i5 G" ]6 {) S$ e6 a( c* m3 c
pLight->Specular.b = 1.0f;
# w! F1 H3 _! m: }0 V# K/ L0 u
// àü?? oˉè*
: y, M( m$ j# {& O3 F4 Y% b2 A
pLight->Ambient.r = lightColorPrv.r2;
5 x# T8 M. \. _$ v# Y: j. O
pLight->Ambient.g = lightColorPrv.g2;
; N) W$ [ Q8 |+ T6 [- p( x
pLight->Ambient.b = lightColorPrv.b2;
` _6 \5 q: m4 p
7 x8 d$ h; w! H0 q
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
B g; {8 h" N2 e2 o; j$ K$ U, h$ P
{
" v: a1 Z2 C m( |
pLight->Diffuse.r *= 0.6f;
; z2 L. f" r" V8 j) ~
pLight->Diffuse.g *= 0.6f;
/ h9 u8 B/ g; O
pLight->Diffuse.b *= 0.6f;
2 e( M/ G3 {$ v% D
pLight->Ambient.r *= 0.7f;
8 i' R2 N/ n# t2 q# e U! W
pLight->Ambient.g *= 0.7f;
& W* Q5 q Q, D
pLight->Ambient.b *= 0.7f;
/ e/ @$ c6 D5 N, v1 X
}
: P3 P& L2 ~: E: M. W$ A+ R) M
& K6 h8 {# K8 z
#if __VER >= 15 // __BS_CHANGING_ENVIR
0 t5 l; m5 k. }& m
if( g_pPlayer )
5 i) b L# Z, Y9 E& x" h# ]) D
HookUpdateLight( pLight );
2 o+ L. c9 ~* B. a" _2 e
#endif
7 F6 j+ t# F6 D5 ?7 k
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
k8 `" |+ [3 z2 e9 c* G4 O
: L' P3 u& ?8 P Z+ v; ~, V1 _
#ifdef __YENV
6 T7 Z5 n) N/ W+ X$ t$ X( C1 p. T( t
pLight->Diffuse.r *= 1.1f;
. I) g1 i/ L; C, O& z
pLight->Diffuse.g *= 1.1f;
2 b$ J' j0 i& w. T- }: P' o
pLight->Diffuse.b *= 1.1f;
@4 r% d% m/ Q w- S. N' m
// oˉè* ??à?
! c. y! b6 _* i
pLight->Specular.r = 2.0f;
, L! y7 T# Z( y0 k) M7 H1 T
pLight->Specular.g = 2.0f;
, [* \% j( g5 F1 O$ t8 N
pLight->Specular.b = 2.0f;
& o+ R6 n5 f8 G( V' C: a4 W
// á?oˉ
8 K, F: @4 M5 V3 Q. U
pLight->Ambient.r *= 1.0f;
X+ w1 X7 i4 a% T# K
pLight->Ambient.g *= 1.0f;
9 N4 \1 v+ k5 _) n+ n( j4 ~
pLight->Ambient.b *= 1.0f;
; n) M+ D# u5 ]2 W9 x4 G
#else //__YENV
1 Q# ~( X0 Y$ m8 Q
pLight->Diffuse.r *= 1.1f;
d( i' A5 I# A+ z5 D: R
pLight->Diffuse.g *= 1.1f;
8 D; e$ |, q0 v: C( a0 F% k
pLight->Diffuse.b *= 1.1f;
6 W% `- `* y: Q* t$ y
// oˉè* ??à?
) W4 G* ` f8 d" M
pLight->Specular.r = 2.0f;
$ z, A' | D- f
pLight->Specular.g = 2.0f;
2 K. }0 B/ w7 g& F
pLight->Specular.b = 2.0f;
9 \+ Y$ X. @) }5 n, @
// á?oˉ
8 W9 g4 [- K u( m/ ~9 a) c
pLight->Ambient.r *= 0.9f;
]' u5 ?+ R" T- ^9 ^, [
pLight->Ambient.g *= 0.9f;
" C4 b; @; K' }9 }& b6 c9 _
pLight->Ambient.b *= 0.9f;
5 f2 Q' {! t ^1 c" z
#endif //__YENV
9 ]; B5 ]% j# i% d, G
6 ~; ^; p9 @5 P
memcpy( &m_light, pLight, sizeof( m_light ) );
& y7 q4 b/ D/ R5 s( c6 F+ \
4 O: G4 C; V K
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
- L. \* v8 n" z9 o6 s9 z
D3DXMATRIX matTemp;
4 U/ ^ {- E i0 T2 p% _
static const float CONS_VAL = 3.1415926f / 180.f;
( B) G4 f' H6 L, ^3 j R
v, S z+ S4 Z; @, N% z5 V) x& K
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
$ }) p; z9 Y# b- K4 P' L# t" }, S
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
- _! f6 P- A/ ?2 |) t
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
/ {3 H: [1 p! P9 E! [" |0 D" }
pLight->Appear( m_pd3dDevice, TRUE );
# t, a% ?; \7 u
; V- k/ j+ R n* N9 V8 Y7 s" i
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
8 [: h8 a8 _/ D" b7 M
// D3DXVec3Normalize(&(vecSun),&(vecSun));
C' t3 v8 S J4 u6 A7 \
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ F' P/ A3 A3 x# M' I
, l6 j6 E' G5 R X/ q7 l' o
DWORD dwR, dwG, dwB;
4 _ C: Q u5 R$ P
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 _7 a4 B! D7 ^; b' I1 m( d
dwG = (DWORD)( pLight->Ambient.g * 255 );
: V4 F& C+ v# i) w4 e' m
dwB = (DWORD)( pLight->Ambient.b * 255 );
' y- F. d, b! z& F5 T8 M
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 C% S$ R7 ]- f2 g4 _/ q
}
* J& M, G( a% U; ?; [( R
}
# O2 L5 o4 y% @7 u/ N/ d
' ^; O& z* I( k: ]+ h
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" F# M* y2 n' H; r1 {4 H2 Y& b
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) );
, ?: s3 k2 k/ z* k* H. ]+ ^0 J
::SetLight( bLight );
$ K$ Q" z) v o9 L* y+ I
) ~; m3 I2 K; i3 e
// ±ao? ?D?í???ó á¤à?
! f4 i/ W! u' v: U& |* \" z: N
m_pd3dDevice->SetMaterial( &m_baseMaterial );
, I1 ]3 U! _3 Q4 x8 A
2 ?3 o4 \2 R* z; g
#endif // not WORLDSERVER
! F9 `4 x4 |6 W4 _: |5 T
}
1 y9 D$ R+ h9 l" x
并更换
: l0 b M3 q8 _/ R7 g/ a
Code:
3 }" t, V" r+ C/ c$ H+ ]; y
__FLYFF_INITPAGE_EXT
! I) r8 e% T i( Q# |
定义
0 | R1 V( d( t8 V- q
! x0 a- X+ e8 n3 Y' q" C( n
, \" a, r' K" q" M$ N
# |7 p* r9 F( \# H
; e( X# \' H, k7 N. K
现在终于删除我的狗屁加速...
3 h9 ~" a; l& {1 r5 S8 q
. b$ J0 k+ J6 ]- N6 r) j
; d) T/ J; y6 `' i
7 a% z+ T! I7 ^; ^) i: u/ L" T
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2