飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
4 _7 L9 k4 o3 N* d4 z( j
尾翼:
9 Q; g* q' X* m2 R8 \) {
& g/ D: ^, C; Y+ f. O9 `- s! w
代码:
; { u0 R, e- o; F* i: E! i* t8 \
CWndAutoFood::CWndAutoFood()
" u9 O% [+ A, u2 J2 i. m
{
* e( R/ z9 G6 V# a* a
m_pItemElem = NULL;
+ f) m4 W* W2 D
m_pTexture = NULL;
! Y" L$ h* G2 x" k4 o1 q
bStart = FALSE;
, }+ w/ {" m; i. @
}
. ~# J3 v& n2 ~6 \* b
1 J# G( k' O. a W) c+ Z
CWndAutoFood::~CWndAutoFood()
@- F A$ A3 ?$ y2 ~
{
% C* h. E' p4 b6 b" w6 @& [; Y. V- A& z
AfxMessageBox( "AutoFood ist gestorben
" );
; h- t3 s7 N/ H9 Z7 ~7 Q
}
$ O$ p6 ^; J2 ]# i; U2 Q* @$ c7 `
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
+ ~: m1 Q0 y! n9 o, F
{
, Z5 L7 h* t p2 v1 a; m# `' }- g& u
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
. i; j/ C |. t
}
" f$ w( p4 C8 M) d- {
% j9 m* a* L. n* M
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
& n$ _4 o3 s( P% I4 J( \6 G' C
{
5 Q" U& H0 h2 W& e& s, R, D" Y
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ c ]2 F ] Z8 Z
CRect rect = pWndCtrl->rect;
" L- w1 D4 N( b" A% |
if( rect && rect.PtInRect( point ) )
4 M1 |. E @5 S9 B, l( s" E4 w
{
" I/ u+ q3 [: \* J
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
% j! D5 p' j- @0 P; Z; S
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ ?% s$ y( m& |/ |
{
4 V; d: [2 l+ m5 {/ q6 v' z
if( m_pItemElem )
, o2 Z* o: Y" U& _) ?% Q. F
{
2 X2 I: N: e. _4 |8 ?' z" T# i2 T
m_pItemElem = NULL;
E1 _) [: a: i3 o& }2 G: ~: {
}
7 V* v4 i0 b) {0 p
m_pItemElem = pItemElem;
' J) o7 G5 i: U9 f/ A1 t: u4 k
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
2 A- t7 H+ |# i: d& C v
}else{
" O" Y& }4 _: @7 \ G/ m7 W
SetForbid( TRUE );
, O( h: @# B4 ]2 R, i' [
}
+ V) w) g$ i/ z& b
}else{
y6 g# _( o4 S- y' \
SetForbid( TRUE );
7 C5 \6 F3 t0 T9 P$ j
}
* Y0 V) W8 i. R/ n0 H& q1 R [ B
return TRUE;
' o% U% o8 M4 m
}
1 N# @% T8 ]; d a4 S
1 D& H& n3 r3 U2 s# K% e
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
) u" Z& F5 r+ i8 v3 G6 ]# `
{
/ h4 \) M( @# ]3 N7 B: s7 Y/ T5 @
switch( nID )
2 z/ O; X% y! y" ~
{
: b* s0 h3 Q( m. ?; r! Q
case WIDC_BUTTON3:
$ j5 O$ |8 w" Z9 v
{
6 P) k! I* ? k- O$ H" H4 w1 H
bStart = TRUE;
, D5 l D9 y! @ K0 w, b# I/ P
break;
/ ?& o4 G1 H% O/ \
}
[6 Q( E/ F2 _3 v! ^* o- d+ ^
case WIDC_BUTTON4:
/ ]9 s# ^: _/ A! \7 P$ B$ }
{
4 @, N0 c7 s# m2 d P! p
bStart = FALSE;
4 [! Z( r* Y) ?
break;
( ^" \- r6 L+ L
}
. E! b+ r; |5 T8 C( U2 [) B
}
3 g+ u0 Y7 s- ^+ c2 q" n5 p
return CWndNeuz::OnChildNotify( message, nID, pLResult );
; {$ U; d% [0 Q& M" }7 b
}
: \6 G: y: s( X
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
8 ]) b" s1 ]: Z3 {: ?
{
6 p7 ]: K' ~! D5 B2 H
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
- l0 T1 Q4 N% n" ? }" L
if( bStart || !m_pItemElem )
6 `2 {8 C- ]9 ^% C
{
/ G9 m3 R/ b0 C, z$ T) a& v$ O
pBtn->EnableWindow( FALSE );
+ U# |8 {5 w. |/ k3 @* E% l- M
}else
! b* j' p* _8 y0 d
pBtn->EnableWindow( TRUE );
' N) o& T# P6 n4 h
if( m_pTexture )
0 L, d! H1 o& [, M# b
{
) Y6 j, N: J0 y
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
1 {. E3 g5 e0 r; O
if( wndCtrl && wndCtrl->rect )
! ?5 _; k) z* ?# w* h& P( w
{
( [( N: _4 W) ]5 s. [! [
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
9 d" I, |/ m9 h) L q
}
6 V" K* D6 V, W3 w! D. ]$ v
}
1 y& F" U( V- {% ?# U) p4 Q0 Z+ |
}
1 }3 \3 T; q ^0 g
: z; Y# K: _& m; R" F; z( ]
BOOL CWndAutoFood:
rocess()
( v( R v5 g5 l4 c, g4 |
{
2 N! E' Q+ T) V1 j! x5 f6 J
if( bStart )
' n* _+ s5 F+ g, G
{
" i+ m' S: l, |3 w
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
, j4 g5 I2 C' ^$ O1 H G
{
" Q' l+ D5 J }1 j
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
3 P# A6 s! }: H) i! K! Y
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
! d4 D. W( a& [ {3 C" X( p
}else{
- R7 ?. q- L0 l$ p/ A& p; q
bStart = FALSE;
; ]' }1 M/ K# f/ A
m_pItemElem = NULL;
2 d* A6 e2 G% u5 R, A. c% ^% N
}
% h: S% P; n% o# i0 B8 h2 O e
}
) N; f+ a. S/ P4 {& Z/ l8 r6 b
return TRUE;
1 Y' K. t0 C$ o* ?7 `
}
6 C$ u) |4 f l! |
& H$ i* \; ?7 M6 C5 ]! @
登录视频废话:
5 G$ D: @8 J. J% y
尾翼:
; t6 A# b' P! b C7 S8 _
9 n% [5 f+ a( Z n
代码:
/ R& N. J5 `5 K3 v
) u" i1 C. h! b0 a1 ?
void CWorld::SetLight( BOOL bLight )
' v: W+ \' w8 `8 B7 `
durch
4 O' T7 e0 A B2 m7 l
Code:
& G# Z! G; `, s% c4 V, Z0 H$ o$ D) B* M
void CWorld::SetLight( BOOL bLight )
$ _, \7 f3 @6 u( d$ n
{
; j/ O1 X& F( m6 b6 I9 y z
//ACE("SetLight %d \n", bLight);
: p I1 {. {" J
' p2 X" \0 e1 \3 ^, V
#ifndef __WORLDSERVER
& z. ~! l- A& e9 ^/ M" @
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
1 F7 Z4 e- Z# O
CLight* pLight = NULL;
. X W! d2 e" x5 ^
: @6 y8 L1 g5 y( U4 ~
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
1 i' ~7 ^' p/ H; e, j
4 y) Z/ T1 Y! A @% t
pLight = GetLight( "direction" );
* [) L2 `& c+ s
4 x) Y; t+ o3 N" R1 {" x6 Q4 h
#if __VER >= 15 // __BS_CHANGING_ENVIR
4 C; C7 s4 o; V# }# c$ N3 d) ~
if( g_pPlayer ){
' K3 b: v- m w* U+ r7 E$ K+ h
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
9 w0 _/ C7 B" e4 o3 I# T Y
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
9 h! c. g5 _- H) [1 u* P
{
! {/ f* ~! n+ j' X7 `3 M: u" g
if( pLight )
. Q0 y3 O3 C; s, @' G# r+ ?, f2 g
{
6 J. [; v+ E7 M9 ?) q% H, q
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
" M3 j5 Z- ?. L9 M
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
[' C' G1 H( [: c3 g0 ~+ w
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
! V4 D+ N# O2 K5 v
& t U" A& Q, L+ n" p
pLight->Specular.r = 2.0f;
: [% c% I" b: `4 I4 Y8 }4 w) R
pLight->Specular.g = 2.0f;
8 k* h0 m0 q$ |: D
pLight->Specular.b = 2.0f;
. }$ ^( x( T# U
- X. h$ |8 h# X3 `
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
2 K: A* p' G8 F& |
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
8 i# h6 [; H) y# K
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ B$ C6 r* S) R+ S% h) P2 b1 U( ^! L
$ \* @$ u4 N! N( _8 ^5 H" [- @" b
HookUpdateLight( pLight );
! g8 F* T; X; H! O: l4 @5 z3 j9 \+ ?
5 c: \. P+ W0 v( I, Y& A
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 W% x' m/ }; P2 b: b4 |: K
9 F1 F2 Q, L, K/ D/ A
pLight->Diffuse.r *= 1.2f;
) Y9 v5 D. O2 C! I/ d0 I
pLight->Diffuse.g *= 1.2f;
; i/ S3 c2 }) R6 }: C; z5 l& Z
pLight->Diffuse.b *= 1.2f;
% c- t D. R7 _ n; P/ v! @" x
. {- s) y2 {; T9 |" J Z
pLight->Ambient.r *= 0.8f;
5 a I; {/ |/ D) D! z& _
pLight->Ambient.g *= 0.8f;
* G0 C* N. }/ E9 x9 T
pLight->Ambient.b *= 0.8f;
1 B$ d, W; o! `7 G" i' J
) j2 o8 H6 ? m4 }. Y5 h$ {
memcpy( &m_light, pLight, sizeof( m_light ) );
& u \% [7 i- P' D7 b
, z: _, q7 J2 A/ G& K" {* T3 E$ p
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
2 y9 k% }% S7 W/ ~+ J, h
D3DXVec3Normalize(&(vecSun),&(vecSun));
i2 M! ^" d @/ d* V- K
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
7 c5 F& J8 I8 L$ ~" V. K
pLight->Appear( m_pd3dDevice, TRUE );
H" ?# S$ b$ k+ `! Z6 k9 c/ `
8 {+ i0 e" Q- C* V+ p0 \
DWORD dwR, dwG, dwB;
, ^1 m2 B0 f: w1 F: f
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 h! c& |0 d( {7 u' R* k! b* w
dwG = (DWORD)( pLight->Ambient.g * 255 );
& o. t- A; j. c4 H
dwB = (DWORD)( pLight->Ambient.b * 255 );
* |) q7 u" I+ T2 s; L
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 s* M: s0 e9 I7 B7 j# `
}
3 N/ l$ x8 N+ h, \3 F
}
' }& Z! B" }% h- |
}
$ M5 K/ n0 Q2 R) G6 {. x4 p
else
2 B4 `0 ~2 A% ^' s- u, K+ S
#endif
: k E7 O) F+ z; m m* D
% Z* W2 r2 {% Z h9 A
if( m_bIsIndoor )
! `4 L3 S0 X1 l& z2 p2 H7 C0 y2 h
{
, T& R# `" X6 v1 O6 C8 T) Y$ E) h
if( pLight )
+ u& r, V3 v9 R) m7 Z# z
{
0 e; y: x" k- Y. \9 p
// à??μ oˉè*
2 Y! o. ]3 g' B, F( `3 K3 W
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
* F8 R% d9 Y5 T( S
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
% W% Z/ z0 p! m; A' B! R4 H
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
$ I0 j$ Z) W, a% f
) T; v. h9 z, f. e1 p) S0 O% b
// oˉè* ??à?
% {- Y- p( v3 x6 {; ~, J9 A
pLight->Specular.r = 1.0f;
$ ~* m2 [6 L( p V! w" R
pLight->Specular.g = 1.0f;
0 ~, `& Z- L" f; F6 g
pLight->Specular.b = 1.0f;
- T4 b5 d8 x6 F( O" s) z
// àü?? oˉè*
+ D7 h- \2 |1 r( e/ @1 ~7 c* F# `
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
7 S: L- X" W4 n: z* P4 A
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
* A. @- Z1 m1 [+ y; P5 O
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
/ l$ l/ a* @ D) z) Q! J( l5 A
8 K6 R$ W( {; h: b y
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ D4 A, E8 ]1 e7 N
{
% _: b9 {: e+ N+ i, w% _
pLight->Diffuse.r *= 0.6f;
6 |& {5 r1 }# e
pLight->Diffuse.g *= 0.6f;
: H( _7 K+ `; t! m6 f9 p
pLight->Diffuse.b *= 0.6f;
" _" C+ J* j# K. U" c- z
pLight->Ambient.r *= 0.7f;
; N* |4 k v2 e6 p8 P7 G8 ^& p+ L( H. F
pLight->Ambient.g *= 0.7f;
; E% c6 E1 U6 X' v0 o
pLight->Ambient.b *= 0.7f;
# H4 T; K% ]& M$ p, S* F4 r9 ?- l) N
}
# O" g0 }5 C- I7 `3 E( U6 E) }
; i) b4 _$ t# t2 X* R- I( Z7 G8 k1 l
#if __VER >= 15 // __BS_CHANGING_ENVIR
! {1 @% M$ z6 ~2 i: h) q
if( g_pPlayer )
6 N, ~* Y/ G# u, N5 i( F' E; A: t
HookUpdateLight( pLight );
: x' W% T. [* Z8 l" t
#endif
: B; \, X' u, s1 s# L- T5 A
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 ?: z% j* V/ z2 E5 r: a
X' | x+ l7 M: O* F* e) k8 T
pLight->Diffuse.r += 0.1f;
2 F8 a+ H0 p; j( K3 E4 p
pLight->Diffuse.g += 0.1f;
( s/ k# f+ d" O" s
pLight->Diffuse.b += 0.1f;
# j; ^9 H* a U
// oˉè* ??à?
, D- e# e& D" p
pLight->Specular.r = 2.0f;
, Z/ c* h) B$ u" d
pLight->Specular.g = 2.0f;
8 {! V9 B) }7 W5 h5 u* E1 s$ ^
pLight->Specular.b = 2.0f;
; O8 W) e) b& |6 v. n- s u% p# @( w: J
// á?oˉ
# n- D$ T' W, d0 d" j' }, Z) @
pLight->Ambient.r *= 0.9f;
1 U5 H# }( E" p. I6 `4 @
pLight->Ambient.g *= 0.9f;
) @9 y+ O6 _, K
pLight->Ambient.b *= 0.9f;
7 h7 Q& o* A) I
9 c% v6 F8 |2 `, e+ O7 Y. ?
memcpy( &m_light, pLight, sizeof( m_light ) );
4 N5 ]: w; x: N
7 S# K6 i" R. N4 H
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
$ B' O# Y& q* v" c4 ~
pLight->Appear( m_pd3dDevice, TRUE );
7 E' P. M! m' q& O) Q: ~% t
$ j% M6 ` I6 G, m
DWORD dwR, dwG, dwB;
7 l8 N0 ?0 n5 j- s% ^- _
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 J2 x. L! E! A$ |
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 H7 o: @/ n8 v/ \4 S; `5 v
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ J8 [3 b3 w V$ \2 y' ^
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; Z" n; w J& z0 E$ \
}
) s7 [6 Z* J2 y' @" r H
}
+ R, x6 |0 y. l$ t
else
# _/ Y$ D) M ?6 y& b d
{
2 }& j3 q: F- \3 o0 L
if( pLight )
0 @$ x7 X( m) U
{
# j$ ~/ y/ Q3 G# v, l
: F+ Z) W! ^, k/ S# U) h" I& v; T6 R, b
int nHour = 8, nMin = 0;
- G% B" e- Z8 X2 _6 _
#ifdef __CLIENT
+ C3 t9 s0 {! v4 X" l. z( g
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
# L* @- h9 h* |* U* C, v% E$ I
nHour = g_GameTimer.m_nHour;
5 x* c, \. q. u& ` v) W2 Q1 U2 ^
nMin = g_GameTimer.m_nMin ;
& c1 q' y9 B. [
#else
& N4 X p* D+ D0 u! ~
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
7 k. Y* \! O* h/ N' t
if( m_nLightType == 1 )
$ v) N$ i$ l1 [. C Z8 m/ [
nHour = m_nLightHour;
6 h# p n2 e1 I' |2 Z0 m8 i
#endif
& J _/ A6 Z% s1 l
nHour--;
1 l7 F1 {2 `% ^' O' _+ e
if( nHour < 0 ) nHour = 0;
( b2 u' F$ n7 ?
if( nHour > 23 ) nHour = 23;
& v, V0 M2 _, W9 y$ V, }/ N# T8 S
0 i( |1 x# F- X! H3 K
//if( m_bFixedHour )
8 V, f& A+ q ]/ a+ d$ U' J( l
// nHour = m_nFixedHour, nMin = 0;
, ]9 P; o0 Q- u
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
, D$ U6 a+ e9 A# t1 L9 i
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
+ S$ o$ c3 s o
0 d/ D( d: V: ?0 {% C
//m_lightColor = lightColorPrv;
. F3 n1 K- J$ a: u$ a+ M
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
3 @* Y" {' c* }$ q
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
& S* M" E# T& T0 a; x2 J1 V
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% r; E. S3 l$ c& o! H
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
- t2 e% y3 ?5 e8 {! z; U' Q1 a" u
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
9 D3 T& I8 [. x& `: Z. E
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
2 y6 p. f+ I( P/ a
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
4 v* h' U& h% |$ p. R, a0 G
; D( k6 x B0 L& D7 Q
// à??μ oˉè*
; K# w8 q# `) C+ e
pLight->Diffuse.r = lightColorPrv.r1;
1 ]; \, c7 @: E# z P
pLight->Diffuse.g = lightColorPrv.g1;
$ I1 {) S( K7 g. M- C/ I3 G
pLight->Diffuse.b = lightColorPrv.b1;
; K( A( P$ [* w( m: v, H
// oˉè* ??à?
0 R3 ]& z L/ v8 [
pLight->Specular.r = 1.0f;
* i. [& _7 F+ v2 Z j' i3 e; I
pLight->Specular.g = 1.0f;
6 X4 ]3 h# N1 d3 n
pLight->Specular.b = 1.0f;
/ D2 k' I7 `( B* s8 R- `
// àü?? oˉè*
( K, r# R. p& }, r; _
pLight->Ambient.r = lightColorPrv.r2;
1 O8 Z* q4 `- b$ }( c6 C
pLight->Ambient.g = lightColorPrv.g2;
8 ~! q# H2 J1 e
pLight->Ambient.b = lightColorPrv.b2;
& Y& q- ~$ _( R [4 ~2 @
& @5 j8 U! P+ a3 x8 O
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! X+ p# a+ E0 z( n9 ~ b
{
! x+ I# J( F- Y6 i4 A3 b1 m; h. V
pLight->Diffuse.r *= 0.6f;
, q* u& W q) E/ N% A# \, @
pLight->Diffuse.g *= 0.6f;
& k. d# o% g7 F
pLight->Diffuse.b *= 0.6f;
: V% w U9 C0 |' W( C" y' \4 `# I0 o
pLight->Ambient.r *= 0.7f;
4 k; P( U9 g+ p3 d
pLight->Ambient.g *= 0.7f;
8 Q$ y7 Z, p: W8 Q1 l* p% ^
pLight->Ambient.b *= 0.7f;
# ^) ~8 p3 J5 E
}
9 v {! L* p0 j( V
# _8 J, a& z# y
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 G. }! X" s7 L- p9 P
if( g_pPlayer )
" _0 [! ^' L* N. K q
HookUpdateLight( pLight );
( |0 k0 T( Q! W/ B! f- s, {- M$ Z
#endif
* X8 ~9 j& D1 s* e! D
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 E$ H7 a4 k( n& {& P0 A7 u
' ]; `0 \& ~0 Y1 a9 j# q3 |& j
#ifdef __YENV
* \; @2 ?& {5 h8 o2 ]/ W. v+ @
pLight->Diffuse.r *= 1.1f;
7 u4 z, ?( x) e+ ~
pLight->Diffuse.g *= 1.1f;
' J9 w6 j S0 b2 A) F4 [
pLight->Diffuse.b *= 1.1f;
1 f4 m" i. H5 I# b
// oˉè* ??à?
, g4 ?' A1 R% y, N1 q
pLight->Specular.r = 2.0f;
; e9 h1 A8 P4 Q! ]' ?" s0 c& x& m
pLight->Specular.g = 2.0f;
# q2 g9 }3 j1 M) |9 B' P
pLight->Specular.b = 2.0f;
/ p8 {7 t- {2 j) J2 K0 T! L
// á?oˉ
: ~7 t' T! H' B" Q/ m
pLight->Ambient.r *= 1.0f;
! V. B; a& p, ~
pLight->Ambient.g *= 1.0f;
* |9 a6 s% G6 m& G) L3 B
pLight->Ambient.b *= 1.0f;
* T( E- m) D2 K& p4 ?
#else //__YENV
3 L2 Y0 I, T$ h( Y2 N$ }
pLight->Diffuse.r *= 1.1f;
( S% ^2 r: R! j0 [6 d/ v
pLight->Diffuse.g *= 1.1f;
4 ?0 O( ^4 a& x& s
pLight->Diffuse.b *= 1.1f;
8 a% H/ |6 l9 R+ F$ T4 e
// oˉè* ??à?
8 _& E! E/ [7 v% q& `! _
pLight->Specular.r = 2.0f;
/ {/ e* v8 _1 s# I, k. q5 F
pLight->Specular.g = 2.0f;
+ Q, a0 N5 E3 }/ K& v) V! G7 V
pLight->Specular.b = 2.0f;
% g7 U8 A( `/ h; y" G. h& A
// á?oˉ
) k. G) ~- w T* a5 k3 c
pLight->Ambient.r *= 0.9f;
1 ^1 G/ u" c% e" i5 T6 b, x. h5 |4 @$ J
pLight->Ambient.g *= 0.9f;
" @/ k0 @. z* _1 x, ?) b( g0 y. ?+ L
pLight->Ambient.b *= 0.9f;
* ], `$ d9 w! y4 t: [9 p) }
#endif //__YENV
: M3 I" Y0 i2 B' ]. Y. j; U% u
. N* C; s7 m. U t+ _. P
memcpy( &m_light, pLight, sizeof( m_light ) );
* E& W9 p5 z. X( \
- ~8 Z# E; B3 [" Y* N0 m$ f
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
/ I( A; j/ b: O( n/ M
D3DXMATRIX matTemp;
" f# p9 n( C6 b& }; O
static const float CONS_VAL = 3.1415926f / 180.f;
: t3 o3 _- `8 X3 W2 r
) ~2 g% r7 W' M, J B
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
: X9 } {' f5 u% R6 P
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
- S, K" t) r7 R* r' D' L6 p8 T
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
5 e9 J% ^/ f; `8 N9 q) x ^3 G
pLight->Appear( m_pd3dDevice, TRUE );
v: l0 h# I' k/ z1 e+ L, L
9 O: P7 O9 L- O1 h$ c* r
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
8 A% R# R) Z. J6 ]
// D3DXVec3Normalize(&(vecSun),&(vecSun));
/ \0 N, B; \- m$ H2 A0 Y. N' h- b) {4 m
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# K5 o0 E% ?9 S/ W' c, p* o b
1 _" G- k6 @5 h7 }" Z+ o
DWORD dwR, dwG, dwB;
+ M2 s. R$ E8 @# Q
dwR = (DWORD)( pLight->Ambient.r * 255 );
/ m+ o+ ]( E0 q4 J( C9 s! `
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 ]' y: r ?1 k) F3 M8 z
dwB = (DWORD)( pLight->Ambient.b * 255 );
" \$ m- ~5 J1 H3 d/ Q
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
9 @, P1 C Z0 ^$ a
}
9 x2 E8 V) I" j$ @$ W
}
, O) @; J4 P% X8 [8 g
n7 e& j% F. O5 }0 z/ V b
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
3 I+ \" W$ x1 e, D0 r# h; A: V' e
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) );
+ o, T( g) L& @5 d# F( O2 W) P2 {2 t
::SetLight( bLight );
" h$ [" ~3 P+ F9 }: f$ J4 E% g
0 O J1 b' C2 s ~4 K' m
// ±ao? ?D?í???ó á¤à?
* Q5 C8 m6 T+ H
m_pd3dDevice->SetMaterial( &m_baseMaterial );
/ F" T+ S% ^. a6 @9 j
: r: z4 V6 d+ ?5 A7 \& s; ^) f
#endif // not WORLDSERVER
% n& H4 G5 w8 x5 N4 H% O2 O1 @8 `
}
) [1 G7 Z2 A" h; ?
并更换
& l& h7 ?- ]) J6 [4 W
Code:
# Z1 d9 e4 E0 \0 n2 O7 J* _$ r
__FLYFF_INITPAGE_EXT
* I2 n4 `; N) m2 I
定义
: W' v i( _6 c! _( x
% L8 i9 e- y) b) W" Y0 W; \
0 Q) D* u- c* G; S
3 ` o4 F$ y% E% W R4 ~6 ]
* _" u' B( `, f0 V/ W! o
现在终于删除我的狗屁加速...
: U- m- X, }; Q
; k' K. s, r/ B7 s$ Y3 M
' A4 \- A5 A4 D$ @- d' A- T& _" N+ Q
* l8 m8 A6 O' b o8 I3 c; ]
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2