飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
/ u, k. ~- \3 l$ r/ D- ~& |( k
尾翼:
' t; Q, Z( ~% o; L
% ^& ^" X( |$ N8 c7 v
代码:
& {- E' c" C9 j0 @
CWndAutoFood::CWndAutoFood()
& y2 `, T( `$ d2 p' ^8 b2 V, e
{
6 \; f1 f4 D9 S% }& x! a5 J
m_pItemElem = NULL;
7 H! a9 B, e6 L+ m: u( E3 l
m_pTexture = NULL;
; @5 Y5 Z) t0 x8 k8 U) F
bStart = FALSE;
) H5 X! N2 E; h- X _
}
- j- b- {& t. ]' C
0 r/ x% L) [& j+ R! f( \1 E
CWndAutoFood::~CWndAutoFood()
/ @1 k9 i9 {4 e. h' E8 W/ P$ m
{
! G) D O8 C2 {4 t. ^: ]) d7 \ G
AfxMessageBox( "AutoFood ist gestorben
" );
- V! a6 C4 @8 E& t1 f$ d6 E5 Q5 I7 u
}
& x9 Z% n: R$ k$ {6 u: R% v+ `$ H
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
+ \* x; N" G: l8 ` Q+ K
{
9 q/ z) `7 h$ B$ H; N
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
( S% d9 ~: u3 C; O; z) G
}
% v' a7 J8 x: L
# `1 |) X0 G9 }% M
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
( Y/ f7 a$ y9 D
{
w8 f/ a( v0 e* f
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& H1 E4 y9 c+ |; R4 U2 ] Z
CRect rect = pWndCtrl->rect;
% G9 ? {5 |8 k
if( rect && rect.PtInRect( point ) )
( t- o: ?8 F; e+ V0 \9 M( C! d
{
1 a! o' w& @3 ^/ a# t
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
' B. k/ g$ D) X/ [6 n' t Z( r
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ d% P5 E# |* A3 u9 Y
{
: D0 r( g" H; x( a
if( m_pItemElem )
( r* E9 S3 V2 u/ k% @
{
2 E$ {, t6 I& }& u" g9 ^7 @
m_pItemElem = NULL;
2 l7 N2 E) h7 t
}
h% t3 W5 F: W, }
m_pItemElem = pItemElem;
' q4 k3 a# v W; G
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
( u8 [& I1 t% E# O l0 A
}else{
; d* c# J2 x9 [" u9 I! |& _
SetForbid( TRUE );
" i$ I7 Q8 Y' f+ k
}
$ v% @2 {8 u+ I. u' Q; g! N6 t
}else{
* S6 F) ^. {5 ^: C9 Y* U, m3 V6 T
SetForbid( TRUE );
4 r# s8 _, c6 i @
}
$ x$ B2 h S( I; q0 ?
return TRUE;
" e5 H0 l4 y. H6 f' r
}
" i8 M" v2 A0 T+ U5 R
# Z6 R* a3 ]& y8 }" S* u
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
6 D0 `( S1 b% j- v3 W
{
- a8 m# u0 [' ]( g
switch( nID )
/ p- a6 F2 c3 _0 L% I, X! ^7 X5 k' M. }
{
* |, Y+ s# Q# L: y9 [
case WIDC_BUTTON3:
3 J0 T5 i, v& M8 D2 d
{
e! R2 L q% z& z
bStart = TRUE;
- R% G& h$ R. s. }5 r; m# A
break;
_: u0 H" j2 u' t/ u0 W
}
% E; _. E; H+ f! }4 G
case WIDC_BUTTON4:
9 N% W0 U4 t" l9 v* J
{
5 l G/ Y/ Y, O. }8 U
bStart = FALSE;
! p* Y1 U5 z% H) p( A
break;
[4 v9 f' {" G
}
8 V2 ?- V( j) j+ g/ z! m
}
3 R: o/ U. F- M9 |8 J
return CWndNeuz::OnChildNotify( message, nID, pLResult );
7 f/ w' } v0 P) Z8 J$ ^( h+ }
}
" |7 v0 U; ?: N- f
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
& _+ O; n5 y5 J6 X$ U j' M% m
{
- A8 G1 m$ R8 U* _/ y, D9 Z
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
/ ^5 c0 r" ` o K, L2 T9 o. E
if( bStart || !m_pItemElem )
; ?0 g0 _' W% f- r# P; r9 W, |
{
5 D7 X8 W: _" @0 \* A
pBtn->EnableWindow( FALSE );
* q6 ^/ L- O; i
}else
: t: @0 X) q) d* k; ]
pBtn->EnableWindow( TRUE );
, q! L% d' D( M; j" K7 S
if( m_pTexture )
A, C* v+ o4 O5 d; Q3 u. |
{
* f9 X$ X( _. ?9 v2 W1 d
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
8 s8 D" v. a# `6 G8 ^
if( wndCtrl && wndCtrl->rect )
8 H, n2 l) e3 D, m# ^& q/ _
{
+ h0 S0 ]& `, v
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
- R1 @/ M/ H9 S' w" X& T4 G7 p7 B) k: b
}
2 j& v% y# N9 m# N' Y
}
O+ N( F. s& c$ f* w
}
/ E: d+ Y) A6 g# a0 Y" j) O4 f+ o8 _9 R
1 F- g* L6 K: E! }
BOOL CWndAutoFood:
rocess()
! r ?/ q3 y7 j& E6 ^
{
, Y6 r# J+ X! O' G2 K% N
if( bStart )
; L% H4 Z* n7 Q6 M
{
! u% W, o; C; n K# l) ^
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
4 g [$ i; P$ Y: z! w
{
6 d" _" O# M8 L. L/ T; |- @ _4 h4 Z
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
; A, z* I$ B! ^
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
" [( Q- M9 y; n/ ^' n" I2 ]
}else{
: J( d$ @" N) S6 y0 a- p
bStart = FALSE;
; w, m) b8 i# F3 ]
m_pItemElem = NULL;
3 w9 L5 h' P6 }" B I
}
! G9 q) L6 A9 c
}
2 U: E* s5 J/ |( }+ H" c' V' y* t
return TRUE;
) m J1 O; `- [ [
}
( ~0 A$ B8 Q& n: g& R. m
% D8 o7 j5 x# H, }; I& J3 F
登录视频废话:
9 _9 B( ^! q9 r: |$ U5 j
尾翼:
" J3 V- h, {4 \7 p v- c! O7 X
7 ~! F( d/ A% _
代码:
- O( i( O0 [' M; ?7 H: H# ~
7 C1 F- \. B6 H1 w; B* ~+ q
void CWorld::SetLight( BOOL bLight )
5 G0 Y: k: _/ {9 _* [; P- O% c$ [
durch
0 a; ^ u, |$ {5 @7 I
Code:
8 | N9 Y1 ~+ A; A I d
void CWorld::SetLight( BOOL bLight )
; {' j- _" z* @0 k) ]$ U4 }8 _
{
' \2 ?. z9 L# n7 w6 U
//ACE("SetLight %d \n", bLight);
2 \4 O9 X& I: D) R) i0 c
7 r. w; y+ o% ^& P
#ifndef __WORLDSERVER
( ]% n/ d3 W9 S4 r9 D
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
) c+ d5 k4 h8 n- K/ F9 M- L r4 N
CLight* pLight = NULL;
: O& {, d1 V8 ^) F" X- z1 }* k [
6 c% X$ Q6 Q1 ?+ W* \9 K5 q
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
8 E# q/ O' m6 ] H3 n* P$ x
; W# r/ ]9 h0 Y
pLight = GetLight( "direction" );
- D" j0 I8 a3 K
* u5 f, _0 }! S9 K) p6 k
#if __VER >= 15 // __BS_CHANGING_ENVIR
& _$ ~+ H* p3 P# v
if( g_pPlayer ){
, A* {$ O, w; m2 I2 t/ x: G
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
/ e( k- C; g5 p2 T' u" T5 _4 |- u8 c
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
" e: ^% A6 d5 Q! Z" _
{
8 B5 `! N9 `9 P( Q) r/ q: c6 ~( S
if( pLight )
- p% I0 H G, z3 l4 v
{
4 ~0 o( i+ ?! q8 I- U
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
- u: |' ~3 Y' i2 y6 G* Q! ]
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
) u' O% }* V1 H: d7 l$ {
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
2 ?( U$ P/ A5 R; F& \
* {9 }' P4 J; ^3 `8 N4 e' W
pLight->Specular.r = 2.0f;
( K7 H: y, w. h( g4 |
pLight->Specular.g = 2.0f;
, N" I0 L# a& |& Z A2 A; b
pLight->Specular.b = 2.0f;
. [* M8 O0 I! h4 b( F. [# A
6 r" t. l& P# E
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
7 {' m% g$ c, {5 e! C5 { c
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
2 |( S; U+ |) ?! s; ]5 L
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ H; }2 w! u9 B7 U- {) P$ R1 d
7 u4 z/ I" H% _1 P, G8 b
HookUpdateLight( pLight );
Z% X4 ^4 C$ M
. b/ Z; M0 v2 M [, f# U0 z
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 ^ s+ B v" `( d( v* n& t$ D
" G: i5 F1 n1 m6 m# ^. P; s6 N
pLight->Diffuse.r *= 1.2f;
$ W8 ~$ e7 U) f- s1 J0 u( o
pLight->Diffuse.g *= 1.2f;
$ N% K% ^/ \, x
pLight->Diffuse.b *= 1.2f;
' d; M$ s0 F2 }9 [4 l5 X
0 S5 Z$ L: V0 F: l6 i7 P
pLight->Ambient.r *= 0.8f;
. _, |* f1 r: W% E2 E3 z
pLight->Ambient.g *= 0.8f;
( y0 a# A0 G! ]5 w2 T' e4 U
pLight->Ambient.b *= 0.8f;
+ c+ n/ K' d, s0 M% F
, d: D0 z$ e, N6 ]+ I2 A4 q
memcpy( &m_light, pLight, sizeof( m_light ) );
0 ?5 A7 v* |! K8 L. k
% ]& T5 d2 n V9 \1 s+ S7 ?. H0 Y
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: |& ^3 W' _2 p8 q9 A
D3DXVec3Normalize(&(vecSun),&(vecSun));
& \0 m8 B9 U% g- x7 |4 {
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, k; D8 W0 i0 [) r
pLight->Appear( m_pd3dDevice, TRUE );
# j f( \; U; k; ~$ }
7 f1 j) K; L8 v
DWORD dwR, dwG, dwB;
2 z. H$ W0 f0 ^: u2 o4 z2 P# l
dwR = (DWORD)( pLight->Ambient.r * 255 );
! n& q7 ?; C6 z6 |4 a- ]
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 J* p, {/ q4 {8 A
dwB = (DWORD)( pLight->Ambient.b * 255 );
) Z w5 d8 n# |5 F+ j# [8 b
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ f H* I l3 U6 l
}
' X$ b. W3 m0 Q. D2 a% ^( i
}
* B7 ]: X4 W7 x8 ]* C a
}
! U2 l$ N/ l8 [7 E- |- r; @
else
- @$ v h9 y4 N- C& k
#endif
. M5 d( m! y$ f( b+ G2 G
, _' c( @8 ^$ Z: ^
if( m_bIsIndoor )
0 ^: ?% d( }, Y! c# [6 k5 V7 X
{
# [8 U5 R, g5 K2 Q7 H1 O K
if( pLight )
8 g( C6 k. j+ V8 U' N
{
& n9 m* M3 w7 [, u" |' E
// à??μ oˉè*
5 d# r. d' [, T |' I
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
. u7 g' y; l/ w* W4 k
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
' e! d) t/ _5 W( ^; H
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
/ H( R% F7 D5 Q0 O
8 Q8 A! `& ]/ O/ _
// oˉè* ??à?
# Z1 z+ Z9 s( ^5 z" ^0 P6 |
pLight->Specular.r = 1.0f;
% v1 w1 D, h! ~: Z* P
pLight->Specular.g = 1.0f;
4 e! J7 D( _; d
pLight->Specular.b = 1.0f;
# Y. D2 O, E3 |3 A* w& E* |& _( S
// àü?? oˉè*
5 X% _, _8 e5 C; A* L
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
/ x$ Z) p: _. P/ _9 h
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
0 t, T4 |$ o/ N' t: x+ l3 o7 x
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
% G3 [9 _! ]7 r; [/ S+ Y, h
) J/ j, y* G2 Z& l
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% W6 U) y9 e1 l& p
{
. \ {% Q* s6 T( w+ p
pLight->Diffuse.r *= 0.6f;
2 h+ Q- p) ] h9 C
pLight->Diffuse.g *= 0.6f;
. P9 b; b \* w5 t9 u0 g
pLight->Diffuse.b *= 0.6f;
5 {9 j( \7 J5 R1 Z, i# z
pLight->Ambient.r *= 0.7f;
' i( F! H1 f* M, H
pLight->Ambient.g *= 0.7f;
8 R9 C6 `( c* T
pLight->Ambient.b *= 0.7f;
5 r, [4 C" u6 W9 T- c
}
( v" K7 `; a$ e" o8 d. ?( i7 [
4 X- ~ z7 g; F, i5 F/ ]- A+ I
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 S0 j1 t3 _' c( Z8 M* X! D# A x
if( g_pPlayer )
& N# R3 v- y$ r q
HookUpdateLight( pLight );
- ?0 U: ?. z5 k7 z/ k: v
#endif
4 F9 N2 w0 Q, F t5 k
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
T, o7 y& K9 c# h! V( w. d
. C3 e0 [' j$ w9 L
pLight->Diffuse.r += 0.1f;
* R8 Y0 O1 w; @& O/ @
pLight->Diffuse.g += 0.1f;
! z9 F6 |2 l$ I3 y9 W/ h
pLight->Diffuse.b += 0.1f;
. O% n% ?" ^ v
// oˉè* ??à?
, U4 _1 z. @* m9 ]0 p" C, O8 i
pLight->Specular.r = 2.0f;
1 j% v" _/ N1 d1 z- d
pLight->Specular.g = 2.0f;
* `" }$ I4 K8 c: O5 `
pLight->Specular.b = 2.0f;
, z% J: o2 D8 V4 M
// á?oˉ
, F6 D6 I4 u1 N7 X/ t
pLight->Ambient.r *= 0.9f;
( U! P* |& W. l! r1 T& q( y/ |+ E
pLight->Ambient.g *= 0.9f;
. O: i) g8 a% @$ y$ M+ V
pLight->Ambient.b *= 0.9f;
% }: E/ U9 d* G. V: e
/ o; E$ v3 y' @& i% W( U: @
memcpy( &m_light, pLight, sizeof( m_light ) );
+ ?) W7 Z7 z. R
0 B+ L% W* E# c! C; @8 p, Y
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
% n; ~$ L g1 t8 R' V( ]) i: L
pLight->Appear( m_pd3dDevice, TRUE );
. F8 y+ z! w9 `/ x7 o
7 Q7 n" W" b7 b0 b
DWORD dwR, dwG, dwB;
! a: @% l& a. B. J
dwR = (DWORD)( pLight->Ambient.r * 255 );
4 s+ {6 m. Q# w. ~, K
dwG = (DWORD)( pLight->Ambient.g * 255 );
, g& k. H6 E3 Z3 q. h
dwB = (DWORD)( pLight->Ambient.b * 255 );
% J+ j i4 l1 }2 n% J
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) D5 X& ?/ G, n8 z
}
1 l. ^$ \0 R0 V( B1 \
}
# x8 Y& ?9 T# R3 N
else
' X6 O/ p+ ~0 S( R: P/ z
{
, ]1 U0 A* J7 ~9 i: j& _9 \
if( pLight )
3 f! [3 j. a' v' i
{
7 M* f+ B! {* k: W# ]: ^% e
4 M3 J6 y( z, I# O. M' d' N
int nHour = 8, nMin = 0;
* }0 D2 n" C$ w8 {8 L
#ifdef __CLIENT
+ f- h. ~* c1 g: [6 u
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
' t8 ~ F) t+ H6 F) b# V
nHour = g_GameTimer.m_nHour;
0 D) N4 n6 L, S {- a
nMin = g_GameTimer.m_nMin ;
- Q% ~2 ~) E/ Q# b/ J
#else
n' C, B! O% P7 U
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
5 A) X4 J9 g) w- m6 E) o- j' h
if( m_nLightType == 1 )
6 w) [8 s* d: j# c3 ^
nHour = m_nLightHour;
% Y# w9 {3 N! r& }0 \' C
#endif
) g4 u8 h- H; b5 f& W2 b' N
nHour--;
' Q% a7 v5 y+ O0 U, g* T7 D0 y
if( nHour < 0 ) nHour = 0;
$ A+ U% L- K7 ~; @) V K
if( nHour > 23 ) nHour = 23;
7 e: R) z. W/ s$ r* ~
# c2 {% Q1 s! v
//if( m_bFixedHour )
6 v- O( m* s2 D2 M- L
// nHour = m_nFixedHour, nMin = 0;
5 y' ~, X& H9 \$ F( l' ?) \2 x( y
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
7 m: q& L P# V4 q
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
- O1 O3 {1 p2 o! r
9 P% E& ]' `% d& w1 c
//m_lightColor = lightColorPrv;
, c: O# J5 G! f% Z" l- f' [6 H; |
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
3 J7 a$ J$ X! }5 [. B
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
& {9 E2 ^$ t8 S/ A3 `
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
4 c( Z/ v- D( k W( \ K+ j. O
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* ?, l5 A' l0 {7 E2 O
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
; B! U9 d/ u* q& v( V4 B
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
' M1 D, _: P8 r* h
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
" X$ ?5 L$ |1 `4 }3 S M) j2 E
! u# V- q; p) A4 }4 _
// à??μ oˉè*
! Y- K1 \# _7 G. q R! T
pLight->Diffuse.r = lightColorPrv.r1;
/ x0 w C) `- n( l
pLight->Diffuse.g = lightColorPrv.g1;
1 {8 ` U# F1 V* g( `
pLight->Diffuse.b = lightColorPrv.b1;
8 l+ A# U* J0 T$ o ^
// oˉè* ??à?
v, F# ?: F3 S4 P6 i5 `' |; R
pLight->Specular.r = 1.0f;
& B( b; c* Q5 e" }
pLight->Specular.g = 1.0f;
& a2 q; M$ S& C2 X
pLight->Specular.b = 1.0f;
9 o8 G5 [2 r3 d' C. N( }
// àü?? oˉè*
9 ]1 m' @* \* P) V+ `1 i
pLight->Ambient.r = lightColorPrv.r2;
$ h! q. k% D" k1 N1 ^: X) ~
pLight->Ambient.g = lightColorPrv.g2;
L( {" {- c, r; [5 H( [0 i
pLight->Ambient.b = lightColorPrv.b2;
0 M7 t/ f0 l2 c6 B( {
c# _! X6 l9 C# f/ S$ [/ E
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, q# n8 X1 [' T# b
{
& I O. H0 \) }+ b# u+ s$ N4 W/ |$ B
pLight->Diffuse.r *= 0.6f;
4 m% W, n: G2 H! d
pLight->Diffuse.g *= 0.6f;
: D3 X# k, F$ R9 v! w$ l. ~7 y& d
pLight->Diffuse.b *= 0.6f;
, @; d# U5 U# Z
pLight->Ambient.r *= 0.7f;
. ~4 m5 l8 a1 T% z2 I c* [) E# U" p4 _
pLight->Ambient.g *= 0.7f;
1 o' B Y. X) v) w, ^
pLight->Ambient.b *= 0.7f;
' q+ q" v" L! s9 m
}
9 o. f8 g7 K G: M
5 v8 C6 y8 n- _# k
#if __VER >= 15 // __BS_CHANGING_ENVIR
' p# v9 ]1 l8 g$ G
if( g_pPlayer )
3 q8 U- d* o0 c t+ I C1 ]
HookUpdateLight( pLight );
$ w( {0 d7 L0 h5 n
#endif
+ T& \6 V. R6 M
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 G' k* v8 t1 a/ j* n/ @
' ]6 G! O4 g- x
#ifdef __YENV
7 e8 N; b8 q# F. V# {/ D j% H- {
pLight->Diffuse.r *= 1.1f;
) S" Y# ]! ]. K6 z
pLight->Diffuse.g *= 1.1f;
8 a. s8 [- Y3 Q$ a
pLight->Diffuse.b *= 1.1f;
8 ?6 H) g+ i6 B a- F+ ]
// oˉè* ??à?
, r# Z' P; H4 J- J5 \
pLight->Specular.r = 2.0f;
A6 y$ a; f8 K x$ {( R) j4 _* _8 S
pLight->Specular.g = 2.0f;
) x! x; |& Y* q: Y8 J# w) a& o/ d! ^
pLight->Specular.b = 2.0f;
# Z. B$ L0 C1 p4 i; G' _5 _+ g( Y/ Y
// á?oˉ
6 h7 L5 n5 Z6 l# s. L- ], j
pLight->Ambient.r *= 1.0f;
: E( {8 R% G! x& i
pLight->Ambient.g *= 1.0f;
S/ ^5 s* Y& `
pLight->Ambient.b *= 1.0f;
# W" Z& t4 u5 |' D9 L) c: L3 A& `
#else //__YENV
& r" p# `# M9 N: y3 e1 Q
pLight->Diffuse.r *= 1.1f;
- v7 t$ S3 f# z j! e
pLight->Diffuse.g *= 1.1f;
+ U$ j2 C5 d# r8 ^0 F2 w U
pLight->Diffuse.b *= 1.1f;
, _1 E0 H* [7 e6 G; E
// oˉè* ??à?
1 P. N3 m l* m: v0 }: }' W. y9 A
pLight->Specular.r = 2.0f;
3 I8 m# b1 L. k9 t/ ~8 v. l+ h
pLight->Specular.g = 2.0f;
; A7 j+ c% C$ W& c7 J& s9 [7 t0 b
pLight->Specular.b = 2.0f;
! K' N9 P% J/ N+ i
// á?oˉ
8 Z- \$ B7 e7 H+ v9 m3 A- J
pLight->Ambient.r *= 0.9f;
1 g: v. Z+ o- n* C, \- [$ S
pLight->Ambient.g *= 0.9f;
. T1 C( g+ U. D9 e
pLight->Ambient.b *= 0.9f;
: i" n5 V2 q1 T& N0 I$ p- H
#endif //__YENV
# `$ T/ S; @! g1 q
9 L7 _$ p8 x2 B3 n3 c( Q% L, i
memcpy( &m_light, pLight, sizeof( m_light ) );
+ {6 R8 Y$ V& t7 H: J
\) x( I9 m0 l
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
) @ \8 W% e/ c0 }9 n
D3DXMATRIX matTemp;
) ~) D( f6 R: J5 A; B7 ~
static const float CONS_VAL = 3.1415926f / 180.f;
9 \8 I0 M+ H% j b6 z5 I$ N
7 h- S$ r1 f0 M: _; Z: N3 K
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
7 q0 h2 b3 z# k! j6 i/ U u4 [
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
/ W5 G7 m$ v5 W; A3 o( S
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
; D' A0 {* Q) P7 A& f) T- B
pLight->Appear( m_pd3dDevice, TRUE );
1 G! G: W4 G" m1 c% W2 q$ Z
) C7 W9 R# g- ~9 E
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 p6 ^& |% c! [) V Y9 q! c
// D3DXVec3Normalize(&(vecSun),&(vecSun));
- w1 M$ f7 b( k0 l" N# x% D" y# K
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# G! |" l. L; G2 y, w
( O+ b. K. U1 N9 f6 A. i0 f0 ]/ Y
DWORD dwR, dwG, dwB;
X8 \ D, @) ^! @
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 `( e( M! J& l I- k+ k1 X! t3 k
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 U- r6 X% ^. q3 h- n
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ `% `, ]7 M' Q5 X+ j4 Y
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 q6 `3 O5 w7 _; d
}
$ v; Z" l& q/ m* {
}
8 Y! q! v7 a; }8 N6 E
9 ^8 D7 a$ O# m9 ]: S% G' D7 U
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
% n: x9 m8 V9 m' Q6 p( S) m
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) );
' B0 D6 U4 Z: i: O; e
::SetLight( bLight );
5 e2 s. L" l8 g
4 K9 ]. ?9 I7 T, N. C/ B. J8 _# F, {
// ±ao? ?D?í???ó á¤à?
) c( `& Y/ t& o# O! i3 V; H
m_pd3dDevice->SetMaterial( &m_baseMaterial );
- K5 U, C4 F+ R2 c
- a g( K% F; W# ?* z3 n g' `
#endif // not WORLDSERVER
; [4 z+ @/ d: `9 n
}
8 E% j! O2 B+ E- Y) c4 Q0 |" W
并更换
! ]1 q8 G) |3 B/ a, b& b4 C1 o
Code:
" t0 ]+ R) j' C5 K' Q7 p
__FLYFF_INITPAGE_EXT
2 B& {& M! m7 o! {( ^( [8 y9 y3 c
定义
. ]8 y& f. l1 B. E6 q0 P# P; k
- J# n% a8 I1 i1 D" k
- q5 y" B5 s' W* l2 K+ k( N- m
* w* E- o" l6 b- R! Y
0 p9 H4 ]6 h* F- Y5 d" {
现在终于删除我的狗屁加速...
: h W J R3 p+ B& w
; k9 S+ e3 f1 \' v# J- r/ E! ?8 T) u4 A
1 B" C' |, p- |/ {) O
+ m; F3 h' Z' K
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2