飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
) W/ K% m: x" z9 `4 d( d
尾翼:
: R9 B8 F( f$ _3 o/ K* F
* C" w" l0 |4 `5 d
代码:
2 M+ H' H1 n- r" Q. p7 K
CWndAutoFood::CWndAutoFood()
9 g( Q" B: B$ v. j3 R. p/ s
{
S, h6 t0 Y1 H0 ]
m_pItemElem = NULL;
" S! r/ n5 [: Q' O4 J
m_pTexture = NULL;
/ F5 _& H/ x) k5 b+ g( l
bStart = FALSE;
8 f4 q3 A( B5 |/ N" ?, Z7 M9 v+ j: |' y
}
! Y5 R: g8 W' {4 h- o8 ~' M
* U! K! r! n$ [
CWndAutoFood::~CWndAutoFood()
) z6 B6 N" F$ E9 [4 T4 C" i
{
* m6 x6 q! c6 J$ d* z
AfxMessageBox( "AutoFood ist gestorben
" );
. ~6 Y* |2 ]& d$ B7 H9 G. V
}
" x0 b \0 E7 q/ m- P4 Z* |# G; M
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
/ {$ n; O8 _; [! h! ^& x v7 ]5 [
{
7 j% V4 T( n* m- B, O1 j
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
9 j9 B/ j+ C2 c
}
& _) x$ m! ^0 A8 y/ M0 _5 K
+ Z2 c/ D3 y5 L2 r9 e
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
5 V, a" B e( s* b0 p# @# r
{
/ |. T; w+ r0 D/ A: t) Z+ P0 _
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- L0 I; g1 C" ]; H
CRect rect = pWndCtrl->rect;
, ~& z" _+ x! m% O7 J$ O+ A8 {) m
if( rect && rect.PtInRect( point ) )
; P0 m: S4 {5 G
{
u& M; l3 F4 Z" R
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
B7 W! }/ `# q+ p( G: e: L
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
- X# y9 x! ` E0 x9 v3 `
{
# O/ b3 H( Q ?# ?: s. S2 a
if( m_pItemElem )
# i/ G" J6 S# F; L$ E% K
{
; W, L1 P' }; H, K
m_pItemElem = NULL;
3 A6 Y$ c) ]/ S. W
}
! }& r# D% D) ^) \3 I; o& | ~
m_pItemElem = pItemElem;
+ c' Y# B8 ?. G
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
1 [* Q. O' i+ \4 A8 L
}else{
6 H7 w/ K7 s, m
SetForbid( TRUE );
6 ~- u# C6 f! Z7 R8 S
}
9 m$ }. w7 r" t0 Z5 p( f" M
}else{
2 b3 V# ]/ I$ U/ Z; A: u, ]
SetForbid( TRUE );
2 p7 W& O0 W, D4 O
}
0 A) f- y3 e$ C# `) P5 ?
return TRUE;
) l, ` Y4 z& C
}
; o, T2 O/ n) \9 `+ g& I
' ]1 f( f: y/ w4 C1 `. @
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
& |( ]+ Z1 Z" @+ `. v( c
{
; {0 [! Z# X! p) C0 i+ L
switch( nID )
6 ^6 ~5 e8 o( q$ F* P" G! z- K/ a e
{
) J* ]" _2 m) Q5 h4 M# d
case WIDC_BUTTON3:
; x9 X3 n; d# {2 N% A
{
Q) s4 v# K8 E! @5 \# }# H. n
bStart = TRUE;
1 O. L" E" V3 N9 R! J1 D; L
break;
; z, N& Z& D6 ?1 |- |
}
9 j4 ]. Q1 u3 c8 M) \
case WIDC_BUTTON4:
' ?; G( Y/ |% n0 t2 G5 ^; K
{
; _; q! M8 G! z6 r( N
bStart = FALSE;
6 Z( J* y2 ~2 L& x3 ` Z% e% Y
break;
! G! A, t# p+ ?" a0 W9 ]; o
}
* v2 G: w- b: i# }, e) G- t+ x
}
6 r/ X9 ]! C& C. `$ @1 @4 O
return CWndNeuz::OnChildNotify( message, nID, pLResult );
/ u) u2 c7 z8 k H: E- N
}
- ^, j$ ]* F9 U% p
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
8 r: D/ m/ A4 q) h& h) m1 H& Z
{
* S8 [6 U- g5 f+ C0 R
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
. ^4 X% Y; Q- {3 u9 i( i' |5 v2 u# O4 L
if( bStart || !m_pItemElem )
% n# P& Y" H F3 a# }9 U
{
4 ?) Q1 ~, D( [+ B
pBtn->EnableWindow( FALSE );
0 v) v: s$ V; Y- F, T" \! v! `' S. S0 Y
}else
) X% _' u+ h5 w5 z2 r d
pBtn->EnableWindow( TRUE );
$ Q0 q. ~' {: {+ d+ f4 `% c
if( m_pTexture )
- X3 v% l1 b+ G' p: V
{
8 L% v( q; G, V9 L
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ ~5 F X+ G: M# e( s
if( wndCtrl && wndCtrl->rect )
`4 ?2 d/ Q0 [. [+ Q9 x G
{
3 Z G7 i8 \. |& h @
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
1 \# `9 `0 F: O5 ]* |) D! c
}
: _" y1 ^5 l2 I* d* w
}
9 w; R, g$ j( ?' `" h
}
! Y) V% w" _' q/ C; j9 w5 L# K
& H' ^7 E) R- [8 ^" A
BOOL CWndAutoFood:
rocess()
/ i/ h$ [' K6 e1 u4 f
{
( \3 p0 |$ B8 u, D
if( bStart )
3 |( o7 r$ i% x* G) m Q
{
2 o8 O# M* {9 q9 _0 @; S
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
. \2 ]% y' p4 K! e& |
{
- q+ W% c2 j9 r ?1 M5 P
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
# j, J. M3 u1 x$ h) e# l' s3 z
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
A2 g2 c7 s4 B6 z
}else{
5 P! b0 M% Y+ w) ]; }
bStart = FALSE;
. C+ m8 _6 q1 @3 f0 H
m_pItemElem = NULL;
1 C7 Q1 D+ H) ~4 J" N- E* e4 r* ?. t
}
, c" D# L, \7 @) L
}
, h) z- L# M& x/ M( e! |# \" e
return TRUE;
, o# D$ z3 Q! K& @
}
( |6 Z+ G& V4 g
9 r3 O; q9 d7 G6 K9 b; p
登录视频废话:
6 H; G' {. m; U% o( M0 R6 d
尾翼:
( J( G) T# A9 _5 O& ?7 m+ d5 ~: X/ ?2 r
+ C; x. J4 k$ w& c6 J
代码:
2 j4 I+ f/ w4 i( D
# _& J6 j0 [" d6 ~. B8 p/ j
void CWorld::SetLight( BOOL bLight )
0 u0 o3 [9 P9 U
durch
+ A' L8 [$ J& K; B7 o6 W5 J
Code:
% G: b( A, y! ?# q" E5 L
void CWorld::SetLight( BOOL bLight )
( C1 k# S3 S" Y( p) S1 {' M) z
{
' b: X. I# A; _6 y3 i3 V1 ^- J
//ACE("SetLight %d \n", bLight);
8 b/ [0 K9 W& s% v: ^" D$ g
4 M1 w) M- R" f9 t
#ifndef __WORLDSERVER
( s6 P8 X* p7 ?8 ~9 Z
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
6 O/ F" q' T5 i7 J2 B+ V$ G. t5 r
CLight* pLight = NULL;
& j& S s8 O0 _) H. g" Q
( v8 |0 \- o6 e7 K# p0 ^# N
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
6 D" e" i% a7 r4 X% u
* F2 v7 v+ r" T. _3 |# E: k6 ?
pLight = GetLight( "direction" );
a! @% ^! R' ^1 i
* b+ B6 [% D! j! I+ w# ^. _
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 Z' V v& G3 g7 Z
if( g_pPlayer ){
5 h0 X) Z) v1 \) u& _( e
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
9 K5 G3 x$ o4 [/ R
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
; Q' l- h9 I2 T
{
$ w' K: U. ~0 R( O D* @ B
if( pLight )
, R+ B& ?9 |7 Q
{
" l0 D+ d; R3 k4 l% k
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
6 H; z) z& K0 }! V
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
/ L: ]1 z( Y3 I d: q4 _
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
5 d; l6 k) \% z* O+ Z0 t& J O
/ G" U7 _# P/ m- |5 P0 s9 w# L) ^$ ]
pLight->Specular.r = 2.0f;
, {) `/ j& N K
pLight->Specular.g = 2.0f;
- X+ a2 L8 R& P e: r1 Y
pLight->Specular.b = 2.0f;
4 m ]. i# ~/ G& G2 P- K* n
: t$ o+ R+ k3 F+ b- a
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
, O3 N3 o1 n# u& i+ X; l( C% T N: W C
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
* o( D; ?5 ^, Q) L+ S h
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
% L2 {* C6 s5 N4 Z
3 k: N+ t; E0 O8 @+ r
HookUpdateLight( pLight );
% D; D) k8 }8 t+ Q ^7 y6 X, G
4 Q; |* X- E6 T5 [5 j7 N; Z. ^
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 H7 q: t6 ~8 L+ k
( y1 _8 y- r2 p' B2 z. T
pLight->Diffuse.r *= 1.2f;
& P6 _" H- F" U3 l& q0 X6 b4 s
pLight->Diffuse.g *= 1.2f;
# k$ s# o! |5 \. i# ~) p" o
pLight->Diffuse.b *= 1.2f;
4 A& x$ B9 j% o
1 |7 |# H1 }( P
pLight->Ambient.r *= 0.8f;
! y- T- o, F0 {, }
pLight->Ambient.g *= 0.8f;
( C, j; I) D4 u& n( W3 F& { o
pLight->Ambient.b *= 0.8f;
& x9 m2 o- `$ ^5 f$ c8 G+ k: C4 |% ]
+ g- [$ z0 o1 e4 ^
memcpy( &m_light, pLight, sizeof( m_light ) );
& h2 y" O0 S6 z4 k. h; K6 d/ K
1 U$ X6 y" p1 G) e: w# C
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" r: l z2 T0 ?9 m
D3DXVec3Normalize(&(vecSun),&(vecSun));
) v( \/ z; u2 n4 v6 O
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
- j/ m7 Y! k; }' @" x
pLight->Appear( m_pd3dDevice, TRUE );
$ @& c- V9 e6 g
A9 J/ ]4 E8 b6 h6 b* J3 P9 w3 f
DWORD dwR, dwG, dwB;
( D" D( o. m' P3 w {6 G( u0 T( H/ K
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 r7 Q2 [2 ]6 Q, X+ N8 Q8 N
dwG = (DWORD)( pLight->Ambient.g * 255 );
4 M- E% X: t5 S6 y# b, J
dwB = (DWORD)( pLight->Ambient.b * 255 );
0 }0 _; t: O* P# Z! ?/ }
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( S( O7 ~' Z6 @( d
}
. `8 F- M3 l( A; {1 Z( Y/ U/ V2 h$ u
}
/ X. K1 |# Q5 ?8 B
}
6 I( u* ^, i1 q ~1 k
else
- u( E& B" G9 ~$ ^- \
#endif
" C* ~9 g9 @% W% a3 m8 @
' z4 p* w3 x7 ?3 u9 K
if( m_bIsIndoor )
1 x2 P$ h4 i+ {' c l8 r/ @3 E
{
, H/ n8 s u4 k. O
if( pLight )
4 l' Q7 i2 C3 z
{
5 H9 A2 p8 ]4 u
// à??μ oˉè*
3 g% T3 @5 I' K
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
" d, W4 p3 R" o. ^
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
+ M8 E2 I0 W( R0 j
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
5 j* x* L: `+ E+ K7 n" c
* P0 J. f/ j- C, _
// oˉè* ??à?
! k; p3 i5 ^% o$ E7 J. h: [. i f" X
pLight->Specular.r = 1.0f;
* F7 C2 z9 Y* t2 y! ^3 D8 u
pLight->Specular.g = 1.0f;
/ f: R( D* G/ p8 {
pLight->Specular.b = 1.0f;
2 B& t) K6 _4 l6 F4 h
// àü?? oˉè*
2 \% Z8 |0 I3 O- `& w
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
; D# t; C5 U0 t1 ~
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
. W' }# x4 o* d' ^
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
) D3 Q% [2 Y+ J' k8 U( ^
) Q. a8 G% R0 O. w% r
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
. u( }' L: Z- ~" p/ Q% {- Z
{
7 J7 f( I- a( y K1 M
pLight->Diffuse.r *= 0.6f;
; O+ m- q& k0 d T, K4 \# h
pLight->Diffuse.g *= 0.6f;
2 n6 b: N' c5 T: L3 a3 H) F
pLight->Diffuse.b *= 0.6f;
7 l2 \; E. u* l" b
pLight->Ambient.r *= 0.7f;
& `$ s" a- R( l1 z: [7 v' p
pLight->Ambient.g *= 0.7f;
H; t \9 y$ ~3 X8 d* m
pLight->Ambient.b *= 0.7f;
. q d2 a4 E/ W5 g- h( I- z
}
+ i; K& E6 }( j7 Q' q
. {* c* c2 a& i# [( d
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 W- k2 Z3 }3 k
if( g_pPlayer )
$ W2 F# O3 h+ m5 c+ o
HookUpdateLight( pLight );
: `3 K0 L9 N4 |8 _
#endif
0 Q/ r T4 _8 ^( p5 K6 Y. g( J
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# `; Q# C6 b9 x
: p0 d- }# D0 S$ b1 k
pLight->Diffuse.r += 0.1f;
' H V4 }$ ]9 f3 c
pLight->Diffuse.g += 0.1f;
* ]: \" E/ z6 P# f8 z
pLight->Diffuse.b += 0.1f;
~# _' w$ H, W$ \, d
// oˉè* ??à?
6 D) J. F' q/ O) l& V, f: U
pLight->Specular.r = 2.0f;
8 z) i3 `0 B6 c3 c- y4 w9 S
pLight->Specular.g = 2.0f;
( K7 V. n* x. d1 b$ X
pLight->Specular.b = 2.0f;
+ Y# k$ B9 E# U/ d
// á?oˉ
% v" b3 ~; N( n$ t$ n& ?# L
pLight->Ambient.r *= 0.9f;
" |' o( M8 d8 \6 A# t4 k
pLight->Ambient.g *= 0.9f;
0 P4 F: a8 Q: w& _ ]) j
pLight->Ambient.b *= 0.9f;
/ R- U1 m% }$ n* v' }$ e2 m& `
7 X7 @- m$ J( X& Y5 {3 J" ~
memcpy( &m_light, pLight, sizeof( m_light ) );
9 r9 y( [/ a& Z0 @) ?8 o$ f4 Y( f
$ i% h7 e2 U$ E. H8 K" |) Z! s+ E w
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
* q9 a2 `% P5 m* l8 D" l
pLight->Appear( m_pd3dDevice, TRUE );
7 V8 X. C: a4 o# B5 l, c8 S
' E. |. M# O; k) e, @
DWORD dwR, dwG, dwB;
# l8 h- L% g7 A7 G* r, o
dwR = (DWORD)( pLight->Ambient.r * 255 );
, X, i1 e g0 |. U# G2 c
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ y2 Z# ]9 ~0 J& M+ q2 p
dwB = (DWORD)( pLight->Ambient.b * 255 );
, w3 l4 T$ w' {. u0 [7 u8 W. b
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: k# W8 c/ \7 U
}
0 j0 e, n: {& P" H2 e4 U6 [
}
$ j" H7 D& T" T! M) u0 \- [! _
else
: O$ [& [) Q1 T) G! x/ g' B( v" I
{
: u3 c6 v: U. F+ p# d
if( pLight )
: g& p9 d# z" `; \0 F: J
{
8 s* P% p) k7 I8 v' @; q5 h
i9 `& |' o+ c+ o) U
int nHour = 8, nMin = 0;
+ h4 V& i8 g4 B
#ifdef __CLIENT
/ m2 K. m9 c/ k5 k! j
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
0 s/ ?, b( a2 w' { @* H
nHour = g_GameTimer.m_nHour;
" r# j# M: Y$ L$ V! z5 L
nMin = g_GameTimer.m_nMin ;
0 g) w7 H- v+ {$ \& l8 _# f
#else
7 T- b& P J. P$ t
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
2 ]/ q6 ]! ^' s7 G2 h. B7 j. H
if( m_nLightType == 1 )
) O) _" v: R/ Y* e F6 v
nHour = m_nLightHour;
3 g5 I/ A8 r& Z/ B
#endif
; G8 j) q1 W Q. E
nHour--;
9 d. a3 U* k7 a: ?% D2 `: R
if( nHour < 0 ) nHour = 0;
9 s7 K T5 t" `% R, N
if( nHour > 23 ) nHour = 23;
2 ?+ U8 Z+ P8 E4 T- ?9 D) S- |
) e- X! F" [/ o+ N1 k
//if( m_bFixedHour )
! d+ R* {( ]+ R7 V7 h* K7 C
// nHour = m_nFixedHour, nMin = 0;
3 z4 O. \) O6 h) p- |3 H
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
5 @7 d5 i; T+ Q+ O# r& L
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
! B5 }9 o9 ^* f5 m: `& p
8 ?' Y' J3 ~# n) i# f. b; ~8 C
//m_lightColor = lightColorPrv;
* f7 v8 f0 t/ {0 }- m
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
1 t2 S( R4 o! T* v' [; p2 G$ P) w3 j
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
5 S" ~* i+ B4 C5 r4 n3 H. c
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
# ?5 M% Z( v; P( C3 B0 L
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
3 t: ?4 _" ]* `/ V
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
1 k5 |1 ^9 O2 t/ O5 ?
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
( }0 t) V! ? t1 a3 P" n2 G
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
" q( p9 {4 t1 O
* [: s) y6 ]5 C+ O
// à??μ oˉè*
- p' @+ ^2 C. z# z) u$ G' ?
pLight->Diffuse.r = lightColorPrv.r1;
7 _4 V& @+ T; x" U( r( J* g
pLight->Diffuse.g = lightColorPrv.g1;
2 K5 Z) M( {1 f! _* Q# u
pLight->Diffuse.b = lightColorPrv.b1;
! N: V* s( y$ V
// oˉè* ??à?
3 ~9 k, w/ k% \/ L( f7 \
pLight->Specular.r = 1.0f;
+ k* U) M, ~6 o% p! W1 u# c
pLight->Specular.g = 1.0f;
( L$ I. g$ q& {6 k0 S, r7 Z4 O$ G
pLight->Specular.b = 1.0f;
3 x' h. w: p: ]
// àü?? oˉè*
- k& y+ C2 p) r3 ?
pLight->Ambient.r = lightColorPrv.r2;
2 T1 o [8 x# m$ ^
pLight->Ambient.g = lightColorPrv.g2;
# [7 H/ U; m0 H% Q6 _6 E6 z
pLight->Ambient.b = lightColorPrv.b2;
* ]2 q2 e' D' v+ C8 N h0 B& U' e
: Y& |' p* E1 [
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' h7 d$ F% h, v, Z, g" `8 q
{
/ E# b4 f1 E) J: \7 B2 n! V# O8 w
pLight->Diffuse.r *= 0.6f;
# j$ O3 X' G9 |
pLight->Diffuse.g *= 0.6f;
! p4 R: j, `. j; c. S e
pLight->Diffuse.b *= 0.6f;
X# y7 x" b Q( k; V, V
pLight->Ambient.r *= 0.7f;
+ J+ a7 v) ~& R# {0 x/ k
pLight->Ambient.g *= 0.7f;
5 O6 h) w/ F5 E; v
pLight->Ambient.b *= 0.7f;
7 J# |$ H5 [/ I
}
+ d& d7 T% T8 @6 X- n
' c o7 W& {& o u0 w" b/ _
#if __VER >= 15 // __BS_CHANGING_ENVIR
" Y' M: z0 O4 P. [/ U
if( g_pPlayer )
b9 h8 a* {- `, u* R
HookUpdateLight( pLight );
: \* n3 W$ w% a0 @
#endif
4 J0 i# g, ~2 _! G! |/ }* C1 q: h
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) @+ N1 Y) C/ f. [1 W E
7 V# f) x) ^% h! k
#ifdef __YENV
8 A8 K, v; S; c
pLight->Diffuse.r *= 1.1f;
& |1 ^4 L4 g: B! g# J
pLight->Diffuse.g *= 1.1f;
: q u, b2 r( a2 }
pLight->Diffuse.b *= 1.1f;
7 g% f: v$ L) l' Z1 d) H
// oˉè* ??à?
" v- r% s! B8 y
pLight->Specular.r = 2.0f;
! I+ ~9 O# F0 {% X* G
pLight->Specular.g = 2.0f;
( F* s p( x3 w! ~
pLight->Specular.b = 2.0f;
9 a; g3 ^4 U+ ~* C
// á?oˉ
/ {" [ X5 i1 b2 N; M
pLight->Ambient.r *= 1.0f;
" @: {. p6 E; l& N+ O
pLight->Ambient.g *= 1.0f;
; d# l/ R ^$ l& B, @
pLight->Ambient.b *= 1.0f;
+ } @" H$ |$ f
#else //__YENV
& X6 e4 T1 F0 {4 J8 B7 ]1 Z
pLight->Diffuse.r *= 1.1f;
1 q C! E' J0 p8 j+ R% J
pLight->Diffuse.g *= 1.1f;
0 N4 L, d7 b' J. t# v9 |" R
pLight->Diffuse.b *= 1.1f;
# p' Q3 u; a1 ^ Z7 {
// oˉè* ??à?
t( i) x6 @8 T5 h& L4 p
pLight->Specular.r = 2.0f;
" K) f; y4 K& _( m
pLight->Specular.g = 2.0f;
" Y G, ~- J/ Q7 I, u! x
pLight->Specular.b = 2.0f;
$ e( {' I/ y9 a6 _* N* Y
// á?oˉ
0 J" @8 @: G' @
pLight->Ambient.r *= 0.9f;
, x4 L; |- J2 L% _
pLight->Ambient.g *= 0.9f;
. C7 O+ }# B: X7 s# C: B
pLight->Ambient.b *= 0.9f;
1 W @7 u3 ^* G: N# J
#endif //__YENV
4 b& t, k* _+ F, c. w I
" a5 G4 c5 b, R/ _( q# c/ u
memcpy( &m_light, pLight, sizeof( m_light ) );
7 {* Q _( `3 o0 d/ N
" h; k2 v2 U4 p1 a2 U) i0 Z. J9 N
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
8 O9 r \2 T: H! ~
D3DXMATRIX matTemp;
0 T7 O2 o* z$ Q
static const float CONS_VAL = 3.1415926f / 180.f;
6 f" |! a" o9 G
+ z2 _# j$ N' o* t
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
; k% [: V# q, \; V
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
3 X' g1 U" {9 h4 c& E5 h0 E
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
! L* o* X2 P: c( w# |- {
pLight->Appear( m_pd3dDevice, TRUE );
; z+ n {7 r) _: A3 Q/ |" ~, o8 B
' k, Q0 B, W) W/ }: T1 O5 T
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* ^+ n6 v9 z7 f N" g0 K
// D3DXVec3Normalize(&(vecSun),&(vecSun));
, l$ [' {9 X+ a& q; o6 h
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! j, }+ b; S3 ]/ M8 e; b
! J: y7 t h: [$ o( k$ p. M1 ?( w; Q
DWORD dwR, dwG, dwB;
# _2 ~" _& _" ?; @- o7 E
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ U# I0 {) I! t; ?& Y% O* t
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ R) K0 E, k% `4 Y. `" ?( A
dwB = (DWORD)( pLight->Ambient.b * 255 );
, C4 F1 F. _' C$ x
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
8 ]2 [+ |8 R8 B
}
8 [2 P* I G4 M* o/ j$ W
}
& b# C' C, X+ h9 c F& z
0 g, y0 e: }: @, {+ g% @! j% I1 \
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" f" D5 I1 Y: J- P) f( N9 \% h
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) );
3 A* j$ L2 A0 C8 ?5 P
::SetLight( bLight );
& N1 r6 [6 s3 E& W
% Y# i+ S* j* G" x Y5 q
// ±ao? ?D?í???ó á¤à?
; T$ l8 D0 z6 h$ U
m_pd3dDevice->SetMaterial( &m_baseMaterial );
7 w7 F+ I- Q& A" l
; W, i2 H" g/ o) Y
#endif // not WORLDSERVER
0 C7 J \6 t/ D4 B
}
3 z3 g/ z8 H, }2 w# t) p
并更换
' A, z4 \5 U4 v& [ U! P
Code:
/ r5 r; T3 `) E+ c. p1 E3 F" q
__FLYFF_INITPAGE_EXT
& b8 h" h' o4 g+ S
定义
3 A. u2 C9 o7 W* u+ l3 x. R% G" N
2 v; o4 r' \# g. y
' A4 t" w5 _9 @: d
9 y0 F) g7 P* ~, M9 p. D
. }4 Q [. g- n* z
现在终于删除我的狗屁加速...
0 d9 k4 t% r3 ~: d
: C3 K) u0 i% o, Q4 N. G$ W2 B5 |
$ ^* N$ K; B. q- _! V
. K" }# r& E( j( K6 ]( G2 H/ ]2 ?
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2