飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
; H* X7 b' b# n3 w
尾翼:
* Z% [$ u9 l8 q$ W
! K4 @, c. ~& F
代码:
! Z: M! h8 \. A: n _; }
CWndAutoFood::CWndAutoFood()
! \, ?$ \/ @6 {
{
: B5 M6 m5 h% C/ n
m_pItemElem = NULL;
9 w0 A% B1 N. v+ z3 }" t
m_pTexture = NULL;
* ] T3 q" i$ C
bStart = FALSE;
7 T- E/ r& U0 H2 n4 y( p& d N7 Z
}
3 e( H# z( o4 R k9 F1 }9 h* A
2 u1 U# S# \3 f: {* c6 H
CWndAutoFood::~CWndAutoFood()
6 A4 K( D: B1 X- c( _4 I
{
9 U1 @7 l1 {! t/ i/ f% O: W, I5 Y2 P
AfxMessageBox( "AutoFood ist gestorben
" );
. ?* q$ N4 ?3 o& U) b
}
4 F2 O- Z; q5 N5 i, [) c4 w
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
7 H% R4 m" ?2 |; g- s" B& ]( r7 k
{
$ H" r# ~# e1 i1 U7 [2 h* F8 e: V
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
# B, o# Q+ Y7 g! L7 N
}
3 Z) H, k( O) Y- w9 ~: B
' `" e% P# Z# l$ c% F3 ]* D& w
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
% j$ j8 I; p& h, U
{
- u# v* R/ g* c8 S) C& w
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ y3 P M( i, \. x
CRect rect = pWndCtrl->rect;
4 ]& `6 }7 f! {0 s
if( rect && rect.PtInRect( point ) )
( Q L8 B( D% h7 p( v
{
; R9 n8 Q& m1 A* Z( ^' X! ~
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
! F% @" a! |, u$ _+ Y% P4 [$ J
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
" Y5 v/ e( \' D4 k! h6 \; J
{
. s* }0 c6 I# U+ L1 k
if( m_pItemElem )
4 s5 x4 j, v! H/ L" |
{
+ v: E; R. t4 @5 e) [
m_pItemElem = NULL;
5 T# p8 l0 s7 F1 C- ` D% Z8 B
}
& y+ T' r1 V+ z+ n& a ?
m_pItemElem = pItemElem;
* A9 Q1 B7 g2 n, D4 z! K! v5 A u ^
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
: X- N9 k' t; R9 |/ _
}else{
! {# H ~/ d4 t% P* d% C! C" a
SetForbid( TRUE );
4 P, H8 L/ i1 C7 [* k+ o; n. M- ?5 ^
}
. `$ d$ ] X: V* K2 ~0 g3 G8 Y4 {
}else{
) a( q5 C; S) }' q) ]
SetForbid( TRUE );
/ I: h2 S6 P z
}
* A: A0 j# T% o
return TRUE;
1 G- i; x! d* O& z* G$ y7 F/ D
}
% Y7 x6 |' s5 g4 Z) \4 Q5 s, w0 h
% l& u- B- ^$ m' v! v
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
5 J& g. H& f2 C* o
{
* L$ A" f$ F- Z: ?+ N
switch( nID )
6 [: R! u' `! X, u x
{
. y1 d, S6 {( s x* L2 N' @* Z
case WIDC_BUTTON3:
* @, j8 q4 M& S+ a
{
a3 y0 e A, J& o5 U1 f( v- l
bStart = TRUE;
0 G7 Q3 |/ l# W' b) y" y- t, L
break;
) L( B, g C) ~$ S2 v
}
+ Q' `/ T7 N$ z9 l
case WIDC_BUTTON4:
2 M- k) ]1 V0 g0 W& T
{
, J# X# ^+ y5 p
bStart = FALSE;
$ j/ x4 t; o1 M6 V
break;
/ J* M2 @' e! C( k
}
; T0 L$ Y9 }. S# d% N+ V! w. g
}
! z+ v0 C$ \$ e) H
return CWndNeuz::OnChildNotify( message, nID, pLResult );
) L% S+ }- \1 Z- z" ~3 _5 Z; `9 Q
}
5 }4 g- }1 [$ m$ [2 |" A2 {& O
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
3 G% M8 O) B1 p5 \- ~4 r
{
! w' [2 k; g8 T) L
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
, l( ?( L8 v, }
if( bStart || !m_pItemElem )
, c4 e' B1 t1 W/ Z
{
7 g0 c3 \3 O1 y* x8 |
pBtn->EnableWindow( FALSE );
/ e9 q1 {" Z. ^2 h9 g6 W
}else
* K- L; ]2 r+ G$ U) [/ _! W
pBtn->EnableWindow( TRUE );
% ~) {* n( i% A2 S
if( m_pTexture )
F; s# |" M3 [/ f+ u% O2 t
{
6 b! _9 Y3 A% N
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! p/ S8 [* E6 I" X* d& M
if( wndCtrl && wndCtrl->rect )
k' W3 o; D/ z7 n$ c
{
( t2 F: [1 `. u, _( ~
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
, ?% `. r% n* L3 M* f, j
}
) C3 w# a; ?( e
}
4 P% ^4 ?: J* Z+ N% h, A
}
7 q" G- q9 h" c M( s# x
* Q$ x: j/ i" {
BOOL CWndAutoFood:
rocess()
* R8 j9 s- |/ z7 [8 o& O" P
{
I$ g4 [0 [, l* w4 ?2 K
if( bStart )
R" l+ ^3 T' ~9 g* ^
{
, ^4 z: V0 ^) L# k+ K! S
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
( w4 C$ ^: w+ ]' {$ i. m9 u
{
2 B1 i. k% U3 k t1 S: i. n5 K
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
9 g/ `% G/ ^/ }' l
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
8 J3 }3 E& U3 V
}else{
' }# T- _! ?8 n0 G/ g' q/ K6 Y
bStart = FALSE;
9 ]+ W6 ?2 ~( q E3 q/ h
m_pItemElem = NULL;
& _$ K$ P( z. F" R& \; W
}
. U1 ~" |4 v5 M x; u' C
}
( n7 k8 w' F) K4 P$ o# a
return TRUE;
) X# [9 T5 G" ~& q# ^
}
3 O6 b7 }" Y' E& N- C K2 N a
) u4 _; z/ F. ]6 r$ F
登录视频废话:
/ g/ M" ^/ L, @% B! v3 U
尾翼:
' w. `6 P3 [9 ^( O! P) P+ A8 A5 H! D
* L+ x, c+ m6 V
代码:
6 U K$ x' l! L e5 Y8 t N7 G1 O
U6 a. V! @$ V6 P8 V
void CWorld::SetLight( BOOL bLight )
( V, [/ A. s v/ c$ l- t; Y
durch
) I& l0 L, t0 Y, Y
Code:
" B$ r" k/ F5 U2 }
void CWorld::SetLight( BOOL bLight )
B" e9 I t5 O" s( G1 _3 d
{
9 N% z6 N) u+ i2 Z7 u
//ACE("SetLight %d \n", bLight);
5 t' v+ k1 d5 i/ t9 d
2 N2 F7 B5 y8 W/ R0 w/ i
#ifndef __WORLDSERVER
9 o) Q/ O9 o; T. M6 L6 o
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
& t: k+ C( j8 {' P& A6 t$ j7 k. {
CLight* pLight = NULL;
2 b: v8 ^5 b5 z0 R. v
* w2 Q! g$ _6 E& b, M) |( @9 a
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
2 H Y' H! q" G( H' [6 R6 m
; j% H0 g$ ~6 P0 d
pLight = GetLight( "direction" );
8 ^7 J% @2 v" b5 N7 u2 k; f# D/ X( Z
4 Q0 e; m5 i9 {! @9 N( p
#if __VER >= 15 // __BS_CHANGING_ENVIR
0 ^' J# p# `. e9 ?5 ]
if( g_pPlayer ){
8 B, X3 ~) z1 a1 ^& S1 z
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
0 {1 w ~3 L/ m1 c* j4 q
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
+ B. e! {( V+ p, f* k& ^
{
5 J" _9 J D) X, b/ V' x
if( pLight )
; t8 l; R4 [' c4 ?
{
, o0 {5 O% ~7 n
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
8 R" n5 H' o7 }5 v ^, D
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
- ^, {; d4 N& _0 y4 A
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
5 a3 }- r3 h: o$ Y' U
9 s. {* l& U$ i, E# t8 G
pLight->Specular.r = 2.0f;
$ K8 j. V+ N, l; }9 o5 A. `- ]
pLight->Specular.g = 2.0f;
5 L3 u, p% ^5 G
pLight->Specular.b = 2.0f;
5 Y J$ @# |' H
6 @; i; h( k& ^5 o- g @3 v. Z4 _
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
3 ]$ @& x6 ] e w: Q
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
5 p9 E# @' x l' u
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
# l3 N' C0 `% n5 Y2 I0 P. [
1 U5 t$ \; l) B2 L- p9 O* G
HookUpdateLight( pLight );
* r% J2 k! ^4 _$ m- G m
/ z: ?+ l, ~4 N$ E# s3 d& }
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 f/ z5 W! h2 b6 d8 Z
" Z" m0 v) Y% e- {' ]2 z9 _; {6 b
pLight->Diffuse.r *= 1.2f;
8 R- t# V. q7 b1 I+ e. l* z
pLight->Diffuse.g *= 1.2f;
9 [) z1 C( T( l& Y
pLight->Diffuse.b *= 1.2f;
' g% o u8 Q2 U Z8 X
' L5 Q! {$ }0 f8 |2 b
pLight->Ambient.r *= 0.8f;
' H; N4 |! a! _# Z- {' |4 V* C
pLight->Ambient.g *= 0.8f;
4 J7 ` B; ?* F
pLight->Ambient.b *= 0.8f;
1 ~+ I: ]2 H3 @# f( `2 l
2 _5 d- {/ b% D! R
memcpy( &m_light, pLight, sizeof( m_light ) );
4 @3 O1 Y O; Y$ x3 \4 h, w
0 |, h4 |! ?" W
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
6 R' M/ x( C' _0 U2 b
D3DXVec3Normalize(&(vecSun),&(vecSun));
* P: J6 n5 v0 S2 [( g9 P; v6 R4 x) m
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 }% c* i% q: P3 R( a
pLight->Appear( m_pd3dDevice, TRUE );
2 z2 F* I7 _0 e# O/ q
+ h1 `8 d6 {; I# o4 Q
DWORD dwR, dwG, dwB;
' ?- }: J4 n [6 e7 {3 h
dwR = (DWORD)( pLight->Ambient.r * 255 );
% b$ p2 G* f' {: v( } G
dwG = (DWORD)( pLight->Ambient.g * 255 );
# ^$ e; B' Q# Q: k: v" k- `, @1 Q2 D' q
dwB = (DWORD)( pLight->Ambient.b * 255 );
* F6 F; ?, e* f/ Z a
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; K' P8 H% X3 b- H! d* F
}
7 c( ]% E$ |% \4 b9 Y- A
}
. w" c/ C( L" J+ u
}
; c3 O* A7 b: H: ?% l
else
% I: c% y! \. g+ \2 }9 n& s
#endif
# O5 x1 c l/ p5 y
2 K! O& v7 _& M8 z6 Y# U) y9 B
if( m_bIsIndoor )
$ l, ?5 U& D6 }8 M
{
% m+ h0 O, y: H1 W
if( pLight )
+ M) d B$ g9 ?) W0 w
{
( v, ^5 O1 ?/ U
// à??μ oˉè*
! w' P: w# p! [" p$ N" s
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
3 ^+ {1 h8 x9 G8 K! V
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
* w" l3 s+ j$ Z; o& Z( O
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
" u9 b' B& L' y. ]
, U1 N! c5 t: }$ O+ P# D) W
// oˉè* ??à?
* h( Q/ o {1 s. f5 j% j) m% \
pLight->Specular.r = 1.0f;
?' Z5 t- f0 N7 p
pLight->Specular.g = 1.0f;
/ |5 E" }2 A% J' c
pLight->Specular.b = 1.0f;
0 y6 R& @7 r g; j8 m1 K2 c8 A
// àü?? oˉè*
* |& n- @* v- w" x: _7 a, s( |
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
" O/ o3 h0 T( @9 Z; L% R4 j& p
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
5 C6 E% B$ [+ ~) n
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
' h2 t9 r `( f/ ]
6 H) R* o( N& s
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! q' C6 L& I/ W
{
" ^4 E# @, S; l# T
pLight->Diffuse.r *= 0.6f;
# q" G5 \# v% [* X( h9 P m
pLight->Diffuse.g *= 0.6f;
& g3 @* y( B& P* D
pLight->Diffuse.b *= 0.6f;
# g" y$ [" \* t. F
pLight->Ambient.r *= 0.7f;
. B/ C3 }! k4 U# e1 ~/ W8 r
pLight->Ambient.g *= 0.7f;
% G: m. @+ y& G+ }
pLight->Ambient.b *= 0.7f;
, `% ` B. p4 b6 L' P
}
4 V* c; [' T: X/ t2 k: F6 W% l! k
: }6 e% a& }6 Z# G3 h
#if __VER >= 15 // __BS_CHANGING_ENVIR
( X% k+ ~1 C, |, p
if( g_pPlayer )
" |' f& J6 m5 Y
HookUpdateLight( pLight );
% p" D% y) U' D7 D+ e+ E0 z
#endif
- ^5 a* ?+ U8 G( Y: T
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* h0 d: N6 h3 k# R% E
: i. A8 r) A6 B7 L
pLight->Diffuse.r += 0.1f;
1 c5 k" G( a+ t3 m4 `
pLight->Diffuse.g += 0.1f;
4 ~# k8 S$ n4 s
pLight->Diffuse.b += 0.1f;
1 I/ [: i/ s) k
// oˉè* ??à?
# h" s/ ^/ _5 _' U' h1 N
pLight->Specular.r = 2.0f;
4 A5 Y/ P9 Y! ]& A# c. n* o( E3 F
pLight->Specular.g = 2.0f;
4 |" i. Y4 ~7 d
pLight->Specular.b = 2.0f;
* r/ I8 G' V1 \$ |* l% V/ b( X
// á?oˉ
' c2 G7 x1 ]2 _& [* ?. k+ {
pLight->Ambient.r *= 0.9f;
$ R& D7 ?$ Q r" z m4 U8 m
pLight->Ambient.g *= 0.9f;
' z" {' R9 c- Z
pLight->Ambient.b *= 0.9f;
. l/ ]0 m( i- B! U2 q, @& O
7 P3 M, o) g3 [1 _. C3 g6 b
memcpy( &m_light, pLight, sizeof( m_light ) );
- s% _: G$ C% u
$ {0 A2 k, f( c# r7 K
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
% z- r. b4 f5 j9 t# L0 D9 l4 X7 r
pLight->Appear( m_pd3dDevice, TRUE );
2 ]1 c: [$ r9 |0 j' r, ]
; \- i) ~3 A2 W) c
DWORD dwR, dwG, dwB;
" Y! _4 u% S) w+ q
dwR = (DWORD)( pLight->Ambient.r * 255 );
) }6 p& s p3 O0 ~
dwG = (DWORD)( pLight->Ambient.g * 255 );
$ g4 q5 Y' f q( ]$ a3 d6 G6 o
dwB = (DWORD)( pLight->Ambient.b * 255 );
5 o: E1 \4 t+ e" @
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ O- b- `, f: S# B0 d4 b+ i
}
. }% O W) L' w1 d% X0 X" M; _
}
) ~1 a) |9 y5 S) x5 z" I. L0 B
else
4 D/ }9 A0 u( s% m3 a+ s
{
, B2 }3 Q1 } k7 E3 w+ N
if( pLight )
5 S* v3 m8 s) d5 U$ c4 I
{
: s1 l4 @: z, R- [- S: j$ U2 S
3 B! ~$ u. x1 @( E+ ~& M
int nHour = 8, nMin = 0;
9 o- e P% y0 @4 y, e0 O) u
#ifdef __CLIENT
, M: n( F& d# R+ U* S* w
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
' T' @/ v7 T; F. G4 F
nHour = g_GameTimer.m_nHour;
& V: D# \9 Z4 [: Q" f
nMin = g_GameTimer.m_nMin ;
Z, d5 L2 c- L C2 B; b7 \
#else
4 P; J/ t+ z5 U5 ~ g* c. R
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
G8 g' t- T0 S% C' N
if( m_nLightType == 1 )
/ J# h6 O L8 x4 ^, H
nHour = m_nLightHour;
3 m. t! f' m4 b- n( V0 x9 C
#endif
; ?2 t1 O& B4 _. p) B$ h# t; m- I
nHour--;
5 Z1 f% ~( L5 E7 k
if( nHour < 0 ) nHour = 0;
' J, y* F: N; Q: C% N( {
if( nHour > 23 ) nHour = 23;
6 a! {/ Y4 R' O+ P3 `1 D& K8 H# @$ n
* [2 e! J! I& V, T$ H/ s( b0 u
//if( m_bFixedHour )
}) ]; w) C9 Z7 k' y4 |
// nHour = m_nFixedHour, nMin = 0;
, f) J, w# O) i4 @" v) g& o5 p
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
. b" E: d" O7 a. @$ E6 y+ r' o
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
5 l+ c% P, `. q8 w6 x+ a
- n2 R2 v( v3 @
//m_lightColor = lightColorPrv;
! ~( I' \7 q. @/ J7 n9 G8 N
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
, e/ w& Q7 U% X2 p* f) }
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
4 _+ ~1 p2 n2 ~! U# F
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
# O1 \) {$ M$ ]2 y) Y
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
9 f; |( L6 a) s% s- ~1 l! @
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
3 `9 m: _8 x8 ?9 z) S+ x
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
" c4 R$ c5 h8 J4 l) ]" s4 X$ k: `
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
1 k3 j8 V6 Y. z2 Y
' s' |# c d- O/ t# l5 f6 Y
// à??μ oˉè*
3 z4 ?7 k/ @% L9 }! H' n
pLight->Diffuse.r = lightColorPrv.r1;
D) U, c2 L) i
pLight->Diffuse.g = lightColorPrv.g1;
4 o! l( V. N7 r% L% w1 x( t
pLight->Diffuse.b = lightColorPrv.b1;
0 R) w4 Z( L* ~: X) ]* w3 r
// oˉè* ??à?
) l i* R7 s" v6 _! ]
pLight->Specular.r = 1.0f;
* `& _2 j' J" D! @5 y% C6 @7 |
pLight->Specular.g = 1.0f;
* @2 S y1 ]1 P$ P; U/ m, y3 {
pLight->Specular.b = 1.0f;
: u/ m- ~% O& p3 ]# I- l* G, O" | U
// àü?? oˉè*
* B; D- j# w$ h1 p2 g/ L& }/ D3 I; l" F
pLight->Ambient.r = lightColorPrv.r2;
9 N o+ \( `, L$ }( z) h
pLight->Ambient.g = lightColorPrv.g2;
. r' a% J- K9 M+ n
pLight->Ambient.b = lightColorPrv.b2;
7 q* ]; z% P: Z- d0 Z) c
l8 c4 r) @9 f( E$ R9 ], M" b# |
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, a& G* ~+ p! c4 _2 E
{
' |7 @. ]( B' n- Q& ~" V9 ^# u
pLight->Diffuse.r *= 0.6f;
! D9 s& U3 p) x5 r5 G+ X1 C& ]+ X
pLight->Diffuse.g *= 0.6f;
5 D, v) R& q5 \3 k: C
pLight->Diffuse.b *= 0.6f;
F8 c3 q5 @6 M; _! W
pLight->Ambient.r *= 0.7f;
; X( |$ S/ E0 t& ~! t4 W
pLight->Ambient.g *= 0.7f;
" a% e$ F+ a/ d; e
pLight->Ambient.b *= 0.7f;
1 A/ v) Y% }0 }- }, l! |* F
}
/ K9 O0 @, X% @9 ]" c* u
: S8 f! V7 S( K
#if __VER >= 15 // __BS_CHANGING_ENVIR
, h9 {5 ]: G) U- V
if( g_pPlayer )
3 R& l/ i3 ~* a: n* T3 u& S
HookUpdateLight( pLight );
1 X% t5 g" U! }, r! [) e
#endif
7 M5 Q$ y. v. E- A$ r& U
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; i2 O. M$ i+ N Y3 t; G0 R
& p5 [+ r( n1 O5 B) r- t+ T0 c1 v
#ifdef __YENV
8 O6 f5 b- w4 m& w, l4 p
pLight->Diffuse.r *= 1.1f;
, u7 _4 C7 k. t1 g/ Y3 z
pLight->Diffuse.g *= 1.1f;
0 m9 I( A4 Q9 }4 U
pLight->Diffuse.b *= 1.1f;
% ?. g. p# a0 B1 v. R0 {% [
// oˉè* ??à?
5 w4 l. x, I7 C7 I( L( C1 F8 [
pLight->Specular.r = 2.0f;
5 m# o% x C# T& ~ Q- R3 A
pLight->Specular.g = 2.0f;
" f& j. i8 g. `" i* f& _6 X# h
pLight->Specular.b = 2.0f;
3 _( U5 ~' Q6 s c' M
// á?oˉ
+ t+ v' A, z. Z5 [
pLight->Ambient.r *= 1.0f;
2 ]1 `/ D ~. V( ~0 S
pLight->Ambient.g *= 1.0f;
7 G2 I6 k* r$ \ Q. b
pLight->Ambient.b *= 1.0f;
( R8 w1 |1 R% M+ d
#else //__YENV
; K2 q! ]! |, u5 X+ W
pLight->Diffuse.r *= 1.1f;
) w+ @( [2 K7 T/ t2 x$ i. P3 H
pLight->Diffuse.g *= 1.1f;
' K7 D. P r2 o
pLight->Diffuse.b *= 1.1f;
( n9 w. _* C q8 @
// oˉè* ??à?
0 |1 l$ W) ?( B |9 X5 u) J# L
pLight->Specular.r = 2.0f;
o# ^5 z+ W: d' b
pLight->Specular.g = 2.0f;
" F( W8 S, H0 e4 x |. |
pLight->Specular.b = 2.0f;
0 p2 ^" N. C9 @ P
// á?oˉ
: d7 M/ z F9 i) J% M$ S3 H9 `
pLight->Ambient.r *= 0.9f;
) F4 I& @; o0 Z" z
pLight->Ambient.g *= 0.9f;
7 r5 S; O G0 Q4 k+ M
pLight->Ambient.b *= 0.9f;
1 j6 I* ~6 w7 V- G) x2 S( t
#endif //__YENV
- _- m6 y6 E k8 O/ l
2 |2 F' A% z8 R
memcpy( &m_light, pLight, sizeof( m_light ) );
3 c# ^+ w# {6 r# V0 d$ p, Y
* N: _7 j) H( Q, q! }3 H0 ?
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
1 s& g7 E: n) v: r" \
D3DXMATRIX matTemp;
& y* [0 ^, B+ Q" ^
static const float CONS_VAL = 3.1415926f / 180.f;
9 k- O2 R" j" |8 ^
# s3 a! w( B6 W
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
; F# e$ ?, A/ _6 Y# B4 j
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
' d( A3 l! U4 V
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
7 f; M" H9 F% X
pLight->Appear( m_pd3dDevice, TRUE );
7 J" t. S# N4 q0 n; I9 j
: ~( P* O5 X6 Q& m* v: ]
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ P, [& w* v/ S5 M# W: @( [! \, D
// D3DXVec3Normalize(&(vecSun),&(vecSun));
1 S- V& a3 ` ~
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
0 U! [ k0 s5 T9 ^ A& S3 T) X
* X0 U7 N Q0 V- i/ F$ E- z
DWORD dwR, dwG, dwB;
) y4 C5 I: @2 Z. G6 C/ @
dwR = (DWORD)( pLight->Ambient.r * 255 );
V) M! x1 O4 ]. X, @( p6 G
dwG = (DWORD)( pLight->Ambient.g * 255 );
: X% }4 V2 B) X+ A8 H4 k
dwB = (DWORD)( pLight->Ambient.b * 255 );
& ?. l, U5 \! J4 f$ Y: @
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
& Z) E# J C% t6 e1 s( {
}
! Q$ a. v) t B6 ?, F. K ~
}
5 w. T6 v& Y0 P
9 v T5 H* x3 i, @
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
% R1 }7 l) \' i7 M# p" x6 z9 _7 `
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) );
0 P, q: G! V8 [) W( A+ Y. h
::SetLight( bLight );
' U+ Y+ R3 I8 X. O% j# U
5 c: f3 K" ?7 X* r! p
// ±ao? ?D?í???ó á¤à?
) h- ~ D. `4 p$ o
m_pd3dDevice->SetMaterial( &m_baseMaterial );
6 H+ B% E1 ?) w0 n9 S% R! x
! V$ e; K* o8 L- j, [% `5 A
#endif // not WORLDSERVER
8 i( t. P0 f7 X/ U/ [7 ^& R
}
) z, b8 d4 V" Y9 {/ e: O* [1 r2 ]
并更换
2 k0 L! ^& R( E/ {& z; l* s
Code:
, ^5 C* p$ o! n7 m
__FLYFF_INITPAGE_EXT
4 u3 H% i1 g+ }+ o' T
定义
: J+ P" }+ M7 f2 u1 q
; m: Z# ~: }, y
" P; N) _) _/ }! y
: A/ D3 r' K8 }" B3 `) h
, }& @$ K1 d8 g1 l6 w0 g
现在终于删除我的狗屁加速...
% b' ?+ v1 l. w, N" P* s
$ r; V- E7 K, i: d; u& C7 }8 S
& c7 C' d, R! c1 O
& H" j; O5 b3 S1 H' ^# c
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2