飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
' v! R1 R/ z7 l" g9 K5 h( N! m
尾翼:
- B" _# R3 P$ R! H& N
1 P* v8 B0 v7 e* f# M
代码:
8 c7 F( r) I \5 S! f- V1 g# z
CWndAutoFood::CWndAutoFood()
( |! B% H2 L6 V% V5 c4 v) w& Z
{
/ a$ L( `9 s- C1 A$ U" u- J- a" s
m_pItemElem = NULL;
1 w5 n+ E( F! g( X/ x' H1 ]
m_pTexture = NULL;
9 { g! A( ?6 f$ n0 O
bStart = FALSE;
* q2 [9 c8 D8 P5 F, L" V, `) \: M8 ?
}
8 L1 z6 u/ x4 Z7 W0 u5 S
1 E1 V+ j+ K* v8 k: k& s' E
CWndAutoFood::~CWndAutoFood()
6 u& z! Z& _0 K
{
( S ~2 o9 Y% w
AfxMessageBox( "AutoFood ist gestorben
" );
5 e2 R/ ]" D% m# G
}
) t' V- t2 t3 V7 a- p7 M
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
& Z, L1 n7 C: Q# ?: ?) d
{
. w2 f" @# r2 Z. |4 a
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
j2 \3 y! h, B9 f4 k* o
}
/ G, L+ g0 a6 h) L$ \" ], i- L
. Z# B( Z( b! W3 y. m
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
0 @" t( [+ |1 g2 m- Z1 G
{
& o1 q) C1 ^/ g; i3 R' l
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
6 o C- ?5 k2 W
CRect rect = pWndCtrl->rect;
- C. d: f1 f( M; Y$ L* d% a3 h1 P7 \" k+ G
if( rect && rect.PtInRect( point ) )
7 ?% ~2 W* Y- G; L! U
{
4 Z0 _+ i9 Y! r0 T; S
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
4 }# o8 [' \% m& H
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 r2 f2 H1 v1 J, f/ y
{
& b' U' z0 v! U
if( m_pItemElem )
, L' P. R% v, W8 D4 \ s
{
- }$ u" a$ m1 C5 G- X- e
m_pItemElem = NULL;
7 t$ O) J1 C9 E% `/ |6 m
}
! Z! p4 l, c0 K5 }) H" `# A% h5 S* p
m_pItemElem = pItemElem;
" {1 d$ K7 x: S. G% x
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
5 r1 t0 n; n6 C r0 W% P$ {
}else{
; \, D/ |% b/ j+ j) K, _/ j3 }
SetForbid( TRUE );
" c4 d. H$ ?/ C
}
& {% z: m. L8 m' K; p
}else{
0 j: ~6 s+ ]0 E
SetForbid( TRUE );
% O( P0 Q' D8 @
}
* e! |# M: G6 I7 g Y0 t) z8 \
return TRUE;
! P5 z1 j( z% e2 ^; ]
}
& O$ u. X1 {! @+ ^! @9 e' Q2 n
* N; v- r1 a D0 U0 G$ _' V
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
9 b: @2 A I: O3 t* C# W- \
{
9 W5 g. C# Z/ s
switch( nID )
" u" D8 v2 J& o2 \% R+ L
{
& c8 w/ Y+ d# L
case WIDC_BUTTON3:
+ {+ q- l- L+ A" i1 q/ d4 H8 ]
{
# t3 C V Y# z* i Y- Z0 ?
bStart = TRUE;
' R8 I w& e+ s: O1 \
break;
4 f3 ]2 h3 |4 X& F
}
- l6 }1 L' H: u4 j! d+ T( R1 \
case WIDC_BUTTON4:
. J8 I Y; \& b7 p
{
1 Z! c5 K; h8 M
bStart = FALSE;
( Z( Z' \! |# j1 @- g. y) K. F) W1 S9 Z0 t: f
break;
: r0 S( ?5 {: N" u1 @2 n
}
2 x) s* S2 E4 `( K
}
: b" P; N& b& j0 A7 m
return CWndNeuz::OnChildNotify( message, nID, pLResult );
f4 x: E; z6 }. M
}
3 s% H: m4 \% p4 n
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
/ x: V4 Q- M/ W, X% ^0 ~
{
9 O$ E6 M2 C6 ?+ }4 o! x
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
% Z3 i0 J( D. n8 I7 x7 M
if( bStart || !m_pItemElem )
! s6 B) J7 x- s) G3 S
{
0 r! t5 J4 _3 Y- @, ~+ ~6 e9 f; Y
pBtn->EnableWindow( FALSE );
: ^/ ?7 ]. b* L: C
}else
0 |6 z& ^2 i4 t( X1 D6 B
pBtn->EnableWindow( TRUE );
! {7 i' P7 T: H
if( m_pTexture )
0 \0 o2 z6 O. q7 {+ J/ C
{
1 \ {- D' z4 d& P
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
: U$ }" {7 v+ M1 m/ }
if( wndCtrl && wndCtrl->rect )
6 B% ~1 y5 \9 p3 ]) \1 _) q. P( n
{
/ x# T& W" p2 d( d
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
4 D& P& u0 c" w" {
}
# _) {7 B9 Z7 V z3 l' T
}
9 D' i0 r+ \1 t
}
' }, }0 L" K/ d5 b( `) N
% T0 @0 i3 R2 ~+ v1 k
BOOL CWndAutoFood:
rocess()
8 h" A+ v4 E6 z; B; q
{
- C% m* o$ f i r( R
if( bStart )
/ ~% {5 K/ U9 Y. v' q
{
0 m( W' S6 z9 ^4 \9 s( ^1 T/ S
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
& [6 q4 R& h {" W: l
{
% A! b# {7 K; m! a; X4 x2 s& y2 I
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
( v0 A3 y, e5 O3 E
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
2 m1 a. z9 s- I: e8 X& i
}else{
+ s1 m( l! P0 u- ^: X6 v+ S* s
bStart = FALSE;
0 H- ~" A9 [8 K
m_pItemElem = NULL;
8 \2 n, {. @# b( y; s7 d
}
: n# D: s/ E" N @
}
0 g4 M5 K5 N/ l3 }9 s
return TRUE;
3 x; |1 U& {- d+ H: v* `; k& D5 I: V6 j
}
% \& }& R9 w# X, A" T6 L
& v" w& ^0 v: u( U! Z" r
登录视频废话:
8 W7 | c/ \3 J* H2 |2 ?) N
尾翼:
`4 G; |% @8 x0 ^! e
! S) Y! K" D5 x* ^6 t
代码:
! a6 z$ q+ o; O
; S2 L# b' |( ]3 G
void CWorld::SetLight( BOOL bLight )
. M4 {: f6 c6 p" S- \
durch
( A1 |9 L/ q2 O, j- g3 U# t' O
Code:
2 \ `8 o% p& l/ [# s5 `
void CWorld::SetLight( BOOL bLight )
% S w6 n( o; F; V3 k- D1 d
{
( B# I9 m0 Z9 ^( D" b- [
//ACE("SetLight %d \n", bLight);
3 c' E6 [/ B/ n
& W' M$ H# I. d: v4 l* }( N. R
#ifndef __WORLDSERVER
, O$ F( c% l: z% p1 [' a
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
" T; @$ @& q& B4 d) ~/ J
CLight* pLight = NULL;
( i; X( |" Q8 K. ?4 j! y: ^# Q% B
/ T$ b2 l' C X* g( R
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
$ L3 f, W4 F% k Y
# R" x* J1 H1 P/ _# K
pLight = GetLight( "direction" );
" L1 F: k! W$ ^) j: ?9 D- G/ R4 O# f
* Y8 U v4 l O9 F, |8 c- H, N" w
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 G1 u T4 ^9 l5 C
if( g_pPlayer ){
; t/ ]) B5 O3 P) g
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
0 m; d8 V, ?+ y% D6 N( x" d$ o+ Q' {
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
7 C& g2 o1 ~8 |( `5 G
{
4 z/ G" J' Q. e2 C$ b* G0 ^+ H
if( pLight )
6 {2 t: ]4 D5 @, S
{
& p( O' n: c# s9 S! T7 j
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
0 w- o8 a q1 g! _# A5 U- x+ b
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
8 J: c( b( W2 j/ d9 v" N! E
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
1 G3 N% }+ y# @, M
3 p) a% j* w C$ m5 Z
pLight->Specular.r = 2.0f;
# z/ E9 ^& \- o1 i! e2 d9 X& b5 p
pLight->Specular.g = 2.0f;
" }) ^4 P2 _, s; \4 K
pLight->Specular.b = 2.0f;
3 W5 A% X! R- M4 m+ ~) \
, i1 ~1 t2 w: I" X5 y
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
1 D6 e8 R+ v, U @6 W8 o% V
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
: u# j' K% M- I4 V) Y0 T
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
4 C g, _9 ?: w
6 U0 A- X+ m6 {/ p
HookUpdateLight( pLight );
' k& W% `$ ]; D) W8 @ ]
; K5 l, i3 [9 Y) b; v% c
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* j, r1 ~( P" n/ @$ n
1 j( ~8 m j1 R' |/ n) G
pLight->Diffuse.r *= 1.2f;
% M6 y9 C% k* E3 W% g+ W& n
pLight->Diffuse.g *= 1.2f;
" c5 D) [" z, ?& g" k+ [- b& M
pLight->Diffuse.b *= 1.2f;
# \7 I! y5 r, k" S/ Q3 c, g, [# [
% G; O3 M9 w: N( C
pLight->Ambient.r *= 0.8f;
+ d* J, U8 W/ K# s1 e2 J. W
pLight->Ambient.g *= 0.8f;
6 y5 w, {% D0 c! D; B, N
pLight->Ambient.b *= 0.8f;
5 ] L/ e0 t$ t* V; }( H3 K. d
3 f& e$ U* r9 ^. y; s7 Q
memcpy( &m_light, pLight, sizeof( m_light ) );
+ ]# l; N& z- Y/ T: C; T3 P! {( |& D
8 }5 v3 U& r0 }6 y
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
( W5 {5 E. N1 s9 |3 b& h# o# `; |
D3DXVec3Normalize(&(vecSun),&(vecSun));
% i: r- F5 F* o5 B' M5 A
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 w! L( w7 U V2 c0 y8 z" L2 E
pLight->Appear( m_pd3dDevice, TRUE );
2 ?$ M' A3 Y( |; o' g( J0 E% \1 Y
& ~, N1 E4 t: K. z
DWORD dwR, dwG, dwB;
) U! V4 `# ~5 g) X+ `5 k
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 F. l" A1 v: c6 g& g% m( L
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 D# Y9 d; m4 Q1 ?
dwB = (DWORD)( pLight->Ambient.b * 255 );
) Z/ |" d- P7 N1 o$ m: {
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 t. W1 U. @; I! A: m
}
4 V3 B9 R' |! U, S6 x' s
}
) j M$ P3 a- `+ X# L: R
}
7 x) E2 x4 ~3 R+ m) ]
else
* T7 }( M' L4 o% g
#endif
* ?" V$ T/ {- w& _- f
! T, ^6 _! V* F' _3 s/ a; S% L5 T* N
if( m_bIsIndoor )
. h( [, e: T' v$ p
{
* V( K) v9 |' o6 W' U/ w! l
if( pLight )
9 [' A8 ^, E* r* p9 d# z
{
N8 E) ^" K+ V, ?" h
// à??μ oˉè*
; p3 r8 F7 i/ Y% a# J5 L3 w
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
H- s: A2 {) A5 x% y7 [
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
% h* z3 a$ n8 H: G
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
- B3 r* @, w: v `+ Z6 c+ X% ?
4 E# m5 f% W0 y
// oˉè* ??à?
. ~ e- b; a: B( n! A! B. H& G2 n' p: h
pLight->Specular.r = 1.0f;
0 T. Y* }* F" @- [
pLight->Specular.g = 1.0f;
3 {# s3 m) R5 l' ^" b- S% \
pLight->Specular.b = 1.0f;
1 Q' @+ v" h7 i @& j
// àü?? oˉè*
$ e( V4 v* r/ K' l* V! }: I
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
% z7 b7 x3 t% @* u$ X
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
5 k/ U8 X4 k1 q) q& V! L
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
2 a% ~7 w* K0 `5 J4 D5 b5 }
' C2 ]# g& L; {$ |* w: s
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
- ^& Q, C6 D7 }" h4 ]
{
) L/ u7 v) t) w- @8 r% W
pLight->Diffuse.r *= 0.6f;
' u, K4 h1 M4 j+ r
pLight->Diffuse.g *= 0.6f;
Q5 P2 U! T U
pLight->Diffuse.b *= 0.6f;
* S: Y0 l0 t1 e7 C$ y
pLight->Ambient.r *= 0.7f;
8 e5 s! I: U* `0 f! T
pLight->Ambient.g *= 0.7f;
9 m% T0 u" S# y6 P
pLight->Ambient.b *= 0.7f;
! O2 X6 O& o' O# A; U
}
* P% ^4 g! v6 Y2 P0 X% E' z' I, a$ }
B+ k* y' A, F- |& i
#if __VER >= 15 // __BS_CHANGING_ENVIR
! `, C3 |- u9 B6 H" i
if( g_pPlayer )
. I- z1 D f" B2 c _
HookUpdateLight( pLight );
& |$ y- ^4 K! r' r* g' ?
#endif
) O( S8 p8 k2 s) @ o7 B
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 i! C+ I3 F' |: G) q
}" a4 `: z+ j: M2 D2 A: O0 I2 l* O
pLight->Diffuse.r += 0.1f;
; T6 W0 ]/ L' j9 L! |; r: L' r
pLight->Diffuse.g += 0.1f;
Z3 j2 u0 B+ b. a: f
pLight->Diffuse.b += 0.1f;
+ l2 m% V! F% L: R3 n, K$ k t4 K
// oˉè* ??à?
. Z5 n3 u0 r" F8 ^. n
pLight->Specular.r = 2.0f;
5 U( r% L- \! x4 F/ c
pLight->Specular.g = 2.0f;
9 h: d! D! S" j* t% {
pLight->Specular.b = 2.0f;
+ l' @" H8 l _% Y) {0 V
// á?oˉ
" [2 ~: V: h- k+ T2 H
pLight->Ambient.r *= 0.9f;
) K4 A. j' d7 F! K/ S" o* x
pLight->Ambient.g *= 0.9f;
0 [" N; \6 V" q: R
pLight->Ambient.b *= 0.9f;
$ ^+ E/ d3 S6 a8 r; Z4 v& S9 P
+ b1 j- [, f- p. ^9 a/ \9 y. j
memcpy( &m_light, pLight, sizeof( m_light ) );
6 u$ M7 C$ {' R) d4 O
- B9 i4 R5 a: X7 }! S
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
7 r3 J2 E8 Q7 _9 O
pLight->Appear( m_pd3dDevice, TRUE );
( Q, I; ]; s* |$ Z- a& z
& j! W: C6 O* \; F+ A' B
DWORD dwR, dwG, dwB;
/ R5 {. y4 i! O8 l& `
dwR = (DWORD)( pLight->Ambient.r * 255 );
N$ C1 S" F7 p: K
dwG = (DWORD)( pLight->Ambient.g * 255 );
# r1 `4 Y' N% F: g3 a) c
dwB = (DWORD)( pLight->Ambient.b * 255 );
- l5 f8 @4 [2 b
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* P c; u8 x5 p/ |: J2 G
}
% D+ B& B* H0 ^
}
8 b" a; J I! a
else
+ H" V) N/ W, y
{
* Z1 b0 w6 Q; h9 D" W3 a
if( pLight )
* u+ l% @1 v y9 a. j! }( p
{
' c8 M3 a6 K/ R, M
% a; D. c% X8 A7 L2 `7 c( p% d
int nHour = 8, nMin = 0;
4 g/ A4 j" W4 a8 ~8 F$ X H
#ifdef __CLIENT
: C& T" d( |4 L9 k, B9 X1 S0 c% a
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
3 A% t( ~- _, W5 r; j% V
nHour = g_GameTimer.m_nHour;
5 Q; R1 }/ d2 o1 c4 p/ ?% i2 h9 _! H
nMin = g_GameTimer.m_nMin ;
) q) E0 p, b( R6 h2 ?3 u# x
#else
4 S: Z9 \+ S# a, n/ b3 A
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
" m# q* J; Q* t
if( m_nLightType == 1 )
( U3 f# e e" N- K
nHour = m_nLightHour;
/ ?+ y5 g3 t0 ]& X; P
#endif
. T2 B0 t( G9 `# }- Y
nHour--;
8 c( w4 k- m! i( v
if( nHour < 0 ) nHour = 0;
E* T0 G& b4 a9 X2 t* j: z" v- _% W
if( nHour > 23 ) nHour = 23;
" Y5 }% }& ]. }* }, B8 G6 B4 r
; E8 `7 ^ o3 F6 p# J2 E; E8 O$ ?
//if( m_bFixedHour )
7 c5 C& Z2 f y; I& e
// nHour = m_nFixedHour, nMin = 0;
- h/ R+ j) A0 H$ y( m1 r7 C
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
F! J! h0 b+ H+ [5 V) j5 N6 J
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
( h R2 u. l; g/ W
' }' C& t5 h9 F( o- N
//m_lightColor = lightColorPrv;
$ L3 g# ?/ I$ n* ~
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
1 R. \1 ^7 f: V8 N
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
: [, }% X0 [/ [+ Z/ B8 l
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
* t; G8 _8 t, J% n f
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
: p D: ]& C) q6 s2 Y% U
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
( h* Q" B8 x& @. d3 |! _ Q
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
6 q9 P1 o8 s0 l* E4 r0 S* W
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
& V, I, \6 U9 Z* g( V* O' B% z1 i
/ L' |8 Z, c3 ^/ J4 A3 A% u# }
// à??μ oˉè*
2 x8 W2 U' a! o6 }' O7 ~4 Y4 @
pLight->Diffuse.r = lightColorPrv.r1;
$ D w \3 ^- c* M2 j
pLight->Diffuse.g = lightColorPrv.g1;
% Q" V+ J" n- K% X
pLight->Diffuse.b = lightColorPrv.b1;
/ { }4 c/ |8 _& f1 R
// oˉè* ??à?
) ]( o) c( \# F: C; \ T
pLight->Specular.r = 1.0f;
# T* Q. E: g* M7 N# x
pLight->Specular.g = 1.0f;
. ?, Q. n7 x5 P) X; z
pLight->Specular.b = 1.0f;
7 ~& g1 P% c; t- Q2 ] s) I+ J/ h
// àü?? oˉè*
& m! ~, `3 Z) Z# y
pLight->Ambient.r = lightColorPrv.r2;
B0 N; D' K5 m6 M; K9 R* F
pLight->Ambient.g = lightColorPrv.g2;
' C J) g8 q- O
pLight->Ambient.b = lightColorPrv.b2;
/ L8 S% Z. G* J9 p
/ l, Q z* n. M
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
) z+ T& B# t k) ^
{
" ]6 ?- }) \" _7 ~" l V$ R
pLight->Diffuse.r *= 0.6f;
; b% k& t( b8 K8 c5 N1 s
pLight->Diffuse.g *= 0.6f;
1 s: Q" \1 g0 w" G9 n
pLight->Diffuse.b *= 0.6f;
0 M4 a6 O/ A4 s, ^4 w( j
pLight->Ambient.r *= 0.7f;
9 h# }# Z0 b" H' n+ A' g
pLight->Ambient.g *= 0.7f;
& X+ m7 D, L2 U/ W0 @
pLight->Ambient.b *= 0.7f;
/ i" U. ]$ T B; v5 I
}
0 r: \: ~1 ]* d$ E: i8 M" m
' b+ i r7 H$ E9 U0 N
#if __VER >= 15 // __BS_CHANGING_ENVIR
+ s9 Z0 s, o7 F" x% q) ?" x
if( g_pPlayer )
$ `/ k+ r( N( M2 m5 B
HookUpdateLight( pLight );
9 g$ V! W" h) ^& y) y7 F$ Q% E
#endif
( v& P$ F7 B: l$ c9 Z* }! b
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* ~/ w2 n( V/ `
4 l; a! `( y/ d& g: H
#ifdef __YENV
" ~ i8 v* ~ N# y3 s- i) k
pLight->Diffuse.r *= 1.1f;
5 f! e+ t; t8 D ]
pLight->Diffuse.g *= 1.1f;
$ e+ k, J4 v% x0 R
pLight->Diffuse.b *= 1.1f;
a: v! X$ r" X; \ J9 z F: _
// oˉè* ??à?
5 a1 _! O4 {/ J8 b! C% C% V5 Y5 }0 i
pLight->Specular.r = 2.0f;
7 B8 d0 s- y& \$ d0 P
pLight->Specular.g = 2.0f;
* Z( c" |+ P* d! M4 R0 _
pLight->Specular.b = 2.0f;
8 e V X2 D" l1 P n* E
// á?oˉ
M4 l, Q8 [* ^7 _( s1 m
pLight->Ambient.r *= 1.0f;
4 S2 b) Z J; a9 b) k4 M1 n$ T
pLight->Ambient.g *= 1.0f;
9 `- |& |8 H. U/ v* u
pLight->Ambient.b *= 1.0f;
1 m. f# J1 u% M8 R2 X' t
#else //__YENV
6 n2 S; E9 _, q
pLight->Diffuse.r *= 1.1f;
% D7 B; a4 ^! T
pLight->Diffuse.g *= 1.1f;
* |/ q; l( e& [
pLight->Diffuse.b *= 1.1f;
0 K, i Y9 ^- W, j5 z! o; b' l
// oˉè* ??à?
$ `: Q1 @2 l4 L$ u" e, V# n
pLight->Specular.r = 2.0f;
" g) D0 n4 N) E, j2 L' Y$ g4 J
pLight->Specular.g = 2.0f;
' V/ _" F2 Y$ ?+ O; F; j6 m
pLight->Specular.b = 2.0f;
* \2 T1 ~4 M, p! P
// á?oˉ
6 Y2 b9 Q9 @# U$ Y* `9 w
pLight->Ambient.r *= 0.9f;
6 P& c3 M# q6 ^, \
pLight->Ambient.g *= 0.9f;
9 R9 m4 \, o3 A0 K
pLight->Ambient.b *= 0.9f;
" r I/ M R* L4 \
#endif //__YENV
; \- f2 j: H9 w. e+ Q6 ^
4 A! F8 l: ] j1 f
memcpy( &m_light, pLight, sizeof( m_light ) );
8 R# A, C6 e* V- m" p
* j) l& J" I& |/ v) U( E
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
" l7 N" `" J! x2 [
D3DXMATRIX matTemp;
0 O% y9 l$ M. L& {( M
static const float CONS_VAL = 3.1415926f / 180.f;
2 n, E0 I0 l" v' ~1 q( H$ u- b; [
& l {1 k @: V' A" Y
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# X1 D9 p* j" t2 `3 i+ | }) A8 V% \7 g
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
* R0 V, N1 {- R' \- g: q" [
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
1 [0 ~% D `# \% ^
pLight->Appear( m_pd3dDevice, TRUE );
; z; K/ \4 ]1 u* O4 L( I
# K- H, D# G$ i3 F
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: O* _* p6 E& t5 y F
// D3DXVec3Normalize(&(vecSun),&(vecSun));
: }, w# I7 L: W
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! _/ o' e" N4 Y4 j( E- _' K
' e8 b) i8 G4 q9 ?3 H
DWORD dwR, dwG, dwB;
% ?' B) {5 a# _; f
dwR = (DWORD)( pLight->Ambient.r * 255 );
' E& N2 O, o) w; {6 U6 `
dwG = (DWORD)( pLight->Ambient.g * 255 );
" y4 L6 f- T- j4 H: f7 Y! K
dwB = (DWORD)( pLight->Ambient.b * 255 );
0 m/ K, k, s6 o; W
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% S$ \! G* S) k! w# z7 ]
}
/ C* A1 p; t( _8 w: f
}
: o# b' ^. }3 N3 n
" a4 S' H( ~- _% h
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
^, T 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) );
" _8 E8 R' A# z3 y0 _5 s
::SetLight( bLight );
2 J5 t$ }4 ?& u6 h, M
& h, M3 v- @' b. l. ^
// ±ao? ?D?í???ó á¤à?
% ^2 l; z! D% i5 t
m_pd3dDevice->SetMaterial( &m_baseMaterial );
7 @- k& ?' P7 t1 b* f
6 f1 j& D2 @& f2 z- l& j' J
#endif // not WORLDSERVER
. s6 T. f) H8 @8 C3 p
}
- T; f4 S8 O ?9 W% m
并更换
( w; d& X' N3 h7 W" X7 C
Code:
* F. h2 d9 w7 E) \: ?
__FLYFF_INITPAGE_EXT
7 D7 y( q1 M {
定义
1 ~% S- v' ?% N$ P
3 t9 o0 @" ~. R
; Y" R) X2 c, C( M( [% H/ O0 c% ^
1 Q/ Q3 C4 d( S' Y+ X
6 T. N% t" a2 L1 ?. A& _( r i+ t; L& b
现在终于删除我的狗屁加速...
% w0 p; b+ y0 o# s( z, {, h
' ?$ P" v! g- }. j4 j: z+ A) [
5 y9 E9 w( B& V
# [0 l, c2 C8 l* e* P
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2