飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
7 {/ K5 w! i, z/ E0 e4 F
尾翼:
$ d* F. Z0 D5 m/ {! ]: m9 `% C
2 X$ X9 G7 B1 h9 ~+ t2 t# u6 M
代码:
4 p6 t+ ~- T% _/ i
CWndAutoFood::CWndAutoFood()
4 Q/ U& u- H; l% v
{
: o8 W( a4 \, t; g8 d% x9 x3 z6 Y
m_pItemElem = NULL;
: y' t" f7 d' O) S
m_pTexture = NULL;
8 p7 h& s0 k7 [ ?" M- ^2 l
bStart = FALSE;
" V9 e2 Y+ U$ k h
}
0 _- ~/ W$ K! M$ D+ Q
. e* a8 s; }4 y# |$ \3 I a$ o
CWndAutoFood::~CWndAutoFood()
" d* K1 D' y- a& `+ a0 M4 q
{
7 K4 f- `+ C* P- u( \- v# }0 \) Q5 b
AfxMessageBox( "AutoFood ist gestorben
" );
7 U+ i3 D, l) P' q
}
) k6 l- y% z; R" m/ Z$ ]) w6 ~' z3 Q8 E
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
5 h8 l- _ S+ k c: u
{
5 |: i1 n$ M" @& V* E4 P
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
/ M) I7 M3 m& F$ u
}
* U8 e: y6 y$ X' v
; t# k x: v7 V. y7 [
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
4 k8 {; R5 M$ _$ t5 h' ]" Q
{
; T) C* e; L* Y1 t( g) n
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* x4 H7 b6 F2 y. |* E) R; @- ?
CRect rect = pWndCtrl->rect;
, o3 R5 b, ], F7 \0 C
if( rect && rect.PtInRect( point ) )
% l- d1 I& L6 p. m& \) q! }
{
" [6 a8 o( Y0 l: A- C
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
! `' n! {: i. L
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ f" S& v: f. I( M# X3 J! ^
{
9 V6 Z8 W/ N) g' ^
if( m_pItemElem )
$ U* T# [% q' ]% b B0 v/ W
{
8 p. J' `4 t9 d7 c8 [" k0 e
m_pItemElem = NULL;
1 M" r$ }" F% y6 c" ^; l
}
$ F5 o/ W8 Z2 L. l
m_pItemElem = pItemElem;
) M; _* l1 |4 p1 \0 F" Q. F
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
& X4 H& d2 U/ A- E0 n
}else{
6 F$ G, ?3 E6 g) H& j h
SetForbid( TRUE );
' U* f) B' K- g4 ?5 y3 M/ A
}
" U2 R: w9 p+ C
}else{
9 s/ k# k. a# W2 f! ~: L% S8 K
SetForbid( TRUE );
& y7 e$ E) a+ \
}
$ W9 M! I0 j& h3 X, l
return TRUE;
_4 o$ d! H( ]+ u
}
1 U# L! L- f6 s0 I& R4 l
2 ]# R7 X8 z; ~4 q
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
1 d# g ^9 Z6 L: u0 ]4 Q7 x
{
7 K: P+ v# w5 v5 Y( \
switch( nID )
6 w1 w1 b7 m. @( g9 s
{
" Q4 b6 C! T3 o* f; [5 q5 d
case WIDC_BUTTON3:
- d4 \5 P( m5 p6 _7 t# ^
{
1 X4 Z4 }6 m. _' q
bStart = TRUE;
+ j5 }2 c$ }! W8 }9 i0 y2 r/ J
break;
+ @7 h/ d$ x' l
}
( c: r# W' S5 S! T
case WIDC_BUTTON4:
; T [" y! X7 s/ k1 |/ T8 M5 e' M
{
& m/ ?/ E2 G A9 t& {
bStart = FALSE;
: H5 |! X1 H% Q
break;
' l/ }$ ]7 j5 T) @! S% H6 \) S
}
7 [9 _. t6 J. V9 O# }9 [0 M
}
4 C$ P2 y3 U. O7 |5 R
return CWndNeuz::OnChildNotify( message, nID, pLResult );
Y ]6 c7 U( U
}
; g7 I6 G# r! W; m$ v$ y/ Z
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
3 \0 A! }3 g' `6 K3 l
{
, C. S/ Z5 n6 b2 w" {* @) F% U$ r) X- y
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
+ n1 o; q; |) Z/ j" i' K
if( bStart || !m_pItemElem )
! W6 W) o6 X0 Q* X- |
{
, j; c, o" H: C
pBtn->EnableWindow( FALSE );
8 }/ m- }. q( ~% G0 o/ n
}else
$ E* M% V" O3 y5 x
pBtn->EnableWindow( TRUE );
2 V. p* q& R: v6 e0 k+ f3 L
if( m_pTexture )
' @- s3 x9 \) @ Q) p$ x- k( w
{
3 ^0 S7 X5 |$ G2 ~/ q* w) Q
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
S" y) D1 h& r4 H8 O6 P
if( wndCtrl && wndCtrl->rect )
' l3 P) {4 v. P$ i" M
{
7 U/ B! d9 B6 p/ w5 [, @
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
/ n k+ z8 C! q5 u+ R
}
" b; C7 Z$ v! t
}
6 W* [; m, @; }& d
}
: F. n4 y% t. E; W
& s; r. Y7 E; K4 g' _. h& Q
BOOL CWndAutoFood:
rocess()
! P! k* T& A- ]
{
* T( n N- q" W( d
if( bStart )
/ G; O4 L2 a [) F1 \- O
{
: t7 {; }. _9 ]; C- S2 z& W
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
! U; r" o% }' B# K2 s5 H% a
{
, G8 ^1 ` L4 t8 O
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
5 B# l# _9 h8 ]) T8 v7 p
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
4 _# P B7 e$ ~# m2 U* W$ @
}else{
) n& m9 `1 g& c
bStart = FALSE;
" ~. s, ?3 G) W4 p
m_pItemElem = NULL;
6 u; F4 |! ?' G# f
}
5 ~5 J% H5 |: B
}
/ [) V5 z7 _7 J& K; j& y4 |
return TRUE;
' m+ I6 ]/ W* t2 i$ O" R% f
}
: K- B! e$ K/ ^5 T
" R1 R+ q, v6 G8 O5 X; C
登录视频废话:
0 Y/ j! X9 k6 p: } X. l
尾翼:
% T% C+ c5 U: h+ h3 n
0 X6 h' Y/ @8 v" v* J2 {) X8 d
代码:
y Z% _- D. g6 U% O7 \. m1 K' u. O
# A3 v4 X. X6 W2 p- w
void CWorld::SetLight( BOOL bLight )
9 e+ K; Q2 a X4 B1 a
durch
. J n1 l6 { G# _
Code:
# S" u. X$ B# ]5 J6 u) O$ _
void CWorld::SetLight( BOOL bLight )
~* a( f0 c) \0 x6 ?
{
( ?, K' C. X& g. r& z
//ACE("SetLight %d \n", bLight);
6 U4 Q) R' \& k8 n
% E, R' ^2 B8 L9 u( k4 j, u+ e' k
#ifndef __WORLDSERVER
( j5 s: n9 U* s$ a8 s& Y; E
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
' y; [7 t% O1 J5 H; p
CLight* pLight = NULL;
0 S6 h5 E2 }5 Q$ w
$ d6 Z2 u, l0 x$ _* P- t+ M. P; }* N" D* H
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
6 ~* o! y' P3 v* d5 _( s
- @8 G7 r; r/ X4 P
pLight = GetLight( "direction" );
$ }# r+ l/ f" X* V/ V1 w0 u. I
$ w8 G9 ]* ]9 I/ y; Z
#if __VER >= 15 // __BS_CHANGING_ENVIR
! R4 i% D* x9 B& ?! [' a4 |
if( g_pPlayer ){
% a( o9 }$ s1 M$ H: b
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
$ V2 \' \9 y- x3 h+ I! I# G8 G# f
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
`0 A$ X4 o& O. {* }2 ^
{
1 }6 c7 [0 x$ l, C
if( pLight )
4 a9 n9 O" D3 K6 Q
{
& B7 V3 @- v: `% p1 h/ Q# ~
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
9 \5 `2 e8 n% m
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
; Q6 f5 ?' i" x% }# m" p
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
; B/ o& w7 |/ y# m. e5 \: J
3 _4 A! r0 u$ Y2 w% H. P
pLight->Specular.r = 2.0f;
2 t# p# s4 g& s5 a
pLight->Specular.g = 2.0f;
6 s, `: G3 z. U1 V0 `
pLight->Specular.b = 2.0f;
, l, E$ C! P0 W: h& M- _ O
) B! t( q i: R! o1 Q% i4 R
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
( E9 {4 d$ P W# q+ }$ s e; P
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
7 ~3 f! }) K5 m
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ i( I U/ ^2 w) t/ y
5 }, I m3 K i/ R
HookUpdateLight( pLight );
) d w) _! x* F1 g k: |2 a+ H% a
) U/ c/ H3 T: ?" W' Y
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 B/ P0 g4 A; j# k" v
" n, v% v7 d& d2 A* {3 B: V
pLight->Diffuse.r *= 1.2f;
6 v2 F& t* o: Q, d# x) @* q
pLight->Diffuse.g *= 1.2f;
! D4 V) { w) E- x
pLight->Diffuse.b *= 1.2f;
$ r+ t2 b0 B' U' T/ L4 u9 }
5 p9 X( c; Y& _5 J
pLight->Ambient.r *= 0.8f;
& Z2 r, Z$ I- U
pLight->Ambient.g *= 0.8f;
5 ~( R' F8 h" B( O* p
pLight->Ambient.b *= 0.8f;
! H8 o( P; A+ j; \" y
0 a% D- W* ^+ f. Y3 A: O
memcpy( &m_light, pLight, sizeof( m_light ) );
+ z- G1 s. V* X u! ?
( F1 \/ D1 [" e* I5 g/ Q
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
. ~; O" H% l/ n; b- k! i# |
D3DXVec3Normalize(&(vecSun),&(vecSun));
0 U4 N2 z6 {) i
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
- ~) n5 L( i) t' M) S5 K
pLight->Appear( m_pd3dDevice, TRUE );
# j1 V/ Q0 d3 s7 L- Y
) W* }3 X$ m- Y: B* B$ W$ `; d8 R
DWORD dwR, dwG, dwB;
) ?: r/ v9 R& F( q8 f$ ~5 u% \
dwR = (DWORD)( pLight->Ambient.r * 255 );
& \. F) T2 Y( A4 O" O' q3 I
dwG = (DWORD)( pLight->Ambient.g * 255 );
4 v0 ]- k: G0 \/ j
dwB = (DWORD)( pLight->Ambient.b * 255 );
- o# a) d y) Q) a+ H' x
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" v9 A! g$ O6 o1 ?* G* H4 `
}
0 M( E6 v! b& i: e9 x) m- D
}
" X7 Y8 S" \! m5 X+ A% x4 _6 ^9 g# ?
}
9 i: E- k8 K; |9 C, y- K$ S5 X
else
8 O+ \' U& B+ O1 D! W. X
#endif
2 m: n7 D) X8 A( _& M9 [2 j
! @$ y0 w1 }+ P+ r* u% B5 {" {/ |* K; Y0 o
if( m_bIsIndoor )
7 e" j7 ?8 D7 N$ p. p4 T4 x% k3 n
{
6 J- Z' |, k- p. l' x. Z
if( pLight )
: w) U* w/ b3 A2 ^1 K6 ^
{
% E e2 a; K+ j9 q7 c/ m
// à??μ oˉè*
2 j& G# `' ?! V! a5 p" q" f
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
/ Y) J: {1 x9 \2 z7 S6 d& H
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
- v8 n: l" z" z/ F- ]9 _
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
+ ]" c) q; s! G6 k$ b- {. I5 i: c
1 ?$ d" O( x2 [
// oˉè* ??à?
9 q# \6 S- {1 S8 }: `5 w- S
pLight->Specular.r = 1.0f;
) G4 ? F' N1 Q! h! F
pLight->Specular.g = 1.0f;
1 o# h N4 `/ _3 V- R- v
pLight->Specular.b = 1.0f;
0 ~; V/ t# c; P1 K- ?
// àü?? oˉè*
) b# V* A( v" e
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
% C- M% d+ j) v4 j
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
% b5 b% J) z# X8 _- F3 m# I7 o
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
$ S% V, F& g* ?5 L5 Q
$ ~# S) V! n' k6 o2 w
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
+ ]) l4 M, f, T( ]) R3 e; m# [
{
# S6 `, d8 _0 c+ Z; r; `
pLight->Diffuse.r *= 0.6f;
1 V, y5 I% \9 O# w
pLight->Diffuse.g *= 0.6f;
; D$ Z# I5 X D! E( W d2 M
pLight->Diffuse.b *= 0.6f;
1 h* U k% u8 ?! f$ o9 ?8 a
pLight->Ambient.r *= 0.7f;
+ m2 Y' k, D5 m, D, \, U: I
pLight->Ambient.g *= 0.7f;
0 f) {% A& D5 B4 e
pLight->Ambient.b *= 0.7f;
1 o% f; x- H; O5 ~+ p
}
4 L5 L: @; o# D' L4 i
* d8 m) u7 p" Q1 m" l/ B/ h
#if __VER >= 15 // __BS_CHANGING_ENVIR
" \# L7 b: S$ E; K
if( g_pPlayer )
% d! j) |# s6 R( k' D$ v, X
HookUpdateLight( pLight );
0 _ _* V0 t: c2 A% F& ^1 `
#endif
- F L5 ]% {# N' @
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 P. [; {* M; ~! `2 K2 e
7 g( m. @0 ]+ j8 v+ S9 f
pLight->Diffuse.r += 0.1f;
4 I) W3 c: Y, E9 V# C1 `
pLight->Diffuse.g += 0.1f;
" }% k- K3 @+ e5 }' q, i
pLight->Diffuse.b += 0.1f;
h4 v" D+ {3 [1 {$ K
// oˉè* ??à?
$ A/ o% R9 b. \+ L( r5 M6 C
pLight->Specular.r = 2.0f;
6 }0 Z) |5 B, ^( U
pLight->Specular.g = 2.0f;
, i5 i) }. c' n1 r2 u' i
pLight->Specular.b = 2.0f;
- J0 o5 c2 s* T5 Z3 B
// á?oˉ
! l; Q9 x* ?7 F1 h( j* _
pLight->Ambient.r *= 0.9f;
8 `2 p" ]' T& m$ A# O
pLight->Ambient.g *= 0.9f;
( o; J: h' ?& Q1 P8 ^% u+ w
pLight->Ambient.b *= 0.9f;
9 z# T& N. W7 [. M
. d# [9 i' T3 E. U
memcpy( &m_light, pLight, sizeof( m_light ) );
" q- t7 s7 J7 G0 H: P* \& M
6 i1 D1 @% z/ l( ?" j
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
1 o1 F$ M5 q" [% c. [. `* M) L
pLight->Appear( m_pd3dDevice, TRUE );
" L$ \& a0 i% s3 ^! P9 Q
1 b6 N# H2 |9 V9 A- [4 `
DWORD dwR, dwG, dwB;
8 g7 i% m0 o7 R) }, A
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 }- y7 J% B" B. M c3 g8 B7 A
dwG = (DWORD)( pLight->Ambient.g * 255 );
. o( U6 N/ m5 g) }7 f! z$ w# s5 \
dwB = (DWORD)( pLight->Ambient.b * 255 );
- D( ^8 l9 M1 X, |+ S V9 R; L# n
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) D) t2 d# z+ i% q5 E; s
}
4 ]# L- r' G/ M
}
; v6 ` V$ F4 r# v# f+ ]/ e* A
else
/ L( S5 U& ^) Q* a6 b8 Z
{
0 p9 j7 B J" S- F6 ]' y
if( pLight )
& W, E2 P+ q4 {8 ]
{
, U. E* F8 j. Y8 T( F
5 b/ o1 W1 k3 U# I# F9 P
int nHour = 8, nMin = 0;
7 a0 Y4 ?0 ?0 U# L6 M
#ifdef __CLIENT
# }( a3 N1 U3 m' T4 j/ Q+ X! X* G
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
7 Y; |. N- ]& ]8 R/ L
nHour = g_GameTimer.m_nHour;
; M1 V; [7 l3 F, v) \
nMin = g_GameTimer.m_nMin ;
! n, C4 X1 u0 i. R" D- L7 ~
#else
/ v9 C- E k6 v/ G; K
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
; q# v# O' h, A3 Z0 E
if( m_nLightType == 1 )
X+ c/ z/ g: d: O7 y
nHour = m_nLightHour;
& w7 e. I5 F9 H3 H" j u/ N' g
#endif
# c% a5 B; k1 |
nHour--;
1 B1 f3 P7 X3 i3 @9 G* E9 y5 O
if( nHour < 0 ) nHour = 0;
p4 d$ E. g: P) G1 Y ~! E
if( nHour > 23 ) nHour = 23;
+ \ d& k6 G' x' C _: w
% n% {2 \; _5 q. }
//if( m_bFixedHour )
" O: I, n; A1 D9 {
// nHour = m_nFixedHour, nMin = 0;
+ q2 c+ k0 h0 b- p. B9 P
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
! P l8 @* U- {% l6 z
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
+ M' C6 m! `( w2 i, X7 {
0 j% g8 T3 f* y, G1 ?2 Y
//m_lightColor = lightColorPrv;
; Y3 ?! g3 h! l( V* k, ^6 X
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
) k/ O( h, C: M* e; N
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
& n/ b1 h! j7 W7 c/ x
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
1 o, X+ d) y# R9 Z% i0 G
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
1 b- R' `: |9 Z/ S6 j" L- e
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
) w. n" G' N- r: P7 H. t& L- P
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
5 R8 T/ J, X! i0 h; V6 ?0 w; \& k) _
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
% l, Z2 T5 E. d$ M8 f. @
2 X `; q0 b% g1 K' }. e. r' ?' Q
// à??μ oˉè*
`0 }1 O8 T% g& u# K
pLight->Diffuse.r = lightColorPrv.r1;
1 A5 }# w3 I U- m
pLight->Diffuse.g = lightColorPrv.g1;
) C" m/ U5 Y) `# k9 q, h
pLight->Diffuse.b = lightColorPrv.b1;
. k& e$ O* r- {$ T
// oˉè* ??à?
; \- y! i! k; _
pLight->Specular.r = 1.0f;
& T" E; |. v6 H: s
pLight->Specular.g = 1.0f;
' |! K: k M4 X; |; l
pLight->Specular.b = 1.0f;
1 g; \6 h6 |* d; K$ h N, v M
// àü?? oˉè*
5 z7 m) @7 ]1 K+ F1 g8 Y
pLight->Ambient.r = lightColorPrv.r2;
9 P- g) p! `: P
pLight->Ambient.g = lightColorPrv.g2;
0 ~9 w* t/ V. P+ x6 ]- Z: q6 S
pLight->Ambient.b = lightColorPrv.b2;
2 X9 c; ?, U% o' s5 H3 y
; k5 B" u, Q3 w
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 A' w! B; b$ V) }7 s5 R, n1 ?; S
{
" U' G5 m3 t# K, ?
pLight->Diffuse.r *= 0.6f;
7 }0 m8 {' B# P
pLight->Diffuse.g *= 0.6f;
1 U& d! _5 F- x u
pLight->Diffuse.b *= 0.6f;
( K4 S' j% W; A0 |8 }; Y
pLight->Ambient.r *= 0.7f;
; S# R. |, d- }/ o4 _1 c
pLight->Ambient.g *= 0.7f;
5 U9 f& F6 }3 j2 J, N
pLight->Ambient.b *= 0.7f;
4 X4 G3 Q0 ?: c4 O# e% E
}
' G7 D: ~1 e9 e! n, m5 \0 z
" P, `$ [) h# n4 _6 j6 P
#if __VER >= 15 // __BS_CHANGING_ENVIR
D5 t# J! Y3 K8 l% e$ G
if( g_pPlayer )
4 f) ^) y& d! {
HookUpdateLight( pLight );
7 ^ t/ l4 x: n
#endif
* ]/ @, q& {3 q6 K5 j1 z9 ]
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) z5 @0 J: ?2 H3 q/ ]* J* D+ }2 Q+ b+ ?
, \6 Y2 F% W( P) ]! Z
#ifdef __YENV
& \& H" n- q! R$ |! x
pLight->Diffuse.r *= 1.1f;
, P# e; b2 x% t r* D1 V
pLight->Diffuse.g *= 1.1f;
. V6 ~8 H/ |, R6 r) o
pLight->Diffuse.b *= 1.1f;
) O6 S( c0 A, D( Q$ }3 O
// oˉè* ??à?
/ _/ ^2 H. A3 w: N# ~: C
pLight->Specular.r = 2.0f;
8 ^1 t% {2 n3 n; W; T- N( S
pLight->Specular.g = 2.0f;
E/ J: p8 c4 @& I' n1 \
pLight->Specular.b = 2.0f;
$ `: V ]4 `5 {2 H, z$ x0 B0 K
// á?oˉ
* t$ l/ @& b; A( \0 L6 i
pLight->Ambient.r *= 1.0f;
- t* }3 U; ~' Z+ f- M S5 Q& }
pLight->Ambient.g *= 1.0f;
0 k$ R) c3 @) T' I% Y1 o3 x, z
pLight->Ambient.b *= 1.0f;
: l: t% @) L& r8 ], ] J
#else //__YENV
3 _! K" D# h/ u& ?
pLight->Diffuse.r *= 1.1f;
5 P9 @4 n1 w5 d* E
pLight->Diffuse.g *= 1.1f;
1 l/ [! m& e! u7 n- o. V
pLight->Diffuse.b *= 1.1f;
/ l& P% E, l8 g% k1 {
// oˉè* ??à?
3 G* l% r. L9 `/ o' F) p
pLight->Specular.r = 2.0f;
- }2 L7 r5 M: m0 K4 @4 ?
pLight->Specular.g = 2.0f;
8 d4 w! B8 n0 T0 s
pLight->Specular.b = 2.0f;
: x4 R/ m' j5 d
// á?oˉ
# }$ L O2 w+ i- a2 _. F
pLight->Ambient.r *= 0.9f;
# D0 M) Z l7 e* O R
pLight->Ambient.g *= 0.9f;
* l9 s5 R% }, E
pLight->Ambient.b *= 0.9f;
0 W) z( ~; r8 x% C$ j
#endif //__YENV
( g% S4 L# V. K( V, G& ]
5 X+ B0 ~3 X% @
memcpy( &m_light, pLight, sizeof( m_light ) );
3 j% T, f" H/ j. Z3 B2 n+ ]
( o# @0 x! P# r9 h
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
9 [0 ^5 x& a/ c1 @4 n) S! h
D3DXMATRIX matTemp;
9 X% w: `- m- v( g$ Q& i; |) s
static const float CONS_VAL = 3.1415926f / 180.f;
% l8 }/ x5 S, V, E! m. m8 a
" y9 W$ h& g& D! m
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
- _- B7 y9 E/ N7 N6 V7 D
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
' q: k& }8 Q; l1 i6 m
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
# K$ _' L5 j, x' v7 v
pLight->Appear( m_pd3dDevice, TRUE );
. e C, M/ n$ l! W+ g: ~
9 Z! x: }- v% X0 u4 n: I0 ]$ i+ L
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 _7 S4 b6 d: F5 s! B* ~
// D3DXVec3Normalize(&(vecSun),&(vecSun));
$ [' \5 k9 W) l* C
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
0 [* u D6 v- D4 r2 J
. n) u# K# l% Q/ Q- u
DWORD dwR, dwG, dwB;
/ e7 }# l0 L: x
dwR = (DWORD)( pLight->Ambient.r * 255 );
% h: I- K2 Y( ^4 Q
dwG = (DWORD)( pLight->Ambient.g * 255 );
. A4 u6 V+ a: W# x+ X" c
dwB = (DWORD)( pLight->Ambient.b * 255 );
0 ?3 {: Z! I5 w% h# k C
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 ~" U4 V) v* w2 G6 x
}
+ }- t# {3 u- @0 s" j6 H
}
- e' m+ {- {/ _% g- W
9 i6 t* k' w% {4 N! u
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
) N9 ^2 O. F, e$ V; b1 \
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) );
# T) U2 p7 a8 b c; O
::SetLight( bLight );
7 h8 v8 Z. V, z' G: m! _# q
% y7 `( a- Q8 I1 H5 o
// ±ao? ?D?í???ó á¤à?
9 y& o; ]& w) }3 A2 a
m_pd3dDevice->SetMaterial( &m_baseMaterial );
" E0 S, H* k( _; m' D
6 G6 L! k. y- x* Z2 }
#endif // not WORLDSERVER
/ q0 j t, N/ F- a$ N
}
# c( b4 a: J7 g, a
并更换
* d3 D7 b+ B+ ]! Y! B5 r
Code:
U7 L0 H" ?3 n0 d9 L
__FLYFF_INITPAGE_EXT
, [9 G, s3 ]/ |% _, |# R5 d
定义
' ^6 [6 d$ B; {% _! m+ l5 u
: S% }* X6 _1 a" g: n
! f. n7 Q. d" D
3 y) M/ V+ |: O( F0 k. @
4 T ]/ e. ], M W) @+ l a
现在终于删除我的狗屁加速...
& t( T* R" }. k
, d4 |8 Y. E _1 V. Z5 I
' j' e7 j j: R: V
- y5 E! S( O, l( g5 [) T5 G
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2