飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
6 R \4 U! i& Y. Q$ h
尾翼:
5 m7 Y+ T# B5 U' u Z$ B. A" A
% g7 S! v5 t! C8 M- D! z
代码:
8 t+ [+ A, b) T# j+ _1 _
CWndAutoFood::CWndAutoFood()
- b, o1 a9 }. K- ~( ]+ ]1 I. V p
{
, @9 ~8 N3 Y) Y% b6 k7 s8 F4 \+ h
m_pItemElem = NULL;
& A2 V2 K, h' `: [2 S
m_pTexture = NULL;
; W4 j6 ?7 a6 Q" d. t1 D
bStart = FALSE;
% G$ [( c; B b4 N& P5 e1 G
}
$ @ K9 E& t2 h; T. _+ v# t+ W" T' i3 q
8 r8 O( N7 R" I. C# m8 o
CWndAutoFood::~CWndAutoFood()
6 n: l* b0 z. }( |( M. c5 \
{
7 I4 r# f/ v) E% Q% Y
AfxMessageBox( "AutoFood ist gestorben
" );
7 o1 F2 k9 ]9 D. f' n
}
, e) k1 t0 h/ U$ @
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
* [$ @' X1 |5 P+ Q! b1 H. B
{
% C1 c7 V+ `3 v9 Q
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
u: s- A( i3 [& K$ b6 W+ T1 Z; l1 ^( o
}
& f9 ~3 F( t8 c1 N( G# _; V6 u
; C( b! T, @$ P
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
]$ U( H* \" i
{
* R: R' X/ H1 a
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
7 J# m) b$ e# t
CRect rect = pWndCtrl->rect;
# I, J# Q: J1 {9 b
if( rect && rect.PtInRect( point ) )
8 m. V' @9 t6 {1 [* @. Y$ A% Z
{
- R* |1 x3 M& Q3 r
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
$ I" r3 S% [2 q# R; O4 ~
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
- k0 C# r& p0 p. h7 I
{
3 `) i+ p9 r/ W3 w2 H2 F* O
if( m_pItemElem )
3 [% P9 I3 b# r8 e$ m2 e+ a1 I
{
+ Q: D! k1 [' F$ t+ O% n
m_pItemElem = NULL;
3 M# @" f7 E& @1 f
}
# @$ p4 _$ q; @; n3 \
m_pItemElem = pItemElem;
7 z% `, [' S: K( d! q$ h
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
8 v' a- @# H! ]( a$ t/ y% x
}else{
* m) z8 H) B7 P! F) _
SetForbid( TRUE );
0 d; s7 L& Z O; E- S: j! g
}
; c S- g0 z. T; P7 t. _( ~
}else{
* c7 ~& @) X" k1 J6 v0 W- N/ ?, j6 B
SetForbid( TRUE );
* [9 T% w% \5 [1 m+ G
}
F5 r2 `; p7 z( {
return TRUE;
" z+ y6 j2 W3 x# L' n
}
( ^4 A$ D2 R1 v- F% ]
2 {7 P* I" Q& {6 t, G3 ^
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
& U. ^: q7 n7 R" G* \; l5 m
{
' `+ l1 F0 V$ L: [8 L
switch( nID )
; k: r% D. O+ X o! C8 k) t5 U
{
" g$ m3 d% n9 T) K; L F6 }/ V
case WIDC_BUTTON3:
. u, O6 L/ X! d% Q9 }. c3 L
{
2 U& R6 i! B/ D9 a2 d2 _- ^
bStart = TRUE;
+ V1 c: C; X( |8 K8 |, Z) _
break;
. x# v9 i9 f2 h% `( X) W
}
4 ^9 K8 t- H1 E/ o: A& }
case WIDC_BUTTON4:
2 W3 e& O6 O: T/ }- q j4 a
{
; Q) l( _* |1 q: O1 T5 Q
bStart = FALSE;
- K9 E# O" w# s X
break;
) b5 ?0 Q( b n( Y4 D4 S r
}
) l" f5 H e2 h9 X+ h' a/ G4 ?
}
& B8 a7 e) Q: i1 E
return CWndNeuz::OnChildNotify( message, nID, pLResult );
! T! r* H7 {- X/ ~
}
1 B% R) ^5 y: i$ a- g7 m
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
& }$ B6 k4 [# S
{
: d: E9 x7 j3 W L
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
; ]4 R3 j i! k& H
if( bStart || !m_pItemElem )
2 |0 L" A6 f' A0 r q0 Z2 t! ?2 }
{
$ h- b( R3 I4 V
pBtn->EnableWindow( FALSE );
) `! c% H7 h8 C# P+ t0 c1 K
}else
0 G% }* H) E8 G" M+ z' @
pBtn->EnableWindow( TRUE );
3 V9 h& [: A n' u+ W( m+ H9 ]# m
if( m_pTexture )
9 s# d. `1 [( |9 y
{
0 Q9 N( T" } Q$ ]! u% l4 h% P( {
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# L1 X7 T& r; q$ h7 l
if( wndCtrl && wndCtrl->rect )
8 S; \2 P' p7 @$ g9 A; Z
{
4 U, g5 [7 p. s/ i' O# H0 @% T* M
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
; {7 _$ J6 ?& {' j# y( a6 ^; {& D
}
" d: A5 M5 ~3 Z8 w. p, G( s
}
j6 A) r( E- h+ T2 q; F* I e
}
+ u. @6 H" T9 Y
$ _8 W( e! X* T* M, t2 G2 y7 v4 P
BOOL CWndAutoFood:
rocess()
7 Z. K/ n7 y" c0 K0 T9 g$ \ S
{
2 A* q" F) E& l5 q6 j
if( bStart )
/ m4 D& W% j6 Y* @1 U
{
0 d9 F; ?2 P! o4 h; k
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
/ O7 \; O- |& [5 ]: H" @8 I% d
{
& i0 N% J+ ^& \, I$ G/ \
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
X) \8 R) [& g4 d0 W5 p2 ]6 Y
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
4 {1 `+ k5 K# k% m. z
}else{
0 e3 @$ }. p5 `' I( i* b
bStart = FALSE;
) z: ]3 d5 D; T& _1 S( g+ F
m_pItemElem = NULL;
4 E" g) }- ~9 Y9 l7 ]
}
d/ x% D- T" ~4 [& M2 \+ k# ^6 ]3 G
}
+ A0 f6 }/ g6 s+ T6 F/ c8 n' f
return TRUE;
A& f+ d7 ^6 z, q% E; P& k
}
& e% _; C, ]: W0 h- k
/ j5 c F, a& |# A, v6 m7 V
登录视频废话:
& |) a* E0 `) U5 n
尾翼:
& O. f% R1 r. K( T
; p- B/ ?* f8 r3 b/ z
代码:
. l4 @/ ^* c* I, @. ?* }6 A
B7 G9 A+ }) ^; W- [ h$ G9 B
void CWorld::SetLight( BOOL bLight )
/ t) A7 q$ w& B5 N" L
durch
# V! R2 x& m9 ~2 y( |9 n; V* G
Code:
2 D! k" _6 _ z7 B6 n% K
void CWorld::SetLight( BOOL bLight )
3 D. ^( d2 @1 A
{
6 T" ?7 P: D% b0 \& W3 B
//ACE("SetLight %d \n", bLight);
2 m3 t& _# x2 i0 L; z; d: Y' w0 K
4 d% s$ f% ~/ e" m! x
#ifndef __WORLDSERVER
: O! p* P/ f. r
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
" `2 f) z2 ]2 B; u; M/ H1 ]3 V! [
CLight* pLight = NULL;
5 _' e2 m: c% f4 l/ p6 [
" R5 |/ S5 U! v) t/ [0 w
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
; ]2 O! @3 U* Q; f
- x4 D: l2 q! D4 C# Z) P
pLight = GetLight( "direction" );
+ X0 Z( j2 Q/ }0 s' Y: V" o5 e
0 T" W( T. a7 i" l: G+ d
#if __VER >= 15 // __BS_CHANGING_ENVIR
- E" K* x1 ?" c3 ^' g8 U9 z
if( g_pPlayer ){
; k% x: J9 X0 l4 Z2 }5 T
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
7 I- {6 z8 i' C6 f
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
% W/ |4 E& L# j3 I: Q& g
{
) Z$ D/ O$ O5 Q! j
if( pLight )
, [# A6 m5 {( c" |/ o) i% i
{
[' b* M7 n5 c2 r7 t7 O$ W
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
# z/ {* L& Y; f9 A; k @- Y, P8 H0 [
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
4 M: M6 C' U- j8 e3 A
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
* q; L2 ^) @& @/ Q5 ]' a, M
3 P5 ^) Y) W ~, ?2 S& f
pLight->Specular.r = 2.0f;
9 R C# J B- l) m$ t+ @ }
pLight->Specular.g = 2.0f;
/ E3 u) Z7 e2 a) L5 j
pLight->Specular.b = 2.0f;
1 I' y9 o8 z# d( p
1 j( W+ s% x* C5 a4 P8 f O
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
3 r4 N( w' r$ F4 V n( Z/ n" y. M
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
6 I1 \, C( h# Z' {5 q: Y5 [8 {( Z
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 v4 V6 }% t# s2 z
; I6 l- Q: `% m6 Y% R: t* w- ?+ A4 x
HookUpdateLight( pLight );
/ F+ o5 z* R! X& Q; j9 X
( m" t9 U& ~9 v4 c6 f- m" X7 t
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
, w! E' r. p- Q, A! h' e
9 G8 N8 l6 Z( j. j: e9 m
pLight->Diffuse.r *= 1.2f;
+ s- n9 m) ~, F5 N' v6 R4 O- X
pLight->Diffuse.g *= 1.2f;
& H. j; F. ~ o! o
pLight->Diffuse.b *= 1.2f;
1 E% w8 Z2 ~$ K3 q: T" y* a
/ y& U5 l6 X/ j4 s
pLight->Ambient.r *= 0.8f;
; ^) S2 ]+ [9 O: V( q- h
pLight->Ambient.g *= 0.8f;
) g( X' D8 H6 S5 C% x0 P) Z
pLight->Ambient.b *= 0.8f;
" Q) Y* w0 d; J; ?) q' {/ \
" g8 B1 s) B! A
memcpy( &m_light, pLight, sizeof( m_light ) );
* M4 B7 p8 v3 w* S; [
8 X; Z& a% n1 E
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
( ^( [) Z4 s4 Y! ]& B
D3DXVec3Normalize(&(vecSun),&(vecSun));
2 P E+ `# D8 T6 A5 ~9 C7 N
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
* \% m1 r6 z% i8 [, [
pLight->Appear( m_pd3dDevice, TRUE );
4 u) k! h' L9 f6 {
* U- a9 V5 g/ o+ _7 Q0 j
DWORD dwR, dwG, dwB;
) b. N6 Z+ C% G
dwR = (DWORD)( pLight->Ambient.r * 255 );
9 D0 t) C H* D( C+ c
dwG = (DWORD)( pLight->Ambient.g * 255 );
# R, T" { ^8 n1 T7 q
dwB = (DWORD)( pLight->Ambient.b * 255 );
, G8 I( p+ X+ y" M
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" z0 l+ A& ~* t- f" m
}
: o; M2 M$ i; S7 h3 f9 a
}
( m! j! M7 D2 \
}
; _7 d* \& L% O0 o
else
& A8 Q! c! q" X; c
#endif
8 u9 n$ n- }3 n2 o, G: i" @
1 c: p2 g% ~* C. N$ u: F5 l# L
if( m_bIsIndoor )
" l! @& u: v6 `+ }1 }( L
{
4 N4 I* L1 f" l1 z- v* [
if( pLight )
8 D. Q+ R; N6 |* `5 B e+ r4 p2 i F
{
1 M3 Q7 g- h# ~# L
// à??μ oˉè*
5 u1 ?+ E1 U* H
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
# i$ V& b$ Z0 m# [4 v
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
" C: ~/ U8 x$ b' k4 d j
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
! n" S. |; W' C c
" j5 I2 Q; w# S1 i$ f, A
// oˉè* ??à?
9 b D! u8 y- H. Y/ `" C
pLight->Specular.r = 1.0f;
% y2 [8 L5 L" r" @- t$ j
pLight->Specular.g = 1.0f;
t7 [5 X/ I3 p& ?
pLight->Specular.b = 1.0f;
3 n) H( m) [+ D& x
// àü?? oˉè*
9 ^6 Y+ q! k) z2 h3 e
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
$ J4 y4 d f% s: B
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
* X; ~3 O5 i) U7 K8 }
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
/ j" Q) I/ x8 U* M. `% j
' N/ ~0 \( ], ^4 Q8 X3 g
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, b% r$ r+ [4 x* o
{
! q' d+ i; D/ P8 X) ~- I
pLight->Diffuse.r *= 0.6f;
' n0 _; P- d" D: x2 o' i& k
pLight->Diffuse.g *= 0.6f;
+ W! {+ |: g* @( H8 Y0 h
pLight->Diffuse.b *= 0.6f;
6 w" I" W `- Q2 a% {# d
pLight->Ambient.r *= 0.7f;
9 Y3 y4 e N3 ^
pLight->Ambient.g *= 0.7f;
/ Q8 B$ O2 A! M0 k$ c6 h; e0 B) W
pLight->Ambient.b *= 0.7f;
' j# P; {$ O6 o w" j$ Y- I
}
& o5 [7 O5 d- B
7 s0 E( P y3 h9 b% y8 J+ @
#if __VER >= 15 // __BS_CHANGING_ENVIR
% W8 o- t$ y/ u {
if( g_pPlayer )
; Y) b6 g' ], E3 R9 b: s& u4 e" a
HookUpdateLight( pLight );
. g) l6 Y- U7 |9 L/ a
#endif
]0 C0 |* ?: @6 ]! A! ?' }: z% r
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 h9 x& `" K# f" P9 [
) T$ t1 y$ L! j5 W) D; x
pLight->Diffuse.r += 0.1f;
8 i+ S& |4 ^0 ^3 ?4 n& k9 }
pLight->Diffuse.g += 0.1f;
- Z* s/ K$ A- Q3 {7 P2 h
pLight->Diffuse.b += 0.1f;
5 z: V, o" w' f
// oˉè* ??à?
0 F% ]2 p+ h' V/ v% ?
pLight->Specular.r = 2.0f;
- ^; [4 }# V* [
pLight->Specular.g = 2.0f;
- i! Z5 x) _9 z; H
pLight->Specular.b = 2.0f;
# N, f* ^. A5 X# {- \
// á?oˉ
, r$ @5 ?# J: C5 ~3 v% Z, W
pLight->Ambient.r *= 0.9f;
* x% ]* m2 Z# T0 `/ O3 w; v
pLight->Ambient.g *= 0.9f;
. p1 N% v1 x9 A% @, j
pLight->Ambient.b *= 0.9f;
9 x _2 s$ z) g6 d
4 q& {. V. k- C( ~( J" ^
memcpy( &m_light, pLight, sizeof( m_light ) );
* L' q: j) X) s* W. X
7 q/ n k; ^) [: j/ |
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
% J. N* H. o) _+ L- s
pLight->Appear( m_pd3dDevice, TRUE );
' r9 B8 O* V5 F. a8 F
3 M7 G0 e* a. F" u4 d- i# s) X
DWORD dwR, dwG, dwB;
8 l9 N, m# g) c/ T3 y
dwR = (DWORD)( pLight->Ambient.r * 255 );
* C8 l$ ~( L+ O
dwG = (DWORD)( pLight->Ambient.g * 255 );
5 y8 h/ _; |6 ~7 ]$ V; D1 \
dwB = (DWORD)( pLight->Ambient.b * 255 );
2 V4 A) S+ s- [% ]; P
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ z* z5 ]( @+ r( U8 p# a0 y8 Q
}
9 D0 V( G3 b# @ V+ a' K Z+ ^
}
2 h) K7 Q, \" w) }. w
else
: L: V8 x; u& [/ \" A9 [
{
9 f; a) q% _# ]% v" v/ @ y
if( pLight )
- I$ F! j+ D/ N: L' ^
{
" w' N) V9 a# N* R/ l
2 S4 @0 @7 L9 \6 ~8 \2 G
int nHour = 8, nMin = 0;
4 b8 I4 T* o* h; a0 v% b# Q# r, s
#ifdef __CLIENT
1 {1 ^0 _5 {0 N9 ?; H
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
: G- S) A# g) O+ s/ Z; n
nHour = g_GameTimer.m_nHour;
; ~- M0 \1 W# l
nMin = g_GameTimer.m_nMin ;
6 Q* ~8 ?$ A+ V
#else
7 F p1 x. `3 Y* f( }8 y& K
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
6 S3 j( n0 H1 D; G1 B
if( m_nLightType == 1 )
$ l0 E& }7 s+ g5 h, s
nHour = m_nLightHour;
; m2 @: y" i, u+ ]( A
#endif
, P+ e' q0 m1 z; C0 {
nHour--;
# n( a2 a2 [+ B% m+ ^5 {2 |
if( nHour < 0 ) nHour = 0;
3 q+ N# |0 G' n& P
if( nHour > 23 ) nHour = 23;
$ s" F' b$ V" y' P8 K
5 I3 u$ b( {+ G3 ^: n
//if( m_bFixedHour )
% O, R, C/ n% V) _; Z
// nHour = m_nFixedHour, nMin = 0;
" L8 x% [* `/ @; e- j- a
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
! c$ d8 B8 [& \9 Q3 d
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
6 ` G0 j' D6 I0 _; n' l5 c( o% x
: u( o# a$ X8 u; g
//m_lightColor = lightColorPrv;
* i% N1 i# L) d, z6 k) Y# f% r9 m
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
! T2 C$ u+ `! ~2 t5 ^
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
: {. N6 Z6 W7 f/ u+ H- y$ M n; T
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
2 Q; U0 \% S& `
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
" [- Y- P: \9 U, E7 j s
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
3 k6 P. Z9 G6 j1 k
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
" S# v$ W/ t* g$ l( c
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ D5 m/ V7 e/ N, ]$ w
9 T: p! J# {2 ^. E1 \+ @
// à??μ oˉè*
0 ~/ l; T5 Z2 J. W
pLight->Diffuse.r = lightColorPrv.r1;
0 Q7 Z8 f* S, f+ G$ K# k2 `8 b
pLight->Diffuse.g = lightColorPrv.g1;
* X$ b0 b: \! k: d9 z
pLight->Diffuse.b = lightColorPrv.b1;
* g) X3 J1 G- F5 Z- m
// oˉè* ??à?
, K2 l/ t. q) W) S. Q, d- R
pLight->Specular.r = 1.0f;
+ r. J5 R- d; g# ` h1 c
pLight->Specular.g = 1.0f;
( S+ T+ h% r' X2 W( i
pLight->Specular.b = 1.0f;
+ G& w) d/ I# s2 A+ p% N- y
// àü?? oˉè*
- x2 M/ j* k Z3 W( c
pLight->Ambient.r = lightColorPrv.r2;
9 q- T1 {; n8 j% ^$ ]) K
pLight->Ambient.g = lightColorPrv.g2;
( q) A. I6 w) |' t( M) y
pLight->Ambient.b = lightColorPrv.b2;
" Y( s: j4 C, b+ L) w* [
$ U. s/ L2 \& H! R
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
) E6 O* ~( F8 K) o% H& q
{
8 H8 L' ?, I: t9 _( \
pLight->Diffuse.r *= 0.6f;
' w2 v. K6 d& X) b( G
pLight->Diffuse.g *= 0.6f;
1 ~8 r/ Z+ L& s9 X# U! l7 q; F( i7 E( `
pLight->Diffuse.b *= 0.6f;
% v; d4 z5 X( j( Y7 Q# t
pLight->Ambient.r *= 0.7f;
/ O1 A( A5 a% \
pLight->Ambient.g *= 0.7f;
( v& m; L5 \. ?8 e
pLight->Ambient.b *= 0.7f;
/ F/ w3 v0 W3 m7 h: P) S4 z
}
+ @; p5 ~4 t6 S: ~( P! m
0 c9 A+ H+ v/ z
#if __VER >= 15 // __BS_CHANGING_ENVIR
* L9 B) ?0 @8 [
if( g_pPlayer )
/ D3 V% M9 B! r, F& f+ J+ ]8 y
HookUpdateLight( pLight );
, @! W; O1 T( \2 c- K
#endif
+ `- T& U9 @; Q$ N$ u# j+ \. a
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 L8 X* r0 U' O7 ^9 l; P" _
! t2 G) j4 L: \' i. X" ^# O5 ?
#ifdef __YENV
! ^0 G/ A6 p1 z2 M. O; }
pLight->Diffuse.r *= 1.1f;
" C' f; Q1 v0 a( V
pLight->Diffuse.g *= 1.1f;
+ ^1 \: y% z) i) D% \, p2 K
pLight->Diffuse.b *= 1.1f;
7 w3 b+ O2 m$ e& O+ U
// oˉè* ??à?
, Y! K& _8 I7 s+ ]' d, p
pLight->Specular.r = 2.0f;
- W+ P* P! x3 x6 R: P$ d' a
pLight->Specular.g = 2.0f;
]! R5 O: z8 q) r
pLight->Specular.b = 2.0f;
" [, x& |/ ?. }- \5 D0 s" L2 r
// á?oˉ
6 k+ g& d: z1 d# i; D
pLight->Ambient.r *= 1.0f;
3 Q) J% C7 z; t- w) J
pLight->Ambient.g *= 1.0f;
6 V# ~; k2 r) @2 R5 d6 ^7 Z
pLight->Ambient.b *= 1.0f;
, F; b: w; s1 Y/ p! x% v3 `
#else //__YENV
- g. Q3 r6 t/ I9 z
pLight->Diffuse.r *= 1.1f;
, v) j1 N( i6 L) |' B/ s
pLight->Diffuse.g *= 1.1f;
- e3 c* ]. {6 ^% S; a9 L1 j
pLight->Diffuse.b *= 1.1f;
4 H* g: j v+ @2 W
// oˉè* ??à?
5 z% x, n7 Y- u8 e
pLight->Specular.r = 2.0f;
, l* ]9 W% }0 n5 p
pLight->Specular.g = 2.0f;
% ^: G* `- e0 H( f% `6 D; d
pLight->Specular.b = 2.0f;
0 R, K; ^& J, _7 Q3 C$ s7 C
// á?oˉ
- u4 Y/ |9 Q6 r2 L
pLight->Ambient.r *= 0.9f;
' I [# S* G! ]
pLight->Ambient.g *= 0.9f;
- |5 f" A$ }6 M, f8 ^9 f/ a
pLight->Ambient.b *= 0.9f;
, D |( u ~- u. m: \ N
#endif //__YENV
. t7 {$ Q$ A6 k& h y/ G) s; ^
w/ V0 w5 t N0 ?
memcpy( &m_light, pLight, sizeof( m_light ) );
' [ _1 O& s/ a; Z
: \# d, z8 p' R( f5 j; V
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
4 S% ~$ _0 J) ~2 r! G
D3DXMATRIX matTemp;
0 B1 S' S7 ]( {8 O% k$ \+ E
static const float CONS_VAL = 3.1415926f / 180.f;
8 ?* l. c7 J8 r0 f
7 Z* S8 w' w' q i" A$ J
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
" W7 `$ T( T9 E( X' |) B7 _+ e0 G" r
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
/ O, `7 I3 Z" f: `
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
& f7 j$ c- \& v" y6 M
pLight->Appear( m_pd3dDevice, TRUE );
( r9 M9 w' y$ q2 A- n
4 t# O! M) U* N, ?# C4 Y: O6 F
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
2 {5 I! E7 @' m7 {
// D3DXVec3Normalize(&(vecSun),&(vecSun));
2 x, _) z& U6 p, S6 P1 @% V" U
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 U* {+ Q& k$ s; W& {' S
% x3 ]; @& S5 a1 |- p! U' ?
DWORD dwR, dwG, dwB;
x7 w2 c4 m6 v& j _! a. }) u
dwR = (DWORD)( pLight->Ambient.r * 255 );
( B$ q- _' Y8 k! V! e& y, N
dwG = (DWORD)( pLight->Ambient.g * 255 );
* a2 F; g" F4 _
dwB = (DWORD)( pLight->Ambient.b * 255 );
. D. C$ m5 E. y# X* m9 R
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" e N. h0 Y/ R5 e; e9 B
}
7 K* d: n! o. O
}
4 D( w8 r+ h5 z9 t# W
; q5 N1 U, J% U; I* `
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
/ e8 O) I2 e3 |6 T7 `
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) );
& M, t! x- h) h3 h5 @
::SetLight( bLight );
2 c4 u- o& K2 C0 K
4 c, D0 E& e- K" g
// ±ao? ?D?í???ó á¤à?
8 ~; ^; U$ \" Y3 n0 Z- e! e
m_pd3dDevice->SetMaterial( &m_baseMaterial );
* f/ L1 x* L9 x4 o& ]
2 j+ c. ?# {/ c m; n( D% g
#endif // not WORLDSERVER
Z9 l) G! i! ]0 O1 `' Y) X
}
) T0 O8 U- `$ t* v. {
并更换
0 G( d3 J" e( Z7 i4 \8 R2 C2 t
Code:
! Y, l' m9 A% h5 g' A% i% [% [' o! z
__FLYFF_INITPAGE_EXT
8 m' v3 _- b+ D. V0 L
定义
! F O g7 F: U; [2 e' V0 v1 Q
4 f5 ]# n( w2 W% O3 r5 K
$ }8 x3 o i9 u# U
2 }+ C: E" B; @8 z+ b# {" }
2 g# k5 A$ a% L5 {) B7 o+ ^
现在终于删除我的狗屁加速...
8 @, F; ?5 L# C6 f/ R
9 A/ G- l7 T3 R
- s( D. @4 K: B: V6 i; N
1 L% P1 T$ y3 n" c6 f& r T8 t2 ~
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2