飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
+ G9 O, x4 Q" R1 M3 K/ A" X' }$ a. O
尾翼:
9 ^/ u _4 B0 T4 M* Q- \
+ E8 H% q, Z% f; |. |' {! F
代码:
" G- J$ ^$ a8 I
CWndAutoFood::CWndAutoFood()
" M7 j" s o5 E# _/ O! k4 O
{
- n8 E* C8 K ]3 R8 Z+ }0 U8 G
m_pItemElem = NULL;
& w5 n" L5 p* ?: i
m_pTexture = NULL;
z2 Q: E: {: E% o* R# o
bStart = FALSE;
4 X# l( D% S. T+ ^
}
+ H; I' [; R; Z
. ^" H& e$ D4 D5 I) @
CWndAutoFood::~CWndAutoFood()
& ?! z% D; Z# o& w5 y/ @5 M) k7 k1 ~
{
) G0 s4 A: W" E( g' q
AfxMessageBox( "AutoFood ist gestorben
" );
4 `- m& I, s% S! o( {# O
}
; q4 ~4 V% V: P8 X5 Z* N) P$ a
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
& p. j0 m% R$ {0 B
{
. v; K9 ]3 D- C
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
/ e1 J, t. y1 o9 G, T& r9 ]
}
8 D: q2 i$ p" S. L. p: W/ Y: F9 M0 I
1 Q2 [: i6 J& ^6 ]1 k @9 \
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
: B# j* n* M# U
{
9 C7 d& e6 L% K1 H% ?. o6 g* d* n
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 q0 {! }2 }2 ]: H' ~! g- C
CRect rect = pWndCtrl->rect;
8 R9 |) i; E7 C! @ {, W
if( rect && rect.PtInRect( point ) )
: m7 L# `. c, S1 k' b
{
/ A8 r8 q5 |) F8 P$ N/ E6 N. E/ {
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
: o/ u y( d& P' y# y8 a
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
9 {! {# @5 i! J) e5 x5 d
{
5 T- Z9 J, ~& O7 C& L* j$ F
if( m_pItemElem )
' t% `' ]/ ?+ @" Y
{
1 s+ K( S& r4 |) c9 e) F
m_pItemElem = NULL;
+ ^( e4 x4 ~4 V: ^. ]1 A5 e b
}
' d0 ^7 n$ r# t$ T: X- \/ ]4 O
m_pItemElem = pItemElem;
3 v1 Z& c% d7 J3 G+ [# ~! g
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
6 {& H( K+ Y' m$ a/ y
}else{
! _2 d9 i- ]4 D9 p9 V! g1 ~
SetForbid( TRUE );
, ?. u5 G5 [& C6 D. R
}
3 y# w/ l# _1 o A+ q) u k* m; |
}else{
! A: r1 j5 F" `2 T% n
SetForbid( TRUE );
& R n" d; Y( r3 Z" q/ C
}
9 m2 |( r" T9 L1 W
return TRUE;
0 _5 x( R6 F: W, W! f$ v
}
: \& p7 U" _) N) B0 r- f
+ k2 c3 a3 K* m0 X( Z' ^
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
?" v" F: c4 T' w4 ~' }
{
0 G% ^; P9 f/ b( h
switch( nID )
& c7 J& F' Z( e' c' o7 v e
{
- w, c2 G9 F2 b
case WIDC_BUTTON3:
& F9 G& K; s& P+ q- a/ } W- ?, @
{
; c& j. I+ P. U( |* k+ D" f$ F
bStart = TRUE;
. Z: i% j0 u3 \, W+ L i7 ]+ k
break;
# [& w& l) N4 \, g1 [# G
}
! N' K7 o1 t9 W1 I
case WIDC_BUTTON4:
) N& x) j6 C. ~; g6 u8 _3 u$ O" n7 }
{
# W$ L0 g, N6 f+ c7 W7 D
bStart = FALSE;
: m$ z0 N8 x# Z
break;
3 i4 G; {' C4 [0 `9 e. W
}
9 T/ R% I# O) L/ A! t6 W& Z
}
( A2 h* l3 j; [% ?5 p
return CWndNeuz::OnChildNotify( message, nID, pLResult );
6 F& u" S& F* c M( T2 ]' j
}
% {5 q; W! W! B. c: r6 o- V E
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
5 P8 x$ R0 l6 d/ B/ I% M
{
' W; s4 E! T& ?. l6 U6 K
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
- A: O6 Y6 S: r* c7 ?
if( bStart || !m_pItemElem )
; P) e0 X0 @% \; M% S
{
4 F9 {7 H# X- E& B' ~$ ]! P% o
pBtn->EnableWindow( FALSE );
' U+ z1 b4 T5 S3 D# |
}else
5 F2 H, K( j7 t# F) s1 h& [* L% D, x1 w
pBtn->EnableWindow( TRUE );
7 m! @3 Y$ a2 ~8 q# `. p
if( m_pTexture )
" g- @' G- X& Z% U
{
. ?0 @4 e \9 v) Q+ p0 q! O
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# B9 X& M+ B4 j
if( wndCtrl && wndCtrl->rect )
. o1 h: K9 D6 t# i; Y( W$ z& ^" n
{
9 e# p/ t9 B1 A( x7 l
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
, U7 u; x: _8 Y# H7 Z
}
. x7 S( `2 t C4 d
}
, r% g, U% Y) M8 _: g; ]& g
}
& \" t3 Y/ y _$ B' i0 N
& j( k* G) m/ w& `
BOOL CWndAutoFood:
rocess()
0 u7 e* v0 g* k
{
8 H- }; y' p0 D
if( bStart )
/ q `. a: b c: Y8 L
{
( v4 S! k1 `% o9 O! W
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) n/ _3 K- I7 ~4 _4 {: O1 h
{
+ K) h1 j8 f6 `/ q) j! x) k2 T
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" q7 ?" B; V* F9 Q
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
- h/ Y# P" A, x& P
}else{
( G5 V. W) H) y8 h+ @
bStart = FALSE;
6 A/ g- T% S+ h1 d6 R
m_pItemElem = NULL;
+ N6 K' x/ f8 {! m0 t$ c
}
; i- I5 B% a$ t- D0 e" i0 F3 W: H
}
. |4 l* T2 u# Z/ A+ C
return TRUE;
! T% k9 {7 f, J% ^% L
}
2 v. U* e3 @6 x( k5 ?: o
( u. N r" ?3 @3 z4 a
登录视频废话:
7 {/ _; P6 [, P) k$ X1 K3 ~' x
尾翼:
3 z8 N/ i x8 n) [9 G# n
( p$ @$ F c) E$ g; ^
代码:
0 y' o3 I% x' Y: ?: H. ^
4 h3 r D+ ?3 y9 _7 M. E/ V: t5 `
void CWorld::SetLight( BOOL bLight )
/ y( L, `0 ?; n' \6 g/ }
durch
0 z) O5 D9 q# E; B
Code:
3 R7 K4 D& W. C) o7 F7 R
void CWorld::SetLight( BOOL bLight )
0 h3 m) _+ g3 p, o, V0 b& e
{
" I! |: ~! U" i- U
//ACE("SetLight %d \n", bLight);
$ ^- A. Y0 g4 Y+ r- x. }
& H9 G! h0 W* T( [3 j! S
#ifndef __WORLDSERVER
# U f, ^! q( U2 O4 x
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
5 X& `' e' f0 J7 V9 C
CLight* pLight = NULL;
* c9 T. d$ Y4 L9 }$ b7 Y
* T9 [# ~6 A* f- K' P
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
+ S8 h; m" E G9 s5 O' C, K1 Q
- G4 ~6 ], m& t4 N4 F& M
pLight = GetLight( "direction" );
0 Q' H% p6 O. G
& s- Q( ]/ z6 D* v' n h
#if __VER >= 15 // __BS_CHANGING_ENVIR
' A# G" p3 T# l
if( g_pPlayer ){
# q* d J) [5 i4 U! y' ^0 L& R
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
: A y3 b4 V5 }4 f; n1 S% z4 F
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
$ `- P* r9 v8 w4 |1 q
{
; b- e4 i/ R% V* U
if( pLight )
% E* f) L6 C. |; I4 R! @0 x3 O
{
1 Q" C$ J: H: n5 D6 L6 c
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
# v. p0 _8 k# p2 t% |
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
" E& E$ D( K1 H0 v) |# O- g+ f
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
5 k: W8 m# @$ c
; k/ y# y% J' i2 K
pLight->Specular.r = 2.0f;
; k1 ^- F7 W2 c, I7 I5 B; d8 t. M* ^6 i
pLight->Specular.g = 2.0f;
' R6 i! w* w& T, ]4 L5 A: D4 f% n, k7 T5 V
pLight->Specular.b = 2.0f;
3 S* l: S( ?2 m: p7 ?
0 P7 G2 c* K. P
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
' D2 D n& f& S0 G2 ]% p) F
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
0 Q3 E9 s" Q* u1 t- n% o
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
9 T9 O4 f8 B3 Q- O+ _7 g$ M% J/ ]
' L8 n |. L+ Y8 y& j5 e
HookUpdateLight( pLight );
2 z+ {9 V) B4 a7 h7 v; g f
; J/ ?( T, C( b& E
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
, G7 ?. @5 j& L' D
$ w. g- |9 z' x* K
pLight->Diffuse.r *= 1.2f;
! n+ x3 s+ i4 Z& d) \4 F& K
pLight->Diffuse.g *= 1.2f;
5 \& I/ m( D% w/ _9 R$ a3 F
pLight->Diffuse.b *= 1.2f;
' }# n( {+ M$ S) E: N9 _% f6 \1 m
1 S4 s) D8 a. ?& j8 x( U( m
pLight->Ambient.r *= 0.8f;
/ T5 j5 N8 U `/ @6 c9 g
pLight->Ambient.g *= 0.8f;
$ M G1 C. N6 q4 ]
pLight->Ambient.b *= 0.8f;
, C) [% {+ \4 p5 O7 S6 f4 @- ]: i
/ f J/ Z$ b: ~4 B/ u9 C; G9 ~" a
memcpy( &m_light, pLight, sizeof( m_light ) );
9 D6 O7 C _1 j) V* ?) ~
: K) h9 x8 _/ ~. r
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
0 c: R4 R x+ k! @$ |' z
D3DXVec3Normalize(&(vecSun),&(vecSun));
( d& U0 n9 N1 L9 |( y' U. O
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) V0 R5 ^2 h% v( l1 @8 j+ z1 x
pLight->Appear( m_pd3dDevice, TRUE );
: E: K8 H1 i' I0 ?3 g3 `& C
! V$ F( L; T) L }. Z) \; j
DWORD dwR, dwG, dwB;
* }9 c! D" K! W, V5 a0 c
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 |3 ?& y5 y$ p+ y) E
dwG = (DWORD)( pLight->Ambient.g * 255 );
$ t( V7 p7 v W% [
dwB = (DWORD)( pLight->Ambient.b * 255 );
' V+ J+ p% P+ H( e) r. q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* r3 n+ R2 y! n% E6 j
}
# y* s, C$ {& l
}
4 d, [2 B# f2 e! ]4 V
}
" |! f( }5 V. t+ |" k' B
else
% u7 [$ K' Q) j' E3 ?& r/ {
#endif
2 T, V7 u8 O) t
2 a' G0 q1 b. E( @
if( m_bIsIndoor )
+ R* R4 y) k& V$ L. i
{
. s0 N3 z' H( E5 M( T s& p
if( pLight )
2 B W! m( T# k+ D9 n3 q6 q( N! Q
{
3 Z( \, ^" j" N2 @! S: q- X' C
// à??μ oˉè*
# R& t( h# g& F# ~ C. H3 h
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
1 [# b3 p9 O9 n7 s# W
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
; N0 Q! b9 F$ v# S
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
) `* f& A/ G4 D4 X- s" E
7 W3 K3 B; u `; n4 H5 ?0 e
// oˉè* ??à?
/ H& M' l3 C, l, y- f: y2 f
pLight->Specular.r = 1.0f;
4 S( E# u6 k6 |
pLight->Specular.g = 1.0f;
}: o% h" z8 |; k0 Z" Q
pLight->Specular.b = 1.0f;
( d% _+ C/ V! { y
// àü?? oˉè*
$ v$ H6 _ c: `5 e
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
. x" N- @* r0 t b* d) W: u: X
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
9 t# Z# {' S$ H! ]0 }; K9 w
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
! A$ f5 r! G* H. \8 ?. C3 O
5 e1 U) \3 n/ Q
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
: |. L- V# r+ ]2 n [6 a" p1 t" y
{
( A' ]: x* y! H# N- C/ l0 |6 a
pLight->Diffuse.r *= 0.6f;
. {$ o' d. V I3 x! d( [( R" [
pLight->Diffuse.g *= 0.6f;
2 Q# |8 k |8 T1 Y( b! L4 w
pLight->Diffuse.b *= 0.6f;
$ q6 Z: b3 J$ w
pLight->Ambient.r *= 0.7f;
3 } T1 [0 c3 T+ `
pLight->Ambient.g *= 0.7f;
L+ o* i& ^( |# w7 Z
pLight->Ambient.b *= 0.7f;
! O* r6 d# F- k/ V
}
- G g5 k+ @; K- c
! e6 V2 q1 V8 p! y. L, m: t
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 c: i5 a3 ^) h8 d1 O6 g+ e3 l
if( g_pPlayer )
2 ~: N1 \6 k5 o3 q4 v0 D4 s. m
HookUpdateLight( pLight );
) u5 Z. F" l& G$ _0 D4 u
#endif
8 g1 Q& G. @6 ]4 b2 Q% i( h
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) w) U( ]" ]! T: y, F. B
+ L% @! ?; P& |( W. N9 G
pLight->Diffuse.r += 0.1f;
7 B1 a& ]; O, ^; F2 i/ e2 W# s
pLight->Diffuse.g += 0.1f;
0 X \/ S; C; {; d
pLight->Diffuse.b += 0.1f;
8 ^) f# k6 Q% M% ^" z. W# W
// oˉè* ??à?
% M( _9 _+ G0 v8 h6 {
pLight->Specular.r = 2.0f;
$ k4 b' B4 k6 Y8 D+ I: J
pLight->Specular.g = 2.0f;
; a" ^- P% f3 y
pLight->Specular.b = 2.0f;
& r* ~0 W+ p$ g8 J8 y: s* d6 t
// á?oˉ
9 v# M2 P1 ^! H# V* Q9 j
pLight->Ambient.r *= 0.9f;
' e! l1 ^8 |- @% Z
pLight->Ambient.g *= 0.9f;
0 L1 J& V/ k# h
pLight->Ambient.b *= 0.9f;
3 @" ~- P/ x0 |* v% C3 z
- y% u5 P- f: \+ t* F5 Z
memcpy( &m_light, pLight, sizeof( m_light ) );
# E: J3 d/ v% Z$ Q! ^
1 _/ y' p8 k6 T9 g4 k
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
( j2 \1 D2 v. f' T9 A
pLight->Appear( m_pd3dDevice, TRUE );
) N$ L& f5 l7 c4 R ^' m, J8 Y1 @; u
9 r% Q1 `5 D7 C
DWORD dwR, dwG, dwB;
% h D) T. [: W, j
dwR = (DWORD)( pLight->Ambient.r * 255 );
. i2 c- k; a, v# d9 v2 X0 c4 \
dwG = (DWORD)( pLight->Ambient.g * 255 );
: T8 o" \+ G7 Q1 D5 t( \/ p, J
dwB = (DWORD)( pLight->Ambient.b * 255 );
6 n# Y! _+ O' ?0 Y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ N8 @0 t1 _; a: w7 y* ? N4 O
}
( m- i& [! B1 |: J
}
, G I) Q3 X0 G c$ [% M% g
else
+ i- n# `6 `$ w& O5 k7 w2 |
{
5 r4 P- o5 |0 X" c y
if( pLight )
6 |7 `. `: m' a# @! e6 q
{
6 r; t5 C& s* _: q4 j
3 p/ l4 m* D J& k
int nHour = 8, nMin = 0;
, T7 d S" \/ e2 ?) m
#ifdef __CLIENT
B1 `3 F1 _, x& c
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
! E7 [7 X$ X2 K8 N
nHour = g_GameTimer.m_nHour;
/ z0 H) k0 `: @/ f) G8 d
nMin = g_GameTimer.m_nMin ;
: {1 D1 B9 e% t' }9 i/ P$ d# t
#else
3 I( m& P0 H& H$ T
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
s1 X% t/ J5 f, {+ ?3 G
if( m_nLightType == 1 )
) O' ~+ `% h$ f* h( j
nHour = m_nLightHour;
0 @6 M4 T" `) U, q
#endif
/ J3 ~( T( p# \& z& j# N% h) ~
nHour--;
0 M! c" y* z- v: f: v- r. `
if( nHour < 0 ) nHour = 0;
- f. u" V( \7 {9 Y" s+ n
if( nHour > 23 ) nHour = 23;
- P0 F" A0 t5 h& n
! \2 X# ?$ ~/ o7 m8 j9 r+ F8 P1 p
//if( m_bFixedHour )
9 }/ `) t% q/ w& c2 Y. ~8 Q
// nHour = m_nFixedHour, nMin = 0;
/ `, l6 H# L5 R1 j3 e
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
! ?; j/ Y* v8 G4 z( C3 K
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
* K) c1 `1 [' ~7 X* h, V# f" t) g) I
1 W3 M E5 g+ C7 N& o$ k
//m_lightColor = lightColorPrv;
7 i4 \+ ?9 f- a7 Z) t
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
( r' Z8 d0 c( T$ Z$ S3 z! ~- q
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
+ v5 b3 H, J& b& b3 S
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
9 e4 G+ O& o9 g0 H4 V7 a' V; |
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
2 c+ @4 E6 g7 ~" ~6 z' ?
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
6 M3 }/ S- ]# S1 I8 m7 q
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
# N0 D; G# L/ ]0 Y' N. l5 S3 [+ g, B( R
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
+ D+ B, X" ?7 {: D9 Q3 a
8 j; Q7 t+ b3 z- G* u& z& u
// à??μ oˉè*
2 J* V- }7 q2 v2 T1 L
pLight->Diffuse.r = lightColorPrv.r1;
4 ~( v9 i* l! c0 ~ G, m
pLight->Diffuse.g = lightColorPrv.g1;
: K9 u. I/ v" Y* k
pLight->Diffuse.b = lightColorPrv.b1;
0 H6 q# @1 @% H7 G: N4 @
// oˉè* ??à?
* V5 K9 Z* r1 r0 C, O6 \8 C
pLight->Specular.r = 1.0f;
3 U* D" M1 @! W% x
pLight->Specular.g = 1.0f;
9 ], ?/ Y5 U$ B
pLight->Specular.b = 1.0f;
9 j/ s/ f) N5 x( ~5 G1 F; C& F
// àü?? oˉè*
6 X0 m( I; o: E
pLight->Ambient.r = lightColorPrv.r2;
& D, m, u7 U. Y0 f- d) x2 a' V9 E
pLight->Ambient.g = lightColorPrv.g2;
) Y7 A5 \; V% M, y" C8 Q0 V/ y0 `! \
pLight->Ambient.b = lightColorPrv.b2;
- F$ l3 x7 m7 V f' C
' s8 ~1 ^) I6 W$ p2 ^; A
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 x7 S8 a: `# [- X% N( S
{
# y" E1 f, ~ R# o
pLight->Diffuse.r *= 0.6f;
4 p+ s9 |' K: C
pLight->Diffuse.g *= 0.6f;
7 A: A$ k- ?# E% K% L# R
pLight->Diffuse.b *= 0.6f;
6 B. Z, }' F5 J: V% T4 G4 e
pLight->Ambient.r *= 0.7f;
( Y( D w0 h0 i8 L
pLight->Ambient.g *= 0.7f;
5 o, t, \: G( ~1 p& E8 z8 N
pLight->Ambient.b *= 0.7f;
' w: @$ W9 G" x1 @; z
}
$ {8 b5 G/ n, ?5 h5 F* U
; A1 ?; X4 r$ N1 y
#if __VER >= 15 // __BS_CHANGING_ENVIR
- v% X' i+ ]: D4 ]* b
if( g_pPlayer )
/ f" a) r4 [& G A1 r# z7 d2 L" s# L
HookUpdateLight( pLight );
2 G' s" l# H% ~0 F* L
#endif
P0 b7 b5 q, @8 k, P- q
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" O; l& k/ E* @1 v0 t
% H2 `. ^9 w$ s! A% n0 G
#ifdef __YENV
! a6 X2 v- B! B7 a2 `9 Y, V2 V
pLight->Diffuse.r *= 1.1f;
' _* x& L# S- v! Z3 B% k
pLight->Diffuse.g *= 1.1f;
& j" a: z5 L1 w4 J
pLight->Diffuse.b *= 1.1f;
% v1 |# A3 ?5 ~, R
// oˉè* ??à?
' c8 h j5 a9 _
pLight->Specular.r = 2.0f;
5 W. [. u/ O% K9 X. T
pLight->Specular.g = 2.0f;
5 J- F! J% A% |
pLight->Specular.b = 2.0f;
' f c, H! B7 y2 W) e
// á?oˉ
* F, e/ a& p x9 L0 f# c
pLight->Ambient.r *= 1.0f;
( g# D$ `1 {/ r* Q. [. G9 R
pLight->Ambient.g *= 1.0f;
! C& y! J% f" z8 s
pLight->Ambient.b *= 1.0f;
9 \# Z* T p2 h& r: c
#else //__YENV
; j- x6 ^1 P/ }- n4 \
pLight->Diffuse.r *= 1.1f;
+ x( |4 U7 R/ Q% I: n L
pLight->Diffuse.g *= 1.1f;
/ v! g% R" n, C
pLight->Diffuse.b *= 1.1f;
. B* e) G" v5 C* [
// oˉè* ??à?
1 S( {0 Z) b6 H8 V9 Z+ T- u
pLight->Specular.r = 2.0f;
. A! R, M* _, `8 |8 \' [
pLight->Specular.g = 2.0f;
9 y; {7 d$ s1 y" X7 Y; R- _
pLight->Specular.b = 2.0f;
% V- q) j6 o3 [. L7 Y3 {; {# y
// á?oˉ
5 w; R) H; v A8 L! W0 X
pLight->Ambient.r *= 0.9f;
; D, J' R& X& A, N; ?0 R( Y
pLight->Ambient.g *= 0.9f;
* a. A: B6 m" V
pLight->Ambient.b *= 0.9f;
/ V) |, B8 [. b
#endif //__YENV
# z' k; X1 T' A5 w
/ g/ R& V. k4 `+ A
memcpy( &m_light, pLight, sizeof( m_light ) );
( l$ o6 W" D1 l
* @8 t o- ~) ~$ G! Q m& p7 O
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
& J9 C9 q( ]8 l4 W5 D7 X* ~1 \2 V
D3DXMATRIX matTemp;
- ?: X1 V1 P# @2 i* w4 W
static const float CONS_VAL = 3.1415926f / 180.f;
8 h* x1 i7 a, M8 z/ L
, t- {% z$ ~1 w* J5 n! C% |9 X
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
7 t# w, f! R" i* Y
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
# H; T5 z+ j3 t$ Q4 C. v( E
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
# O* `- p- H/ i
pLight->Appear( m_pd3dDevice, TRUE );
4 M8 \! v! J+ h% p3 K8 m2 m S
1 w. n! o; n. w0 a4 @1 G- S
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
- b* F ]9 n- [0 r0 ?( B
// D3DXVec3Normalize(&(vecSun),&(vecSun));
# i0 u% r3 E; z/ e B/ n S
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
* ?# N6 j( W& H$ f
7 v/ f0 N. [1 s0 D
DWORD dwR, dwG, dwB;
' q2 Y, j O- s) M, \
dwR = (DWORD)( pLight->Ambient.r * 255 );
& ]/ t% h" P1 @9 W
dwG = (DWORD)( pLight->Ambient.g * 255 );
: f9 U, r C1 d. N( ~
dwB = (DWORD)( pLight->Ambient.b * 255 );
2 C$ @4 c6 S+ i8 T |2 x' I
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( k* k+ A% U2 X
}
4 K, [! C1 f; t9 [8 W+ }
}
. N4 Y( Z* U2 g( v3 F- t
5 e- ?; {$ E) g5 z' R
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
0 N5 G6 p" X1 j- g N# S
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 r% e2 w$ Q) ^7 k0 w
::SetLight( bLight );
7 ~+ l: ~6 ^0 A I- E1 T
; D+ w& C6 L! [8 M
// ±ao? ?D?í???ó á¤à?
- F8 K' A0 Y4 c) S/ Y9 i
m_pd3dDevice->SetMaterial( &m_baseMaterial );
8 o" q `9 E; d' [" q$ d) U0 d
$ o8 ]- u6 r6 Y
#endif // not WORLDSERVER
8 O& `9 l* h4 v. j5 W2 [
}
- x$ n t4 m9 S* [ u
并更换
8 Y, h. {! N- E6 J1 M
Code:
% V% ~* h; h2 l4 Z8 O
__FLYFF_INITPAGE_EXT
9 ?6 C0 |: _- W9 X
定义
& ]" p' _, k2 j0 b8 y
0 z: q- T& k2 D- o' Z
2 `- r1 E4 r' t5 h- h' i g
- e' |; [+ O" B3 \. I" l2 \
# n* z4 g0 H4 {3 X0 C
现在终于删除我的狗屁加速...
0 ^3 Z+ r* g$ l! o4 I$ `( O b
1 B3 P9 U3 y0 O
2 b: n& e; @( _! X* r
( P/ s& i. ~. E7 X" K i
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2