飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
% r5 Y7 j$ O$ |
尾翼:
. `, c/ Y. |& I t4 x5 F" f, j
3 B) X. B* h! i& C0 a; O
代码:
* S' U! K0 r. K. c) P( c
CWndAutoFood::CWndAutoFood()
$ [. ^0 C6 h- q, O+ j
{
' b* x) p! K, x: w2 J
m_pItemElem = NULL;
3 O1 D% F3 a& f" e2 d
m_pTexture = NULL;
0 P; I9 Z; K# b; o
bStart = FALSE;
$ r) I, W' @6 e! \, m3 M
}
: ?3 P# r# }' a+ C/ n
; C7 J; w# x: p8 u5 V
CWndAutoFood::~CWndAutoFood()
4 H) M7 b/ O: N" I r$ F
{
) I4 [. s# [' ^: {$ O. f$ C
AfxMessageBox( "AutoFood ist gestorben
" );
' U0 @" ~: F; w3 q5 U
}
9 W$ G9 q) `" c I8 K
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
- k& l$ h& D4 Q i8 k
{
7 \. n/ Z4 z5 o' v0 o
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
$ {4 u7 [8 [% V5 z! J
}
8 `. Z {, T0 `9 x, |
( e$ |0 c3 r% t' A& v9 V
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
$ G9 B* a: X' m6 S. Y2 f
{
8 t7 [9 n) A) I5 f
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ Z% c, j, [# M/ J2 p
CRect rect = pWndCtrl->rect;
" ~5 r0 O* Z. a! M* q
if( rect && rect.PtInRect( point ) )
; |+ j* x; Z% y4 }# b
{
3 A, c/ D4 P/ \
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
* ?; i/ t6 C% ]- r# k1 o+ O& x* \
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
+ i7 x5 F0 p- z
{
; i5 n' r* ^, O$ e& ]2 P
if( m_pItemElem )
5 ?0 H# B% ^- V/ b6 @% ~
{
4 S, ~2 M9 \8 i) }
m_pItemElem = NULL;
: P7 K( J+ N5 G! {/ p
}
" t6 r4 M! g) U2 v, c: i
m_pItemElem = pItemElem;
. `" r3 S/ F3 i3 [8 h! {
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
/ [+ ] y/ r K0 M6 g% x
}else{
2 u) V- q7 O+ r9 n
SetForbid( TRUE );
' e% [; \1 h; a) R4 p R5 n
}
6 k$ q! @. s* t$ j3 D
}else{
! L. a# \# `- k Z
SetForbid( TRUE );
n6 O1 v, j! c" [
}
) o# h" `; q$ i4 s4 @2 k+ t/ W1 n+ ^
return TRUE;
: ?5 o Y Z% y' c
}
& Z- I- D* U3 b0 v$ g
* u6 c' F/ G$ ^' j) a
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
7 c3 |$ I5 V8 j# b+ c& j8 Q! _
{
& v4 \2 D A0 L
switch( nID )
- x/ z* Z9 n# I w7 N
{
* t9 D5 _* b5 I0 F6 L' b" s- d
case WIDC_BUTTON3:
+ i& y$ I c) b+ `
{
& v" y) y! \# [8 Q) n
bStart = TRUE;
- [( J% q; N7 m
break;
9 e& s- I$ q* N( r B7 ?$ f8 H
}
; X( J) J2 V% ]+ v6 b2 P) C! _+ v
case WIDC_BUTTON4:
* i8 W! Y. d2 W% p( |
{
2 I+ d( ?7 ]# R" G! A+ D
bStart = FALSE;
9 }& X% ?% C9 |. i
break;
9 K& Q0 r' O4 y% @3 m9 g
}
6 p) C$ J" B) u
}
' D* C. x- Y4 s; S: b# w
return CWndNeuz::OnChildNotify( message, nID, pLResult );
9 M \+ L/ D2 w y, f# w9 j
}
4 I4 I2 W: [9 H$ X! J& j; U3 l/ T
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
9 Y: |9 t1 M2 H( b
{
1 y+ O1 ?0 `% _+ n9 R
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
$ E$ r3 v- K* j$ C0 H& G- T
if( bStart || !m_pItemElem )
& L9 \% E% A g$ M9 I _
{
9 W% c/ m6 b! ?
pBtn->EnableWindow( FALSE );
9 U9 _: V% }& Q' i- p9 L
}else
3 y" Y2 m; c( {) f& D
pBtn->EnableWindow( TRUE );
9 t/ }( l9 B( T# k4 v
if( m_pTexture )
% P9 ^+ `- H! \ u4 Y$ K. @
{
/ j6 Y- \/ ]" Z- J; ?7 z
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' l+ W- M; z$ S9 q7 h; ] J
if( wndCtrl && wndCtrl->rect )
0 r, e1 p) F4 d5 ?1 t
{
& s$ P& V) R, l. d" o0 {* s# x
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
) S9 ] `; I# F$ D
}
7 b8 }0 w2 h! ^9 k4 J" `
}
) e, \: X1 X! g* E2 J' H% H
}
: a6 [ a0 P. ~ E6 [9 m
8 s- ^7 `5 `0 L: h2 G" D
BOOL CWndAutoFood:
rocess()
# F: N& [ d2 s2 H
{
5 }) w# I8 \! u3 F# B' L- x$ k
if( bStart )
9 A: E; y' d5 }
{
( ]5 k% x! E) E& M5 K3 _
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
9 w6 S# {- Q' U" x
{
/ h! {% H! n3 X1 u$ h( A
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
, P. T- M1 i$ e' |7 x& S
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
3 Y" I/ E4 M: [2 N2 E+ p* _
}else{
4 k3 K# A2 l. ~. W# ?4 a
bStart = FALSE;
' O @. ?: M8 ~8 d, p
m_pItemElem = NULL;
! _9 z* S3 O1 M# P4 d
}
4 s0 \: |$ O) }$ {7 e
}
# a, g6 H: V% e- C: t
return TRUE;
- u! N9 m/ W- S( D4 K; a
}
% X. [) Q* n4 v5 \, w# j6 [
$ R0 X. s' l4 P( `! ]4 z6 v, D! h- L' v; q
登录视频废话:
7 P- N% N+ F3 B" g
尾翼:
- O$ S$ G+ v/ ~) L# S
$ k9 g. h6 a8 A9 Y: k @
代码:
0 J+ P, t, m6 s' {. s
6 c0 F4 U0 u+ R2 m, c, q% _1 q
void CWorld::SetLight( BOOL bLight )
$ `3 f6 q3 N G. n4 H
durch
" N1 t1 \$ r' D& f! u; x# t
Code:
1 s3 x" o) A3 t. e
void CWorld::SetLight( BOOL bLight )
$ f0 O# |+ |; ?
{
" K. E2 g3 P8 k5 r' @- @
//ACE("SetLight %d \n", bLight);
, }3 l: t+ o! X: x8 B
) z# m7 B0 `) K) a3 u
#ifndef __WORLDSERVER
, s" o) s7 X# g' n7 r+ N" ~9 p2 O: i
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
2 X: _, F( t! A3 \& C
CLight* pLight = NULL;
0 e, `% W, `, `+ q
+ D3 c- ?- @0 p% a. Z" V( T
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
; @3 T' x3 B( s; Y/ V7 `
5 ]1 D( ~% F) v) t9 V) ~( \
pLight = GetLight( "direction" );
& X5 f$ r+ A" r
2 N0 d7 X& R8 _4 `
#if __VER >= 15 // __BS_CHANGING_ENVIR
/ I" C# Q. I# p. K: y
if( g_pPlayer ){
8 G) i( b" p. W
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
, H6 t5 _6 R$ g; S* ?' Z: z9 P8 ]
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
+ U+ B! }/ e! C. O9 R- e1 @& ^
{
9 t+ \. H) e2 v9 M2 a$ L( x: j
if( pLight )
* o! O6 C7 I% p7 @# _. p8 B5 l8 \
{
- w/ |& f2 s/ H: q' _
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
: b" P: R. O' p3 }+ b3 F* s, G" x
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
# X+ V4 {3 U+ I6 \0 d+ z P6 X% e1 Z
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
; _6 Q: G3 ?0 ]0 M v0 f
d( p3 e& z3 f% o. Z& e6 C2 y# m
pLight->Specular.r = 2.0f;
1 u4 X# p; k- L+ [2 k7 g4 ~2 j
pLight->Specular.g = 2.0f;
+ h/ n9 F/ k" o H' W& O! K& e
pLight->Specular.b = 2.0f;
2 W' E ?! O6 e" t J8 R2 a! n
5 p8 c' _: V$ c! E
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
5 a$ D4 Z# S3 H: D4 W9 ?3 a$ y
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
. l# g, [1 o% q' Q5 _9 C4 v% i
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
3 t7 h; Q& \9 z; V# f, R4 s
, c+ V: s( q7 q. ^4 x
HookUpdateLight( pLight );
2 l6 U9 j8 O; ~: y
9 f% i$ D8 i( I8 }8 @" m1 s
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 ]' N9 z+ e( W. Q( E1 c% D, u1 P
6 W$ k! f9 j) {7 ~; q0 i
pLight->Diffuse.r *= 1.2f;
: O$ r4 e7 Q8 G$ J* _
pLight->Diffuse.g *= 1.2f;
& _: C, t1 B( o, K9 z! X* O, y
pLight->Diffuse.b *= 1.2f;
' e# w6 i r2 ^# q: C
; v) g( `2 n3 {8 d) [
pLight->Ambient.r *= 0.8f;
8 a# U- q! o0 m: x
pLight->Ambient.g *= 0.8f;
9 ]1 c! G) e4 X
pLight->Ambient.b *= 0.8f;
9 R: l) J5 X! n5 Z9 X8 s2 R
: q6 V0 l+ c5 O9 ^% S7 Y( G
memcpy( &m_light, pLight, sizeof( m_light ) );
& o! u* z( R' k# v
* z6 }% w& u6 s5 } E
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
+ [) c4 R2 \7 U# C1 {
D3DXVec3Normalize(&(vecSun),&(vecSun));
& @' _0 M$ `! c! |4 `8 y: G8 Y
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, f$ K" P0 q* K7 k+ E' f
pLight->Appear( m_pd3dDevice, TRUE );
/ J+ C) ]! @! j6 d2 g F8 j" y Y
X! y0 {* F8 Q# p
DWORD dwR, dwG, dwB;
% ^9 {4 [4 _3 G
dwR = (DWORD)( pLight->Ambient.r * 255 );
) r5 b+ ?9 u. W9 [' t
dwG = (DWORD)( pLight->Ambient.g * 255 );
_' F- S O1 g. d
dwB = (DWORD)( pLight->Ambient.b * 255 );
~9 O5 B. g/ O8 x$ l
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' t* C2 C: N3 X) g
}
6 n& |/ W' N, |3 t8 C, b. E
}
% e; R- l; [1 C" ` j6 `5 M
}
) R9 F* x# m& X' m2 v
else
" }' C0 A& L; t4 B+ W; {
#endif
1 i9 R# y8 X; `0 S( O* h7 Z
6 e6 v1 `1 s, }9 J8 O
if( m_bIsIndoor )
$ G3 \' b' h# N; H
{
9 X8 u9 \4 i: R9 M9 O
if( pLight )
1 D. O" d' Z D: b0 ?
{
; @) _/ e8 j! w" j" Y0 a+ \
// à??μ oˉè*
; n. f/ l- I/ x1 Z. m5 ~6 ]
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
: N c+ l* B4 j) Z8 ?) `
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
& A" X7 @$ K& B8 N x
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
& L: R8 `6 s- O0 ^' D2 U
$ W7 @8 z4 C; D
// oˉè* ??à?
$ q% x, `" T5 J% R: x8 C q
pLight->Specular.r = 1.0f;
; J# H& O( q# I+ q' b
pLight->Specular.g = 1.0f;
3 p, P( j$ Z9 o3 r
pLight->Specular.b = 1.0f;
/ F9 U2 |7 f d; ]
// àü?? oˉè*
& _; p2 M2 C0 T5 M: s
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
: k7 @) N3 _" s8 }1 i( i
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
: }& X- w+ ^6 ?4 h- I
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
: X% c& i u" I6 m" H( f d! h% H
* S! b! M; b. O4 P: r
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' P C4 ^( ]0 `1 M
{
/ X( u! _' q2 p1 u, P' O5 ^
pLight->Diffuse.r *= 0.6f;
# K1 `8 Z) D5 g9 C. |$ p
pLight->Diffuse.g *= 0.6f;
9 m1 b6 ~ S, v+ p& K+ m
pLight->Diffuse.b *= 0.6f;
. G' W) B6 E; Y- ?$ M0 H4 \ A
pLight->Ambient.r *= 0.7f;
+ h7 Y/ |3 b a- x
pLight->Ambient.g *= 0.7f;
5 b1 |5 \, S4 u" S" y, x+ ~# i
pLight->Ambient.b *= 0.7f;
2 s6 \1 w2 b' U
}
. l, P6 L5 o! s
$ t+ i) n. T& }" m. |0 ]5 v
#if __VER >= 15 // __BS_CHANGING_ENVIR
" e0 ]" O4 ^% [
if( g_pPlayer )
& Y) D; z) L( R" ^- D- X- F* V
HookUpdateLight( pLight );
1 v" W9 ?3 d# T5 L6 V
#endif
5 ]9 T K# r8 Q5 R# m
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; _8 V2 ]$ O, ` l* U
`) w& p; O2 F( v$ P+ _$ H& L
pLight->Diffuse.r += 0.1f;
0 y. t; J5 f0 K6 p7 |
pLight->Diffuse.g += 0.1f;
0 v- v" Y4 D9 q
pLight->Diffuse.b += 0.1f;
7 }( t" B- n2 a" v$ g* n
// oˉè* ??à?
2 R l2 b# o9 N; R6 ?
pLight->Specular.r = 2.0f;
% L9 ]) x+ A8 z4 F# ?# j+ Q
pLight->Specular.g = 2.0f;
P; t- G) x6 ^' g2 ?
pLight->Specular.b = 2.0f;
K' a% |( O% \4 J& k
// á?oˉ
% X. Z9 |: N9 T R0 d( \) }& X
pLight->Ambient.r *= 0.9f;
" V! q5 V- k# m# ?& _
pLight->Ambient.g *= 0.9f;
" ~- @$ s( \; g- R
pLight->Ambient.b *= 0.9f;
% y/ m- f+ r& v3 s! B8 b
7 F% N' j$ r: I% l' z- S
memcpy( &m_light, pLight, sizeof( m_light ) );
8 o/ X9 |6 v+ O' E5 @6 {
* H: M8 q) H# m* k* g
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
3 S( a9 D9 }$ e- j. ?# b8 |
pLight->Appear( m_pd3dDevice, TRUE );
# S; H4 q+ V) A2 j+ I
4 a" R" U% B2 \
DWORD dwR, dwG, dwB;
% H! t! I8 d4 a% y. L5 A
dwR = (DWORD)( pLight->Ambient.r * 255 );
$ v) }* O/ k) A" N, G, U
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 [1 V8 D5 C* k! O$ [( r ]
dwB = (DWORD)( pLight->Ambient.b * 255 );
1 v# O6 I, v$ c% |1 X+ D* Y! v
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' ?' l7 P) k/ C' o( y
}
5 @( w6 J" I/ B6 u+ y
}
7 B! y6 s9 ?3 U0 O( m# ]7 e: G( y; p
else
! O# q* o& ]+ }* b5 P' @
{
) w' t; c- J+ a8 t& @
if( pLight )
@7 D7 D8 X9 j2 l5 i
{
$ L- [* f, D; U
( [. @5 u5 a( D3 h8 N. f0 u
int nHour = 8, nMin = 0;
! u8 A3 l& k8 H+ P
#ifdef __CLIENT
- t& Z1 \* N. {6 W0 c5 d
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
' M0 t. E, m: n$ {; |5 b$ k$ ]1 @ W. D
nHour = g_GameTimer.m_nHour;
& t- q6 D6 S" q9 V- B* M: z
nMin = g_GameTimer.m_nMin ;
, L0 Q1 [3 n, m+ v, Y; i
#else
" L" y% _* p% `1 H3 p* ]
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
, h! ~( g7 y# [6 Z, ^5 g, {0 D0 n
if( m_nLightType == 1 )
1 t/ D7 N% Y$ y; T/ ~- m
nHour = m_nLightHour;
* a/ {; |7 A6 R, ?
#endif
D$ n. K/ X+ V3 O
nHour--;
% u5 d5 ^9 C' t6 j" e
if( nHour < 0 ) nHour = 0;
. m3 K8 B+ h( U# @7 ]/ r
if( nHour > 23 ) nHour = 23;
+ E* D5 o- y. q; `4 |
& Z7 u( r0 \, N) J$ o$ r
//if( m_bFixedHour )
& ~9 e' q4 x2 C+ ?4 ?% ~
// nHour = m_nFixedHour, nMin = 0;
1 Y3 c1 _0 R) m% Y J+ |5 y
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
0 H5 f* b4 N8 B n
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
( ^; `7 m/ Q ^8 @. K+ `- [$ U& o
& I! d& F) C: h1 T% a
//m_lightColor = lightColorPrv;
4 b& L- t" t- Z. U: a3 f+ a) G
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
- X* a# R% T" G0 @
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
! ~4 @% B& G, y ?. a
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
" J4 M I/ \( [% x1 w5 f3 U! e. X
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
& ~& l8 K+ q9 r) H: O
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
) P1 H$ k6 c" \6 y5 m
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
" V8 v1 S, f8 |% X+ t7 A
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
" Z! @& [! W& i- `3 p; y$ Y
& G$ I: u. H& p4 M
// à??μ oˉè*
6 O, b: q& @2 l1 T) V2 F
pLight->Diffuse.r = lightColorPrv.r1;
) R, b) e/ Q9 a4 h Y! j
pLight->Diffuse.g = lightColorPrv.g1;
; Z2 p! _& o* \( `; L" i; w: u
pLight->Diffuse.b = lightColorPrv.b1;
' i# j1 y- c9 M, Z( K
// oˉè* ??à?
- G# [! t9 V G' L$ }* a
pLight->Specular.r = 1.0f;
( R- {( ?) A% ` s6 |( f* o/ J
pLight->Specular.g = 1.0f;
6 P# v+ R) }1 r! |) K
pLight->Specular.b = 1.0f;
0 l( a% s. M& v# m
// àü?? oˉè*
8 \! I3 l2 _: l0 I! |5 u
pLight->Ambient.r = lightColorPrv.r2;
- C' f3 i9 h, Z
pLight->Ambient.g = lightColorPrv.g2;
( t! l/ f' X8 q( t) W$ q9 z
pLight->Ambient.b = lightColorPrv.b2;
, ^. ?+ f( D9 E
b8 s* H, k0 l2 t) D7 ^: ^& p
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 j/ I# W7 h/ z- L& R6 m& H7 w& J' z
{
: ? I" T6 h! O, L
pLight->Diffuse.r *= 0.6f;
S, s" z/ T3 t' y7 S7 Y. e
pLight->Diffuse.g *= 0.6f;
6 W' F* _6 j$ n- H
pLight->Diffuse.b *= 0.6f;
3 [ w8 R" D8 \5 D7 d! z
pLight->Ambient.r *= 0.7f;
4 X, D+ a. c8 a. z' G0 s' q- F
pLight->Ambient.g *= 0.7f;
+ _! x' N! L5 F+ b6 S
pLight->Ambient.b *= 0.7f;
# y) x% y* _1 I6 C6 ?8 y* U
}
$ e `1 P# ?: l% N6 w
7 y' B* f" ~8 M7 y1 ]
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 |0 g# D- q- v$ L3 u `
if( g_pPlayer )
4 Q- E* o {" e3 m$ V
HookUpdateLight( pLight );
q1 a. d' c& p5 A6 |, e$ O
#endif
4 x" w5 |- Z0 P0 d4 R& [$ M q3 K' C
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
( T V- j) D* B& Z
9 N8 c1 J, X) J" h- L' L
#ifdef __YENV
; D! t1 _# i% \
pLight->Diffuse.r *= 1.1f;
1 |" B; D6 H5 n
pLight->Diffuse.g *= 1.1f;
% c+ D4 P7 o- U) y
pLight->Diffuse.b *= 1.1f;
1 S& z. ?& ]0 V6 |- h
// oˉè* ??à?
1 g5 `) Q& @2 D J% R
pLight->Specular.r = 2.0f;
& j; C) _& m/ q% ]! i
pLight->Specular.g = 2.0f;
7 R. g$ O, o, T' J5 f' [, ~* k- D. ?
pLight->Specular.b = 2.0f;
, l1 v, B( b/ R1 Z& z; x/ Q
// á?oˉ
3 ~! R' p5 R1 ^! A5 R5 D1 p7 ~
pLight->Ambient.r *= 1.0f;
9 I( f0 P9 U8 W+ ?: R( n4 x: l
pLight->Ambient.g *= 1.0f;
. }5 v" e. E3 n
pLight->Ambient.b *= 1.0f;
/ B F% Q( _; l
#else //__YENV
( b2 ^: X3 V( T. b
pLight->Diffuse.r *= 1.1f;
. ~3 k: W# }/ W3 l3 P. k, c
pLight->Diffuse.g *= 1.1f;
' C/ _. b3 v( m: b6 m
pLight->Diffuse.b *= 1.1f;
8 M6 [3 ] z% k, W G
// oˉè* ??à?
: P4 [# Q1 N: Y ]: X- [
pLight->Specular.r = 2.0f;
' c6 Q: v4 v/ s: i. j
pLight->Specular.g = 2.0f;
( y/ @5 g6 \5 L( x# s* R
pLight->Specular.b = 2.0f;
, y! A7 V# g+ q! w4 I
// á?oˉ
, c% k$ w5 M7 v% b ~) L
pLight->Ambient.r *= 0.9f;
3 ?$ a3 j1 e% J/ V
pLight->Ambient.g *= 0.9f;
# m# J7 W5 R3 v- c6 F e
pLight->Ambient.b *= 0.9f;
# G$ q8 h' _6 d& E' n
#endif //__YENV
0 M2 t9 v: H2 Q3 x' r$ D# d
% H$ H; O' h8 _ V
memcpy( &m_light, pLight, sizeof( m_light ) );
6 A5 u' P# W' A" i
7 \9 I$ R! |6 l4 j
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
) _5 Z+ t+ H, q2 V6 \
D3DXMATRIX matTemp;
/ v' V' L8 p) @. U/ O6 v
static const float CONS_VAL = 3.1415926f / 180.f;
7 ]' A" t/ d7 L' L( {6 Q6 i
! ~, v; k, T3 U( x. ~. o+ j
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# j& _* v% I2 q# P
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
" X0 j( z. U+ o1 o. {( H4 j
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
! R* X: Y* ]2 h! s' O
pLight->Appear( m_pd3dDevice, TRUE );
: L9 X$ X# z& y u
& ], ?( j7 ^: ]2 A
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) A9 A( {$ e% [& c. x. ]2 K
// D3DXVec3Normalize(&(vecSun),&(vecSun));
* R4 S" t& s/ H' U; I! ~
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% H; L" w( @0 p' B) ]2 Q& H- ]# R
% I- T7 Z4 F' n5 O6 C
DWORD dwR, dwG, dwB;
0 F$ M" R8 G: _& t
dwR = (DWORD)( pLight->Ambient.r * 255 );
u: ?% b2 m- a# I2 a: @" K
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ J% R. R/ `& \# H, B; e( `. g
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ r/ t; ^! L7 f. P# B4 U' ]
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 T, t8 L% Q: c0 j' W& d
}
& z/ S2 W: H0 \) r5 @
}
2 }/ Q3 j5 N# n/ t6 j) [+ I% O
( {9 r# o6 V) ?1 _+ M
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
+ ~5 ]) s: M5 E% J' I
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) );
, L8 L* @9 }2 D0 X: q; N) `" k/ J, V
::SetLight( bLight );
* @/ G, l- c M+ d, T' a. a& d
+ y g6 k. ^7 r% B+ g0 d, |
// ±ao? ?D?í???ó á¤à?
" C, N* U5 F$ ?7 V. U! k
m_pd3dDevice->SetMaterial( &m_baseMaterial );
# O+ w, ~+ W5 C8 Z+ n+ j2 E
$ w' s' i& w l( Q: U
#endif // not WORLDSERVER
6 @. ?7 j1 d4 x+ t
}
_2 I! ^- i; g/ m+ a& B, u- E
并更换
4 U9 M, ~5 o2 A
Code:
6 U+ \. _& k) q {; Z/ g
__FLYFF_INITPAGE_EXT
# ~1 o5 _" T. k
定义
* W) o9 D: b. n
$ W' M7 F/ M7 M" Y8 q
2 d6 k& G' K7 V
) O- b- T i- O( C( d
& Z/ R/ |% D2 }9 h. U- ]( J2 o4 l
现在终于删除我的狗屁加速...
# b/ ^9 w) z4 C; r/ n
3 A& d7 o, Z9 i- E, x
: N7 K' V9 }* X0 ]* E, j
. z" B% m6 x& S9 H, }; x
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2