飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
: R" D/ R% V) F' S0 S% Y1 v$ V
尾翼:
4 q: I/ U! m. s( S7 K
, b2 J2 K# B% z! V8 t
代码:
- K8 A0 F" E1 J0 n: A* j
CWndAutoFood::CWndAutoFood()
) c4 E' _9 w7 I7 k" F: a
{
! l( O) `. O, Q b) L# `
m_pItemElem = NULL;
8 Z3 h/ a. Y. b, r* `; Y; h
m_pTexture = NULL;
1 f. O! g! l: w( ^
bStart = FALSE;
% a6 D, D. @+ L# G, ]) Y0 K
}
; @/ W5 o' m1 N) b5 B2 G- @2 y
: h- X3 a q8 m- H; K" G7 J& k
CWndAutoFood::~CWndAutoFood()
4 f6 E+ i" y. R& {
{
( i( R* P$ Q; ` A5 j" w; f. ~1 c
AfxMessageBox( "AutoFood ist gestorben
" );
; Z' g) @0 H1 E- n
}
! z. U% p3 N$ W( Z" P% C
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
9 q' v2 P. N9 y2 I9 g! C
{
& G* `$ P; T) c- B4 x4 p* G& [6 k/ V
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
1 D, s. x6 b7 X- I8 b2 L* {
}
! @+ y2 {5 H! n8 M- {
8 f0 S6 [# z: y3 E0 z C: v
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
/ _) C5 Y) q6 p! o; E- A' Q" X
{
: [& |7 x7 i( j5 _
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
, `6 M- P* {* y Y
CRect rect = pWndCtrl->rect;
# {! K4 X7 s( K2 E- x3 v
if( rect && rect.PtInRect( point ) )
. R7 _' H6 e/ d
{
* k. l! R4 m. s) a0 v, @5 p1 _( _
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
# {- G, {0 F6 H# Z
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
: {% E. J2 T7 ?8 s1 R0 s- e
{
0 e- a8 ~/ E' o0 a: S* l! z( T' [5 L
if( m_pItemElem )
# z* I- y8 O- i
{
* {; V0 t- S' a
m_pItemElem = NULL;
, r2 S# Z0 C( O: |5 m e4 l% k
}
; h. c3 A1 J4 h3 v) j0 d0 {
m_pItemElem = pItemElem;
, [: ?2 p5 Y- J2 B
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
6 H0 y: X0 X" a4 Y$ M$ g6 j
}else{
2 X) I! z) x! M
SetForbid( TRUE );
( e) n6 o/ Y/ M6 v+ V2 f; d" |& @
}
! |4 }6 Y# v0 u) J+ \: t
}else{
G7 g! p; U0 d& W
SetForbid( TRUE );
' o% `3 m; {. M
}
. s0 j/ M7 I2 ?8 G- r- v
return TRUE;
2 a3 X5 ^0 H/ Q
}
! S) l# }' r4 c0 H/ J ?" M, s- e4 u
+ ^& ]% m! P5 D
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
; o9 H+ }6 m ^2 `; y
{
0 _* R b9 k2 H5 }" M+ o5 T+ r
switch( nID )
& |+ F1 ^) M1 \
{
6 ]8 ^& u( g2 n( a
case WIDC_BUTTON3:
' A& b1 u7 N5 e `) E; F( w! `% y
{
) ~5 P" g9 a1 a( c- I* x) l% B
bStart = TRUE;
1 L! O+ Q( f: s% t$ B; ~
break;
% W; T9 c; ?2 v* T, L
}
2 f* V- @ C: F
case WIDC_BUTTON4:
1 e T5 I; a: M# ]
{
; }+ R8 ~7 p \" Z' m' R9 R
bStart = FALSE;
- ~: k, ?0 R3 K I4 G, }, i5 X o
break;
6 k2 |! ^7 Q4 Z1 }) k
}
( B, Y; H* R( P, |' C+ M; s
}
0 W& b$ I4 l3 Q9 P1 e5 g
return CWndNeuz::OnChildNotify( message, nID, pLResult );
j9 B, \3 o+ Z' V- y5 P
}
% a6 u( l+ O2 f( L8 l" g+ ?9 ]
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
9 H7 {% Z, q! ]1 X+ R
{
5 |- {4 s% H6 G! L0 o
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
+ P, ~6 N. W& S. F4 R
if( bStart || !m_pItemElem )
. ^2 n" ^) f5 j, B- t* A. U
{
" h* L/ n0 k1 G
pBtn->EnableWindow( FALSE );
- n: L6 C$ `# y6 q0 p8 A
}else
2 Y1 L, G; J f
pBtn->EnableWindow( TRUE );
3 x6 E9 N9 y3 x6 s, y0 c2 S
if( m_pTexture )
: i6 W: a4 a9 E, s
{
_* K) i9 K4 s
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. F& X; m2 Z) W3 ]. i# X V: z
if( wndCtrl && wndCtrl->rect )
/ w- f6 m7 b- [3 M! h; A5 Q
{
. _6 `5 m( N9 `" ]
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
9 ^7 ]) @ l f0 X: J' k
}
, h$ G9 G, p& \& j9 _1 i8 j
}
) n$ }8 C& D6 O* q1 S" E- o
}
- S* o. L( a, _
5 t& }- g+ U/ {. y C5 s+ d# `
BOOL CWndAutoFood:
rocess()
M* Y* b5 L# C8 N. g$ D7 L- ^
{
5 u z9 W* e2 N/ s5 u9 Y+ p
if( bStart )
# ?' Z1 c. k6 V8 X
{
' A) Z" ^- h2 L$ m4 Y
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
1 C) S, N" V) B3 s/ i4 z# \
{
) X3 |% L) r) j4 F3 V# F
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
' C: z9 n% K# L4 `4 n2 i7 z
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
[+ d4 l7 q. n2 S5 f( [( Y
}else{
7 X9 O* Q% C+ m9 v7 R( b, I
bStart = FALSE;
/ u- A5 N9 Q/ s! X, ^2 u
m_pItemElem = NULL;
$ _5 S9 P" {, n# u% a
}
2 t4 A1 p" \- B! |# D6 ~3 V2 `- i. i! |
}
* `) u' b/ N# F$ C$ n& W
return TRUE;
+ l0 G' Z* Q) e% P+ `. I( s
}
7 s) i& u8 p! ^" ]- Y) z1 Z
& w1 r# S; d2 r( g: ^" J
登录视频废话:
6 m+ [1 X# u( t+ j; E- E9 t
尾翼:
/ G1 D6 E. O9 ?8 [
6 u+ e# f9 v) ^/ ~ d6 U
代码:
( `3 M. ?- l% {8 U7 c0 K
6 c6 ~) m6 q3 f- n! \, l
void CWorld::SetLight( BOOL bLight )
: {; I1 b2 M7 e. c, U8 V
durch
% W/ P; k$ y+ u" }# f4 `
Code:
4 r! c. q9 q+ B5 a
void CWorld::SetLight( BOOL bLight )
L( b. z0 I, p- C& B+ A( g
{
8 l& j6 C) L2 p
//ACE("SetLight %d \n", bLight);
( i* H# h" q$ r. H; A
s# Z* S% B* i3 K8 C9 I
#ifndef __WORLDSERVER
$ E( M2 h9 K; J( ^ c* R
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
: r# ~- D3 C' S/ O0 Z8 [
CLight* pLight = NULL;
- T9 m3 W! f/ U) ?- w
4 c1 u) I/ @6 z9 \& m* \
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
! O$ T1 S! X0 j# \: m- W
h6 U# F# @9 m" R0 P: Z
pLight = GetLight( "direction" );
' f) {! ]* [% m* d8 z3 S, I
' s4 C6 O' d8 H% L3 Q
#if __VER >= 15 // __BS_CHANGING_ENVIR
8 c- L3 n6 m) z2 V
if( g_pPlayer ){
. g' \* h: \1 }: s7 {# e
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
- W. X) c! a* Q% J
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
( S4 p( ~2 ? q: z4 R/ c- t
{
3 z+ \7 v. V1 n' J6 h
if( pLight )
5 k/ k3 T+ q( \# `% s
{
$ c) F* n5 ^, q
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
. b6 _7 d W m0 H) K
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
' O% C5 j8 z1 M* f- C* ]4 x8 o
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
: I( E7 T7 A; _1 K+ F% ?+ y/ T
1 u0 j) |6 R4 Z* _6 n
pLight->Specular.r = 2.0f;
( n4 g) ~2 \# F. ~/ {
pLight->Specular.g = 2.0f;
" ^9 ~0 U* D- f
pLight->Specular.b = 2.0f;
& x! A/ [. Z! C
' K, X' {) @" k2 Q
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
h9 U' ^8 j9 @( c+ }4 b7 ~' @
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
% h) l5 l% T4 v
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
6 `# f) x7 N" L8 {1 h
" ~; d+ t b+ ^" G
HookUpdateLight( pLight );
. I* Q, P( ^ G8 F
; m; E; C% q2 p
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" \" @- e: N7 j% x
! c" S% Y% P3 w. y: c Q
pLight->Diffuse.r *= 1.2f;
! ~0 N6 U+ K- `9 n) d
pLight->Diffuse.g *= 1.2f;
" k" F2 X2 O6 {0 ?- i
pLight->Diffuse.b *= 1.2f;
( `$ W/ X$ F5 n* T# w) Y4 v0 U
5 S% G/ D* K3 Y
pLight->Ambient.r *= 0.8f;
3 N- q9 v% y7 ]- f4 k
pLight->Ambient.g *= 0.8f;
+ m! k1 l! `' C. m: c8 ?1 P
pLight->Ambient.b *= 0.8f;
/ C8 Q2 C/ F6 {
4 _4 `0 C% G H% Y. ~# n
memcpy( &m_light, pLight, sizeof( m_light ) );
1 I* l0 T, w- f; s9 f3 i
4 T. l4 I/ | a
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
, Y3 [8 g% j/ X& j2 K- }
D3DXVec3Normalize(&(vecSun),&(vecSun));
% v/ Y" y- S& Q5 E1 P
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) I R; x( i+ v, u" Y: _% g5 U
pLight->Appear( m_pd3dDevice, TRUE );
0 e; e6 R) C; R5 Y4 r) B# K
$ D9 G P# F0 \& s
DWORD dwR, dwG, dwB;
; c# a- C2 S0 n
dwR = (DWORD)( pLight->Ambient.r * 255 );
. ^. _: ~# J2 {; t% t. w
dwG = (DWORD)( pLight->Ambient.g * 255 );
p$ B5 W3 f6 L) ~
dwB = (DWORD)( pLight->Ambient.b * 255 );
' c+ s8 E" N0 |) E
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 u5 O8 O0 H1 X* i9 M* Q
}
6 ~- ~+ l# | e2 Q5 c
}
* Y r3 s9 g' D/ o$ I
}
3 B6 E5 R. w; W& u) A
else
5 z/ b, ^5 k7 t' r& h- G+ o
#endif
, m3 i5 a2 F6 p
( ^4 h4 Q; \! R
if( m_bIsIndoor )
8 p# P5 H8 O6 M1 R4 G9 ^$ G% y
{
) Q+ H5 I4 _+ X* ^1 L
if( pLight )
5 k9 j& i0 k& h; h
{
6 Y8 b( b n# X0 i6 p
// à??μ oˉè*
* K7 I. b7 B9 }
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
0 p4 }% X- l' @5 B
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
! b8 r1 F f9 U! \! o
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
- |$ o) s0 N/ Q+ k1 Q' \0 ~
" ^/ `6 a" b, j4 o. ]* v
// oˉè* ??à?
# u- i$ s* ], m
pLight->Specular.r = 1.0f;
( v* i+ h. L* ^' l `! w
pLight->Specular.g = 1.0f;
0 [/ P7 q( \+ Y4 w4 s } y
pLight->Specular.b = 1.0f;
! c, f7 f3 J0 m x& w& N
// àü?? oˉè*
+ R+ C) T5 m: d* |
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
6 S: o7 M" H$ F) \1 x' O6 a
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
4 B6 [% E( S& [( A S1 B
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
1 B4 Y4 F( k0 S. v
2 V8 z' P+ f0 T
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
V: p! Z& `# J& P
{
7 n2 p B% y3 M5 B0 y% B
pLight->Diffuse.r *= 0.6f;
G4 h/ k) r) `
pLight->Diffuse.g *= 0.6f;
0 |: u$ Z( x3 t
pLight->Diffuse.b *= 0.6f;
9 v) i- n6 P4 x i3 m
pLight->Ambient.r *= 0.7f;
4 ?; C' Y/ x5 N2 }
pLight->Ambient.g *= 0.7f;
8 q! d& M2 ]" z
pLight->Ambient.b *= 0.7f;
* |2 ^$ Y- w- u6 L! m# D8 H9 v
}
" U. k5 o" X S6 n- }. a( V
3 Z7 \1 g: w2 J' I2 r T
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 m; z `6 Z: R* i
if( g_pPlayer )
2 V: m2 @7 ^: a; C8 B- S/ R
HookUpdateLight( pLight );
) C7 Y6 K4 X3 \& D' h: g
#endif
: v5 d1 B6 ~9 j
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 o: R' K8 C, I) p1 R& j1 f+ z
* M; b$ M$ c' [0 N5 j, @
pLight->Diffuse.r += 0.1f;
: A6 ~5 j5 }/ f
pLight->Diffuse.g += 0.1f;
0 g6 R$ ^, ~$ Y* A" Z
pLight->Diffuse.b += 0.1f;
: {% C' ^& A; [4 h
// oˉè* ??à?
# R1 c) }. A" ~8 M
pLight->Specular.r = 2.0f;
2 D4 ]8 Q" m- V8 C5 p
pLight->Specular.g = 2.0f;
1 i5 r6 E3 z. L' C' ^/ w# I
pLight->Specular.b = 2.0f;
' a0 I9 u# Q8 v( n+ B" h
// á?oˉ
# K, B& M5 s9 _$ [
pLight->Ambient.r *= 0.9f;
+ y2 U$ y5 A$ M0 B, K) [
pLight->Ambient.g *= 0.9f;
& C' m3 l( ]* t2 y
pLight->Ambient.b *= 0.9f;
' F% o7 l9 ^( }: d% W9 D
$ Z/ h: r9 B& m
memcpy( &m_light, pLight, sizeof( m_light ) );
, X. S3 y! R5 m
0 _( g& q; H; J' z% W. m
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
- g* X/ f% W4 G9 s2 S
pLight->Appear( m_pd3dDevice, TRUE );
! |, d7 Q( \. d" H6 a, E
. e' d P! A: D6 o
DWORD dwR, dwG, dwB;
; S4 W* v" T9 ^
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 Q# U7 i" E+ B5 w
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ T+ k' g% E. ~' U' Z, I
dwB = (DWORD)( pLight->Ambient.b * 255 );
% `3 [+ @8 b% Y* v; I* }8 s
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* t0 j# @) o! P, O
}
6 J5 e0 z, [3 |# a
}
. J3 I% F! B8 X. i+ j
else
( ^: b" q# w r) M/ m( O9 O" O
{
: C6 V: l4 r j
if( pLight )
4 j3 C# {& n7 f9 b2 \. A4 N2 |
{
0 P4 y" r9 u: r2 g9 j
: S$ U1 W' @( L( _# \) A$ P
int nHour = 8, nMin = 0;
* Q1 B; d; e; T9 R# L b
#ifdef __CLIENT
% g' @) ? R5 ?
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
& X7 j1 n1 Y# g9 a
nHour = g_GameTimer.m_nHour;
9 o" a& Z% \5 P/ b, k; S, i, o+ ^
nMin = g_GameTimer.m_nMin ;
/ _& ~$ I0 S5 c' T9 k
#else
% d' x' q& @! T* v. A8 p
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
6 i# B4 E2 D( y7 f$ O
if( m_nLightType == 1 )
8 O5 j+ W& I9 O2 {
nHour = m_nLightHour;
: [! X; e+ G9 \, E& @& h% @/ S
#endif
! ]8 h. m+ M. k/ o G
nHour--;
8 [( ~% u: Z$ j3 L
if( nHour < 0 ) nHour = 0;
' z8 E+ c) y8 V# d) o+ c
if( nHour > 23 ) nHour = 23;
3 X2 s+ } ^% @$ {& ?; [4 ?; \. y
& R- C: u# C. F* L& W2 h
//if( m_bFixedHour )
1 ~: M9 f9 C2 i* D1 u* n- T
// nHour = m_nFixedHour, nMin = 0;
$ g) v f3 T- M" `
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
( f% }- o ^5 T" P
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
, K* o }$ l4 j
0 D8 W+ Z8 \; E( ^! C
//m_lightColor = lightColorPrv;
& o6 c! c/ @! K2 t
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
& y! @0 W G, D
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
! g; z7 E: s# v5 q
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
$ e5 O) l: j2 |7 ^3 a7 X* t
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
8 c4 N+ C( r$ Y- s4 q, b
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
; f0 X! R3 g- |, G, l
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
/ y3 L1 f) R& O3 c" Q
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
9 l2 o/ r3 F3 A! o9 q7 S, ^
: R5 i. \' K8 n8 u* h
// à??μ oˉè*
5 Z3 g! E# G4 j' Y; J$ `
pLight->Diffuse.r = lightColorPrv.r1;
2 w, T* p" p3 J; h; |: W8 G5 C1 [
pLight->Diffuse.g = lightColorPrv.g1;
6 o; M v U; Z# q {+ b
pLight->Diffuse.b = lightColorPrv.b1;
4 H: W4 Z/ I) E$ _) Q
// oˉè* ??à?
0 G# K! h4 s0 d. z( q
pLight->Specular.r = 1.0f;
! y0 E. k Z, p4 k# S* B6 W- y4 |
pLight->Specular.g = 1.0f;
! x) K6 _3 }2 ]' O/ ~7 N. p
pLight->Specular.b = 1.0f;
( n' ?+ O0 M0 c4 x( p4 ?3 Q
// àü?? oˉè*
! l/ q0 Z4 }8 N9 p
pLight->Ambient.r = lightColorPrv.r2;
8 u' }+ J4 I% E; P0 [* O- N
pLight->Ambient.g = lightColorPrv.g2;
" r. p, j$ L* b7 ~! p
pLight->Ambient.b = lightColorPrv.b2;
. G0 N" s3 q" ~% _* [3 F; l
$ c7 p1 | u f3 ^* x9 d: k6 j
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
" t0 w7 \1 J. T/ A K2 u
{
2 c5 F* ~3 G1 ~9 f k+ A- V
pLight->Diffuse.r *= 0.6f;
, n* \7 J C: z* |! K# T, B1 @2 F) g: ]
pLight->Diffuse.g *= 0.6f;
0 [8 E) J; {5 \3 y2 s4 f9 s- N& Z
pLight->Diffuse.b *= 0.6f;
! B# B' ?- g5 s1 ^
pLight->Ambient.r *= 0.7f;
- ~- T: |8 P' [# B
pLight->Ambient.g *= 0.7f;
4 k5 A0 Q6 r/ A2 `+ V
pLight->Ambient.b *= 0.7f;
% C1 x! M( y# D5 b$ K
}
3 e% ] f$ Q" l9 h! g8 E
" |; \8 m- A+ {
#if __VER >= 15 // __BS_CHANGING_ENVIR
9 T( Y3 b% {0 T
if( g_pPlayer )
& m6 W. T1 m% \1 f0 O) g) D
HookUpdateLight( pLight );
- ?# d/ j9 b4 v
#endif
$ B3 I% g& j- s3 Z
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. V$ u5 P; T9 v6 @5 W8 }
4 t# S; ]. W# y' N6 B( J( O
#ifdef __YENV
) G& t5 z$ V) {) A$ ~( ~" \* T
pLight->Diffuse.r *= 1.1f;
3 |( I! F' k. M2 {- I+ {6 d6 O' Z; u
pLight->Diffuse.g *= 1.1f;
+ o3 s; h5 J' [9 b
pLight->Diffuse.b *= 1.1f;
. t8 O( g- y* _, I4 V7 _
// oˉè* ??à?
* G0 p/ P" n4 ^9 Y! \; L; P
pLight->Specular.r = 2.0f;
3 q; c! y q: V7 n7 a
pLight->Specular.g = 2.0f;
: U7 a; R! a1 @" ~+ r, @
pLight->Specular.b = 2.0f;
/ W9 D ]/ v2 I) W
// á?oˉ
2 }8 z6 l3 ~3 m0 ]# L Z
pLight->Ambient.r *= 1.0f;
0 K/ I! b6 z2 u4 F3 n0 r
pLight->Ambient.g *= 1.0f;
* M2 q7 ?7 n1 d- i0 O* R( Y
pLight->Ambient.b *= 1.0f;
3 l/ ]4 d% M! M; s7 X
#else //__YENV
8 v9 S3 i7 k0 S, \: ?; I8 ^
pLight->Diffuse.r *= 1.1f;
' N$ T- j0 `5 H$ i: p
pLight->Diffuse.g *= 1.1f;
1 D3 g; O/ z$ Q, I0 R" j* Q
pLight->Diffuse.b *= 1.1f;
1 Q& q. {8 z9 m" r9 m
// oˉè* ??à?
0 d8 g! b* d$ d
pLight->Specular.r = 2.0f;
i. x: [6 E0 S* A0 {' t
pLight->Specular.g = 2.0f;
: o! B3 D% _$ N5 A# p
pLight->Specular.b = 2.0f;
# n; p- @/ q% |# H* W
// á?oˉ
/ O. G0 m9 M# }7 `
pLight->Ambient.r *= 0.9f;
% f4 t. R: e3 ?4 P' }" w, ?3 g
pLight->Ambient.g *= 0.9f;
# V# i) V5 [) H
pLight->Ambient.b *= 0.9f;
. O/ X4 k0 V' |0 m# Z6 a+ n
#endif //__YENV
' j# ?3 j. @ a1 B( p; o3 ?6 q, F
/ N& A. N+ g1 V, {% r
memcpy( &m_light, pLight, sizeof( m_light ) );
4 r. \* O1 U# J+ p5 E) h
8 L, x: o3 _& Q1 h& p0 r- q
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
3 r, p( b# Q& t; _$ a- |* g
D3DXMATRIX matTemp;
6 u/ m# @* G; W* ~( I: p X3 Q
static const float CONS_VAL = 3.1415926f / 180.f;
) \7 b- m- g7 K. F
: C0 I" g( T' F3 _1 v
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
/ V. v" |$ I) n. u1 H+ O% u
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
3 g0 D0 P2 V# U+ ?5 w6 l. ~& f: {' }
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
6 O* z7 g1 G" u* f
pLight->Appear( m_pd3dDevice, TRUE );
8 @4 Q1 W# X2 X; \
* s+ F/ O+ N# c. d/ F# y5 O
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: w! ?% M2 `' F% A; {- i1 v
// D3DXVec3Normalize(&(vecSun),&(vecSun));
; F: ^5 X/ [7 g
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) y+ U0 y# @7 y3 o- U3 i% z
) ~6 [* J2 l! a
DWORD dwR, dwG, dwB;
- h1 O& O" t& R
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 G' J G# k# M% }
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ k0 `7 _8 b6 \1 n
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ r/ D3 E+ U! M: j, v$ H" K0 x
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 t& H' i5 s, \
}
7 A( O( ~+ P# \0 J, h
}
1 Y/ _0 ^0 [4 k: X& x
' v8 I3 j- h9 k+ `2 Q
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
4 f: B* s. D' S1 q! l
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) );
P1 P5 j3 `+ |; W
::SetLight( bLight );
! b. i5 `: i2 P9 p
- O2 j; L) M W) k3 `5 v6 R
// ±ao? ?D?í???ó á¤à?
8 ?5 M7 q6 l5 l7 I8 k, J
m_pd3dDevice->SetMaterial( &m_baseMaterial );
! I# e# G! W$ E
- K) C. k. k) D: h; g8 l# Z
#endif // not WORLDSERVER
. w" |' B! N6 {
}
4 c f- A n- r" \
并更换
& |/ y* t; d# ?0 e
Code:
$ a6 w9 a# P6 q9 W- M; m+ F
__FLYFF_INITPAGE_EXT
) _' f" o4 e \1 z
定义
& [7 Z1 S3 S0 P
Z: J5 n7 ^% w: g2 b2 U3 x
f9 v0 W! ]5 v3 D
) @% J. I6 f- ]) S+ A, Q
) Y+ a/ I9 z. R- t* I0 A: K
现在终于删除我的狗屁加速...
" p$ t) A: L9 @3 ^. O
' s1 n! O; H: J$ |& u( x# |9 F
; @# N+ \+ S4 n( b M: O
7 A. \1 W- W! U
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2