飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
; c, c! e# z. N6 d
尾翼:
" N. @9 H- P s# K+ x0 d
1 B; c& y. z* o0 ^$ v
代码:
& H5 y$ b+ x' M4 u2 }6 {; i
CWndAutoFood::CWndAutoFood()
2 y7 S, o0 U8 x! W+ s2 A
{
# X0 G+ _) O' l
m_pItemElem = NULL;
/ v Q/ c, E- `8 M+ S
m_pTexture = NULL;
+ S4 U0 U% V+ X8 V; r m6 U
bStart = FALSE;
- D. A+ b9 I1 a3 N @' p1 K6 E1 [
}
+ s1 Q+ ~. |. t) `# o* m I% \
6 c' G$ B0 P0 p1 P- M [, w1 X: s
CWndAutoFood::~CWndAutoFood()
, Y4 Y/ U. K! [# K! x
{
/ S ], ?2 w% S& c5 H a
AfxMessageBox( "AutoFood ist gestorben
" );
+ K$ Q+ k. @# a" U
}
; M3 h) d: i ~. w- A
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
! F: M' E4 _( @8 r4 P
{
5 R/ N8 H, [( C' |0 Y4 X
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
/ {, ] R: Z/ ~2 h
}
/ C: X" C- T$ V e( s1 ?" J
4 W% Z3 w' C6 g8 t8 X+ f
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
0 g: Y$ d& J5 O% z0 Q
{
* d% f; K+ Z* [7 E! W
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
6 ?0 s! [9 `. L% I* G( R$ c2 C0 \
CRect rect = pWndCtrl->rect;
5 W8 C! h, x/ a" G( v1 s2 d, s; `
if( rect && rect.PtInRect( point ) )
$ c0 r3 |+ G4 D9 Z: ~1 A
{
3 e7 f/ l8 r( ~4 P% |% |: @( I$ z! h
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
3 N0 B2 {/ g- E9 J- R$ a7 k
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
+ v. E# z2 x# ]& N1 Y7 X* d
{
4 r& ^6 ]( d$ d1 e$ c/ G& o3 r* ?
if( m_pItemElem )
/ y2 h9 ?$ [% J6 A
{
# _1 e0 \ ~+ b# L# y9 W8 C1 U8 Q
m_pItemElem = NULL;
+ w: b% j4 ]1 |
}
m0 h$ F% o3 ]/ S, R3 z
m_pItemElem = pItemElem;
( F1 Z7 o7 E/ p$ E c; r# C
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
% f+ d* C6 k* d: L% H0 [) k K
}else{
9 S- v, r; i; ~7 U" M4 N
SetForbid( TRUE );
' H/ x5 w$ G ^. A8 y! e! [5 A2 B1 P
}
. P0 |* m/ d0 }. @6 O
}else{
1 m) L, Y, L8 }; n4 G
SetForbid( TRUE );
; x$ k' ~, [9 T" k& K( o( M+ K' y
}
: ]$ \# g7 {7 B% _( l* {2 W
return TRUE;
; O4 i$ N9 p" _% `* O3 d4 _
}
) i- W! A* W) y- `
9 k$ o) q4 Y3 _ m# s9 B B
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
% J9 A! g. e. | N# Y
{
* w2 G& s4 X0 j) ]$ X% n
switch( nID )
. B: r9 u/ i8 z: K* G v8 @ p1 f
{
2 q* N2 r) P# C% `3 `* ~0 q
case WIDC_BUTTON3:
: M4 k& ?; l6 Y* I: z: K
{
8 X4 M* H( u9 I% ?" C
bStart = TRUE;
* a# p# u! v+ h3 w% B; d
break;
9 p+ I) m3 j T% Z8 i
}
" d) ]- p8 l# V6 d" m Y0 U
case WIDC_BUTTON4:
( P! I# u; W9 `7 g
{
9 U( R. x2 [+ l( y# N1 S
bStart = FALSE;
" q6 f s/ a7 z% f- {; X# p
break;
$ N: k. p/ H" }7 V1 Q$ S: A
}
6 d: l# H9 ^% q" t
}
8 n! t7 t+ Q3 A: I. s3 r; g2 P5 N% Q
return CWndNeuz::OnChildNotify( message, nID, pLResult );
7 K$ |# z) ~/ t: k- v
}
" x' z$ E7 u2 H! X8 I9 C
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
3 V2 M* S! t# [4 D5 E
{
& d2 a6 m! s: ~: @1 W
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
( _9 s! [; f# Q) B
if( bStart || !m_pItemElem )
* H- `: G# c# o6 @2 C4 T
{
8 {* s$ `* y5 h) E6 S
pBtn->EnableWindow( FALSE );
" S3 x; ^1 g3 G+ x$ [) O
}else
1 |+ j: C1 X% ~( e; N5 O. F
pBtn->EnableWindow( TRUE );
J' B& d+ b# `" s3 J
if( m_pTexture )
: M% K. W4 ~1 M% D7 a" D* M
{
/ Q, b9 P; P, F) J
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' [9 F+ }9 {/ D8 D9 C0 `5 e
if( wndCtrl && wndCtrl->rect )
' d$ J( h6 l8 s4 E" j
{
, W6 |( o8 W( \: R! ~
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
# X& E2 I+ x( K1 w7 ], B- }- u
}
: Q" ?5 |+ y7 x; J$ Q, D* l9 x- R
}
/ ?4 O9 {; G4 L
}
) \ x4 X+ }4 n+ n2 K
5 U( v0 Q! [& D; a" L$ b/ V
BOOL CWndAutoFood:
rocess()
8 \0 [# h s U. a) }) l% _
{
, C$ }! L Y7 y: B$ @; v
if( bStart )
5 J/ B. G9 o% t1 y4 v
{
! O2 L' J( p% V1 |9 E& l
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
* P! Y" T: U: r6 x; E2 m
{
5 I$ Q. w8 n0 u* q Q4 t3 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() )
6 n( I* f. F; Z8 `3 `# T
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
9 R8 y& c5 z' g
}else{
7 P* O" T* D h! m( j
bStart = FALSE;
" ?: F& C1 ]. ^5 ^( T+ N' x
m_pItemElem = NULL;
0 s M7 Q: F% a
}
" b1 a3 q. N* U/ F4 w& |' e
}
7 t, {6 x. U6 D, i6 m, |
return TRUE;
3 t4 _! O$ t% d
}
* e9 v- ?3 k8 i$ G( y, R5 J
( g' Q& ^7 v% h- \* r4 A8 i
登录视频废话:
& @9 q- C3 U w8 M- h4 G
尾翼:
8 w3 a7 N8 f0 g2 P+ D- A
: ]6 S9 E; R A' k, ]3 V
代码:
% c( M z* {8 a1 s5 ~
0 b' J0 g$ C6 c
void CWorld::SetLight( BOOL bLight )
! o2 O: T h. \0 Q
durch
1 w, Y, f& V0 l
Code:
. t: m" t; q! v0 g" K
void CWorld::SetLight( BOOL bLight )
) q+ x( X; j9 p: M# v8 C
{
0 G3 w; }+ V& t& }: M; J8 e, F s
//ACE("SetLight %d \n", bLight);
0 K8 [9 Q% m2 t ~3 F7 u
, x& G9 }4 |0 Y2 W6 v1 B# }; }
#ifndef __WORLDSERVER
2 A! E# N, N2 Q2 ]
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
+ c. s, L% u: r; Y
CLight* pLight = NULL;
' f2 l+ L7 b1 \0 {, z3 N. ~
' M" x* R, [/ I% P9 M! R+ Z- q
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
$ z$ ~" J7 y/ q: `( L% O @
- O. A/ t" _: x$ S8 b+ V/ F$ d
pLight = GetLight( "direction" );
( {/ y) x+ L* E& ^/ z+ Q r
( y. T6 _7 q( u
#if __VER >= 15 // __BS_CHANGING_ENVIR
" B( e- Z8 A; G" y: _
if( g_pPlayer ){
' e, o5 Q! s0 j$ g: Z; K
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
# K* G! x; A5 q6 t
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
, I0 l6 b7 W2 }4 b$ ]
{
5 b. T& \ o) y0 t9 E1 R* i
if( pLight )
% H I2 U6 i% q5 J1 C
{
7 r E7 l n" d* B# [9 Y
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
5 E0 E0 a4 E: D8 D8 M& f1 `
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
& l# g: B+ { @0 j
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
: M8 G1 ^ \0 b( h, K* U1 ~. l
/ C; w f5 g, V( `/ T6 \
pLight->Specular.r = 2.0f;
4 {/ ?+ A. Y' N9 W, r
pLight->Specular.g = 2.0f;
$ W5 X1 a1 @# i2 s
pLight->Specular.b = 2.0f;
/ M$ p1 f, r$ w
- k7 K! Y" j# ?! C# t
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
/ F7 G4 V4 T3 q0 H* @8 m j0 \
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
X1 B1 Q5 o6 Y& ]" @
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
/ E# D5 k( o! e+ |3 j) d1 N
, [! g: N( R. k
HookUpdateLight( pLight );
7 ^/ v3 I- Z# N# j k
9 }2 w* W9 s4 f3 o
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% S( T5 |/ A" P$ i3 U4 Q, N; o
5 }) d- C" `2 H# ]4 y* }
pLight->Diffuse.r *= 1.2f;
% v7 I% K2 f) a/ }$ k
pLight->Diffuse.g *= 1.2f;
" _7 \, k0 `* A4 u4 C8 K* a2 `+ p
pLight->Diffuse.b *= 1.2f;
: E# j+ q F# I L3 d
5 N4 a9 w) f! Y& i! ]2 }7 ^
pLight->Ambient.r *= 0.8f;
& o9 ]0 E% J/ B P7 O8 ~
pLight->Ambient.g *= 0.8f;
- b! ]4 V- Z2 t/ S3 ~
pLight->Ambient.b *= 0.8f;
3 R7 f9 x% l, y4 p1 n
. |) M5 E6 J) p
memcpy( &m_light, pLight, sizeof( m_light ) );
+ c6 B/ v* E4 n5 r8 P
1 M8 N g7 b' m. j; K7 X
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
0 L, h9 O5 |' l0 W2 q B* i
D3DXVec3Normalize(&(vecSun),&(vecSun));
4 P$ O. c! b1 f+ d6 |; x) K9 S" w5 L
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! x# ^/ _* D- B; m, S7 w/ A
pLight->Appear( m_pd3dDevice, TRUE );
9 I' X# \7 ?& L& J; |
$ v# T3 S# Y9 Y! _
DWORD dwR, dwG, dwB;
3 ^- G9 C* ~, [# Y' d9 u# M& H
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 l1 Z* O: ^" R2 O. `! |/ _
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 I. j0 O6 K2 v! Y( ~
dwB = (DWORD)( pLight->Ambient.b * 255 );
' p3 {' @$ p% m3 j- o
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
7 d( z) q( T+ Z4 w g3 N
}
* @* K- ~# B3 g1 J) ~* ]: g) V
}
1 y5 r7 K# N. f& d- N" v! D7 q q
}
- H0 u! |- ~" v' K
else
0 a, A) b- @$ F1 ~0 A
#endif
. _; l* y/ ~. y, \
1 C0 f4 `! G! {, e
if( m_bIsIndoor )
, V" |' ^1 p1 e% s( m$ O! n
{
- p. g& d6 ~: |( z6 q7 h2 h
if( pLight )
" P& k+ S* F0 |
{
3 g+ {( ^& d& t+ l/ ^7 j# S {' Z, c$ B9 o
// à??μ oˉè*
5 ?; S8 q% E+ t
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
: o. s- t- g z9 L( r$ X3 \2 i6 U
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
, S0 }9 a! s& {8 U
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
6 o, Z2 P9 ?' n4 q5 f
/ j8 e+ O) Z3 f. }' ]
// oˉè* ??à?
/ S% l# Z7 P0 w+ d$ c$ B3 [
pLight->Specular.r = 1.0f;
5 b( X5 m- s& T, X: v9 u
pLight->Specular.g = 1.0f;
$ r; n) C; D2 X* ]. G. I
pLight->Specular.b = 1.0f;
4 c5 l+ `& O: |7 p
// àü?? oˉè*
- D/ e+ z h6 h# A" s( {: ^
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
8 T0 w; [$ C% Q5 A
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
W) n: T3 F |
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
( e* Y2 p) U. ~7 @3 x) p
- N1 J6 O: J; \* ^
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ K( k$ y+ ?- q% ?* S# u+ D4 @2 e
{
* u0 k: r" d) B8 t1 l. f. S; X
pLight->Diffuse.r *= 0.6f;
1 g8 W" o) M" ?; p4 D
pLight->Diffuse.g *= 0.6f;
& a' r% ~0 N. J1 A
pLight->Diffuse.b *= 0.6f;
# ^3 j% U4 G5 V( K, l0 \' z
pLight->Ambient.r *= 0.7f;
( S( `& K/ B9 j# S
pLight->Ambient.g *= 0.7f;
2 Z$ v) P' g) K( K' b% Q
pLight->Ambient.b *= 0.7f;
- `9 w" F9 @$ B1 q; T, ^% X0 [
}
& o @2 \4 R: [% ^
5 Z; a# r7 t6 }) l3 y
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 e- ` j. d1 n' ~
if( g_pPlayer )
4 n" \6 F* W* V. M- t
HookUpdateLight( pLight );
5 j7 c) t5 ]6 F' W
#endif
Y- G, r" `# f9 G1 s+ P& ^2 w( ]
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ X* q9 B- a) L% T$ B- S. k6 G( Y
* [. R. m# r, }# l# A* c
pLight->Diffuse.r += 0.1f;
+ b, W# p1 B2 B8 _( b
pLight->Diffuse.g += 0.1f;
( e0 l- _; ~: {. G
pLight->Diffuse.b += 0.1f;
9 q; W: H2 K* Q `" Y1 G% I+ F* F
// oˉè* ??à?
' g% S$ j9 T6 S# D6 n4 \* z6 ?% h* A
pLight->Specular.r = 2.0f;
& l- m; }# L' a: r2 P3 h
pLight->Specular.g = 2.0f;
" m' ?* V6 B2 X
pLight->Specular.b = 2.0f;
4 i8 z0 H% D! O" u3 j
// á?oˉ
9 v" _9 t. \1 E* |
pLight->Ambient.r *= 0.9f;
1 G! o; n/ n- k8 ]" z+ L
pLight->Ambient.g *= 0.9f;
# j7 \& l7 V% s( \; p* Z M
pLight->Ambient.b *= 0.9f;
# K) _% [& @9 N4 c5 t0 T
: H2 [0 @$ [2 f- w( |0 U
memcpy( &m_light, pLight, sizeof( m_light ) );
; z1 U% ~9 x" [9 y& _6 W
/ m& X7 k; Q; T4 W& ^( @% q2 c9 E
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
7 L7 M. N7 g9 e2 a* D, v" _0 q
pLight->Appear( m_pd3dDevice, TRUE );
& S( b- x7 \$ w' C/ P) U; X
3 S0 ~1 e4 S2 ~, F4 ?
DWORD dwR, dwG, dwB;
/ l0 B8 L; m7 k, B% F8 q" x M3 D. {
dwR = (DWORD)( pLight->Ambient.r * 255 );
9 E+ m9 c; d W) q' p
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 I+ T7 F5 M; m- y3 [( o$ |7 Y# r# i
dwB = (DWORD)( pLight->Ambient.b * 255 );
5 Z0 r8 @" j* P$ f
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 _) i: f: V; F, z) }
}
% a: x/ i- n: W L
}
. W& l6 P+ ?3 J- b) ]% F4 g
else
, j7 t G# F. H# d# `
{
- A" s- h3 m5 A; z
if( pLight )
$ \6 v5 T% \& k. z! l* z1 X
{
' [8 r( l7 B+ G' l* j
$ M4 ^- f" x! d- l8 z, d1 [
int nHour = 8, nMin = 0;
0 q$ ?2 _+ a& o: |
#ifdef __CLIENT
9 u! Z7 U7 m( g; N Y0 }
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
) p& v5 x5 U4 Y* {
nHour = g_GameTimer.m_nHour;
8 A* C. T- K) A1 Y/ }. |! f) F0 n
nMin = g_GameTimer.m_nMin ;
, y1 y2 C( D" k- U6 K
#else
# W, a6 I$ S- A* s" i4 r
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
* T8 d: R2 o9 B2 I
if( m_nLightType == 1 )
5 b) `1 Y# a2 x
nHour = m_nLightHour;
$ I: [, x( i# u( `7 V
#endif
) q- V% d# G7 g$ K9 }- A" i
nHour--;
; v8 {5 H$ [! m `: @9 H" A9 _
if( nHour < 0 ) nHour = 0;
" x, W/ Y1 Q% |3 x6 [9 o
if( nHour > 23 ) nHour = 23;
0 V e5 u4 o- T- s* l& F- i
- v. c" \% T+ I$ [9 `; Q
//if( m_bFixedHour )
3 m( d* n2 g+ y
// nHour = m_nFixedHour, nMin = 0;
1 P7 n; n: h E9 C
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
, O$ z1 T! q( t: ?( X
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
# p8 [% U4 u3 `0 M
6 f; H+ Q- N1 M, J- b6 N
//m_lightColor = lightColorPrv;
3 O3 s6 c7 Z( k0 D$ Q& P. _1 @
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
" t* K, Y% ^8 c( I
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
! v& e2 R! o3 C' `/ g# q
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
1 ?+ M: \* o+ p7 E( S
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
3 ^* R( @4 ]4 W( X* q! e- O
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
. I' r: E/ k: Z/ J9 \3 J) X
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
; A4 M" g7 ~3 F6 I
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ ?) w# c. `' h1 |8 |& E( t
# ]4 R$ F$ j' j
// à??μ oˉè*
/ K, P: A- ]: I9 n
pLight->Diffuse.r = lightColorPrv.r1;
, h& I/ }# C1 j9 @
pLight->Diffuse.g = lightColorPrv.g1;
/ e F2 ?# [' g! |
pLight->Diffuse.b = lightColorPrv.b1;
+ @: U x/ G( _ s
// oˉè* ??à?
- G% O c( r: J( S; U* L
pLight->Specular.r = 1.0f;
5 k7 @8 I" X( t `
pLight->Specular.g = 1.0f;
, B# F- D9 P% q
pLight->Specular.b = 1.0f;
% M$ l) o6 p h/ O- z& e. q% A) v
// àü?? oˉè*
. z6 f2 [/ l. [% j# B6 y
pLight->Ambient.r = lightColorPrv.r2;
7 L, Z I4 H# w0 K' J
pLight->Ambient.g = lightColorPrv.g2;
4 k+ T8 S) W* W+ J* i% D: C
pLight->Ambient.b = lightColorPrv.b2;
* @3 w8 U- i5 j$ L" \2 b
( @/ r% g( m4 _- `3 V5 f: v
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
[+ t. C+ K8 i
{
( }: F0 S; a" R- l$ l, k9 e
pLight->Diffuse.r *= 0.6f;
+ Y; s! z4 ? L' ^. E5 b2 q/ ?' I
pLight->Diffuse.g *= 0.6f;
8 Q+ r( c, `5 W9 w9 B
pLight->Diffuse.b *= 0.6f;
$ [3 A: m5 R" ?8 ^) \
pLight->Ambient.r *= 0.7f;
# `9 U5 }2 m3 w/ E2 c9 g/ i
pLight->Ambient.g *= 0.7f;
J6 @0 Y6 O& W: E
pLight->Ambient.b *= 0.7f;
4 `* K/ \9 R, r) l1 Z3 M2 z# a
}
& K- T1 n: |: o/ }3 i2 s" ~
; c# M' B' I F' h+ t3 R7 {
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 g$ ]1 T b2 b4 Y8 }
if( g_pPlayer )
6 h7 K6 E6 y" J2 b9 y* U! q2 o
HookUpdateLight( pLight );
- h# i3 e! _& e( J C. u$ ^, `
#endif
. E4 Q# M' l- d
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: K! M" a4 d* |2 i: @" b
2 l8 _5 n' P$ W1 I) ?4 I' y
#ifdef __YENV
. X ]( X* ~# B7 D' R) }
pLight->Diffuse.r *= 1.1f;
6 q2 l9 A4 s2 X6 Z& S; }- o8 X
pLight->Diffuse.g *= 1.1f;
6 s& y7 z, s1 ]; Y
pLight->Diffuse.b *= 1.1f;
8 `$ T+ [3 y. R, x. C
// oˉè* ??à?
( `6 k) a! v/ B3 j# {% |/ u/ |; u, d
pLight->Specular.r = 2.0f;
5 _2 X' M/ ~3 q _1 Z0 o7 N
pLight->Specular.g = 2.0f;
, e4 @3 L; Z8 _$ Y0 k" T7 Y
pLight->Specular.b = 2.0f;
; [* U9 J" u& n9 m# _& Y
// á?oˉ
: J9 |& `9 Z5 [" n0 p8 F' f
pLight->Ambient.r *= 1.0f;
! ~3 t; y2 N ] g* c
pLight->Ambient.g *= 1.0f;
, u& j5 C& r8 e. x2 S
pLight->Ambient.b *= 1.0f;
6 E- p# N; N# h: d3 h4 n
#else //__YENV
+ |7 O: I, }4 J9 k$ B9 z. F/ A
pLight->Diffuse.r *= 1.1f;
* \0 Q! m. j% f3 M5 K
pLight->Diffuse.g *= 1.1f;
Z: Y9 m7 X& Y( K8 n
pLight->Diffuse.b *= 1.1f;
T( u' p6 X6 F5 ?' `5 f
// oˉè* ??à?
7 L1 F" M7 H( O5 ~7 H% H
pLight->Specular.r = 2.0f;
% P- a! B/ \+ P/ U
pLight->Specular.g = 2.0f;
, N, Z4 g# a9 {& |* b
pLight->Specular.b = 2.0f;
& ?9 y" |3 a: g0 g1 Q5 J
// á?oˉ
/ ?7 E7 K: }$ C7 k) ?5 h( s0 N
pLight->Ambient.r *= 0.9f;
, @7 S) }+ r& f
pLight->Ambient.g *= 0.9f;
3 Q5 F( I$ s% L6 ]6 A
pLight->Ambient.b *= 0.9f;
% t" Z/ ^; b/ U4 ^5 l
#endif //__YENV
1 ~' [ `: @& j- n3 ?- \# c
0 R+ U& q% X7 n2 g' {5 R4 s5 G/ r/ u
memcpy( &m_light, pLight, sizeof( m_light ) );
6 [# j& s* C6 g4 M5 N" N
! |- b% t! R/ l0 _6 @- q9 V2 [ k
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
6 ~+ ^" \- ], D% \; H5 x' S
D3DXMATRIX matTemp;
$ F& T9 A- X# E
static const float CONS_VAL = 3.1415926f / 180.f;
/ T* H$ l7 z; |7 Q3 l4 B3 G- B
+ @+ C2 ^# g+ m; Q4 c. s% j1 ]
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# p1 l# k- Y3 V h4 f
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
7 O. c3 Q j0 w; U- x
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
7 M- l" s3 ^ J D. D1 q V
pLight->Appear( m_pd3dDevice, TRUE );
& E2 j. z H' _# O
9 P" e5 y& \! E
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
@( k9 k2 K B! e
// D3DXVec3Normalize(&(vecSun),&(vecSun));
$ G* T0 n+ d/ |
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% P5 U3 p' K/ N: P- i! F
/ \" C# _9 R$ F# z$ O
DWORD dwR, dwG, dwB;
0 n. C/ J \2 }6 V& I% p+ T7 n5 |
dwR = (DWORD)( pLight->Ambient.r * 255 );
# K7 c+ m$ l" A. L
dwG = (DWORD)( pLight->Ambient.g * 255 );
* o5 d5 |, g% {+ ?6 z. W# U* U$ ~
dwB = (DWORD)( pLight->Ambient.b * 255 );
) B- l g/ | d$ A! m# D% S
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: r* B) v2 Y( B& `. n$ h1 g* Y% E
}
7 Z4 m4 I& l- e7 k2 L7 C
}
! d; A& i: {: B$ p( G4 S# X
) i! A( J* t& y
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
6 [4 {1 V$ E' F' 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) );
! o1 {. S; o1 V$ q% ^/ _
::SetLight( bLight );
5 B6 x k& V$ s f& O3 p+ V3 A* [
; k$ N" w1 K' C( L2 q9 n
// ±ao? ?D?í???ó á¤à?
& U# }8 c; p3 Y$ ?2 Q
m_pd3dDevice->SetMaterial( &m_baseMaterial );
; z( c0 ^0 Y7 f" ` H+ u
" {* r; u" T- r
#endif // not WORLDSERVER
$ e. f% E8 _5 T8 J9 R* w
}
4 q9 F3 \# F6 Q6 h, c3 ?) X0 w
并更换
0 n Y2 s2 X. k2 ]) ?. x0 A, J; ?
Code:
; m& k p) w. i, d0 F
__FLYFF_INITPAGE_EXT
0 ]% R% Q/ E8 E$ ]# X6 k9 e
定义
/ p2 O5 _; {+ m w5 s
; y, M: j% O9 c H2 m( v: \+ r
- k# u1 x% ]! w6 F
1 a8 F: ]% e+ ^: z
- C/ g. R; |* Q3 ]- c
现在终于删除我的狗屁加速...
* T/ Z! C7 ]0 H8 @1 R2 y' l
: c% S. O) T: q, H0 P7 b. U
2 x* d* W* m) I* P3 G Z* P4 H
, V% s* g3 I7 [
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2