飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
; M: M! e& q0 j
尾翼:
9 k* x0 A8 J, B5 G
, b0 @# R, x J6 A, m
代码:
" H) R7 Y4 A# v! E( a% U4 ?. f
CWndAutoFood::CWndAutoFood()
0 _4 w& s: b% Y' j, e
{
, t9 q; M% Y: }6 D
m_pItemElem = NULL;
& _/ u* I! z% A! h. z5 s2 n4 ?! O
m_pTexture = NULL;
G! [+ L0 a5 K, R! d1 d" Y; K
bStart = FALSE;
9 R0 n2 A- | } a( m/ `
}
h' Z0 F6 K$ y0 ? D L1 O
" Q' N9 g* f/ `* ?
CWndAutoFood::~CWndAutoFood()
8 j4 Z1 Q, u/ {" M5 m
{
2 U! m! Z) w# A8 N8 m
AfxMessageBox( "AutoFood ist gestorben
" );
: f1 s1 O0 O) `: G7 w
}
/ D& `( V1 X9 M8 N* `2 Y
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
0 ^+ x3 ^. {, p! X0 E! D5 {
{
, F( T& K1 f/ d; l/ D; `
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
$ y$ D1 s) l, k8 M/ s) F
}
( m& Q1 R2 D: W" l! Q# j, ]0 i, t2 i+ G
3 V2 I' _6 ]5 _; U% C
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
% S: P* f4 N& l4 s4 R7 O
{
9 l: T) W' A& d, H t6 R! S% A
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
) L% k+ e& [" i8 P1 b
CRect rect = pWndCtrl->rect;
+ ^8 }* }; e" B& `: t7 Z
if( rect && rect.PtInRect( point ) )
" a( Z) b; ~1 I+ a+ B3 U
{
: u7 q% e. O* n; }! Z
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
( M2 Z! C% ^8 ?2 P! t! q
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
. q1 d1 R- H9 ^
{
) c% _% F U' B2 d; f- d
if( m_pItemElem )
% A* j L" r: z# M
{
+ y/ I M6 h6 _' n$ a- q3 `
m_pItemElem = NULL;
( k2 a/ n' h3 }* @& _8 w" n1 {
}
1 [2 H, j F7 a1 T: P0 I8 U/ M
m_pItemElem = pItemElem;
3 u3 j2 C4 e( t, p' I
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
- n; O' S J8 E) s# U6 P& n+ m0 K, g
}else{
5 J9 `% H% r6 E
SetForbid( TRUE );
0 h6 Y a W% @* _. L* {
}
/ v ^! x5 d( m6 c$ z
}else{
3 y9 B- v; j0 W8 b1 c _- {
SetForbid( TRUE );
; j* \* u7 c- R6 e; M1 A: M
}
. W" k2 p P: d# q. L: y0 Q5 Q
return TRUE;
, w8 Z4 c( P/ x& J# v' z4 N! G- J, m
}
L$ ]5 q3 x- v9 ^) Z
) N; A% A$ x7 ]/ U2 P: _2 k
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
1 N* ?! \3 P& h
{
) p p0 b0 v2 `
switch( nID )
# y1 Y8 {0 E1 C# l7 ?
{
, i k6 q' R( K; |$ S, x
case WIDC_BUTTON3:
# C/ M. Z0 R6 s# B& E9 [" H/ g% _
{
9 R3 r: G$ k- v0 ^/ E9 U
bStart = TRUE;
) n/ J& z. l6 f
break;
$ T2 S4 }; q, ?! r2 U: u6 Z3 S" s
}
9 y5 q+ K8 L2 V. w) Z* I
case WIDC_BUTTON4:
: V3 J0 t* B6 A+ H! B4 Z+ n- A3 Q
{
( c" w; p3 J- q* w: g4 S
bStart = FALSE;
. _/ h7 S1 T/ M' c" \) \6 m2 I( ^
break;
. X, \6 a* h5 T/ }
}
2 R. i9 Q, @- t- L: u$ f% x, f
}
) S/ Y, }/ E" Y: L8 s
return CWndNeuz::OnChildNotify( message, nID, pLResult );
! R- G% W) e* ]0 R
}
6 ?6 u3 `9 K; m* A" A- B& K' r2 {1 T: w
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
( f7 J8 V, n5 z) B7 H& c# K6 o6 w
{
# @: L$ I2 k9 d+ f, L$ v
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
4 ~, N( N% }8 K+ I6 P) m- C( ?
if( bStart || !m_pItemElem )
! k C9 ^* z% ^6 r, z4 S) @; {
{
9 z0 P# {+ T8 D% K+ H8 S) J
pBtn->EnableWindow( FALSE );
" M8 I' N5 |* z# @8 G8 R
}else
9 F0 s" o8 Z# K; ~) y* s$ j& s
pBtn->EnableWindow( TRUE );
) h' x4 n$ j1 ~1 Q' ?
if( m_pTexture )
- P4 n1 e4 F- s$ Y6 f( P$ _ ]2 Z' P
{
6 S. D2 m! w7 |( Z& S' `
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
2 z( F; \, f9 ^6 r3 c! x
if( wndCtrl && wndCtrl->rect )
# h# h# o; X% i9 O5 L
{
, |2 \4 i8 e8 Z& ^1 M% ^
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
6 A/ o$ E8 A* f: O& B, W
}
5 t$ A. i6 r6 A1 S" P& v, A! V
}
$ s; Z' w! ^9 U, O2 Z
}
/ M. [ w2 R& I8 K
* M7 C9 V# V7 N( l
BOOL CWndAutoFood:
rocess()
7 O$ I) T( J- |) e
{
, _ F' v) h+ }8 r# z. u
if( bStart )
$ S7 \" U6 p8 ^) F; q* D
{
! l; F+ M3 V2 i3 Z
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
7 z1 ^9 q0 s4 R0 v5 ~, u+ w* n4 h& j
{
/ y* H) K5 h0 u' S
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
. V, ~, ~. E% k/ M0 K7 R* ^6 {5 |
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
) V2 N; ^! w. J* {0 u# V
}else{
8 P6 B9 }; r' P% E/ |
bStart = FALSE;
/ t2 s% X# h) |
m_pItemElem = NULL;
: i3 N( w* l. g, Q; x
}
+ U6 H8 z, F4 Z+ W/ E
}
. K/ N' j" I9 K
return TRUE;
" k# D+ ^. F7 y3 a
}
2 i. d' i; e5 G) U
8 p' E6 Q3 a/ [$ m6 g, n* F
登录视频废话:
% j6 N: `) l! j
尾翼:
' i/ ~$ L3 D z f' J- F
: T% e: P' B$ T# N8 D* r
代码:
% _7 C, [9 U( W3 Y/ |; o, U$ n& R
9 O8 F! y/ a6 T& d8 p
void CWorld::SetLight( BOOL bLight )
5 i: ^/ k2 F+ b. P' z$ Y, J
durch
+ g( V8 [% R/ A( n" T. x+ K, Q, A
Code:
4 X% o" X: N w2 W) |; B! a
void CWorld::SetLight( BOOL bLight )
# q6 T0 H+ f$ |) m/ z3 |8 l0 ] p1 e& r
{
6 T; \# A9 H" {5 h
//ACE("SetLight %d \n", bLight);
3 f3 h+ S2 ?: `
Y& L( t( h2 \, h# o
#ifndef __WORLDSERVER
7 d3 i& B2 q" W, c
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
9 U" ^. T% V- f& m2 t! n& K1 |
CLight* pLight = NULL;
5 D+ } x0 u! o) |
- |4 e6 b$ @) B* |8 h/ k. ~7 U1 C7 z
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
; m0 \! |! m [3 \
( i/ F: j' W6 {' [. H' N
pLight = GetLight( "direction" );
: C4 X# F |. t8 p% g3 e8 V5 z* w+ a/ E
) S+ X" @. v5 \! L h
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 d/ E7 U' r" R* j
if( g_pPlayer ){
# K, p- [8 e4 @( m
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
( r+ ]3 ]" F _' ^3 H" l
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
9 V" O. T6 p/ h6 y* `- y
{
+ U4 R! }* m0 r7 s) L! J4 n
if( pLight )
2 t0 U6 v0 c0 y* n/ C
{
$ R7 w7 [( b6 x1 N
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
) x5 R0 q" j. M# [8 ?8 w! O
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
4 s8 V2 u% M7 f+ b- g+ D' ^
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
" Q* p9 E% m7 C6 p. p
2 P# s% n8 _/ _' i1 e6 t
pLight->Specular.r = 2.0f;
# G4 {. \3 h4 P0 x+ ?9 g- Z: Q! W
pLight->Specular.g = 2.0f;
5 f6 Y4 W- d2 ?; @; M+ _8 ~9 V9 @
pLight->Specular.b = 2.0f;
7 e" B) G9 d: r
% e8 z! R8 y8 Z, T1 B- f8 [( K
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
( F# `1 F' ~9 W% V
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
# [3 @( |, M" h& K2 l$ s" L& E
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 e: r- X; D4 q" _5 t; l
5 _9 z7 P; M b+ g" V& u& w
HookUpdateLight( pLight );
$ E, {* X$ x/ x6 d- D
+ _9 j/ `& p) F% [% T
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& W' J ]$ T3 l$ E$ E( O' q6 a: S* h
o! T+ s4 H1 E
pLight->Diffuse.r *= 1.2f;
' e# A7 u2 `: C% p7 I2 F9 E
pLight->Diffuse.g *= 1.2f;
1 a0 M; t0 \: N, z9 [
pLight->Diffuse.b *= 1.2f;
' n' H! z9 y$ N* ?& x q
& \3 u$ z7 @* T0 ~7 _0 M: }% T
pLight->Ambient.r *= 0.8f;
8 @ S; e; r& h. v% \$ G
pLight->Ambient.g *= 0.8f;
7 ?: v, W2 T! M* U+ r+ o, W; P
pLight->Ambient.b *= 0.8f;
0 Q4 y& Q! D) D* m+ T0 M
4 h! c$ D7 G$ E; V9 i) \- B7 W
memcpy( &m_light, pLight, sizeof( m_light ) );
) F4 W1 ~$ e1 ]0 P( p
' D& Y7 x" h6 |+ ^3 y
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
0 h. F: {2 R$ L4 i3 g! N4 h0 c
D3DXVec3Normalize(&(vecSun),&(vecSun));
$ C" R, Z5 B% K& W) W* O6 F# m8 L: T0 G& _
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
; x3 i& ~5 n, h
pLight->Appear( m_pd3dDevice, TRUE );
. t* q$ y4 I* h
2 E; M/ \7 [0 ~/ e
DWORD dwR, dwG, dwB;
1 }0 q8 J- t5 _) E- O3 X
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 ~/ Y5 p8 h% B3 i% d+ }2 L
dwG = (DWORD)( pLight->Ambient.g * 255 );
; S* z+ S6 G8 K) A; h
dwB = (DWORD)( pLight->Ambient.b * 255 );
" j4 U5 W" |. _$ S2 U
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" S" A" X% R* |; S
}
$ _, ]7 A4 g# J" m
}
8 A/ R/ E- X5 Y. _5 a3 w& O
}
% {' V) A6 h) j9 E
else
: z/ m, D6 p, h0 m
#endif
8 ^2 K7 w1 Y3 @4 ~0 L
- o, O- v& P# K. r8 q0 d
if( m_bIsIndoor )
7 x! o' k: p- G0 w: h
{
9 y6 _8 r9 t' e* W
if( pLight )
6 N, ]& F J9 ~' ]# ^: Q
{
/ T0 P! t% u! v% [. p" [
// à??μ oˉè*
) r) X# S3 l4 x
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
" Q0 }* ^$ Q! d' j: R3 q
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
& P, [, z. [1 [+ Y/ b! W
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
& v+ u! C; f$ a* o6 K
$ F4 a( z( K* \8 I7 Q
// oˉè* ??à?
/ M. C. e# O, F" p+ u
pLight->Specular.r = 1.0f;
% k/ M2 f; {5 B7 r8 L& e
pLight->Specular.g = 1.0f;
; _: M# h, r9 N; V4 ^; Q, {; v
pLight->Specular.b = 1.0f;
& A& o" ~& I9 ~/ N
// àü?? oˉè*
0 h i8 l8 A7 A% f" a
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
" c& K& [1 u: O. P2 p+ r+ ^
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
* [, V. ~% C4 b* Z9 b& p% K
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
. U" Q2 l0 ?5 ]$ e, j4 L1 c/ r* M
) h% y, A4 i8 O- j. o$ x
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 q4 c( Q0 Z! W6 R y; Y; t4 L
{
" L7 F" @( z8 K$ x; {$ S
pLight->Diffuse.r *= 0.6f;
) k: A* ~+ M1 M$ f \. C( I
pLight->Diffuse.g *= 0.6f;
, M# L* l5 U7 H3 d! _+ t
pLight->Diffuse.b *= 0.6f;
8 W+ s2 x' g: c) V$ ]4 [6 h- F5 X
pLight->Ambient.r *= 0.7f;
) s( N5 z) r% j9 w) O) j
pLight->Ambient.g *= 0.7f;
6 |2 L1 s1 P. K; D
pLight->Ambient.b *= 0.7f;
, l0 q8 T& b- r' C7 H' C7 }
}
5 q3 ~% L& E3 s" w7 w K- [
, K/ O; I7 m" T' k. O1 L G
#if __VER >= 15 // __BS_CHANGING_ENVIR
( ~; T3 m! x5 L4 v) ~& G
if( g_pPlayer )
$ k. r5 J9 z" _" [2 j
HookUpdateLight( pLight );
) n, v6 q. N, n- g
#endif
( w( p8 |+ z4 K) D; A$ {3 j
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) F1 X G9 m' ?4 U
4 I' V4 K) ]4 |& q2 T
pLight->Diffuse.r += 0.1f;
% p V9 p; P6 S
pLight->Diffuse.g += 0.1f;
a2 C0 v+ `; N) M6 F
pLight->Diffuse.b += 0.1f;
! _* j. A/ ^ l. O- F4 H- i+ M
// oˉè* ??à?
( X) P7 P9 H' n2 T
pLight->Specular.r = 2.0f;
1 N8 @. F5 v& D5 [. k
pLight->Specular.g = 2.0f;
- x8 Y6 I3 L) I9 T ~5 A/ w
pLight->Specular.b = 2.0f;
) d0 o" |' M& j2 |
// á?oˉ
( a0 b+ s5 a( L, x, w5 k
pLight->Ambient.r *= 0.9f;
7 `. Z2 a% p) y0 A0 ?: J: Q4 H
pLight->Ambient.g *= 0.9f;
8 L3 n# B, T/ z+ U- x
pLight->Ambient.b *= 0.9f;
% T; l4 J% n2 B0 }
8 n; H# f) s/ g9 ]
memcpy( &m_light, pLight, sizeof( m_light ) );
9 Q8 O) l3 W! J' j1 I6 B
7 X% b M: `0 O4 j
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
7 o1 C8 b) S: \2 Q# v: h0 t
pLight->Appear( m_pd3dDevice, TRUE );
) ~. e, [! v+ q" K5 V7 _
) ^. }8 ~* w K2 d' T
DWORD dwR, dwG, dwB;
, ~7 x; A/ d4 j0 \& P
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 x e3 _& ~1 i- U) n: ~ \; s
dwG = (DWORD)( pLight->Ambient.g * 255 );
9 u* _ A P2 p- U$ z, N
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 w. W; D' N' Y3 k$ {
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" G6 D/ _' u' A, l7 Q
}
$ m( h- }2 b! i& b) k
}
5 M7 A6 e) w2 j0 z! q
else
! M9 x _2 }# z) ~# w/ C8 @: P2 R- v
{
0 u0 _* p; h) R6 [
if( pLight )
5 a6 w4 k# \: K/ O {
{
! u3 `0 e3 `7 U6 C0 v
& `& @( a6 I! O; S5 M0 Y
int nHour = 8, nMin = 0;
4 S: [$ t0 X8 Q
#ifdef __CLIENT
! w/ y1 e6 M* n8 n: q: x
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
! l& k$ U/ W/ P
nHour = g_GameTimer.m_nHour;
# N' B- \$ O/ n' H0 l. p1 Y8 t
nMin = g_GameTimer.m_nMin ;
; D6 q. ^6 k& }# }# o5 w
#else
6 k$ }9 u, Q1 L8 o4 |
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
% A* l# |3 b/ z+ t8 y
if( m_nLightType == 1 )
# ]9 D, o$ L4 q. X/ O# O5 ?
nHour = m_nLightHour;
7 I* v& @8 L+ z6 b2 |; L( g; d$ h
#endif
X$ ], T. N5 ~7 ] N @! D* @
nHour--;
$ U j! L2 L( L4 P( ]% ]3 n
if( nHour < 0 ) nHour = 0;
4 P- a o/ M' x! E4 M
if( nHour > 23 ) nHour = 23;
' @5 E8 Z4 u7 P; v S
A, ]' i1 I2 F; {: q) ] ?
//if( m_bFixedHour )
( G1 q5 v1 s" b6 X
// nHour = m_nFixedHour, nMin = 0;
* j3 H+ j+ e$ j* B& k- {
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
$ {7 } g0 w# Y/ k' w
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
. y; E3 |# G& a+ Y( X( T
* V. M2 w h7 \* n7 s5 A+ K
//m_lightColor = lightColorPrv;
1 X. d1 E9 l* Z8 { S8 V
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
P c% E- E! R1 Q( V, `( @
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
/ {9 \; `' \2 E: l
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
( q. L% S2 m$ d5 K5 D5 l4 B
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
- c9 I. U2 ]6 N+ y
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
$ C5 x% k7 ]% \* m0 ]8 l
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
8 m+ g2 m3 ]( R9 t$ p
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ I. _) j6 t0 X+ ~7 z; L% O
' S( r' o; E1 Q. Z# @: l
// à??μ oˉè*
8 I6 e% ?6 s, Q, r
pLight->Diffuse.r = lightColorPrv.r1;
% l: S8 P& l0 X9 r! h' o0 o
pLight->Diffuse.g = lightColorPrv.g1;
. C0 A3 C6 ]& S) L* e3 `
pLight->Diffuse.b = lightColorPrv.b1;
8 k$ L4 ?* Y" l7 F: U
// oˉè* ??à?
3 i6 e" K$ m9 @+ b6 X3 _0 V9 w
pLight->Specular.r = 1.0f;
: C) ^9 R6 M. A1 {
pLight->Specular.g = 1.0f;
; _: c; S/ v0 Y
pLight->Specular.b = 1.0f;
. M2 [9 ?; Q! A* `2 K
// àü?? oˉè*
/ h7 {: G* Z8 h
pLight->Ambient.r = lightColorPrv.r2;
) [7 a% ^: Z& ?! O% E J* b S
pLight->Ambient.g = lightColorPrv.g2;
7 Y% b& f9 [- B4 M+ G* C1 v+ I
pLight->Ambient.b = lightColorPrv.b2;
- k6 Y$ L8 d X/ R6 }
% Y' B/ G6 B! k5 a: A
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
+ q! t1 @7 v; e% F0 F; v: I5 L
{
" H3 X |6 v; F+ l) @( R3 |
pLight->Diffuse.r *= 0.6f;
6 C' h2 J1 F% r. ^# L$ ^5 N' \
pLight->Diffuse.g *= 0.6f;
; n: ?0 D. q8 b7 _) L6 M9 O1 `
pLight->Diffuse.b *= 0.6f;
* c3 q$ x1 I; b
pLight->Ambient.r *= 0.7f;
5 K7 \5 t) I& p# c9 K1 b% a
pLight->Ambient.g *= 0.7f;
& }' N1 q7 b* D* O \. v+ m5 d7 n. W
pLight->Ambient.b *= 0.7f;
8 ]3 F1 R' A# K2 Q
}
, ?2 p7 o+ _5 T P- s8 L
7 x i$ P% ^: ]+ O/ l
#if __VER >= 15 // __BS_CHANGING_ENVIR
% J1 c0 g8 Q# i1 {& B$ [
if( g_pPlayer )
0 G( p+ A4 b# _6 x6 z
HookUpdateLight( pLight );
2 p- Q L: Z' a8 M% C& B Y
#endif
5 i. L( ?: C9 Z6 @2 \, q" G
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 |7 p' n% H8 E i9 X6 [: e
( k8 z. o" z4 ^- D# c
#ifdef __YENV
* E( J" P3 p) I( }7 W7 M
pLight->Diffuse.r *= 1.1f;
* B, S* X4 ?: D2 m
pLight->Diffuse.g *= 1.1f;
) ^6 A3 ?; \$ |9 k
pLight->Diffuse.b *= 1.1f;
; t& T% T7 w- y) D4 R& @& H% W
// oˉè* ??à?
$ p% _/ f% B* i! b
pLight->Specular.r = 2.0f;
; ?( \/ k2 a2 |; Q9 e- M9 x# a
pLight->Specular.g = 2.0f;
$ n9 \( g7 p4 s! m# B
pLight->Specular.b = 2.0f;
$ ]* U# o9 f# @8 q3 e3 y
// á?oˉ
% l/ {; m+ t9 Z" t, V
pLight->Ambient.r *= 1.0f;
9 t; [: _1 c/ }' {( ?, y
pLight->Ambient.g *= 1.0f;
% ]+ }; c' x7 f% e
pLight->Ambient.b *= 1.0f;
, H D: o" Y) m' h
#else //__YENV
- _$ Q8 E: ~- F' Z) e0 A$ g% s
pLight->Diffuse.r *= 1.1f;
& E7 l! \1 G8 I" z9 k- R
pLight->Diffuse.g *= 1.1f;
! H! q( h0 s! k7 q+ k8 a
pLight->Diffuse.b *= 1.1f;
6 U0 s6 ?7 z. I8 s7 P" G8 C4 u
// oˉè* ??à?
# F) S* j5 D0 B( E- T
pLight->Specular.r = 2.0f;
1 n/ D. f- e# l2 x
pLight->Specular.g = 2.0f;
. Y% m6 n' }) J; ^7 L
pLight->Specular.b = 2.0f;
2 k/ y l7 D& z0 Z: R1 t, W# ^$ t( @
// á?oˉ
- }, l# D: p3 l* M
pLight->Ambient.r *= 0.9f;
. b( U' b5 |, B6 a0 r1 ?/ L
pLight->Ambient.g *= 0.9f;
. N7 q9 d' s0 t2 i
pLight->Ambient.b *= 0.9f;
$ [4 ^6 X+ }* [$ y! ~
#endif //__YENV
5 ~1 G7 V5 o$ y& [" i3 k! X! K1 B$ R
0 d, G, e' s0 ^6 `+ U0 y( E; A, |( g
memcpy( &m_light, pLight, sizeof( m_light ) );
3 C. ~8 D" |: D3 S; _5 a- d, ~( I/ A, R
5 X) t& c/ D0 N O. a
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
9 W4 Z( o8 Y* l% y4 R
D3DXMATRIX matTemp;
- K- _1 c3 \$ Z, Y+ p7 b2 m) ~
static const float CONS_VAL = 3.1415926f / 180.f;
: x0 [7 W* @6 V0 K& C. D" u1 n) V
) a2 \/ S# P# z1 N, C
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
* z. }. r/ H3 `) Y
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
/ k# R; h: ^6 A- \: A
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
* G3 s, n' [# U# f! s( j
pLight->Appear( m_pd3dDevice, TRUE );
1 D9 m) y% T: L. n
% a- M. m ]' q$ ^+ c
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) j: Q6 X& @7 X
// D3DXVec3Normalize(&(vecSun),&(vecSun));
' i4 F1 D& A, h, n6 U
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ U" I1 C9 K+ z& _; C3 U! j# L
7 w+ ]* {9 y/ j4 b! I9 L
DWORD dwR, dwG, dwB;
^3 ?" D- [# d/ |, g$ m2 A9 o4 {! _
dwR = (DWORD)( pLight->Ambient.r * 255 );
9 o0 v0 h1 Y6 |4 B. J! N% A6 z
dwG = (DWORD)( pLight->Ambient.g * 255 );
* H5 U, x1 n: C. t
dwB = (DWORD)( pLight->Ambient.b * 255 );
! T' m3 R7 H! w- T. `% ^
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 E5 K3 g. S: w2 X9 }% q% i1 p
}
i- G S# ~' }2 m
}
5 S; F+ _; ^' N5 ~/ U2 o
7 Q3 a) U$ L2 [+ @
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
7 g7 c' N# [, p" J, g6 t5 ]
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) );
+ E/ K8 A% V; F* e
::SetLight( bLight );
5 r/ X% }& D; M& k8 [( M
. [9 q% L. h$ K
// ±ao? ?D?í???ó á¤à?
/ U0 ^0 l2 `" A
m_pd3dDevice->SetMaterial( &m_baseMaterial );
- p! s& B R% I0 P9 ]4 l: [
( n! ^8 H; s# o$ n) V4 q7 ^/ }
#endif // not WORLDSERVER
" n* ^# x$ P' k/ X+ ]1 v
}
3 |' M2 a! M8 S9 d% t2 M j
并更换
, I" i i6 X/ r/ V* H% M9 ^ v6 A
Code:
6 R7 v! A; M; E5 W7 u3 r
__FLYFF_INITPAGE_EXT
3 P9 K' f2 `5 A1 @5 V6 `
定义
- O" t$ o+ r4 X/ e- _ y
/ ]5 X5 ]3 x: V' u4 O3 l& k* o9 i
7 ~4 L1 |3 r% k+ v }. `- v
8 {2 ?0 u% G- G1 o' p- o- T6 O* Y
/ B( P! {$ k7 a( Q* j
现在终于删除我的狗屁加速...
/ X' y8 v! B1 i! P" z& W+ P
- D" J& ]" p! M" K
2 i. c; r% w# i. ?0 Z/ d4 a
2 |3 y0 W% i" O6 u; y2 S
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2