飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
$ n% l* B% v+ O7 G% p# l
尾翼:
2 P" T4 x( @/ S
5 T7 f7 f: h' L$ Z( d
代码:
: F% S3 D. @- Y4 m( k+ \: R# ]' ~
CWndAutoFood::CWndAutoFood()
( M# y9 b5 V% W! f
{
" C w, S _( Z( k7 s$ }
m_pItemElem = NULL;
5 V& f% C- v$ n, W) ?& T" l4 J! F) u
m_pTexture = NULL;
" Q V& ^0 a8 a
bStart = FALSE;
1 ]! D4 U) |; { v
}
/ R8 P. H5 U0 Q# B8 l2 Z: g
' a: ^5 j$ Y8 F5 w' N( R
CWndAutoFood::~CWndAutoFood()
# l w4 ]) F+ K p# ]. k! z, ^* f; ~) O) {
{
2 @" [0 Z9 P5 o7 E
AfxMessageBox( "AutoFood ist gestorben
" );
( b: R3 `( _! E
}
* ~5 h; c0 W4 |4 C/ I; H
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
3 x7 t# a ^0 q
{
/ n" {- Y8 N& ?" x5 X
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
( D7 @! A* I$ D
}
- E0 {6 h5 {! l6 \, _7 h
5 e4 d0 h& u6 e% \/ C3 l9 v
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
6 M) o. v: X8 s y7 f$ X/ S
{
7 C8 T6 e0 V4 Z4 n2 k% M' Z( ?
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' \5 y0 ]( p# F5 ] e) Z
CRect rect = pWndCtrl->rect;
- v. j7 @! g2 B& f
if( rect && rect.PtInRect( point ) )
& A( m8 X% M# h1 w: d
{
B. T V8 E5 s& ]
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
5 ]1 l+ B1 S: M: ^3 j+ N
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
0 R; a- {% z) G: B# J" ~' W
{
) M1 x: i* P* I3 o; N& v3 s- I
if( m_pItemElem )
: d' R' L, X* K: s/ S5 C
{
1 y: w2 l, M- R7 r1 p5 |
m_pItemElem = NULL;
3 k# R( z! u/ f, A- J, d
}
/ `$ j3 Z& ]& u3 R! v% p
m_pItemElem = pItemElem;
9 g( ]* Y6 h! z' y: {
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
* _. H" a! @( }
}else{
9 `! @% r O6 {' C
SetForbid( TRUE );
$ m- `7 ^/ j7 c! O# n! X
}
- h4 k4 M8 h( ]" F. Q8 L
}else{
2 |$ h5 w' K2 e& ?4 I
SetForbid( TRUE );
# |' r2 w! `3 ~7 j
}
, V/ \) v4 {: b) W9 U! `
return TRUE;
8 o6 c* x+ X. r0 F3 y, {
}
0 m3 R9 x- L: f
) z* U1 w- \4 D
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
% P1 q9 P. R8 Z! _6 n
{
7 ~3 ~0 V+ b5 E8 R) T
switch( nID )
/ E- q5 G0 [9 I1 M7 h# N! L
{
6 t1 j( j+ N, |& S1 D1 E
case WIDC_BUTTON3:
^+ i- x$ ^" ^
{
- ]. z9 ?# o8 F% I
bStart = TRUE;
/ ]7 K; u9 L. T2 p: u& X/ U
break;
6 H9 i4 C. M( l% U: ?6 d( M
}
. I8 x9 Y; y' ~5 [
case WIDC_BUTTON4:
/ M5 ~5 N8 G) ?9 L" l
{
$ Y6 a3 w) a9 p; |% Z8 r7 B1 T; {
bStart = FALSE;
6 R6 v4 b' X9 B5 y' }2 R: ^% C
break;
7 T1 U7 u ^2 G7 K% a% W
}
# F U7 F! z4 J
}
' T: Q" \/ m2 n# ?' n& I7 J- A$ D
return CWndNeuz::OnChildNotify( message, nID, pLResult );
! g5 @1 x) H! ]3 k8 m/ w( O
}
8 _, I9 f1 [3 T+ W" ?' ~3 ^+ w
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
0 s( f1 [ j: c1 I- O
{
/ j( P* ?0 J( Y
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
/ l; D4 R8 z( b
if( bStart || !m_pItemElem )
9 z& R$ }% J4 Q6 c
{
9 M. C% O/ Q2 o/ K% o: b
pBtn->EnableWindow( FALSE );
& W$ b! y7 N2 N4 r0 O
}else
( p u9 S0 o j8 i# l8 i6 V
pBtn->EnableWindow( TRUE );
" R; I9 Q; E0 u* s
if( m_pTexture )
" x+ j" e# b2 v: T3 ^
{
) {1 x3 N: W @, j* M) P4 g
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
3 L; m; k( ]& j# ]" Z
if( wndCtrl && wndCtrl->rect )
: ^# V- }- B" c7 u" z
{
1 ~- p- |) G. I
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
3 X3 o' Y: B0 E" n7 p; [7 e: n
}
: `/ `% v0 @0 e6 G( J
}
+ Q# f C0 r2 f
}
+ A& |: }$ s7 A
$ L3 h8 ]8 Q: a9 \7 D
BOOL CWndAutoFood:
rocess()
' y$ i' E: m- c# g" M6 t* T( B7 W$ ^; g
{
4 t5 L$ f$ }$ c9 j: P" T
if( bStart )
& p2 g. N9 T3 V. i" k0 n* V
{
0 L! Y2 Y& M* p% O
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
4 H e( ?7 R1 `: J4 P
{
7 ~% ]" p6 c7 i ~, O
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
V, U2 q. S2 V" W. U* h
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
" H) _3 V* b% \
}else{
7 c: L0 E8 z" {2 T- L" a0 h
bStart = FALSE;
7 {) z5 Z' b9 q5 r1 C- n9 d
m_pItemElem = NULL;
: y5 x8 A# L3 |# a( v
}
* A3 E8 m5 ^3 Z- n
}
2 a6 j& R6 Z% K. }2 w
return TRUE;
+ ^5 o0 J6 s1 H) b) C
}
% l4 o& N( t1 _5 a. }) Z: Q
% X* B* _3 d. r- D4 U
登录视频废话:
p6 N/ n8 i3 ]: y
尾翼:
) y+ ~" }' |' _+ `& @# t
! ^0 E: D6 X1 _! u, x
代码:
3 D1 J) z9 S% ?0 _0 T {
# B7 _1 V0 X- ]* P
void CWorld::SetLight( BOOL bLight )
) ` b; Y( ~5 [% O/ P. A
durch
, l1 O. S' }/ V) F0 i- c+ ]
Code:
1 e" S0 j: [& P/ A, R
void CWorld::SetLight( BOOL bLight )
4 h$ \/ h% o/ s! ?" y
{
$ o/ X1 B2 t+ n' ^. F+ k
//ACE("SetLight %d \n", bLight);
: f! H% N3 ^% J; O, a) ?( p
! b6 o/ z: `" n6 t0 X
#ifndef __WORLDSERVER
* P( `3 b/ K4 n8 e5 O7 Y
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
7 q% h5 f r9 D: y, n
CLight* pLight = NULL;
- D- i% [4 Y) Q' m9 X. t
: o$ a6 |- Y ]& ~; q: }: y
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
( W& f( ]# H6 s" m
2 N% W! ^4 k" \' Q
pLight = GetLight( "direction" );
$ M8 P6 G$ S0 G# Q2 M# Y0 O! g
v& C) f# a$ @3 o0 l4 V z
#if __VER >= 15 // __BS_CHANGING_ENVIR
# n) q8 O% Q6 C8 B/ n
if( g_pPlayer ){
, S5 }" H; ?7 z# }, g
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
! h% ~% X0 j5 H$ s
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
8 ^; I# |( I* @/ B( f* o% p
{
0 O" J* r; }; K* |. h% m
if( pLight )
' |& @$ k8 F3 }$ Z! D
{
* v! A7 C+ ?1 O) ~% n9 L0 U! N0 c
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
' Z5 e& u/ Z9 g) @* T- J
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
. X* C5 B) i, V8 t3 h7 q
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
$ ^3 y' r2 L) W6 q( ?0 y
- V9 @( L' Y6 ~; q. x( K
pLight->Specular.r = 2.0f;
5 C* x) B) D* o6 Z; U8 Y
pLight->Specular.g = 2.0f;
5 q- G$ M g5 T+ u0 |
pLight->Specular.b = 2.0f;
& ~- w* \) ]& b
% o" J ]& t+ X" J% S4 K9 ]
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
# F& ]& f" ?8 X. x6 q
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
, p: Q/ q+ t9 S" M$ Q
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
4 h" c8 N8 _ L( ]
" W4 T" A, U ?/ Z' N: r; W
HookUpdateLight( pLight );
9 S8 @- [7 Q9 }* S8 a
# U, d9 g [, x! W
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
- y( s W" B. h! b2 ?
3 A4 D+ e4 X$ Q# U
pLight->Diffuse.r *= 1.2f;
/ G1 h" o8 t, E* l/ a) T
pLight->Diffuse.g *= 1.2f;
8 B" Q. P; t- |; K$ S2 y/ b
pLight->Diffuse.b *= 1.2f;
8 s O+ @8 t; \- U {4 W
" k4 W+ z7 m3 h8 [; b8 I. r3 s
pLight->Ambient.r *= 0.8f;
0 a! x% w6 [6 X) X
pLight->Ambient.g *= 0.8f;
# u, i: q+ p6 b2 C, |$ U
pLight->Ambient.b *= 0.8f;
0 y/ h* c8 D" e3 {. F& f
) J( | W w* `) N- R$ e
memcpy( &m_light, pLight, sizeof( m_light ) );
' ~0 t- k S6 }# x* Z& }( V0 F
2 `' l- Y: r! g+ i8 w& ^" U
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ d; S/ U; h/ Y. y, q8 i
D3DXVec3Normalize(&(vecSun),&(vecSun));
+ G$ J" N/ e( c4 M
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 y# _/ G6 X2 h& c5 v5 M; r% [
pLight->Appear( m_pd3dDevice, TRUE );
, \) M+ |/ ]' G
: ?7 ^8 \% W% @% u# f
DWORD dwR, dwG, dwB;
7 }% ]% x) y0 y* ?9 e! B
dwR = (DWORD)( pLight->Ambient.r * 255 );
5 E& ^8 B- G' E9 W9 e8 h
dwG = (DWORD)( pLight->Ambient.g * 255 );
, a1 { t: R' }) g0 T9 Y% h
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ x. n3 C! r/ y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
( a. M7 f, G X$ I) {
}
; Q* d; B1 N4 Q* W6 r$ }. M
}
2 J6 N1 I6 p3 {) v1 S
}
& G" s0 G( V. n1 p9 A, N* U3 B7 t* h
else
; C* U4 @- Q0 c: Z6 A
#endif
5 p0 t, ?) M3 U2 m9 X) b
4 O- _# p- t5 s& o4 q: s$ u
if( m_bIsIndoor )
% {% {; Q/ E) @# @
{
( p9 f4 U+ v$ u
if( pLight )
3 L. Y6 [- M6 i6 U8 t+ L
{
8 m. w Z' Z+ f; u% @: r" d' A* {8 u
// à??μ oˉè*
9 u: f9 C2 v! u, ^& Y8 x" i0 m5 j
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
( K+ n& O J' X! }/ P; \5 T! v
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
T& E1 E5 }) n/ q; k4 Z& G' Q6 ~
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
/ u# A& R z) L$ X6 M: @$ |
% q- i B k" L9 S: A4 ~- y; M
// oˉè* ??à?
3 I, K) T" D) E; Z# u: I
pLight->Specular.r = 1.0f;
# e( k3 w. o9 t# y' h( k V' z, Z1 X
pLight->Specular.g = 1.0f;
% m$ i, A) w: j7 a! [
pLight->Specular.b = 1.0f;
, `+ X/ H6 F% A& d" L) X
// àü?? oˉè*
; G5 [$ r# w n6 d; j
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
2 d# S( Y; E1 P ?9 ~. F
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
/ z5 i, H. p7 m, r1 \& F
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
( b( s3 ~, D1 J& r
2 S3 [: G s$ |9 k+ i( n: \
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# }+ c5 q0 }5 r. U. C5 M
{
/ a; p+ O X1 P: m6 [" l' O; \
pLight->Diffuse.r *= 0.6f;
/ n0 D4 I( {5 U1 ]- ?9 v
pLight->Diffuse.g *= 0.6f;
: y$ {' B: M+ J% C! F
pLight->Diffuse.b *= 0.6f;
9 Y3 l) {9 ^6 q) q! }/ q" `
pLight->Ambient.r *= 0.7f;
" J; [8 }4 k) U/ b* _
pLight->Ambient.g *= 0.7f;
0 [0 o, v7 o, m2 b
pLight->Ambient.b *= 0.7f;
/ p7 d) O' I3 ^; c+ p
}
4 _7 H# C/ L% F8 B K% g
9 K8 c5 Q5 D* g2 U/ I0 H" }0 U l- E
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 j0 B' u, w/ ?/ v6 b$ |9 A
if( g_pPlayer )
/ ^( S' Z0 k' {9 l% v
HookUpdateLight( pLight );
" z% \" r4 |8 v0 g
#endif
5 K5 N% y- a) |- G9 p. G- Z& N* }5 @
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
% N5 `1 B' ?& W I# G3 F) r; W8 D' y
* ?5 Y7 e4 x; P9 V7 \
pLight->Diffuse.r += 0.1f;
5 u/ z( K; Z" @' Q
pLight->Diffuse.g += 0.1f;
. Q+ }8 \5 H w
pLight->Diffuse.b += 0.1f;
9 k( v* {& ]5 V" h+ ?4 d1 t H
// oˉè* ??à?
+ u5 m& U! J( [8 l
pLight->Specular.r = 2.0f;
) z2 U& `( @3 h3 q! q! n
pLight->Specular.g = 2.0f;
! w: f$ [& L, c' N% L' D9 t
pLight->Specular.b = 2.0f;
% ^9 _' F( G$ k; }( p. E$ I
// á?oˉ
, O: o0 n4 M" i; e1 ~9 f
pLight->Ambient.r *= 0.9f;
& f, c6 e( W F& I ` ?7 M
pLight->Ambient.g *= 0.9f;
3 h0 D) `: r8 G) D$ W( i Y
pLight->Ambient.b *= 0.9f;
" Y% `, T3 b( B2 F
- B! B$ N$ n+ w( @9 S
memcpy( &m_light, pLight, sizeof( m_light ) );
! H! H6 @/ }+ F: k* S
$ Y# w) z, B3 y4 x- i
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
: q, T$ s# k$ Z) J: v
pLight->Appear( m_pd3dDevice, TRUE );
; d1 y% A" ^5 j$ |1 p9 O5 a
* @- ^$ U; M& J* N
DWORD dwR, dwG, dwB;
+ s7 |" f1 O; N# n
dwR = (DWORD)( pLight->Ambient.r * 255 );
& L$ E+ i. P# T) U0 y& x; @: a: |
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ }8 V# N2 T0 n d2 t) c7 \
dwB = (DWORD)( pLight->Ambient.b * 255 );
1 h9 M( p$ T& {9 o% K* W1 K& t
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 s! a, }3 z& |1 l
}
2 ^2 ?+ Z2 u* R: D# D1 {
}
' x; |, Q( I6 D
else
2 W- d' |7 D. s6 u2 d- Y/ Q
{
7 ]; J" m3 W" d [/ R
if( pLight )
4 P, ]. Y0 n- x* z, ?/ e% F
{
% _( N( e b9 x
, k( O% d+ M C L* \
int nHour = 8, nMin = 0;
% q- f- c2 Q) F( F: M1 r
#ifdef __CLIENT
6 l8 Z* j% z k/ D
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
/ U# a4 [+ O9 i2 q6 d5 e H( o
nHour = g_GameTimer.m_nHour;
7 s! ? L6 I% ~# v2 m2 [
nMin = g_GameTimer.m_nMin ;
, j5 }' z3 J. M3 m
#else
- ]/ q1 I& v1 h) N) a. q
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
$ u) o/ i; g1 S h
if( m_nLightType == 1 )
1 N0 ~! g0 Y: Z; \& s1 Z
nHour = m_nLightHour;
- a$ w8 ]% c# K- ^4 B( x; l- e
#endif
+ |6 \( U9 n+ q$ b# t2 q! R
nHour--;
2 D# }# ~5 ?2 V! m" h
if( nHour < 0 ) nHour = 0;
4 @: Y! |/ Z6 U0 c# q/ ]
if( nHour > 23 ) nHour = 23;
7 i5 t' B4 n5 v% o+ O) w: @6 e( j
! u% A. d0 h y1 \
//if( m_bFixedHour )
# ^4 P; J8 w2 j" }9 G( X o
// nHour = m_nFixedHour, nMin = 0;
, f. Y: g M1 L2 o( R
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
1 d4 t' O8 W; v; ?& s7 }+ D
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
: y6 A# o# | [& x, r3 v/ G4 H
+ d$ T% v5 S4 k! g# O6 _
//m_lightColor = lightColorPrv;
- ?7 }$ m/ ]% R( r- o
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
8 G9 ~8 h/ {+ i& |7 a$ n) ]! P3 ^
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
2 N9 p+ _) e. D" h. U: k; R8 x
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
^+ Z! T. `+ |& f+ r. p( j
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
9 p( b7 b# e6 S; ~' L+ S
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
+ i8 U4 P2 A+ n" B( D+ }' B1 I
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
9 E) y4 B: E' I
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
' _$ ~7 d2 m2 w* ?0 V: n5 o) Q4 e
( Y3 [0 l9 s% Z! }! |: ~
// à??μ oˉè*
8 f7 T: ?" q! W# t {
pLight->Diffuse.r = lightColorPrv.r1;
8 [5 Y9 v6 |2 Z/ d( a
pLight->Diffuse.g = lightColorPrv.g1;
; N2 J- D" y" d9 n% E( ^1 i% t
pLight->Diffuse.b = lightColorPrv.b1;
: d1 M4 X! E+ U* F# R5 { S
// oˉè* ??à?
) l, ?" _" p& r$ m3 M3 H
pLight->Specular.r = 1.0f;
' t. |( n$ W" z# B
pLight->Specular.g = 1.0f;
% G" X4 ?5 b1 E7 a
pLight->Specular.b = 1.0f;
: k% ~7 i3 B! ]5 M( l8 t0 N) P* g
// àü?? oˉè*
5 L. ^6 A' z: j& \6 w, i( s! T$ Q
pLight->Ambient.r = lightColorPrv.r2;
$ B) Y; U' r% u, R6 q5 [
pLight->Ambient.g = lightColorPrv.g2;
7 Q. X5 j9 d* K9 u
pLight->Ambient.b = lightColorPrv.b2;
5 m6 o" a9 M! w
) B. X1 b3 X; J$ B, X
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
- ^+ n# N# K% j% E2 v
{
$ f- t& R& e! X3 }
pLight->Diffuse.r *= 0.6f;
5 f f& ]/ J, B; n6 S% {
pLight->Diffuse.g *= 0.6f;
" s# r4 _2 g4 k, k8 b8 G) f
pLight->Diffuse.b *= 0.6f;
- j2 D6 D ~$ _2 D0 Y1 y$ [8 F, r2 V
pLight->Ambient.r *= 0.7f;
# [' h* I( m3 n- L1 `% `
pLight->Ambient.g *= 0.7f;
* W2 A/ O$ U: a/ Y2 ]
pLight->Ambient.b *= 0.7f;
9 g: I8 Q2 g% |1 \2 V
}
~( I6 |0 z' A& f2 r
' B, o2 i* A0 A a9 S( i; |
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 W+ p3 z4 H% h( ?- d/ c/ W) t
if( g_pPlayer )
* a- f3 ?9 c d6 G- K+ k4 m3 `' B
HookUpdateLight( pLight );
/ T- W/ N4 j- @8 c0 q; q* x" }! c
#endif
" Z0 p s) j: n4 R3 ~
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ ~& n: W6 p% x$ B0 h
7 F- K. b( Y& e( F
#ifdef __YENV
' |3 E) O* N' B5 f2 E" q
pLight->Diffuse.r *= 1.1f;
, o" j' w& P' T8 I7 d* }* o. u
pLight->Diffuse.g *= 1.1f;
, {4 m9 p5 D4 j: {) a! {
pLight->Diffuse.b *= 1.1f;
4 z" D4 v+ z( L8 z" A' E5 h- i' c
// oˉè* ??à?
+ `! O3 Z9 d- U6 R
pLight->Specular.r = 2.0f;
9 V h5 f4 H, L2 {$ L# X0 B
pLight->Specular.g = 2.0f;
5 s, f% N0 Q$ D4 P4 e& ~
pLight->Specular.b = 2.0f;
9 _8 Z1 F% A7 \0 K- C; B5 }/ \
// á?oˉ
! o0 d! Q6 Q3 {& M. ^ s
pLight->Ambient.r *= 1.0f;
0 U( l. D ?0 u) V! v1 l
pLight->Ambient.g *= 1.0f;
) l2 N/ ?/ T/ |5 q' Q9 Q
pLight->Ambient.b *= 1.0f;
% J! {$ a3 U2 F# M& I
#else //__YENV
( W6 `$ S1 I: E& K. q
pLight->Diffuse.r *= 1.1f;
/ t4 } O& x6 x t3 z h' V
pLight->Diffuse.g *= 1.1f;
' v- }7 f ?3 f% q3 y2 t
pLight->Diffuse.b *= 1.1f;
% k+ k. F8 h- }0 j& \0 S
// oˉè* ??à?
8 ?# q3 d4 [2 G$ A+ Z
pLight->Specular.r = 2.0f;
2 }' ?: ^; ^' M! D; ?
pLight->Specular.g = 2.0f;
2 P- u8 y& T* J
pLight->Specular.b = 2.0f;
& ]1 P* u0 z$ R j# K* b
// á?oˉ
: }: c% g6 J- ]% q2 J- O9 i6 K# f
pLight->Ambient.r *= 0.9f;
8 Y1 ]# N5 }% y
pLight->Ambient.g *= 0.9f;
1 {2 D* I: m# d0 \* z" I
pLight->Ambient.b *= 0.9f;
- v0 X1 }; w# H" n2 S/ y$ o, d
#endif //__YENV
; ?$ E0 U0 T9 d' J* k
; `( o7 C( z9 e, W3 ?. r+ E' q
memcpy( &m_light, pLight, sizeof( m_light ) );
6 I7 R; R8 j, k; c t
4 M) [; x9 H, v- c- _
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
: U7 T0 L5 N$ b) }: E( V d2 z, I0 M
D3DXMATRIX matTemp;
9 ~. o" E2 i' s
static const float CONS_VAL = 3.1415926f / 180.f;
6 |" I8 T1 T0 ~% W8 Q% B
4 J2 O, v% w4 M6 l# ]
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
( t0 L) e. r& f- R
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
6 i# P8 [/ x( V
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
' D k+ r3 h; R3 u4 d
pLight->Appear( m_pd3dDevice, TRUE );
) U) m, ^# Y' l# Q9 U0 e: e
1 S1 B+ C$ z' \0 l' X5 H" K% F
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
! f4 w) I$ n& [7 s$ z* i' \5 R
// D3DXVec3Normalize(&(vecSun),&(vecSun));
+ B; p0 c6 Z3 v/ v; T
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 \. h* z+ v- Y9 q8 s) H; {2 a5 a
9 h" j7 ^: b7 ?3 Q# S
DWORD dwR, dwG, dwB;
, s" e v8 j! X
dwR = (DWORD)( pLight->Ambient.r * 255 );
% D* j, c" E$ b' A0 x/ p3 O
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 N" ]7 M* n$ k$ e7 a7 B; q0 P1 e$ l
dwB = (DWORD)( pLight->Ambient.b * 255 );
2 k# M* e: I- |1 g1 P% p
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' p' V) V, L9 F
}
+ \& O5 O/ I, K# M$ k, Z; ]) _% t
}
1 ]3 }' w! E8 P" ?
Q- W' u8 j9 n, \$ }8 Z
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
8 h, N" l! N- C5 e0 h# q/ v
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) );
' D! j$ c, ]& S" |
::SetLight( bLight );
; ^7 e; f; _& ?( K9 L+ o# n
' S! D1 X1 O! y2 t
// ±ao? ?D?í???ó á¤à?
$ h4 }' t* [$ L! [! o" m' m
m_pd3dDevice->SetMaterial( &m_baseMaterial );
0 w" e6 u S& }
; p6 J0 ?" t% R: R9 t4 \" H4 Q9 X
#endif // not WORLDSERVER
) f1 U- A( `) }
}
6 M& p, u) ?7 @
并更换
G- t; A/ Z, T+ s( d
Code:
$ P2 K" ^- y9 s$ ]& E' t# Y* ^2 g9 @
__FLYFF_INITPAGE_EXT
9 F: I H7 O+ _1 v) J
定义
1 S" [1 v; L+ Q; i0 u9 m* G- _. `6 ?
/ j8 ~( q" Y8 X( I2 `1 D/ }5 b
3 @ b: F, @& b
. V/ U4 W" ]: \; h& L1 l( F
& {* e; N9 q% a" \; x
现在终于删除我的狗屁加速...
( x& D2 w4 V- o
) T+ }$ Z7 O. o* U; E
" n3 R" o+ p0 ~
/ ]* D7 [* V( o
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2