飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
7 H8 d- w; G! Y. ]% C
尾翼:
! Y/ A, ?# O8 L+ v9 `
9 S! B4 W( R1 t: {$ I* V+ I; t( `
代码:
; s' `2 n: r( J; j8 n6 u# |& X
CWndAutoFood::CWndAutoFood()
. |+ z) }% ^6 i: n2 k/ P' d) g
{
8 o9 [4 k6 p, k) }& }* R
m_pItemElem = NULL;
' S4 X$ Y+ j8 i4 ~8 p" R
m_pTexture = NULL;
" M9 @! }0 ~9 _1 }+ Z
bStart = FALSE;
& l) y4 Z8 @, p' F
}
( s0 L* t* a2 j5 W) @6 V
" T8 ?8 W1 x% H; D- @
CWndAutoFood::~CWndAutoFood()
9 y- ~0 x( t# b% {8 H
{
2 ~+ ]( \- L. l7 Z
AfxMessageBox( "AutoFood ist gestorben
" );
& z2 ?; V( _/ e" o# E" e9 n1 ~
}
' B, U% R) Y) M
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
: @/ L7 \' R$ p( N1 m$ T4 Y9 r1 W
{
- j- Z7 m6 \' L" @6 ]
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
5 ]6 _ B( f& m& F9 @1 o7 \
}
# D0 ^9 ?- t" |1 k
5 N# y/ s$ N$ |2 J
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
7 D1 A1 b( M6 M
{
7 D( o6 W3 q' g6 o
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
$ t0 {, e: ^1 ^
CRect rect = pWndCtrl->rect;
+ ]- S5 z( A' S
if( rect && rect.PtInRect( point ) )
; I/ z& x/ H# V! P% f) t6 T# {: n
{
" o2 D' F( F, w
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
0 Q) G) ?, v( B; {
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
3 K3 s% A4 B& o: M8 W$ \
{
* @8 ~9 p8 Q/ K: r: o, m
if( m_pItemElem )
# F2 |# K* s' |1 o& b2 L$ O
{
( j# h; {0 D4 k% y# w' F# _3 A; f
m_pItemElem = NULL;
2 r% H7 y2 \9 u8 k% p# i0 ]+ \: a6 _
}
, _9 L# a5 D) O. s
m_pItemElem = pItemElem;
5 O' n4 a: S, A" c
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
( E9 {& E2 Q0 u; W& T' T6 h& v
}else{
. t" i" F& v* o2 {
SetForbid( TRUE );
0 `# \- U! `* ^0 W$ Z7 e! T2 r
}
- { h% `. Y* w
}else{
) C7 a9 ~" ?8 X+ E
SetForbid( TRUE );
6 B0 m* u+ M; q' g
}
5 c2 ]3 Z: J" j: P' K
return TRUE;
2 Z! W% ?' [" v* L7 ?+ G
}
1 n+ }2 {! T8 s2 ~% s; ?! T# u
. ], L/ P$ Z- s4 ]4 L7 E5 `
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
6 i( W! K0 ~& i t4 C% |0 Y4 P
{
& B! [# C R% P" |
switch( nID )
" p& ?; K! t8 i
{
2 s3 c8 _6 N" N7 s m x
case WIDC_BUTTON3:
: l& j+ i3 Q4 V2 Y% w$ z6 n
{
1 p$ U: @! U D. F7 S$ u/ P+ r
bStart = TRUE;
) [5 ~/ X8 {# A
break;
% C6 n% j/ Z( B( t8 S+ ~
}
, F6 _- q, _% ^ M9 E8 w
case WIDC_BUTTON4:
9 o' l$ @1 a' P/ j r. ?
{
. i0 @0 O4 r- Q* o; ~0 }* U5 o
bStart = FALSE;
) J) Q3 r, y% `4 G
break;
7 ^/ i4 v2 i9 A8 e4 E
}
* Q5 C$ U9 ~4 ]/ q2 y7 i
}
* q- `2 u) P$ i) v7 ~" N
return CWndNeuz::OnChildNotify( message, nID, pLResult );
' k; T2 ~- M+ p
}
2 b7 \' i i6 a! T& ~2 L
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
$ N q* w; S6 G- R9 ? K+ o
{
( T' E( z6 n( q( [/ P6 g
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
- t% T, y2 G& X
if( bStart || !m_pItemElem )
' R0 x; {7 D; z9 K9 y
{
/ E2 r$ T) G/ ]5 R8 r2 i ?" \
pBtn->EnableWindow( FALSE );
$ H! T# P. I( q# v6 l
}else
* M. Y& C, o0 p' l- j" |
pBtn->EnableWindow( TRUE );
$ T6 Y( h8 C4 T
if( m_pTexture )
% E/ K2 q0 |7 _3 s2 r
{
: j- ]1 A; {6 S/ k, s2 h# {9 Y4 ?
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
4 A1 _3 Z' Z1 {7 p0 c3 A8 G
if( wndCtrl && wndCtrl->rect )
" O* y" Q$ m c+ l' B
{
/ q/ K/ g: B* R6 c
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
- d2 Q1 t8 \' X2 t. O- ~
}
3 I, [3 L: j7 B* J4 v' d0 a
}
9 O! W% w+ s) [ E7 \
}
, I9 I) F7 N- K+ A: C+ G
/ j$ [ W# g3 O7 Z+ s6 ~
BOOL CWndAutoFood:
rocess()
. u8 B! D3 I* L" V9 Y
{
8 p- j+ y7 V2 E% G6 ]3 [
if( bStart )
* \4 G. d( r" D2 `7 a( n1 L
{
, M1 a4 v" L- V, Z, C* j. g
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
$ D2 D0 W. {8 p) }3 h
{
$ K8 h- Z8 e- ^! i$ m0 O) |. D7 }
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
+ g/ ^0 y j2 p7 A
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
0 H3 w' T! i( |8 q6 F; I% d% u
}else{
1 O6 m3 S- `' J# k7 m) X
bStart = FALSE;
& i ?4 T% x3 H! b2 s
m_pItemElem = NULL;
# ~. |% p0 u e% W( E1 J
}
- l1 D6 S( O( B- ^9 Y! X% m- P
}
, Q9 {/ {0 a- \( `+ Y; x* Q$ t
return TRUE;
% S+ E5 H$ o/ c9 x! ]1 a
}
6 ~% Y9 y9 y& K
9 u; a( J% V+ n, X) j. a
登录视频废话:
0 g% q) Z e( Y9 P
尾翼:
7 J8 U7 X' X8 X7 w5 Y
2 Q" E* z: I- O0 H/ K2 i
代码:
* x! c' N- t8 W
1 r' g1 p/ u- i
void CWorld::SetLight( BOOL bLight )
0 e% K, G5 K. [7 p( T7 {
durch
4 F1 c# ~6 O/ I) }
Code:
8 b) x9 T" B# ^2 @" T* n8 c. Z
void CWorld::SetLight( BOOL bLight )
, t z6 p5 p m5 B! w1 Y" S. L
{
1 s1 s" p7 T% y. i {$ f& A7 g$ x
//ACE("SetLight %d \n", bLight);
9 e# w6 h; p2 r! G( t
' ]+ I+ G" W, P: M8 \4 h% ~9 G
#ifndef __WORLDSERVER
0 y& ^9 S2 u1 u4 X2 Q* B1 S$ H
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
$ h' P) Z0 d, z) Q% u# h
CLight* pLight = NULL;
8 R* f# q8 V- a- P/ s, }- T+ S
" I2 }5 [7 i+ j$ ?( K j
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
/ v! Z% Z* K" G S3 s+ {7 K
5 z; h! T4 J; p2 }- g$ W/ b# S
pLight = GetLight( "direction" );
/ q" N% m( f, G# ?& [
8 ?+ V5 M8 U3 x$ Q$ N! z
#if __VER >= 15 // __BS_CHANGING_ENVIR
& J/ z$ R C- E9 w
if( g_pPlayer ){
" ?8 M/ x6 y) ?6 T1 y
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
9 d9 t0 ~+ K) m0 G
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
- Z N8 W* g5 C. G
{
3 D7 c4 V( Q" a; Y& P
if( pLight )
; @7 D3 E" j6 L9 \2 ]
{
" Q% q# W9 o# N+ E
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
7 e! `0 m1 U; Y m
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
1 q/ F, p7 ~3 B
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
* z5 o2 `$ A3 a+ h3 s9 s$ b
: p- W( B5 h" v2 b, f2 x
pLight->Specular.r = 2.0f;
. z# L1 p; [$ |# f& G2 P. _
pLight->Specular.g = 2.0f;
; E1 _& }6 J! p4 F8 ]% `
pLight->Specular.b = 2.0f;
. G5 a n; n6 i( r
$ \2 v3 T9 H0 N4 Q+ @5 ]) ?
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
, \6 x: S: [1 k4 B2 v
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
y9 U0 }1 O& H; ^! [
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
6 O9 [& L! p; u9 A
( L! o$ ~2 \8 m) Z( N+ }& k$ N% X
HookUpdateLight( pLight );
2 U% m2 O" B4 O
- Z, T9 s9 P5 @; A
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 O, l7 z6 U6 K; l; r: ]0 n
0 O; Y. @/ U# B. H
pLight->Diffuse.r *= 1.2f;
3 O9 L5 P. q8 E z1 }
pLight->Diffuse.g *= 1.2f;
" b$ ]6 P' r5 i; o
pLight->Diffuse.b *= 1.2f;
e& O+ K6 O Z' N- i. K' X* N# p
& ^2 s# J0 W0 v' t
pLight->Ambient.r *= 0.8f;
* z4 v1 R& z: U( i5 `* R( q
pLight->Ambient.g *= 0.8f;
O4 a4 S* c0 ~! }
pLight->Ambient.b *= 0.8f;
& j$ t4 p" D0 s6 R& D1 z+ s- |
* l6 w' q& I, o& |! H
memcpy( &m_light, pLight, sizeof( m_light ) );
. R' p4 V& H; l) O+ k8 c
6 k* E( L' F2 ~& r
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
8 a _' G; ]0 O' u! {0 y- h' B
D3DXVec3Normalize(&(vecSun),&(vecSun));
! m# G$ } u* l% h+ r
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 T6 |! s7 Q& _7 M( F5 I s
pLight->Appear( m_pd3dDevice, TRUE );
" w2 k* {+ V9 v* H8 R! l7 `9 ]- a
5 R% t# d- g9 k, R- g
DWORD dwR, dwG, dwB;
% v% h o4 a7 ^2 Y1 F- k
dwR = (DWORD)( pLight->Ambient.r * 255 );
" e; @& d7 g X) [6 w
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ E( k- _6 j! v* P, C' q4 e7 \
dwB = (DWORD)( pLight->Ambient.b * 255 );
% f( v) ~+ V o+ n- g9 d( w+ \
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# h% }" w+ l% ~4 y, [. _, e1 q. U
}
- m' m& m3 A3 o0 V. c
}
4 @' @+ n7 e9 O, k
}
; Y ]: s2 y1 p: D& e
else
; h3 i- L4 {& \5 z2 j( l
#endif
! I( ^& U/ `3 H6 \: \
* M# }' s/ h; \$ |/ o+ X
if( m_bIsIndoor )
- A: x# R3 |+ h
{
, t/ o5 `. B1 D6 `, z: `3 m
if( pLight )
- | m- X$ _* I/ Y s
{
w9 M6 L$ K' [* ^% N4 V
// à??μ oˉè*
) m5 ]- x9 `* v& V
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
) ]5 @8 _5 |5 D) Q: r8 C
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
; Y/ [) Z+ O0 g8 H% t. Q8 v
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
' I3 E& X3 z' l1 V& d
: t1 P4 i. k% L+ y7 Z8 p
// oˉè* ??à?
! J, {- _; E$ ?( [ {" p1 c
pLight->Specular.r = 1.0f;
/ v$ T' U& j; L' e
pLight->Specular.g = 1.0f;
, a( @2 R8 U) @# Z, y
pLight->Specular.b = 1.0f;
% ?" g6 U$ j7 w) j) u4 _9 r
// àü?? oˉè*
; @ |8 X% q3 K
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
4 b b) L+ N g2 e' J5 a" s' _
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
& c/ |- A4 S8 z5 E
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
0 m& k1 p& [$ D: K( w
& L% v7 D) A9 X1 q6 g5 {
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 [# k2 X3 _9 g3 @4 p2 S
{
% m6 U: S6 x( U4 V
pLight->Diffuse.r *= 0.6f;
# g: [' l$ V% Q( }$ c6 p8 T
pLight->Diffuse.g *= 0.6f;
9 ^- |1 B4 A8 P$ u- @; f
pLight->Diffuse.b *= 0.6f;
. m+ _; D8 ~; S. U4 Q4 O
pLight->Ambient.r *= 0.7f;
2 U0 Y, [! p1 ]$ x/ Q2 w
pLight->Ambient.g *= 0.7f;
2 o( W/ r% v9 O9 q, N1 b7 l+ i
pLight->Ambient.b *= 0.7f;
& k* Y/ r0 V6 x0 L
}
, M" u' C+ O% m+ o" B
! ?4 `, u* F0 P
#if __VER >= 15 // __BS_CHANGING_ENVIR
- j2 l: G( u! e5 ^
if( g_pPlayer )
1 J' o! T. D/ H" \, r4 q
HookUpdateLight( pLight );
" Y! l3 w, b7 w: e
#endif
$ z! o" g3 |/ X1 b
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 i' [; ^& b$ L6 x$ u4 o0 X
- a1 n* S* \5 z
pLight->Diffuse.r += 0.1f;
8 h3 W" O( U, Y6 a
pLight->Diffuse.g += 0.1f;
; @8 `. e4 j) B. J" K$ k+ |7 J
pLight->Diffuse.b += 0.1f;
: i* \# W6 F+ q& V# J/ m
// oˉè* ??à?
N" x3 s4 Y) d3 r) v
pLight->Specular.r = 2.0f;
% g1 E* m1 `: Z; g2 a5 z. ^
pLight->Specular.g = 2.0f;
6 q( B0 K ~# g+ h; }
pLight->Specular.b = 2.0f;
' V) D6 [# K' a+ G) e1 _
// á?oˉ
1 {7 G; w7 E7 y" b+ l3 z& G0 Q
pLight->Ambient.r *= 0.9f;
# s. u2 \7 Y# O8 y. m W( f
pLight->Ambient.g *= 0.9f;
2 L9 P! t2 x4 P% W3 o
pLight->Ambient.b *= 0.9f;
+ w3 x/ V) y/ Z2 |
' G3 L8 n5 K# u& m2 o
memcpy( &m_light, pLight, sizeof( m_light ) );
; E3 `+ O9 i' L, Z+ r8 T! N! A
& p; j1 ^1 ]8 _0 S% h. ~
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
' h0 u9 x% Y1 O$ p: G% r. s! ?
pLight->Appear( m_pd3dDevice, TRUE );
# ^0 n. n# X$ \0 b( \1 r
/ c( g' C7 M; P; N6 u1 @
DWORD dwR, dwG, dwB;
% E2 F. b3 @; z4 G8 `) N/ m6 D I
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 b( ]5 a& w) L
dwG = (DWORD)( pLight->Ambient.g * 255 );
2 m( o# E7 P- N8 ~* f0 q
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 h* d) |/ f7 V: ^
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 [/ ?. Q8 _) m, s1 Z" h
}
7 I, l1 U1 S/ `$ D
}
) P9 l e. X# i- B, [1 t& ^
else
6 e; U& u$ @# ] u6 K0 h! @" w
{
7 L) t, [3 H6 |! I% d- s6 l3 L
if( pLight )
% F% E( U% A, a; L5 G; I
{
~7 d5 T- K' O6 M1 ?
( V: i5 D; n0 _: P0 W
int nHour = 8, nMin = 0;
5 S2 S* i [, w
#ifdef __CLIENT
# H) h5 ]- y: ~" s. Y0 S
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
0 Q5 G5 d j7 D, A$ C
nHour = g_GameTimer.m_nHour;
0 v n3 q; v3 H* D) F1 ~4 n+ K
nMin = g_GameTimer.m_nMin ;
; n2 Q9 [! F: R+ D" N! j" ^
#else
* h! m6 z' i! b+ Q8 }2 P5 R% Y
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
0 m5 ~- o) s4 I
if( m_nLightType == 1 )
, g( h, O: r/ L5 L( @
nHour = m_nLightHour;
- R3 ?* g0 A, C! f v4 Q
#endif
; @2 T& l4 J. m" h, K# y
nHour--;
8 X, ^$ ]& g6 L' G" I/ E c0 b8 A
if( nHour < 0 ) nHour = 0;
( ]( _4 W2 J3 K7 W7 H& m
if( nHour > 23 ) nHour = 23;
& |2 L, U @+ F
+ W9 d6 t% z7 Z G# ]
//if( m_bFixedHour )
& q8 G/ l$ d/ H7 V0 B' \
// nHour = m_nFixedHour, nMin = 0;
4 G/ z% n i; Z# K
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
% R! e; V* A d T, i' ~# H
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
( h' w, k; w( L& o" e
8 P0 a* F5 z9 F* ~
//m_lightColor = lightColorPrv;
$ | |6 n( D8 Y
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
2 R9 e" m5 B: Z E# @0 ^& u) i
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
& q5 w$ v8 M5 B
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
( ]9 P5 v9 Q% q! D$ L
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
k( g9 g- ]- v" D3 C( A9 Y1 r
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
% P6 L( ^7 E/ y6 N8 U: q& T
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
- Q, S C. E$ G& [+ ?
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
$ ] o/ z" X- A3 @; g* i# |
* [* V( N5 g7 Z8 K3 Z
// à??μ oˉè*
' J' P8 Q8 M7 C( } x7 Y- p
pLight->Diffuse.r = lightColorPrv.r1;
* K7 _- t' j7 x3 ?7 M
pLight->Diffuse.g = lightColorPrv.g1;
% U# t# O& p8 k2 a3 r# z1 {9 Q
pLight->Diffuse.b = lightColorPrv.b1;
3 A, d8 X+ U F: X
// oˉè* ??à?
2 Q* q& c9 ]/ _. Q& Z
pLight->Specular.r = 1.0f;
! @* `6 \4 z: x3 o) B2 J9 c& Y& J9 n% x- X
pLight->Specular.g = 1.0f;
' f: {% R. P6 m. E+ I9 Y- h
pLight->Specular.b = 1.0f;
( L6 n. J Z+ F0 {
// àü?? oˉè*
3 T5 u- b) r1 B: I9 P4 c
pLight->Ambient.r = lightColorPrv.r2;
: V# c: n7 [3 J: }" Z9 Q
pLight->Ambient.g = lightColorPrv.g2;
" r" K6 e6 J5 c/ N/ U3 Y6 H0 S
pLight->Ambient.b = lightColorPrv.b2;
$ j* Q8 I7 o' m1 P6 w
2 B& N5 f2 f0 }, J& P
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 A3 Z- l9 q: V+ f9 z' L# P
{
& `1 |$ p3 m' W
pLight->Diffuse.r *= 0.6f;
/ P. W$ R7 |1 O
pLight->Diffuse.g *= 0.6f;
! F$ E5 M3 ~. ~; q9 }+ _
pLight->Diffuse.b *= 0.6f;
# {' H( T, t6 f
pLight->Ambient.r *= 0.7f;
2 E' Y- s# ]+ k+ V2 q
pLight->Ambient.g *= 0.7f;
& |. k* y$ A) q
pLight->Ambient.b *= 0.7f;
- L; T7 U; L' {! Q2 l4 a
}
E- X7 T: W, C6 n) N& ]" a3 g
. I9 d9 k, \, A2 Z4 ^3 ^& m& h
#if __VER >= 15 // __BS_CHANGING_ENVIR
) \% d1 s! @ f* z# m( Z, _
if( g_pPlayer )
- `* M- _: S( Z
HookUpdateLight( pLight );
! H; e7 w' c3 [- u9 j
#endif
1 P0 v: t% w6 W/ e& n
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
[- p$ a& K2 B$ f- o
+ k8 N4 [' ^$ f8 f$ d) L m% _# ~
#ifdef __YENV
1 V. O; P7 ?$ _! R2 D- x
pLight->Diffuse.r *= 1.1f;
6 ?) F2 r9 k. h) v
pLight->Diffuse.g *= 1.1f;
9 ^ M9 I0 X/ n! O4 y
pLight->Diffuse.b *= 1.1f;
$ Q) [7 R0 }1 m2 M, f4 S+ G+ l
// oˉè* ??à?
3 t( a# [: b+ I. r; j1 p
pLight->Specular.r = 2.0f;
( i, q" W" k; x. p
pLight->Specular.g = 2.0f;
5 P5 U& K1 A- |$ U$ q
pLight->Specular.b = 2.0f;
4 N/ Z' p$ {. ]6 E% q$ c* c/ p1 U" @
// á?oˉ
0 c5 B5 w$ j0 Q% y. i" b
pLight->Ambient.r *= 1.0f;
5 C8 v* c+ |, I9 E
pLight->Ambient.g *= 1.0f;
5 i# E" U$ V2 k' L. v
pLight->Ambient.b *= 1.0f;
& W' _" R7 ~$ p' }9 B
#else //__YENV
; B3 W7 h5 d5 A$ u5 O- h
pLight->Diffuse.r *= 1.1f;
* q) g5 n% P4 o
pLight->Diffuse.g *= 1.1f;
# z1 K+ g. X: j7 a
pLight->Diffuse.b *= 1.1f;
! }% `; X! P1 x
// oˉè* ??à?
4 T/ `( V2 \0 f, n
pLight->Specular.r = 2.0f;
0 s& V c {0 c* C7 z1 h
pLight->Specular.g = 2.0f;
1 p, i9 @8 X: m
pLight->Specular.b = 2.0f;
4 p3 y! O) x: A$ H0 a( a( V" w
// á?oˉ
& w8 x+ I$ C5 N3 I. ?' {( H
pLight->Ambient.r *= 0.9f;
# | P- l p2 A
pLight->Ambient.g *= 0.9f;
( q2 A! K2 b) x& ?. t6 g% [: h
pLight->Ambient.b *= 0.9f;
! m0 \: h4 I$ q2 K$ k0 w- S6 |3 ^
#endif //__YENV
7 k. x4 K H; R" S6 ~ f
) W$ u" N. r6 L4 G1 b) C: @
memcpy( &m_light, pLight, sizeof( m_light ) );
% F# q: i0 [' I. G* J" a2 T
; E3 E( E5 N" A/ E& @0 M; H
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
* T; `4 N |1 Y9 P& r
D3DXMATRIX matTemp;
" M; T0 c8 s6 \; I& \. B; J+ Z: _
static const float CONS_VAL = 3.1415926f / 180.f;
7 i$ _9 c- W/ O8 [) X
' A- W7 L9 K& v7 Y
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
* I9 t5 M- J5 r$ z2 h' P o; ?
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
5 R/ S. o: m8 y2 k+ y& T& J0 T* t% A
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
& w9 G. }( O& m' I( p: J4 m% t
pLight->Appear( m_pd3dDevice, TRUE );
# P8 s- E9 F( A/ o1 E' C0 x
, `8 s* N9 E/ S
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 i) g, ^! Y$ X9 W$ t% F$ w
// D3DXVec3Normalize(&(vecSun),&(vecSun));
3 @5 L! R4 c7 ^
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
' n: ?* ]" Y" }& m5 X% X+ J, F
2 @" k6 S& z3 C5 p" L
DWORD dwR, dwG, dwB;
0 _' m9 F& P5 A
dwR = (DWORD)( pLight->Ambient.r * 255 );
- a9 H, q; N9 G
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ g- _9 U0 B) G* P
dwB = (DWORD)( pLight->Ambient.b * 255 );
2 p& r1 y& A% f+ \" c
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
, @! r- l' k" u, K$ E5 R
}
% c; J- ~0 H+ O0 J6 e' t( Q
}
* j {- @+ g" K, b
* Q+ c u+ D9 K! B! O' K' b
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
2 g8 K# T" R: k+ z
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) );
, A/ t, a# N& }9 w' ^6 O
::SetLight( bLight );
9 }0 X' f7 A3 T
: l: X6 } I- O: _- R3 o
// ±ao? ?D?í???ó á¤à?
0 G) M8 y" |9 x! I
m_pd3dDevice->SetMaterial( &m_baseMaterial );
1 I/ ~. k0 w `2 d' C4 c% n
5 k/ ^+ @8 R) s3 v @
#endif // not WORLDSERVER
6 C! g9 U5 T( @7 T4 Q1 [
}
2 e9 L, P- A- p7 O' c* b3 a8 R0 T
并更换
% t) q: Q" @8 ]% S0 f& I4 k8 {
Code:
8 T) D, t. i: Y6 C; x6 J, w" Q% p8 }; k
__FLYFF_INITPAGE_EXT
, g, C: x5 }% j: |& W- N
定义
' S2 n+ U! |+ ]7 F; l+ r" Y( t
8 L/ z6 d' W L. H' O0 v- |7 Y
3 L l) k+ E% t4 s
; {" M8 f$ q7 ?% G) f# u
3 e; K$ k+ b/ H
现在终于删除我的狗屁加速...
& K l+ ^- k% J6 }" `0 @
7 y( F ], n$ a
# L. ^) w6 o3 m: c
8 ~( A- ~% {2 d6 R
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2