飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
4 ]0 r* N4 [& J0 l
尾翼:
3 _/ A( J- n- r* j/ J2 \
. _$ i7 b9 R( z8 U! R# v
代码:
9 |5 [/ P& e$ @/ o
CWndAutoFood::CWndAutoFood()
% _* o- z9 g; v* s+ X6 x( Q& R
{
' F' ]5 K8 x7 w/ {+ E
m_pItemElem = NULL;
. [! q/ f' a+ F. S; i
m_pTexture = NULL;
0 _$ i% \# l/ i& P
bStart = FALSE;
2 \( ^1 P2 l1 U% t1 r$ L
}
5 `& ^- k5 | A8 p' [7 R, R$ T
. q/ ^( M& z, h% ^6 x- T
CWndAutoFood::~CWndAutoFood()
7 d$ g/ O+ V% w. D8 W. q* o" ~: x
{
" K6 M7 ]. Z1 @5 S6 j. v
AfxMessageBox( "AutoFood ist gestorben
" );
& \' T1 [" w6 P& Y- S7 G5 s+ f
}
% L, h+ D' z- L5 o
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
% _( f( w, m& G1 ^; }2 I' x
{
* G/ r" p4 x1 c2 K' u' [4 [* s: O
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
9 Z+ }- o J8 G/ V4 m' D! ~
}
2 ~- d3 Q: d" ^ {
5 A0 D0 O7 P% [
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
& H# C+ G% B" }& Q, T1 E
{
0 \& L, ]6 u7 U' M7 v; S8 h1 K* X% C
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
% H I4 |3 ~+ f: l( ~" d! d
CRect rect = pWndCtrl->rect;
" h- K6 D& X: I2 ]( v
if( rect && rect.PtInRect( point ) )
$ E4 L; {7 q. Q# f
{
. Y- }% o: d+ E% z* `
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
5 g5 d! u6 m1 j+ l- i
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
& k, P) [7 A9 `. d1 |& k
{
2 n0 L. J" A1 r6 S) n4 ]
if( m_pItemElem )
2 {. c; ?! A5 `. ?% S8 g. \
{
7 u4 M: h7 ]" c% G. M; w( `6 t
m_pItemElem = NULL;
; {# F- T9 W) F$ P4 u: Q9 U
}
( d- ~0 @/ s7 L" |
m_pItemElem = pItemElem;
9 g2 \3 Q% y0 L$ x" {2 q
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
! V% p- x1 T3 k2 ~$ F. U- s% F
}else{
4 `% O2 [" t0 P: `! P8 C; O
SetForbid( TRUE );
1 m& L3 J1 t9 }/ V$ P
}
8 f, R4 y% l- c. I; R3 Q* J
}else{
8 p* O" L' X$ s; M; p; C$ w
SetForbid( TRUE );
4 a2 @( p# b B$ j4 G
}
, c1 B9 {& l/ @" X3 M
return TRUE;
5 _% c# \" {$ i7 [
}
) m* H' I$ y. F+ q6 A: _! W
/ W( w1 u" |8 |; {
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
' a9 b/ e% G5 i& w+ l
{
) v' k! Q. F2 z/ ^( b+ [, ^
switch( nID )
) a% t- Z9 V3 \# R# Z8 N! F& s, ]
{
- N8 Y- n6 |6 `# A4 A, S. H, B
case WIDC_BUTTON3:
v8 P3 {' ~4 @" [" C' h
{
2 _. U' I# V0 ^! j) k$ ^
bStart = TRUE;
6 |2 T* `) q: e4 O' a( @+ V# _# [) E
break;
. z# V' B* z# B' k# _7 z2 [2 Y
}
& g7 T: Y: i: `. Y5 z7 ^# V
case WIDC_BUTTON4:
& Z8 _3 G5 r0 a1 t, i/ d7 J
{
, O# T. j3 U( A
bStart = FALSE;
7 d5 Z+ D' @8 G- q' o0 r8 F
break;
3 [5 X1 p. H. B E$ A
}
# s) `+ h* N' k3 M9 h. B) A
}
5 s1 u U! }5 \* I* r
return CWndNeuz::OnChildNotify( message, nID, pLResult );
8 C& C0 n2 F# {6 e! O) H/ S" [& `
}
1 s; L% W" \: p- z- h0 F: ]8 c' g
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
+ Z6 k0 M3 \" L' ^! x S x
{
! L9 ]2 x+ m2 Z; E5 ]1 Z6 j) X- H% C- m
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
7 o. H2 |. s0 Q" M, ~
if( bStart || !m_pItemElem )
2 _( L& |6 B. p% p- ~; |$ g2 c
{
% v& Z3 U; C- J! R8 H: ~. O3 i
pBtn->EnableWindow( FALSE );
# L. ^# H, R' x
}else
9 m2 d( S- o+ s8 t. H: ^ @# J6 R
pBtn->EnableWindow( TRUE );
# `" ~6 Y" I0 _: u) Y
if( m_pTexture )
5 A& f$ H; Q9 a" C: g" D, u1 J
{
7 q( M, W6 `7 V! r# R6 U
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
: K, k3 v" ]5 Y4 I! m4 o n P
if( wndCtrl && wndCtrl->rect )
% S2 b5 r/ J7 O1 f! E
{
3 v9 x8 [' h. t0 Y: H
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
+ w5 G$ C! k, L: g; V5 D
}
7 w, e6 ]6 h3 E. m( N0 Z
}
1 p/ S1 {$ k8 l0 }/ b& |' j- U
}
4 k2 h: r' O ?, }
+ A) t: X" ?4 g$ n; e
BOOL CWndAutoFood:
rocess()
, ?3 V# t3 q* o, J
{
, p: F0 P+ z t; l
if( bStart )
# E8 Q/ {& u7 s/ T7 N: N9 a, f! r# o' X5 k
{
/ X# ^9 b* T; D7 B7 [9 A. T
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
# J1 D# Q0 E6 a) o" }& A# R
{
+ U! P: l! a1 V( C
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 O# j: m6 o5 V1 B( I( I5 k) G
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
7 ~ r: `. C; n/ w7 I# m
}else{
! |0 R$ Q/ C+ m4 Y
bStart = FALSE;
2 k; v# R7 w6 S8 u" [ C
m_pItemElem = NULL;
: v. s( A) W2 p+ }
}
( |' p2 O# M7 G/ u+ U" Y/ v% k+ `
}
' ]9 ?9 l8 f( E* b: E2 m( ?+ z
return TRUE;
' C. n8 ^& b9 I" i( W
}
# Z& J/ D, m: E3 C) i
* {/ w0 S5 s n0 }5 [1 S% h
登录视频废话:
/ v z( H9 |& m9 T6 ? {6 i
尾翼:
" A2 g a" k4 Q0 f% N) C
$ K% r) w- G( i& Z4 B( G+ U. T
代码:
+ V( t5 W; x) g6 c6 b# \
9 H( o' B& p! h/ K4 Y. Y5 O+ V
void CWorld::SetLight( BOOL bLight )
2 t! J6 w p8 ~6 I3 X
durch
3 t4 z- I8 s+ s4 T2 d$ P
Code:
6 H" \6 p. L1 u
void CWorld::SetLight( BOOL bLight )
% P$ n* a. m+ D: [9 V0 s1 |- A
{
" U8 Q+ \" F# F0 w. W1 c
//ACE("SetLight %d \n", bLight);
. l, Q0 _' z/ H3 o, Q; l% Y
+ Q* A! R2 ^ o4 J* p/ }2 Q
#ifndef __WORLDSERVER
: o B1 B$ s1 j" ^$ e+ G$ V
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
$ ~+ _( K9 S1 e
CLight* pLight = NULL;
$ i4 [$ z. h& Z1 H$ t# S% Q
% k! J; l' p- ?; E+ h
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
: F0 W' X# b7 W9 g$ ?: N
1 F9 P# v4 \2 V3 G; d4 L9 z
pLight = GetLight( "direction" );
6 M+ p$ S, x8 V" Y4 p% h4 N
?, v9 f5 V& G! m5 p+ \
#if __VER >= 15 // __BS_CHANGING_ENVIR
' u' _4 K( k) E& K! g- u F0 l9 ^
if( g_pPlayer ){
2 V* \" H1 l z F- b5 l0 n3 C
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
: Z: x( H' M. Y! M5 [3 S. }) W0 P
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
, T. Y" O, s0 B3 w2 R( Q) y
{
! b: E8 z3 H2 X6 b& {7 @# g9 e' i" K
if( pLight )
( H. f3 C" K& R$ Z/ k0 U
{
- E7 Q% Y5 H/ ~/ Q# `( C% O4 y) }7 k
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
( l' Y3 z4 i$ V3 F& U, B
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
8 a6 b' J; d) e4 n1 p
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
& d# x7 F: p( g
3 l1 D% g+ f3 g$ Y {4 W
pLight->Specular.r = 2.0f;
$ g' z0 g0 e0 H8 G
pLight->Specular.g = 2.0f;
' c+ T. f, ]: _: F9 a" H/ O
pLight->Specular.b = 2.0f;
0 Q2 S2 \8 ^- V2 n# U u
( h; w- i* Y0 b: o" u
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
" }# g# Y9 h- U! A4 _; R- p+ E& j
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
! x% G/ Z1 O$ C
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ u( \" K/ {* p2 t
# h' T7 k- _% r5 f
HookUpdateLight( pLight );
4 [- I1 ~, F$ b, [) ^- w, X
w1 G, O$ m' {) q6 P
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% [ d. B) i2 L2 b( m
+ d5 A2 l9 n4 _8 x0 ]! o
pLight->Diffuse.r *= 1.2f;
. k) Z$ ^* o9 b- A
pLight->Diffuse.g *= 1.2f;
7 ]6 ~% d8 }9 C
pLight->Diffuse.b *= 1.2f;
( }* E$ V# F: H0 D+ E, J7 L7 v- ~
* R4 N' {2 L B- |' E
pLight->Ambient.r *= 0.8f;
1 q9 o! {! F( V+ Z
pLight->Ambient.g *= 0.8f;
, |- R' M |2 T) c' ^8 m
pLight->Ambient.b *= 0.8f;
$ _( I" v6 b1 R$ W$ B
. A! w, F! t) v( V- I
memcpy( &m_light, pLight, sizeof( m_light ) );
% q% A9 k3 R" p4 D
) N" \* {, ]# Q3 N# C
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% \+ e/ D0 w# Q) W- p6 ]7 H, P7 R
D3DXVec3Normalize(&(vecSun),&(vecSun));
, K# h2 G) N! I5 w
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
0 J; l$ x8 F0 a0 t
pLight->Appear( m_pd3dDevice, TRUE );
1 C' x1 T8 I0 g/ I9 U
# F$ u6 e' U! X5 z. _$ N
DWORD dwR, dwG, dwB;
6 v3 o: n4 I! y/ {3 P/ ?
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ `* b+ S: z) S: J
dwG = (DWORD)( pLight->Ambient.g * 255 );
( J4 P/ I' K0 E3 w* c
dwB = (DWORD)( pLight->Ambient.b * 255 );
" m2 ^5 F, K- s' ~
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
8 J+ Q- `+ u' @" ^0 V6 F1 {
}
8 b# p. B+ f: d7 L* L4 z
}
8 [# e& r! [# n# E. _# J) ^5 p
}
' {# R# Y- Z! H0 w
else
6 e8 w( ^# M7 y: u
#endif
; v' _) ?4 `0 \/ O0 o& E
5 }2 l- j' t( d5 L( p
if( m_bIsIndoor )
! x& c- ]: `) m u
{
; R' C1 O) P* Z M) |
if( pLight )
X, S- @5 V% C% t7 a7 e! i
{
+ f7 y$ _( n! h- R# L
// à??μ oˉè*
8 i2 I' r& t: a& @7 F
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
- o* w) J1 g, R* S. X
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
- _6 E3 X9 @ y; n' K; a; e
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
d: K" C. T& S$ h. |; n# \
% G8 G6 M' `, w9 p8 i/ ~
// oˉè* ??à?
6 w% ^% o0 o( s
pLight->Specular.r = 1.0f;
# I$ ~8 M. C, T: u$ h# w1 i
pLight->Specular.g = 1.0f;
0 C* a3 Z4 {- q0 k
pLight->Specular.b = 1.0f;
7 S& n1 D. }3 A; Y: G7 Q
// àü?? oˉè*
: n7 f% K. H4 {9 G# I! ?/ T
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
! M, i3 ^$ d' p0 L( \
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
1 ^' _- I( s# H8 j" _ V |. @3 ~
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
1 b- D4 k3 d% ]2 c: b' |1 \
9 _9 [+ o1 k" x2 A" Z' h
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 `. N; L H# [$ C/ e P& A
{
% ]0 m9 T* H2 E2 p) p
pLight->Diffuse.r *= 0.6f;
# K/ i; \) C3 W& F! `4 ]5 X
pLight->Diffuse.g *= 0.6f;
4 X5 s K) L. m
pLight->Diffuse.b *= 0.6f;
+ ^7 ` U) ?2 F! `! J1 P* n- n
pLight->Ambient.r *= 0.7f;
1 q8 U* ~" x4 B7 l
pLight->Ambient.g *= 0.7f;
: `/ g& X+ N4 f$ _5 ^ @
pLight->Ambient.b *= 0.7f;
2 s" Z; { M. P6 H& I
}
6 y' H+ f) b. M( g1 b) @
5 Y+ j. U+ Q2 k0 p8 o$ Y8 K2 |
#if __VER >= 15 // __BS_CHANGING_ENVIR
- Z. {) M; p1 d. A k9 f
if( g_pPlayer )
3 h/ t. R$ o4 G& P( }
HookUpdateLight( pLight );
& |2 ~/ @( a. h7 U7 c) Y7 K
#endif
! Y3 u* F3 d0 j! ]7 {
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 e3 e" J1 r- f5 q# H" f
% D8 i0 V1 u& s1 v/ W
pLight->Diffuse.r += 0.1f;
% x$ |% }( |! \: v# F) I( h
pLight->Diffuse.g += 0.1f;
8 v7 h7 ?6 p- @) P* W) u
pLight->Diffuse.b += 0.1f;
q' g: U+ z0 d' E& I# J
// oˉè* ??à?
y, s3 u. x/ O0 Q# K7 F
pLight->Specular.r = 2.0f;
& M3 ~! m6 @( @. F. b9 A# Z/ P
pLight->Specular.g = 2.0f;
t- p. z3 @- H% v0 z C
pLight->Specular.b = 2.0f;
$ h2 v5 d& ^- O- _* Z, N; m
// á?oˉ
7 {- A o( A7 ]$ n0 C$ n
pLight->Ambient.r *= 0.9f;
" F' j4 J+ `5 C3 g; K P8 o( @: F. `4 |
pLight->Ambient.g *= 0.9f;
2 U1 y' |+ \! e1 I& b3 F" ]
pLight->Ambient.b *= 0.9f;
8 I9 P1 s3 V, w" {6 w" {7 f* R! ]/ \
5 f3 V1 ^! `" N7 q6 l3 S: o
memcpy( &m_light, pLight, sizeof( m_light ) );
# H% X* h# m% S7 H" F0 E" A
- c0 @' _! \/ [' b7 \
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
& z! R0 G3 b5 K
pLight->Appear( m_pd3dDevice, TRUE );
0 U, D: m, N3 ^/ s6 P1 |$ q, [) p
6 h3 H3 c# ?9 w
DWORD dwR, dwG, dwB;
' z& |7 @4 C* |* J; K8 J
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 G, z' q% T9 z/ X& {
dwG = (DWORD)( pLight->Ambient.g * 255 );
- I, h0 b% L9 H- f. d( J
dwB = (DWORD)( pLight->Ambient.b * 255 );
: J- X5 ]' k9 g! l: Q1 s
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
9 @% E& u! O( p1 T$ O4 I$ V
}
. R1 W V* d C2 U! r
}
1 f+ V, `9 G) m; ?) y" }
else
8 a* ^5 B7 f" I, H& K
{
/ t( J# @8 h1 U* o3 w: p9 w2 _
if( pLight )
2 y9 |1 e9 N: s/ A& i
{
" K/ z; G; [% h5 N( k
1 [( C7 k/ r$ z L, ^. T1 g
int nHour = 8, nMin = 0;
' W; V4 z9 B: N6 _) ^
#ifdef __CLIENT
- M) D! S( k# Z0 |, ?% U' B) Y
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
. x5 N! V, C- c* H
nHour = g_GameTimer.m_nHour;
. a- p0 I) r! E: W4 N6 M' H" p
nMin = g_GameTimer.m_nMin ;
: O! }2 d$ x# w
#else
0 u. s* T' F: G% f1 L/ f
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
, q$ N. f" T B4 J
if( m_nLightType == 1 )
, m' x# b3 ` `" Y& l8 J
nHour = m_nLightHour;
$ x; Z# b0 m( k' v& z' g$ e2 y' H7 _- i6 Z
#endif
# T7 v; O, f: K5 M. j+ Z# Y2 B
nHour--;
4 a3 N2 }; J2 \4 \( {' G* b) ~
if( nHour < 0 ) nHour = 0;
* |6 o! v0 y" k
if( nHour > 23 ) nHour = 23;
' a% Y2 K2 ?+ x6 n6 @5 Y. F
( B! j% P, P1 V" B. m
//if( m_bFixedHour )
6 G% x: v8 u" U: C& H
// nHour = m_nFixedHour, nMin = 0;
5 Z, A; w) @3 G8 y4 I/ l
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
& U9 ~$ L$ S9 F7 Q8 ]0 ~- U
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
7 g) ] \; J: _( d/ W# u' B
( u" u6 _+ Z! P/ b, ?
//m_lightColor = lightColorPrv;
: P- k' J v, u/ G- p
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
& L5 l; `+ @6 i S
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
K% X4 t1 X( i# h7 i
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
9 c6 u- d1 N1 R* r
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
: a! h0 [5 J. l$ B( E, m- |9 z
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
. B/ O5 c1 a1 r* F9 B: y
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
) R/ e/ U1 J6 ]2 V
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
. x( d1 {, ?& F$ o `8 Z/ }9 T) T
; l1 R5 Z& Y# B6 g4 T
// à??μ oˉè*
6 F- L6 g% }1 G& }; U
pLight->Diffuse.r = lightColorPrv.r1;
" ?9 X2 \* v& H# S3 D# f
pLight->Diffuse.g = lightColorPrv.g1;
9 W: E4 A, w4 C
pLight->Diffuse.b = lightColorPrv.b1;
" [. \1 z1 T7 b' d' h- v' A
// oˉè* ??à?
2 u$ s- S1 @9 X$ q& i: t4 ?' e: ?& Q
pLight->Specular.r = 1.0f;
4 j( Y0 {1 T9 Y
pLight->Specular.g = 1.0f;
* [% h& D% I% c- s! T
pLight->Specular.b = 1.0f;
' S4 _( q( |; A, f" y/ }
// àü?? oˉè*
1 T; G2 O& D4 v& I, W* U
pLight->Ambient.r = lightColorPrv.r2;
3 A5 _5 O2 B% h: `5 m: e2 g! ]/ e4 k
pLight->Ambient.g = lightColorPrv.g2;
i, z/ U! Y# C
pLight->Ambient.b = lightColorPrv.b2;
( n$ q, H. ]8 w( U. `$ d1 P
! v8 ]( x- c0 y7 o* X
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
Z7 t# u5 ]) s9 K- _7 k
{
) Q0 y8 P0 V% ?" b; ]. K# k
pLight->Diffuse.r *= 0.6f;
( ]/ [. `) O( U* @% i! f
pLight->Diffuse.g *= 0.6f;
" }% H) @7 Z- i8 ]* v
pLight->Diffuse.b *= 0.6f;
# a* D( _* [5 m: V1 F
pLight->Ambient.r *= 0.7f;
/ i9 D3 Q' X' w1 `
pLight->Ambient.g *= 0.7f;
9 u9 n6 Y6 ?2 M' W
pLight->Ambient.b *= 0.7f;
& A6 K9 _/ N% @8 b) c
}
4 z1 t8 G% a& b: [0 ]# C
, D+ m% X2 z3 d J& _( x4 p
#if __VER >= 15 // __BS_CHANGING_ENVIR
: C$ c$ |/ O- D- L: o, M8 x
if( g_pPlayer )
, @4 A. u+ x7 g
HookUpdateLight( pLight );
1 S, X1 [9 v, \. j8 Z0 d# `- A: H6 M9 U
#endif
4 k! m( W3 n% f7 \
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
L9 \, _8 [( S: H& w
, w* ?. u1 T/ b1 \ c0 y- N
#ifdef __YENV
8 x' i& X/ w; s$ ^% `3 v/ J4 q4 O4 h
pLight->Diffuse.r *= 1.1f;
1 T4 |5 P; Z; m0 c
pLight->Diffuse.g *= 1.1f;
( G/ `9 K! H' A f4 Z- `( S! Z
pLight->Diffuse.b *= 1.1f;
3 G! P" U: _) O4 Q" C
// oˉè* ??à?
' H+ a2 J% d9 y& v* @
pLight->Specular.r = 2.0f;
8 X; f& s1 o% V ^' h4 m1 q
pLight->Specular.g = 2.0f;
8 @* N4 b1 n0 @# i1 h0 ]$ d1 f) t
pLight->Specular.b = 2.0f;
: u/ c6 Z7 @8 l& s; l: [
// á?oˉ
* }9 k+ |. c E2 y
pLight->Ambient.r *= 1.0f;
* T5 y( ?3 X& q. r7 `
pLight->Ambient.g *= 1.0f;
1 [: X! d: Y. Z1 Y, J
pLight->Ambient.b *= 1.0f;
. O- H2 E9 {) W7 x' O7 j* x
#else //__YENV
) q* \/ ^/ n& p
pLight->Diffuse.r *= 1.1f;
. k. E7 e$ y* H( d. |; l
pLight->Diffuse.g *= 1.1f;
2 z8 Z* {1 W/ k, H
pLight->Diffuse.b *= 1.1f;
; H$ r3 A ~8 |8 @3 l0 a3 \. b
// oˉè* ??à?
; G7 m0 i! U% R% A7 @; X8 t
pLight->Specular.r = 2.0f;
& F! N1 L: c5 {& C
pLight->Specular.g = 2.0f;
5 x& ?+ j$ S, w- d! V0 j5 n
pLight->Specular.b = 2.0f;
' G- z! r( |3 E9 n
// á?oˉ
# j# K/ `9 y e$ \( i
pLight->Ambient.r *= 0.9f;
/ x: X5 u/ P% B$ }" A5 z ]/ ?
pLight->Ambient.g *= 0.9f;
* D" o1 N6 S0 l4 H- z
pLight->Ambient.b *= 0.9f;
+ h( P( q. a; ?: R3 a2 g
#endif //__YENV
. i8 `+ i! v7 z: D. Q
7 D+ n$ Z; a8 j0 G* ]$ S
memcpy( &m_light, pLight, sizeof( m_light ) );
) F6 c$ @- B J
W7 D1 ^: w4 M# e: r8 m* [
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
0 o+ x. E6 l1 m3 u
D3DXMATRIX matTemp;
& ~$ Q! R4 A1 v7 S
static const float CONS_VAL = 3.1415926f / 180.f;
) g, K; o0 C* g# g) u! R) H
; V) A2 Z: \' P! D
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
, {' J; f" x" K0 I% Y' q
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
8 x2 {$ ~) R* ]7 N3 w; C
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
, }8 |$ J7 F4 A
pLight->Appear( m_pd3dDevice, TRUE );
1 Z+ l1 q* M4 G5 r+ x- X+ y# [8 e
. u) r2 ?+ E1 r0 i: Q
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
m/ T2 y. E4 y5 ? S; Q
// D3DXVec3Normalize(&(vecSun),&(vecSun));
( J" H9 u5 T2 O9 J" Y
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
4 [+ a9 G7 }' g5 g, Y2 f1 M: n
8 ~" C- U: u* s4 N2 I) \( _
DWORD dwR, dwG, dwB;
, I& D9 }5 D S. O9 V# X9 _
dwR = (DWORD)( pLight->Ambient.r * 255 );
! v' @% A' a5 C1 X5 N6 {7 F+ R
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 S+ W8 Y; V0 x) \
dwB = (DWORD)( pLight->Ambient.b * 255 );
; ]' }& S( k9 I% N. Y: p: y! k
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
9 z0 A8 ]4 v: ?
}
! y' T. @7 m. N/ U7 l, D, Y
}
( o/ [. N. D% V9 A" N
3 `, v. K5 s u; q3 D* N
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
. n" |+ }( C/ b% J. l
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) );
# q2 V9 L& O) X) H8 N/ e$ y
::SetLight( bLight );
, Q3 ^# e1 P4 e) l
/ I0 L/ p0 E% C
// ±ao? ?D?í???ó á¤à?
2 Q0 |3 c V* k% N& M& Z! H6 z
m_pd3dDevice->SetMaterial( &m_baseMaterial );
! W: l7 y) b; o' }- t" x% r
% x+ H; o- V8 `5 y# g( W# }6 o1 P, l* T
#endif // not WORLDSERVER
/ E2 R K( r- Z2 y' a0 i
}
* Q6 ^1 l B' O* z% _5 B4 _
并更换
9 A/ B9 x2 f) D
Code:
! @1 Z0 X) y8 f, E
__FLYFF_INITPAGE_EXT
" Y1 q4 ?* [( g a4 s2 v. a0 N) a
定义
' J( [/ K& e, ~
: c+ ] n" {3 @5 p5 D/ J
. ]* Y: M0 f9 s$ p6 @! v g" U
, j1 @* R; r1 d( T* Q
" \6 a4 V6 I' W1 J$ a6 F1 {
现在终于删除我的狗屁加速...
7 N( C5 d6 N( g$ s5 i" V
" o* R, c! f M
, Y/ ?- U2 b7 i* A* R. `7 n
2 a9 A. d8 Z0 j9 d3 `% ~
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2