飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
$ X& @) Z3 s* H P/ ?( e( ^* x% \/ G
尾翼:
+ N5 C4 H' [1 k: F1 ^0 _1 L5 W
" b: ~' b* y0 m% h& r# R
代码:
/ C+ e! K! v4 k( |0 q" M
CWndAutoFood::CWndAutoFood()
) R1 L6 R" _, p; ~1 V
{
" n* q. I3 ~" z% `! N5 Q! S/ A* p. p
m_pItemElem = NULL;
' X) J+ a* f+ c2 m9 g% }- b. |# k5 v
m_pTexture = NULL;
# D, ?3 P% s/ [& g) M
bStart = FALSE;
9 p0 h2 Y) |* @0 T" G6 t
}
: d2 L2 ~ g+ h5 A, y
, U# Y* @" Z1 l: X' N9 V* K
CWndAutoFood::~CWndAutoFood()
7 l. B! e+ b- K P
{
I: f2 b& n# T: J
AfxMessageBox( "AutoFood ist gestorben
" );
6 K3 [) d% w8 u+ @: r1 T# I; f8 J& e
}
: t$ W& B$ [6 o) b. x4 k1 K+ W& Y
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
! T5 ~: ~1 `* m6 E/ C
{
4 T" t# Q8 z( ^3 X9 J! n7 I, U7 ] T
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
* P' H( f& E2 r* t1 J6 [4 C8 [4 ^
}
- @* n; d2 w& H& d
5 @( h7 T8 A* M5 G0 L- e) W+ D& ]
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
# l9 X- q* f# x
{
7 {7 \# i* M' |$ L; N8 e% U. z/ N* U4 e: u
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
8 k9 y5 o" ]$ h' L
CRect rect = pWndCtrl->rect;
" H: F) p8 K$ A% J$ g8 v9 e3 e( O
if( rect && rect.PtInRect( point ) )
8 q$ l3 ~! T' x3 \; E0 I
{
5 p% X* l# _4 O% n/ I2 f8 e2 F
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
* J. \6 ?% y" H& |7 f# q
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
7 S8 e: _' d8 j; S$ _0 _
{
/ X- V$ y* M* o8 _. B" G, a% G; S
if( m_pItemElem )
8 K7 I8 i% e5 g% a$ O
{
$ {" a7 ^, X- B! k; @0 {
m_pItemElem = NULL;
8 ?0 {$ l n5 @2 t/ k) o
}
# B/ ]( f9 |- m; a2 M' k$ e
m_pItemElem = pItemElem;
' O1 X& t( o! Y7 {- A
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
1 c0 z0 D5 _5 @! ]- \& y* r3 m
}else{
! v j9 ]$ u! A5 N; @
SetForbid( TRUE );
: l) `8 |, V. h
}
" n9 |& o. y6 L
}else{
& A8 ^; k I! K
SetForbid( TRUE );
* B" n& d2 [# k# _0 j
}
: v I; b P4 c7 j9 r3 i' d7 y
return TRUE;
% X4 C* d; w- n( H" E ?. G
}
9 A3 X& M# q- p; H# R
% A* o. T. c$ g5 E: A
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
6 ~) P3 [* g: i" E) m
{
! _3 N3 t: o3 y5 t) ^+ s8 U8 n
switch( nID )
$ U! [* P$ w4 M0 F' a2 k' V
{
' p. M' C0 z7 J
case WIDC_BUTTON3:
' d7 H% g& U' T! D, g
{
/ f7 x' h* I' s6 k' b! V
bStart = TRUE;
0 a( O9 V+ h' O, v% q- J
break;
; @+ l; p8 U9 g. x8 W' m+ L
}
5 q, p1 P* Y8 o* Y
case WIDC_BUTTON4:
" J+ Z/ E, R) ?
{
) |3 i4 |9 m9 B% }( E, H2 ?8 E
bStart = FALSE;
" g$ \3 _, T, l/ O% H0 I
break;
6 t2 \+ `" D6 V5 X# ^0 w! H
}
" T5 x/ Z# Q' ~' P- I M# S% x
}
( x: T4 o: t2 V% Y1 H& A
return CWndNeuz::OnChildNotify( message, nID, pLResult );
6 d6 C# K S( I; O/ M3 D0 l% g8 c) w
}
+ B8 v- Z# c5 Y" C
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
; V4 F& t. W6 K6 n
{
" x. N- T2 O4 a' a; P- z2 X
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
% t# P( o- G+ D9 [5 f
if( bStart || !m_pItemElem )
7 F8 i2 {3 E0 n0 I0 m% B {
{
( m8 u# v; z @4 @
pBtn->EnableWindow( FALSE );
}& K" b3 U5 [) |. `
}else
" {& M# x* p! v
pBtn->EnableWindow( TRUE );
# T& s ^% v# `3 X7 {7 P
if( m_pTexture )
6 `; ?" d7 D+ c8 o
{
& M1 Q' y* m4 H! L) D- k5 B
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' g1 W9 s P9 |0 x, J+ e4 z
if( wndCtrl && wndCtrl->rect )
* F- m# r4 J5 f- k
{
9 z: u+ | s! f8 T: B
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
3 R3 {2 o. A& `
}
$ E/ M6 V5 l# ^6 Y/ `) B! F
}
! \& W; x3 L* \( }
}
* n4 h; t% t; D% h+ ?% ?. d
+ z' F' m9 {0 j, ~) J$ a
BOOL CWndAutoFood:
rocess()
; n( |, y% }1 k! }% ?1 b
{
1 |6 g A: Q4 H; |
if( bStart )
2 j0 o, Y1 L# }; p: e; }
{
9 Y6 O& I3 l3 H2 t
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
, I$ z( i! \& F/ `5 i' k. m' X
{
/ M1 q0 D7 d' v0 R* V4 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() )
# T! }6 G8 @( o( ~
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
* E' u9 H! ~0 m# { s A; @9 N
}else{
4 V: P% T3 M4 L2 D [
bStart = FALSE;
1 E( E- m) U+ H( u5 K
m_pItemElem = NULL;
' e3 c. B M5 h, P5 x) A
}
. O- Z3 r" y: t: N! q
}
/ G+ Z3 F# ]7 G
return TRUE;
- r8 U3 U# g, q; z& H- T# F# M
}
7 D- u) d! Q% `# z' C0 G
0 a( A' P2 |" {7 L1 h9 F
登录视频废话:
, Y0 y: g" W+ L7 W, T. s A
尾翼:
) `- q8 ?6 c+ a3 t; j- t
! X& X# Z. l- w% u2 K
代码:
6 u2 N) |. Z! w W+ H9 N
P+ n1 G+ c' Y4 {
void CWorld::SetLight( BOOL bLight )
' b3 E+ M. X; r# O5 z' R. z1 x; o S
durch
0 z8 C" T% _4 N
Code:
8 s$ ] ~7 ]+ G8 q4 D
void CWorld::SetLight( BOOL bLight )
9 |, B/ g0 Y8 t& X! T6 @8 a
{
5 v) M; q* e2 _/ i6 C
//ACE("SetLight %d \n", bLight);
$ @7 Y* F! G& _2 X' k
& \, D2 @7 ]2 M G+ G
#ifndef __WORLDSERVER
5 F u5 `) {( R) G. h
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
: `+ d% N0 T) e. W4 _
CLight* pLight = NULL;
5 y7 x$ D m# t7 f) I. ~+ c8 p
9 s2 M1 ~* B; i0 R9 f
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
- Y6 z* f3 T" W" c( f) T; t# S
$ v# b( q1 H1 ^- T7 w" n( N+ N
pLight = GetLight( "direction" );
5 T& {3 n& c% C; e
% \1 h' U/ J- X- e
#if __VER >= 15 // __BS_CHANGING_ENVIR
: i& `4 v( Y7 H" n7 x* S X9 D
if( g_pPlayer ){
! M9 v2 k( r0 ~( }
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
7 r3 z; w4 Z5 A8 b Y0 k( U
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
, O( D8 a) t8 U' o" r" s
{
1 G! d4 e( s8 X, X0 X5 C
if( pLight )
% k' R4 T/ Q0 [1 n4 ^
{
3 q& c2 I% u& f7 W" ]* ^
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
4 R+ K9 v; @& W, X3 z: G/ |8 K! e) O
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
% K7 M$ ^. z# n; n: T5 M. J& u
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
: q4 n3 }* n5 P* o% l
) G; W- n5 Z8 N2 D+ A
pLight->Specular.r = 2.0f;
U' C# w: e! w3 s! K) O; H2 F+ z
pLight->Specular.g = 2.0f;
" f y. z& L1 Z) U. L
pLight->Specular.b = 2.0f;
6 D7 G+ f" s, Q0 L: r: Q
8 W: @9 J7 M3 i/ `# y* y
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
4 @7 F& g+ B9 n- q. v! z
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
/ L) O; V2 u4 b0 ?3 X; N
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
8 C0 B1 r& L' I. e6 [
" \6 x) k6 ~& }3 c: j( {
HookUpdateLight( pLight );
' _3 K) i* d4 a/ v8 b! G. _
; }+ V3 o Y2 P( _7 {; _% {, O
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 a1 e' o B8 L% e% I
8 e+ I) A, y+ [& J. z. m
pLight->Diffuse.r *= 1.2f;
; a, t( ?$ Z6 s6 a/ J/ R( T
pLight->Diffuse.g *= 1.2f;
, m3 s8 i+ E3 @2 B
pLight->Diffuse.b *= 1.2f;
w1 ~9 V9 \9 f! {9 P( ]
: ?* x% S, c. @
pLight->Ambient.r *= 0.8f;
% E+ D2 D& ^$ R* d! ]& \
pLight->Ambient.g *= 0.8f;
) `! f) N# i4 T* z! X& F2 l" ]* L
pLight->Ambient.b *= 0.8f;
& e2 e/ {3 h8 L: v& ~
" |! s, `) V4 d3 g
memcpy( &m_light, pLight, sizeof( m_light ) );
" T) G9 Q7 z' I8 L/ y+ f
3 E7 z8 m% O+ s6 L$ n+ Z
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
. ~& h; x5 z1 e, `6 y, v3 ~
D3DXVec3Normalize(&(vecSun),&(vecSun));
5 R; B$ b: {2 s) W$ M
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 q- c, B1 V8 M- a3 R+ p& b! |
pLight->Appear( m_pd3dDevice, TRUE );
$ l0 k% e' g7 q e7 O
. L6 m! s2 W1 P9 ~8 x+ L
DWORD dwR, dwG, dwB;
! s0 c% v8 j4 Y. c9 ^& [# }' M
dwR = (DWORD)( pLight->Ambient.r * 255 );
. X2 ]. k& N) `
dwG = (DWORD)( pLight->Ambient.g * 255 );
, }5 w: m4 u. g' l- _4 W2 P
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 Z H! }: D4 W6 q7 M0 d
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" ]5 d, y! w! r9 j* {, Q6 U# `) F
}
! m. }8 A, }8 {
}
- z. W* Q6 V5 Q! y5 J* W4 [
}
9 e; d2 y' g; |' M( \
else
7 E5 b8 s- L' d) i
#endif
5 I7 g- v9 T U& ~; J
8 P! z. [0 H5 c
if( m_bIsIndoor )
7 ^2 @% f7 g8 c, q& ^! V9 D, Y
{
: h% W, k/ `8 z# X. a4 h
if( pLight )
8 v) F* y8 c7 T0 |
{
7 M3 Y, k) \; ?( d/ _- V. d
// à??μ oˉè*
* O: X4 G2 w; [$ h* T6 U7 Z4 z
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
$ L( Y$ h. w9 z3 v3 W" [+ i3 R! ^& k
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
1 ]5 D5 h; T8 z- U H
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
8 i+ a9 m z+ J9 N6 q5 M0 R
, }$ I2 ? \ S. y/ o! L
// oˉè* ??à?
' c" |1 @8 R% ^1 ?- m6 D6 y$ e6 ?
pLight->Specular.r = 1.0f;
% `6 i& L0 x8 y) [: s
pLight->Specular.g = 1.0f;
. {% L k& T# m9 r: N, n9 y
pLight->Specular.b = 1.0f;
( {0 {% \) t! { R
// àü?? oˉè*
" N7 B/ y2 ]+ ^8 L
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
+ y+ M5 g. r6 w! q: C( S
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
# j3 `$ Y S' V% Y
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
* g# O9 N' m2 U& \2 h# ^+ C" @* p
2 ?, @, @5 I+ T. g. U) j& ^
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' ?" P. [0 j4 B9 f
{
0 I; s2 e a8 Y/ q. N# Q# E
pLight->Diffuse.r *= 0.6f;
( h& u- h7 j( W
pLight->Diffuse.g *= 0.6f;
& J" |( N- Y# Z7 J3 k2 U4 u
pLight->Diffuse.b *= 0.6f;
8 g6 y( Y. `4 O) n6 B
pLight->Ambient.r *= 0.7f;
) C: ` z) n+ `8 a0 I0 m# p. U# a
pLight->Ambient.g *= 0.7f;
9 S5 ~+ U, k6 h$ x# Z, j4 f
pLight->Ambient.b *= 0.7f;
7 d! b4 X+ l/ U9 M: i/ I+ \( {, ^
}
( m& }! l+ C$ i% {% v
2 r6 V. H, F) f* C4 H7 ~
#if __VER >= 15 // __BS_CHANGING_ENVIR
- C. k; {" n, C3 e7 w
if( g_pPlayer )
4 }! V* c; m8 l- |& F' H8 t0 E- J
HookUpdateLight( pLight );
, o- t E0 W& }( J: E% @
#endif
( S4 v1 Q( Z; ^# S6 L' A
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
! _0 R; Y/ s/ B7 i k S
7 d z/ a/ t6 L
pLight->Diffuse.r += 0.1f;
% A v) o) L+ Y' k3 E8 V
pLight->Diffuse.g += 0.1f;
3 ]9 W4 A, R* G/ `" v5 {
pLight->Diffuse.b += 0.1f;
7 s6 R, m* s( M R9 I
// oˉè* ??à?
! p5 ^% M/ k& q2 u( N& j
pLight->Specular.r = 2.0f;
, a5 G- W% {, z5 j5 E" }* d
pLight->Specular.g = 2.0f;
5 m2 f/ [! p5 E2 h# h
pLight->Specular.b = 2.0f;
0 |0 H/ R" b! O' J
// á?oˉ
4 V' J( @1 Q9 O0 g8 k
pLight->Ambient.r *= 0.9f;
0 x* X# P% x7 N' `# U
pLight->Ambient.g *= 0.9f;
. [, f$ I, N" Y7 r& [
pLight->Ambient.b *= 0.9f;
( X: P% v+ l8 g$ [" ]% M
0 `/ V4 i! K. j( {2 Q
memcpy( &m_light, pLight, sizeof( m_light ) );
" D& N; Y; f r1 f
, \, }2 \9 @) a
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
, I( `8 O2 T+ L% D* x+ `
pLight->Appear( m_pd3dDevice, TRUE );
. w' |$ N/ }- G7 d0 @' ^
n# ?3 X/ q- R- Q9 v; c
DWORD dwR, dwG, dwB;
. _2 n B2 }, c
dwR = (DWORD)( pLight->Ambient.r * 255 );
Z! [. F9 Z. ]0 N- X
dwG = (DWORD)( pLight->Ambient.g * 255 );
% T) h- `9 o5 X) U9 p1 E: b- Y F' h
dwB = (DWORD)( pLight->Ambient.b * 255 );
" x( a6 f1 D c: K
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 O4 c8 p3 r* L# V6 r! {0 L* m/ j
}
5 |0 a/ m' |9 A
}
, j" b( k# m& {+ n0 f
else
/ W! R( o6 k) r6 U, Z1 _
{
2 ~1 g6 v# d$ r5 |, \
if( pLight )
+ v% J$ p8 \4 K0 k( C, k& E
{
8 T% K( N5 J8 |$ e; F/ ^' D
; Q6 I. C. J+ l/ ?7 G: h
int nHour = 8, nMin = 0;
! E* r4 U5 q' g' x- Y) w
#ifdef __CLIENT
* {; u7 Z% ]+ {7 q$ U3 l
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
+ Z+ \! h0 m4 f; H6 A
nHour = g_GameTimer.m_nHour;
, b& W$ G* l/ x; v; m) j! x2 @
nMin = g_GameTimer.m_nMin ;
: L$ Q5 l& D; c- R7 Q2 G
#else
3 w6 E8 F1 d% C
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
. B5 k% Y. u E- k& k5 N
if( m_nLightType == 1 )
; w) g! i# X5 e# D
nHour = m_nLightHour;
. x4 B, y. {- G. C
#endif
$ T1 b" g7 s* c' l0 ?" w) N& ]
nHour--;
; w0 ?0 r5 k! s% H# O. U9 q5 ?
if( nHour < 0 ) nHour = 0;
1 U+ ~& l8 W$ v! K
if( nHour > 23 ) nHour = 23;
+ T3 E3 w4 G" X1 E- J1 y# i
! U* v* \4 o) E/ }
//if( m_bFixedHour )
: \- T m% h! _- y1 ^ S# v
// nHour = m_nFixedHour, nMin = 0;
% t: {+ W6 l' A/ O+ x
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
R) [- h, @" h8 S8 P9 N
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
& y2 t# Z5 }9 y1 J `. U9 J! t
9 v% q$ [" c* X9 z
//m_lightColor = lightColorPrv;
2 ]: x: K& g7 L( l
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
4 G; X6 L0 Q. _/ c: @
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
- Y4 M; B- |' P0 d |$ u
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
" V) p- k$ _3 z) C6 l
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
6 [4 O8 X2 j- F1 [/ C& a
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
T- b" L P1 u- Y2 J
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
- N$ |0 c: C# H4 g* |
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ x0 Z" z9 [( d, a! T
7 @/ L+ v" J! a- ]3 b6 y
// à??μ oˉè*
. f* {+ U9 A8 B0 P$ N4 t% v; O# t
pLight->Diffuse.r = lightColorPrv.r1;
8 ?- ]! V, v- O1 {/ R; k
pLight->Diffuse.g = lightColorPrv.g1;
$ i/ }7 d+ B' r+ L0 z3 y$ p
pLight->Diffuse.b = lightColorPrv.b1;
) W( f( r2 C/ V* a& b% v/ Q
// oˉè* ??à?
2 g6 }' |6 q" t
pLight->Specular.r = 1.0f;
% J* q, _. z# v
pLight->Specular.g = 1.0f;
9 {1 o* Q0 b1 |
pLight->Specular.b = 1.0f;
2 o; t0 j: u/ a1 k
// àü?? oˉè*
6 b5 h _7 R# R ~+ K
pLight->Ambient.r = lightColorPrv.r2;
; V2 [! C8 y8 P
pLight->Ambient.g = lightColorPrv.g2;
, a9 j: O% j$ {) M' n$ W; e" l
pLight->Ambient.b = lightColorPrv.b2;
( U. f4 { p* P5 `" p1 o$ q" o) [7 W
" A* j9 D' j( k) k2 b
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, |' Q; I# _5 F2 G. c) r
{
, q4 P" j; U4 \
pLight->Diffuse.r *= 0.6f;
+ L7 r0 f4 c2 r. R) { G1 ~
pLight->Diffuse.g *= 0.6f;
9 |& E( c8 H3 ^
pLight->Diffuse.b *= 0.6f;
, b0 W9 O; o3 l: h! B
pLight->Ambient.r *= 0.7f;
" d, ?: h' _% M* G9 d; M3 O
pLight->Ambient.g *= 0.7f;
' O+ g% a" O: ]$ P3 T! k
pLight->Ambient.b *= 0.7f;
1 f; V: `( a5 G
}
: }* e& e/ T* j- ? r! j- b, z+ R
# |: F. x* h G1 g8 F
#if __VER >= 15 // __BS_CHANGING_ENVIR
( s1 K' M5 i6 \
if( g_pPlayer )
' K" m/ [/ C2 q8 A+ F
HookUpdateLight( pLight );
. v% X5 ^$ m2 ~+ m+ v% N" s
#endif
) V+ x5 [& ^+ t1 e, r A
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ l' u( ]+ J% b! c- a9 e
, n; \" H& a. L6 K) b% }1 V
#ifdef __YENV
0 \6 j+ O$ z$ ^
pLight->Diffuse.r *= 1.1f;
6 O1 |, ~% B g l' u. q
pLight->Diffuse.g *= 1.1f;
( B# w3 [" e, V* h" Q
pLight->Diffuse.b *= 1.1f;
) y i0 B- i7 y: d3 A1 s K3 q2 Y
// oˉè* ??à?
) L8 ~. p- K( u& U
pLight->Specular.r = 2.0f;
# B# B/ x) S& [2 }* G% _! m, m
pLight->Specular.g = 2.0f;
( N0 D, v% \8 k( I/ t' S& b5 v6 J2 {
pLight->Specular.b = 2.0f;
5 t3 f9 o7 R$ ~) s
// á?oˉ
K' P' c/ d" Z7 T+ m. u" d
pLight->Ambient.r *= 1.0f;
0 U- C* Y9 ]& t4 G
pLight->Ambient.g *= 1.0f;
# q$ Z% m6 r0 e/ d
pLight->Ambient.b *= 1.0f;
& P: B6 M& o! E2 A7 x
#else //__YENV
8 u4 e. d) T3 Z; g! w/ ?! t5 u, k
pLight->Diffuse.r *= 1.1f;
7 j- x1 D3 O( H2 _
pLight->Diffuse.g *= 1.1f;
' u7 D" F4 ~+ o
pLight->Diffuse.b *= 1.1f;
( m. C! s6 n5 l+ q$ |! k- k
// oˉè* ??à?
1 I7 g' F; R& Q: t* A8 l
pLight->Specular.r = 2.0f;
- n' D7 F: ]; K7 j
pLight->Specular.g = 2.0f;
* q5 M. q3 x: Q5 n9 e( J: P# J/ N
pLight->Specular.b = 2.0f;
6 ]5 ]8 ^" r: o6 Z2 ^6 i2 U# a5 N" ^
// á?oˉ
- O; p2 Z+ [* \; B! d& Z9 X
pLight->Ambient.r *= 0.9f;
# a7 Y4 I1 e# p" ~& @
pLight->Ambient.g *= 0.9f;
; T( Y* a1 @/ x8 r
pLight->Ambient.b *= 0.9f;
o& X5 [. Z' H4 g
#endif //__YENV
: e1 a! k7 _# r2 b
1 W! u d9 v# o0 a
memcpy( &m_light, pLight, sizeof( m_light ) );
6 U J) r6 Q6 [/ t$ a/ `. S
. ^7 d% T' k8 D \
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
) S8 a2 V* @. D+ R1 j
D3DXMATRIX matTemp;
9 k }/ d6 m- d( E- p P9 U* o
static const float CONS_VAL = 3.1415926f / 180.f;
! |, c& A/ l1 H0 y, L) Q! B! [% _
5 q( m! X/ G3 ~' m& d
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
) C0 Q' i1 [4 p
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
' a' F6 y% [. T9 Q, A: Q2 w" Y
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
+ U/ }/ r3 R6 b2 s9 c
pLight->Appear( m_pd3dDevice, TRUE );
1 @* `, ^; t: i3 K
! {' {7 W: y3 u! k% m
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* F6 b$ V/ a, g! F1 N8 k. W8 K. P# G
// D3DXVec3Normalize(&(vecSun),&(vecSun));
: h3 ?9 a6 }. O$ k, t
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
4 {9 n# e7 T1 H! Y) D
$ m V j. v5 B7 c2 x7 h
DWORD dwR, dwG, dwB;
( K9 U+ f+ G8 \) x1 o( i
dwR = (DWORD)( pLight->Ambient.r * 255 );
. A0 A% ]) } C0 @& b
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 h: n* J; V! A* L6 d! {
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ [' h* t5 L6 y7 T, H; d
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 }( u$ ~* U0 |6 A1 d( _" M) W
}
- z, r ?% s" G. z2 C2 j
}
' K2 _: J; X4 }8 h& ]' Y/ K
. o4 [8 d7 K4 R$ [
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
' u0 C" G9 f6 Z0 d
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% H. ?8 H# V, \
::SetLight( bLight );
/ d1 K" [" o/ Z# |# u% C
R$ L) B. i# E. E; c
// ±ao? ?D?í???ó á¤à?
8 q& H2 }5 G" T1 C# {3 c n! k
m_pd3dDevice->SetMaterial( &m_baseMaterial );
) B9 K8 Q7 ]/ c2 x% ~: K# Q
* Y0 N2 R9 P$ J; l- P) I
#endif // not WORLDSERVER
3 f% x/ Y$ K+ g
}
2 [0 `& N5 x- }( |* I: f
并更换
5 ^, z- [, E# i- O% N
Code:
. a# N$ t6 h6 ]5 x, L
__FLYFF_INITPAGE_EXT
/ I: G# u: h. R r
定义
2 v7 A0 y) S+ U. R5 ~0 P" l
3 z$ b+ c( n# Z0 C8 U$ J
+ l* i @/ @3 u- K3 i, ~$ B
! i: O# M6 u4 U. ?& e
/ x& h" m f& c; i5 ~9 y
现在终于删除我的狗屁加速...
5 i1 W' M1 e& h0 a& ?6 P3 Y7 b
! a& [- L7 t; S5 y4 w( M+ _4 S- V# C, m
5 C: H# a1 A& B x
' f* ?7 ]3 ?6 r, M( C7 m
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2