飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
5 H4 p7 F4 J$ i( ^# ~
尾翼:
2 N7 Q$ f; \6 c6 Q8 q* w
( y8 z4 j: C# e# Z, U- `6 W0 k2 n" n7 X" j) a
代码:
* b7 J7 s! s4 ]
CWndAutoFood::CWndAutoFood()
8 |# [* U0 F/ |( D, N' [5 }
{
: l; F" T) T% i: K4 q2 B
m_pItemElem = NULL;
- c' O$ i$ C) B2 [: j5 A$ E
m_pTexture = NULL;
0 Q+ s% u- p5 n
bStart = FALSE;
9 ]2 D+ ]& H5 i, u' ^! @
}
0 K6 x$ Z; h- e1 I5 w3 F
2 F8 k, [- F8 V" _& W
CWndAutoFood::~CWndAutoFood()
8 Y( y4 r5 b* v5 F. q
{
) T& u5 P$ U0 m
AfxMessageBox( "AutoFood ist gestorben
" );
! U! \' P/ T! N7 z
}
0 i+ k( g _: X. K- g& z
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
! x) ^2 C6 I. F3 [) {
{
$ p! W! }) `" b# W1 |( f6 a$ i
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
; r1 s3 x& c6 Q; \- s' O6 D' W3 U
}
b% f1 U9 m6 l- F1 q) d$ V* k
; F* Q4 ]1 Y& |* C8 C, b. T( P
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
/ [: v. X% a9 {
{
0 K: q" w, q* {# |
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
9 B( r$ T7 p# a# a" v/ v
CRect rect = pWndCtrl->rect;
0 ? d. M9 v$ J4 _: m! I+ ]
if( rect && rect.PtInRect( point ) )
; u% g) m2 T( q- [; ~+ J
{
1 g- D$ h0 A/ |6 ?7 P
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
1 S+ M6 P% F8 G
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
5 R. C6 z& J9 v8 c; A* A1 y
{
- n! L) n$ X0 r7 D' q0 g, b
if( m_pItemElem )
3 i+ ?; ?! }6 x2 V
{
( ^; Q0 [& c7 k
m_pItemElem = NULL;
* h; W5 _( m) F- A
}
, {2 f) a u7 D6 e8 S
m_pItemElem = pItemElem;
1 f; |% A' R7 n) H: W, b9 u
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
6 H+ ~. l* J$ @0 s+ X
}else{
Y% C" @2 F) ^, g* a5 E
SetForbid( TRUE );
+ w* v4 b% ~; P2 C8 O, f1 R
}
) L! h" J+ @# f6 c% Y6 q
}else{
7 m8 h+ D* Z( G5 Z" a# k z
SetForbid( TRUE );
! N3 g( j r2 M0 o+ ^3 Q
}
v4 p( U+ r& `, x3 H0 U" Z
return TRUE;
. @5 {& T2 W, w" X8 G- r3 m
}
' T4 n& [/ E9 t
2 B. V: e' e7 Z/ }
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
- \2 n2 N2 S7 m0 E
{
0 {6 B+ _* E( j, e! ]
switch( nID )
/ ?' H& ^: l* I! C. K j, D4 p4 O4 |
{
' ^& P% j: ]' H I9 A, ~/ ~, m, ^
case WIDC_BUTTON3:
0 X9 L/ w' Y( R/ t7 X5 Q4 U9 H2 w
{
* h$ x3 F# ?! j) p7 D8 }
bStart = TRUE;
0 M# r$ @/ _. O5 L* K9 ]
break;
" N- @$ c+ v5 e% z
}
; q0 |, y2 B: t
case WIDC_BUTTON4:
: a' u$ c; S% l
{
/ Q: J; H& b. U' w" Q* T2 q" v
bStart = FALSE;
% N6 i0 R$ w3 U, r' c# S! d2 k
break;
! Q3 [1 l, c+ t: m
}
0 Q- z+ _7 O6 V
}
! I3 @# o0 _2 L. I$ Y+ ^% Q
return CWndNeuz::OnChildNotify( message, nID, pLResult );
2 o1 \3 o) b U6 J* D4 @8 h3 J
}
3 A1 w0 m1 U; I7 u
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
# w) `9 U3 k0 d# z0 ?# s |
{
8 M2 ?2 H- J( t
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
5 p- h2 s' r8 R1 o7 E; w* c
if( bStart || !m_pItemElem )
# q/ R7 _7 M/ t2 G7 i- H
{
) p3 C# |$ e" E3 ]3 [) x
pBtn->EnableWindow( FALSE );
: Z8 i7 n, p# s3 }5 ?9 p
}else
0 W2 i. I0 u$ X3 ]- R6 C V1 U
pBtn->EnableWindow( TRUE );
. X. g6 X" \! M8 `6 G
if( m_pTexture )
/ F+ D* V8 q& H" e8 ]& m/ N
{
& H6 u* {3 S7 }" L8 q
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# k$ F" P* K5 N7 L1 K/ w/ ~
if( wndCtrl && wndCtrl->rect )
" e, o3 E& Z) V3 P/ i1 u+ r
{
, _ ? S) k5 a1 u, m6 m
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
' r: ?) r& N B8 ^: M3 X- b) A
}
8 I% G1 V( Q4 @4 m% @. z
}
* P9 m( c) T$ ^; F
}
0 H# q' V/ N. c, u
( P3 N& @1 ^- v. U! V' j7 `
BOOL CWndAutoFood:
rocess()
. j& Z2 z/ q5 w6 G7 Y3 D
{
3 Z5 E* v1 X- a+ s+ I
if( bStart )
, c. A" w1 O! I' w3 }6 h
{
" @0 m& j/ ^7 I+ C# S0 N
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) }2 E5 i7 g& m& ~. A y, D
{
! h+ I% f/ B' 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() )
& R6 x- X: z+ g& y q
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
! t, ^3 L$ T+ i) h+ \( Y) e
}else{
/ u8 v. [) e- u* z R k
bStart = FALSE;
' ^, P6 ~6 @/ M/ b0 Y
m_pItemElem = NULL;
; i; M6 ]" q4 k/ |9 j% M1 @
}
5 T8 c# k6 k! I% Q1 x7 e; D
}
; a' l0 t# Y! ^4 J
return TRUE;
6 H( t5 I0 Z9 H) p: m9 ?' u
}
. ]3 m7 o0 {6 _# L
; J- S5 g B/ R5 p* f. i# n
登录视频废话:
J% W: H& V. I u
尾翼:
1 G2 u/ p5 X0 ?* Z* z/ Z
C7 e; H- g0 O T+ ^) d
代码:
' }" \6 H- G9 [ g+ ^9 a
" y E/ ~( F2 R% H' v2 T% A) S
void CWorld::SetLight( BOOL bLight )
- `) P" W2 Y8 ^4 q6 F5 J
durch
4 a5 C* `* Y: S* T5 L
Code:
) Q5 n: I c- W" j3 R! ~( w) G6 `
void CWorld::SetLight( BOOL bLight )
# D, k9 {+ I5 O9 {: N: y
{
; E; v+ [- `. E; @" C( p
//ACE("SetLight %d \n", bLight);
7 a B8 g4 U) J) e( w
" Q c# p6 T2 B/ y; ^* ^; l j
#ifndef __WORLDSERVER
7 f" D, s2 D0 f8 Y
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
' [) `5 Y0 o/ g M. T; L2 J
CLight* pLight = NULL;
# ~4 t2 C2 W/ H5 d; V, r( Y5 U
X- u5 ^6 F0 S8 {5 r
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
/ l) g9 V1 v2 ~
: S( J' ]7 l0 k! j8 X: n1 @
pLight = GetLight( "direction" );
2 [" k* l6 y/ h N1 C. F& |1 Z9 z. W8 `
" M; a9 T+ J1 S& e* t* o
#if __VER >= 15 // __BS_CHANGING_ENVIR
: G0 ~0 S; h i& X. T: V
if( g_pPlayer ){
1 {) l6 e p( ]5 n
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
% K$ r6 ]2 Z8 r J+ t" k" M
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
' k2 p( Z1 O6 x
{
( _) Q* |: L/ X( D: g
if( pLight )
' K, `$ x) ~ @& a- `8 w; C
{
! R! ]/ n7 q, R6 x2 p: x
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
' |/ J. j2 O0 v# W* f+ |( b
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
! O4 m: \3 X2 [( X4 P! [' p
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
: `7 k9 R: y3 }# {' }$ v
! d8 u; H% C# w1 g! k6 {
pLight->Specular.r = 2.0f;
. B' k& s' A- H3 U) l
pLight->Specular.g = 2.0f;
d9 X, f2 V! e4 {+ M9 J5 N
pLight->Specular.b = 2.0f;
4 Q* C8 L7 L5 u3 ]# R
6 \" ?# l/ F& h2 q6 X0 t% [5 P
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
, L- P9 C+ m% Q
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
7 u" K, k0 N* T
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
* P5 }6 z( D. V! A' ^1 e: W! X
( q0 [. v% }: ]
HookUpdateLight( pLight );
. N: E8 X. l5 ~ f! i
: c* W: x8 v) T
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. d$ k- R" g! U4 h! ?8 Q
$ _+ k: ?. Z: b9 K5 v
pLight->Diffuse.r *= 1.2f;
# j+ o0 [1 C; @% I, G
pLight->Diffuse.g *= 1.2f;
. D" q! k& D* N/ a2 n1 J1 N: h
pLight->Diffuse.b *= 1.2f;
$ t; X: }$ R. h: i: z# e
U* L) X3 a( q
pLight->Ambient.r *= 0.8f;
1 P, R9 E! F3 ~7 ?
pLight->Ambient.g *= 0.8f;
, g5 }1 v2 ^% p. a7 D" I
pLight->Ambient.b *= 0.8f;
. W/ H5 G' [ k6 {2 d% K* C
. f* L# I3 h, C* u
memcpy( &m_light, pLight, sizeof( m_light ) );
; E2 z* v: d/ u! j) r) K
8 b; |% K: S* s2 L4 M6 L. e7 T
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
4 s8 c" T6 t" q4 J
D3DXVec3Normalize(&(vecSun),&(vecSun));
) ^2 N% \ {) ?' v8 _# |
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ d" U( z, |, v* a6 m
pLight->Appear( m_pd3dDevice, TRUE );
s# t; f: K! O: }1 }( j& _8 Z
3 P* \. y; I( O" z. \) e
DWORD dwR, dwG, dwB;
% R8 a! W% J- x, y( H
dwR = (DWORD)( pLight->Ambient.r * 255 );
8 j# O2 a/ @. a. R/ w4 p; J
dwG = (DWORD)( pLight->Ambient.g * 255 );
* l8 Q- `4 L0 Z7 M3 J
dwB = (DWORD)( pLight->Ambient.b * 255 );
% T" G d' ?4 m: ~9 w
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* N( M- j$ X- V
}
- |1 [7 `, C: r. E" o
}
* \0 ]" B& ^2 z
}
2 D7 V# D5 d( ~/ Y( e( ^, I' e
else
- E; w! i0 |; S& w# m; G6 D
#endif
q1 n# v) K4 [9 L3 \- B; d
( P# a# F" J7 w6 T( k4 a- H
if( m_bIsIndoor )
! M% v7 K, K1 L
{
7 e1 K) Y: P) {6 n- t' l9 L; ^: @- O
if( pLight )
8 n0 T" y1 U" W4 s( @3 h9 o
{
5 m+ |, u- \' Y7 H
// à??μ oˉè*
7 C+ U8 I- t* O
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
8 Z" S) N; C) x% ^2 `* M
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
2 R% I X# A! G7 [
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
) [9 B: `; e/ X/ s
) y0 U. E; `; Z- A' g+ |4 E
// oˉè* ??à?
$ S3 V, y% E) s$ N: T
pLight->Specular.r = 1.0f;
. [ a7 b# G3 X" [7 S9 j
pLight->Specular.g = 1.0f;
0 A+ m9 H- b9 x& W
pLight->Specular.b = 1.0f;
+ b) y6 c5 C1 C% \; _7 N
// àü?? oˉè*
7 {; u" K9 K! W8 H P( a0 O" Y: U
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
$ X3 L$ ?" ]5 l7 `; t
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
% b7 t5 {* k0 R+ Z' ?5 F% t+ M
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
8 l* T6 N3 E3 x7 c( k) ?3 [5 a0 z
! Z( c+ \5 ?1 k6 }3 K4 Z. D
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
; r# e8 z: ]. }& O) h: f$ |3 ?
{
7 L: e$ w6 W W5 Y( q& }. [! N
pLight->Diffuse.r *= 0.6f;
# \. Y9 N- r. Z; e0 M
pLight->Diffuse.g *= 0.6f;
' o. q+ G/ h& [
pLight->Diffuse.b *= 0.6f;
. n9 M6 u* l9 h$ X( m5 ]
pLight->Ambient.r *= 0.7f;
. k" o! D" j' T8 Q7 G. Q
pLight->Ambient.g *= 0.7f;
* x* U) H: }' ]% u% y! D' P
pLight->Ambient.b *= 0.7f;
6 k9 E* E* c! ]. \. K
}
_6 I( J$ u0 [& t# y. A- b
- D. ~2 {4 v# @1 ~( x5 D
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 H F" {# d7 P) c8 V
if( g_pPlayer )
: B( f5 {' {- X& g# ^+ D6 B
HookUpdateLight( pLight );
* I/ L5 Z, k! y: H5 h6 V6 {6 L- i
#endif
0 c) ^6 c' Y4 Z4 U6 h x
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ Q$ H* D# ]$ W. E
: {& |& }# m8 M- c/ X% p1 p( ~5 P
pLight->Diffuse.r += 0.1f;
3 [- y o: k( r; G' R
pLight->Diffuse.g += 0.1f;
; P, n6 O# f: B% X; T- W+ H
pLight->Diffuse.b += 0.1f;
& V6 i% W) s5 {7 s
// oˉè* ??à?
- u# H; ?1 i" O7 g' J: W
pLight->Specular.r = 2.0f;
6 w @6 w, F9 N5 P, m; C K
pLight->Specular.g = 2.0f;
% L3 B, O' |+ E0 t2 ^0 v2 R' X
pLight->Specular.b = 2.0f;
% D/ E1 q8 W$ w$ V" k# M G
// á?oˉ
: e' |7 u' ^* l" Q" _8 } I5 w- L4 M
pLight->Ambient.r *= 0.9f;
7 ^2 Z$ l% `+ R- ~0 m# p$ }. O/ v
pLight->Ambient.g *= 0.9f;
8 v0 k% M, J- k
pLight->Ambient.b *= 0.9f;
- }; D+ v* C* k7 Y
7 h+ [5 F" ~, e: u
memcpy( &m_light, pLight, sizeof( m_light ) );
6 I- q- U+ n9 B6 E
/ c" h+ _- w7 o" Y# v8 p5 s- V# R7 \
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
1 N! ]5 r* z: n2 n3 j0 R# C
pLight->Appear( m_pd3dDevice, TRUE );
: j4 o0 }1 L; |9 E4 m" q" ^4 ^
0 w3 C1 [+ O/ f6 O& B# Q
DWORD dwR, dwG, dwB;
; Z& E! e* Y0 c/ c" P' S: |
dwR = (DWORD)( pLight->Ambient.r * 255 );
( y. r# @ G; u/ k$ u& [1 T; a( Z+ |
dwG = (DWORD)( pLight->Ambient.g * 255 );
. L8 j3 q! _& X J2 G# Y: \
dwB = (DWORD)( pLight->Ambient.b * 255 );
4 t2 Q9 m9 m7 B. f1 j" m
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 Q" x6 o; l ]( f/ z
}
: c4 d7 m' ]- V1 E, h
}
3 d2 j# L! Y. W* T/ u6 r1 u
else
( Q* A% k& `! Y e. Y n+ o
{
: g5 W3 z5 S! w7 |
if( pLight )
& N: p* ~& Y8 v6 E8 K" @& w
{
" b" k( x" u/ b* ` Q
( N* H b3 B1 ^2 Q0 \" i! T
int nHour = 8, nMin = 0;
! W, o5 z9 B# H* T
#ifdef __CLIENT
, m g. M; \" o( \% P) ~
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
/ l9 A3 L/ ~& p8 j
nHour = g_GameTimer.m_nHour;
4 b/ k$ L- p/ w$ P
nMin = g_GameTimer.m_nMin ;
5 n+ f" S0 ], E: }
#else
% m9 q7 Q; U0 t7 C" _- n
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
# F5 d) w/ @/ H! N
if( m_nLightType == 1 )
% P# @3 Z1 j+ T# d8 K& z( p
nHour = m_nLightHour;
9 w7 |+ ~. z" b, b& M9 l- z( I
#endif
) z) f [# G7 o
nHour--;
8 L% W- f3 |" U6 c2 s9 X
if( nHour < 0 ) nHour = 0;
3 c# I4 p6 {1 K; R* o4 D- e! ?
if( nHour > 23 ) nHour = 23;
6 y: _1 S/ g8 z) ?8 ?" O( o }5 P. \
- x+ {; g, j5 P7 _' I7 [
//if( m_bFixedHour )
8 y/ ~4 X) F7 U( m) `% k. \$ O
// nHour = m_nFixedHour, nMin = 0;
& Z* Q$ {1 a! p" R1 I4 g5 K8 \
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
. |, Y! p4 p5 t3 E. c. a
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
I0 i( E: Q* c
% w% H9 e, V* M, s$ L1 i( a
//m_lightColor = lightColorPrv;
7 |, a V- b6 K; O
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
8 X" b$ I r9 I3 @: e( T, E, Z
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
- @$ T5 Y4 c4 c8 g) O0 v. w5 L& |
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
W1 R3 u+ e* `3 U# L2 P4 T
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
- v! y {# P! O
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
# K6 C# d* |; ]
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
/ B7 L [+ @: p. H' ~
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
: l! h# I% X* w# n1 _: M
/ F2 Y' m8 P |" J: h) F
// à??μ oˉè*
3 n9 Z8 F* ^3 @, m* z
pLight->Diffuse.r = lightColorPrv.r1;
; q& D0 q' c, ?# _) o1 w
pLight->Diffuse.g = lightColorPrv.g1;
K# C. u" }- x) c
pLight->Diffuse.b = lightColorPrv.b1;
6 {, M. N: h0 _+ A
// oˉè* ??à?
% r5 w5 f8 K x
pLight->Specular.r = 1.0f;
6 W6 h* E! `8 \( J$ E) _; Q
pLight->Specular.g = 1.0f;
% ~' q" K! y! Y9 }7 E
pLight->Specular.b = 1.0f;
& y+ X4 E! P7 p
// àü?? oˉè*
* U5 T0 T# y$ V) d+ ]8 A& e
pLight->Ambient.r = lightColorPrv.r2;
3 L5 p- {8 ^5 l3 O
pLight->Ambient.g = lightColorPrv.g2;
# ^$ l+ ^) o( x* u
pLight->Ambient.b = lightColorPrv.b2;
/ f. \/ G3 m+ V8 |9 A6 w" y
6 @% {7 d* o6 P$ U. H7 g/ q7 ?
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 e8 R$ A' y( Z: Q+ w6 B
{
. H2 l1 S5 U5 a3 w
pLight->Diffuse.r *= 0.6f;
! A$ T( v9 q* H4 v- [9 M
pLight->Diffuse.g *= 0.6f;
{- P' y9 J# x7 z
pLight->Diffuse.b *= 0.6f;
& V* i- B6 g0 O2 h) M, K' {
pLight->Ambient.r *= 0.7f;
# j7 Q( j- c" F& H# X
pLight->Ambient.g *= 0.7f;
. I3 R5 y7 u; N( x! E8 B
pLight->Ambient.b *= 0.7f;
- w# X+ U1 C$ g, p5 `. w6 ?6 Q' S' }4 N6 `
}
7 Z4 S/ l K" z2 O
1 M: c% k6 [7 b* X' y, d7 I3 I) i
#if __VER >= 15 // __BS_CHANGING_ENVIR
- D: i( h# ~! K5 Q# f, A/ O2 b
if( g_pPlayer )
6 [$ g3 Z# ~- l3 ?! J3 p. ?
HookUpdateLight( pLight );
6 Z9 P. {6 S" r7 y1 {
#endif
1 \8 N" }# O* e, |* M: q( @
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 O' F7 J8 p; P& p& o0 {
. O+ Z' C8 j# p _5 m
#ifdef __YENV
, ~% W" H9 @5 E# T6 q, T9 y
pLight->Diffuse.r *= 1.1f;
" r, {% X1 N; ^- M) M! r
pLight->Diffuse.g *= 1.1f;
+ D0 h1 O3 i' h; k4 f% a- K
pLight->Diffuse.b *= 1.1f;
2 ]; ]/ _" L6 B3 o# N9 G" t
// oˉè* ??à?
! a% w+ b2 ^7 w2 {: h" B1 g7 ~
pLight->Specular.r = 2.0f;
7 W5 F0 T1 q+ V: R; G5 h
pLight->Specular.g = 2.0f;
2 q& j" |6 n! L" u
pLight->Specular.b = 2.0f;
, s# e+ {8 I/ t* b9 u& K, K1 |
// á?oˉ
% X s% D* u, Y* M c2 S2 |
pLight->Ambient.r *= 1.0f;
$ v* T9 u' h/ x0 O) @3 U# W8 X9 U
pLight->Ambient.g *= 1.0f;
( k! f Z9 F! M8 B5 P% ^* b
pLight->Ambient.b *= 1.0f;
5 m: J- c/ E& |/ O4 g
#else //__YENV
5 N& t1 J% U& V( @. {
pLight->Diffuse.r *= 1.1f;
; l7 g* R, T6 D4 K
pLight->Diffuse.g *= 1.1f;
. D: ~' F5 g8 g- O: {6 f- H
pLight->Diffuse.b *= 1.1f;
+ C" B$ B' U3 B9 u# S
// oˉè* ??à?
9 e: N' d5 S1 r
pLight->Specular.r = 2.0f;
2 |5 e$ j3 B6 o" `6 b
pLight->Specular.g = 2.0f;
& B/ I7 O- Y4 C: v' C$ N
pLight->Specular.b = 2.0f;
+ R* H+ m7 M7 z9 B' J
// á?oˉ
( I, J1 a6 ?; z6 e$ ^2 j5 l
pLight->Ambient.r *= 0.9f;
2 ^+ c' z3 b# o, k, O n3 N
pLight->Ambient.g *= 0.9f;
8 L# |4 ?. t8 r# s
pLight->Ambient.b *= 0.9f;
8 ]$ S. j8 x: {: ~5 B) P; }
#endif //__YENV
) i8 W- r+ G" {/ A4 s* O: A v
, W1 g4 P7 [7 o1 e4 _. A$ d
memcpy( &m_light, pLight, sizeof( m_light ) );
# b: g7 O; X7 q2 j# a* G8 E
$ V; y6 {5 }+ f3 |: ]: `, ?
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
; \! X+ O* y! K6 Z8 I
D3DXMATRIX matTemp;
, L" a$ k2 J* s ~/ M) n# @+ e
static const float CONS_VAL = 3.1415926f / 180.f;
% V) D" B, Q9 a6 E
j, y5 N4 q% H5 m
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
; R; W4 B1 K2 O* Z9 r1 X
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
1 }" ?$ p' q. n7 O7 e# e/ s1 \( v
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
/ _: E, m C8 r2 o
pLight->Appear( m_pd3dDevice, TRUE );
; Q+ |" P6 U$ G0 c
% C- E9 Q1 N* Q
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) i) |$ K7 l& \# `# E, Q+ A
// D3DXVec3Normalize(&(vecSun),&(vecSun));
$ y3 i& O. H( n
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
5 _7 P% o" y6 L7 m$ {) f7 [
' ]% c1 d% ] [; k, `+ K: a* e0 w' r
DWORD dwR, dwG, dwB;
^0 e; i; S( `% |6 a* C* O5 F
dwR = (DWORD)( pLight->Ambient.r * 255 );
k: O9 o: e: G8 M1 |
dwG = (DWORD)( pLight->Ambient.g * 255 );
1 P7 c' e( i% |
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ l1 x6 {% O% I/ A- b$ E
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* P# D' {3 P4 |; D; u9 W
}
1 m9 G0 H0 @. I+ B- b9 ?
}
$ b( `8 h, e* A% ~* m5 O! I
, Y6 N, n/ A( R2 T" s3 l4 [# A. i
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
1 _* _ D8 U3 ^) N
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) );
7 ^9 p r; q; Q4 a5 S: d
::SetLight( bLight );
j7 P7 P$ X% C
" m$ p' W2 d% h
// ±ao? ?D?í???ó á¤à?
% m( O; t" `* S1 B
m_pd3dDevice->SetMaterial( &m_baseMaterial );
6 N+ e7 u4 z2 D2 K7 ~6 a0 U& b
. \6 i0 i2 _/ T; Z: Y. x
#endif // not WORLDSERVER
4 ^) U& r" ]8 `8 I+ [# k0 |
}
) l' D+ g) W/ m
并更换
( V* V4 m9 E# _1 S8 K5 l3 K# @
Code:
5 C% N! f7 O9 E, B' C
__FLYFF_INITPAGE_EXT
$ u) Q* \# i `' _' E( N, R
定义
* m/ V5 M) W! Y' [$ @
0 o' T) R) N T, A9 q! \- b3 y
9 Z9 [5 g8 S# P
( P* H {( v# W6 w4 R3 O
6 [9 m5 ^5 S$ f5 V# R; Z
现在终于删除我的狗屁加速...
, P) a* M7 [% o
! _. ?" B3 C" T% L2 J3 c. B
! i* K0 B4 x0 `( {7 R$ ~- j
4 J9 z$ p0 G9 w: B* E
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2