飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
4 \9 i# _1 g& J
尾翼:
" G; C5 j( c; c9 ]7 G
4 X& _# N( P7 e" z o7 k
代码:
) @ r! w2 P+ g: V8 }+ {! G
CWndAutoFood::CWndAutoFood()
1 h l" @9 k/ v" ]6 ^$ n
{
/ F1 E5 R$ i, f7 I. w9 S
m_pItemElem = NULL;
* i5 Y5 I* E! T0 P
m_pTexture = NULL;
2 d( p, e2 R& v. G- o7 |3 n2 ^2 T9 ~( b
bStart = FALSE;
5 t! h# G P, p* K7 ~
}
! ]5 N, R0 h2 w& N% R" b' r P3 p. |
7 ]# o; y5 y- {. L, ], m
CWndAutoFood::~CWndAutoFood()
7 b* z! ?" E* ], k/ o' g3 @1 Y
{
5 z9 R3 p: Z, z/ i# z* ~3 B
AfxMessageBox( "AutoFood ist gestorben
" );
' `) R6 L5 [& U% T
}
8 Q+ Y- b8 k% G) A
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
5 f5 N. q2 v9 H& i
{
+ i- d1 p- _' o0 F) v3 ?
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
2 g9 O& p8 ]3 Y' L0 c; ^
}
6 x$ G6 k* p2 |6 \; {. L! H
! F: A6 |5 t. p' s1 ^
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
1 V3 G) c8 |1 R4 u# M$ M
{
' Y' W1 v! Z$ L
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. D; v2 G1 g! _# j
CRect rect = pWndCtrl->rect;
7 K: \, Q( P) p1 K
if( rect && rect.PtInRect( point ) )
" R! `! N$ i) b- a! P5 u1 M4 b' k
{
) ]2 [3 g8 m: @, g6 {4 ?, H
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
' R- x; E7 g) z" l
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ j$ ^/ _+ |$ e% v \
{
) L- ]% [- N5 f8 |# {1 f4 M7 A
if( m_pItemElem )
. v' u- b3 g$ \, P
{
1 z v, h' n: H
m_pItemElem = NULL;
# V3 F/ m/ o3 q6 ]. z9 R. g
}
- m; b1 M. P, A3 M6 v, X9 n2 d: L
m_pItemElem = pItemElem;
) R( }6 p/ `- }" d, W
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
8 {0 |* O) G, z3 u
}else{
8 d, P. t( ^0 X z4 w5 |
SetForbid( TRUE );
- w, y% V6 H0 o1 ^) _: D
}
# ^# a6 G7 q7 p; ~- O- s+ o
}else{
6 m5 Q- Z$ a0 Y |7 b& c
SetForbid( TRUE );
( {& Y! P: S9 y" W7 E
}
6 s) n* @- q1 O0 V' U4 N1 I3 {8 Y
return TRUE;
& W( u2 y6 K9 L2 U9 a
}
' e3 j6 }( [* l! b% u" |0 _* }
0 U/ U. f$ c6 ], t0 m
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
& Y3 Y; G# F% Y3 p: P- p8 O
{
% O, M) g/ W# a2 W: X7 U9 A- [
switch( nID )
" k) l7 j! ^) x3 O a
{
2 \, S* Y- h4 K' b
case WIDC_BUTTON3:
8 C+ _ @) b6 W6 g
{
, P: h5 S6 q% g2 B
bStart = TRUE;
- p, B0 p( m% W1 j4 u k* [
break;
" B' v9 M/ k* r0 \' L+ p' N6 ]
}
* c5 E* \* W$ n, o; p+ q
case WIDC_BUTTON4:
. P/ V) j( u0 j, p4 _; l
{
) q9 d a3 B6 x. a+ k9 U: [
bStart = FALSE;
- X6 h8 w3 }) S3 p4 v$ E% R
break;
: |/ Y$ Q" d1 x( ^) {1 p! V
}
! }2 q& B4 s* j
}
# O4 L* q7 a8 y7 @1 m+ n
return CWndNeuz::OnChildNotify( message, nID, pLResult );
3 `% z. ~4 u* Q# j
}
* Q0 j. i7 v, G2 W( P2 O) ?
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
! o! z# s7 U/ d2 X) {
{
( w% _8 }6 ^ |$ R8 q8 P
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
; F& v) d! l; R$ I+ }
if( bStart || !m_pItemElem )
/ c9 N, ^ _2 d# ?" X
{
) ^* G% t* S2 z( E
pBtn->EnableWindow( FALSE );
: `4 H/ O! E3 }4 s( O& B# X) t; j
}else
. D. S! f8 D( W- t2 s$ V' }
pBtn->EnableWindow( TRUE );
& G) F% {( {5 B% D+ I
if( m_pTexture )
9 ]- p F. J6 \7 q
{
. n% U+ L3 m! U& A
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
6 `* j" V) q1 d, `$ y7 Z
if( wndCtrl && wndCtrl->rect )
: e# l! ?2 ~' n$ D# I Z7 t3 `
{
) v' ?# c% x- l3 t: l6 j
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
: x& J4 e. V! Y) e
}
6 a9 k7 e U0 Q, o' [5 f4 h9 n6 P# _
}
% n5 c$ w* I/ a$ m$ U' X
}
1 }8 s7 z+ f4 {, U
1 S- a- ~. }6 C5 P/ V7 X
BOOL CWndAutoFood:
rocess()
* ` a1 E9 w! z4 r( Y
{
# W% q% u; k& q% s2 R
if( bStart )
% X+ l Q/ @$ h( a# p! R% D' v3 O
{
, ~: m7 |7 o8 a" q
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
5 a3 ~. \1 [1 R8 S% C2 W
{
" H0 r5 }6 H) z% ~$ w
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
" i( k- h1 o7 i
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
+ W6 W/ \& b/ h
}else{
8 A+ E; J' e0 ~% Q5 I+ w
bStart = FALSE;
: `9 k6 O) f2 W) y7 ~9 v- S
m_pItemElem = NULL;
) Q+ l) }' m C* m
}
* E T0 E0 B; G+ Y y
}
5 q ?2 f# u+ S/ T' D3 a
return TRUE;
7 Q% Y/ C- `- n3 k" r' r k4 C
}
' h. G' M* ?; i4 i5 O# q( |# L
, E3 b4 {: r5 P3 G1 p# n3 Z# A
登录视频废话:
9 c7 D+ g. L n ?* T: ^, w; b
尾翼:
4 `# e6 l/ M6 ~% M
6 A3 g7 i6 ]" `( L/ |
代码:
5 r ]: K, H7 Q; H
& A$ ]$ e1 ^1 l& V' i1 u( I7 F- q
void CWorld::SetLight( BOOL bLight )
, p2 r( A5 B$ e; Q; m z
durch
9 j6 R k. G& X0 _$ {6 z& u+ G
Code:
: [4 ^8 K1 x/ [. I7 W8 v) g
void CWorld::SetLight( BOOL bLight )
5 o4 `/ S5 h5 y$ R. S7 T0 m
{
( ], t" w8 H# s
//ACE("SetLight %d \n", bLight);
' x$ _$ D" z- r; {+ m) r# i
7 v% n+ Q8 I! B' l3 |2 g
#ifndef __WORLDSERVER
/ |8 B8 W, O/ Z: Y# n8 q6 D! P5 S
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
/ a6 R+ I6 _- t+ P- G- N
CLight* pLight = NULL;
9 ?5 E5 {# E7 j
; u X; m# n1 D$ R" W+ J& q9 R3 {
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
; y2 G9 {) y9 q- y* ^
! }8 F" Y" y. O5 X9 H/ R0 ]
pLight = GetLight( "direction" );
& c: l4 F+ t* C4 z% L9 L
2 K. Z. E/ F& M0 {* ^3 c
#if __VER >= 15 // __BS_CHANGING_ENVIR
: n& Q* y- m2 K& K$ V* E# T
if( g_pPlayer ){
1 ^: |9 ^1 @5 s* H* J! f8 o, t
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
$ I$ I& d. |+ e8 q b0 r6 X
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
% Q, W3 D2 K: @. S1 e; X
{
g) a- {+ q! `& {
if( pLight )
7 |+ Y/ V5 y* v( d' c& y6 F
{
# _( S) A. z5 f" q$ y+ W! d3 ^6 u
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
# x& o" P3 J }7 z- {
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
9 `2 p7 l/ h) y) m
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
' C! B1 C8 w8 Q& r3 I& i
4 L7 e# c+ X! [' N3 ^3 [' T0 u8 h6 q
pLight->Specular.r = 2.0f;
4 v: C$ m# ^4 j+ v% ?: Z
pLight->Specular.g = 2.0f;
8 Y, E( g; G* c, @) W, c$ w
pLight->Specular.b = 2.0f;
8 y2 A) E5 N" j5 \% N* x R
7 o1 Z4 U& G) `4 G) A
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
' i1 u1 N9 T; J; I! R6 S$ G4 L
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
" |# q3 I9 n, z' k
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
3 e2 g) T' k: r! {5 m
! A9 l" ]) {* j: U* A
HookUpdateLight( pLight );
' \3 k1 F; d. p% F8 b
5 _! ^1 {1 [" N+ X9 |7 r' o/ ]
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: N: W: n, z8 X3 I4 q& I
7 w/ v8 I( A/ C0 k
pLight->Diffuse.r *= 1.2f;
, j# v6 `0 y6 F( ]
pLight->Diffuse.g *= 1.2f;
9 h/ V+ F( g; G" M. n1 u
pLight->Diffuse.b *= 1.2f;
" N5 w" F% a. K
8 |! n* ~+ G5 C* p1 h8 r+ A
pLight->Ambient.r *= 0.8f;
3 O# o0 f& j+ c5 p8 O" o r
pLight->Ambient.g *= 0.8f;
( A _& b' m3 ?1 ~; D/ E% c
pLight->Ambient.b *= 0.8f;
' W) s6 U5 |! a9 }8 R
y, E, L0 Z7 D' h4 \! T: y f
memcpy( &m_light, pLight, sizeof( m_light ) );
3 J3 [! v! u8 @$ @$ z
8 f9 B4 V/ {$ f4 D9 q
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
$ U5 H0 @0 f/ T" q
D3DXVec3Normalize(&(vecSun),&(vecSun));
9 O, I( T$ h4 B+ r- L% e- U
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 G2 u* H8 d" [; E6 N* |# ?
pLight->Appear( m_pd3dDevice, TRUE );
# x' v$ h7 B, _6 `, E5 M
( X, ]: F) @7 x4 p: x- O
DWORD dwR, dwG, dwB;
c8 i( g4 q5 U
dwR = (DWORD)( pLight->Ambient.r * 255 );
; s% q1 }7 l0 c. P; e1 o
dwG = (DWORD)( pLight->Ambient.g * 255 );
% j' d* o0 u* H5 [7 A
dwB = (DWORD)( pLight->Ambient.b * 255 );
4 ?8 D) L7 y4 e8 X
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' k9 Q: a' i- O+ _0 s
}
L0 ?" S* F# h7 E2 \! f- \& p
}
% x j1 _' q" _7 ?% b1 v& W
}
$ S' h: v& e) _ v# P+ B
else
5 K# c2 v8 z, Z, |1 g
#endif
" Y% G8 w) q. W `7 b" K
* ]# `. }& h9 \* s/ ?
if( m_bIsIndoor )
8 c! B6 D2 Z6 r# m; k
{
, P; N5 Z( u" l$ L- i( x2 ?6 f
if( pLight )
% G% g9 Z2 P5 P+ ^
{
: E$ ]: F/ Z" X1 t# i7 R6 J
// à??μ oˉè*
5 d3 q% ~+ I5 a, \
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
0 L. b# h- U7 K% |( X0 _
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
. u% o9 Q# I5 R( |
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
3 c9 Y/ X8 O+ b! h9 n; N" K2 h" j9 k) |
4 o5 r3 U5 {& H
// oˉè* ??à?
3 x" q( f) s3 n2 x* U) o' @0 Y1 [
pLight->Specular.r = 1.0f;
$ v, _* Y% v/ K9 v
pLight->Specular.g = 1.0f;
) t! M$ o1 ?' e! T! X9 s. q
pLight->Specular.b = 1.0f;
& v7 m1 a2 m8 a# Z% y. ~- G" h/ P4 e
// àü?? oˉè*
# Z, I7 D- _5 P' x
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
) R& @8 y. X6 K- ^
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
D2 j6 m' @2 D3 l; }7 i$ r; l
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
& M( E7 P" d3 h# h
/ S' w& }; _* T3 q' F; k7 n
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* c: M9 i4 l2 e0 M/ T, s6 R
{
) _+ x: M$ t" H* n
pLight->Diffuse.r *= 0.6f;
6 o% `7 u" f. O$ Q9 S
pLight->Diffuse.g *= 0.6f;
9 H2 H" ]8 h A: @6 A! {$ n# r
pLight->Diffuse.b *= 0.6f;
& W( h/ T8 t1 x" p$ c
pLight->Ambient.r *= 0.7f;
+ } `+ A0 K# ]: U- Y
pLight->Ambient.g *= 0.7f;
+ y2 H/ k+ g2 K4 S3 @. _& m5 {& V
pLight->Ambient.b *= 0.7f;
N' o* p% f, W% K; ~7 `
}
* O& o7 A1 i* [5 s
( r z6 b6 c! W7 Y& y% q6 O
#if __VER >= 15 // __BS_CHANGING_ENVIR
# m% c* d5 w( \( g% W& |
if( g_pPlayer )
5 d! h0 a. `" D
HookUpdateLight( pLight );
2 O) g# j6 }* w; a7 `. Q3 [. n( Q
#endif
2 s, O) y: d [$ K" i. r
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ X" ?+ j2 g' G3 j
; s$ {% P! q. y. l! f* ?7 o
pLight->Diffuse.r += 0.1f;
) a1 [0 h' e. h; {
pLight->Diffuse.g += 0.1f;
' r4 G( j' f! g1 _$ H9 D! Z1 n
pLight->Diffuse.b += 0.1f;
% o. }+ A4 h0 W" Y
// oˉè* ??à?
4 R! X5 h g/ s9 I- o4 Q1 u& S
pLight->Specular.r = 2.0f;
0 {1 s: k$ M" F* ]; v/ @ o
pLight->Specular.g = 2.0f;
4 x* X. L# E5 c# X% F
pLight->Specular.b = 2.0f;
) m- @- L# i' h2 a3 @. K2 H- o& w
// á?oˉ
4 U; q4 {6 g4 F$ ]/ s. O( a. H
pLight->Ambient.r *= 0.9f;
5 k3 N5 Z8 g6 u' x8 v& ? m
pLight->Ambient.g *= 0.9f;
/ O2 Z* o' [1 J9 r
pLight->Ambient.b *= 0.9f;
+ A6 V0 s% I Q9 [
* J6 t+ a' |" H D- _/ S4 ~# u
memcpy( &m_light, pLight, sizeof( m_light ) );
$ _/ i9 ~+ ^2 z: j- N! M
+ s% L- j6 h( [; c& q Y
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
% a/ i# p( @! M: D' i) e$ ^, {/ ]; y
pLight->Appear( m_pd3dDevice, TRUE );
/ j! j, a) a) v& o$ i+ [- M
* I i' s4 x4 v/ L' ?7 _7 u
DWORD dwR, dwG, dwB;
* A% `( Z, q" \1 t
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 p) |. ^6 L5 u! u- Y6 H' H
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 v: Z+ [+ b, r+ Z6 X
dwB = (DWORD)( pLight->Ambient.b * 255 );
; ]' n& D; P/ L
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- r. k* H7 H8 C+ t2 `
}
/ g a8 Q: i- Z9 m4 R; P
}
* _& I8 ~5 Q' l9 v m4 N5 z' g; S
else
2 d* v7 M0 ^7 V
{
# U1 s2 X4 i6 |" O
if( pLight )
; ?& z/ m: S+ d8 r5 ~. J4 R
{
$ k8 N( c( O/ b1 y( }8 K( x5 j
% p1 v- G( \. R5 I3 ~: ]4 C/ o
int nHour = 8, nMin = 0;
; _ S& ^9 g; A6 {. U( B6 u
#ifdef __CLIENT
1 r) P6 b$ Z1 n* B0 \
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
+ a( b" E& _. K1 U/ Z6 I+ s) D* w, v
nHour = g_GameTimer.m_nHour;
$ b6 O% U6 f) W8 d* \" E5 b U
nMin = g_GameTimer.m_nMin ;
: L) B/ L% n1 w, R
#else
' _8 k8 P& T% `3 X/ l( U' e
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
Y2 s( [, Y" C
if( m_nLightType == 1 )
7 w6 _# N/ B. @. i3 R' o
nHour = m_nLightHour;
1 f& r. d- A# m! J1 V2 T6 ?: ^# H
#endif
$ Q' F7 r) B B2 l, V) H3 ]
nHour--;
1 A# m7 R$ Q, _/ C9 y" k
if( nHour < 0 ) nHour = 0;
1 j7 I% a3 c7 \1 E4 e7 L+ [; P
if( nHour > 23 ) nHour = 23;
3 k) s e: |" Y# q
- q. K4 I" q3 ]- G) t$ M
//if( m_bFixedHour )
6 G7 i1 Y% a3 `4 L# [6 v& N
// nHour = m_nFixedHour, nMin = 0;
% k a3 W3 s7 A8 Y2 s2 H
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
1 {2 W0 p, ]) E
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
$ ?5 g. \8 h9 M
! n& T$ Y! c& j8 D
//m_lightColor = lightColorPrv;
/ {0 H0 N1 {. t2 N+ e
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
0 N/ T" Q) ^4 b. o2 W' p
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
9 t/ P8 j0 d6 i @& u6 L
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) ~) g+ @5 q( U5 Y0 L
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* B& f7 ^2 Z0 l
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
" W9 n5 b6 z7 ?! T
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
" [3 ]: ^: r1 K/ m( F+ `# K2 d
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
' y7 f3 ^& T# Y3 a, T! w
5 A7 Z4 Z9 Z! T' B* B4 N2 R( ]
// à??μ oˉè*
2 `1 J% X5 b7 {/ R: }) r! A
pLight->Diffuse.r = lightColorPrv.r1;
" t; r& N" q3 [: N) Y1 ]. g' ~9 D _
pLight->Diffuse.g = lightColorPrv.g1;
. h. _2 A$ N: p
pLight->Diffuse.b = lightColorPrv.b1;
, f% k1 d n9 m! h8 l$ \5 a' B
// oˉè* ??à?
7 m) h2 o, N+ c! g' |
pLight->Specular.r = 1.0f;
$ J3 x3 n; T" z, A6 p
pLight->Specular.g = 1.0f;
' ~: |4 U3 j7 n( @. |
pLight->Specular.b = 1.0f;
/ u9 f0 i7 n8 d1 \- c* v8 V3 o& K
// àü?? oˉè*
+ e4 ^0 @; b6 q0 c
pLight->Ambient.r = lightColorPrv.r2;
7 @# u+ |' A+ k7 B
pLight->Ambient.g = lightColorPrv.g2;
4 u/ s" s: a& p+ X& ?) q4 U9 W
pLight->Ambient.b = lightColorPrv.b2;
, b6 T r) ~* N; G! s; F7 ^
" D& v& q7 L a/ w6 O
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
6 ~$ D2 c7 c" O% B% E% @, D2 Y" _
{
. u$ E$ @, n/ a6 x. I) E3 D# S5 R/ n
pLight->Diffuse.r *= 0.6f;
/ O& c6 i; R& }, t, g
pLight->Diffuse.g *= 0.6f;
+ v5 V; j( ~0 D( b( z! O% ^7 U+ J
pLight->Diffuse.b *= 0.6f;
- z$ w) R' \$ f& f* ^
pLight->Ambient.r *= 0.7f;
& n/ t. z$ l, @
pLight->Ambient.g *= 0.7f;
. Z' Y% D5 S, a' H# c
pLight->Ambient.b *= 0.7f;
3 D, E# ?; j9 `' }& ]# r, L
}
2 Q" @5 `- ~( \2 a7 B- F
" Z/ S: B, K, l+ Q
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ ^4 b: A9 ?# H, M) k. E) Z
if( g_pPlayer )
+ p8 z4 L& h5 C$ c, G4 M
HookUpdateLight( pLight );
5 ~+ E% q' }7 Q' T
#endif
' B$ ~" \ J2 b2 M8 s/ F B
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& d5 _2 `$ W* y9 G8 \: r
1 S' D/ `- u, ]( }2 j) \+ K
#ifdef __YENV
/ m0 z* I6 |8 q! i
pLight->Diffuse.r *= 1.1f;
0 }) j0 v( _! ?8 ?
pLight->Diffuse.g *= 1.1f;
8 z! ?9 a0 b: m& n: F
pLight->Diffuse.b *= 1.1f;
$ T9 V/ C% d1 ~0 d, P: v8 v/ W
// oˉè* ??à?
* a) Z& I g5 A
pLight->Specular.r = 2.0f;
* p) i: L) J6 u5 K! W. `, Q
pLight->Specular.g = 2.0f;
" z. \1 U% e$ k3 y
pLight->Specular.b = 2.0f;
4 z& i# s1 J2 _6 b1 C& q8 X2 N1 }
// á?oˉ
8 \/ r5 S) M0 `3 C% H C( h/ [- l
pLight->Ambient.r *= 1.0f;
) Z. u7 P% N# ^$ a9 R0 n
pLight->Ambient.g *= 1.0f;
r0 w( q, W, v* [5 a% _
pLight->Ambient.b *= 1.0f;
( a% p& U$ t, Q v% p5 ?" q( M; |
#else //__YENV
+ ?1 }& q- {( P! _6 ?# R
pLight->Diffuse.r *= 1.1f;
: m( W# z; _( q6 j5 @+ a: w* Y
pLight->Diffuse.g *= 1.1f;
. V: K# N) v6 U, C- W; @
pLight->Diffuse.b *= 1.1f;
2 B: b; d. ]& A' y
// oˉè* ??à?
8 O2 W$ a( P6 |+ f
pLight->Specular.r = 2.0f;
# [# |9 Y6 Z% |" I" G7 d
pLight->Specular.g = 2.0f;
" v1 d) f% l. h. p1 C8 m
pLight->Specular.b = 2.0f;
- ]4 o" Y) [5 w) R+ d
// á?oˉ
# K+ f0 E5 D! X& }
pLight->Ambient.r *= 0.9f;
9 \7 d$ A2 U2 W+ N4 q
pLight->Ambient.g *= 0.9f;
" ]0 G# _7 P% a( Y: k
pLight->Ambient.b *= 0.9f;
1 f/ v( A( | b1 k
#endif //__YENV
* ?. a) I! g6 [+ ~ ]$ ?1 @
+ T. ^/ S0 s$ Z- O7 x
memcpy( &m_light, pLight, sizeof( m_light ) );
+ K: R6 B$ l* }" A4 W' p A' i
- Q+ I' e v4 t4 `9 i; b9 v% s5 y
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
* b% W1 F2 f2 L2 F, P
D3DXMATRIX matTemp;
# G2 A5 r; @: y2 k+ t, i1 u
static const float CONS_VAL = 3.1415926f / 180.f;
1 ?9 d- R' e8 ?
5 |3 A8 O* F, S! c @* H0 V# }7 L
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
9 E1 O) K- ]4 n$ s
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
8 O' B6 j2 x# Y4 g
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
2 L& t7 k: T/ x0 j# k
pLight->Appear( m_pd3dDevice, TRUE );
* N$ \8 a, k7 `7 A1 s. ~, U* B
/ U" I* O7 d; l& E
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" s5 p5 g6 F8 l8 ~9 M6 X
// D3DXVec3Normalize(&(vecSun),&(vecSun));
, w' n/ A$ V+ L$ E7 ?" k
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# g( J R8 e! p1 a, [ _
V3 J, }' p! V: s: I+ c2 t# X* Y
DWORD dwR, dwG, dwB;
) W9 [3 B3 z3 e. G) V ]
dwR = (DWORD)( pLight->Ambient.r * 255 );
% y# _4 W7 G* r2 \; A7 c
dwG = (DWORD)( pLight->Ambient.g * 255 );
r* J7 ]# V+ u- v5 Z
dwB = (DWORD)( pLight->Ambient.b * 255 );
: |$ p3 d& q9 T5 N4 I
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# }5 G0 U, f# o; t
}
+ \# d& S" O' |4 ^; X; C
}
R h' r. M) G3 n3 a0 {$ y) ?; K
# H# R+ u* `- t. Z# F
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
( E1 _ C! C" J% N. W
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 c( m' J9 I, \, f( j
::SetLight( bLight );
7 p, U0 @% w" y* c. [/ z
" P3 T5 D, E! }+ ?$ }
// ±ao? ?D?í???ó á¤à?
4 l. {# n# g& f) U2 \. D
m_pd3dDevice->SetMaterial( &m_baseMaterial );
9 p5 D3 ~& Y1 B1 C- O
; e4 x2 B v& t& E3 |6 i9 ^
#endif // not WORLDSERVER
; G% O3 t0 w+ d
}
6 A+ K- y* g8 n2 w) ^4 H `2 N$ z& q
并更换
! h$ S3 K0 j/ i+ J& ^
Code:
1 t- `( d0 k9 F
__FLYFF_INITPAGE_EXT
* `+ @* F# P: s6 E) V, k
定义
* f) k4 h$ \- e8 b) w; z: A! V
, _; w- [- ]3 V% v, E
4 a% Q* f; X, j
, y, W6 c* U$ Y1 x8 O
' U5 P4 T( p& d9 B1 u: \* ^6 c
现在终于删除我的狗屁加速...
) ~. y8 a+ f6 S c7 O
% C/ [. s2 R6 _( o- T
) s. M! t, p4 z6 V4 L
7 m6 d9 s1 W, S& N; c7 D
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2