飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
3 E% F/ G; d3 D( u9 |/ _6 q
尾翼:
) e* y+ z$ T; N$ r
* Y( p' u4 L5 E
代码:
) r5 T* u: l$ |/ G
CWndAutoFood::CWndAutoFood()
1 o: P0 d& O# u' L
{
' h2 u" p" A1 _2 p" @
m_pItemElem = NULL;
5 N& l4 Y6 k; x4 E. i$ F
m_pTexture = NULL;
0 ?* }6 S- y( q# c5 d7 l; \" H
bStart = FALSE;
! ?6 k# u8 K N2 b
}
2 u! A( @% |. H; i* ?3 L9 l5 M
$ p$ B, d8 S7 x1 d+ v T
CWndAutoFood::~CWndAutoFood()
1 G, u+ e/ \% y! |! L8 Q' g4 y5 p
{
0 b4 {- y9 k8 s8 d% m4 [3 G7 [
AfxMessageBox( "AutoFood ist gestorben
" );
/ y! E# k' o n# |
}
. x. A9 X' J2 Q I% I
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
; H" [* _6 ~7 H! Z* O* v4 U" h/ h
{
# w- W3 u9 `+ K$ B
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
$ c& t8 ]7 K/ W8 U& f
}
2 E' ]* U$ [( i7 P) j
3 ?3 n: U" o+ N' U3 J% L& A6 `# w: T5 g
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
9 J) F& {6 X/ w! \( [
{
% V: |7 ?0 R) ^3 g/ l! E
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
% J$ e6 \ N Q& P4 Q3 }* c
CRect rect = pWndCtrl->rect;
+ B: g% i. A. w: t. W
if( rect && rect.PtInRect( point ) )
' Q. i( V2 W( V6 _7 |( n# H6 V
{
+ {9 k. x k \ L
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
5 h, Q3 B1 y5 v1 B F
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
( z6 |5 W9 t R& C& F( R
{
* [! S% O* u W7 o2 j3 h
if( m_pItemElem )
/ T/ _, ^' C. _, Z; A5 i
{
8 s& k- M/ M' h: l
m_pItemElem = NULL;
# N2 m5 ?* u4 f; a- Z* s8 M" [
}
9 W/ p4 @7 M) }# E% r {' q
m_pItemElem = pItemElem;
@+ Z3 @9 {; ~
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
) |- n' d! |9 }- O* T8 U
}else{
9 w+ Z' |8 ^! p# l. I5 V# n
SetForbid( TRUE );
# r5 k! Y1 P, i* T
}
9 {0 Y1 r3 V/ X S2 L8 a
}else{
" L, N% a( q( S$ U5 c3 {
SetForbid( TRUE );
: A$ l0 c! ]- j2 v) q, m! T
}
' Y0 `. W7 K0 _6 P/ A( _, f
return TRUE;
8 g. @7 d" \: {& P
}
V/ P8 d; A! D7 w$ H5 D" M; K
; ^5 O+ I8 W$ J _ U. I
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
, I: ?6 f, J& a1 {5 ?* B
{
# V1 }. W8 y( s$ q e
switch( nID )
- D. A) I C3 ^; y! j; b+ V
{
* e P& c- l! M6 J: l+ O( d
case WIDC_BUTTON3:
, Y4 O n8 s" ~
{
0 [$ Z9 u9 G) X4 z6 i: I
bStart = TRUE;
8 {3 C: O0 h; z3 z8 Y" i
break;
- L. y! i! s' `$ t- o1 x
}
6 M- A% X2 q9 B
case WIDC_BUTTON4:
& z& H- e d: m9 ?, P
{
9 |) m% `, H& b9 P5 o- W
bStart = FALSE;
; E/ O# j! c7 \# ?- Y. ^9 j$ m) C
break;
7 k: D" X9 y- F9 B2 @' S1 M3 [
}
! J0 W5 ^# T* L) X
}
- p; x# E. H: R5 T& _6 c+ {
return CWndNeuz::OnChildNotify( message, nID, pLResult );
8 C: K \" m( t' o( a
}
" S4 U- D% [3 i1 G
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
$ D: J% z( N2 u# E- V* G" f2 {, `
{
0 j- a0 d ^2 M* q1 g
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
. {# c& y1 b. {- D
if( bStart || !m_pItemElem )
2 ? ~& T; e1 |
{
8 `+ Z. c' W. |1 A# J% e' u" {
pBtn->EnableWindow( FALSE );
+ ^4 e7 [' `0 C1 z
}else
, k+ z8 X8 `6 B* W* c
pBtn->EnableWindow( TRUE );
6 V& G7 v- A; n9 r
if( m_pTexture )
, Y6 D t1 ~5 V+ c! I
{
, f1 H" b$ B' D2 A
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" I( ]/ g) n. N" C$ ?2 ^. A2 e7 v
if( wndCtrl && wndCtrl->rect )
( H) c6 t+ ]4 x& W. Y
{
7 S) v" S! u( q
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
* O. u4 G5 r- u, i _' u# P7 F/ K
}
7 U t9 h. x& G. h9 j- p
}
0 q, p$ O4 k9 n, J" K
}
- x3 p5 K; `" Q1 J9 O K
: i; q N$ A1 y7 v
BOOL CWndAutoFood:
rocess()
3 d9 _" }% q! [* H$ r+ L' B
{
) |$ L- K. u" ]! _0 x* }# H
if( bStart )
/ i. X0 j. w @ F- B
{
# D) N+ X# Q- C+ W
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
5 j8 |, u& z" j! K
{
* ^. C) R! ?6 ^4 {9 S2 X$ v
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
( \$ V4 d* s9 H, u$ B- y6 ?
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
) E! x, H$ y3 R5 N# J! A& `
}else{
& x; Z2 A$ [; Q
bStart = FALSE;
' \& C8 ^, O0 j6 r: g+ y
m_pItemElem = NULL;
n, F) z/ [& x6 F
}
; } p. S2 f0 k
}
8 R) ?" J' K9 h7 Z7 f% D
return TRUE;
" D7 o2 _5 s1 @) [8 g
}
* P* `: i4 i& B# B& f0 [ @2 ?
/ ?6 u: Y' P- j1 w) K3 ^
登录视频废话:
4 B |5 p/ y3 G8 ^+ e; U
尾翼:
! x4 @8 M: \4 M- Z! {
1 I. l6 `5 X( j7 D( F5 Z+ l2 V
代码:
5 o; ~! u. h) o: D) ]
2 g' ?5 r2 {$ t* l# ?- z
void CWorld::SetLight( BOOL bLight )
" L2 u5 q( P- n4 b4 k& a
durch
% {; X! A" E1 s1 M
Code:
( r7 T* K5 W$ J* ?9 A4 S0 R3 O! T! _
void CWorld::SetLight( BOOL bLight )
8 v" V. t2 i5 I- i T9 H, _
{
) B, S8 f0 [" I
//ACE("SetLight %d \n", bLight);
" ^' ]+ Y% x$ F4 Z# w
) [4 ]. i' U( E# m! }" n Z6 I
#ifndef __WORLDSERVER
+ P1 V9 c/ M# j( Y
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
& w1 y7 @; N" {6 z
CLight* pLight = NULL;
" L1 @7 y# h8 b1 u
: t! K5 H0 T F i0 H s% _
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
: m- \+ w8 P& f2 w- y, V T/ T
. ~ T' L+ O- U: U; F) r
pLight = GetLight( "direction" );
1 g' I( { F) f7 a0 H' z
M: V: E' c0 C; X7 ?( W! D8 R
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 x( w7 w$ b; b- L0 Z) {2 \
if( g_pPlayer ){
2 L7 w7 u, [# ^ J% ^% k
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
' I- V4 h. l5 F1 t3 G
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
7 E+ e& w6 S, }" _
{
2 V- Q1 x. W1 `3 ^8 {) u' c
if( pLight )
% ?/ E( W' O! Q$ ~# v1 C
{
) n6 t8 O) S8 s3 R1 M
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
% O& c; r" G/ P! C' e
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
. W* k) K8 F0 J$ I W7 T
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
' Y7 S3 g* ?! J
% B3 S7 m3 l, U5 b7 E$ c
pLight->Specular.r = 2.0f;
) ^ [$ b% b6 j' X
pLight->Specular.g = 2.0f;
9 a) l; v% U. [, h; }% m/ \
pLight->Specular.b = 2.0f;
( x) h8 ?$ G! t- q+ K5 ?: z' y6 `
! Q6 H; k( {3 O* v+ X. |
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
6 e& u' u6 m4 r* H0 q ~4 E! o! s# J. b
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
8 b* J4 j; _5 ]* P7 Q% E3 e o
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
: {/ b, r* w7 q0 b* ~2 h8 z0 Y
. g% X1 j3 |7 U1 U: }
HookUpdateLight( pLight );
3 F8 Z7 ]; R- V+ W! j
g2 H. d& j2 d
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 g% v+ L+ a9 ~' W; C$ Y7 f
# h; V$ L: e; G+ k/ q
pLight->Diffuse.r *= 1.2f;
7 k8 I& X# e% z% R S
pLight->Diffuse.g *= 1.2f;
7 l6 D: W* G+ w# I
pLight->Diffuse.b *= 1.2f;
v7 M0 @% F7 k0 F5 r( z$ S8 M8 E
7 @. @& [# P6 {9 ?
pLight->Ambient.r *= 0.8f;
; x- f! l3 T6 {4 r& k
pLight->Ambient.g *= 0.8f;
" ]2 g5 u" Z; P3 j$ H) ^
pLight->Ambient.b *= 0.8f;
$ P" ~# }5 a2 t
q0 I. {! r7 r* R5 a
memcpy( &m_light, pLight, sizeof( m_light ) );
& E1 _# d/ O6 `: @( H4 v) T5 J
/ Q( v/ r0 O3 m' o! A
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
$ E1 e6 D! r2 G- g/ {
D3DXVec3Normalize(&(vecSun),&(vecSun));
" @- e, y" R7 B3 e& {+ p/ @6 a
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 W: Y% P( c# U, Q; f4 ?; F! c
pLight->Appear( m_pd3dDevice, TRUE );
. C. R; Q( ^6 B6 ]
M5 c$ W# f1 V _+ m
DWORD dwR, dwG, dwB;
3 J% n8 s( l5 ^- I p0 B! N
dwR = (DWORD)( pLight->Ambient.r * 255 );
* d' O# R- d9 _8 a" d% q/ \
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ N# W/ p; ]4 _6 S, c) l
dwB = (DWORD)( pLight->Ambient.b * 255 );
% f. q4 q7 ]3 u6 D v' }
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- {% m3 W8 I6 e5 h1 ~# {
}
# p- s" T2 B4 [/ t0 |4 h
}
+ J+ r" K' T* ^1 N: O
}
8 q/ A j8 i9 c- h2 `+ {* m) ^0 B, p+ g
else
/ Y W" ~* `3 |
#endif
% w+ ]! v5 j* x/ s2 o) m7 F/ V
& P% q4 ~" ~& m; T( _9 B& v% _7 @
if( m_bIsIndoor )
+ o U* P8 w5 d3 |
{
) {1 Q) C( W% i% k U' a" E8 e. x o/ m
if( pLight )
* u; j/ s5 g1 y6 h' E2 N3 ]. x8 Y
{
& e$ F) K$ d0 L- d0 n
// à??μ oˉè*
& q2 x# {9 F2 }3 w" L5 r
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
$ p! G2 f( F, ?0 i
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
6 A f, @! k* K& ^1 o; o
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
/ |2 @1 B) H+ F- v, h q+ l, l/ s0 u
( ?0 t- R0 t8 r8 y* M
// oˉè* ??à?
* x0 e- P3 S5 J
pLight->Specular.r = 1.0f;
+ c R8 Z) D) d9 r& e3 ~
pLight->Specular.g = 1.0f;
1 |% P* \- X7 H# \$ z6 [
pLight->Specular.b = 1.0f;
% }2 p5 h: ~2 r3 ~- C1 p% [' k
// àü?? oˉè*
/ i) h3 D% R8 g3 \+ u: {: }. Y
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
1 p( E& e4 k! `& \6 n1 v
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
* U- D' ?: c4 G# k8 w% J, K+ s, b( i
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
v. Y4 ]7 }4 v# R, C% B4 q- z
8 C# K: E) q# n5 I4 C
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 @0 o6 l1 u' a+ |2 W1 U. \
{
S9 q/ P3 M* P* s. A- ?
pLight->Diffuse.r *= 0.6f;
" g! `8 s8 I; g2 Z$ \
pLight->Diffuse.g *= 0.6f;
/ |( {3 Z8 W: S
pLight->Diffuse.b *= 0.6f;
# J4 z$ ?/ C$ s9 {9 w
pLight->Ambient.r *= 0.7f;
6 E2 J8 |, n0 P* U' r
pLight->Ambient.g *= 0.7f;
# e* o0 u' F( f: ~ L% [
pLight->Ambient.b *= 0.7f;
: e2 C: _5 R7 f7 [% c4 ]# h
}
# H6 s2 e N( M! B, ]
7 ]3 ?& I$ S. }. `/ ~% {. [' D
#if __VER >= 15 // __BS_CHANGING_ENVIR
# H; b$ M6 y3 v( l) o( F
if( g_pPlayer )
$ ?! I4 f2 U+ u. Q: |# l) E
HookUpdateLight( pLight );
, _) Q3 W0 x: o& q
#endif
: M7 O$ P W. y" Z( i2 i
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 H+ j! H5 ?* _0 w
# ?9 e4 o. R6 F+ X" G
pLight->Diffuse.r += 0.1f;
( n. T6 `" Y/ E' R- w- i, L
pLight->Diffuse.g += 0.1f;
8 e6 X7 A3 {* g( H/ ~, t. v q5 `
pLight->Diffuse.b += 0.1f;
8 D" E8 d( v w
// oˉè* ??à?
. b/ L4 V9 f3 t' u2 R
pLight->Specular.r = 2.0f;
) o( A! c" y! r) H' t8 t. g
pLight->Specular.g = 2.0f;
( Z5 i% _$ a* k
pLight->Specular.b = 2.0f;
# q9 @* Q0 y* D* H7 }# M
// á?oˉ
0 P: v2 @0 A; H D+ |
pLight->Ambient.r *= 0.9f;
5 @: y+ H/ i( j+ ?3 a' w4 \" b
pLight->Ambient.g *= 0.9f;
) i* X+ A# c: e. l) _# b. h
pLight->Ambient.b *= 0.9f;
4 q3 g; o V" ~: d1 J! A
- W! |' J; x2 J; T
memcpy( &m_light, pLight, sizeof( m_light ) );
# R: M) E& k3 G$ G9 p; u* I& H
. H& f4 q2 b& p \* a. j) p% s9 B' S
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
" u4 H% h$ \; l4 s- P! v7 f/ {) }6 a9 s
pLight->Appear( m_pd3dDevice, TRUE );
. p5 e8 o G, u- m) K
5 I' X6 S0 D3 e- `) @
DWORD dwR, dwG, dwB;
7 }2 f0 p+ K1 h! d- R( Y3 G' I
dwR = (DWORD)( pLight->Ambient.r * 255 );
. b4 I! ^2 x# O% }+ t- h. D
dwG = (DWORD)( pLight->Ambient.g * 255 );
" ]" o0 Q0 S3 e" I ^! w
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 c' O) n; U: t! `3 d
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ z# |* f1 f0 o0 k: k
}
( t- k( ?$ y( B, R
}
. w8 B- g% d/ s' o) _% b
else
4 t: `, u8 z2 J) l! B
{
+ B, B9 s6 j$ Y! Y. t( F! I! Z
if( pLight )
: r; Z! m' \- \: D I6 M$ {
{
, z1 {6 e; r1 K: s4 c
: T, B7 i5 K2 ?" k; j* m* f
int nHour = 8, nMin = 0;
% P: S/ t+ ~) i% x
#ifdef __CLIENT
/ A. B( r% i1 P; y. ~
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
' D3 v4 K' A: f6 |' R2 W
nHour = g_GameTimer.m_nHour;
# t' k7 m k3 R; |
nMin = g_GameTimer.m_nMin ;
+ E( r$ r" _! N4 z
#else
" z$ U2 K9 z2 [: i5 y
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
. S5 Y+ F5 X& N; q
if( m_nLightType == 1 )
, a0 Q! x) R% m8 U6 g+ ?' c7 P1 G& b
nHour = m_nLightHour;
3 y/ m' { B3 R6 x2 t) }6 U
#endif
5 b7 c, Y& C6 ^0 v" ^" ^$ T
nHour--;
9 V, A4 i8 s" o6 R0 F
if( nHour < 0 ) nHour = 0;
; F( a4 d. ~2 D/ b$ q( u. a" {) d
if( nHour > 23 ) nHour = 23;
y* R5 g% @! ^: o C
8 p) J0 n# ~0 `8 V0 K
//if( m_bFixedHour )
% t1 m" B0 w: I+ w0 e, [
// nHour = m_nFixedHour, nMin = 0;
: s; Z3 _8 w& k- {* C' F
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
6 { b( g7 t; U8 j8 W, M
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
* _) l, O% [/ a
9 E: T" P9 P7 b$ K+ b5 P @6 B$ A
//m_lightColor = lightColorPrv;
6 M3 n5 M* B$ g$ F- ~
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
8 S0 T8 {7 ^& {6 C0 O
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
8 ]( Y( L2 a: y1 m* x, _# G
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
+ { g' t# F* A3 b
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
- |$ ]( Q6 n5 G ]3 p! y3 b
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
7 P' W$ U; \/ J% h4 N- G/ m
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
8 w, f/ n' n( p \& g
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
& F# L0 _3 D' c9 H6 L' e( u
) F( R0 z! P/ Q* M0 H: i
// à??μ oˉè*
' v4 u( l3 {2 U: i# ~
pLight->Diffuse.r = lightColorPrv.r1;
5 q1 Y# k7 r8 U" w. J
pLight->Diffuse.g = lightColorPrv.g1;
/ }+ x! H+ \( `3 `/ E/ u2 x
pLight->Diffuse.b = lightColorPrv.b1;
# _! c, v. ]& W. v7 |
// oˉè* ??à?
5 B O; u+ U! {8 z- ]5 R) f
pLight->Specular.r = 1.0f;
, w5 a5 E- T* k2 Z3 D$ }
pLight->Specular.g = 1.0f;
H! `1 M$ a' N: P6 z
pLight->Specular.b = 1.0f;
, U; o4 o/ |2 ^5 Q
// àü?? oˉè*
% F, i6 @0 g# C1 g, c9 W- G; x3 O- b
pLight->Ambient.r = lightColorPrv.r2;
0 s2 t' L: E5 A! h) `
pLight->Ambient.g = lightColorPrv.g2;
1 `8 H* \% b" W! o7 V2 |
pLight->Ambient.b = lightColorPrv.b2;
) B9 I* c$ z$ t5 B! y8 y
; O3 y, m- O* S' [2 z
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 ~% J$ o1 T) Z/ ^7 L
{
) ^0 M4 Z( x2 }$ Z
pLight->Diffuse.r *= 0.6f;
( ^& u* s3 N( I! Z+ `
pLight->Diffuse.g *= 0.6f;
% }% q0 R5 ] n6 o- `; e
pLight->Diffuse.b *= 0.6f;
1 b" H1 M% R' ~# T! W1 x' e2 H
pLight->Ambient.r *= 0.7f;
0 C5 N6 C6 e; c8 ?5 K! I+ r
pLight->Ambient.g *= 0.7f;
1 W1 f# S1 _5 U3 X' S
pLight->Ambient.b *= 0.7f;
[ ?$ Z7 s, _. k4 g6 _
}
; b# y& {; i* [. A9 i( k& b% o- }
) I% a! x" x, ^) k- v* _, d# `
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 B: Z; G# B, h) X
if( g_pPlayer )
- B# k2 J5 D1 v! B$ X( D
HookUpdateLight( pLight );
" c- K3 B( ^5 B9 p! j# k
#endif
2 Q, h" a t3 \( t4 n
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ C6 I- R! W* i' C. D0 ^$ p
8 ]4 s: i4 N5 N0 y
#ifdef __YENV
9 r; D1 k4 p& O. k
pLight->Diffuse.r *= 1.1f;
5 H/ f4 _- ^$ s
pLight->Diffuse.g *= 1.1f;
5 m; }: I& K$ R& g8 P1 W
pLight->Diffuse.b *= 1.1f;
2 z. H7 \- T l- k
// oˉè* ??à?
$ A2 q& R5 U4 X' V& O- G* j: A
pLight->Specular.r = 2.0f;
2 ^9 }3 D8 O+ Z, u9 B( W& X
pLight->Specular.g = 2.0f;
# F0 y! J9 d$ A! p6 S- v: w5 b
pLight->Specular.b = 2.0f;
" R/ w! r! e% X6 W7 L3 k# G
// á?oˉ
3 l# e- z) `) Y+ _8 P6 A) f. A
pLight->Ambient.r *= 1.0f;
9 ^4 f D7 {: O* l7 t
pLight->Ambient.g *= 1.0f;
6 I3 C3 r3 a1 D
pLight->Ambient.b *= 1.0f;
; c% J, c* q$ k( L
#else //__YENV
! {% @$ Z" x/ e; }/ l
pLight->Diffuse.r *= 1.1f;
, Q6 v; o7 V' L
pLight->Diffuse.g *= 1.1f;
3 N2 o* A- v4 B
pLight->Diffuse.b *= 1.1f;
) @1 u) d1 k. i# B7 k9 v
// oˉè* ??à?
+ Q' B+ i& v6 P2 k. u; B" B
pLight->Specular.r = 2.0f;
6 J# U5 e$ K" v( p0 ~. O7 e8 m8 M$ c
pLight->Specular.g = 2.0f;
. F! B% M# J6 I, w( M9 T8 ^* o
pLight->Specular.b = 2.0f;
# Q" q7 v; {7 p* U3 l
// á?oˉ
5 U/ B* c/ Q* x. [
pLight->Ambient.r *= 0.9f;
& H$ r Y+ w# ^- s: O4 t
pLight->Ambient.g *= 0.9f;
& Q) _- Y+ G( Q% W5 f
pLight->Ambient.b *= 0.9f;
$ r* x) e8 u2 U3 o6 L
#endif //__YENV
, j9 o) K9 q! I; k
" {( N/ _ B) m
memcpy( &m_light, pLight, sizeof( m_light ) );
5 r) Y+ f1 v5 Z1 G+ F7 t8 q6 D
) W' k2 n3 K! V: c4 D: {
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
" g! Z+ z& u+ W+ C( m
D3DXMATRIX matTemp;
7 T8 S$ A x1 o$ }
static const float CONS_VAL = 3.1415926f / 180.f;
- ^3 n% ]* k5 U. W, o d
0 }) q+ |% t6 H
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# t3 U- Z# `$ v/ J' L8 a
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
" r0 Q; @1 I+ a% q5 R! z$ O. S
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
9 U) |0 R6 ^- r Z4 P& r; W
pLight->Appear( m_pd3dDevice, TRUE );
s, b4 W/ K7 L1 V, y
7 T& ~4 {& p" J1 [+ d
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
6 q7 Y6 A' F& v' m
// D3DXVec3Normalize(&(vecSun),&(vecSun));
- B* H" }& k- k3 `3 c
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ G' { ?( O1 Y0 \
. h6 x6 B. Y" l9 c! }) Q' d; G
DWORD dwR, dwG, dwB;
" Y5 _2 ^# ~. c6 Z
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 e% j- l4 ~9 ]# Y
dwG = (DWORD)( pLight->Ambient.g * 255 );
% M$ G1 a' f" u4 W
dwB = (DWORD)( pLight->Ambient.b * 255 );
% ` o) O) w g0 ~7 @7 f2 A
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. F( E+ P/ T# }1 s
}
6 d0 m8 {' k6 x5 Y
}
5 J! g( w8 ?, a2 z/ L' y& F
, C0 ], o& n/ x4 P
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
+ V8 X3 s3 {( y
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) );
, _4 s9 j9 K, i# e% N' U
::SetLight( bLight );
5 o, U. ~) p2 w' Q9 ]
+ J9 s+ B7 s2 |
// ±ao? ?D?í???ó á¤à?
8 G# I- |! y6 q- i. k# X
m_pd3dDevice->SetMaterial( &m_baseMaterial );
* T {1 ]! ?. Y8 F! `
/ _/ o# p- z8 b# X
#endif // not WORLDSERVER
. C4 y% H( r4 j+ k* A1 A, a' F
}
; p* J0 I i. L" X$ v8 F1 ]
并更换
3 i% o" N% F& N/ B- }
Code:
# t" C2 Z% X( h d# H
__FLYFF_INITPAGE_EXT
' J0 I% Z2 r' L: J5 w' l' h
定义
8 [/ H+ ~: S$ M& D, p' ]2 l
% ^: ]2 ? p' g) V& `
: L* i/ J) z5 b( c; i
; L; ^) T- X* Y( i5 M4 N
- b3 ~0 c! G) H
现在终于删除我的狗屁加速...
1 @9 ~3 M) W$ w, D, f+ A
& R/ M% b c9 d2 i& Q
" k, p4 G0 O9 O5 C5 N
& f' V O# t- \+ u: {" Y' W
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2