飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
' B) y7 ^ k, i4 p+ |
尾翼:
+ ?7 c2 n5 x/ N& `. R
1 X r$ R7 w) [, e9 k
代码:
) m- N0 u* Q% h+ @& t* X; z
CWndAutoFood::CWndAutoFood()
+ k% m$ q6 |' v
{
/ {- k3 Q& D$ c; h6 s4 ^7 {- A
m_pItemElem = NULL;
& A+ R) w1 E) L6 T0 [
m_pTexture = NULL;
6 w$ [( c7 l( G; A: q- v
bStart = FALSE;
, r0 L& t( A( \* U* v* e, \
}
: p) ^/ [ G' c3 f: F5 Q3 e, }
9 b+ X. o1 \2 u. I# m" D2 M
CWndAutoFood::~CWndAutoFood()
9 g1 F) O( I# ?* O r
{
! w0 h. o j& Y6 B
AfxMessageBox( "AutoFood ist gestorben
" );
; O$ C+ Y" B: Z% k7 @
}
2 j/ l( k: q! m0 l1 L/ v
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
1 c6 S E1 U7 K" z
{
8 J I- ]2 P9 C. Z* P1 w& d
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
`* F' W3 a/ u1 c U5 d
}
$ l: _7 i7 W8 l2 B
$ H- v4 J+ S% e, {4 A4 r
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
x6 d. t+ ~' w1 Z4 a' t( L
{
3 M1 M9 Z/ a2 W3 [0 L: J2 \& M
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
; H7 m# J7 v* v$ _5 ?: c
CRect rect = pWndCtrl->rect;
( ]! [9 W3 e+ z' z& {' H
if( rect && rect.PtInRect( point ) )
* ]" u: b8 T" ~$ ]
{
/ g2 b1 r( y6 n# `
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
9 M* D0 `; N' O0 s t% [% X2 D
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
9 S9 K d6 x& F; l* M7 t
{
0 W7 E- X9 E! i
if( m_pItemElem )
' y% l0 U3 C( {
{
$ I2 \& H8 P- k4 B1 E; a
m_pItemElem = NULL;
# o, Z( T4 A( f
}
; S6 {8 V& v2 \, q. `- R, @" B8 @, d
m_pItemElem = pItemElem;
7 y2 @1 S6 h8 ]) ^4 Q0 F/ i
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
' ^; J; m, Z! u; g
}else{
- f& x1 S9 o* c; U
SetForbid( TRUE );
" x4 }1 E# t* E
}
; l2 g! g& p/ \3 G1 y* S
}else{
6 e. f v5 ^/ C" n6 A: f
SetForbid( TRUE );
7 b( }7 _, q+ r% C7 `" j9 `
}
+ E6 A6 x2 o; o6 ?
return TRUE;
* z0 b4 D4 X# a. Z- Z3 l8 H
}
/ X8 F. _! c) _* ]
, V2 k; J4 ~, {3 P" d' K( \
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
0 u; a9 _" L! M4 [; s' h9 p# f6 Y
{
% t" B' d" E6 q! F* s+ T
switch( nID )
' m+ |* Y( y* B- l# Y
{
k( j2 N# F/ T. _2 T1 V
case WIDC_BUTTON3:
% Y% L [5 G+ ^: i( j& v4 ^' M
{
% n- L' I4 ?& v, T+ l0 W, y
bStart = TRUE;
7 Y+ x5 G. a* M' A+ ]' G' @+ m
break;
$ O, a9 l" l2 t. Y/ `7 {* B
}
" \. ]! Q1 {3 y9 U! L. P! `$ s
case WIDC_BUTTON4:
) V- W. _7 q0 w) _3 t8 N
{
& A4 i3 j/ a. r: `
bStart = FALSE;
9 r0 W/ o. m+ T+ k# y
break;
* `3 ~3 W* H: | H
}
. q6 D3 G5 v! k$ C) T @
}
+ s& V" Z* E* c1 M( {
return CWndNeuz::OnChildNotify( message, nID, pLResult );
$ n* N5 i8 v. G3 ^ _
}
5 B9 |; m7 N: t4 L8 p% H4 G
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
O" Q' ~+ l) n) `# ?
{
8 w! W2 `6 m$ T" e) W
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
8 f) K% b4 L' C4 a. Y% k% P
if( bStart || !m_pItemElem )
5 s/ ~# Z" l! |- `
{
$ z9 d" |1 m2 k/ a, q
pBtn->EnableWindow( FALSE );
) q4 b7 u% G3 ~$ L' V. O
}else
8 y% g" t- `6 o
pBtn->EnableWindow( TRUE );
- {) ~# H& V9 X2 ]4 R( U) u
if( m_pTexture )
3 k1 r3 F' t3 K x. t) f3 I
{
6 M5 r7 p2 `- S- n. m4 {% T" a
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* t v4 R4 x) [7 ]$ b9 }; F% c# Q
if( wndCtrl && wndCtrl->rect )
# W! z3 B7 s# t- D4 L5 \1 ^
{
5 i4 }3 ?0 t- ?& g6 g4 z
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
8 ]. t5 }2 z0 S: P% l" z/ C2 c
}
4 g# d7 y; s; s" }7 z; M0 d
}
# O+ |6 }( h4 f: y+ T
}
! ]' p) I2 o N% v. v0 {( k' J8 a1 l8 c
: a1 K8 O, o: K) W
BOOL CWndAutoFood:
rocess()
. P: K: A9 \1 N* O( Y. F, \
{
: l! P/ w! S2 B, Y( l# R& T
if( bStart )
8 S0 w) q6 q6 k/ J& P5 p: E
{
/ G; L& Z8 {8 K0 K1 J. t. {
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
4 K1 Q* c2 F4 c
{
0 `, ?1 [. F( T; Y. b' o7 A& \
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
' g/ ^1 l, a! x' S- U: M4 W
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
# J! g5 s3 W3 A
}else{
( \) b+ h! z$ N1 y
bStart = FALSE;
/ `1 w: `6 ]" N% r
m_pItemElem = NULL;
9 H8 m/ l" r+ o5 J6 `4 z( V
}
6 w! F4 F5 A" w1 x0 x- [
}
, y$ V @2 @) `$ R& W& V `
return TRUE;
5 \& d( W1 N5 q" c, p
}
2 S+ ]. B# U/ G9 u1 l: t1 X$ U
% Q+ ~. T2 T4 U! n: y
登录视频废话:
- o6 M; g& Y7 J1 K2 n' i7 L
尾翼:
$ I, ]: G6 j8 \6 Q' y9 @( \
! t% {# v! F+ A- H s' w0 q: I; _8 c+ H
代码:
5 \1 a7 q* ]# k+ ~
c' u' d( _, r" h3 ^+ U0 f) {7 p5 k
void CWorld::SetLight( BOOL bLight )
$ ^! I: G: L$ U( e L
durch
. S6 D l5 O* ~! o$ R" E
Code:
; b% g: j8 `; f& m
void CWorld::SetLight( BOOL bLight )
0 [# X3 `: l7 R+ N* v
{
) y1 ^6 b6 K& ?. q' [
//ACE("SetLight %d \n", bLight);
9 f! G5 R2 W+ q4 P- m6 x
* y+ U; [! p* @7 u
#ifndef __WORLDSERVER
( H% c( s. q. t' F# ~. K# j( D
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
: A. v7 Y0 K: _9 ~) q' j0 i
CLight* pLight = NULL;
0 a- Y( R T8 P1 q4 p9 s
% s& X! x- {9 M- M; b
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
4 D* Z0 c8 b j6 |# C8 i
" ~, i+ S+ t; t8 P; N& `
pLight = GetLight( "direction" );
2 A2 ]4 Z2 H9 } L* O# I
+ q7 ]9 S* t+ Z6 W9 ?8 h0 M+ Q
#if __VER >= 15 // __BS_CHANGING_ENVIR
B% e) [% B; i, i" r
if( g_pPlayer ){
6 d8 S) t2 z: R
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
) m* b' ^5 J; j% ~ S. h0 l4 V
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
+ t7 F: \& f; c8 O7 r0 h, i( `
{
# o9 n t6 u% M& {, e" I1 p4 e
if( pLight )
K+ K) W2 Y# \& }
{
* p9 E1 C4 I5 [; o; T) l, x
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
3 ~4 t+ m: |0 y7 `' t
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
8 Q- i: o; V+ G3 x) t
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
+ I* M& ~ m& q ?. M6 D
% Q; M' T; }* s4 } B: l) Q# }
pLight->Specular.r = 2.0f;
t: Q! [/ ?+ `4 L! X8 r5 Z, W
pLight->Specular.g = 2.0f;
^( j& A! U0 x# S* `5 C5 A5 B8 L
pLight->Specular.b = 2.0f;
2 `$ V. A1 L' B6 y1 k! @) K8 D- v
* u3 M) W9 t5 }0 x6 I
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
. {3 @% M! W0 ]
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
( E# U: _1 r$ i4 a8 J
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
- O. z9 g, d2 l- W O6 v
) A* y4 N0 F p# K+ p: b
HookUpdateLight( pLight );
8 \) [! R r% J, F8 k" J$ s
9 d) d; q) y; O5 d5 K9 `
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 u5 S9 k. F. j4 _! c
L) q W6 `2 t2 p+ M2 a2 d2 i
pLight->Diffuse.r *= 1.2f;
0 X$ k& k! C1 m) B* E K
pLight->Diffuse.g *= 1.2f;
$ l' J1 E H2 t$ w
pLight->Diffuse.b *= 1.2f;
7 H9 X) b- k" E4 ~0 h+ V5 v
: V, H P+ R/ U+ c
pLight->Ambient.r *= 0.8f;
( d/ o1 W9 n4 N! a" ?
pLight->Ambient.g *= 0.8f;
9 E: t6 B7 E0 @$ J; J2 j' \- x
pLight->Ambient.b *= 0.8f;
+ U% v1 N2 U: t: M1 L9 N/ [
1 H7 `! n7 b- P6 e7 P J8 D
memcpy( &m_light, pLight, sizeof( m_light ) );
& {/ U: x: D5 N! ]/ i j. d
8 q8 T6 g9 ~1 \4 A+ K( i9 l* N
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
- }- _% u7 p$ F. n2 v/ O
D3DXVec3Normalize(&(vecSun),&(vecSun));
" A$ z9 w& u. W2 ~' _' Y
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ M5 T+ `3 |2 i4 g" i5 f
pLight->Appear( m_pd3dDevice, TRUE );
0 h7 {8 Z% n" }. Y
S& [6 q3 y/ N8 {: I
DWORD dwR, dwG, dwB;
8 h4 n) Q, H& l" l% }6 _+ u+ Z
dwR = (DWORD)( pLight->Ambient.r * 255 );
. j0 z, K, E& K. s, H6 L
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ M9 L$ w$ N+ H) g9 S/ i$ S8 U
dwB = (DWORD)( pLight->Ambient.b * 255 );
1 s1 B7 h: V; ^3 V- Q2 C
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% Q) K4 r+ c) N' o H Z+ `# ~! T$ P
}
: |" O+ ]9 ~1 ^' {
}
& J9 }$ U! i, l& f: m0 x
}
6 t- v. }8 ` w
else
5 v2 M; g9 B+ F; o7 @% i
#endif
0 S, Z( s- g+ Y- `
; x- ^4 Z: C/ \, P P3 d; |
if( m_bIsIndoor )
( B6 u6 r" E, k3 R" n
{
, M/ c0 t Y& @- k* x/ i) L; N7 {! t
if( pLight )
( L5 V T- g8 U( }, q3 e
{
, F2 f. g- O" P, \. [! Y& k
// à??μ oˉè*
L- ~: O) N% Q6 z, L: q, ]8 a7 O
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
0 e- O/ G( D8 ]9 M$ y8 T2 |
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
$ C$ z2 ?$ n5 i* Y3 d/ t
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
$ x! {. K' l2 I J! I2 p0 b
& L, d+ \: S! @' c/ W+ A8 ]
// oˉè* ??à?
; O; |* Z! r2 o
pLight->Specular.r = 1.0f;
* i% b9 d3 o, O" L$ \8 K8 q# o# M8 g
pLight->Specular.g = 1.0f;
* Y- A* @3 U4 |$ w. J
pLight->Specular.b = 1.0f;
& W) u. I1 ]: k3 R
// àü?? oˉè*
0 _7 M6 `. q& Z. n
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
" k2 L8 Z5 {. T2 P
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
/ x# J; c; r$ `6 @3 s! I0 m
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
0 ]/ G2 O6 z$ M) U8 ^# `
$ n5 n1 }' s+ A* V2 I, {- x
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
0 O& [+ f- _0 N
{
* A( R& H6 D. z; N
pLight->Diffuse.r *= 0.6f;
' e; i% ?. l& D u; h ^* D4 v* {
pLight->Diffuse.g *= 0.6f;
+ }* Q6 i6 j$ n
pLight->Diffuse.b *= 0.6f;
6 S" N9 O4 N$ C' w
pLight->Ambient.r *= 0.7f;
$ s$ `' Z% G, Q8 S! i1 b# R
pLight->Ambient.g *= 0.7f;
5 T- U; F( P2 h% N. K% m
pLight->Ambient.b *= 0.7f;
- {& j6 B7 d& g' s5 l
}
3 m, ^8 f$ b0 r& l
# U0 F' V) v' V, J9 f% p. u
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ S5 ]! K$ f) ], C
if( g_pPlayer )
# e7 j, B$ D4 x$ J
HookUpdateLight( pLight );
1 s, Q5 _+ F) O
#endif
1 |3 f$ {- h0 @/ {# m
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
- I6 Y, ~: _% J1 r {% |
- ^/ w: h# n+ N9 @2 j( F
pLight->Diffuse.r += 0.1f;
' G l7 E+ S+ T, o3 F/ _+ P
pLight->Diffuse.g += 0.1f;
% }/ S# D& e. m' z
pLight->Diffuse.b += 0.1f;
' s. {% T" e+ u& L0 R
// oˉè* ??à?
+ a3 C h- ]/ n! g
pLight->Specular.r = 2.0f;
9 S' s( C g, v( \& R# u% s
pLight->Specular.g = 2.0f;
' Y. ]( K4 h3 N8 b
pLight->Specular.b = 2.0f;
2 \; J+ z8 ~+ D
// á?oˉ
1 W3 L9 \! C) q4 \
pLight->Ambient.r *= 0.9f;
# b* o. q( ] ^1 S3 J5 l
pLight->Ambient.g *= 0.9f;
! w4 \1 }5 I! r8 g" r. z: ^
pLight->Ambient.b *= 0.9f;
6 O- u% b) a: s1 `4 c5 U
8 Q4 q# q* l( d! L/ R* A& \2 l7 h
memcpy( &m_light, pLight, sizeof( m_light ) );
. W, m1 r8 [, A! m8 J0 t0 R. H9 k
\6 _/ W" ]& |& D% g& x( {# n
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
0 m3 n7 |2 m' F1 G4 p! v
pLight->Appear( m_pd3dDevice, TRUE );
" R! U" U( k2 o( V4 x, j
, T) P5 e" A5 _4 h+ S( S
DWORD dwR, dwG, dwB;
1 m2 c7 @" y5 ?& W9 _" l8 w
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ U2 ^* D: ~/ D5 A, _
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ H, g, Y! @) \: S$ G9 g! E
dwB = (DWORD)( pLight->Ambient.b * 255 );
6 g q, F' X3 N) `$ T* x+ i
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
m- ]) x( w7 U
}
. M" h! d" @& ^4 h
}
; d4 B% H/ J8 m' a2 A
else
T4 e5 X9 a8 C
{
8 f7 N& U+ h, c- x
if( pLight )
/ d4 q, k8 J, ]" G7 N
{
; r) l; ~7 I) l4 r8 a& O- T. ]$ {
/ q k, h4 W& j% |
int nHour = 8, nMin = 0;
7 B0 j4 W- N) {0 o, @
#ifdef __CLIENT
! W) n- N8 A g% C1 {3 p2 w% {
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
, B& D9 l8 m; H, r& w7 W: y; P8 _
nHour = g_GameTimer.m_nHour;
; D% ~5 S# I5 [6 I+ x& D/ G
nMin = g_GameTimer.m_nMin ;
; ?4 U, X; o/ [) L+ d. i [, E
#else
, ~- A! w4 |/ O4 C1 Y. E
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
! W3 t/ \: s2 |( F3 D# U
if( m_nLightType == 1 )
# F! X5 R. S( F* U
nHour = m_nLightHour;
2 N4 U5 G/ V) A2 n
#endif
9 s0 [9 ]) Y/ ]& W6 J6 c- j
nHour--;
1 x+ T& `' t& N+ m' ~
if( nHour < 0 ) nHour = 0;
+ k( r2 R2 R" l0 i
if( nHour > 23 ) nHour = 23;
2 ?* }2 I2 V) q9 Q4 x9 A8 G$ B
$ S6 `! g0 ] B: Y* e( \. O
//if( m_bFixedHour )
: b: r( x* Y# ^
// nHour = m_nFixedHour, nMin = 0;
" Y9 i3 P: }/ b+ M! z: {
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
6 N3 R0 a& u' X6 J! W. J
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
* C& O" K/ C8 I% E% V
$ y, F p o* g" H
//m_lightColor = lightColorPrv;
1 m& x/ s3 `" O
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
- i0 b d/ L! _) ~) x
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
2 r9 e) Z1 R8 f& ?7 V3 u% ^+ K
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
& z+ }/ N1 t) V' v
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
) d: g, L, S, P# D1 Y" F( S& \
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
: B: _" J, V, x4 s9 k4 `
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
( f& Z: E1 r7 |" [+ ?& |8 z' d
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
; F% I& I' l, d
% r$ r0 f8 t: ]; Q
// à??μ oˉè*
7 a/ Y# p+ a+ }+ ?
pLight->Diffuse.r = lightColorPrv.r1;
/ `) _- g9 E0 h( e
pLight->Diffuse.g = lightColorPrv.g1;
3 A& T& b8 p5 o& [( L& q- j
pLight->Diffuse.b = lightColorPrv.b1;
) p! u9 D6 @+ ^, y- P2 G5 H
// oˉè* ??à?
4 i/ z: k. {' a4 L4 T' m
pLight->Specular.r = 1.0f;
/ f4 e8 e. w" L' O3 w
pLight->Specular.g = 1.0f;
* Y4 U5 V9 R$ q$ M- v$ p5 n
pLight->Specular.b = 1.0f;
% ]5 T7 c I; I# r$ P4 F" C* a& u
// àü?? oˉè*
/ c8 x6 F4 o9 Z! W, x6 o9 o2 m
pLight->Ambient.r = lightColorPrv.r2;
9 f3 ~+ L0 F% N; O* p6 n
pLight->Ambient.g = lightColorPrv.g2;
: s( b5 W x' ^0 o7 O
pLight->Ambient.b = lightColorPrv.b2;
7 c# }* a' k1 u' L
1 ]$ D+ o1 C/ f* x; H$ ?9 _& f
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 @# p7 P, ^2 ~! \# I' C, a2 @+ C
{
: Y3 C- e: d& p9 B: t
pLight->Diffuse.r *= 0.6f;
' w$ ^; Z+ b9 X* H+ h w, i
pLight->Diffuse.g *= 0.6f;
) }# s. q% ~! a8 ?
pLight->Diffuse.b *= 0.6f;
: S% f, W& G! \; \1 B' x
pLight->Ambient.r *= 0.7f;
( U9 U+ M/ ?7 g" O0 V( R
pLight->Ambient.g *= 0.7f;
# L* P+ A8 Q2 t7 A: r) ?# P, w
pLight->Ambient.b *= 0.7f;
, j' I- \0 m* d0 I8 j3 O
}
# ?, B5 D' W. Y# p" Q
" h( S* ?- X5 i4 I S- k% g" f/ ~
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 [) n1 g! m$ e" l
if( g_pPlayer )
" H7 G8 P' X/ V1 p6 D+ z o K
HookUpdateLight( pLight );
$ J+ M! w, j3 f6 C: i4 ]
#endif
$ Z0 a* W0 M5 g' S7 m
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ `* K* b3 H% H( D2 ^
u5 e3 `* w: S( U% I' M/ v
#ifdef __YENV
& D( u6 K! _+ |; A
pLight->Diffuse.r *= 1.1f;
6 i6 I# W+ i6 X; M* y! J( A
pLight->Diffuse.g *= 1.1f;
; _! @3 B3 \: I/ s
pLight->Diffuse.b *= 1.1f;
% V; g( Q$ m6 ]8 K# Q! }* |+ Q
// oˉè* ??à?
% K/ M+ N& s3 H3 V0 _% z' c5 [
pLight->Specular.r = 2.0f;
8 z6 ?& V- `' ]' ^- O: h
pLight->Specular.g = 2.0f;
) G9 H0 k7 O9 Y. D# ?! @, _' n0 P
pLight->Specular.b = 2.0f;
9 {9 X2 _7 @3 D- K9 k
// á?oˉ
' Z7 f% \6 ~) F! F+ S/ P7 I
pLight->Ambient.r *= 1.0f;
, d3 \9 Q! a X5 o/ d
pLight->Ambient.g *= 1.0f;
$ n' }# V' W+ s3 }3 F+ ?3 Q7 [3 a: O
pLight->Ambient.b *= 1.0f;
9 [. @# W2 Y* d" R* ~) Q. a5 a/ b* c
#else //__YENV
8 `. H/ j2 p& ]" y' ^" s: O
pLight->Diffuse.r *= 1.1f;
- a |% I E: E& A: h! {
pLight->Diffuse.g *= 1.1f;
1 q" Z+ d" |+ ~7 ~
pLight->Diffuse.b *= 1.1f;
4 S* o6 X L: j* O; a8 T3 K
// oˉè* ??à?
& [+ d& S1 B4 P* ]! q- s/ L
pLight->Specular.r = 2.0f;
9 {4 g g7 w; r3 C, ^
pLight->Specular.g = 2.0f;
; Y% }, c" c+ _. f; A
pLight->Specular.b = 2.0f;
0 H& c' n, _, |" ?
// á?oˉ
' ?( F$ ]6 r- b# k
pLight->Ambient.r *= 0.9f;
- k. Z* o5 ], f Q1 W- d
pLight->Ambient.g *= 0.9f;
! {/ \( k8 t4 \) u6 H e5 k' W- |; `
pLight->Ambient.b *= 0.9f;
/ m) t, w: u( ?/ a# [0 F
#endif //__YENV
2 R9 R+ Y9 \, Z- A1 w
( g0 v1 p9 O$ \$ i; Y( N" z
memcpy( &m_light, pLight, sizeof( m_light ) );
& O. }' z" W& f% w* V
3 r$ ~& h- \, ?; C. B9 j1 g5 ~
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
( b) j9 n, }8 h9 c7 X' m/ x7 M0 \
D3DXMATRIX matTemp;
# [# S$ [) Y4 U& R% }
static const float CONS_VAL = 3.1415926f / 180.f;
: o1 H/ d. m& t$ c* Y: X
; r& r, q! e$ J! M& @
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
; H9 D6 i0 @3 t2 ^: u% C
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
$ g; W4 L# D) d) R1 Q% L+ b
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
; V3 [! B7 h' y
pLight->Appear( m_pd3dDevice, TRUE );
0 [% b4 a; i X( l
# Z3 w! T7 M" G8 _
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
$ E4 Q6 n/ \& L( t
// D3DXVec3Normalize(&(vecSun),&(vecSun));
0 H+ i- D: }4 a H! ^# J/ v# L
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. w; Q# ?! |; Y$ i1 y7 f
7 Z9 h5 A5 }3 P! K
DWORD dwR, dwG, dwB;
2 K: v2 D) {" ?3 Q' }9 Q. Y
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 e' Y0 G/ N4 l* k/ }3 ]" L" k( h
dwG = (DWORD)( pLight->Ambient.g * 255 );
" B4 a1 p" J0 B K
dwB = (DWORD)( pLight->Ambient.b * 255 );
4 h* @/ t- D& g
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! W- t& U+ [4 a0 n
}
: A/ z9 l8 n4 X2 n# [% V
}
* Q% A; C. o6 _4 A
9 G+ \3 P3 ?6 q1 o4 \+ P! {
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
5 o- s5 A5 Q% |9 p( u
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) );
1 L/ I( e! {* |' T6 i, U3 Y' s9 p; `
::SetLight( bLight );
: O" f1 r' Y* _& ?
2 Y6 d. m7 v2 U; u2 r9 J5 P
// ±ao? ?D?í???ó á¤à?
" Y* z& W8 F* u4 [: b. L+ L
m_pd3dDevice->SetMaterial( &m_baseMaterial );
3 a" O, u q+ T; S0 \) Z
0 F7 {* M, I" `3 S
#endif // not WORLDSERVER
& P: y9 c( d) e$ T: X. t. ~& }
}
) ?, _, g. ]& [6 s0 f1 f/ j
并更换
9 ?; ^4 o. z: G: k, }2 ]
Code:
; N; p% B: W0 q% h& h, M* J
__FLYFF_INITPAGE_EXT
- a6 U+ c# X% z" B3 z
定义
4 r1 Q. p D) g& p
$ r' u$ _8 ?9 V# p+ [
* r0 l5 q7 q) q' _1 O
: P0 Q( g* {* Q$ H7 H* s4 S9 r
! B( B9 K+ X! T* }- w& a) O: B# s
现在终于删除我的狗屁加速...
0 Q ` V8 `! v8 u1 R* o6 X
: Z7 {7 U' s5 [# x
6 r) ^6 f# M0 I/ W
% R: S$ F( m) _8 K4 x; A
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2