飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
$ ]7 ^6 K; r1 ~& i( o# t
尾翼:
0 {7 D2 N# x/ O/ j3 o1 Y
" Q! p, R8 r5 Z M+ i
代码:
) k8 {2 ~1 C: a5 { j
CWndAutoFood::CWndAutoFood()
( N8 _5 Z- ]8 Q, m3 f! q( b! F
{
H7 M0 A% P: G z
m_pItemElem = NULL;
/ U5 |; R2 U$ ^; R% S
m_pTexture = NULL;
9 ]# n2 U2 X3 Z/ t9 I( @
bStart = FALSE;
; u& u4 m% l7 c6 O# `& v
}
2 M% z; O6 o2 e; j6 Q+ m5 Q3 _8 ?
9 ~6 {( D" y/ {
CWndAutoFood::~CWndAutoFood()
1 y; w4 \" d/ W# G1 Z
{
% F w2 l, J6 E& w; E
AfxMessageBox( "AutoFood ist gestorben
" );
5 s$ H: b9 m- R1 u: Y
}
) M( M, }; A/ [0 n
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
4 H* z* T8 M" ^( ^) b! D! I% j
{
" s" a3 U0 Z. Y
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
1 g- n3 L4 d! m/ |' j/ a
}
* O! z% @+ {1 S$ c* Q
0 H' r. S$ ~: ^9 b a6 P- h1 J) u
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
2 n( c" p% [ ?) ~0 C4 }2 o9 j
{
6 G/ _0 d' I) ~2 w/ y; F
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 \: g+ `7 D# S {8 y4 o
CRect rect = pWndCtrl->rect;
7 c+ X/ I( s- ~6 h. _1 c; T( C
if( rect && rect.PtInRect( point ) )
* [& g: o6 K+ b# T+ W% O8 ^7 q8 ^
{
" g/ B% Q! J1 n; ]: K
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
+ i4 ~% v) ~; k5 r" L0 v
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ c. X' |" l5 ]+ U. P o, A. Q
{
0 ?& @, J3 L2 x7 _) Q
if( m_pItemElem )
8 Z% ^& \' s7 N+ y2 D9 z
{
: E8 L9 G6 c* P, W$ R ]' ~; h
m_pItemElem = NULL;
( g" C5 Y {! u2 M# i
}
( w( M3 R2 W, R2 [
m_pItemElem = pItemElem;
# L" e& d0 k: y2 o2 e9 v
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
+ r% o6 @4 @ F3 c& c& |
}else{
8 N* f) h4 \5 ]8 e
SetForbid( TRUE );
" G: E9 I1 `& }1 r' Z
}
% H- ^8 T7 B8 l1 {* G* q: Q( g
}else{
v8 b1 n3 \/ \4 G) g" i
SetForbid( TRUE );
, ]6 y0 W p+ f
}
; m" R* U( N$ L7 A3 B
return TRUE;
' i5 r9 S( ?: `. V8 M
}
1 C2 f, G: w+ v
' B8 k0 I# k9 z1 q. }- Y8 x6 `6 v) R
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
: q+ E5 P1 M1 |7 x5 z
{
7 L3 E9 R+ m3 l2 ~. R5 }6 e; c
switch( nID )
/ w+ G( ~( M3 B/ Y1 P" U8 ~
{
5 i' c) @8 k9 h% {! o( `( A4 b3 @0 t
case WIDC_BUTTON3:
( h! ? K% S( P9 U) j
{
5 Y Z8 S( q" v' E; `; A
bStart = TRUE;
2 I( _8 s7 O9 r& i& k( A2 c
break;
}. e% |5 b* B( z
}
. n9 n! R( {7 m" A3 R& j) Q
case WIDC_BUTTON4:
0 C4 e0 X# n8 B6 _/ T" i
{
5 K* x) p( V ^ H1 i
bStart = FALSE;
+ N) J: {, w: v6 L7 g. W
break;
: \! y! c+ ^' F: _5 O% Q- _1 u' Z
}
+ q! @$ b- H& W2 R
}
' B. d; c" @( z" I* m2 h, f7 ~
return CWndNeuz::OnChildNotify( message, nID, pLResult );
! {- O0 V* ~* s- q
}
4 F- @3 X4 q/ h `! S
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
1 ?0 _" ]& B& ~) G# ~& c
{
: c+ i6 C$ U* z. m" b2 b3 k
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
6 ~5 F1 ~% {0 I
if( bStart || !m_pItemElem )
) x5 w2 k X' e
{
1 a( r, ^% z8 c$ Q
pBtn->EnableWindow( FALSE );
( z* ]% H+ C2 ~* {' j
}else
5 a* b3 r- S1 K% \% }' w0 [
pBtn->EnableWindow( TRUE );
( v5 }9 [3 q& [0 [, b; U* s$ o! f' ?
if( m_pTexture )
5 y* Y7 H* j" G2 \: N2 \7 I7 V
{
+ O/ ^ m. H7 {) M3 G4 x
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" f& c4 R3 ~! b* W" K& |/ o, d
if( wndCtrl && wndCtrl->rect )
7 F K0 ]4 Q0 T, {2 X% Y- X. f
{
! q8 P3 G$ {& s! i c8 _
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
: ?& ]/ E9 L7 o- M) X- P6 F0 x
}
2 n: d2 I, Z# N" X( g9 Y8 n
}
6 j P* E* Y& a! v
}
% Q3 o% ?+ J3 m/ l7 p! p% Z- D
( B) b& h7 `* p
BOOL CWndAutoFood:
rocess()
: X) w, h0 o2 Z" c
{
( }4 T( e/ y8 ?
if( bStart )
& {0 L% V5 O2 r, A6 i7 o) C
{
4 Y4 |3 z: [' \% b' |
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
% Q0 W C5 v0 w# I, A+ p
{
5 d |3 M8 }! K# p1 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() )
0 ~) J) G# c# H& j) B* g8 S
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
" ^7 a9 L3 W/ s- Z' f) J
}else{
1 E& h m1 i) m9 f- ^0 U
bStart = FALSE;
" C a3 s: T Q
m_pItemElem = NULL;
) o6 V0 I" a& z2 b# X* r
}
& \2 f' Q1 W0 T- V" d6 R F" ]
}
- W. l) h2 Z3 y2 y5 Q) [$ h
return TRUE;
& V4 |4 F. _. B* Q: H* t6 E8 I
}
( L4 }' W0 U. J* E, p2 N$ D, |$ I+ V, [
0 k3 D/ o3 F8 w6 v7 Y- y* G
登录视频废话:
6 g0 L5 W( [/ `& P, d0 F" L
尾翼:
$ s' v# g+ B+ ~6 W" x
0 |: a2 ~" @8 O# W! Y- P
代码:
8 j+ g( P2 E* T4 F; x3 J# `
, u. e' X! D2 p
void CWorld::SetLight( BOOL bLight )
& [4 @5 ~8 F. T0 m2 |+ n% u
durch
' Z0 J% [6 T1 q0 d
Code:
d2 H/ O K5 o8 F$ Y: l. g6 C
void CWorld::SetLight( BOOL bLight )
f% L+ p) G' L- A" B3 D3 h
{
" X9 K6 c+ S5 s
//ACE("SetLight %d \n", bLight);
7 K3 W9 t5 ^- K5 ~! X, A* Z
! V6 |( J- M* y5 ^
#ifndef __WORLDSERVER
9 r1 G7 c2 S. d; I d$ X$ p
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
& o+ P3 j- t- d& f6 u
CLight* pLight = NULL;
6 ^) ~, h1 B( }* R; t* O
7 G" L" T# M- N4 S3 d% @$ X6 n( n1 U" i
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
) l" f' \* k) F: V1 x+ P' }
5 @$ [, h# L9 [. Z( `/ H
pLight = GetLight( "direction" );
. T) a+ W) Y: }& A
4 c. U* N/ m, W
#if __VER >= 15 // __BS_CHANGING_ENVIR
. g, u/ L9 \( N& }* |' F7 e4 ?4 U
if( g_pPlayer ){
- X3 [3 B8 ]- ^+ ]
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
E! V& Q4 y4 g) I9 [5 }
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
3 m6 V3 T) ?; X
{
. o6 t" q+ A b
if( pLight )
5 m) L) Y X! `# w: S5 Y9 ]
{
% X- _8 t5 R% y$ A8 B
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
0 }( e7 _; ~0 r( V
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
7 z1 b: C2 q% E1 u+ o, V) e
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
: M9 F3 a1 n7 g B" k6 M
: a1 t4 c* o# s* P4 F
pLight->Specular.r = 2.0f;
" S1 N# w& o7 o6 ^) d! ?. G
pLight->Specular.g = 2.0f;
2 q9 q, r# t/ ?
pLight->Specular.b = 2.0f;
( x I/ X0 G- ^' j
) @6 w+ v( [6 r
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
; f' ^6 ~) [* R5 ~" {1 y; F5 R0 T1 ]
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
3 A' t, W4 d- i3 r2 p7 ~3 D; F) L
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
) Y4 A# x1 g1 A9 n
( ]' q9 Y5 ^5 ]1 O
HookUpdateLight( pLight );
; P8 _) N. ~. b2 B, {
- e2 W$ s) e/ J4 o" ]2 H
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 M, F5 d5 M1 D1 ]
' J& x2 K( @! f
pLight->Diffuse.r *= 1.2f;
: J, u" j1 I- @$ G5 n3 }
pLight->Diffuse.g *= 1.2f;
) Y2 ~" Y1 x7 g m8 J( S7 D
pLight->Diffuse.b *= 1.2f;
1 D9 w2 o* a+ e F6 y7 z' V4 D; x
& p6 ~- l4 D6 F* e
pLight->Ambient.r *= 0.8f;
+ i9 {3 p/ u1 l1 c
pLight->Ambient.g *= 0.8f;
! l+ M( y0 X& m$ h( P9 v: i/ a
pLight->Ambient.b *= 0.8f;
7 t$ P, g& W) x
2 j. Y, ?1 }# H+ R$ X
memcpy( &m_light, pLight, sizeof( m_light ) );
8 Z' u+ @ r$ |) ^
& ^; P# S, h* H9 }5 R3 h& C
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" D* n; h% ?0 {1 y- d
D3DXVec3Normalize(&(vecSun),&(vecSun));
- H8 j y& B' a1 R. s& d
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
* S$ [7 }3 _: `+ N# V
pLight->Appear( m_pd3dDevice, TRUE );
8 N6 @' o' \+ x! F# f0 y, g) H
' C, s! D+ V% W7 G
DWORD dwR, dwG, dwB;
/ q. K% x+ V9 J7 N
dwR = (DWORD)( pLight->Ambient.r * 255 );
/ V( s4 b! [) r& g" i( X L+ f
dwG = (DWORD)( pLight->Ambient.g * 255 );
, |9 G! d8 u: l0 y
dwB = (DWORD)( pLight->Ambient.b * 255 );
' ?. O0 O# {$ _0 B
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" z- r# G: M9 z% D# s5 U$ z5 @& _
}
& e; W7 a8 L/ Z# ?0 b1 O3 M
}
1 L& P' h( z, }$ \2 v! T f3 ^; m+ c( v
}
, d0 s& J4 g9 d M! _
else
0 K& ?6 y( M/ t- z
#endif
- y! _# u4 J4 s' x" C; g2 l2 a9 C
) w' I9 N5 ]" ~: w
if( m_bIsIndoor )
4 d+ H- j9 E% a$ N8 k" ~
{
# ^: x9 e+ R7 |3 d X+ L
if( pLight )
) Z6 c. S3 k% j( y6 t. C
{
' @* M) s1 U# A2 p f. t+ a
// à??μ oˉè*
3 z4 r. R# W M Z( Z& W" W! a
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
$ q; j3 w8 R; x- |: X. F% K7 z
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
- L+ k5 p% `; U/ ?5 J
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
( i. W- R+ {- j8 v
! l' e* G) X/ U( x
// oˉè* ??à?
$ W$ z$ j4 |# F
pLight->Specular.r = 1.0f;
$ C- w" q ^7 l! D+ j
pLight->Specular.g = 1.0f;
9 C5 K* C5 b( u. }7 i+ T7 Q: q0 e
pLight->Specular.b = 1.0f;
) z* ~/ o- d$ |+ S0 P: }
// àü?? oˉè*
( w" E! a9 n% y4 u/ ]9 K
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
8 t, e1 J" t( |, p) k" c7 q/ L& }
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
. |+ [" }4 R1 H! c/ G4 s& F
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
' s# w% u' _, \) d8 f+ }/ k9 w
0 \) {3 H0 y4 E# U! K, p' B
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* _2 G4 E. V5 [/ V
{
2 w( `3 K1 a* O, I% \0 {
pLight->Diffuse.r *= 0.6f;
: C4 r: }8 P) d2 W
pLight->Diffuse.g *= 0.6f;
3 g# j. r; a# b. S* x$ \
pLight->Diffuse.b *= 0.6f;
9 D5 r+ ~% s0 I* f2 L( M* Z5 }
pLight->Ambient.r *= 0.7f;
4 N2 K& G0 j" `. {8 P* d+ Q
pLight->Ambient.g *= 0.7f;
0 f, W2 W) V3 P0 Z, }0 a# p% W' L
pLight->Ambient.b *= 0.7f;
- w3 ]7 z. n, Z u
}
. U& f) }8 J: h0 Z* [9 K
: p$ Q) i$ V7 R( K' X6 d+ U# H9 q
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 c1 k$ K9 C1 v' j/ w6 V# M
if( g_pPlayer )
( }5 G7 Z& u! [* z! A8 p
HookUpdateLight( pLight );
$ X. p k. H _2 t2 R4 w
#endif
7 r) J+ [6 `# E9 Z
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 H; g" g: w9 c
+ t+ N, H$ Y* k5 U
pLight->Diffuse.r += 0.1f;
6 q2 i# \/ I- Z' c4 I* ]# W1 F) a3 X
pLight->Diffuse.g += 0.1f;
" g. E7 e2 ^1 j$ P
pLight->Diffuse.b += 0.1f;
" v. `6 \& B Q* n% F$ i) }/ P
// oˉè* ??à?
7 M1 l0 [+ y7 O f' {
pLight->Specular.r = 2.0f;
7 f% n# t# ?; f% |4 S
pLight->Specular.g = 2.0f;
% u, x+ T$ C1 r6 U
pLight->Specular.b = 2.0f;
/ `1 `- j0 R! R. h6 R$ L
// á?oˉ
* l5 a& F8 b3 y9 F% | L) s
pLight->Ambient.r *= 0.9f;
6 l- z, j }4 ~0 x) W
pLight->Ambient.g *= 0.9f;
" m4 q1 h; }- \. n. n% j1 U
pLight->Ambient.b *= 0.9f;
4 y1 F4 |- y4 T! {. h* N8 v
, s: ?' `' B, A# s
memcpy( &m_light, pLight, sizeof( m_light ) );
2 H4 E3 ~! i2 Z! _1 I, l
^+ i: i4 Q0 x7 g$ b; K
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
9 g3 q' G* A% t" Y0 r8 D
pLight->Appear( m_pd3dDevice, TRUE );
; ~( O# |" F- v7 T
/ ?" n+ {/ U8 C2 }
DWORD dwR, dwG, dwB;
$ |, `$ q8 h) r1 J; R) p
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 R; r% G0 X& a9 \3 H: D' @
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ w5 Y1 I1 P* S) @9 ^) M
dwB = (DWORD)( pLight->Ambient.b * 255 );
% |- y0 x0 u" w5 L
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: v! H: b. a2 e. V9 F2 W& q9 b
}
& [0 x7 C4 d0 b9 M$ ~; V
}
1 f) O0 W" }/ ?/ ?/ J7 t
else
/ ]6 [ b+ e8 f0 Q7 R; d3 v; r# y5 ?
{
/ I9 [6 [) {7 X4 s
if( pLight )
( M" _9 q; |+ j& K& y+ n
{
/ G# @ {/ D, ?
) B( @3 l' O" ]$ y0 u" p* M
int nHour = 8, nMin = 0;
, ]* y2 S/ K: r/ n4 t
#ifdef __CLIENT
' `5 A; ]3 ?4 g4 k3 {1 s
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
2 C7 Q* p: J. c4 l
nHour = g_GameTimer.m_nHour;
/ C6 Z1 _' x2 u+ t
nMin = g_GameTimer.m_nMin ;
* h, G# ], B0 L$ M
#else
. k* T; X6 l d/ k9 l
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
% T X0 |( ]7 Q0 h4 Q5 z+ \. p
if( m_nLightType == 1 )
2 @- L" O8 u# ^% h0 g
nHour = m_nLightHour;
: E5 W% m, m" G6 v+ A
#endif
1 a) ^% l5 O" `% {1 h& \ u
nHour--;
# z8 C5 m+ L- ]0 M) n4 P3 \9 O
if( nHour < 0 ) nHour = 0;
( G3 j$ |& a2 Y( A9 e7 {
if( nHour > 23 ) nHour = 23;
3 u& ~6 {* N& M; z# t
# v8 l& h6 x2 ^9 n
//if( m_bFixedHour )
6 r' O r4 W' y: g/ v# w
// nHour = m_nFixedHour, nMin = 0;
, l, q0 O; ?% O/ {. G8 E; t
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
/ {8 D, X' o8 f+ b' [
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
" Z8 L; |2 L# B+ D
. d! G9 I! _: B# G1 B, V
//m_lightColor = lightColorPrv;
7 c& w& r- k; s5 [ E6 n* M% f
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
* \% U; e2 E8 H' v. C# b
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
$ K9 H2 Q; V: N$ }% a' L6 T' E3 A
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
( u: m# j- ^/ X' V- }" F; s8 f
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
/ T8 Z, B( o7 J" \1 C
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
. ]8 v2 n0 {: V: `5 ^0 f9 f
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
. V6 A/ K4 T. y( U/ Y
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
$ ?9 } M; A* o0 w
F$ I ]! T: u1 \
// à??μ oˉè*
- o4 X' {9 h4 e
pLight->Diffuse.r = lightColorPrv.r1;
: Q1 a1 |* |& N+ {
pLight->Diffuse.g = lightColorPrv.g1;
) r& T$ Q$ O1 `3 K- f
pLight->Diffuse.b = lightColorPrv.b1;
* Z3 n8 V& V7 p8 S
// oˉè* ??à?
' B& m( s7 N9 _
pLight->Specular.r = 1.0f;
: f: r) R4 ^" B) Z% [
pLight->Specular.g = 1.0f;
2 p. y6 O& c6 }% n" ]/ f
pLight->Specular.b = 1.0f;
2 d$ Q& }; Y. [$ {& t
// àü?? oˉè*
! |8 ?3 `5 O) U. I, m
pLight->Ambient.r = lightColorPrv.r2;
0 j- d1 R; C6 l$ g
pLight->Ambient.g = lightColorPrv.g2;
/ ]* o" n9 [' K6 A" F9 T# _
pLight->Ambient.b = lightColorPrv.b2;
4 L+ X. w8 g. Y& Y# W
& B g9 _9 a5 c
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 U2 ?) Q; o% Q9 s& v
{
( V0 j6 R! N; L) g+ z
pLight->Diffuse.r *= 0.6f;
2 W8 G; L" c& D
pLight->Diffuse.g *= 0.6f;
1 }% H. k6 Q5 I1 @
pLight->Diffuse.b *= 0.6f;
5 K* l2 |$ b- s) W
pLight->Ambient.r *= 0.7f;
0 T; R2 i, N8 N0 G+ |3 H0 X, T
pLight->Ambient.g *= 0.7f;
, ]* I& b- I; V3 m2 a- E
pLight->Ambient.b *= 0.7f;
6 F; T! m5 C* b1 u8 j0 C
}
' q& l5 y( x+ ~
& _# M" k8 N1 l' A2 m7 d
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 f5 f1 O; Q1 u
if( g_pPlayer )
* U9 U* i% P7 E- \) o+ v" Z8 i1 e
HookUpdateLight( pLight );
) U$ }6 u! L) H
#endif
# r6 @- v% e1 i
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 S& l9 q f* B- {0 I+ w3 d* T) b
( s+ [: z0 ]0 R# I# g
#ifdef __YENV
# Y# O6 `2 g, r9 w8 C4 m: F4 z
pLight->Diffuse.r *= 1.1f;
0 G4 Y0 c* w- q! K& k8 T
pLight->Diffuse.g *= 1.1f;
) e5 K; c# F. K! B" a" L
pLight->Diffuse.b *= 1.1f;
9 z7 ]; O! i) O+ e6 R
// oˉè* ??à?
) B. x- @2 f7 Y% E1 d& p
pLight->Specular.r = 2.0f;
9 ?0 b; y# \" K% H
pLight->Specular.g = 2.0f;
6 H+ x9 ^% f8 X8 ^2 Q8 s# l
pLight->Specular.b = 2.0f;
# ?3 x: w3 J( l, K( X8 c
// á?oˉ
6 _6 q' P6 V& h8 q9 k+ g: S/ i6 n
pLight->Ambient.r *= 1.0f;
c ]6 E' U6 i% z9 C9 e4 G7 N; `0 P
pLight->Ambient.g *= 1.0f;
( B2 D, I- `8 A, W8 h+ w
pLight->Ambient.b *= 1.0f;
+ ]2 F' \0 D) T+ G6 z4 {+ B3 h
#else //__YENV
8 S* Q" e( T( N/ f# g9 G u9 _
pLight->Diffuse.r *= 1.1f;
# Z. R1 v' {1 c' Y
pLight->Diffuse.g *= 1.1f;
5 Q' e r# `5 h/ i
pLight->Diffuse.b *= 1.1f;
0 R I. f/ M* j2 r T
// oˉè* ??à?
! Q9 P! C4 `7 a! k
pLight->Specular.r = 2.0f;
( N ]" S8 D) W8 `! W2 z6 O) m
pLight->Specular.g = 2.0f;
9 f9 j- [9 F$ ?. X4 z
pLight->Specular.b = 2.0f;
8 U! Q0 W( E+ x/ K% o k+ h1 Q
// á?oˉ
' c A9 `5 I; E* G+ M# H( R
pLight->Ambient.r *= 0.9f;
% \7 u9 N/ s1 V% N9 Z1 G
pLight->Ambient.g *= 0.9f;
/ S9 C% g) `7 u. T% q" t4 J
pLight->Ambient.b *= 0.9f;
$ L& }1 S. R8 A, S
#endif //__YENV
% [' Q5 H9 |: v/ T+ L
9 p# i+ o3 a, h' B2 z d
memcpy( &m_light, pLight, sizeof( m_light ) );
* ]9 h3 }' B- K
" y* {; W) H' w1 F9 l
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
8 X9 u0 o( k6 o6 P9 e
D3DXMATRIX matTemp;
' m) G1 V4 J! Z& j$ y2 M
static const float CONS_VAL = 3.1415926f / 180.f;
5 a# J* H" B1 o9 J. |# i3 q/ C
3 R; |5 G4 e; n. R
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
* v1 |) h1 @# Y1 X0 t3 O! k! g
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
+ I, ^" ^ Y$ ^2 Q3 f4 O
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
3 g9 s6 J* x7 K s! w. `/ H$ f `
pLight->Appear( m_pd3dDevice, TRUE );
4 N5 _2 f+ j' `2 m( d/ J; g- I
9 q Z9 w: G+ r6 t+ B3 q0 v
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' q A' O7 r! f: N
// D3DXVec3Normalize(&(vecSun),&(vecSun));
9 g# E0 S; D- u' H. e/ J' J& M
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ z& Z, @/ c/ Q4 y7 r; D
6 a C/ ~# G6 h( y: L
DWORD dwR, dwG, dwB;
' e4 n1 ^- T, r- [# J
dwR = (DWORD)( pLight->Ambient.r * 255 );
& m* S+ q8 v7 t$ e% ^
dwG = (DWORD)( pLight->Ambient.g * 255 );
. {2 Y8 h2 M' \) I' [( I! G7 W
dwB = (DWORD)( pLight->Ambient.b * 255 );
4 o' E) \, {# I
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) n8 u& Z# B, @# X8 x7 Q7 I5 g
}
. k, y1 ^2 C2 Y; m: f4 t
}
7 C5 X$ S! q" }+ @2 y
& a3 R; k3 c3 e' N& U( B0 i
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
7 I, x( y% ]% s! D0 v0 {: F
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) );
, b1 s) \3 w s9 F* T- g
::SetLight( bLight );
2 ] m/ C; o8 t
0 ?% i. C2 U' H6 E: w" n/ i; I
// ±ao? ?D?í???ó á¤à?
$ }9 W/ t6 Y" w8 ~: H3 ]
m_pd3dDevice->SetMaterial( &m_baseMaterial );
! e6 a- z6 B9 c1 P7 O7 c9 M! V3 h
1 Q4 t" h/ L! `, K
#endif // not WORLDSERVER
# M# T# Y+ j; f
}
5 M x( x" ?" e( c3 ?
并更换
4 u4 {) z- b2 x, z( R4 A
Code:
: E" |4 w6 T" _% B
__FLYFF_INITPAGE_EXT
# z, G$ P5 o ?) E0 f: o3 D/ Z( |7 s
定义
$ ]: s1 r* M9 Y
, x; z0 }/ Y! @0 r. r' i* j
& V5 F# ^: l v) J
8 c1 V& b, b9 H9 W( J
( ]0 G! y1 H" k' B7 _4 I4 B
现在终于删除我的狗屁加速...
/ E, I% \* w5 v. g
) W( A& T7 e" ~, y
: z, K7 |2 D3 @4 m5 l* u! o2 R
6 M3 k; p3 o$ m
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2