飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
( }" h5 n' c+ L
尾翼:
* b6 V8 L5 b/ H0 c4 ]3 T" K: U
' v! O0 E. I; k
代码:
1 F' g2 y1 o0 s& f* {
CWndAutoFood::CWndAutoFood()
5 j% N) C0 g- G0 ?0 t! [
{
* \' b* H' f( y3 {% X5 `
m_pItemElem = NULL;
: q7 e% a- y( A6 ?0 O, x9 ^
m_pTexture = NULL;
) y- i+ G6 l, _; U
bStart = FALSE;
; ^, V" w- u+ O! Q' p' |
}
' j! K3 h+ c" m% c0 ], i
5 w4 E4 }( R) c. Z( G$ F
CWndAutoFood::~CWndAutoFood()
& l, U# P+ ]: ]
{
. D& r- V! V b; I, H
AfxMessageBox( "AutoFood ist gestorben
" );
( ^' j3 c( d' F# m" n) \
}
# H+ \; @) ? O) N! n/ R, m
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
* T# a+ J' Y3 t' `& P* g) i
{
o- e5 T7 ~- k6 f! T( Z
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
6 E* a' L7 h7 {. I4 ]/ D
}
# J: i' m3 u7 b( J8 @
/ R8 S; p3 {( H, L: y7 D0 \6 G* u
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
3 _7 f6 n: t: g# u; I3 @6 Z
{
( b* P4 X$ N/ Q+ I% |. _% k9 h4 p
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
: q+ G4 o: V/ l5 o- d
CRect rect = pWndCtrl->rect;
6 D$ o: _2 q4 K
if( rect && rect.PtInRect( point ) )
1 L& R2 X; E) h
{
) E3 e3 d+ K; y( P, B$ w
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
5 S/ ^7 }! a0 Q! g, d
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
& `) j) {+ t: J* P k6 {
{
" j' O' v5 |! W: m1 e" I/ _
if( m_pItemElem )
; j- N0 z4 T5 c6 `! q1 N
{
5 C% e. r4 D( i/ @! \$ ]$ @
m_pItemElem = NULL;
; M- b5 J. v. T3 ?* |* f9 ?4 r
}
1 i/ }' H# Q5 R! m4 w
m_pItemElem = pItemElem;
3 D& F: k9 e9 Y4 I) m, Z$ W
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
% E% q" l& D. Y7 {/ [; G& e
}else{
, R/ K2 c4 a8 e0 o
SetForbid( TRUE );
5 W: L5 z. m- B8 i5 a( F
}
% [ {3 l5 z/ Q( o
}else{
* t) d5 w6 o# w8 N- k1 y v
SetForbid( TRUE );
7 l1 H; \% _) ?- _
}
" k# R$ t4 n, l, j- Z3 Q8 r1 W
return TRUE;
& o7 M8 b8 s6 G1 z
}
% q" y2 c) y0 {& _
3 L& X( y* Y6 U8 T7 X
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
' D( ~9 N9 w& ?6 c. E4 s# b
{
% ^# ?5 i' g* j7 n; ]- K
switch( nID )
0 w* M7 u; ^3 T& E% L. ?
{
3 b+ I) Z; x5 X: B
case WIDC_BUTTON3:
# W; n$ C9 [1 n8 I n: t3 ~
{
: e& s; v9 {: C+ G
bStart = TRUE;
. w4 ` H3 Q* o7 P* q1 K
break;
. Y' z) G0 S. L5 d$ ]7 Z
}
# z& n3 ` k6 { v+ }
case WIDC_BUTTON4:
+ k3 X4 \5 u0 D- ]' I, B& n3 ^- v
{
" F7 Y6 |% i$ n
bStart = FALSE;
) f# j* a$ K! Z# p4 J1 L% v5 A
break;
, X3 e0 s B2 K: {
}
( L% b. j3 f; Y$ I$ L( i' \
}
" g. }) [+ S2 o4 [
return CWndNeuz::OnChildNotify( message, nID, pLResult );
" R; O% d. `* d. b
}
- z0 t0 ^3 |6 l c
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
) b x; Z& w4 Z9 R) t/ v
{
1 {# q' R* X/ b3 O& K
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
0 A0 l% E' | I
if( bStart || !m_pItemElem )
& l. o- \. I2 r/ r4 a3 b
{
/ w2 e/ y# _! D
pBtn->EnableWindow( FALSE );
, m7 T; x. ?- X: [% t
}else
3 n7 v0 I3 T0 Q t3 k" G( p h
pBtn->EnableWindow( TRUE );
5 N" \) A" z y. Z+ N; j
if( m_pTexture )
9 P- ]# q$ D" ]$ I( H/ M
{
9 n+ d* l0 _( p. m3 @
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
9 o1 ^2 i# l6 `: ?4 {
if( wndCtrl && wndCtrl->rect )
" X/ ~* [8 e1 B% S3 L' L
{
* V- ?# }; Y3 E/ r$ Y+ ] c
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
1 w9 S5 A8 s& E/ T$ t4 z4 b2 K, E3 }
}
# y# E$ h8 @' i# N
}
/ q" Y2 m& Z- H
}
; P0 G1 F, l) C( m1 n- b- V
# e" R4 L: U9 [# Q5 g$ {* d
BOOL CWndAutoFood:
rocess()
& K( W2 M6 I' }. ?0 ~8 y
{
( A4 k' G1 n0 Z" l1 u% Q5 z* \
if( bStart )
) m$ f8 _5 @0 ^" L3 d5 s9 k. E: I
{
( e5 J# {1 ~& h6 q U$ y+ U
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
# x$ O2 F( @% ]! a
{
4 l; s9 i% _' g: T' f
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
$ O5 Y* Z9 P6 x9 E; l& f
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
, ^2 `' t. w m) k5 X. S6 h
}else{
- e$ E# W) B! u0 m/ P3 N0 L" [
bStart = FALSE;
7 I: @, t) j! T* L
m_pItemElem = NULL;
6 ^4 M1 ]0 \: f- \- g6 X
}
* O8 D: z9 x+ b( U1 v
}
9 Y* H' v+ r2 G* h$ D3 D N. t0 w+ c) n
return TRUE;
) z3 Z! y! }; U
}
0 H, Z6 X/ @* I( J
. t5 `2 W0 s& `' J
登录视频废话:
( B4 q5 b ~6 K+ V/ i
尾翼:
5 F ~# |. X+ y
9 p' H3 d6 Z" \# E) I
代码:
. o$ ?8 q9 A- t: ]
8 |1 r4 {* N7 K* p# ?
void CWorld::SetLight( BOOL bLight )
2 Y7 }" G* e0 w7 t, O
durch
" R2 M9 [6 b! K6 y; D+ F0 {
Code:
8 u7 j) I7 o3 V
void CWorld::SetLight( BOOL bLight )
1 `4 l7 M: f" y
{
% n0 J6 m$ F3 E4 }) O4 _) A, z
//ACE("SetLight %d \n", bLight);
; m* t p7 L# v! }$ H5 Z, B% d
1 P* T# N% P- M0 q
#ifndef __WORLDSERVER
+ a) B, \4 c, e; u: n8 e, j
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
' h2 Z- K( M* A1 @ Y. \9 j6 e
CLight* pLight = NULL;
# [. M# [$ o0 Y6 y+ X
5 N6 o( L# I: I. E, z( |
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
3 s( ^( q( D& S( A
1 `" J7 \5 ]7 _: d0 m2 i+ {2 V
pLight = GetLight( "direction" );
4 l& @- O) J/ ~& Y. k" ]
- H$ }. U8 _+ {4 w
#if __VER >= 15 // __BS_CHANGING_ENVIR
: D! V" R( K5 q- S6 f
if( g_pPlayer ){
4 S/ y4 F- P+ K
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
) @1 h+ b7 S" a w. A& G& }: l
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
s$ A5 `" u. X, z
{
6 Q% V$ H- s7 |5 M
if( pLight )
6 R5 {1 V2 u6 r% Z; B' Z
{
5 y+ f8 i* R2 O: r& V0 o8 D. d
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
: _0 v* l4 w, F! B$ c
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
3 A5 f2 B x% v; f
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
% C( U5 o6 n0 v% w; l& F
/ c+ a- a1 [0 B
pLight->Specular.r = 2.0f;
. I9 N4 ?0 {" |0 w% x4 H* D
pLight->Specular.g = 2.0f;
9 B' c$ n5 x) r* R/ Y
pLight->Specular.b = 2.0f;
: V: Y2 [2 h+ b w0 n4 Q2 h
2 e- B1 w! w6 }) z
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
e3 M: I. b. Q3 A) u; x
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
" H/ S: {$ N6 a* \, A+ ^" k- r
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
( x: v. ~3 @; ~% B. X0 N. r) g
( H, U' B5 B J; f1 p1 H
HookUpdateLight( pLight );
1 @4 T* B G' z# k9 G
9 w5 c0 I, m- ]
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 z+ C0 |) r3 M9 ^
4 P1 }* C# y ^' X5 V
pLight->Diffuse.r *= 1.2f;
& K* _! y/ G4 D% @% m% i7 p
pLight->Diffuse.g *= 1.2f;
# l7 M) b; e3 r
pLight->Diffuse.b *= 1.2f;
2 F1 a9 G7 A* `% u3 C
# v9 \, g# e/ I6 a5 L; ^. ]" @
pLight->Ambient.r *= 0.8f;
. {( ^' J; J# Y& _6 {2 D0 w8 e: q1 _
pLight->Ambient.g *= 0.8f;
4 ]0 u$ q! f- q0 U4 L
pLight->Ambient.b *= 0.8f;
T. @, O1 z% A
4 k$ ~8 K. u$ {. u$ {) B
memcpy( &m_light, pLight, sizeof( m_light ) );
/ p0 ?; S$ F7 s- V' E
$ L9 V! p1 o/ _6 i) @( B1 p
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 I% @! n1 j1 l! k. |9 a \+ u
D3DXVec3Normalize(&(vecSun),&(vecSun));
Q' I, z/ J; a! B
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
- J2 \ W; m7 U/ X) b
pLight->Appear( m_pd3dDevice, TRUE );
* t! ^+ R* s0 B
0 h+ E- z- K0 A6 U
DWORD dwR, dwG, dwB;
1 ~) [6 v" o- F2 N* ~
dwR = (DWORD)( pLight->Ambient.r * 255 );
) J1 }) Z: e7 H7 S; a; V P
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 M& v+ n9 ^# S0 d, |" Z
dwB = (DWORD)( pLight->Ambient.b * 255 );
6 q( S' I$ p5 G
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 o% Y6 O w4 G4 f& h7 ^
}
2 S5 g% {' R, O/ w) G
}
t. e) w! N1 X+ H- H$ f8 M' s7 b
}
' ` t! Q% m% F- f
else
$ p, C7 r) Y* x# r& c. O
#endif
8 G( s0 Y2 @( n; c$ J
% J Q* @, D) h0 t G7 O) }+ N
if( m_bIsIndoor )
- B) f" j! g) x d8 l+ h
{
2 `% a2 r# k2 J% c# e0 }$ _+ t
if( pLight )
5 v+ q2 p0 q% U; ^6 k2 S' s
{
- i# V5 [( _$ p; i' X/ S" m$ D% }! o
// à??μ oˉè*
- k3 w3 n% p5 i: J3 V8 u8 X) B0 Q
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
* E6 `# r, _- o3 f8 \, ?: y
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
9 E; t+ @8 A9 ~' T
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
1 l3 i, i& }2 A# x
0 o3 G: H1 g n
// oˉè* ??à?
% @! f2 T; s8 `
pLight->Specular.r = 1.0f;
0 v4 z. D. V4 e& j' G
pLight->Specular.g = 1.0f;
; k, n1 y* U2 j# s1 G/ M$ G
pLight->Specular.b = 1.0f;
/ Y: q& Q8 [0 I( U5 A4 f
// àü?? oˉè*
& M# b# ]- ]( @( H# B% e
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
( C+ ^1 X2 @2 @+ N$ J
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
5 C' e& L* M! C
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
0 c+ S. o* C; R
2 I( e( S9 Q1 [/ ^$ A' Y! b
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' D0 F/ c4 S; n
{
7 H# L8 Y( t$ i! N
pLight->Diffuse.r *= 0.6f;
1 U" L5 _! P. b" V2 C# m) D
pLight->Diffuse.g *= 0.6f;
! V4 M" m( O' i3 e% N: r
pLight->Diffuse.b *= 0.6f;
1 w1 G+ A+ J5 b$ r+ [! D9 P# @ X
pLight->Ambient.r *= 0.7f;
. F+ b! m: }6 L9 ~2 _8 i/ H
pLight->Ambient.g *= 0.7f;
i, A" H) n$ R) u2 ^; ^
pLight->Ambient.b *= 0.7f;
* n9 N z! D) X) t5 N
}
7 N h9 u: [9 b# u
, m* V1 Q" ~% Q: x, i; C
#if __VER >= 15 // __BS_CHANGING_ENVIR
' f& t+ [* y5 N8 x) {
if( g_pPlayer )
$ p$ W, r8 Y# V; N& c+ U' ?# ?
HookUpdateLight( pLight );
% L7 d- G- F. ]: c! T7 Y2 J5 x
#endif
2 u) X: H$ M& x4 H6 c7 ^+ Q: Q
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) H) f4 [2 @9 I
( K2 a! |3 t% o" F- p$ h! G; ?
pLight->Diffuse.r += 0.1f;
) h8 R' n" C/ J; }2 Q
pLight->Diffuse.g += 0.1f;
" i) g9 a$ Z5 d3 ?6 V* O/ c" S9 x* ]
pLight->Diffuse.b += 0.1f;
2 T4 M6 z; I: @: P4 h! ^
// oˉè* ??à?
4 k. i* s/ G+ }4 J; d
pLight->Specular.r = 2.0f;
) l0 z! _! Y+ u) O, c2 L% u* b
pLight->Specular.g = 2.0f;
" X0 N$ j" E3 t+ w. [+ \) h
pLight->Specular.b = 2.0f;
1 d8 V+ l" t3 o" l, R8 ^( d
// á?oˉ
/ l. Z0 a2 D0 L. z0 j
pLight->Ambient.r *= 0.9f;
7 @ ~" d* a$ h
pLight->Ambient.g *= 0.9f;
' w2 _" b$ A, ], R
pLight->Ambient.b *= 0.9f;
% h! b3 X o) W! H( p# p0 |
|! d$ O9 K5 ^; U% y% z
memcpy( &m_light, pLight, sizeof( m_light ) );
$ R8 L; J& R" n
2 e4 l, m$ t; n4 a) A
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
- g, P* `8 }' H6 w
pLight->Appear( m_pd3dDevice, TRUE );
$ U0 n# G* O* H! ?* X- Y8 {2 j. L! I
. R+ A8 Q6 C/ y5 O" U
DWORD dwR, dwG, dwB;
" W- b6 E# `& U* C
dwR = (DWORD)( pLight->Ambient.r * 255 );
) V8 L4 e) t0 x$ n
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 t9 [( b2 t, v
dwB = (DWORD)( pLight->Ambient.b * 255 );
4 g9 `9 j4 E# R; B( d' l5 C
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
8 w; O# D! P4 D
}
1 N1 y# T/ i+ y8 K& d' r3 U
}
: j0 {6 _% B ?3 U$ L
else
, ~' w; J/ v& i& G! V# a2 {
{
1 |9 P. I5 ?+ n3 p9 z- F
if( pLight )
- B3 L6 ]/ E- q4 g2 u5 W+ S% X
{
" s- W; E/ M6 C' U
# p+ Y8 K2 u& }( O
int nHour = 8, nMin = 0;
. I7 e9 z! x8 Z. ^ A- D
#ifdef __CLIENT
. u) A, l' ~4 |% _, r
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
/ i+ K: Q8 L- K& r# u- i/ `
nHour = g_GameTimer.m_nHour;
8 G- W% z: U) N4 I; \: f! R4 _
nMin = g_GameTimer.m_nMin ;
3 M7 {6 l3 t" _1 e' E$ {0 z1 m( u: y
#else
) G5 R2 X- Z# k U/ c
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
' |7 H2 j& f$ F6 D2 `: r% J& S
if( m_nLightType == 1 )
/ B# F l* `( f1 i; |
nHour = m_nLightHour;
0 f" ~ J3 e: G4 g
#endif
7 T+ d$ ~+ w+ @3 I7 u# E5 D
nHour--;
; H- E9 m4 Q7 h N5 Q S n" I
if( nHour < 0 ) nHour = 0;
" v( L" p5 P) ]- m5 M
if( nHour > 23 ) nHour = 23;
; j& K6 c( F- ~: a4 E# ]' k3 a5 L
& o9 { o4 E. s$ l1 m$ G% v8 T5 R: w7 f; y
//if( m_bFixedHour )
. c6 C8 L3 G0 e2 u* j! D
// nHour = m_nFixedHour, nMin = 0;
/ @3 d9 l$ |/ O" K
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
. N* B/ s+ Y5 Q. n8 N' h0 _
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
* s2 R5 X5 }& e: c3 i; L
2 f/ `: y0 ?! w6 o
//m_lightColor = lightColorPrv;
: ]1 j1 p1 g# f4 \' F9 G0 E6 R
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
% y2 T: x- C" u {* s
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
% y2 @! e& j, Y( ~; w+ K
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
, {- Y* A$ I2 s! \
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
. l6 \; n0 s/ {+ j7 T
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
* F$ X! z0 i% L Y
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
6 ^3 ~8 n* P( i2 [
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
( E! F$ I8 j+ L8 ` ^6 n# ^" z: f* }. t
. Q' u7 E; G- t6 _
// à??μ oˉè*
4 E k/ [' ]7 u' P A
pLight->Diffuse.r = lightColorPrv.r1;
( E3 H* T" G" k; t, \$ H# b
pLight->Diffuse.g = lightColorPrv.g1;
' B. x+ c9 O5 b5 f. O# F2 r
pLight->Diffuse.b = lightColorPrv.b1;
% |- Y: N% c: s4 A N
// oˉè* ??à?
8 A5 s. E( ^: [1 C3 [! W0 F
pLight->Specular.r = 1.0f;
/ |( ]8 F) Z0 p7 ~$ R3 G
pLight->Specular.g = 1.0f;
; x3 B4 }" c5 V( C7 P
pLight->Specular.b = 1.0f;
# \' L2 D; H& p* P8 V5 }2 F/ o( O `) \
// àü?? oˉè*
# B0 b1 q6 y% G$ t
pLight->Ambient.r = lightColorPrv.r2;
: R" ]/ g% r8 |* H
pLight->Ambient.g = lightColorPrv.g2;
1 ~, F+ t1 J+ l
pLight->Ambient.b = lightColorPrv.b2;
6 ~$ `+ N; Z7 A2 ^0 q' E7 l) j: T
) d5 Q! o: @! c: c0 ]7 G
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
( ]3 ^7 s6 H/ `
{
- m$ d1 T! y3 B" r- u* z
pLight->Diffuse.r *= 0.6f;
/ J7 Y7 G) i! A! Z0 h+ @
pLight->Diffuse.g *= 0.6f;
# e: c" D/ h9 E7 { f( J
pLight->Diffuse.b *= 0.6f;
E! p6 X; s! y, x' O
pLight->Ambient.r *= 0.7f;
8 h. `" n8 F% Q( L/ V
pLight->Ambient.g *= 0.7f;
: q5 J) F# x$ j/ U
pLight->Ambient.b *= 0.7f;
4 c5 e4 T, W! O, v/ V: Q
}
1 a. ~% _" i: W( _: {/ h+ n
+ S v/ Z s! X- x( Y
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 [9 C# b& L$ L u7 r4 Q
if( g_pPlayer )
R1 _$ H, ]2 C) i0 w+ N, F
HookUpdateLight( pLight );
8 b( `: ~, Q5 e5 A1 l
#endif
! p2 {' S. ?7 Z# e% ]* |9 V/ q
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: H$ \% \+ N- t
; |( C9 E5 d+ B9 A( ~9 P
#ifdef __YENV
7 O% \* T- q, k$ @* s1 |
pLight->Diffuse.r *= 1.1f;
" _ ^2 C( y' A0 G4 ~( u2 W- e* k
pLight->Diffuse.g *= 1.1f;
6 h M* N3 ^3 @1 [* s/ t: m, s
pLight->Diffuse.b *= 1.1f;
7 |& ^. `2 U" j' n: I
// oˉè* ??à?
! M: i8 o( B$ ~
pLight->Specular.r = 2.0f;
' i* g( G9 l" x/ L( _( N
pLight->Specular.g = 2.0f;
2 ?* ^6 V. W9 _4 M
pLight->Specular.b = 2.0f;
, K9 M" E; E- x7 R& J
// á?oˉ
$ @$ T$ l) ?0 Y4 b
pLight->Ambient.r *= 1.0f;
2 N/ `0 `- n4 m2 ?: M
pLight->Ambient.g *= 1.0f;
- ^0 k7 Q+ C# B
pLight->Ambient.b *= 1.0f;
% y U; s- |5 F: X6 I2 I
#else //__YENV
! W8 `) k6 L: k; |2 l, {- I6 D
pLight->Diffuse.r *= 1.1f;
) O/ r$ q& r+ T2 I
pLight->Diffuse.g *= 1.1f;
; D! n2 I v* j5 U, Q& i
pLight->Diffuse.b *= 1.1f;
* x# A4 r) ~8 J3 p |
// oˉè* ??à?
& n/ a2 O$ `$ C* ?8 Y. W
pLight->Specular.r = 2.0f;
& g+ q* i# z/ r; e5 u- k& N
pLight->Specular.g = 2.0f;
5 R5 t* W' u$ S3 x- P
pLight->Specular.b = 2.0f;
3 G5 K$ \! U. y
// á?oˉ
1 J; N3 G; j9 Z( C, Z7 ?( \
pLight->Ambient.r *= 0.9f;
. f* I4 U# X/ a
pLight->Ambient.g *= 0.9f;
/ B# Q3 p: Z/ I6 L# \) N& H8 |
pLight->Ambient.b *= 0.9f;
2 p8 ]. r9 d+ n1 n# o) R9 S4 A
#endif //__YENV
4 s9 |6 H N5 F
7 X2 N$ n5 G% X2 G8 f" q9 k
memcpy( &m_light, pLight, sizeof( m_light ) );
1 `, a( Q+ E S
% {5 f4 J2 L; Q
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
3 T" f7 N8 W: V0 _; j T7 s1 F5 ?
D3DXMATRIX matTemp;
+ I4 W6 Z& [7 ?
static const float CONS_VAL = 3.1415926f / 180.f;
9 t" f" a. B8 ~% V9 G
8 J% X8 g- \" m7 `
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
- w" Z& Q& z' }3 q2 I
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
% Z- @2 J9 e# O$ A6 S0 ^3 e# r! Y e
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
6 E0 r1 Z- @; v# O
pLight->Appear( m_pd3dDevice, TRUE );
7 f% v3 B$ c* s8 C% ] j: K
* P7 g) w% q- d+ q/ v' B3 F# A, r0 Y
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
4 h7 l0 A; j5 A8 |
// D3DXVec3Normalize(&(vecSun),&(vecSun));
; N" t$ v- C) s
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) ]* l+ M0 F3 R7 k" @" D3 P
& q, g; O8 \- g
DWORD dwR, dwG, dwB;
4 [7 d4 C e, E8 O6 w
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ \1 P) ]) B5 g$ D- W
dwG = (DWORD)( pLight->Ambient.g * 255 );
( c3 j( K% @# }, D4 T9 z% F
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 k& |" I) p0 G
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 h' S/ p% l9 P" w4 \
}
2 L' v4 Y% @/ Q3 m( Y+ V& N
}
/ P4 f3 P" {% ]4 p
. R9 \4 g5 I1 Y! K8 |* N- c$ H1 t
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
6 `( h0 Y, `, E2 b/ c, x+ m- K5 x
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) );
+ h" E' d8 @2 J
::SetLight( bLight );
% {* `, p6 h# m1 I% L7 U
$ E L+ E- d4 p9 \# A
// ±ao? ?D?í???ó á¤à?
, ~" s/ v, v' a0 T J
m_pd3dDevice->SetMaterial( &m_baseMaterial );
5 k j: o( e( M+ L! A
6 X% u. j* m4 M3 r6 v" t
#endif // not WORLDSERVER
/ i0 a! b3 |4 [) k' b5 G$ S2 K
}
6 ~( i# i$ m2 v- G
并更换
4 M& d" j% D5 y3 _6 i! K4 W- B
Code:
& o- }5 c9 y d% N, D; V+ d. J
__FLYFF_INITPAGE_EXT
1 h2 B$ k! g# z C' O0 x6 m3 T
定义
) G3 G0 l) D( K9 B/ z( W
( y9 s; ]5 I* `! r# C: ^; @8 u
3 q, M( `$ @& v" m) F# z1 p
/ b) p1 B/ L5 y' b) A# ^& _0 i
6 }' h- ?3 P3 B, M* m
现在终于删除我的狗屁加速...
2 D. b7 l! f0 Y7 r! P$ [& Y7 _+ j
5 z" j9 ^6 _ I- R
, s& a" ^9 p9 t8 s5 V
% D+ A9 Y6 b/ s! {
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2