飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
: ^3 f0 y- h: `3 r
尾翼:
5 i) l( g# K' o# ?" G" ~
H5 K: E+ E- i2 h& N9 T$ g( p# R
代码:
2 o8 K. ~4 b1 U) Q& n0 X
CWndAutoFood::CWndAutoFood()
7 d4 t u' L6 C& B7 w
{
$ w1 ?0 N5 p9 O
m_pItemElem = NULL;
3 T/ ^6 Z/ n6 t$ I( J5 t9 @
m_pTexture = NULL;
7 O- W6 ?# J/ y$ B6 D
bStart = FALSE;
9 P7 f5 k0 v' _. t: Q
}
1 f1 X+ d- v8 X+ _7 H# X- m
( K5 ^7 ]) Q! b: z4 h4 k8 K3 M
CWndAutoFood::~CWndAutoFood()
# y$ @) T4 \! [, n) e7 v' [
{
5 d/ O) F' a w
AfxMessageBox( "AutoFood ist gestorben
" );
. a4 a# O- e ?# B4 |# j
}
- n1 j& ?; p4 P+ M
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
c R- Y% C6 l. I' v* w
{
1 W: s: G+ z. z' n
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
2 l) F# I1 |( k; i
}
( {* S( z6 [7 t' v
- F C8 _2 ]1 e% U: H! \8 J. C
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
/ s4 F( y6 U( M P
{
7 Y B: h; M7 T8 R2 P
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
) `% N0 ~/ X# Y( F8 Z- B" f x
CRect rect = pWndCtrl->rect;
+ I1 {/ {0 X! v/ w% F: x
if( rect && rect.PtInRect( point ) )
) k$ l1 d4 o3 ^4 s7 p: K* s
{
- \: F4 D- Y5 `% S/ H: }/ z
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
- u8 `( |1 S, M, d& A* K6 h, A( w8 ^: x
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ u. `' b' ?6 P9 S5 g0 G
{
5 p* @7 b4 t& I
if( m_pItemElem )
; Z8 ?7 M f9 t' J) W' P8 u
{
, `: D9 M, s8 l( u( c
m_pItemElem = NULL;
& Q0 Y/ M* }# ]* _& d
}
) i! o: o. E. i5 O
m_pItemElem = pItemElem;
" F6 \0 z" N9 O0 X
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
" f' E$ U- k a ~0 j
}else{
$ p% j, ^$ B) o w3 a
SetForbid( TRUE );
6 ]; Y2 s2 J0 W. x0 ?8 f2 x u/ Z
}
# z8 C* j0 ]3 d6 J; Q9 q
}else{
1 O8 e4 X: q. i8 E! i4 s
SetForbid( TRUE );
. G! n6 ]' O* r& {+ {
}
3 E6 z N) x( {
return TRUE;
9 m C0 P, M# B" j H
}
4 P- T# W7 y4 V3 Y ?% F
$ y4 E+ j' T1 U2 m* i
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
$ ^$ C8 o9 d/ }* `) o/ o4 |
{
. a6 Q' |6 {1 o9 \
switch( nID )
& E7 k% Z k$ F3 F0 D; `1 ~$ f
{
5 b1 I3 e+ q' Q5 }
case WIDC_BUTTON3:
1 |( p% w) g- p
{
, m! d M) J( }; Q( g
bStart = TRUE;
2 M4 k& O, T! S' b4 p, \' ~
break;
+ w3 k6 G8 f: [' M4 z, {3 M! a
}
8 I' {9 P8 `5 m/ w% u$ s# D7 T \
case WIDC_BUTTON4:
* U7 P. R# G+ ~: ?9 Y
{
, U, q8 F5 w$ h0 ~6 p; G! L4 s( Z
bStart = FALSE;
! J( D$ }) U+ F- m
break;
. s; Z/ F m6 t$ B! B
}
) j( N, }% |# Z, c
}
: A% E" u2 r \$ k9 D
return CWndNeuz::OnChildNotify( message, nID, pLResult );
: A! ~ v- K3 @; v
}
1 d5 s# X7 c2 q5 T( G. A# _
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
; C$ E. K0 M, K6 r1 o& B& h w
{
& j) {1 L" w6 q3 f, z) x
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
$ p5 G2 O5 h }/ T& X/ F
if( bStart || !m_pItemElem )
! H. j7 R, |' N
{
# F& G5 R- Z1 A+ i7 ~& L
pBtn->EnableWindow( FALSE );
: r; J4 c! V2 ^6 b9 Y5 @4 i6 M- v
}else
) C/ E+ d8 ?+ a8 C9 m' I
pBtn->EnableWindow( TRUE );
, N: o+ m+ N* E% Y: I" |
if( m_pTexture )
6 }5 [' A" y1 ]) }
{
* N4 Q& l: j4 p {+ G5 D0 ?$ t$ z
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
2 v8 L" Y- e7 Y5 i% I; d; [
if( wndCtrl && wndCtrl->rect )
& m4 R, i: N1 w
{
& |: ^8 X' S! F9 i B5 e
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
# e7 K( Q; k/ ] e
}
2 N; r) G9 r2 M
}
8 l$ e% X8 S0 y) w
}
* m7 H- w* @' E5 b
" A8 s$ ?8 b9 H: o6 T: L
BOOL CWndAutoFood:
rocess()
1 I5 x4 {; S1 @# G6 C
{
0 w, {0 G' n8 `4 T' i2 d% e( ~- K
if( bStart )
/ ` |8 z9 A7 H! g( _
{
3 M+ w* e X- ?% n
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
5 t1 }& t$ {6 k$ x7 P# p
{
; ^$ z% d. h; @
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
; h d6 D6 A1 K8 ]% L' x, B
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
' ? I: s! I8 j: s
}else{
( a2 O9 V" W- a6 H$ u
bStart = FALSE;
1 R( ~4 Y' e0 G) a; m1 d, a, l
m_pItemElem = NULL;
, a F( X% t7 _7 \7 q4 j2 w
}
- V* e9 w' K7 T6 x, b
}
( O% y+ s5 X9 b; b/ k( ^$ {
return TRUE;
* Y: o, O: Q7 E; _$ P$ Q' r2 `
}
, Y0 ~4 e5 a6 I3 t- s+ `
3 D) b( g3 Q7 v' c9 A& F
登录视频废话:
: h" e8 X7 v3 S2 b% ]: S. V
尾翼:
7 X; I) U' L, }3 t8 n E/ d* V
. j) K0 a" N$ Z" ]* M
代码:
* V8 E1 B8 Q0 _2 J# ?% K9 T% k9 C
+ p; g- ~+ I. l. s
void CWorld::SetLight( BOOL bLight )
0 Z6 S/ B% M" ~7 F8 |
durch
3 @2 o. @/ M# `4 i( c5 _
Code:
6 U* ~ K7 m! p" K$ S
void CWorld::SetLight( BOOL bLight )
! B, K8 w3 \" u% M( a7 o
{
1 C6 L4 m3 S+ `, j" h, U- o7 l
//ACE("SetLight %d \n", bLight);
! Q0 T+ l0 X. K& E
4 L4 f$ U: U6 k' t: O+ o6 `! i
#ifndef __WORLDSERVER
# r% A7 q7 l3 I- @& S5 X
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
8 V0 ~$ T" H, ?& o
CLight* pLight = NULL;
u1 f V% w. k' P$ N0 x) `
! x. F8 E7 L U9 w
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
% R/ p1 O5 y* ~; a
/ R+ | l4 p, E, t: g3 C
pLight = GetLight( "direction" );
. y- `' B9 b e. Q* m
& [ _* K; Y0 c9 b
#if __VER >= 15 // __BS_CHANGING_ENVIR
" q$ C9 G: Z/ Q. B4 v, I
if( g_pPlayer ){
f7 I& \) X( g0 d5 J/ d# T! U
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
; H" O/ v$ u" s8 d
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
^3 } V ^% |% z* s# V0 p/ G: ?
{
/ F8 O, y v9 P1 z$ l0 ^
if( pLight )
& k5 Z$ ~: t: {
{
8 H& K! i6 L7 W& k0 m6 g" v
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
9 I/ I* A; s+ u! ~( ^
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
" x+ L/ U) w ]0 H/ r
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
2 B( D( T' m) B0 J# L
' | a$ F( |, Z. C2 T, F
pLight->Specular.r = 2.0f;
4 F3 T0 z& O4 L/ e6 I- c$ v
pLight->Specular.g = 2.0f;
p1 h: M# f) n3 @
pLight->Specular.b = 2.0f;
P. B6 O- l8 b& d) S: {( p* G
+ M6 h* F G$ i5 V+ ]
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
" m; d( {/ F' ^3 |7 W# G
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
! Y! v2 i0 u0 f; E. N5 C; i
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
7 k8 \$ K4 @2 U2 m: Y
: o, c: ?( \8 W# v m( x
HookUpdateLight( pLight );
# H0 A; M$ X% J* t
, E( O3 e. ~2 C5 }0 U& k) T
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: X0 l T" L* Q- c8 ], _7 R* B
) ^ B5 T8 `! @# d8 t: G8 Q: {
pLight->Diffuse.r *= 1.2f;
0 v& F( F7 l4 g
pLight->Diffuse.g *= 1.2f;
' K# T( ~5 p) z+ X9 l! A
pLight->Diffuse.b *= 1.2f;
- B! c' U# G# i- y. h$ G# I
1 o+ L( |. M" A$ H
pLight->Ambient.r *= 0.8f;
' |7 |) }+ A. K+ A2 z+ i
pLight->Ambient.g *= 0.8f;
4 h' I8 Q9 g9 S+ ?; o1 `4 P
pLight->Ambient.b *= 0.8f;
& y7 U- Q% _* R9 j, v$ J
9 X& C: D4 Z. W" g9 ~; \
memcpy( &m_light, pLight, sizeof( m_light ) );
" ?! Y4 ~+ k& q
: ^$ m3 ^2 b# K9 `
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 Y- q% S" r {, ]
D3DXVec3Normalize(&(vecSun),&(vecSun));
" {/ K/ X/ S; V' y1 J U Q7 J
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 I% K! a+ j( I; Y/ X
pLight->Appear( m_pd3dDevice, TRUE );
$ W+ i& m3 J) p; m
3 f& e3 Z% E, H4 A' {" z' i( C
DWORD dwR, dwG, dwB;
# a) Y, w/ }2 @
dwR = (DWORD)( pLight->Ambient.r * 255 );
" R4 @2 H. a- C2 q& B* Q+ ^& Z
dwG = (DWORD)( pLight->Ambient.g * 255 );
) N8 X: Y9 `6 _" D( u
dwB = (DWORD)( pLight->Ambient.b * 255 );
. Z$ M9 }4 ]* P) p
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
& B- I% k- ^' l9 N4 {9 n8 b
}
& }' C3 e, i2 u
}
1 A" q0 F# z/ q" v9 N9 K! r C+ h0 X
}
3 j& K3 d" n I5 \/ D2 d, ]0 \
else
! Q' b- f9 b: @* X4 D
#endif
* s5 K% K/ E! z& m$ B
) i5 q' `+ m3 `0 j s9 ~3 b& P
if( m_bIsIndoor )
" n, L7 }( w! R' b. z
{
b# [* A6 n) i! C6 g4 X9 b
if( pLight )
& ^! q7 F/ H) E. ~* z
{
0 A3 |* t$ O6 P8 X* y0 Q- v
// à??μ oˉè*
7 a l& I" }* H# B) h
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
; i; Z; B1 c: B. G1 W) ^' ]0 G, A2 d+ Z
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
3 {2 `# `5 _1 m) j. L X( j
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
, g: i2 O' z, K& j8 S' i3 |
7 ^0 u# d$ d7 B2 ?
// oˉè* ??à?
5 Y# V$ V3 u& f! U4 H2 C6 i0 H
pLight->Specular.r = 1.0f;
" U8 ^2 D) P& }5 \+ a5 O
pLight->Specular.g = 1.0f;
/ ^* I! s' n: F, n, ^
pLight->Specular.b = 1.0f;
! ]. X: n- g l2 \1 p
// àü?? oˉè*
# J3 Y* ?, i: l( U. Y& d6 c
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
: P7 @7 s! E [- L& o) j1 [
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
7 ?+ V* `5 C# U
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
1 _1 v/ G: X. }" W0 O
/ i% q5 k( N N: G+ w
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
0 Q3 c N9 l G5 O/ R$ w m9 e
{
9 _2 q2 O) c8 [8 ~7 T+ m
pLight->Diffuse.r *= 0.6f;
7 U2 F+ d* Y% G @5 P* G" m# W
pLight->Diffuse.g *= 0.6f;
: m8 H( o+ V' u
pLight->Diffuse.b *= 0.6f;
, `: \4 H# T: I2 F( o) ~5 A
pLight->Ambient.r *= 0.7f;
9 |) L7 e4 r1 w% ]8 P0 v0 V- D
pLight->Ambient.g *= 0.7f;
: Z; b8 s9 ?0 ?
pLight->Ambient.b *= 0.7f;
% Z* F/ c! K- Z! V. R+ j
}
3 `6 H0 w2 W. R. }; R$ A0 N& c
* J" x5 k' M6 \9 b1 }
#if __VER >= 15 // __BS_CHANGING_ENVIR
' A; Q9 j3 q+ R- \: V
if( g_pPlayer )
/ G5 |* r* O9 J0 |0 H
HookUpdateLight( pLight );
9 \0 f4 f' d( b' H, C4 o9 `1 {! j2 ?
#endif
, ~. `. j5 a0 D& D/ r6 x
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) ^/ v2 d6 O0 `" ^4 z3 {% ]
9 d# B+ Z6 U+ ]6 |( A
pLight->Diffuse.r += 0.1f;
1 k. ]) F- d! `: x" n! m3 W
pLight->Diffuse.g += 0.1f;
! j, p4 Q0 i1 \, }$ g, l3 D
pLight->Diffuse.b += 0.1f;
7 o% Z6 `# j$ ~
// oˉè* ??à?
J% s' b( R* N+ s: {! r7 r) c0 S
pLight->Specular.r = 2.0f;
0 n: {( _* M C2 f' w" v& ] `$ i
pLight->Specular.g = 2.0f;
+ e+ b8 y# Q9 r
pLight->Specular.b = 2.0f;
6 ~9 }* |& ^5 L. ]
// á?oˉ
4 S' Y v- s% }' ^( ^
pLight->Ambient.r *= 0.9f;
; M3 q$ g4 |# v! J
pLight->Ambient.g *= 0.9f;
; ?2 o$ d! q3 n' V6 ^* M! f
pLight->Ambient.b *= 0.9f;
( }. a" Y3 o! Z2 ?. X! O
% Z( \4 _0 e- a3 _5 }( L2 }
memcpy( &m_light, pLight, sizeof( m_light ) );
1 @& i. o" C& k; V; B& M/ G: k
% e2 |. B$ {/ {) u' _; d
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
: R4 k# j) r" B! [0 V
pLight->Appear( m_pd3dDevice, TRUE );
9 U' h0 O" j' D1 {
g7 N( [0 m, d1 L3 J
DWORD dwR, dwG, dwB;
2 Q0 |2 ]% n6 x0 d3 y! u
dwR = (DWORD)( pLight->Ambient.r * 255 );
/ E7 V; p/ A( Y; t0 p2 ] P
dwG = (DWORD)( pLight->Ambient.g * 255 );
: }7 }, V1 A+ Y! J* g* f, X
dwB = (DWORD)( pLight->Ambient.b * 255 );
' r4 h( r& G" _$ T1 `0 M
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 T' n# r% ~! e8 i/ m% `
}
# r, J. Z( D. z# X% Y
}
' m1 N; V0 f: s2 Y
else
5 D# D" f4 K* L! U: O$ b
{
" Z" c6 [1 p3 P# m2 X- z9 F/ o
if( pLight )
! Q( @2 T: X" m# S
{
& C4 U. Q+ ^$ L1 x
* d' j, x1 A8 [
int nHour = 8, nMin = 0;
+ F) k0 d5 I, k2 ^2 O# h6 f0 A
#ifdef __CLIENT
O1 ~1 r" G1 g+ c6 g
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
) } d5 n8 n' }( d$ @) |5 M
nHour = g_GameTimer.m_nHour;
3 u% h6 f3 Z, f4 T D
nMin = g_GameTimer.m_nMin ;
4 O0 x. W: a5 I
#else
# P( O* Q& [& m% Q' k! V
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
: T9 `3 |* c% b3 s6 \3 Q
if( m_nLightType == 1 )
$ t5 c" F k9 a! H. Q( u% L
nHour = m_nLightHour;
+ {7 G N3 G4 Q, ~: B) m
#endif
- F0 o+ I7 }# f; w) n* v, \3 B6 N
nHour--;
k; Y6 l u3 z7 C" J: i/ U- N" t: _
if( nHour < 0 ) nHour = 0;
1 |7 z7 V- E4 T$ Z
if( nHour > 23 ) nHour = 23;
* Z* a( U' b) [5 O: @0 i: H
( h7 _! U! u! a& \) @" B, y* M
//if( m_bFixedHour )
z1 l4 G m8 ^0 M
// nHour = m_nFixedHour, nMin = 0;
. d+ {- \0 e. W- [ P
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
* q, M9 |3 E M4 _, G. X* Z' F
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
+ _: M8 `- {0 B
% ~, ?, T& o8 m. ~! X' _9 m7 e) B+ C
//m_lightColor = lightColorPrv;
$ K# ?1 C( A' K* a- \2 T
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
% x3 X1 }2 B* ?7 g
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
: r% u5 z6 ]/ O: K
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
+ o6 f Q# G. C2 Z/ |' M
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
$ Q) N& @. l: P4 I6 V
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
! h0 Z/ p3 g" o l+ A# W. ?
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
; p. e5 G9 g3 \$ O$ ]( V* u/ A
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
2 a2 T( o! R; g! P0 y
' r9 V" Q! D" O! o+ e
// à??μ oˉè*
1 y, h8 N2 R8 E7 h$ |
pLight->Diffuse.r = lightColorPrv.r1;
0 r' H, ?+ X) a1 B$ p1 d
pLight->Diffuse.g = lightColorPrv.g1;
+ I7 l- F! I) R6 C* X( ^
pLight->Diffuse.b = lightColorPrv.b1;
: J( f! m1 @ q, P& j" A
// oˉè* ??à?
3 y( s& G' g2 A
pLight->Specular.r = 1.0f;
( H! C& a. C: X4 x' G
pLight->Specular.g = 1.0f;
Q4 ?- H+ j2 O( s* C- z
pLight->Specular.b = 1.0f;
% L. W' _. ^- e
// àü?? oˉè*
0 Q6 L5 k( K9 D5 Z
pLight->Ambient.r = lightColorPrv.r2;
& e6 _5 p: ]1 d0 ^3 D* S- @
pLight->Ambient.g = lightColorPrv.g2;
5 _7 J5 Q. _; ^: o" d
pLight->Ambient.b = lightColorPrv.b2;
% B( \! n$ p9 c, {/ l
# I9 I# L. T5 U6 i
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' B) {5 h0 _! Y- s' j/ E
{
4 L/ n& k! \4 `, L; ]9 d
pLight->Diffuse.r *= 0.6f;
6 D2 j5 {$ R" x: g
pLight->Diffuse.g *= 0.6f;
- x; a7 j: V5 y- y8 n
pLight->Diffuse.b *= 0.6f;
8 X' b. \. \4 s1 ]* x5 X
pLight->Ambient.r *= 0.7f;
5 u5 S- f2 p5 h
pLight->Ambient.g *= 0.7f;
8 e. N2 a+ W$ K
pLight->Ambient.b *= 0.7f;
& {( J c M1 {
}
$ w0 H! t$ x ]
! ?7 u' m* X( G; B$ Q
#if __VER >= 15 // __BS_CHANGING_ENVIR
; M5 Q% j2 \& Z: n8 x
if( g_pPlayer )
" g0 y/ s; q, ?* ?
HookUpdateLight( pLight );
& s- k# ~) K$ i1 c
#endif
0 e- Y. M/ g4 R" B l
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 F3 K( v. P3 \% U7 K1 f
4 t" e# c- d; n9 B5 L
#ifdef __YENV
, R2 E0 w! X1 p6 @4 o' j
pLight->Diffuse.r *= 1.1f;
3 m5 n5 f2 Z3 C6 Z3 t: O0 g2 }4 m
pLight->Diffuse.g *= 1.1f;
( P- z+ y z+ q L
pLight->Diffuse.b *= 1.1f;
$ b9 @2 [( t( i7 t
// oˉè* ??à?
$ _: z0 b2 P. R# x7 g$ g% ] B
pLight->Specular.r = 2.0f;
* h# f G v- F; l; ^; ~' U' N9 x
pLight->Specular.g = 2.0f;
1 X6 E: E/ w1 h" M9 `" k4 g7 }( D
pLight->Specular.b = 2.0f;
4 ]) S' n9 C& d3 A; X7 ^5 m
// á?oˉ
, c% {5 Z: U$ S
pLight->Ambient.r *= 1.0f;
+ I% a+ b2 }$ } s: q! Y
pLight->Ambient.g *= 1.0f;
# y1 E9 J* b7 r$ i9 }/ {! D
pLight->Ambient.b *= 1.0f;
- z" o: ?4 N" P
#else //__YENV
! _- y3 r1 F- D+ v& ]) P
pLight->Diffuse.r *= 1.1f;
) H( C6 C3 P2 h4 b. g
pLight->Diffuse.g *= 1.1f;
* k. {, ?6 b: ~. x, V
pLight->Diffuse.b *= 1.1f;
, {$ l- ]7 D, W
// oˉè* ??à?
, H; Q4 o% K; G$ D$ R
pLight->Specular.r = 2.0f;
% @+ L+ o8 D& I3 ]$ s1 w5 V
pLight->Specular.g = 2.0f;
3 \( J, J) m/ [8 i& ?
pLight->Specular.b = 2.0f;
- Z4 l1 U2 ~% D/ g& I& w) c- G7 E
// á?oˉ
1 w9 y, Y; A! g+ @
pLight->Ambient.r *= 0.9f;
% C8 u: ]2 P5 m% [9 ^. @3 }; o
pLight->Ambient.g *= 0.9f;
& p! x- S- E# i
pLight->Ambient.b *= 0.9f;
3 }' z) {+ F* V- E3 C
#endif //__YENV
+ O) d# ~, p- @$ x2 Y
) N: v+ O& E, [4 y9 Y. g/ I' Y% P
memcpy( &m_light, pLight, sizeof( m_light ) );
; @! s* {0 j9 V4 n0 d
: x4 u5 c, {) o, b
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
$ w/ G6 Y3 v! z' D2 n9 u
D3DXMATRIX matTemp;
7 R4 B8 ^2 N0 P* }! J5 B! T! {0 q
static const float CONS_VAL = 3.1415926f / 180.f;
1 {/ r, q' a+ y7 l" }
p! J. `$ H& Q; P L
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
* v0 V4 j& _; A8 c
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
+ G% Q0 i* f" ?8 `4 N$ s
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
3 c1 ~6 v) n9 E
pLight->Appear( m_pd3dDevice, TRUE );
2 x+ M! ~$ L" O) Y
* H- ]4 x# N. _
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
, w+ n/ p S7 E0 x8 F0 I' H+ p
// D3DXVec3Normalize(&(vecSun),&(vecSun));
; \. n: e5 S& _1 x+ |, H4 L
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: d7 C- }9 b: y( X
7 f# d0 G1 R1 Z
DWORD dwR, dwG, dwB;
. v2 f/ a- E- {6 Q
dwR = (DWORD)( pLight->Ambient.r * 255 );
& ]4 V+ b8 Z; R" \) D
dwG = (DWORD)( pLight->Ambient.g * 255 );
( }- `" S2 t3 I, ~
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ e3 [2 A& O; ^% r, F
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 \ Y2 R2 j* u2 Z* I3 Z' F7 k* N
}
- X4 C9 Q( W# g! g \
}
$ J9 P8 d" V9 J k
: I9 N6 C9 y9 k6 t& t
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
9 h' E3 L2 N/ O( Z2 m
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) );
- R( V) D: W7 b0 y4 Q9 z
::SetLight( bLight );
1 u! s) Y) L8 E( y; Z$ r$ t! Q. M
! J" J# W" n+ L" X. m0 P
// ±ao? ?D?í???ó á¤à?
+ N6 V: Z/ Z6 x: p2 P
m_pd3dDevice->SetMaterial( &m_baseMaterial );
/ c y( W7 ?" s6 n1 l; ~( n5 V
. \ G" Q. a1 ?9 d$ d B0 @( w
#endif // not WORLDSERVER
4 R, f9 _, @4 p, t
}
7 }6 u) d+ f) |( O
并更换
6 I$ S; |* e; D- Q4 F& F7 A7 }6 Z
Code:
+ n- b8 x# c5 F" R
__FLYFF_INITPAGE_EXT
3 v* V6 Q5 p, Q# ~2 x1 M- Z
定义
; J2 U, M; a/ s t1 G6 Q
; p% X1 L- D2 r; ^( [1 Z9 [
4 A5 T5 p4 F' e! V8 a+ C3 N
1 o# N6 w% ^1 O4 @/ C! _5 N
$ Z/ s- { N/ A3 A/ c
现在终于删除我的狗屁加速...
% x9 T7 l; h3 ~ ^! D' c
8 k# ?4 F, r$ S' j# Z
/ R9 A6 G0 _' Q- [4 e; J6 ~
1 @1 S- k5 Q" {% j' ^0 y% f2 P
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2