飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
- Y) U3 K+ X3 O- v2 w6 j
尾翼:
& V+ m0 [& \8 o0 s% i
/ t" _$ s3 P3 Y# P! L3 t# ~# n
代码:
, {9 @# u# \/ k+ z5 l& u9 |* a
CWndAutoFood::CWndAutoFood()
, b% |: o }* l5 u, m. i
{
2 @7 S: |, h9 v3 M
m_pItemElem = NULL;
# ]! V: z# X6 `
m_pTexture = NULL;
4 n: [4 @, v! _
bStart = FALSE;
* h9 e1 O3 m& Y' ?& W2 K. r
}
. t+ t6 ` M/ B7 W3 B' S8 R
$ r- l [9 a8 B8 Y' Y* ^/ }
CWndAutoFood::~CWndAutoFood()
4 _$ `/ O6 F, L
{
7 p7 F% }, ~/ Y- f/ d
AfxMessageBox( "AutoFood ist gestorben
" );
! D0 e+ ]& r5 \9 y
}
0 e# H1 D U0 o3 K6 d
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
A1 m1 [$ Y" v) B
{
3 n2 g! J+ m, N) @+ B4 S7 h
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
% t2 O- d1 S8 J+ r# C3 x
}
8 f" F" q, U. O$ z
$ g8 C! T; Q! Z2 b9 X0 t
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
1 v1 e9 M6 Y& S* `2 ^5 B
{
" H1 @$ j1 R ^1 Z, `" M. I9 @
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ {) B6 {- |9 c) X
CRect rect = pWndCtrl->rect;
( G- j; r/ @- d$ E3 S ]9 H1 |( K
if( rect && rect.PtInRect( point ) )
3 x4 V' a: J4 z9 K3 J
{
5 m2 k8 @. b4 L6 ?& f+ F/ o2 p
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
' S2 d8 h& P- R
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
, G9 H$ k8 n' _0 k: E* ~
{
7 A7 [+ y: i2 ~0 e5 k
if( m_pItemElem )
) e' c' N. @+ a; w. a7 i
{
9 ~! G- j4 T0 Z0 X
m_pItemElem = NULL;
7 s3 T5 V$ j) @
}
- {/ _- P7 p% \: Z
m_pItemElem = pItemElem;
: `4 f& ^) {9 M z) s: h8 ?
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
, N0 I2 ]8 K% o" u% b% o+ A' f" u
}else{
3 J9 r. l+ r z4 s$ k
SetForbid( TRUE );
' {" t8 C: w/ z) _ Y
}
9 \. v# Z4 f/ h4 N& j) H7 I
}else{
+ U* z4 Y) b* v; d+ O' v B
SetForbid( TRUE );
1 G0 Y' U! b( W7 c X8 D
}
3 a! N8 c1 k4 |- F
return TRUE;
" N: T$ S' q4 R9 O& J6 i6 Q# ]9 d
}
5 M4 a. V: s! I2 L2 }& z% b- |# ?
; O/ z7 j7 {0 A3 t. R
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
2 F6 R& ?! N1 W
{
; e, U6 ?3 N! A8 A! L; a
switch( nID )
/ i, c/ e4 ~5 _+ } k
{
. ~2 f% W5 ?3 J% m2 W% E: n+ Z
case WIDC_BUTTON3:
$ N. ?: T5 G$ ?
{
# ~8 D+ \9 Y1 Q/ f/ }
bStart = TRUE;
, w: F5 e: s# d; m! \6 v8 P) f6 n
break;
/ h! P J ~! [
}
4 i4 n* p% J3 _, @! T
case WIDC_BUTTON4:
7 {8 R) S* N) W3 t
{
6 l* v7 Y6 g& i$ k
bStart = FALSE;
, _6 R' x' B/ d$ H, I, k
break;
* B: m2 y2 c- l2 I E% O" |4 y( [" b
}
0 J4 d, s# K4 h2 T
}
4 {6 _' l4 o2 u* b9 I8 `2 _$ C# [
return CWndNeuz::OnChildNotify( message, nID, pLResult );
9 }# R( p$ L u5 ^5 z
}
- _& \9 U0 _( d; ~
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
) q( b9 t5 _* L6 L" P) [
{
+ D) M! U( m" u# y8 \9 `& i
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
; @; H' x1 K7 c' B S3 A$ j! O( Y
if( bStart || !m_pItemElem )
2 t+ Q+ T& _( w7 L) I3 H7 |. C4 c1 H
{
6 C0 z$ s9 b" s2 f; W; ~
pBtn->EnableWindow( FALSE );
0 L4 V1 f4 h) T, j6 b. I1 H( o0 U. y
}else
. x: `1 r* n/ I- @ c6 e
pBtn->EnableWindow( TRUE );
4 a- R- H6 c5 c7 I/ U
if( m_pTexture )
( R- Q i) K' G" Y" Z! e
{
9 Y9 t& g7 Q8 J5 N7 }' Z" K8 l
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- H' ~6 E4 J/ }! i/ E6 K
if( wndCtrl && wndCtrl->rect )
. Y# x% L* L2 f% M% t3 L- m
{
3 f g7 Z$ y" M8 D7 e, W: _4 v
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
) ^6 u6 F# I% P o/ k, w6 H
}
. j3 y* _) M1 @. J1 h
}
; p# p+ Y6 Q+ J6 K4 d
}
: W( A+ ^/ O& v; t9 y p
. X6 c# t* p3 ~* R, o$ a
BOOL CWndAutoFood:
rocess()
& f3 J$ w! \2 d+ u
{
! T @3 z# \! @% G5 h* v& F0 v
if( bStart )
( w' M1 ]5 Q) |) X( `
{
3 Q* O! Z% d8 x$ H& H% M
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
1 `$ d! d3 ~+ u- i* C `4 O6 i9 J
{
, u) J% x3 d0 Z! |& f6 v" x) \
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
4 K* X6 A! D, l
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
3 u. _8 E9 d/ h3 V) |" {+ B: s6 O
}else{
6 Q3 r# x" @2 g- u2 v# g) H
bStart = FALSE;
/ t1 G) O1 O% A! l4 \
m_pItemElem = NULL;
( c1 s& _9 J( M. t [! N J
}
Z5 E. l0 e2 J( G3 o# l
}
4 T8 }3 H: y0 l$ e
return TRUE;
0 }- Q8 i9 D$ \3 z, X! A- @
}
3 y$ s8 s* V/ R W; O; l: E+ z
( G8 l' {; ~2 F. k: H2 M' z
登录视频废话:
$ I& }3 P# G" J
尾翼:
1 W# X. |6 j* s& Y% J
. h# o i/ Y( u/ o0 C: O) Z" b& @
代码:
! I U( F; [$ j0 X- ^
0 _. I7 b5 y; Y3 m8 J3 s( h: x
void CWorld::SetLight( BOOL bLight )
4 W: U4 \ b; m; l
durch
# e. k& D( `* a/ o" n9 y
Code:
' f6 Z8 s! b( M5 g( H
void CWorld::SetLight( BOOL bLight )
5 R7 l- s4 [2 m
{
& D8 \. P1 v6 Y3 ?; S1 d
//ACE("SetLight %d \n", bLight);
M* p. Y0 ]' H. \; L
) X# L6 e& q. k7 Z9 v
#ifndef __WORLDSERVER
0 W" t: }7 }' q# ~0 F/ T
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
3 @ w" {' P6 J1 c" x* x' u
CLight* pLight = NULL;
2 x1 l3 ~" i9 o7 _9 T
) I" _2 {+ q- Z. q* U
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
1 S, ?1 }* w5 C6 d! [) _4 W/ C7 a
% S6 m2 q* b3 m ]! P
pLight = GetLight( "direction" );
+ u' k4 c; I$ P6 f" t( J
+ {6 k2 O3 M: F& T' g2 Z3 W* n
#if __VER >= 15 // __BS_CHANGING_ENVIR
" R# O. Z0 q1 h! w$ o; S) r, V
if( g_pPlayer ){
0 J2 K0 D+ o% k+ G( X
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
- M4 b) \2 s1 a- F) x9 z
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
2 z! K6 ~# z4 w$ x9 ]1 W8 T; K
{
, h; V8 I( \# Y1 p- d% V
if( pLight )
" F% W3 y0 M% Z4 N$ E
{
: k$ b7 C- b% Q8 T
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
# m7 r: {0 ^9 z: d
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
8 v7 B- Z# z( n9 \! `+ O) a
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
& \& R6 v% M; H$ y4 G
9 ~: c) L* O) G+ c6 T0 Z
pLight->Specular.r = 2.0f;
* X- S; b1 P; H! g9 n6 g2 o
pLight->Specular.g = 2.0f;
3 z' G$ ` _0 H, E. v9 Z
pLight->Specular.b = 2.0f;
3 p+ e- Z4 ]- S) ~9 z
7 ] v, U4 E& W d/ [* j* |
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
# [ J* x# K$ q3 a' ~9 |' s
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
) q! b0 Q L# f. `* R8 c# }
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
6 j8 Z8 q" s$ x4 J$ C. I
4 G; f7 O4 v' f
HookUpdateLight( pLight );
D6 V0 d. r3 o8 C4 _6 z- |
2 ]+ O: f! e/ y( f" S# ?' f! a/ ^
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 a* a& Z% J1 J
1 F+ [& J) o+ Z# s; V' ?
pLight->Diffuse.r *= 1.2f;
6 _$ _) U2 o; @! |/ R+ t' j6 w
pLight->Diffuse.g *= 1.2f;
% T. Y% j6 f- h! P+ B1 A
pLight->Diffuse.b *= 1.2f;
9 O; y# s+ g4 y# I
8 v2 b. a) T. Y* o
pLight->Ambient.r *= 0.8f;
$ X6 b$ b- J2 } S
pLight->Ambient.g *= 0.8f;
! ?) [$ N* i( J0 h0 T9 D. O
pLight->Ambient.b *= 0.8f;
# D( l- e. e7 U1 a( Q. [
. B# d6 G/ f. ]2 c: ?: ]7 ~8 f
memcpy( &m_light, pLight, sizeof( m_light ) );
% _9 Q) Y! k6 @1 h+ X- [
% Y- s4 ` i( _0 q# r' p- z
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
$ e3 s( A' t/ A( P z! \1 n. J$ l
D3DXVec3Normalize(&(vecSun),&(vecSun));
! V* D4 E, T! g/ e
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! v+ [" G+ M# } f- E1 U/ Z
pLight->Appear( m_pd3dDevice, TRUE );
2 e. K) V: x: R( u5 }+ A9 o
" N" c, {5 B+ D1 O: p
DWORD dwR, dwG, dwB;
: P, l6 S2 ?9 @9 `
dwR = (DWORD)( pLight->Ambient.r * 255 );
( O/ w5 x2 f$ e0 S7 [. a, r5 H
dwG = (DWORD)( pLight->Ambient.g * 255 );
- N' o/ [. U2 p+ p& V% L
dwB = (DWORD)( pLight->Ambient.b * 255 );
! l9 P9 T' B# Q* k! a% s0 ^: Z$ v
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# K/ `; \ E" F& ^& d! ^
}
o. b% S- X( p, q, p2 o5 F" B
}
8 e; c& n2 t+ w4 G$ Z7 ~, O3 M( ~
}
" c% M" g5 I* V7 w: ^
else
5 Q! I: T. [( F; D3 j
#endif
4 Q, O+ V S+ |: ?# E1 o3 Y
F) u+ D; u6 ^8 J1 F+ i
if( m_bIsIndoor )
" M. c2 _8 } g" Y5 q
{
" D. Z! w3 o- q1 t6 ^
if( pLight )
" m2 m0 z% ^2 y) M8 q) v
{
# \. F2 i+ R( Y) n
// à??μ oˉè*
$ B6 R$ o) F5 U9 K9 Y# x1 X
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
$ N1 A2 y0 w7 q' C
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
1 c5 _8 a% q3 c) d% Y6 _
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
8 k" ^% D# r0 R+ b# ]
! Z( Z( B5 }- l
// oˉè* ??à?
+ n) ^4 M2 r4 T$ r) i# L3 A/ A
pLight->Specular.r = 1.0f;
8 p% T: R9 K$ f3 L$ Y C7 j
pLight->Specular.g = 1.0f;
* N4 f( b; V9 U. v- _ j. U
pLight->Specular.b = 1.0f;
* \7 D9 H5 d2 k( h/ m+ l
// àü?? oˉè*
% F: K) Q) K' Q6 a6 }) l! h$ ~
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
% [0 J3 O$ F+ q
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
# I) U5 ~1 R% x. }: b
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
' `7 W" e/ Z* I7 b" Q0 X
: }) \% M' D; a w' b" J
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# L! T7 D. }! b
{
) V3 v% p/ v4 e( D0 n
pLight->Diffuse.r *= 0.6f;
4 x9 w6 c4 M4 c$ m; Q6 h3 a& _
pLight->Diffuse.g *= 0.6f;
7 y; f. W `$ ^6 q9 j* [
pLight->Diffuse.b *= 0.6f;
, a u6 T. F# H) |+ y: v% n
pLight->Ambient.r *= 0.7f;
7 B6 V9 [6 y5 J' n0 t4 B
pLight->Ambient.g *= 0.7f;
5 s! n# z/ D$ H6 a9 I: \
pLight->Ambient.b *= 0.7f;
& P9 n3 [: k7 {" A( l/ z
}
, _; u& P& O* r) Z3 d
3 \. \: p( N8 M; t$ b3 e7 p8 j
#if __VER >= 15 // __BS_CHANGING_ENVIR
" ^# |; X* D9 N9 b: N* |" P+ M
if( g_pPlayer )
0 ?1 s9 s% Z! \6 E7 S" Q2 N
HookUpdateLight( pLight );
6 i) v7 o. U0 f4 ~
#endif
( c( q6 \ j; a9 \. a4 F+ ^
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. r& _( f" x7 ?) b3 {, S1 {0 ?
1 R* F0 e2 M, K& K& l, E) U* ^
pLight->Diffuse.r += 0.1f;
! T0 R w/ M7 U. M* s: R7 J% r
pLight->Diffuse.g += 0.1f;
4 g# m0 s4 G; M f( u2 Z4 O* |1 y. N
pLight->Diffuse.b += 0.1f;
& o9 c, `8 D4 L: p
// oˉè* ??à?
' n2 h: v9 O3 U, E0 n- ?
pLight->Specular.r = 2.0f;
; e% V- J0 m& k1 L
pLight->Specular.g = 2.0f;
) ?9 h. x9 e' N% \
pLight->Specular.b = 2.0f;
$ I. N& l& C/ }, ?; b/ c( ^1 e
// á?oˉ
j W# V( O2 G0 S( u
pLight->Ambient.r *= 0.9f;
9 y# t* C9 _+ {9 I
pLight->Ambient.g *= 0.9f;
) Y$ r9 f2 K8 @
pLight->Ambient.b *= 0.9f;
1 U' V+ r$ l3 N6 L
5 T k) K7 O4 Z' }
memcpy( &m_light, pLight, sizeof( m_light ) );
; z1 P& l* Q7 ?; M% c
u$ A8 Z& r4 H* k+ a/ B
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
" r1 a9 {- H0 F, E n2 Q
pLight->Appear( m_pd3dDevice, TRUE );
( Z& N2 H+ M, ^- M
* z( D9 m8 c8 }
DWORD dwR, dwG, dwB;
+ f+ L) Q; x, w. I6 Q
dwR = (DWORD)( pLight->Ambient.r * 255 );
[6 Y# O6 v( ? P! [( m
dwG = (DWORD)( pLight->Ambient.g * 255 );
- R/ n e- x" A9 ~+ Z$ \* l2 B
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ X3 G6 w+ I- P" y0 P
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
A$ S; x: T6 m2 G
}
: u! H O& g* a6 k% h+ ]" g
}
, X, V( t0 i# s! [1 f. ~/ _
else
4 \, o% e- ]+ `: y5 b0 O9 U
{
5 q# o; Z5 C; O, B7 `
if( pLight )
& `( o& z, O: X8 U5 M& i" R
{
* |/ {, t; g% _& `
( m4 q% \7 S& }" G
int nHour = 8, nMin = 0;
& O5 l" v( v$ A8 j3 t
#ifdef __CLIENT
. n: [2 e0 H: c: p3 G. A0 I! C. `- O+ c
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
3 c! K' W+ i1 U' Y6 M% J
nHour = g_GameTimer.m_nHour;
) R+ d% U8 G: R& L2 y
nMin = g_GameTimer.m_nMin ;
4 p; _- J/ C3 w0 `: }8 h
#else
/ [9 @6 ]2 a0 o1 D
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
% _; N) Q$ `) f. A$ W
if( m_nLightType == 1 )
: L* M0 B9 m1 H6 K) f" ~" ]3 E; B
nHour = m_nLightHour;
5 P0 Y+ j% u k; K1 X- Z" E
#endif
9 x# W5 p1 `) X
nHour--;
2 c4 h8 w; j! q1 u
if( nHour < 0 ) nHour = 0;
& v! R, p7 S- x( }: Z1 i% o
if( nHour > 23 ) nHour = 23;
; K( T# `- m0 ?; h) V% D+ E
8 f7 F/ B3 X: ~
//if( m_bFixedHour )
/ ~' z! h9 f! o. o; x
// nHour = m_nFixedHour, nMin = 0;
( L; I- j8 q* b; r) b3 `( h' d
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
' b+ G# J9 y* m' D
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
: i( d6 n* T2 r8 W* n9 @# M$ a* @, b
& a$ \- C8 _% v) O# v8 S! H
//m_lightColor = lightColorPrv;
# w6 S/ Y* ?" _8 T5 r5 _ Y
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
# ~; F1 k- W' q8 s; N
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
4 Q/ H. J3 I3 ~5 z" W+ \1 O4 U
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
, s, B5 W% S7 B" q, X) K4 u
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
/ a4 ?- v' P/ N* X7 z
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
8 s. }6 L' d. ?5 V7 _* B3 |5 S. K: Y) p
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
1 q& E$ T' J8 ~! \, V* }! p
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
3 B% }/ y2 p9 x1 m* t
k; S" ?9 A- y8 `, e: t* C1 r
// à??μ oˉè*
# E }+ g9 d, i5 P! Y2 E% B# Q
pLight->Diffuse.r = lightColorPrv.r1;
4 i2 P9 D9 [6 c8 e; D1 ?
pLight->Diffuse.g = lightColorPrv.g1;
; z V1 L: S. P% { q9 M, F, }
pLight->Diffuse.b = lightColorPrv.b1;
+ [% w; x3 u5 c, e# K5 T" C6 H
// oˉè* ??à?
- y i$ w0 {2 t# N! z' w3 u0 q' J8 Q
pLight->Specular.r = 1.0f;
4 B+ h9 l2 ~ U* ~/ A: q* W7 [
pLight->Specular.g = 1.0f;
* B, X6 a4 E, x0 C
pLight->Specular.b = 1.0f;
' {/ \1 {: C+ J9 X
// àü?? oˉè*
5 r) x, y/ o* W4 M, h! w
pLight->Ambient.r = lightColorPrv.r2;
. P' `6 B3 i) H
pLight->Ambient.g = lightColorPrv.g2;
2 \. K* T. c9 H- {" _
pLight->Ambient.b = lightColorPrv.b2;
/ m7 ~$ ~& e- W+ k
& A- D5 L8 ^# x% T" x# u6 y3 K' f/ @
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ v% }" w$ P7 h, d+ @: U. o! b
{
" {- E3 @: n7 D7 y% y) s2 ?
pLight->Diffuse.r *= 0.6f;
& Q7 L% _) f) {' P9 J8 C
pLight->Diffuse.g *= 0.6f;
2 Q4 X9 y. Z: ~) i: b& U
pLight->Diffuse.b *= 0.6f;
* [' q1 {% x7 B
pLight->Ambient.r *= 0.7f;
) b% `- h, ^: A& P& _8 _
pLight->Ambient.g *= 0.7f;
; m; V3 R& @- r0 E2 W5 u: W
pLight->Ambient.b *= 0.7f;
' H/ K( f' g& x7 N! ?6 O6 v5 C. f
}
) I) N; p1 c, I1 ^- d4 N# Z5 ~. Y
5 [. Y0 k0 n: g8 X9 k
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ N" }- l0 y) \$ S5 F2 O" E; p7 ]
if( g_pPlayer )
2 ?6 @* v8 O8 H* ]- c" d: R
HookUpdateLight( pLight );
# H; ~* N& l' _ \1 `
#endif
: y8 D0 H x) V2 v" e
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" ?$ L; @2 c; ^0 j: Q
% ^& c! R: I/ ~
#ifdef __YENV
. ]6 f" V+ C5 H5 w8 L. b/ s5 X
pLight->Diffuse.r *= 1.1f;
: e8 ]9 x4 h1 d1 T* e2 B
pLight->Diffuse.g *= 1.1f;
' G+ T# F5 l9 \: U5 k
pLight->Diffuse.b *= 1.1f;
+ X0 }0 E! N8 w6 f# d7 D' I( n
// oˉè* ??à?
' ]4 w$ |+ c2 ~4 d& d
pLight->Specular.r = 2.0f;
* M; w( A& i3 L2 g3 I" T
pLight->Specular.g = 2.0f;
- m; K$ Q0 L' R' O
pLight->Specular.b = 2.0f;
. [; ]1 Q' V$ p* s# ?
// á?oˉ
1 d& v5 x1 z5 d# O" W) h9 O
pLight->Ambient.r *= 1.0f;
$ k: e2 o, P, t, ^8 v [
pLight->Ambient.g *= 1.0f;
+ `) Y ?! z8 f9 j
pLight->Ambient.b *= 1.0f;
) Q7 F! a6 S7 P$ y9 G& D% _
#else //__YENV
! s1 b0 a- ^8 K0 G/ D9 C
pLight->Diffuse.r *= 1.1f;
: ]7 I+ Z; S( z
pLight->Diffuse.g *= 1.1f;
$ K, b& f5 L9 ~
pLight->Diffuse.b *= 1.1f;
7 k% [4 M8 i/ P- @+ r0 ~+ a
// oˉè* ??à?
, t: U* _4 r4 U' t0 f5 r: |
pLight->Specular.r = 2.0f;
7 y1 g6 ^! @8 b; L- Z
pLight->Specular.g = 2.0f;
9 b! X* p1 z6 ]4 ^9 n
pLight->Specular.b = 2.0f;
& e) \+ C# A) j" ]* \' S
// á?oˉ
* D8 u, j3 p1 ?
pLight->Ambient.r *= 0.9f;
: F& W$ K' s* q" U* @, p+ d9 `6 M
pLight->Ambient.g *= 0.9f;
* Z( @% J4 c& v" d; v" l+ k! {' D
pLight->Ambient.b *= 0.9f;
* e- f+ }( i$ _- i, C
#endif //__YENV
/ z3 h# ?4 A/ g5 `
( c5 s! `* ^+ c; x" I% w* ?5 E( z
memcpy( &m_light, pLight, sizeof( m_light ) );
" _2 r0 ~+ |* _3 ]
2 p" [# c: d1 }$ m2 G
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
$ |, w5 ]5 S( k) `, d, f
D3DXMATRIX matTemp;
9 E4 s4 E0 l$ ~, e) D, o" ]7 z
static const float CONS_VAL = 3.1415926f / 180.f;
. ~8 m2 c5 q$ a1 K7 d+ Q. F6 |& z# O
! M! B: [8 B e A1 u
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
9 e. m" D2 K6 {$ `4 z E9 ~, X
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
6 L N8 ?% C% O5 f. U
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
, I. x. z `. Z% I3 ]# y
pLight->Appear( m_pd3dDevice, TRUE );
4 g( k4 d F- |9 ?
! Y5 G# U1 J' o) C: m9 {
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
+ W0 z, p5 v2 J! Y. x
// D3DXVec3Normalize(&(vecSun),&(vecSun));
$ o; Q% @& W! E
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ Z: i+ h/ t2 v% h7 m8 v" ]
2 A" J! f/ p9 e% G
DWORD dwR, dwG, dwB;
* Y% N6 B1 L8 o5 b2 Q; M* H! j, ]: s
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ M; S" i9 S6 m; p) t# I$ K
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 _! b, n# C4 j ]! \5 g1 U2 w3 h
dwB = (DWORD)( pLight->Ambient.b * 255 );
( t! Q* @1 H7 T; e9 r
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! @* H" e- F" i' E q7 I9 R
}
& n2 O; T/ f, r7 B! I4 O. a
}
& W# J" j4 N3 \- G" X' O
0 W0 a% ^; c+ j
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
: V& E& J4 V) d: y9 y9 b/ 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) );
6 O1 K8 ?7 s0 H8 x2 J5 \ |
::SetLight( bLight );
8 @1 x7 N2 R* {9 F6 W5 O
+ ]! K% z& t' g$ Q! t
// ±ao? ?D?í???ó á¤à?
6 `8 e- v" D& F
m_pd3dDevice->SetMaterial( &m_baseMaterial );
; r& u4 q7 H* Q" \; P' w
9 V9 V7 N9 F; Y& c+ L
#endif // not WORLDSERVER
. E2 p& u8 s" Q3 n
}
5 L# `1 p7 X8 T+ ?/ a C( p
并更换
% t! E( ?- F/ y8 W$ ^$ Z
Code:
, _! d/ e5 k; X' r( t, ?: n% N
__FLYFF_INITPAGE_EXT
7 B* A- y) `' }5 u
定义
- y8 A3 G* T. s M
% ?" Q. J+ s8 l) k& o# W
4 S W4 S7 @9 U* Y/ R5 ~
7 }5 }/ x- G1 _' j) N* n& t$ F
( q* m8 u5 v% Y) R" W) \9 R
现在终于删除我的狗屁加速...
7 Q5 p% c" F$ m& w+ n$ N
6 c7 b& _" e8 b9 ~! k* q$ O6 Z: }
5 Z+ `# y' D; r" F" a$ N
9 B) [$ [" f" \* K1 j
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2