飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
7 \: u: V7 o) @" |, P# D# j
尾翼:
# @2 z4 t( f+ b F( B8 X
* c0 u, z2 J9 ?, H+ r h
代码:
2 D9 G3 C* ~/ C) r5 n C, N' O7 T
CWndAutoFood::CWndAutoFood()
& t& n+ y/ ^- f
{
7 |7 T4 s, D# H5 d, z5 \2 |+ b* _
m_pItemElem = NULL;
& b1 a' }3 s# g3 ?! T$ o
m_pTexture = NULL;
$ s' f" j$ k6 R! b5 i2 _1 Z
bStart = FALSE;
; L& b/ f1 y* C o) C$ }. R
}
2 E' e5 |; j1 v! A; w1 k5 r5 L
6 g) E( u2 t( c0 W8 Z) \
CWndAutoFood::~CWndAutoFood()
& g3 v2 ^: I3 w: H- V
{
5 A+ ?- c* }8 t2 L* m8 ]! i- K
AfxMessageBox( "AutoFood ist gestorben
" );
4 Q8 n; f' s1 J" z7 p
}
; z8 L0 l2 u u; x) ^- S
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
1 {% J: J, B0 o' _" m/ i
{
; ?8 h: L! ~8 U; `
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
3 g% t/ q* u9 X, l! {8 W+ x
}
4 c) q0 G9 `: m2 q2 k# w
) i B1 e! L+ D, C8 R
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
1 K" s& @$ h: z( t, l6 p
{
& _4 H6 ]5 @# v* L, H2 ^$ G4 ^0 E; _
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! Q D: p6 s$ A( d+ ]7 z
CRect rect = pWndCtrl->rect;
- P8 J) a; H+ k% ^
if( rect && rect.PtInRect( point ) )
- b) s6 B( h, ?, w }* }7 ~4 U
{
, ]7 {6 [0 y0 V0 n
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
' ^4 N6 a+ a; Q/ a9 V' b" Q
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 z$ j* p- |. r
{
- x+ h0 W1 f* H* c( a3 T
if( m_pItemElem )
0 Z n- R% w6 F5 @" z
{
+ {; c! J+ J! b' R. w5 f
m_pItemElem = NULL;
- ~) c4 e+ g" x; a% B7 e
}
7 S0 R* w0 i; Y x: C
m_pItemElem = pItemElem;
9 ^$ R5 A8 I$ _! t+ Q# m! ^5 I. ]% g
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
1 s4 z# \. e- S8 u% R6 r
}else{
% Y O; T1 J3 R* h, S
SetForbid( TRUE );
5 ?* i+ W" u! E
}
Q/ ?( p! e. r! J
}else{
% ]/ Q4 H2 \# L9 {
SetForbid( TRUE );
0 o& v' h m" O" R( Q- C9 u
}
6 h8 s6 i: h+ g5 M
return TRUE;
9 N2 h( w E) O/ a
}
6 F, C; p% n/ t+ @* O
( x& K* O& Z ~1 ]6 u$ G$ m* ]
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
+ r; ], e4 i6 T, ~0 k! `0 }
{
* d' W5 X7 p1 C. C# O, z
switch( nID )
# \8 Z s4 J/ ?
{
2 ]& |/ Y; A( `. G
case WIDC_BUTTON3:
$ q' ]1 k2 D z
{
, m. C& ~5 y. S. l/ X- Y: J c4 k
bStart = TRUE;
: g2 Y' n& E7 w8 L7 T$ P' J4 U
break;
# I+ t6 j2 ?0 ^
}
7 y ~: E9 M( @# A' C r
case WIDC_BUTTON4:
( n" H6 V7 @, Z- W( r. B
{
( K& x9 e/ f' W
bStart = FALSE;
% J r$ d# I$ {8 l+ W4 d0 S* G4 D
break;
4 s) ^ }; R0 z$ C! t
}
+ F# l! E. Z' o0 l
}
Y) f2 I* ?# Q: a& I
return CWndNeuz::OnChildNotify( message, nID, pLResult );
- Z" c0 d0 U* y( Y
}
% ^/ [- M+ ]0 |! s+ T2 s
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
- a ^6 ?6 P" F% u5 d
{
# c, l2 e$ Q1 Q: c: @6 [
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
( t! \! Y5 z" O' l8 k+ k4 n& E8 Q; h
if( bStart || !m_pItemElem )
- Q& ^$ l9 g/ V: A+ w( b# m
{
9 `9 T% J1 \2 X, m! a, s: A
pBtn->EnableWindow( FALSE );
% _% Y. l& |$ W' i. T7 D5 U
}else
4 D/ o4 h M' ]& X5 t) ?! i
pBtn->EnableWindow( TRUE );
3 U: m" G+ l H1 G2 n+ f
if( m_pTexture )
# X# h' H1 H) Q7 R3 B4 M5 A
{
0 M+ {# S! P7 w/ |4 ^
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& n X) Z' g$ o$ r! o( z
if( wndCtrl && wndCtrl->rect )
5 z5 O$ g9 ~0 r5 I7 J% [( Q
{
+ J9 E1 Y* C! A
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
, H2 Z8 C9 l( a6 l$ j
}
4 |; m7 L, }/ Y0 L" r
}
) ~ D3 O+ m: ^/ P! k: f
}
4 r1 z9 Z3 P+ u5 N
" q' Z) }6 L# X' c4 x( E- F
BOOL CWndAutoFood:
rocess()
$ O& M( M* W) T5 y5 w
{
_ R+ ?$ u) T7 O$ [
if( bStart )
: _3 T' `; B0 ]6 f% x6 G
{
7 _4 M. ^( _" n
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
, X" n) a+ E3 K+ j& x
{
$ ?6 l, `* ~4 K$ { p2 u# T k
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 ?% K t* v" R2 h
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
8 r8 b, ^3 U9 G# f% ?) d$ g
}else{
# C& r. _; }# P' R8 w
bStart = FALSE;
- f( D9 m) h1 g+ v1 ?3 f q- _, K
m_pItemElem = NULL;
P# ]7 H0 B- X( O$ C D% [# N% V
}
: h' P! f; `* V- y; w$ X( `
}
- F( b$ h+ f" s7 J' ^! ?0 r" A
return TRUE;
+ ]/ j" M+ O- K- ]9 q/ D+ E5 _4 V
}
( [* ^9 _; m, _# M' { L8 p
, J1 \. R K! p: G
登录视频废话:
! F1 J: ^3 h) ]3 T. |
尾翼:
0 w; G: _) n# o# V: }
$ p" {( h) s& c9 {" A% V
代码:
( Z+ t; s8 T i5 ?$ s
8 J m8 s. z2 J1 Y4 H
void CWorld::SetLight( BOOL bLight )
) L# ^6 q4 `( c- ?: a" D" o3 w
durch
5 h& z" s1 {+ g1 g3 K+ f3 e c
Code:
0 T% G5 O$ S4 {6 [$ [; y
void CWorld::SetLight( BOOL bLight )
& S7 r5 \9 A/ y) c8 n# ]4 I
{
. Y: E) x! e$ f1 N
//ACE("SetLight %d \n", bLight);
. O7 R6 Z. j% ]$ f# Y: g7 e
$ {9 G+ ?! e! N" [7 o/ k9 j
#ifndef __WORLDSERVER
v3 b2 E6 p8 V, o5 L
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
4 F, J; _ O8 ?" {
CLight* pLight = NULL;
0 o% ^, e: y' f' s/ Y
4 c9 k. f$ M( O8 g0 e2 j
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
y; f$ n- t. m$ |5 M2 ]
7 U8 K) r3 @, f e
pLight = GetLight( "direction" );
( v1 S, R% X0 A- ?8 P2 A: e; {6 A4 b( p
+ m$ d2 U8 |; p2 k# @
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 l4 T- }5 j7 ]6 t5 ?
if( g_pPlayer ){
5 w' M* s% y, w5 U$ z1 H8 ]
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
# @: d4 Z5 R# R4 u6 |6 U
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
. ^: i2 [: J4 M' k
{
7 g, N9 x7 k7 p2 y O
if( pLight )
3 n N* } Z& [ R
{
! C+ Z6 O$ |3 L" U) E
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
8 w. T6 H2 X5 W8 }$ m# G
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
+ n: T9 \ N1 l. W
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
( D3 m8 x" S! Z. ~7 a1 [
3 W+ ?# u$ c" f. e; R3 ?! P) }
pLight->Specular.r = 2.0f;
8 Z6 `- E3 Y" a
pLight->Specular.g = 2.0f;
6 z6 [* D+ _) l. i) m
pLight->Specular.b = 2.0f;
5 i( n% y2 E9 R( f4 _# h
3 o# \4 b: V- p8 j
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
" w& s, g3 n+ T; M
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
: ~3 B7 Q& q0 K- C1 j6 J4 y% L5 J
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
! a+ B6 }' @7 i' f
+ {0 L4 O/ @6 Q- c/ ?: f
HookUpdateLight( pLight );
7 W7 ?8 y: ?$ j$ r3 W% B# i- Y
+ l$ s3 k4 Z* O( I$ D. ?8 n$ J1 A
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: e! r+ f$ I+ m, c: U m1 G/ D
2 o9 v" s/ q8 k/ S
pLight->Diffuse.r *= 1.2f;
& o$ {9 J; d: z
pLight->Diffuse.g *= 1.2f;
& K( q9 F7 `& \/ O9 c
pLight->Diffuse.b *= 1.2f;
% L2 p$ o5 A5 q
! t2 Y2 G' E4 |1 |- p
pLight->Ambient.r *= 0.8f;
; P6 ?2 c1 I& R% K4 O, U5 _
pLight->Ambient.g *= 0.8f;
: w! R( w* ^5 E# R0 S- |5 Q. Z
pLight->Ambient.b *= 0.8f;
# n# ^+ [1 {% ]* ^& Q
$ i- p* V9 A4 n* O( b' p
memcpy( &m_light, pLight, sizeof( m_light ) );
6 i; V! N9 A9 ?0 D( I8 M
) Z- c/ ~# d5 ^# J
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
6 p" i7 w% R- {, R& U
D3DXVec3Normalize(&(vecSun),&(vecSun));
3 p# R$ K) B5 e; S e r
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! a$ e# v( k* Q' y
pLight->Appear( m_pd3dDevice, TRUE );
0 D; N) v$ y( K* v$ \3 Z. A( }9 {
+ `4 w0 N3 Z9 d' \3 {" e
DWORD dwR, dwG, dwB;
P1 x( A- ^- ^: F+ ]
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ I1 A5 `, Q1 s
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 P; a9 B" T0 E3 O- h8 y6 N# Q
dwB = (DWORD)( pLight->Ambient.b * 255 );
% _8 J6 s1 v' ?1 L( ], n$ h
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- G0 I. s' @. \
}
/ f8 |" a- p, {5 E+ H
}
! z. L# I, M, l4 F4 A7 s* S3 j
}
e9 G; p9 Y& P8 A D" L, q# q
else
3 s+ ^+ J* n+ `/ E1 n
#endif
' x! V$ G6 T6 q. U& M
; |& g& v- u, W* j" C
if( m_bIsIndoor )
0 \! n6 T7 x' C% A
{
. Z, z/ n/ G9 u W+ S
if( pLight )
! ^2 p: t6 z) x
{
, U9 {+ l' N* u! h
// à??μ oˉè*
# d; F% o: \, r8 N, q& ?: E
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
: N" [# G {! k5 K* {, S6 M
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
. B. H: e+ p. E2 F v
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
5 v. r5 ~0 z; s7 A/ ~, p: q% N
3 P$ J, |3 i5 X6 Y( |4 Q% d, |
// oˉè* ??à?
4 x+ `5 K' S) Z! k. _
pLight->Specular.r = 1.0f;
9 b, \# U* g0 J4 m5 _
pLight->Specular.g = 1.0f;
4 `$ U$ Q7 R" V
pLight->Specular.b = 1.0f;
+ X* J- { ]& \# h1 ?
// àü?? oˉè*
. l) k+ Y$ I) J$ t, P* q4 E. O9 N
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
/ Q7 U. U$ ?, J$ G5 [
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
0 w/ P% ~2 L0 x# o7 {
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
$ h, _: Y8 W# v" ~
2 }( X1 o: c- P5 _2 C6 ]3 b. }4 v
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
$ l9 J7 j, m" s* U0 O$ r2 E
{
5 X7 v$ d8 x$ m6 M8 e9 D# y
pLight->Diffuse.r *= 0.6f;
b2 Y, u2 d, l" c
pLight->Diffuse.g *= 0.6f;
8 E0 l& g. B6 m7 h
pLight->Diffuse.b *= 0.6f;
# @! Z, m$ j3 Z8 r8 a& ?: R" M
pLight->Ambient.r *= 0.7f;
$ R0 p/ _& H0 B4 C& c- G5 f
pLight->Ambient.g *= 0.7f;
8 X, ?$ L8 f0 V
pLight->Ambient.b *= 0.7f;
! C9 t& m) X9 e3 D6 ^; Z ~
}
" i5 j8 ] r0 y; S/ ~+ F* r
: J2 _8 {. R: z- G! I5 c
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ _; S4 X3 R* b1 i5 ~
if( g_pPlayer )
+ l2 F- S: ~* n2 v1 B
HookUpdateLight( pLight );
! U' B; P( ~6 @4 P C7 X
#endif
& c* h1 k9 Q% P) K$ N: n% O
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
, Q k8 g! M4 o- T9 x; x6 {
2 C5 c2 W8 J/ A5 r+ _" m! s
pLight->Diffuse.r += 0.1f;
$ Q9 e* G) y7 R# x2 A1 r" b
pLight->Diffuse.g += 0.1f;
) w/ I$ L$ N2 ?: R
pLight->Diffuse.b += 0.1f;
$ y9 @9 H A6 p9 y
// oˉè* ??à?
K" N( X$ N$ a, B
pLight->Specular.r = 2.0f;
! _: D4 l# I [
pLight->Specular.g = 2.0f;
r2 q$ O' v: F/ o6 r
pLight->Specular.b = 2.0f;
; b; U- ~( U6 k* u/ ~$ o
// á?oˉ
: d7 r( @: L0 a* O; }9 P
pLight->Ambient.r *= 0.9f;
. F/ B- J0 u% b; w$ ^* m1 I) h
pLight->Ambient.g *= 0.9f;
( T6 t* ?6 q1 }) M9 l: g, T% d
pLight->Ambient.b *= 0.9f;
. }- E: a8 s; E C$ |
! c2 B* P& n# i: R$ h @, k7 s5 |
memcpy( &m_light, pLight, sizeof( m_light ) );
) \/ p7 \) T# j a7 Z
: c5 p2 s* J1 g( q
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
/ X" y1 z, N9 E& c" j* ^
pLight->Appear( m_pd3dDevice, TRUE );
+ L1 [& M- c& i+ y* |+ m9 a
- f7 k$ C, F! j. t8 D
DWORD dwR, dwG, dwB;
1 q+ Q9 O7 \: r3 I8 g
dwR = (DWORD)( pLight->Ambient.r * 255 );
- t8 a1 i& r* `: g. f, x$ m4 I
dwG = (DWORD)( pLight->Ambient.g * 255 );
( O+ V) K) ?+ l) S
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 ~. I" y" [; w( U1 X* Q) Y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" m: ~1 A, b4 ]! z
}
5 M0 G" \/ U9 R8 F' }
}
& P& q, Q& h! {
else
" W2 E: ^. v4 N6 Q8 q6 \! U" z
{
9 [) r! n: g D0 k$ i7 Y0 K( b5 N
if( pLight )
4 m1 W& t! h$ s" l+ ]! A
{
, I; Y+ g: I, Y6 C- G- V! o5 ]( i
- W* w F4 e- M/ _4 e
int nHour = 8, nMin = 0;
/ x% Z C' ^- s$ {# q* _
#ifdef __CLIENT
$ K/ X. V8 a: ^5 r W. {" G* p6 \- n1 N
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
J& c# L" D2 Z" s. c7 |# ?9 \% ^/ T& O
nHour = g_GameTimer.m_nHour;
' l9 O1 E: e5 }
nMin = g_GameTimer.m_nMin ;
& U. p) V0 h# l. E
#else
% I& {8 w) @8 z# g( g$ P- b0 Q1 m
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
" ]' j# K2 C' M) Z, L
if( m_nLightType == 1 )
% m9 c4 [# d" P' M$ S
nHour = m_nLightHour;
3 [% E/ `1 b/ c
#endif
/ q, Z% X: p, I
nHour--;
( E0 o# l8 R' Z0 w t. G
if( nHour < 0 ) nHour = 0;
2 c9 l/ ~2 y" C. m5 q& ` N
if( nHour > 23 ) nHour = 23;
) v! c: s8 k; k: l9 R6 h9 N1 O
! G) U3 D( B- u6 ?, e; @, s
//if( m_bFixedHour )
/ E5 N$ D6 `: q2 N. |: n' X
// nHour = m_nFixedHour, nMin = 0;
! Z9 E' v5 u2 R7 B
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
# T) ?6 `: g' [2 `3 ?: {
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
2 ^$ ^1 n, i2 ]$ H- I
4 k6 }! p0 T" s: r% |# t
//m_lightColor = lightColorPrv;
% M0 D) q. V" g2 J7 ?; A
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
5 G2 w! o& H. v: Z3 U$ Q3 Q
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
( I" v; p1 W4 C1 K9 E$ K4 c6 u4 @
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
' m# V( o; g/ w. y+ A5 y% z
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
0 }. C" C4 a1 w' I6 G
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
/ U/ b# M& ?7 C5 k5 }# R4 G
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
2 s9 K% ~7 d3 N2 }! C+ z5 h
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
. }5 g$ `; Y" M" w/ @" r
7 l% d! w( G! X b: T& x1 {
// à??μ oˉè*
& F+ v' @! R8 V1 o- N- ]( D- i
pLight->Diffuse.r = lightColorPrv.r1;
) y* n k3 g! m. D
pLight->Diffuse.g = lightColorPrv.g1;
5 ?+ I( A1 s+ v. h. D% T* \& u& g
pLight->Diffuse.b = lightColorPrv.b1;
1 m0 z- M0 d# j7 s- Q
// oˉè* ??à?
+ K1 f& D6 h: C+ o" {1 F- i
pLight->Specular.r = 1.0f;
9 O0 N0 o$ a4 }2 |* s
pLight->Specular.g = 1.0f;
, Q$ I/ V; q2 v+ f
pLight->Specular.b = 1.0f;
8 m8 U8 t7 g- x5 \' a; T8 i
// àü?? oˉè*
, t: W K [$ B8 A
pLight->Ambient.r = lightColorPrv.r2;
4 M: M6 ]- D8 @, i; @
pLight->Ambient.g = lightColorPrv.g2;
/ Z. T6 h6 l- P
pLight->Ambient.b = lightColorPrv.b2;
, b1 ?) F" L2 p' c
3 \# G7 E6 F! o N' G
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
6 @; O& o5 A$ V* p& z9 J! C' Z; f
{
5 I" z6 [0 {9 n( D+ Q5 H" v
pLight->Diffuse.r *= 0.6f;
3 J( } V: \' _9 h+ x
pLight->Diffuse.g *= 0.6f;
- p: |/ i c/ U
pLight->Diffuse.b *= 0.6f;
& k+ _8 R% P+ o" ]: b" {
pLight->Ambient.r *= 0.7f;
' d) i+ M2 d0 c! v1 y0 I
pLight->Ambient.g *= 0.7f;
( x2 d8 Z M r b" L% R& P3 g
pLight->Ambient.b *= 0.7f;
9 `. c" ~" }+ B) {9 @
}
0 b' {- ]6 F3 X! x
6 _; z# U; s2 j8 q9 P' ^2 r) P
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ t1 p0 [5 K, |# E2 L/ o
if( g_pPlayer )
" F; w! f9 s2 J
HookUpdateLight( pLight );
" I( N1 Z+ A1 f$ E1 B) p2 q
#endif
9 }4 g4 T+ {( w) [( _
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
G" y0 b8 X4 U" ]# r* ~
( Y! u. A9 S& w% d5 Z; s
#ifdef __YENV
9 R, m$ n5 R+ d* { p* M9 @
pLight->Diffuse.r *= 1.1f;
/ T& T3 l) P& `# [$ n
pLight->Diffuse.g *= 1.1f;
( l' b) H7 e1 ]
pLight->Diffuse.b *= 1.1f;
6 j5 t- B! P9 U! z
// oˉè* ??à?
$ M- L! ~+ u9 Z) e) z
pLight->Specular.r = 2.0f;
3 m, [ s4 |- ~1 {* Y6 M, y. _
pLight->Specular.g = 2.0f;
- l- |' |, d( s9 A H
pLight->Specular.b = 2.0f;
7 m8 x# X( z" c# o3 F
// á?oˉ
% ~" g5 @7 o! u; d+ E$ }/ F1 g
pLight->Ambient.r *= 1.0f;
$ F H' g$ D- g5 e( |! f
pLight->Ambient.g *= 1.0f;
, F9 |8 ]0 m0 ~/ F1 l2 f
pLight->Ambient.b *= 1.0f;
9 J6 u& i3 v6 F) I1 [) S& V: E3 D, i
#else //__YENV
% X: c& A& q) I8 ~
pLight->Diffuse.r *= 1.1f;
& R# U1 z; F D, F
pLight->Diffuse.g *= 1.1f;
& m, B! b/ _4 R1 k
pLight->Diffuse.b *= 1.1f;
0 }* I6 M9 T! o; V
// oˉè* ??à?
) d. }8 j4 U3 m3 I
pLight->Specular.r = 2.0f;
1 w0 \0 v( @+ ]2 ]) h2 z- @
pLight->Specular.g = 2.0f;
. ^% H2 G7 [/ S# d* {* w0 w" h' Z
pLight->Specular.b = 2.0f;
2 b% m4 |1 }4 P( w( ~3 g; t
// á?oˉ
' S/ Y9 _7 [1 ?3 J$ o8 Y! m% V$ a
pLight->Ambient.r *= 0.9f;
- p/ S4 o# T+ u) f
pLight->Ambient.g *= 0.9f;
( y9 @5 z3 Z5 f( D, A( A0 R' y2 ?
pLight->Ambient.b *= 0.9f;
; J7 Y, h+ S5 K* E- [# k
#endif //__YENV
/ J5 W# }* S9 q) h" D/ P8 |
' }; o$ }- Z( U+ v. z# j
memcpy( &m_light, pLight, sizeof( m_light ) );
/ Q& p' h, F" C* T
/ w$ j; P4 R- }5 p7 p6 E
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
9 p0 I$ j( Z9 E0 P U" {
D3DXMATRIX matTemp;
& {% X! \; E9 r- Q( L
static const float CONS_VAL = 3.1415926f / 180.f;
' Q( f% }1 b$ S3 n
$ ]. \: f/ k1 S: e, F, r3 n# {0 D
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
2 W9 R7 m G) z5 p) t# o d5 ~, c
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
) j- @: t b" V ?
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
4 b) N$ R* ?& Q) H3 o
pLight->Appear( m_pd3dDevice, TRUE );
. ~- M$ s/ F* n
' h/ T `: \" K# \. G# I2 r
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" M; F* d) A) V! P: I
// D3DXVec3Normalize(&(vecSun),&(vecSun));
% O$ H! l. \+ |+ b, z0 e- o$ A
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# P& P8 t9 b; t+ q$ P* m
& v! z: _' A8 z8 `
DWORD dwR, dwG, dwB;
1 \8 G8 m+ f$ R# Z) r9 h3 g
dwR = (DWORD)( pLight->Ambient.r * 255 );
. W& o% z/ k2 z7 U' j7 c
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 @7 [; a$ h' L2 g
dwB = (DWORD)( pLight->Ambient.b * 255 );
6 w$ C9 J3 C+ F) W# n
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# R2 w1 j( U0 d* ?3 H7 C4 I: Q
}
( N3 j* D1 b1 f
}
# p* S* n' b, g+ b1 @& `$ o
; o; Z' n( n# c+ j
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
( J- M$ Z5 }, S
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) );
: k6 e. P" J% ^% p& }3 Q
::SetLight( bLight );
% A$ x, R% E6 l2 x
' B! M, B$ v% t) [7 c3 @" T
// ±ao? ?D?í???ó á¤à?
& i: R Q: C+ D$ k: W7 F: D+ g7 j4 m( f
m_pd3dDevice->SetMaterial( &m_baseMaterial );
' Q" _ I8 j' \. |" X$ N T. y
( I2 Z* [5 R5 H: d! S3 y" F
#endif // not WORLDSERVER
+ t2 L; ^- n- s) E9 i* q9 h
}
' ^5 P) y* p0 f+ p# _. f
并更换
4 g) c2 Q0 W4 U3 m9 \
Code:
+ a Q T% I1 I) @/ l9 t9 D
__FLYFF_INITPAGE_EXT
1 {: x7 b, C" g/ n4 _5 z/ N% J
定义
& e' ^& n: ~* d* s5 }$ h
. w% Q! x7 o/ h/ l: a
u9 t3 L& W& H. `. e6 ^: z4 A' m, _3 j
! R3 \4 f% K: X4 D- X
+ N3 k- v( p! R" V9 Z: W; C
现在终于删除我的狗屁加速...
0 j3 w. F2 R1 w+ s1 g2 n3 f9 {5 q
+ Z% i7 X7 q1 n. n& i# G; ~% {
- F6 M3 m) K j5 X/ [) @# o
1 _ H8 B: C# y c. d+ `: F8 v
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2