飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
- C3 E' C. C( h) e' |
尾翼:
& Z9 B |7 }7 r9 P0 [
* c$ b3 y1 b9 F7 D6 ?% Q7 N
代码:
( }' i: P; m5 u! ~
CWndAutoFood::CWndAutoFood()
' v& w) N1 h; P* E1 F3 D- O
{
1 S% a( w) X/ [5 J1 Q4 g
m_pItemElem = NULL;
- A- p u4 A( q, v, v2 e9 H" L, J
m_pTexture = NULL;
# M3 n* \* A% V8 t3 Q
bStart = FALSE;
4 n# n* G, }2 M" r: G+ s4 o) T
}
5 R$ _' {% Q) R
9 s0 a1 E; u/ J' X. j* m/ h
CWndAutoFood::~CWndAutoFood()
. f8 u- p m! C: v6 R
{
# S. Y$ B& [4 n+ C& M' ?
AfxMessageBox( "AutoFood ist gestorben
" );
4 }" q" b, G2 b* z( H v" |
}
* ^8 T9 v4 Z' u( y [6 f+ w, w! z; f" T
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
8 B$ m/ q* z- Y0 a( b0 n
{
- d F. E+ x" I7 X, m7 p; ^
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
5 P: [8 t/ N0 v/ ~5 g; R7 P
}
! \7 _1 k' e1 S! e6 `5 ]
6 ^9 b+ v' _6 d% Q3 r; f* N
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
* M9 B# f4 {' x& n
{
- J1 s( b0 r# A. y
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 N; _/ h$ C/ L7 Q$ Z3 S% o f, U! l$ I
CRect rect = pWndCtrl->rect;
* I, a; ], ^- T! x
if( rect && rect.PtInRect( point ) )
7 j1 C4 j# H: b. _! S! A0 z
{
1 T+ V" v3 W" i' y& Y
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
9 W7 n# M5 _9 y: ~2 z" x
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ m. A7 ~& n! N3 v
{
* T% b' @: d; s1 H# V; V
if( m_pItemElem )
/ o$ H$ a0 i0 h4 k2 L2 C
{
" ^# m/ J9 W7 l) k S0 c5 c
m_pItemElem = NULL;
) K) ?$ P8 G S8 w/ e
}
% N4 o: T, Q1 r& o J% r
m_pItemElem = pItemElem;
( I, t' Z- k5 l( e- t J
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
* ^3 b! z. i) t$ x/ x t4 c
}else{
- B5 C8 C: S& T- k" B3 o
SetForbid( TRUE );
! `" W. j, `/ c+ p" I8 ]
}
! Y- b0 e: @/ n3 k+ n; P
}else{
( @) T/ Y8 \! z! k# K% v4 L
SetForbid( TRUE );
# T2 X0 u% b. P5 P5 R! X; Z
}
) X) M4 {7 R' x" C/ k
return TRUE;
7 k C) h6 b8 w. X
}
3 }8 ^$ L/ a" g9 ?
$ O' K7 U, N/ K8 i$ b) T
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
5 V7 Y4 Z8 R! y# T
{
1 n; u; h% L6 n' c
switch( nID )
8 f/ ]+ N) o9 y" V! w
{
. ?% `* D5 S9 W& d
case WIDC_BUTTON3:
& P( Z& R0 |4 k! G
{
/ J2 H1 s# C# Z/ f$ ], h2 o8 _
bStart = TRUE;
# ^4 C1 i6 d0 o. i2 B6 e
break;
5 P3 r- y2 A1 _/ p: @
}
" x% ^9 m" @& s. k" Y- q
case WIDC_BUTTON4:
0 W: M4 O+ O' P
{
* X) [7 ?3 a3 z( t' g
bStart = FALSE;
9 M& {1 V" i) o o% A. W* V+ F
break;
2 f# k- Z+ y3 I" P* e: L, H J' W% E
}
5 c1 w# T5 D4 u* I( b9 f
}
9 R8 y; ]; _, O9 e% y7 u+ Q' @
return CWndNeuz::OnChildNotify( message, nID, pLResult );
, c: d1 g, i$ L; v1 F* {: J; O. S
}
4 _: Q r$ U1 y8 K" A
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
/ s# s/ k- D- E+ d1 Y
{
0 y3 h5 l: j$ c( ?' }
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
( `0 Y4 p% ?! p) V* J* s0 J
if( bStart || !m_pItemElem )
7 q5 e8 D/ {- G
{
0 U$ O" d( Y3 \: f. y
pBtn->EnableWindow( FALSE );
% B2 m* [7 B+ ]& r$ M5 W0 t1 l
}else
) h2 g' `! S( M2 S& z, [8 k; ^
pBtn->EnableWindow( TRUE );
d9 _7 y* Q. `- F& Z
if( m_pTexture )
% Q9 o4 p- C7 @; o( Q% u5 \) M
{
& a/ ^5 D4 Y0 a% }: K
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 `( l- q; j; n4 H# f
if( wndCtrl && wndCtrl->rect )
: s# I" S K- r# L0 W1 s7 c, w
{
' e% q5 |# k1 q# l
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
% W T" x Y$ b' C
}
/ ^; {$ ]5 z" {1 S* o( }
}
! l7 |& I+ |8 T& c
}
) Z3 J* o4 Y. }
, H2 V- X% N9 r8 U8 z9 \2 ]' m
BOOL CWndAutoFood:
rocess()
% K' z7 F5 C# y% b: N$ j" Z: Z
{
% j! y) a; Y6 B' S4 [) @
if( bStart )
0 w( ?, E! p+ O- Q
{
8 ]. z3 d8 v. [
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) k4 B7 k9 r2 u
{
: _! g& O# A( n# p3 `# 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() )
( T( U' x# _ M) _
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
& ]) r3 z9 R* z; C/ X0 y# d( o; g8 T$ {
}else{
% Y' w/ L! a, s4 ~) @
bStart = FALSE;
5 `- i- n" n. p3 u$ N
m_pItemElem = NULL;
9 W1 V) k5 |! c0 W7 l. ~
}
* e( s$ A; a& j: n% _2 d
}
. R8 u8 J9 {6 w/ N% [$ l/ S
return TRUE;
4 B U# C3 @& m
}
* \# A/ w6 d) o& V! ~: d
3 b" j& H. j: c5 M2 p5 a
登录视频废话:
7 L" j& }2 ^7 K6 _
尾翼:
" m' e4 H2 f) f5 r# B4 g
6 p& ]! D* Z* j
代码:
+ b9 {" Z/ `7 s
3 z$ B4 G+ N8 K+ h
void CWorld::SetLight( BOOL bLight )
' A8 J! O3 ?1 o1 j& [
durch
: ?& }) k# Y/ F# ~
Code:
5 X! ]# M8 u( E
void CWorld::SetLight( BOOL bLight )
. L& ~6 e. e0 T
{
. w, j8 Z+ k& j4 S A! K; N* B
//ACE("SetLight %d \n", bLight);
p& a( |) ~: x" t2 g
( w: p9 g. r X% H) R; D
#ifndef __WORLDSERVER
0 u# q" h* r7 p3 _/ [
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
0 c4 ?- ?" ?+ a( S2 A0 I
CLight* pLight = NULL;
6 c1 E0 ]" \7 ?- X
; b% Y4 W9 `+ I* l$ k
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
6 z& ~8 q' h d e7 e
5 l3 W: W5 M, c& n/ H
pLight = GetLight( "direction" );
2 U4 |0 o" q9 P2 F4 k" {" j
. Q3 i J6 `% F. J7 s1 G' r
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 K y4 U* s D: g' @) Z
if( g_pPlayer ){
' B1 h3 } q! _& }
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
; e( a8 x( [9 t. W" P$ [
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
' l* e$ T# B! S, O% B
{
8 n0 X1 X2 G8 a
if( pLight )
( m1 u% @% A0 k5 z
{
" |( ?& j& `; u, I, J `, s2 n
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
& i- m3 X+ j2 R! H2 j- z5 Y; E
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
; A! m) l1 Y& S/ B1 f; m
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
4 n b8 Q, S) |6 [! l
( f+ t' C* _# h9 _3 i5 T2 K" j
pLight->Specular.r = 2.0f;
: P- \% |0 _4 c' l
pLight->Specular.g = 2.0f;
5 T- O+ C: g" Y+ d! u2 f2 X
pLight->Specular.b = 2.0f;
. E2 g2 [7 t. q8 d
$ F7 N9 Z" b6 c( x
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
4 m# j! i5 I3 A9 i- p g
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
@* D5 W l x& _" ~
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
( a' L6 h" o; }4 ]$ p
2 n0 r6 U2 T* P: _# \* ]
HookUpdateLight( pLight );
$ B, W3 L3 Y" G6 Q2 N
0 L& k) R7 I: ^5 `1 @5 R6 z
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) e. @1 `1 L. W! |% X
/ }: C4 N1 e, ]2 x# l$ g6 w
pLight->Diffuse.r *= 1.2f;
* G5 r8 a" L) ?3 T) { g
pLight->Diffuse.g *= 1.2f;
+ W5 e N$ @2 C" d( f$ J
pLight->Diffuse.b *= 1.2f;
# X' S! V* p. {7 F
* t* c7 E; e" j* I
pLight->Ambient.r *= 0.8f;
) ]2 x" t9 p( f: W f/ w
pLight->Ambient.g *= 0.8f;
, V7 s: h* l b, w
pLight->Ambient.b *= 0.8f;
0 q* M* I8 w$ v! s
% Z: y2 c9 O8 {' | N! Q1 D" P
memcpy( &m_light, pLight, sizeof( m_light ) );
6 ]9 {* d; S7 d
0 Z- O; h! q/ {- n3 U
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
4 T9 e8 @; q7 x, R0 ?. G0 V
D3DXVec3Normalize(&(vecSun),&(vecSun));
1 x* M8 q) j6 @6 n; x3 P! q
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# {1 P" B' @8 b8 F6 N3 T
pLight->Appear( m_pd3dDevice, TRUE );
7 p. h. y5 e( i! e2 r6 n
/ b# R. O) Q! \: y% u
DWORD dwR, dwG, dwB;
8 w7 q0 F8 }2 m: E/ b- k6 V
dwR = (DWORD)( pLight->Ambient.r * 255 );
# O o9 _+ U4 a* h! H& r! f
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 i6 k# Y( F2 M) m$ L) r
dwB = (DWORD)( pLight->Ambient.b * 255 );
. q7 F3 e$ a7 D$ E" {
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" i6 q$ t) ]0 h. h
}
( v$ S6 e& u& R; V. @4 K
}
/ e% B4 b5 k$ j3 s
}
7 l0 Q% ~2 f2 G2 Q* w9 E
else
# `. |9 V$ A; R7 U q M% ]
#endif
* ?$ B& m; S7 h5 C/ X# R% ]
) J( s- n. ^$ X( C) W I
if( m_bIsIndoor )
+ C' Q# ~) l& ^3 P% e
{
; X7 ^! s3 w* h. [
if( pLight )
' U, b6 W3 k4 L- P: R7 a
{
: o% \& C! e' M* @! {0 W
// à??μ oˉè*
`! G: k* r- }. T: i: L
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
2 H0 S+ H6 Y0 e( F1 w) H
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
, E9 E c K" p
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
/ e& V$ R% \( w) i
+ ^3 B1 L! O7 N [
// oˉè* ??à?
, w7 T; b* S6 j0 C! p4 C+ X( o4 q
pLight->Specular.r = 1.0f;
# A/ I' M( t, w7 \4 _
pLight->Specular.g = 1.0f;
0 J" I6 {, k% \: k2 @7 }$ `% {3 `
pLight->Specular.b = 1.0f;
, A1 v1 F9 T( R2 Y m4 g `+ j
// àü?? oˉè*
5 Z2 F3 W* r9 [$ h# H; V- K$ f% i
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
& w8 R5 ?+ \6 ~: a9 i% O: @8 m. W
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
- O& z4 e1 c% y5 k
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
4 @: m( Q1 D2 R& S( `; f: W9 ~0 }
2 b+ F3 H+ B W1 S# u
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' o5 V3 }/ u0 A! F) {/ L
{
3 ?' c$ O6 N) Q9 n! t: ]+ Z5 ]
pLight->Diffuse.r *= 0.6f;
1 t8 S8 R3 v9 l- v
pLight->Diffuse.g *= 0.6f;
f4 {$ t8 v- x* [; a$ @. J
pLight->Diffuse.b *= 0.6f;
j1 C" g( n7 \5 `; B
pLight->Ambient.r *= 0.7f;
7 |+ ^5 `. _' c4 |% ?
pLight->Ambient.g *= 0.7f;
D* _/ f( y0 U2 }. v+ O
pLight->Ambient.b *= 0.7f;
4 S7 |% H$ W% T, L
}
' T: Z+ e1 g9 L+ v& M! F
- H0 S0 C7 I; Z2 w6 ?
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 q8 H% Y3 H( a2 s& g u
if( g_pPlayer )
* L( O+ t7 f% I5 F" F) ~& s D
HookUpdateLight( pLight );
& o' d" R6 y: J/ I m# ]
#endif
Y" G5 h+ o. I% J
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 Z2 }" g4 V! F1 c/ W# W
7 J; b; T9 v- a6 F4 |3 B
pLight->Diffuse.r += 0.1f;
9 a W6 G1 B6 L" V# A8 F
pLight->Diffuse.g += 0.1f;
8 B9 V9 { I4 F, j0 R! ~6 H
pLight->Diffuse.b += 0.1f;
8 }, D/ z0 z2 u% `
// oˉè* ??à?
3 N) Q1 ~; g( k1 e6 b
pLight->Specular.r = 2.0f;
0 I8 a/ B$ E* U: h
pLight->Specular.g = 2.0f;
+ g3 M y: b7 |7 C# ~
pLight->Specular.b = 2.0f;
5 Y( q! O# g# R! X$ T) A
// á?oˉ
9 W$ {$ e0 B* Y1 k4 J) A$ Q4 ?" W
pLight->Ambient.r *= 0.9f;
: } [$ L( K( L5 H1 v; D+ t9 d& r2 {
pLight->Ambient.g *= 0.9f;
) b0 d$ a' S+ M: F' i( k# o4 w. \! s! y
pLight->Ambient.b *= 0.9f;
" h3 q! y# N }" I6 q& S! r- q
% z" o8 X P; i% O; E* W6 {& G0 u
memcpy( &m_light, pLight, sizeof( m_light ) );
' \! S, I2 ~. Q% d6 u6 Q
0 N) D% o' H5 }+ C, Z* {, c/ X, Z
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
! c4 q+ J. B# ~
pLight->Appear( m_pd3dDevice, TRUE );
" p5 p* A# ^ [7 R
9 F& u; [8 K8 G- [. ^
DWORD dwR, dwG, dwB;
* K* B& s2 i6 k& g/ G R: S, M
dwR = (DWORD)( pLight->Ambient.r * 255 );
2 Z* w5 h c5 f8 ]7 g
dwG = (DWORD)( pLight->Ambient.g * 255 );
) C$ i4 j9 m: }! Y6 D
dwB = (DWORD)( pLight->Ambient.b * 255 );
6 e! D' y3 H5 _& @ K* X
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 H# `) i9 i2 O) E" T
}
9 ~, c' E. R9 c) `, E
}
& ~/ } h# [# J; l7 K
else
i9 E5 z) Q0 z0 W
{
x# K$ D5 G' f. |
if( pLight )
+ h) L' M9 x8 I/ I* c
{
{$ a- s! j2 N0 Q) q& T" [
7 z( g H3 g. y( M
int nHour = 8, nMin = 0;
8 U1 t2 ]. S- q7 M0 |1 l& r# d
#ifdef __CLIENT
2 w6 Z1 t- r" g: U( y# V8 @
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
1 q' ]3 K$ U& N/ D
nHour = g_GameTimer.m_nHour;
1 s+ B i: H. B* y5 ~1 ]
nMin = g_GameTimer.m_nMin ;
1 L: c/ q4 t/ }6 N4 d; s$ N3 y+ [) t
#else
8 B1 b5 u+ T( F+ F
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
: R% B6 `# T" K
if( m_nLightType == 1 )
0 \2 Z0 H3 y1 W/ I, x" |
nHour = m_nLightHour;
; p8 Z0 n( \9 w; |- ^8 p6 T! I
#endif
* [+ u& ~" O2 T' e
nHour--;
1 P9 r( m! p, H( h6 x; F
if( nHour < 0 ) nHour = 0;
# @- @8 o0 a$ E5 N' F
if( nHour > 23 ) nHour = 23;
0 y0 Y- a) m# b T
% c P$ ~7 ?+ F6 R& ~
//if( m_bFixedHour )
* @8 G1 G1 {4 X
// nHour = m_nFixedHour, nMin = 0;
% u& Q6 m, g: M9 R
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
% `; }* Z/ `. X( A
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
! q" S% n) x2 \6 P _9 L7 K
0 H* L' R6 B" n3 e: i& v1 r0 ~9 A: H
//m_lightColor = lightColorPrv;
' s! r+ {, C3 g: _( c; i6 b
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
7 Q( D# }' g, i4 k l' H; J! W
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
2 S* O5 u8 O, D* C
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
- J8 X y% G' q& [ _/ O
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* o7 v; P m, N; c
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
' m9 {0 f+ x' F, l
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
# W: ]1 ~4 Q: z
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
: n# [0 Y% b7 F& e. R2 D: Y" ]
# |$ p7 x6 _( s1 j# ~
// à??μ oˉè*
j" D2 D- f1 E7 @
pLight->Diffuse.r = lightColorPrv.r1;
- @' n/ t' H* h/ ?
pLight->Diffuse.g = lightColorPrv.g1;
# a$ x, O5 R, R1 ?
pLight->Diffuse.b = lightColorPrv.b1;
6 a# d, ]! W& `* ~( J
// oˉè* ??à?
3 }" H& d# S- G, e- r8 U" N
pLight->Specular.r = 1.0f;
; ~# L; _# C: U: k) p' ?( n
pLight->Specular.g = 1.0f;
- V, b8 a, o1 c, e
pLight->Specular.b = 1.0f;
) w( `2 V7 f: _" O+ z# `/ `5 ?
// àü?? oˉè*
3 D/ U( B2 Z, k" K/ l
pLight->Ambient.r = lightColorPrv.r2;
% J! E5 U# o( x& R4 o6 r" ^. e
pLight->Ambient.g = lightColorPrv.g2;
+ G7 D( f6 Y1 R% I
pLight->Ambient.b = lightColorPrv.b2;
$ R& _6 _0 Q/ G/ o2 S1 J7 s$ L
5 E* q8 [( @1 S( M# U
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
g9 o1 T- L9 L& X" O7 h
{
- z$ S2 i4 g) {9 c% B4 w
pLight->Diffuse.r *= 0.6f;
/ [8 H8 w: D6 y. Z8 f9 U: X7 P
pLight->Diffuse.g *= 0.6f;
6 }8 q2 Q. v ?/ V
pLight->Diffuse.b *= 0.6f;
1 T9 L/ ~0 {$ e4 @9 w2 l' |
pLight->Ambient.r *= 0.7f;
" ~. M/ S4 h' J2 c7 M
pLight->Ambient.g *= 0.7f;
, i8 Y: N1 Y0 y0 H2 B* i0 O
pLight->Ambient.b *= 0.7f;
" v. R' S" p9 C: c: L8 J
}
" s& `; Y V6 W2 h; x3 M! l
& g! k2 w1 f; {! {/ F+ ]4 C1 c
#if __VER >= 15 // __BS_CHANGING_ENVIR
' O. a% R8 @. e( M
if( g_pPlayer )
! X' t0 |; s' W
HookUpdateLight( pLight );
) @( F! V2 O/ S! ` t& s
#endif
0 Z7 h( j- N7 @, c' h9 w% r
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& x- I' H! a0 [3 Y4 Y7 C- {* Z! S
. {6 U1 D1 ?/ u8 d% H* k+ W+ z( X
#ifdef __YENV
$ H% L0 M- h6 b2 d% y5 ~
pLight->Diffuse.r *= 1.1f;
" u2 I' s' |' k: i$ f( s5 D( u
pLight->Diffuse.g *= 1.1f;
% @ U: T# t: D$ N: Y8 |% f
pLight->Diffuse.b *= 1.1f;
8 Q/ N9 a: z2 P
// oˉè* ??à?
( `' r/ ^- C$ X5 [
pLight->Specular.r = 2.0f;
. F8 L8 `5 `, U4 Z! W# p
pLight->Specular.g = 2.0f;
4 e. Q% W% V( L; b3 U m7 \6 d
pLight->Specular.b = 2.0f;
' E- |$ k& L) O0 Q
// á?oˉ
) M9 X0 |( I8 s1 v9 \
pLight->Ambient.r *= 1.0f;
. v2 ]' e- v, y1 `# Z' A5 M+ l
pLight->Ambient.g *= 1.0f;
; h: f. j8 P3 y$ _0 U6 U
pLight->Ambient.b *= 1.0f;
, \! ^; ^7 {; D7 \4 b) J7 i
#else //__YENV
( g" p4 c; z( _% C4 {
pLight->Diffuse.r *= 1.1f;
! P' c, y6 V0 u7 L' H
pLight->Diffuse.g *= 1.1f;
, r9 I: u1 l; W/ C# Q& X |$ N7 n6 {, C
pLight->Diffuse.b *= 1.1f;
" V* P; W5 g- J/ i
// oˉè* ??à?
! ~' g! _9 `, G u7 W( b q: `
pLight->Specular.r = 2.0f;
2 [7 f) r3 [+ J: H, }! G7 _3 K
pLight->Specular.g = 2.0f;
9 p' ~+ j w6 ~9 k8 H
pLight->Specular.b = 2.0f;
: _2 U. h' n ~3 g
// á?oˉ
1 t* N6 w3 u3 @5 v4 C$ w& e
pLight->Ambient.r *= 0.9f;
$ X+ P0 H( I* f
pLight->Ambient.g *= 0.9f;
* a! G! q2 B0 L$ H2 A. i2 k
pLight->Ambient.b *= 0.9f;
! ^" _4 s# n+ q6 J+ V; W! a% @
#endif //__YENV
' c: a6 Y3 \5 X4 M- `- C$ f# ]5 ^
( T9 n2 q7 Z u5 ]0 H* q
memcpy( &m_light, pLight, sizeof( m_light ) );
H. ]( t. M' ^3 r9 X
1 X; ]5 Q' i) F0 q% i
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
0 [4 n0 ?( E9 B2 E1 c
D3DXMATRIX matTemp;
' s5 ?4 V- ~" G
static const float CONS_VAL = 3.1415926f / 180.f;
" H$ M& z4 d5 u) e0 Y% f9 F5 ?1 {
2 W% _( V- o2 J1 Z! {
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
. X$ e/ x) _: w: {* Y1 Y
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
. O1 f; T4 s9 E* X4 f" N( x
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
6 w. R: \+ c) ^$ e' H' K
pLight->Appear( m_pd3dDevice, TRUE );
2 e. S) t7 y* ~$ C% @
! V4 A& R S9 F/ _( J8 i) A
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
e& |, L$ v0 B3 M
// D3DXVec3Normalize(&(vecSun),&(vecSun));
: t6 C- B- s/ Y: a! Z, e$ \; F. f. n
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
& M$ k( m1 L8 }
, E' B4 `0 X+ c
DWORD dwR, dwG, dwB;
} [7 S/ ]$ r
dwR = (DWORD)( pLight->Ambient.r * 255 );
/ E. x" @. [: L% l N3 g
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ a( t2 d9 m- n0 u
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 d+ f5 A4 e4 g0 ^$ V9 _
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
9 H: ?6 _/ H0 Q* A# L; S! i
}
/ G+ j: f1 }! N. E' D1 j/ [
}
+ w' b4 s( v8 z3 G, Y
6 o. f5 @3 g, d6 G' d. Q
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
+ c4 I, q" V. d5 N
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) );
4 M+ {" O& K9 y. v, r) U" g( _
::SetLight( bLight );
, o# ~/ ?5 m& n" p- j
3 E* n! {+ |# o! h" U( z0 a3 v
// ±ao? ?D?í???ó á¤à?
5 I/ m8 \/ l- M. ]
m_pd3dDevice->SetMaterial( &m_baseMaterial );
* o1 f- I; q4 X( ~; e4 Q0 p8 r
7 {# Y' x5 D9 D i1 m
#endif // not WORLDSERVER
7 a0 s% f- p7 s6 e
}
4 a2 } f) h. b1 C$ U% G1 q- e, U, |
并更换
c; C( u3 t, B4 m2 e
Code:
* [$ ^- B% G, |8 F% C
__FLYFF_INITPAGE_EXT
: c+ z/ S# K/ Q; p; ^. o
定义
. Z# ~7 h2 V/ E2 a4 ^1 Z
4 C' C% f* g* M# H. c, m2 ^
0 H* z- Y* x& o" G) S* h- E
4 @3 s: b z( m: b0 P' k
: y( R- y# A, y& u. ~/ I+ m, ~6 d
现在终于删除我的狗屁加速...
1 @2 E$ O+ S3 M- @& \ }0 K4 ~* z
& y8 p& z9 C* M
5 j' i9 ?: H+ r$ c+ V1 A' Y
0 V, a0 G1 ~3 d6 Y$ f' F: G5 P
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2