飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
; u3 d h+ o% M, `& V4 W$ v9 C
尾翼:
+ m; V" [# K) m
( r6 H6 }) z7 z5 _( G" B
代码:
4 E' |! }1 f4 \6 x
CWndAutoFood::CWndAutoFood()
3 ~1 W i8 f2 E
{
# M% l* ?+ @ u6 w4 S, b0 v
m_pItemElem = NULL;
- u4 X7 F0 M6 G! M/ x
m_pTexture = NULL;
( Q% e! Z; m( k; g
bStart = FALSE;
3 ?# V" C" j+ Z% B! \
}
N# E* O) s1 l# v
, B" q' S3 d9 C) r) C# b0 S& }
CWndAutoFood::~CWndAutoFood()
" s6 ]( v: D9 z9 D+ m: b/ H
{
- {& ^2 p8 D/ E( f# @) x$ {/ k
AfxMessageBox( "AutoFood ist gestorben
" );
. S7 a2 t, I. z- I* G5 k1 s( l
}
+ X7 }' N2 P% y9 O6 ?( X9 z' J* i
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
2 k6 Q4 A Z n6 Y' D. m
{
& E6 N+ S- J$ E
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
" ?' t$ j/ w* S% B
}
& |" ]" E0 D9 G5 {
0 k1 S4 l7 \7 J) i* \; s, j7 ~
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
: U0 n2 k$ y# b. C5 U
{
4 Q% Y7 _" M! [( q) v
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
$ } v4 h, k' @' Y3 K
CRect rect = pWndCtrl->rect;
; e" E) I: P: Y8 q5 X6 J
if( rect && rect.PtInRect( point ) )
7 N" g6 p" J/ f4 S9 z Y0 @
{
4 g5 _' V5 Y- u. k7 A* Z; S
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
) T, C1 R* ?. l% I0 W s
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
' M W7 O( ?4 F+ m1 E* |& E" O
{
' ~, C9 H, _% T' w# }: R
if( m_pItemElem )
3 I0 ^+ o0 \) [2 z0 e
{
1 W; q0 b( R, w/ _; Y
m_pItemElem = NULL;
; |* E; }! K5 d" ]. _
}
6 i8 f3 _4 Q+ [# u, n p
m_pItemElem = pItemElem;
9 }5 ?9 K: o) T& e! v; {
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
8 r. U8 P" Y: V" W+ d6 \* p
}else{
/ d6 [* l8 i! x) [/ f
SetForbid( TRUE );
5 b( U1 a5 s: w5 M- ]4 C6 c
}
0 t5 Q, w$ S) V% Z) u, y
}else{
1 {" A% ]5 [2 a3 w0 o: ~" E
SetForbid( TRUE );
! v) a4 [- }7 i/ h
}
1 }( ~) l3 r! |- d# S2 c: C! z- t7 m
return TRUE;
* E% c. } G/ I. U! ^+ }
}
5 Y- k. y" g2 f8 h5 v* Y0 u4 u
: v" V5 T) D; Q
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
2 d& @9 \; s6 R$ P0 J7 x( K
{
m# k9 \0 a7 M+ n
switch( nID )
% l( J) d+ R( [8 e
{
! Q# {; Z$ C$ l' I8 k8 V
case WIDC_BUTTON3:
1 x% q6 S/ a! b" E6 N3 K: u6 R, ?
{
& {+ R- ^3 V0 A5 J9 K$ y: z
bStart = TRUE;
" ^* v) h# }! K O+ L5 x
break;
' A# [2 C. h6 L+ ]# z3 h- V
}
' ^9 F8 P& }2 G3 @* p
case WIDC_BUTTON4:
3 j, C6 [. _9 \" x( K0 [+ N
{
+ o% ~/ O% O! u% e
bStart = FALSE;
8 e- w Q! F6 H3 M" C0 ?/ g
break;
9 a# K& x$ Y9 Y- R2 g
}
. [; O/ @+ X" O7 f! I
}
+ C' e0 G( K& L- u5 B5 M' ?
return CWndNeuz::OnChildNotify( message, nID, pLResult );
1 g' K, s5 D. v! A( z
}
+ g& j, l' r, _4 P8 V- a
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
5 J% x( ]3 g+ P4 f2 F2 ?7 N
{
8 {$ D1 `7 C6 w. d
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
" N4 A& {" k8 M
if( bStart || !m_pItemElem )
( B: l. A0 U; S
{
. T0 T8 S, I$ s8 B$ y8 f: N
pBtn->EnableWindow( FALSE );
5 Z3 Y6 K0 N _$ t& j* K: |
}else
# D4 V- s! R3 g3 G9 F' m
pBtn->EnableWindow( TRUE );
/ I8 Q% N% f0 ?/ e4 W
if( m_pTexture )
5 O5 n9 z4 | F6 }
{
8 h, u% r, Z" }4 {4 x/ s
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
4 y0 t7 F! C) q8 _* b: g6 I, j- u, ~: _
if( wndCtrl && wndCtrl->rect )
0 h& m9 n3 C" \% t! ]
{
4 V) _5 [$ L" J: O* H3 _, S
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
* A* x% \# d x F& r
}
# G, O+ l5 Q3 c& ~2 W/ ^
}
$ m/ V9 b3 j1 N$ P* ^7 K/ C
}
5 ~1 b1 q( M! \; K9 E
# d' ~2 t* v/ q5 m6 @
BOOL CWndAutoFood:
rocess()
( G7 c0 E2 _( U, {/ ^
{
) x7 K# ? n3 N0 L
if( bStart )
+ O$ A9 W' e7 u2 U) a; s: x. j
{
- X' n" _: X% v& {: N, _
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
" N) l$ E. N h( {4 [- A; i
{
0 }4 b7 Q" K9 n& w4 k2 X
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
) c' w- d; O& D: S
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
* P5 l- a7 U4 r2 [) \3 s
}else{
2 O8 V5 }+ l6 q) e- N! N1 k, f
bStart = FALSE;
, o* v4 t9 R8 X/ p h* s
m_pItemElem = NULL;
3 } Y3 w I2 |9 d+ h& Z! n
}
+ z& u7 f( N" v& }! ^* |
}
" C' e7 m" p3 _: @7 H
return TRUE;
' K, w+ S9 J6 a6 l# v/ h$ p3 [
}
3 {& p$ N8 M5 K
/ I6 T# |4 M5 G3 Y4 B0 K4 \/ f+ _
登录视频废话:
4 S4 }8 b+ H% X" G6 ]
尾翼:
7 S% V7 x, B- n' [; o; I
7 H9 @# [( ~# M q5 u* ]# G& G1 r
代码:
. c& d6 M4 ?* l
+ b5 K" U: D; P6 }4 M
void CWorld::SetLight( BOOL bLight )
) ]8 F. X7 S0 m( t; ^
durch
% o, g& ~) n8 z& R7 y- p
Code:
* b7 I1 P& N! \
void CWorld::SetLight( BOOL bLight )
9 P* N- o3 q( n1 |& P0 z& ^
{
) s& `& Y2 P/ Z
//ACE("SetLight %d \n", bLight);
; V8 U6 x9 D4 X4 H
7 w- \, f/ V$ {; t! ^
#ifndef __WORLDSERVER
$ y2 ]$ A7 u+ ~+ }3 m/ D
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
+ J# E8 @3 T% j' t
CLight* pLight = NULL;
7 r3 ^7 H5 _! [8 e
6 s1 Q, _; T) D: d& u: W
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
- I* U: W! d! q" d0 p, D* v' w
5 l- V6 C( p7 c* X! K6 }
pLight = GetLight( "direction" );
1 m" f( Z* e, ?; R' z% g
2 t0 s0 m# S8 K3 l a
#if __VER >= 15 // __BS_CHANGING_ENVIR
% S' Q: s2 G3 \% ?* d3 T
if( g_pPlayer ){
0 N5 O- I; S: X& j
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
7 z3 i* |/ ~' |% d e& D7 C' o: p
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
; I$ |0 `2 t% ?9 s
{
7 L. ?) ^9 l# k" k
if( pLight )
4 O9 K& R( u A% f3 z+ F; |
{
# ^5 y* |4 T6 ?+ _) b
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
% S# ?/ a& _& e E
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
1 o& ~' q# v: z
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
. n! A- w/ s5 s
: Q# `2 ]7 ~5 c$ i! e$ H7 w! R
pLight->Specular.r = 2.0f;
( n2 c- F) M6 z8 z/ r
pLight->Specular.g = 2.0f;
& V2 Q% {1 `5 \4 `. A5 y1 x
pLight->Specular.b = 2.0f;
: \$ Z+ w2 I5 \/ g& m
- e0 X- H) I9 l
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
) e6 n% k3 J% q i
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
: W6 R) M$ h' x
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
, d0 i4 D. d* w# m/ _7 g
: W4 W* h. k2 D+ U0 H
HookUpdateLight( pLight );
! b0 D" [: ^ H' c' f6 L
- c) c" r( W% _9 E
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
- h3 j0 F- D2 ~" J7 `$ p
8 U G. W( M* {/ E8 k$ u) ]
pLight->Diffuse.r *= 1.2f;
5 U4 g* l# w& `, [( k8 l8 u" ^
pLight->Diffuse.g *= 1.2f;
5 L; }5 k& K5 |. K7 D; Y! O
pLight->Diffuse.b *= 1.2f;
/ p' a/ M, {+ F: m# q
( P1 f! Z; B- n: O8 i; \9 d/ Q6 F
pLight->Ambient.r *= 0.8f;
8 N1 o1 s6 F( V
pLight->Ambient.g *= 0.8f;
% W1 O9 g# `6 d- W
pLight->Ambient.b *= 0.8f;
5 J$ t6 w* n2 }; ]
3 p! u. x4 I) h$ f/ A* y
memcpy( &m_light, pLight, sizeof( m_light ) );
! e$ w# n; J2 J7 j8 Q
4 o6 p% b1 \) e' O. L$ i i- j
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# A! F, B# r1 f2 i2 x: D {
D3DXVec3Normalize(&(vecSun),&(vecSun));
5 m4 _' m D; K8 @& }& w8 z; Z) R) A
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 T. Z/ p+ M& f3 F, A: P1 }
pLight->Appear( m_pd3dDevice, TRUE );
/ b1 Z9 v; _* {4 y5 p
& u* M. }+ R. H5 c7 F$ e
DWORD dwR, dwG, dwB;
. W5 h/ o$ r. K3 [1 [
dwR = (DWORD)( pLight->Ambient.r * 255 );
& D, Y1 j/ M( }8 M
dwG = (DWORD)( pLight->Ambient.g * 255 );
' n1 t0 n1 H) D; U% T# `0 j
dwB = (DWORD)( pLight->Ambient.b * 255 );
. j" F/ K1 w% x; E
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 ]' T2 u2 C+ f! L( ^( y
}
3 `4 B( h5 K; @9 S: B0 @
}
# z- ]4 X& c% [4 E( s$ W
}
5 f: K# }8 O5 S b: @% S1 }- q
else
* D, b; ]4 X: l% A* _" @
#endif
, ~) b% m3 [: F0 d( E
1 g1 B1 Y" I6 q0 D' R8 l$ Q
if( m_bIsIndoor )
' C C! P% }' G+ K2 n# h7 y1 f
{
. _+ B1 T9 m* p7 O" U' v1 Z5 b
if( pLight )
) F. b) H5 I, g- ?3 R& Q
{
4 u8 D2 }' c# e# f
// à??μ oˉè*
3 M% W- o% [4 M8 E/ h- e. }
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
8 Z7 B+ L" H& o# }
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
' P2 {9 I. p' s4 g. _- O& c
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
7 I; p& @& R3 h+ U' _0 z& [
6 e: h# _" e! B' M4 `
// oˉè* ??à?
3 d$ h; [/ ]1 t/ Y) D' q1 p
pLight->Specular.r = 1.0f;
9 v0 {% Q: k! y& f1 L$ l7 D
pLight->Specular.g = 1.0f;
) v9 I; u1 b/ g H1 [2 `4 r& D
pLight->Specular.b = 1.0f;
2 _0 A9 D/ x s; b9 ]" M# q
// àü?? oˉè*
/ t/ S1 q2 F2 t) O
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
! h" j8 b2 }9 z
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
( g7 _9 |5 J8 b: T
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
+ z5 Z( F' w$ J9 c7 E
4 q" Z/ R( Z: X: c- @
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, j5 h, ?7 ~# B- e6 M
{
' t' N' P) i" h5 u" q# o3 m$ P
pLight->Diffuse.r *= 0.6f;
+ C' Y6 q, G, r8 c8 S
pLight->Diffuse.g *= 0.6f;
& J1 l! D% t+ ^1 \9 d
pLight->Diffuse.b *= 0.6f;
- {7 X# K/ C O/ j
pLight->Ambient.r *= 0.7f;
6 `* C# u& N* z* Q1 h& e# x
pLight->Ambient.g *= 0.7f;
% \. j! `8 m6 \8 {
pLight->Ambient.b *= 0.7f;
5 B5 I( `0 v) B) |) r" G4 k
}
( h8 Q0 ?1 i) W6 X9 Q
6 ?' M( q5 j a3 Y! y
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 ~* A: Z2 q g; W2 q x
if( g_pPlayer )
/ l; \6 i0 S$ H- x
HookUpdateLight( pLight );
$ x; W ?5 x |/ Y# v, f
#endif
, H- ~& e8 H6 R* ]! i1 k. P
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; L8 h! w# ~9 E
9 E" j7 v7 t ~/ q- X7 J
pLight->Diffuse.r += 0.1f;
q" M( \9 |- P' G! m
pLight->Diffuse.g += 0.1f;
) t7 Y* z8 S4 E! Y; A
pLight->Diffuse.b += 0.1f;
/ o# j2 C: w. l7 g$ M
// oˉè* ??à?
" F% ?, A' T$ j
pLight->Specular.r = 2.0f;
! R s5 X. a: v1 e( K( u {
pLight->Specular.g = 2.0f;
7 W5 `' _! D6 K' h4 g# _
pLight->Specular.b = 2.0f;
5 I/ j( W5 m) G4 W/ q6 d
// á?oˉ
& e0 b3 U6 S) ^; Z" A
pLight->Ambient.r *= 0.9f;
2 `5 @* r5 G. F/ k
pLight->Ambient.g *= 0.9f;
( [. G$ Q" Z; k8 X5 r9 f
pLight->Ambient.b *= 0.9f;
! R' O& l2 x0 t0 n# W
6 [; I+ d( B; A9 w. Z
memcpy( &m_light, pLight, sizeof( m_light ) );
$ S( L, j6 n0 K* H" `8 q
6 O9 j# {+ E% `! \3 [+ a1 W, K7 p, S8 x
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
' R ?2 @+ g$ y; P0 ]! x9 ~' {
pLight->Appear( m_pd3dDevice, TRUE );
% \% K/ Q+ h2 Z5 Y/ U0 v' o9 C
; Q' u$ _) r- Y2 F) A+ Z' c+ v: n
DWORD dwR, dwG, dwB;
% r4 f/ {5 F! Z) z1 ~# n
dwR = (DWORD)( pLight->Ambient.r * 255 );
f9 Q0 t& k2 S" R4 K
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ \% d% G; X8 z' Y5 ~: F2 r
dwB = (DWORD)( pLight->Ambient.b * 255 );
- ]! h' ?4 z- a
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 ]: N+ ?8 l- I1 m' Z; l
}
3 Z; _6 Y' h& r7 ^
}
, U$ G3 @5 p9 M7 ^/ W; Q
else
6 E8 s. B8 O/ W, ~" c8 W
{
7 c% D7 a t) p$ `
if( pLight )
. s9 `8 U) S; Y- O" j
{
& v1 w- l) O! I' o1 ~$ l! V! x
, `3 ?- c2 |+ z/ A4 g. u1 b
int nHour = 8, nMin = 0;
" Q. Q8 R( d. G
#ifdef __CLIENT
: J1 I7 s) W* C. G
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
1 s: l5 L/ X( j+ ~3 _
nHour = g_GameTimer.m_nHour;
' ~+ W; `) J7 e7 Q. {( f
nMin = g_GameTimer.m_nMin ;
1 D2 {. J; t; ]
#else
% _1 R% x4 R9 ^0 _8 R4 x/ u# K3 v% @
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
/ z5 x c: h- l9 G3 }9 v6 f5 |) w9 E
if( m_nLightType == 1 )
/ K" u: I" o8 P9 U. I7 c% b* T: A
nHour = m_nLightHour;
% j+ n% e* m; s/ a+ v' @) X: y. D
#endif
% s' R0 o( f& K0 S
nHour--;
+ K# t4 U- \! n5 _ ^* f5 q9 u/ C
if( nHour < 0 ) nHour = 0;
* m, t$ y- Y9 E
if( nHour > 23 ) nHour = 23;
) N/ q% d5 I1 ]% t1 @
* s/ y6 G w5 p) b: j
//if( m_bFixedHour )
' ~: z+ v* D( B! T3 Y
// nHour = m_nFixedHour, nMin = 0;
/ f3 P" ]% B! C
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
7 O) {* j! t# p, \; Z, w" {: T# f
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
9 S' @% R f( H- T+ N' \5 J( W P
! w2 E O6 F. b
//m_lightColor = lightColorPrv;
- Y: Y$ A0 u3 k) l
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
9 C6 U$ p4 |+ a
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
$ \) T4 K) {; I4 X9 W, e9 {. C3 I
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) u! x+ Z/ z1 s) K+ C
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
2 o5 [0 b/ h, E* {% n
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
% H5 p/ F- e5 c/ g7 {, x9 O
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
0 u! `5 p% n4 K; e) |! t# C
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
6 N% [1 ~4 s8 A2 H5 y" x7 j, T
; n. L0 m, U" h9 Y# W# A
// à??μ oˉè*
. V8 i R( o( j# A% Z
pLight->Diffuse.r = lightColorPrv.r1;
$ a, z6 \$ t# O2 G1 u
pLight->Diffuse.g = lightColorPrv.g1;
1 k& W' z! ?- w' e3 v
pLight->Diffuse.b = lightColorPrv.b1;
5 O4 t7 c" W5 Q6 y! F
// oˉè* ??à?
$ N- s1 |) j3 {1 T+ M
pLight->Specular.r = 1.0f;
k- z# \: k1 ]* c
pLight->Specular.g = 1.0f;
% y, C; A( \( N6 U
pLight->Specular.b = 1.0f;
$ M# s; W5 S7 V E, M$ r! o
// àü?? oˉè*
# K4 m; e' R1 Z6 r! c
pLight->Ambient.r = lightColorPrv.r2;
: @( U2 T+ E# n' f
pLight->Ambient.g = lightColorPrv.g2;
, B% C) x1 O& Y' P5 O
pLight->Ambient.b = lightColorPrv.b2;
' g6 u" l' f0 g* z- T
- w0 {9 b0 Y$ W1 X
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
. |- {$ p$ l( T0 w
{
( @7 W: `' w. Y- o& y$ n+ i
pLight->Diffuse.r *= 0.6f;
% ] I: D4 c% k
pLight->Diffuse.g *= 0.6f;
& q% K, b7 x' P! r7 Z. F: d
pLight->Diffuse.b *= 0.6f;
. A+ f! I" W- g; X; }5 P
pLight->Ambient.r *= 0.7f;
: a0 b. T: A! B$ W! P! w9 w& Q
pLight->Ambient.g *= 0.7f;
, u6 S4 ^, ? e. m
pLight->Ambient.b *= 0.7f;
/ X0 N3 ?+ b8 K$ S
}
' g7 W5 N5 i# w! ]7 q1 d
2 J7 p4 {# [# j- B/ m
#if __VER >= 15 // __BS_CHANGING_ENVIR
0 b. n5 [7 n- k- E: E$ G% H. g
if( g_pPlayer )
( @+ v1 ^: ^2 b8 k3 h8 {5 W
HookUpdateLight( pLight );
! W# J1 B' V# l6 a3 i
#endif
' V/ T+ x; @5 b
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 g& [/ w$ A5 l" V2 d, g
. I* _' Y7 @6 t
#ifdef __YENV
4 z3 E2 e# e; H2 c0 O. D% M' g! M
pLight->Diffuse.r *= 1.1f;
5 ?* s' i9 H) }+ ?2 O" F
pLight->Diffuse.g *= 1.1f;
1 X/ x2 w* T$ k1 c6 q4 X P! X# ~
pLight->Diffuse.b *= 1.1f;
1 m1 p1 t5 B6 p$ y/ n0 J
// oˉè* ??à?
& o) h( @7 l3 D
pLight->Specular.r = 2.0f;
5 j8 | k9 R' F/ S( a
pLight->Specular.g = 2.0f;
8 q! A1 J' [+ b7 E! Q4 z
pLight->Specular.b = 2.0f;
4 T% R* a- A, ?, r5 U! s8 \: ]! p0 A
// á?oˉ
+ n4 N8 N* G* n, N6 r+ L, o
pLight->Ambient.r *= 1.0f;
" ?5 ]3 E( j/ c0 v; }8 A! r' L" A
pLight->Ambient.g *= 1.0f;
& o0 B9 U A$ {( F
pLight->Ambient.b *= 1.0f;
; u4 |) h; C0 O, z( V0 ]
#else //__YENV
* j0 ]4 q0 R7 I1 V5 h9 E9 l
pLight->Diffuse.r *= 1.1f;
9 z4 n( A. M4 G9 y
pLight->Diffuse.g *= 1.1f;
( Q. v' F; Z9 [/ l
pLight->Diffuse.b *= 1.1f;
% D" J4 }; r1 w5 t: @
// oˉè* ??à?
7 o3 A0 i% z0 z" E7 k+ g& }
pLight->Specular.r = 2.0f;
! U1 Y6 v/ A& x4 n+ k7 Q' ?2 S0 A
pLight->Specular.g = 2.0f;
Z0 H; o& q& k. \( G
pLight->Specular.b = 2.0f;
7 H$ L9 k: W$ o- a
// á?oˉ
6 u* Z9 E2 f B; @$ a+ X/ m8 l; `
pLight->Ambient.r *= 0.9f;
$ y! T# t8 {; k/ F
pLight->Ambient.g *= 0.9f;
, W% O* B( @' i
pLight->Ambient.b *= 0.9f;
+ Q9 T0 v* U& N; e2 [ K. ^
#endif //__YENV
/ v0 c% C" n+ c, K1 g0 i
( p" r; I! e! O5 l% e
memcpy( &m_light, pLight, sizeof( m_light ) );
) e* R C) V4 u# R1 `1 T ~! n& K2 z$ Q
" ?) L4 A8 A3 ]+ i3 p
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
4 a( v8 [) } F8 Q6 a
D3DXMATRIX matTemp;
: @' O" [" x% z5 O8 B# K
static const float CONS_VAL = 3.1415926f / 180.f;
8 N; a6 U; K! |7 @$ p- X
3 J8 M7 y5 W3 L) L5 b7 d( ?+ U7 F J
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
1 p: n1 D) O5 f# n0 w
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
8 z9 w. [4 d+ L) R3 D& _9 ^0 q
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
# G# k" F1 \* x; k# q+ Z* B" W
pLight->Appear( m_pd3dDevice, TRUE );
% T; T8 \+ o' e3 t0 e5 N
& J" t! t* u0 a# D" z' n1 l
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
f- e8 b0 j0 ~/ F
// D3DXVec3Normalize(&(vecSun),&(vecSun));
6 l: l% M) f3 F0 }
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
& {) x) \+ E# p- V- l! W. i! M/ E
2 B2 ] V& C* Y" c2 ~* v7 E# n1 } W
DWORD dwR, dwG, dwB;
+ q% l i: A: O' R J- k9 X9 ~
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 b+ a0 e! q: c9 Y
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 d3 J! g) m. J( `! u
dwB = (DWORD)( pLight->Ambient.b * 255 );
" G$ Z1 ?+ E2 s0 s) i7 T- l: W
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 B; o4 E; j }2 E. Y; b# D
}
) [ t. ]* Z( D) `5 @
}
& c( D& u" ~% \- G) M- ~. l' ]8 c- K
: m& M# [; i2 T
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
$ Y9 q9 A5 b- U# 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) );
/ H6 C& {- M3 w0 i3 K
::SetLight( bLight );
$ ~% h! x" J, c2 q& D! T8 |) u" J
: \: Y9 I3 s- I; H! F6 u4 n
// ±ao? ?D?í???ó á¤à?
3 `' U& m9 l" k$ u7 b8 B. h
m_pd3dDevice->SetMaterial( &m_baseMaterial );
3 h& p9 a/ Z/ Y$ O
6 U- B4 j8 h$ u7 V n% s% O% X
#endif // not WORLDSERVER
6 L3 _; ^ w& M/ [( R' R: ?2 S
}
; a$ K n: {# W% w0 B
并更换
1 T8 A9 N: H1 v; i# H
Code:
! s/ ^5 W. k, H& V n- o
__FLYFF_INITPAGE_EXT
/ N' ~: A( u' e; w) ?# T$ x
定义
1 F; L0 g5 ]* J: V( Q3 f2 o
( s: R. c$ c+ P5 C* ]3 d
9 W+ U O2 i9 Y$ P1 V
; K9 @/ ?- c$ U* ?* R
$ w2 e8 s) T2 h: ]$ [0 R# n& k; W
现在终于删除我的狗屁加速...
1 W) B1 Y% j$ M- L
1 D, _& q) Y6 a% }/ J: U1 a5 c. b8 z
5 [; q) k+ M& W6 _
# Z3 S9 ~7 r$ N9 g
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2