飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
* M4 ]: T3 e" {1 o5 ~
尾翼:
* E5 A9 y" k, A
9 H6 v1 P% {1 `$ R9 i
代码:
( }% Q2 h! b( @ _( ?9 D9 W8 k# h* q
CWndAutoFood::CWndAutoFood()
4 K6 h3 B9 C W, Q8 d$ E, z2 L. A
{
0 A' e( O+ ?; Y- k# _( z# ]7 ~
m_pItemElem = NULL;
, R2 A" i$ \' |0 }# \5 G6 P0 |" n
m_pTexture = NULL;
! }$ w# _; Z8 ]+ h6 t
bStart = FALSE;
2 V8 I1 x/ t: i8 X6 p3 L+ D
}
8 \0 T \9 S+ G7 D, O
+ z7 [6 H: v* ?. V+ i9 Y
CWndAutoFood::~CWndAutoFood()
6 ~& z4 X+ V, N5 n. J0 p
{
) M9 _) K5 C5 I& w& @; V4 F
AfxMessageBox( "AutoFood ist gestorben
" );
, N6 F/ j: Q1 g. x# d0 S
}
3 R( a4 F" g u& y1 t
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
8 y: ^& u7 |% D1 U& @; l. L
{
. {" s7 ~% c$ m7 w" k- G
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
* _0 C2 P: w) F5 o
}
: z7 F, `4 t+ ]9 X9 k! T( G/ O
( s3 B' @9 `) `8 e+ `
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
3 \( v6 { j; n* Q
{
; {4 w6 k/ {) F3 ]3 m( G) T
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ X# b3 E R& a6 y; s, }$ r
CRect rect = pWndCtrl->rect;
; }2 a, ?7 m" P
if( rect && rect.PtInRect( point ) )
* ]4 W# N$ `( i- X Q+ S7 R- ]
{
1 N8 l, N" M1 E
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
8 e) O9 P T' }5 Q m9 l; ^! c
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
+ e" S7 s, w! x* h# H7 o
{
0 |; e8 q! [7 ~
if( m_pItemElem )
, X* o. K* T7 K# Q3 c. U3 I
{
0 c, H0 W5 H; ^5 x8 v5 p; ]
m_pItemElem = NULL;
$ f2 [, r% M+ c3 ] P
}
* j( i' m0 |+ I! \/ W$ c$ L: U
m_pItemElem = pItemElem;
: ?9 ]3 Y! v) L7 c# _
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
9 f9 I2 R- O2 `$ q+ g. y
}else{
( M) k3 b) i% ]# k" e, p
SetForbid( TRUE );
: b8 `4 y4 U- ?2 P8 _) |
}
1 @1 e) d/ X6 B
}else{
# J2 o9 b2 e% d, q: _- X
SetForbid( TRUE );
* F" h M- M2 B% ]
}
' Q% y2 Q! X6 v1 t) m
return TRUE;
5 d% ^7 @( |( k% R7 p6 ?6 y2 } l
}
4 ?' B* f# ?0 J- W `+ s
3 q" ?6 v0 G! t6 j$ ^7 n ]5 C6 p
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
! X& Z( w, Z& I# h3 K e/ w
{
. M9 K' C8 u) [) Z
switch( nID )
! ]- d$ J: e% U' O
{
0 Z% {0 [6 W8 ]* F- E* e! B0 x
case WIDC_BUTTON3:
7 v0 ^9 Y& S0 {# K0 i
{
3 A# }/ f: W/ @9 x8 y/ Y+ }
bStart = TRUE;
7 j$ d" e8 W( h5 U7 X' d( b
break;
# a0 A6 I- Q6 x4 `: I
}
|/ A% J. L6 z3 o D% |7 K7 {9 z L
case WIDC_BUTTON4:
+ S, G' C5 m0 x% y. t* X
{
$ O# @3 |6 W! V
bStart = FALSE;
) O; \8 j- R" H( P
break;
: \4 l$ ]- {( S2 O" G/ x
}
0 c" U$ D" r! N" @# v
}
: t+ @( T2 h: \) J
return CWndNeuz::OnChildNotify( message, nID, pLResult );
6 F: w; ] k5 i/ R; Z7 ?
}
8 ~0 E: j$ |+ k n. T7 {% C; T
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
3 |% h& {" q' B2 B7 q1 ?
{
( h9 v" b9 D9 C+ j: c
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
, Z% _- E; _2 Q2 ^- m0 m" t( L
if( bStart || !m_pItemElem )
G3 |8 o4 I% Z |$ z
{
' v/ [* ~7 B3 w1 v
pBtn->EnableWindow( FALSE );
. g; e) {, D; d) y$ G8 f
}else
! z# n. |) T: c$ F) h
pBtn->EnableWindow( TRUE );
; H, C5 m3 k" S2 _! u
if( m_pTexture )
* A& p. Y6 O5 R6 Q, c" c9 D# Y
{
' E; `' [0 x$ y" x
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
$ G1 L' f, S q9 l. ]/ N
if( wndCtrl && wndCtrl->rect )
' H5 D) s/ w: }( q, k, d" i
{
( X" e/ o6 e& v$ N( y+ {, i
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
. c3 A7 R; i! F5 P+ e
}
! R# i9 p8 O+ _& u1 Q1 Q
}
! ?- D4 h9 t8 N' M6 Q% s1 B1 A
}
O+ Q8 {8 t- J$ U: ]
$ t# D/ b: I: _# B7 Q' u
BOOL CWndAutoFood:
rocess()
1 E4 f7 F: c/ @% T2 l# q) b
{
6 F9 N7 n$ i! ?0 K
if( bStart )
: _) n4 E8 D8 n6 j
{
, h& O; N, u, L R7 A
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
7 K- n0 U/ G( X; Q3 E
{
8 W1 Q( V9 a7 H+ k3 F2 L) Y
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
& q; W! u# G9 r; Y
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
# C; q+ @1 M' c4 R
}else{
; T/ j) C4 o& ]; W' H5 t" K7 C
bStart = FALSE;
; y& F V# ~# u7 {% B! v2 L, f* N7 ?
m_pItemElem = NULL;
. S) P7 ^7 o- |) [/ l
}
$ N1 z0 V& j' `" H6 Q0 t4 u$ Z
}
# }( R" p. ?. n5 j* i/ g( n0 z
return TRUE;
. R( W& _. L, ?, [
}
9 ]; J9 m; w- e& b$ E, k% r& a
$ V- r ]5 x$ i# @' d# @- G$ ^$ ?
登录视频废话:
* p, l; Q9 x" D- Z. h
尾翼:
8 l$ I6 ?. c( g1 Z$ l* B
8 _; R/ C, c* d8 B+ Q
代码:
& y) Z/ X2 t' K
3 C n! {0 E# T }3 W0 K) ]% Y2 q
void CWorld::SetLight( BOOL bLight )
/ P# m. o8 M/ r
durch
0 ]- p2 l5 D j8 v8 Y' W
Code:
" x5 _- t: Q1 |, ?8 k
void CWorld::SetLight( BOOL bLight )
2 {& E# _( n* h! W
{
' B" r1 H! \. j- t5 C# h% @- `
//ACE("SetLight %d \n", bLight);
1 a! ]0 A; W8 |% `1 @. n
* W1 e3 V, |' R# K
#ifndef __WORLDSERVER
$ o! J7 j9 i) P# i: K( R3 w& J
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
) ] z" Q& v' F f' i
CLight* pLight = NULL;
) h3 F. ~6 Q) T& k
. s. S& k R9 A5 X q
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
4 H- D3 O- {# j# Q3 k4 Y) \
2 L; F2 }1 R7 S* d
pLight = GetLight( "direction" );
- L0 _6 t v% x7 {; d7 v
! r& _8 {+ n4 @1 X
#if __VER >= 15 // __BS_CHANGING_ENVIR
. X2 m7 `; P' f) A! e1 f' l9 a1 v
if( g_pPlayer ){
5 `3 u! s! y/ q( D8 N) u: u% X
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
6 ~: J( ^, F2 L
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
- A7 d/ y+ [, s: P5 N
{
% s* I% X. E1 ]6 B8 ?$ i9 j2 C/ u' }
if( pLight )
5 n1 H y( p! L/ X4 q
{
0 u5 X7 J6 X1 E) ]5 p/ d
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
5 J* ~! a t$ V8 z. w
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
+ q( A n9 [3 Z$ p
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
$ w# i) C0 K5 `- Z% X
+ I' G+ ?! w5 E* i4 o; u
pLight->Specular.r = 2.0f;
. Q1 ?( o+ i) h0 u
pLight->Specular.g = 2.0f;
/ ~$ H) Y( D6 l: ^! |2 n
pLight->Specular.b = 2.0f;
1 ~; @* U: N, ?6 W7 K
" D3 b4 r( }" I8 L
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
5 h; D8 K- E% U( l5 U9 P: s9 |
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
* f6 Q9 S& s# J; Y3 t
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
+ D) ?* Y X* \& p! L
5 q( ?* g) i% {3 I* {( E' A7 h
HookUpdateLight( pLight );
6 \6 [! Q) [7 S9 c6 w0 Q* Y
( N/ ?' n) f7 s! s5 z- m
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* y% }" B4 B. h2 L% t
& | c# p# n8 S4 t6 W6 T1 R2 X" X& ~
pLight->Diffuse.r *= 1.2f;
1 P( b0 Q* j% I/ x. g2 I
pLight->Diffuse.g *= 1.2f;
$ r& o* a- R2 L5 d C/ E: s
pLight->Diffuse.b *= 1.2f;
6 ?0 |- v$ ?7 R: |+ B& [
) h9 b0 f4 K1 A1 j, _* L: S2 h
pLight->Ambient.r *= 0.8f;
* b/ B2 E0 s) Z1 B; r8 j
pLight->Ambient.g *= 0.8f;
7 R( p9 R) |# h4 p9 m
pLight->Ambient.b *= 0.8f;
7 h0 E& w& V, k; {8 t/ ~
0 h! j- `% e5 K* v
memcpy( &m_light, pLight, sizeof( m_light ) );
0 S1 ]3 Z: @, Z5 L
2 H- X+ G( i- r, R. s7 e
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 r- q' p" n; m0 R7 U* O
D3DXVec3Normalize(&(vecSun),&(vecSun));
$ w; f ]7 \; G1 N5 S
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ e& A5 j3 R5 S! E4 E5 A
pLight->Appear( m_pd3dDevice, TRUE );
' E' T, y) v* `& H' \/ i( r
! A) e2 M4 x' Z _- |
DWORD dwR, dwG, dwB;
, Z$ q/ e7 s0 D
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ z2 t! R2 s& f: Z
dwG = (DWORD)( pLight->Ambient.g * 255 );
( x8 y/ m6 C" Q, y' m
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ l0 |% i& T- y$ ^ b
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ Z+ m: K" i' ^/ R+ G- \$ M) m$ \+ z
}
7 [; o/ C* |( H: t8 [$ g9 a
}
' ]: A5 Q0 ^+ B1 f8 F' o
}
% `: Y2 v; ?% N) j$ `5 X
else
$ k( ~% F5 C" o5 `
#endif
% q% X0 H& a/ X% n/ L, w
2 x% ?, t/ F) x. z
if( m_bIsIndoor )
* D6 }# H2 p/ V2 F
{
" o" `1 T, S# y% G; J Z
if( pLight )
& J4 S7 Z; ]$ ^3 N. y5 `
{
% N) l* s+ G, \9 ?! e; D
// à??μ oˉè*
5 ]0 A- X9 l( F% z6 S
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
8 Q7 p2 o+ }9 \9 l4 [0 y
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
" B- r# a6 I6 [; }
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
8 F) A% l/ `0 V: Z, J" f+ h9 G
; A4 T* S; P! }: T. U6 A
// oˉè* ??à?
+ j/ {$ c8 u1 a, _, k# \2 P' e
pLight->Specular.r = 1.0f;
( b# d u1 O# T2 l- z. G* }/ _
pLight->Specular.g = 1.0f;
$ X* Q/ K2 z i, F
pLight->Specular.b = 1.0f;
( W% Q- V& `7 O, H/ J% m: X4 q8 O
// àü?? oˉè*
7 @' n! E; Z& s% y2 M
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
. Q5 {' S; T4 Z4 m5 S: }: f
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
- \9 h4 O3 ]* T% w
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
# Q7 I* ]. D( B
& _0 o! e4 l6 S6 p& D3 D2 m
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
6 p8 V; r$ V \' S. `) ]. l) f
{
- W5 s5 h. b( m) _9 J
pLight->Diffuse.r *= 0.6f;
) h: B- L3 x! D+ W$ L4 _
pLight->Diffuse.g *= 0.6f;
% _ v; A0 W2 }' k3 t6 K
pLight->Diffuse.b *= 0.6f;
7 g4 J9 q5 h' M" \
pLight->Ambient.r *= 0.7f;
: e) E9 V. C9 h/ b" d* P' f. o+ V
pLight->Ambient.g *= 0.7f;
G6 b2 A! \( a8 C5 I
pLight->Ambient.b *= 0.7f;
+ v! c7 Q; ~/ @0 h f+ k8 Y! a
}
# T6 R. e# T, e% U1 u
. j; w3 [9 D2 J+ [1 _5 U0 Y
#if __VER >= 15 // __BS_CHANGING_ENVIR
, k0 Y+ q0 D# A8 h& b
if( g_pPlayer )
2 U1 W: F) C9 {1 v5 y
HookUpdateLight( pLight );
7 O4 c# k$ F2 n5 Q
#endif
7 B# L, m! q- \9 @- H$ z( n
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 ?# {+ A a2 E4 W
6 X3 d& R1 X5 e; m
pLight->Diffuse.r += 0.1f;
+ v4 B7 H3 `' ^2 t% W% ?& j) v7 ?6 j
pLight->Diffuse.g += 0.1f;
9 r$ s! C* r. R/ \
pLight->Diffuse.b += 0.1f;
( H& H( [9 d) {- A4 a/ ]. }9 @
// oˉè* ??à?
' D `* [) h2 v1 s5 U1 z
pLight->Specular.r = 2.0f;
/ x- V, [* F, J0 U- Y
pLight->Specular.g = 2.0f;
# o. [& {) x7 E" ]( W5 g7 A
pLight->Specular.b = 2.0f;
. t# X5 P/ U7 y! R
// á?oˉ
8 E* _3 C' I w: y9 y: s
pLight->Ambient.r *= 0.9f;
' J1 w! o+ [: g1 |
pLight->Ambient.g *= 0.9f;
8 j; ^+ n$ }$ m+ e/ h7 `, [
pLight->Ambient.b *= 0.9f;
: e$ g S! f5 [3 W2 s9 N H
" N% w% f+ e( t9 n+ A! J
memcpy( &m_light, pLight, sizeof( m_light ) );
! }8 t5 X' i! q7 f* Y) z% T
2 e/ C9 `5 v* [& N
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
# p' f3 y& y3 F; S# e
pLight->Appear( m_pd3dDevice, TRUE );
) w: h" z0 W9 N; B8 V9 i
/ \7 z3 X% b7 ^' q* `! O5 K
DWORD dwR, dwG, dwB;
2 g, G% p/ A5 i1 E
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 F# K) _5 `1 O5 S n; u2 m0 [ S* k
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 B; a+ }1 J' \6 T" ^
dwB = (DWORD)( pLight->Ambient.b * 255 );
" e+ |8 k9 B: ~; ~( C
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
n) N4 b. }- ^% V* x# ^& S# t
}
$ J1 d4 a+ C" |/ S o \3 T
}
: j0 p( N+ k8 i
else
8 l1 p- w2 M5 u [/ s p {
{
) A, X P$ ?- O
if( pLight )
. P/ W+ f6 ~. E9 F& @
{
; S& f& p9 F Y- ?
9 q; u8 |- ^+ J( j5 Q9 ]' a0 c# W
int nHour = 8, nMin = 0;
; } O/ F6 I/ @7 N( H$ J
#ifdef __CLIENT
5 [1 q c9 D7 U5 C$ i' ^( `
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
3 g- d6 z$ G y/ z" }7 K- N
nHour = g_GameTimer.m_nHour;
' P& G) i& b0 |2 C3 m
nMin = g_GameTimer.m_nMin ;
4 a, i, j$ G& C4 i% L
#else
) @1 K u! G9 T2 P5 F
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
( t5 p* T. {5 N8 s
if( m_nLightType == 1 )
- s$ C6 u0 p( R4 A7 e: {: ?5 [
nHour = m_nLightHour;
2 b& v3 F& q T& `; E; a9 `9 i- l
#endif
9 c& h. P9 W6 U
nHour--;
# Y1 y! A5 Y9 J: }2 w
if( nHour < 0 ) nHour = 0;
6 X% |- y: i# t. l0 |$ P4 }. _
if( nHour > 23 ) nHour = 23;
% S, L4 r- z8 Z0 n9 ?
! J# F# x% r0 [$ z& s1 \1 Q
//if( m_bFixedHour )
( A+ X' Z. h+ u, y* j: d- f
// nHour = m_nFixedHour, nMin = 0;
7 H, E6 V; G/ h$ }% m4 J: R
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
u1 O0 m6 F) ] @$ p* K P
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
+ d7 r* `, p; }
) q; g' G: y& E% I+ x
//m_lightColor = lightColorPrv;
9 b6 o- U& a/ v1 j1 N2 |5 ?
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
+ l8 A' J* H" V' F Z
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
( M4 z9 s% j! H1 u4 N2 \! X0 i
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
$ ]/ z3 ]; t' O
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
4 C& h: ^2 }$ V) z, n
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
' V" z P& N( M7 ?' N
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
: p5 Z% J- G" K4 g* o; C1 t
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ s3 \& K) Y4 U; o! Z- I7 J8 P) |
, ?/ I- x$ L. V8 e3 w6 E! j
// à??μ oˉè*
" S: n m8 ? z9 S4 x
pLight->Diffuse.r = lightColorPrv.r1;
1 T6 |7 ~0 I/ G- U. L' r
pLight->Diffuse.g = lightColorPrv.g1;
; S# H' J" A; P& i% o! g
pLight->Diffuse.b = lightColorPrv.b1;
1 o+ G! ^9 f0 L! `/ ~ A8 F5 x
// oˉè* ??à?
+ _7 }7 Z6 w- [- D
pLight->Specular.r = 1.0f;
$ A4 R* n) r( ?, H
pLight->Specular.g = 1.0f;
* [" E) r; c: E9 N& Y [
pLight->Specular.b = 1.0f;
9 L. s ]$ @6 G ]
// àü?? oˉè*
1 t, Y% J9 p) c9 s
pLight->Ambient.r = lightColorPrv.r2;
$ T0 }/ V9 q* l: f% G+ u
pLight->Ambient.g = lightColorPrv.g2;
z. s) [) J) N; U% B. [" u- P
pLight->Ambient.b = lightColorPrv.b2;
4 A7 L; r; Y0 V6 T) U. L" X) ]4 x
) j8 g6 e- V+ i) W8 S, |$ @( z, a
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
2 G' {% V, F$ p0 z- `1 \( n
{
2 w' Y. \, E6 O. n) e' o* U3 c
pLight->Diffuse.r *= 0.6f;
+ M6 z$ S0 o4 V) s# v/ c. f
pLight->Diffuse.g *= 0.6f;
! K" A2 l" m* D+ {, H( q
pLight->Diffuse.b *= 0.6f;
( k: L. {/ z, E8 B) D2 _( h, _9 G" \
pLight->Ambient.r *= 0.7f;
6 R) {! D5 F% [$ | f
pLight->Ambient.g *= 0.7f;
5 \; d4 u% {0 O( p" B+ P
pLight->Ambient.b *= 0.7f;
% x7 i2 y- U8 Y8 Y5 H! F! Q
}
4 y: b0 {/ N# _% J
% c' T' q3 \% K D) R a& e; m
#if __VER >= 15 // __BS_CHANGING_ENVIR
& z$ z6 X( w* d- i! Z" A. _& F
if( g_pPlayer )
" _6 P7 C1 u2 O! e8 t+ A, e, b% t
HookUpdateLight( pLight );
. S/ c4 F7 N' q( Y
#endif
/ d# |5 X' w1 ?; b( T- d$ S' H
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) U2 q. u4 \/ k
5 u6 |+ U% t5 c" D' d9 K
#ifdef __YENV
" O) B! c# b- A5 A5 e+ }- `+ f
pLight->Diffuse.r *= 1.1f;
) _# p- n9 Q* ~ @/ z. ~% `' m! U
pLight->Diffuse.g *= 1.1f;
* f: s8 a$ G- r0 i( R) P1 @
pLight->Diffuse.b *= 1.1f;
4 g2 M S! x; c1 X$ N5 _! D
// oˉè* ??à?
4 r* F! I* Q9 k
pLight->Specular.r = 2.0f;
# E( c/ N& { A2 [/ U
pLight->Specular.g = 2.0f;
) Y9 N# G3 x! [1 q: t
pLight->Specular.b = 2.0f;
+ N+ G7 e1 i4 K; _2 t& {9 x W9 u
// á?oˉ
3 w: `( l% W. Y; r
pLight->Ambient.r *= 1.0f;
1 d5 `! O3 M, G
pLight->Ambient.g *= 1.0f;
$ `1 D0 }* L% J3 Q/ c9 z
pLight->Ambient.b *= 1.0f;
# _' D- Z% t1 w/ d/ [
#else //__YENV
: T& b) a' n$ e: ]4 l9 Z! N
pLight->Diffuse.r *= 1.1f;
$ {" C) |! E/ U! }" E7 f
pLight->Diffuse.g *= 1.1f;
+ z. h7 X; n# g; l
pLight->Diffuse.b *= 1.1f;
" x- s9 }/ a0 Y$ k% }1 h
// oˉè* ??à?
9 x" H1 b+ [! v5 D5 O) n
pLight->Specular.r = 2.0f;
' ^& ^! D, j! U$ x7 `! N/ M7 ^: D
pLight->Specular.g = 2.0f;
1 d$ ? d; R. ?% y
pLight->Specular.b = 2.0f;
1 ~: S# F9 e {+ X5 `( m
// á?oˉ
# ?/ C4 C! X/ L7 t4 d7 w) `
pLight->Ambient.r *= 0.9f;
0 }+ C0 `) ]$ Z$ ?) ?
pLight->Ambient.g *= 0.9f;
0 P5 O, w8 `- `: t4 u5 F
pLight->Ambient.b *= 0.9f;
% E" L" |5 s% Y$ B D7 m$ K4 y
#endif //__YENV
! g6 B* g! Q8 ] {* o
$ E- ~& _) e9 H1 ?. X! {9 j* ]
memcpy( &m_light, pLight, sizeof( m_light ) );
( `/ K8 E; a- G3 s$ y6 O/ C( q
5 H& {0 e% L; N4 U. F2 g
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
$ L+ V: F3 w: c1 |) I: E3 ?
D3DXMATRIX matTemp;
8 g9 i$ v) @$ P. L
static const float CONS_VAL = 3.1415926f / 180.f;
1 c) s. D& f7 l2 {9 [
, m& x" [' j& C/ d! r, @
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
5 P# _7 N' ?5 T& R! A
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
- q* ~ T2 o2 j0 U% }: q
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
6 h3 |8 l! t2 X1 u
pLight->Appear( m_pd3dDevice, TRUE );
3 G/ x3 | E$ b* N" L; ?
0 F1 s$ ~* S( q/ r" |9 X' y
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 Y# h2 V; U5 J5 l* ]# P
// D3DXVec3Normalize(&(vecSun),&(vecSun));
5 w- O' T5 ]- X y
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
L$ M$ Y8 M K' i/ f$ g2 K+ H
7 I0 O8 D! E! A. ?
DWORD dwR, dwG, dwB;
) S' H+ d! t* B9 K9 L
dwR = (DWORD)( pLight->Ambient.r * 255 );
P5 B& m' V7 G7 f% `# e+ X3 _
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ [9 s5 ?& y0 N) K; Y4 u2 g; X
dwB = (DWORD)( pLight->Ambient.b * 255 );
; Q: X0 W) r% p* n* R% G0 X
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) k# k8 Q9 o2 W% b' F0 _
}
0 O3 {" @4 ~* g: R) W3 q% D
}
5 e% b/ Z* g5 Q, _: R; C+ [
4 V8 j9 R+ C9 f3 d
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
! `: c' Y3 ?; |& Z" E% Z& o/ G
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) );
; E- c- |; @' L" C. L5 ]
::SetLight( bLight );
" I- I0 Z, ^$ Y+ @: ]" C; G
6 A- p2 O! J4 X3 C: g
// ±ao? ?D?í???ó á¤à?
( D3 I: `5 }. p4 I5 a$ I* T- X
m_pd3dDevice->SetMaterial( &m_baseMaterial );
2 _% k$ w$ u( j/ y4 |$ _
P! Z; [6 g$ z; j
#endif // not WORLDSERVER
6 U9 r i: P. l0 ]
}
: E* Y7 C/ k6 w/ Z
并更换
9 j3 N4 ~, ^/ @6 C
Code:
- s" ~2 a6 u( v4 S: q! e8 a
__FLYFF_INITPAGE_EXT
, B* T+ S& b5 K- N0 D) B w
定义
1 ]7 c5 Y+ m# K. p9 k, W* |
3 v. Q3 H5 v/ ~% T# D
' L4 V) s3 [* p. Y' ?2 D$ V
Z" z d; ^( b! X
2 [5 J4 }6 b7 I: @, C% v. B9 p
现在终于删除我的狗屁加速...
; W- b( L. x' R9 E& B
7 z& @* n; ]; ~7 w& Q9 n# c0 C
8 f: F, T5 j4 X! s
# _7 A7 L' Q: {* S7 `
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2