飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
?: O* V0 \' w/ w8 S1 @2 u# Z
尾翼:
9 J6 |3 v8 i& o& ]) w
+ H: E9 l) }% [. I3 d& i
代码:
. D" x& L$ J4 e
CWndAutoFood::CWndAutoFood()
1 F2 E, Y# Z$ W: n- G/ B! d |
{
- I9 n8 C* c& `, B/ @& \. L
m_pItemElem = NULL;
+ c& [4 j& N3 P% Y
m_pTexture = NULL;
/ L* L4 z" \% g* K# _
bStart = FALSE;
! j* g2 {% C+ ?
}
/ j1 U1 j( \, K* |/ [
1 `. p3 i9 O* s9 ]1 W7 T
CWndAutoFood::~CWndAutoFood()
: W- K. H! d8 n* o
{
; }4 e/ u0 L0 {# {% t
AfxMessageBox( "AutoFood ist gestorben
" );
$ X. N3 q! U" [6 p) V
}
+ x) K% Y' q# \; |
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
% j( h: x: _9 l& e
{
0 t" y X1 {3 I3 g# @: w0 @1 c8 q
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
- j$ E( w/ S1 k7 I
}
/ S+ B& A8 N% _* d- G) V q
! T* G& c) A y& x0 \3 X, w5 i9 Y8 v
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
2 ~) S% S4 u) R/ E0 p# q$ d; ~2 ^
{
- Y: I' l! c1 d+ W
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ G* l( y5 B0 x$ v G
CRect rect = pWndCtrl->rect;
9 p, L b3 @- b3 t) o. Y' O* O* T
if( rect && rect.PtInRect( point ) )
# C: x% D: i% |; q( l
{
+ l0 w) I1 @7 ]* ~3 z
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
9 }; l. {5 S* q' n& Z& ~* V S! _
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
+ p/ ?5 d% Q' b$ M$ ~
{
5 Z$ i& _) U: h, x2 `' {
if( m_pItemElem )
1 P! H3 e6 Z7 W8 k* r
{
; K7 y7 g$ t ]2 o- L% z
m_pItemElem = NULL;
& Q$ m8 _( w# o3 y
}
" W2 m6 _3 a5 E: C$ h+ T1 T0 F- W
m_pItemElem = pItemElem;
" [$ a( ^0 W& c! H, G l
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
9 I9 J7 Q+ [2 z3 G' ?
}else{
& {2 g& M) d. d) q9 O
SetForbid( TRUE );
% ?4 N" p' { c: U7 ~' v
}
' x/ Q0 {2 q+ b- m* H4 Y% u
}else{
/ u6 K2 N8 u1 y7 m A
SetForbid( TRUE );
2 @( \ ?- f. S2 n$ c8 K; B1 d
}
- _7 _6 O6 r# W
return TRUE;
% v6 n) V4 i, U0 d+ W4 J- Q
}
$ y! f1 j! Y$ l2 N7 N" \
" n% Y! ]: g. @/ i7 K
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
; v* d+ e4 |+ H
{
& Q5 g7 C$ `) g* o2 X: y8 g1 Z
switch( nID )
5 r% z" D1 ]) o$ D+ k: t1 _( M
{
1 a9 H: J* m& V) y: _
case WIDC_BUTTON3:
( K9 N- \$ p% I7 z: g) P) H
{
9 J. h( o3 A. l2 [- ~" ?
bStart = TRUE;
8 X% X0 _+ j7 k2 h1 X8 Q7 @
break;
[/ X3 F- c& U3 [7 _
}
- H; l6 t6 w5 u; W- i
case WIDC_BUTTON4:
! r8 |0 f; N4 j2 r! W0 m
{
% J! |; c/ \& z9 D& ?' ?
bStart = FALSE;
5 }) _9 n" W* E) ]7 b
break;
, E; O9 n& r5 _3 ~$ I- [
}
8 m6 d7 _/ C1 H" |) {8 d; R
}
% m' [# j; Q6 y2 H: `! V
return CWndNeuz::OnChildNotify( message, nID, pLResult );
2 P4 c, V7 r& [$ W. b
}
. n* B4 H3 C/ ?* D5 h R0 e' J
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
4 c, b/ [. y7 x. [, x
{
0 w+ b1 j1 d& I' W; S0 v
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
* o3 c7 C* Y0 d# e8 V$ H
if( bStart || !m_pItemElem )
2 E& W+ z, F( i) }% S9 D1 J: P
{
; P! x1 T& N ~; Q
pBtn->EnableWindow( FALSE );
7 |2 d" i5 P. I4 j
}else
" K7 J5 d- G) `5 x! [4 v
pBtn->EnableWindow( TRUE );
8 z% Y& s4 g& h( u3 X3 f6 L
if( m_pTexture )
$ T7 ~0 p0 K9 C9 H/ V) P, r
{
0 Z: W M3 P6 m# _
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
, X, g8 M F* i8 t) V" I
if( wndCtrl && wndCtrl->rect )
- C( W4 B. I2 `) [& [4 r
{
$ x7 X! d( ~, v' e3 y+ [: `
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
: K( F+ x# A' N3 h7 z' B; k
}
0 y8 { g- Y1 ~3 e- W" D1 i. P
}
! v9 o; V8 ~, L. C
}
! i! u. J' }0 A4 r- N) _
" {0 z' K) ~; K2 ?! X+ d; i# _
BOOL CWndAutoFood:
rocess()
# R. i5 u* i8 n
{
5 O0 q( ^* k0 U$ A
if( bStart )
2 ]! ^ a& k6 C
{
$ F8 z& B$ ?% i7 H3 M- e
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
' T% Z' ]; [6 ~& ?+ K2 e
{
% Z1 `6 Q' ~9 Z. u7 a9 k2 Q" K, R
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
4 l1 _5 o2 W6 V9 H
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
% B8 V4 k* Z+ n9 r& Z
}else{
" T/ v* H( q8 {: S! z* Z8 g
bStart = FALSE;
: F' t5 @& |8 P
m_pItemElem = NULL;
# j) `: t- i; J; V. E
}
1 n$ V9 M( K# _+ y1 R3 A; w
}
9 X" c( V( d8 J! _- j
return TRUE;
( h; H: o1 G! z+ Z+ c: m
}
' n/ A3 f5 X \, s" k7 m8 U
" @$ J5 q$ Z/ {6 u, ^# G+ x1 z
登录视频废话:
( B7 A& b- y v# S% e) l
尾翼:
9 Z# t2 d8 i0 W. I
* p# B6 ? @$ y2 @, a& g0 X* S6 P
代码:
( f7 }& i- a" @. Q/ R
6 @$ x$ }& y2 o, X5 [% ?' O2 \( \, k
void CWorld::SetLight( BOOL bLight )
' r% `, ]! n5 l, P, A+ j9 q# J- L
durch
$ b5 m/ j& |7 h9 j0 v6 \
Code:
& A4 i J9 Z! X. B" C4 [1 s
void CWorld::SetLight( BOOL bLight )
# j. F& x! m& c' x' Y6 F3 n
{
' M1 r! S6 [# U0 f
//ACE("SetLight %d \n", bLight);
& F# t: P7 E& @" G, N, t& u
6 t5 m- Z" [; Z; R; ]9 a) U
#ifndef __WORLDSERVER
$ M) F) K; j5 m8 h
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
8 d8 ?8 C' S" e% J! ^7 q' R8 m
CLight* pLight = NULL;
! N4 P% f+ J8 y- n2 E; `
: Y5 @4 x. x# w
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
D% C+ V' B. D4 R: ~
2 I+ H1 K, e( T0 R# L& b3 s
pLight = GetLight( "direction" );
+ [/ r% O5 o" M [5 n# j4 O/ L
) X1 i2 f3 W4 D( V
#if __VER >= 15 // __BS_CHANGING_ENVIR
: t1 s# j& O3 `; R* I, c, P
if( g_pPlayer ){
( ]/ r( _2 {% ?8 f
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
# t6 [5 |1 k, g: F7 i# t, q
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
8 O( F( p& s) I
{
5 s$ R; |9 P8 r3 \; ?* H
if( pLight )
. y) i! o9 f& I8 [" D: g* |' U
{
+ v N! K: ]- y3 j, c
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
9 f, b1 N" {4 Z7 S9 z) P/ `5 c0 ?" z
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
9 y; F* d5 ^2 a9 F
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
. E: q) R7 J% A8 [& P' t' E; \
1 z/ l6 a# ^9 r0 Z8 _
pLight->Specular.r = 2.0f;
$ P; t" n) D8 J3 |
pLight->Specular.g = 2.0f;
' ]5 u, C* {' f* ~
pLight->Specular.b = 2.0f;
; N* u- s6 l m: H: v6 |
# x3 A c4 ~5 m. G( I8 C) E
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
- X0 d$ X% _3 l, a9 d
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
7 I* P; u$ _5 @! c0 U
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
6 T; u5 v) o( ~* M
3 F% z1 Y# y/ k% z6 ~+ @7 c
HookUpdateLight( pLight );
7 ~' V9 U& q, Z, x' a* p$ n
$ ]3 ?: a8 [2 X$ B( \6 j
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 v9 t4 a( L: a0 p& R( q
$ [3 U2 J: k( U5 h6 }6 Y
pLight->Diffuse.r *= 1.2f;
5 W' E# D3 S$ w" G/ P* p/ ~) E
pLight->Diffuse.g *= 1.2f;
* x* f1 C6 {8 |. V }' }: f7 g
pLight->Diffuse.b *= 1.2f;
, K% W4 H0 [3 {1 q; B7 |3 c* J
5 q1 O8 m7 `, X. _. R9 _" q
pLight->Ambient.r *= 0.8f;
$ t, _; {& Q2 n6 G/ V2 V
pLight->Ambient.g *= 0.8f;
5 a# g; \, \: T" s% ^% }- g
pLight->Ambient.b *= 0.8f;
9 u3 @ P5 d1 v
; R# U; g% @: Z* v) z p0 t/ c
memcpy( &m_light, pLight, sizeof( m_light ) );
! w0 Q* E3 _3 b3 t, r; O8 w1 Q. n# J
1 c3 r I' F3 X1 R/ i2 H
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
# q+ v; I% ]& v' @6 ?
D3DXVec3Normalize(&(vecSun),&(vecSun));
8 t$ [9 [. B3 a% O
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
; x( b2 a0 H n/ Q
pLight->Appear( m_pd3dDevice, TRUE );
2 p/ I* o' g' ]# c- I
/ l; z: l; T0 q
DWORD dwR, dwG, dwB;
x9 e) g4 s8 ~) `3 w' D) g) m
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 L$ J* c8 @* \ E' F [
dwG = (DWORD)( pLight->Ambient.g * 255 );
( ?5 B( o! p4 Z( _7 i. F: L; i0 O3 w
dwB = (DWORD)( pLight->Ambient.b * 255 );
) Y4 S1 T7 n9 L* s: e+ D0 p4 {
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; h* `1 g( J" @
}
# q; r* k" G M/ l
}
. c3 l) R! \0 f) \! L
}
3 q' @- \8 |) }/ C/ T
else
* H9 Q) B) W) D2 ~+ f
#endif
8 m9 @5 s' Q. J! j
- n: p& J+ k9 O0 k# m1 x
if( m_bIsIndoor )
- u7 z( m% \5 ]
{
; \; X/ ~4 F9 {$ j9 |4 @) |
if( pLight )
% M W) [: e, u8 l5 ]7 ] _$ f
{
" ^* u. D4 W- S) E0 {/ ?
// à??μ oˉè*
; x6 l* \: Q5 `( w6 B+ C/ p M
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
. O* k/ ^. Z3 f! R& I/ W
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
4 R2 X% c9 s, V1 k
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
) N3 X. o! N' O
, R) q4 f3 K0 o$ C5 k/ Z- I
// oˉè* ??à?
' o1 q0 X! @9 b8 j5 W
pLight->Specular.r = 1.0f;
# ?( o9 {8 r( c( P2 j, z* Q, Q
pLight->Specular.g = 1.0f;
3 w# m: s4 a- ^; V
pLight->Specular.b = 1.0f;
: u6 i4 F K& t2 a/ b: |* U
// àü?? oˉè*
) t3 X" o* R/ N' y) |2 Q' {& `
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
4 D) i8 K2 s. \; ?3 Q; q/ m
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
J) I8 R) c6 _
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
7 l) m* y' ~/ |- T0 m# M
4 R6 C5 C2 y8 C/ B
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' X& W, Y; V' [" j" {3 j) D! G
{
: n; T& L+ H' n5 @* @
pLight->Diffuse.r *= 0.6f;
) E; o6 L; j) O9 ~
pLight->Diffuse.g *= 0.6f;
+ ?$ T3 P, @9 e: P
pLight->Diffuse.b *= 0.6f;
* o _, W. P+ Q5 v1 Y: ~0 H
pLight->Ambient.r *= 0.7f;
+ X( t* I3 t, K2 o6 }
pLight->Ambient.g *= 0.7f;
" t p: Z; v$ g2 b8 y# K: n/ x
pLight->Ambient.b *= 0.7f;
7 M- o3 q$ Q$ X) C8 X
}
5 @+ \8 l2 V( O1 P. Y: Y- R5 H
0 Z1 _) s6 n8 H2 ~; w
#if __VER >= 15 // __BS_CHANGING_ENVIR
0 p5 r5 K Q; w
if( g_pPlayer )
' X- V" O/ f- d) F( e) r
HookUpdateLight( pLight );
$ u7 S% @9 K: j4 R
#endif
: |) H8 z* q. ^" S; E' G/ P6 e
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) p& e! j$ @0 s! ~# E) g9 k0 |
- z6 B, U+ V# z
pLight->Diffuse.r += 0.1f;
" O1 x2 z: w: w# n$ r0 g
pLight->Diffuse.g += 0.1f;
/ t, \6 x; L5 Y \5 G# O$ Z
pLight->Diffuse.b += 0.1f;
8 x" W; Z8 J: s
// oˉè* ??à?
- W/ g4 c& P' G
pLight->Specular.r = 2.0f;
2 g# e2 b+ N1 [: f0 z6 J3 }4 }
pLight->Specular.g = 2.0f;
) T0 }4 o, e' E2 p
pLight->Specular.b = 2.0f;
% p7 O f- l& s8 u* m% t& ]
// á?oˉ
# K6 k( ?/ Y# s: [
pLight->Ambient.r *= 0.9f;
+ q5 r7 x* B4 O5 G: f2 `7 b
pLight->Ambient.g *= 0.9f;
( k$ |& R1 y. Q# P2 t+ C% K5 M
pLight->Ambient.b *= 0.9f;
4 F8 s! {7 P8 [2 G. O# r. p5 H
1 [3 G7 S5 {% p: L
memcpy( &m_light, pLight, sizeof( m_light ) );
! J7 m! {' z; ]- |0 D- {
2 O7 v& C2 m2 W4 X1 X% k/ P6 g
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
) @4 m( w' Z( A7 K* E6 c
pLight->Appear( m_pd3dDevice, TRUE );
3 f) n* B- H# J" a+ u: P0 ]& H7 m* t
1 }# Z- p5 x0 I! V
DWORD dwR, dwG, dwB;
: z7 m' u* s4 _; `2 F+ a
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 B1 Y9 E6 }( Q' Q$ N
dwG = (DWORD)( pLight->Ambient.g * 255 );
! t) g& O" R! x( h/ } O7 h6 V
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 P0 ]4 O2 C: s) S5 ]5 U$ K
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 K2 w0 ]3 O, c
}
: R D" {6 _) G+ P
}
& L( c. I I& v) g: e; I
else
7 _' @# I! \8 w
{
9 a$ h$ H/ J3 E* c4 n
if( pLight )
2 l7 Y' e* F" i: F- R
{
7 Z! v6 a2 \0 U) E; G6 k7 E% o
# P( g( [. \- R; g8 U
int nHour = 8, nMin = 0;
: Z% J8 _% d+ k# W: c$ F) H; y& W; ~
#ifdef __CLIENT
$ S9 O4 z7 M* q- t4 X7 C# k
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
# F' V" v8 P7 \
nHour = g_GameTimer.m_nHour;
* o) x' c: G( s0 b0 v- y, [/ P. N) _
nMin = g_GameTimer.m_nMin ;
9 t3 F! A" n6 F7 A" \6 v
#else
7 Y- I7 Q0 b- K1 e' P& `
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
b- ~9 T* w2 O1 K' `1 e" g
if( m_nLightType == 1 )
, }& o. H% D; U8 g" G% U7 o
nHour = m_nLightHour;
3 [( w( c8 ~2 ` z$ x
#endif
# | O9 L- P# m2 G. e( Y
nHour--;
" A$ T4 r. F! V+ @ {4 N# ?
if( nHour < 0 ) nHour = 0;
' ~/ q s! M; D W. I5 \" e
if( nHour > 23 ) nHour = 23;
7 k$ s+ D: F; {) _
% K4 `+ U$ ]0 @; l% R" L. U* `
//if( m_bFixedHour )
" V3 _' Q, u7 N- l/ S. D
// nHour = m_nFixedHour, nMin = 0;
" e+ ?- `( E# ~$ E$ q8 e9 Y
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
! n2 K! x& `; M- R3 g
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
* A- v( g' ~: ?- D
, w0 ]% k: f3 j% l! X' n
//m_lightColor = lightColorPrv;
9 V, F+ K4 h4 g0 N. g
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
# `* m l t) d: V' ?1 G
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
]2 g3 @; ?; b- w5 a# p/ \
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
* }7 E% B0 _7 Y( C: X1 i& L
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
h1 D& X& O8 C+ p
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
5 R$ |1 `5 k0 x3 p* M/ K+ l1 J
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
2 m w0 E& E" p0 u, C0 b
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
9 x0 h0 g! }/ a, l% J1 H
+ Y/ d0 Z1 l v6 `# T2 m
// à??μ oˉè*
0 C. ^7 c6 V9 Y+ _5 o7 l
pLight->Diffuse.r = lightColorPrv.r1;
7 G0 y( [$ N- Z5 z( E& m$ x: m5 m
pLight->Diffuse.g = lightColorPrv.g1;
+ R9 ~* P. q) x! w3 K; L" L
pLight->Diffuse.b = lightColorPrv.b1;
( o G1 [" r) L$ q( v: W& s$ @
// oˉè* ??à?
" Y8 C c5 r9 @* I5 W
pLight->Specular.r = 1.0f;
9 Y" p+ z8 a+ ^5 X3 d+ U% u
pLight->Specular.g = 1.0f;
) P6 |2 k/ P3 b
pLight->Specular.b = 1.0f;
' m) d! L* H8 \! s( C4 i$ [: Q
// àü?? oˉè*
; `9 g) b. @# X' g
pLight->Ambient.r = lightColorPrv.r2;
% L2 f' m+ C7 L" ]9 W. _. U
pLight->Ambient.g = lightColorPrv.g2;
/ X& M @9 i: J3 l, T0 c
pLight->Ambient.b = lightColorPrv.b2;
: s) l) l/ r- B* P0 _4 a8 Y
6 Y3 a4 ^& T' [
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
1 f I; ]& E- G* P# U/ \
{
) f$ w- r! b" P m1 C7 H0 d
pLight->Diffuse.r *= 0.6f;
' w5 m& A+ w6 C0 U+ M
pLight->Diffuse.g *= 0.6f;
0 ~- l) f# p/ a, F$ z$ ^
pLight->Diffuse.b *= 0.6f;
- F$ A9 e# Q( e5 `! @
pLight->Ambient.r *= 0.7f;
8 X1 k" E; t; Z2 }& p. e" h2 H
pLight->Ambient.g *= 0.7f;
. o7 B6 H7 t1 E% ]
pLight->Ambient.b *= 0.7f;
r% E) T" a' L% H
}
% V. E6 ?( H1 F; J3 Y' U+ m# p
8 G+ @2 @1 R$ B/ L+ T2 t& ^# v
#if __VER >= 15 // __BS_CHANGING_ENVIR
, N4 O" {: k9 ~$ |
if( g_pPlayer )
, O; b, Y2 M& B* e3 w n
HookUpdateLight( pLight );
8 \( _0 M1 X- O/ Y4 ^0 O2 R! w
#endif
0 w8 L4 u i* A d$ h" Z
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; w- X: p% S- l: y f, }
" t8 @& o' F1 H3 q1 ]
#ifdef __YENV
2 d6 T" v7 W L8 d2 @/ m5 j
pLight->Diffuse.r *= 1.1f;
: @! V2 ]( `* O1 n" r8 C
pLight->Diffuse.g *= 1.1f;
; ]" R5 ?- w5 ]3 R4 p
pLight->Diffuse.b *= 1.1f;
8 x+ U V2 R+ Q( M! X
// oˉè* ??à?
, `, g x) y7 S
pLight->Specular.r = 2.0f;
! V' m8 O" j$ q
pLight->Specular.g = 2.0f;
3 ?8 I; M2 k# j C" f
pLight->Specular.b = 2.0f;
) {: \; e, S3 Y5 Y" A
// á?oˉ
& n1 X$ X6 b0 r
pLight->Ambient.r *= 1.0f;
) ^: ^$ v" s) W5 {; C$ |
pLight->Ambient.g *= 1.0f;
' l$ f% y0 a' z# J% e& Y
pLight->Ambient.b *= 1.0f;
3 N8 n7 k. |3 b! A& M2 J" k
#else //__YENV
, o( Y0 n6 G. \9 ` q, j
pLight->Diffuse.r *= 1.1f;
: z, i0 q6 b, f8 `3 ], V/ \! l/ M
pLight->Diffuse.g *= 1.1f;
1 e: h( [, N$ ^7 F0 {0 J
pLight->Diffuse.b *= 1.1f;
% x9 [* N7 I/ C2 [/ q0 c
// oˉè* ??à?
0 o M- r* p5 a
pLight->Specular.r = 2.0f;
1 y o/ f' a! A6 D
pLight->Specular.g = 2.0f;
3 e, D# A) F) b1 M3 r4 d" _8 K
pLight->Specular.b = 2.0f;
0 v, j% c2 D* [7 t# C
// á?oˉ
5 }$ p7 r& p8 k4 o0 t
pLight->Ambient.r *= 0.9f;
" u( x" c( [) W+ S: _
pLight->Ambient.g *= 0.9f;
' K) v' X# g3 V' C: f: o
pLight->Ambient.b *= 0.9f;
( O" P& @3 ?: o. |, T
#endif //__YENV
4 B1 M8 y% I- R8 X, T) f" H; {4 A, f
4 E+ l* C/ _2 E, o, @
memcpy( &m_light, pLight, sizeof( m_light ) );
+ [- A0 Q( M" l, ^0 U6 F6 C
8 H( p5 `- X% H
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
( ^# E. r* _8 F" O
D3DXMATRIX matTemp;
: F6 m" {# x( Q0 b4 q0 ?3 X M7 w
static const float CONS_VAL = 3.1415926f / 180.f;
0 I2 ^; @& a, w5 ]: @9 A
" R' q9 U5 P( {8 V' ?5 `! s/ E2 C5 F
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
% I0 t5 ^$ O( `3 \
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
# Y9 U$ O+ T2 m; e
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
4 Q. @1 L& P9 R$ n$ m1 p- Z
pLight->Appear( m_pd3dDevice, TRUE );
" G, F. v1 x! _+ i5 _ ?
2 O" V) P+ P9 ]- |. g! w- `/ m5 f
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 \9 R) r1 Y$ N+ t9 Q# s
// D3DXVec3Normalize(&(vecSun),&(vecSun));
9 d# }9 U* T) N0 ]" _* T/ ~4 {6 G
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
& Q( @; ] A, {% g4 k d
. R* G4 N! O6 W) p* _& v" ]
DWORD dwR, dwG, dwB;
% ?, F& W# U& }, k# M
dwR = (DWORD)( pLight->Ambient.r * 255 );
% H% |7 E- T& y; m* e. N
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 ^5 t0 {) \! y' Z0 Q+ t
dwB = (DWORD)( pLight->Ambient.b * 255 );
0 d) N1 s [3 S" v% l2 Q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
R/ `4 B6 K x! `3 r
}
9 w& E: x6 Z, q3 s! G
}
4 u8 w$ p! h+ h- f# T. a9 s, I
- @0 t) X! \1 s8 D# [, A
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
+ O+ ^0 O) T: Z; V% d9 Z w
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 w" m* K" H+ {5 v M8 a
::SetLight( bLight );
& }8 ~9 q( _0 g% G$ g
0 j& z, s* n0 c: y
// ±ao? ?D?í???ó á¤à?
m! ~8 L; t5 l' t8 I) o( ~
m_pd3dDevice->SetMaterial( &m_baseMaterial );
4 H% `7 n/ U% D3 Z. \7 x6 e
. G. I5 a9 I; d3 y, f: W: e
#endif // not WORLDSERVER
+ }& e# m. Z; j5 V' M
}
' n: _/ J8 W4 W2 w
并更换
9 [ z- u( o$ L" b1 o; H7 S
Code:
% v0 S9 a0 p$ I$ D4 I3 C; T% t
__FLYFF_INITPAGE_EXT
8 D$ Q% i1 v [, J2 c: i5 u$ x
定义
& [! Q+ ~. D+ L. m8 N1 E! A
9 L3 p) q) \6 j+ W
$ {( G4 F* M1 F
" O0 V8 O8 A/ n1 ]. g# C
' @1 z! }% g4 i" G
现在终于删除我的狗屁加速...
+ `+ s* h" S, C6 S
0 j& i! E) B; a$ l
3 R x3 Y( x7 l6 {& x I0 v
/ L1 O! S, \% Y) H$ O1 Y$ o
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2