飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
* Z- g. T ~2 \4 a# b0 {& ?
尾翼:
- K9 C. {" y4 G0 i; T& @% D; M
; E- A& J* N9 m9 A
代码:
* _& E7 p, y0 p
CWndAutoFood::CWndAutoFood()
" O: S W! m9 q( ^( F, ~. p" K
{
, z' y/ w N+ m+ |( Q& W1 M; x
m_pItemElem = NULL;
) J& S+ M- j* v p/ U5 c
m_pTexture = NULL;
9 D3 u4 h& A! \: h* e+ r
bStart = FALSE;
4 z# Y& B( G9 R6 ^; `
}
4 e+ |0 _5 \ [4 [
1 V0 A/ w& q/ c3 ]9 E/ B/ F0 S
CWndAutoFood::~CWndAutoFood()
" {8 r9 Z, R3 O7 g( t
{
" {. R! p+ ~% Q0 Z! ?: L$ x
AfxMessageBox( "AutoFood ist gestorben
" );
% J Y, X ?6 I
}
1 S A9 w& X2 o! m
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
& F( ~5 U3 u$ `# n" V$ T
{
. |! p& r$ j7 k1 Q4 u
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
4 t, F+ N7 w! O6 u
}
, V6 @* X& q" H
F- X3 u& b8 A& w0 I+ u2 y& j
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
6 M& Z% Q0 p8 y* ]5 _, D
{
4 b. U$ V H1 V0 M1 }: t0 k
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- I; c8 Q ?" Z/ _' T* S% M! i
CRect rect = pWndCtrl->rect;
$ U1 ] z! U' w' H/ V# |
if( rect && rect.PtInRect( point ) )
) N8 |7 u2 A- v$ _) L O; @
{
: X* Z% ~+ J' [0 T9 @) [4 E
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
$ D9 i2 V- G: N9 G0 i4 q
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
. O- @3 b; I3 f4 Q
{
& a: `$ E9 g3 S9 X3 N" [ g
if( m_pItemElem )
0 `0 g7 N& E1 h+ j2 U9 x0 C
{
( T4 N2 E/ y. k& D% n" }. H
m_pItemElem = NULL;
; q2 ~8 N& M% ~" J& ?
}
$ O+ Z. d" u0 N6 |3 S$ y! M* l; B. J/ D
m_pItemElem = pItemElem;
0 A, k$ N! `. N! d4 M$ m% z; J/ Z
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
) O2 U$ u' s5 x5 W% w
}else{
2 z2 b$ V* H3 Y ~: T
SetForbid( TRUE );
5 q8 t* d! p& Z/ q* ]. Q" G8 B. d! S
}
" N! y- }5 h& j. L& n8 x$ ` ^3 L
}else{
* Y- O, J; X% W/ p
SetForbid( TRUE );
" [. d( \: n& E r$ f- t& `, L
}
8 y- o# L4 n9 T+ y+ L h* g
return TRUE;
+ @1 \( X- O) k' @6 c
}
9 ]2 H. O5 z4 Q2 b6 z6 r$ b
7 q; f2 e# u4 y
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
, `- ^! o; ^5 ]/ E- v
{
, ]& \# R8 m6 j, g. [2 D
switch( nID )
7 M' K/ U8 {7 K" k/ C; W: ?
{
1 U. P' v( C# c8 ~1 T9 k: E
case WIDC_BUTTON3:
% W& c6 _. a) W r F/ M4 Z1 a3 }
{
$ L8 u* o0 B0 x
bStart = TRUE;
7 Q) p. V: j" o; D# D" i
break;
+ H- n* \9 n& F( J
}
. v' z* F! g- d* k, }+ R
case WIDC_BUTTON4:
" B6 q+ a* U: {6 @
{
[# W- z' Y3 h# i, Y, ]( T' S
bStart = FALSE;
5 \0 E- G. e% g' s
break;
, B4 W& K2 k9 a& L* h
}
" E# ~$ H" D2 C: k# [' q2 s
}
2 k6 i1 u$ o. @1 G. Z. I0 M
return CWndNeuz::OnChildNotify( message, nID, pLResult );
" i; n) ^$ s. ]% I- x* @
}
9 D* R% x$ e+ g7 `) C8 {
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
) Y: |' g# d3 K3 X v
{
! I; \! ~% m; H/ v
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
! [' a/ J& K% m9 O4 r4 }4 z
if( bStart || !m_pItemElem )
$ {* Q* t9 T8 l( Z- v
{
* m6 r7 K9 Y& C, B( X
pBtn->EnableWindow( FALSE );
" e7 k6 e: R+ c3 U/ l
}else
% }0 ^4 W# o. H: B% ]2 ]+ D+ M
pBtn->EnableWindow( TRUE );
+ H# x9 d* H: n3 h( x; T v
if( m_pTexture )
. e, g# X( j9 B$ p7 {2 d
{
5 c5 E1 V% N9 o' }1 y* U
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
: w, e* `; b; d
if( wndCtrl && wndCtrl->rect )
- n2 e* s b# p, L7 R
{
2 [7 o W5 A- Z+ z8 G
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
4 r3 C0 O# L# q1 k8 |9 {, L0 [
}
6 e, q' ?4 J' E, v6 A
}
; N1 ]7 f0 B9 ]% t# I3 [+ Z
}
& g, P; @" t' z6 P( f F9 o$ r/ x9 j
( H8 l7 C4 r. v4 @7 k6 d
BOOL CWndAutoFood:
rocess()
C1 G; ~4 u% F8 D9 w0 V
{
3 U( q4 u6 j# Z* L% w7 y
if( bStart )
5 S4 {) n" @7 a. H3 V9 X' C# G
{
4 P+ r4 r9 y5 w& ?) [
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
, E% U! c* _ f3 L" c
{
, U& G* X$ ~( G7 }1 V
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
* y+ x6 g) s. T" ~
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
2 _) Y! L+ ]4 C2 e( W0 D
}else{
! q% D; j* u, @$ j4 |) ?6 v
bStart = FALSE;
6 [% [4 `' ]! S4 l1 ]5 [7 H9 c/ B
m_pItemElem = NULL;
% L0 ~! H2 ~ V
}
& O, D5 D! K2 f4 N' E t5 V
}
# C' L. I9 n2 D1 \2 a4 |( j
return TRUE;
0 @7 B7 Q. Z1 \, w. T
}
: a; @) y1 U4 e& {$ j& p
7 z" f4 N$ m+ `- L3 Y! f
登录视频废话:
3 E) P( d& X: W& I8 ~
尾翼:
' G' r$ r9 W5 I7 q
/ p4 T4 a# c% U0 K+ x- T6 g
代码:
5 F. D( w4 n* t% Y& o7 @, _
! D6 a& Y6 ?" p0 B+ C, T4 B* ?6 j( ^
void CWorld::SetLight( BOOL bLight )
0 k, p8 C- ~! |+ X
durch
1 H3 f1 |+ o, ?5 J6 ?
Code:
' r1 o- L! b4 g+ g, e/ N0 w& w6 I
void CWorld::SetLight( BOOL bLight )
; d/ W N0 [2 F6 C& y; j
{
0 I. X% P5 y6 W
//ACE("SetLight %d \n", bLight);
/ u: ^4 b8 f5 [ w
3 L% T! |! M( I/ J1 I
#ifndef __WORLDSERVER
, M* g. s j I- e" z1 I
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
+ [& ~; u/ v, i
CLight* pLight = NULL;
4 l9 C; x" e! V3 l
9 u5 f: h! C0 g+ K+ E8 l
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
0 W: a# h" c6 J' U. l
3 u) F0 r! x; ]6 z0 s+ r1 W1 q
pLight = GetLight( "direction" );
D0 x6 [9 I$ e/ b L0 z2 e& c
. `8 N( _& `) i9 c
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ L4 u) u7 _3 y$ {
if( g_pPlayer ){
; B5 L6 i, t! I! s7 u
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
/ i+ k$ {3 w. y0 X5 z& D" w
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
3 T: ], {* {1 x% Z
{
% J7 F5 w7 R3 x" `" d, u
if( pLight )
/ R* A' M* `0 x
{
k- G$ r& H, m& x: q- h
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
5 R |( n, u2 F/ P$ p8 X
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
v S* Z* ]5 y9 a3 N
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
: S2 v( m# x7 @. }
4 a6 j& Y, R* L/ `0 t
pLight->Specular.r = 2.0f;
6 y" ?5 F; D' _4 M/ ?8 v
pLight->Specular.g = 2.0f;
) u- m. x/ {4 H% Z
pLight->Specular.b = 2.0f;
% R" N% D# f% X+ R
( ?" F# \% g& y( J1 {: M1 k3 H
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
. H9 [6 p2 t E
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
& _$ U2 d! c! [
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
2 i0 g5 V7 ?6 |% v3 q: o7 |0 [
% L6 t/ k+ F" J
HookUpdateLight( pLight );
# o y) x# {) l5 f# e7 i
; L" W9 m/ f' G
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 ?) n& H4 ?3 }! c
0 [1 P" W3 e9 p
pLight->Diffuse.r *= 1.2f;
% c# L- X$ C( X" N! {1 @
pLight->Diffuse.g *= 1.2f;
6 \; p4 o+ M$ m
pLight->Diffuse.b *= 1.2f;
8 _% S# B( [/ C/ R S2 s: n
# h. G- C' Y# d
pLight->Ambient.r *= 0.8f;
, L ^' N6 ~( b3 }, N, R
pLight->Ambient.g *= 0.8f;
- ]& Q0 R! S# a% \: e7 P/ C
pLight->Ambient.b *= 0.8f;
2 t* }2 `5 X" ~5 ^0 r5 @/ `, q5 K
Q4 r5 d: `( O
memcpy( &m_light, pLight, sizeof( m_light ) );
" L2 d U H1 r. q
5 {% L3 s' C/ D8 D4 z$ F
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: _% @; J `" G. G& M$ m7 P
D3DXVec3Normalize(&(vecSun),&(vecSun));
% |* y- i/ q' L! i) E. s3 B
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 U5 M# j% g" E, [! k" P
pLight->Appear( m_pd3dDevice, TRUE );
6 n, T2 i- h& Z! k, q& e) N
0 g% F8 a$ L) Q& y4 K% I: q
DWORD dwR, dwG, dwB;
2 T0 _! h5 r$ {! X
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 U) B. m5 O3 e1 V9 ~% w& h% _
dwG = (DWORD)( pLight->Ambient.g * 255 );
7 a0 c6 E r! H; h0 ~" B H, X
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ R0 z A, O. S9 L3 x
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' L4 Q) ?/ y! ?- x$ x+ L' w
}
2 b1 S8 F0 P+ S! H" h8 n! Y( L3 R2 v
}
- l T% Z( a1 O% N6 J- A9 Z
}
8 V, u2 p5 \% L. \1 b7 x5 j1 L
else
8 ~; y1 F% q8 K5 C! e$ `# V
#endif
`; y4 S" I6 W3 B/ Q! ]
7 g5 ]( K. x, K! d1 Z: ~# M) x
if( m_bIsIndoor )
( ~+ z1 F- v$ X) q" T
{
; v- U1 m1 u4 S
if( pLight )
3 X* p- c. p/ N) m9 V
{
& K" ]9 e( O) ~) R: Z
// à??μ oˉè*
: b' m$ i3 p: }( t9 V( W; \
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
2 {! {+ Z8 p' ?+ j0 B
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
; U* x/ ] q& ?- I4 i
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
9 d4 B& i" O+ Z& d. f& O1 n
, Y6 D; ~4 _) }
// oˉè* ??à?
% [7 ?% q2 b% a1 m
pLight->Specular.r = 1.0f;
6 d5 J* a, `4 {) a( d
pLight->Specular.g = 1.0f;
) v5 ^- Y. Z( X
pLight->Specular.b = 1.0f;
2 g- [4 @$ b5 \7 Y' O7 k0 e4 a
// àü?? oˉè*
8 ~* i( X$ r8 F0 A2 P; S: S, s
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
8 H+ w1 Z/ x+ T: l- U
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
# k% x" D- _7 D0 F' c- I
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
+ J$ J% h, K' Y$ ^2 r4 i
, X! d6 o: @$ \" R) A5 M+ @- f
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
X+ }* z0 z9 e9 @
{
' m* D5 l' L) y2 z O- c+ a' I- Y
pLight->Diffuse.r *= 0.6f;
4 V' o4 }# B4 m% D7 ^
pLight->Diffuse.g *= 0.6f;
w E8 a% f9 z" B, X
pLight->Diffuse.b *= 0.6f;
$ E0 C7 y. W+ k! g
pLight->Ambient.r *= 0.7f;
$ M2 U. l) K! C* B- t! K5 d
pLight->Ambient.g *= 0.7f;
( @( _* D: x0 @, S( `
pLight->Ambient.b *= 0.7f;
$ z. K. ]8 l$ I6 ^
}
' \0 k7 S$ @8 A
0 T3 w5 |) ^2 K( y7 o/ k4 A
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 _( ^ P2 O1 u
if( g_pPlayer )
2 Q1 x& i- E9 z$ @$ o) f0 t) m
HookUpdateLight( pLight );
& e+ z- t9 j: ` O
#endif
" V% r+ o" H& i' N
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 ]; J ]) e* D h1 K4 o4 _
! D2 F' u/ @: c8 q3 N' [ `3 s
pLight->Diffuse.r += 0.1f;
. ] M; m1 a( C- e% h
pLight->Diffuse.g += 0.1f;
2 n5 \% c: I$ b- A" ] {6 p
pLight->Diffuse.b += 0.1f;
9 a7 d8 ~: m. w" b# A, F1 d
// oˉè* ??à?
0 G2 V" v, j+ R |: h; A
pLight->Specular.r = 2.0f;
( r7 p& I8 G- \( z/ l
pLight->Specular.g = 2.0f;
) M% q! P, P# F, z- n; [
pLight->Specular.b = 2.0f;
' [/ u, F- ~/ `, P# F- |4 j' C
// á?oˉ
+ \9 y# Q9 a- ?+ J$ z; Z7 [& T1 j
pLight->Ambient.r *= 0.9f;
! u# r! M( Y a- \8 x5 `
pLight->Ambient.g *= 0.9f;
! `6 Z1 N& X, `7 u
pLight->Ambient.b *= 0.9f;
b4 Z- @ H$ k9 o: E: q1 I/ J
; m, P- n* U+ `; p, _! Y
memcpy( &m_light, pLight, sizeof( m_light ) );
- X" t! \3 I2 q
. w; q! T1 p9 [; c- T( ]
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
7 C$ d4 E( p" r& h8 {0 V
pLight->Appear( m_pd3dDevice, TRUE );
1 G2 i; H5 W; g, I
, B6 R0 A, U, \2 Y* n
DWORD dwR, dwG, dwB;
2 {; w$ Q3 [" o# V- r. |9 c4 z
dwR = (DWORD)( pLight->Ambient.r * 255 );
G( M( M5 B$ E4 D) e
dwG = (DWORD)( pLight->Ambient.g * 255 );
2 W! o/ r% g9 Z
dwB = (DWORD)( pLight->Ambient.b * 255 );
# u2 N# k1 r- B: ], X W2 ?
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
B! `+ e* T$ r, {
}
2 ?( h( S( p) g' K1 v {* Z% v) P
}
% a& p: J/ b, r" @# L2 G
else
1 p" d% n. l) v+ z
{
# Z) [/ _- A7 M8 E: o2 B5 q
if( pLight )
$ {% @* d9 t9 _! a) s1 A5 k
{
( G2 J. ]1 l O) H( p8 L
4 R# r7 Q' W% M9 u1 }
int nHour = 8, nMin = 0;
; r+ ]) W& a' W7 ~
#ifdef __CLIENT
! ^; r2 }; H4 x4 W0 G5 c; Y' r
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
0 z4 `2 M' ?. V3 H; m
nHour = g_GameTimer.m_nHour;
6 D2 J+ N5 B* \4 D. ^
nMin = g_GameTimer.m_nMin ;
7 e0 }0 y- Q- Y7 Q* q
#else
+ r; \8 G' U }# r8 W8 L
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
- M+ `$ ]8 {8 }3 s) a3 Q
if( m_nLightType == 1 )
2 i6 Z8 l2 w: {+ G$ y
nHour = m_nLightHour;
! w/ p: [! g: w+ I k. B' H
#endif
" |$ `# l0 n4 n. |% N, r* g
nHour--;
6 J4 ?) G' H. Q0 w
if( nHour < 0 ) nHour = 0;
* S I4 b$ C! d' M4 F* }
if( nHour > 23 ) nHour = 23;
; t- t: w: B) _
* q' ^0 z' n- }8 T" |% F& o, N& [
//if( m_bFixedHour )
( @5 C# d* o$ H0 ?# Z; {1 P7 d; K+ e# X
// nHour = m_nFixedHour, nMin = 0;
9 J6 a& [& w3 C2 Z6 z$ i! a
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
, K5 W* l: {/ N
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
( T2 m+ t: D- r: H
& L3 Z0 k1 ~5 S! z# P2 R1 ?" y2 m
//m_lightColor = lightColorPrv;
- t }. i3 a1 v8 z
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
" b4 _5 C- M: m- U% o
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
: B$ z$ D9 H$ I! B& w* v& }
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
9 n! r; P* V, V$ e" ^
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
+ f2 M0 b" P" z& g6 b
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
8 Z* e) [! X( a5 ?$ l* ?1 d
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
o; ]1 { I8 Z
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
4 f% K9 P$ ]$ u" j
0 S9 J, K# }. E* H% G$ W; P- ?
// à??μ oˉè*
% z1 y' ~4 D7 Y: M2 Y3 `
pLight->Diffuse.r = lightColorPrv.r1;
; p4 I2 F, q0 C0 s
pLight->Diffuse.g = lightColorPrv.g1;
2 g) H% ?3 [1 K/ N6 a
pLight->Diffuse.b = lightColorPrv.b1;
" k8 Z7 R2 `7 C6 Z+ O- ?. m
// oˉè* ??à?
5 z; O& d5 r+ }0 H( `
pLight->Specular.r = 1.0f;
) _' |/ Q3 r4 s0 \4 \7 P8 D
pLight->Specular.g = 1.0f;
+ U7 ^ ^6 ~) c U( I3 Z
pLight->Specular.b = 1.0f;
- {# u* Y# D/ ]$ E4 [
// àü?? oˉè*
# ?& q; V6 G6 d+ M
pLight->Ambient.r = lightColorPrv.r2;
5 h: \) M! U- a% W8 j3 Z
pLight->Ambient.g = lightColorPrv.g2;
) `: s1 h6 n" D) |1 ]' D1 Z0 Z# W: o
pLight->Ambient.b = lightColorPrv.b2;
w* B, G0 n, [
/ \) t( b2 {4 \ t7 J
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
. s2 s" A" @4 p# D
{
2 O2 r3 c" R5 u& Q. U
pLight->Diffuse.r *= 0.6f;
6 b" `9 X8 h, {2 m' H T+ e
pLight->Diffuse.g *= 0.6f;
% N+ ~' f5 t' X& w" R) `
pLight->Diffuse.b *= 0.6f;
b" m4 V L0 a& \( Z
pLight->Ambient.r *= 0.7f;
* s9 {' \! h1 X0 s
pLight->Ambient.g *= 0.7f;
! [: e" g; ^- i1 [. C) U4 E# }
pLight->Ambient.b *= 0.7f;
# z8 m; e' c% S
}
4 I, u/ \/ _) m% b5 K
- g q6 }" y8 a {
#if __VER >= 15 // __BS_CHANGING_ENVIR
% k& z' }3 e N/ ^& }* D8 U
if( g_pPlayer )
; g _( a# S' d) Y$ H+ n5 ?& M
HookUpdateLight( pLight );
' J* H( g/ s- {% U2 M0 K& N
#endif
d/ w7 D }) b* {# k6 f
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% c! f0 b2 ~( S2 L2 A
; f. Y8 g! Y. h2 i. J0 A: ]
#ifdef __YENV
& P0 b% e) @4 \8 k
pLight->Diffuse.r *= 1.1f;
! u# Y4 \6 ]0 c8 Z
pLight->Diffuse.g *= 1.1f;
. m. f$ V1 d U$ U2 x5 G
pLight->Diffuse.b *= 1.1f;
8 m# I: F# h- J9 V
// oˉè* ??à?
0 `% r# x" e) W$ ]
pLight->Specular.r = 2.0f;
$ T% q3 h: }4 v7 |
pLight->Specular.g = 2.0f;
' s0 a9 d/ H; h9 J% z2 t2 ]: S
pLight->Specular.b = 2.0f;
# l; ?& \) K7 p* ^, L. p8 O% _+ z
// á?oˉ
! p2 I8 \6 S' o! g* W* V3 `
pLight->Ambient.r *= 1.0f;
* N( ^9 j2 G2 n4 T! [5 A
pLight->Ambient.g *= 1.0f;
& x& s9 e, ]. u; B$ N
pLight->Ambient.b *= 1.0f;
, A! {9 k# x* {
#else //__YENV
a9 d4 o4 [7 l9 E$ u
pLight->Diffuse.r *= 1.1f;
/ T; I- ?! S1 M e, G2 O' a
pLight->Diffuse.g *= 1.1f;
8 s2 @" m2 s d0 r
pLight->Diffuse.b *= 1.1f;
& ]# a. P0 ?# L; V
// oˉè* ??à?
1 ?* ~) z( |4 B7 t v1 ^- w/ Y) N
pLight->Specular.r = 2.0f;
+ I& S+ Y( {5 e1 F! D0 L
pLight->Specular.g = 2.0f;
6 e' j, a0 I e. a% S- i
pLight->Specular.b = 2.0f;
1 M5 X& P! P' S2 m) `8 b
// á?oˉ
9 T* S3 B! ]2 B( }+ ` V
pLight->Ambient.r *= 0.9f;
# Y; K* x+ }6 S+ H
pLight->Ambient.g *= 0.9f;
* W2 N( @* J7 v; y9 N/ t2 |
pLight->Ambient.b *= 0.9f;
8 F0 ~4 ]: t% ?+ X* Z' h' u
#endif //__YENV
8 ~$ s3 e0 {: V* k- f: u
! W# ^7 T3 F; F# ^- D" h5 N1 I
memcpy( &m_light, pLight, sizeof( m_light ) );
0 G, B' S( i, P7 Z: H2 L
! y3 v/ h! m% C
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
* `( |' r5 Q3 I. Y5 H) Q4 [
D3DXMATRIX matTemp;
7 [. j* j" H, J* D
static const float CONS_VAL = 3.1415926f / 180.f;
, t4 B: q# F/ h" U% O% i
. s8 O% h" o6 G5 M k% Y2 _
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
2 l0 l) z K w3 I# r
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
: l1 f( f7 X/ \& k" V0 V g' P* T
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
9 o$ C, _( {2 n% I% U* [6 g
pLight->Appear( m_pd3dDevice, TRUE );
# Y) y' B' i0 o( L( W0 R& t
: o! u) x |4 _1 A/ N# A1 X1 \8 X
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
2 D0 g1 t+ Y# X7 g- F
// D3DXVec3Normalize(&(vecSun),&(vecSun));
; N9 x: Q+ i7 j
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 _4 E+ B' e8 _' {+ k
' ]7 O( E, X. b b: P1 O" S
DWORD dwR, dwG, dwB;
% P3 w+ D' e1 o+ X1 ^. T/ W
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 I' L. H& w+ p+ y8 _" Y# B, G
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ l0 {- U" o7 I5 z
dwB = (DWORD)( pLight->Ambient.b * 255 );
2 l, {6 P+ L+ R7 ^4 z( P1 ~
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ V9 w M* B1 c: ~: N3 q
}
" x6 f9 O$ h3 y- e
}
2 _) c# \6 Q# W: Z: L* J% p
8 }4 r5 J1 D' u1 I6 W9 q
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
# u& O' Q& B1 ~, i | c
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) );
: l2 }+ o$ @4 V3 | i* Y5 W& @8 M
::SetLight( bLight );
* r- k3 c8 r' R; y% v c7 P
/ t$ q# J9 N7 {/ `2 S
// ±ao? ?D?í???ó á¤à?
2 u9 z, t$ V* f" m3 `: C2 C
m_pd3dDevice->SetMaterial( &m_baseMaterial );
* c: x( g7 d. }, Z
( `% e3 ~" N- @
#endif // not WORLDSERVER
) f* H. b& l* @+ s' C
}
0 c5 L' `2 D( x$ o
并更换
7 y. T& m( m, n4 o
Code:
- S. ~6 Z) ^* b, f) Z
__FLYFF_INITPAGE_EXT
) J& O% A) m# O* j
定义
; E- ~% M4 n0 M! t
5 |# v5 l2 T; s7 a7 D5 Z
# y8 s; I; L6 F8 m
+ L5 _3 ^9 @' ?( s! Z. H0 T/ p, |+ M9 }
) z, d! i+ D+ G, _
现在终于删除我的狗屁加速...
, Y7 K+ t0 K0 w/ x' x4 q) D
( w- E& L! \9 H4 ]
: r# j5 z0 t8 Z5 l; {( Q
0 H6 ?6 z6 q5 }! K# s5 [4 _
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2