飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
0 a n9 ~- g' z5 q' w) Z0 ~# t8 }
尾翼:
# p2 u9 h$ V7 ^" m, [9 o# W3 ?1 G
8 N5 q" \6 r: ]8 l
代码:
0 J0 ?' \+ x. Z
CWndAutoFood::CWndAutoFood()
7 a" J# c# T$ z
{
2 Z. X/ {9 G6 d1 T6 `. L% M+ j
m_pItemElem = NULL;
: _: L% U$ c: j- v% q3 }
m_pTexture = NULL;
% ]8 L2 y! |4 P1 G$ s' R h9 _
bStart = FALSE;
, H) Z. {6 |' ^$ y
}
* r: {( p, S& H `( I
+ @: \1 s( M, G8 H4 }, \+ B1 e
CWndAutoFood::~CWndAutoFood()
0 n# Z/ B K' D$ f% g7 U. W$ |3 C9 Y* Y
{
* ~ d* L3 n7 n
AfxMessageBox( "AutoFood ist gestorben
" );
# z# s, G$ P e8 l6 {$ Q D
}
- R" r! E& C0 s& C# K2 c
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
' ?3 z3 W K# m+ ~7 r- {2 I
{
/ T7 ?. E9 `5 o' t0 o# B
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
/ C2 V) O/ X6 g$ _" h% f( g5 R
}
, W$ G% e, t* a) P# m2 K8 r- S
% _4 k" h! T1 O: b
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
/ g/ y# Z6 c% h6 N+ U
{
$ [: s+ I8 R \& h& F/ T2 w( s5 _$ ]2 Z
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
, F5 o0 d ]. L# O4 H
CRect rect = pWndCtrl->rect;
8 W2 u% X& `- x" O" b( o$ ]% e) `
if( rect && rect.PtInRect( point ) )
: T6 V8 b! C4 Z4 [ r
{
: P6 K$ k. P( U
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
) }0 L9 _6 G& u( i; b* {) a! _
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
- q6 w9 l2 u, F, \9 D3 K6 }8 ^! @
{
- j4 M$ f R( ?$ h# \
if( m_pItemElem )
9 t. N, I8 v2 M* |9 q
{
9 W. A6 v6 F5 M- D
m_pItemElem = NULL;
8 L/ N! z8 _5 B! h6 ?
}
; X% S) t8 S- O9 x& O$ D$ T; Q
m_pItemElem = pItemElem;
0 F, Q! h0 Q- w; r
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 g3 K2 ^5 C9 b. ?( }" V
}else{
) K/ Z" T& @$ q+ Y! R4 u. q
SetForbid( TRUE );
$ Z" u% [9 e. ^9 T
}
$ c9 W1 w& U. ]# @) E; R+ m
}else{
3 k I5 U3 Y2 S: C* c7 @; i, _
SetForbid( TRUE );
7 i- N1 K4 u7 x. \: ?# ^
}
6 s5 {+ Z) F! Z6 B! Z% G) m
return TRUE;
9 i5 y/ g% V5 A6 Q) W+ W2 P
}
0 I" |) o1 I U, O+ Q
i8 j6 \# R* l; u) b
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
! W" ?' {: j2 @; W5 c% H
{
5 b) C6 p. n: {/ s
switch( nID )
" c9 p+ s; K% u$ B3 u6 h
{
- x* W; r& F7 ^. o
case WIDC_BUTTON3:
, p9 f( g+ G" g. ]- h8 a2 s
{
$ R$ Z3 M/ G( f: w3 _
bStart = TRUE;
7 _: P/ U0 U: Z; v$ J8 R! \
break;
0 Z L9 f7 |7 F0 Q8 E' c# i
}
4 y3 Q9 e+ l& h% a
case WIDC_BUTTON4:
2 q# l4 e, v7 M) r: u/ t
{
$ V. A' B$ D$ b) T/ O+ \6 B
bStart = FALSE;
1 i7 d: m. M" P6 T
break;
7 L2 y4 f* g- F T- ^5 _. f
}
4 s* Y x* v8 j9 R
}
. M4 T8 @- j: t4 v" p5 ^
return CWndNeuz::OnChildNotify( message, nID, pLResult );
0 M: Y' p' _) |+ B9 s0 y) y8 C- E
}
! B$ u c: x& z9 M9 I. _$ b0 `! A
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
8 k1 X' Z2 R8 n7 q" g
{
" A& \+ u4 ?7 _+ O" q% ~
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
1 J. Y( G) @6 i5 H5 P9 H/ ^
if( bStart || !m_pItemElem )
' n5 }/ f( k% X! m% v2 F( H" L% s# Y
{
, C( R2 N& R# K
pBtn->EnableWindow( FALSE );
5 @ a! v9 ~- m, A7 C+ J
}else
8 e A( ]. Y. P1 [; X
pBtn->EnableWindow( TRUE );
* [" F' a4 b+ n" I+ y( E5 y
if( m_pTexture )
8 Y4 s3 R ]; q) g
{
1 O9 D4 ]- V0 N) d/ ^
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. j' L( q3 y1 U. X p2 @1 p
if( wndCtrl && wndCtrl->rect )
9 D+ [) }9 y1 ]( B
{
- I; E) `! a* h" N( `. t1 ^+ q
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
6 b; e; y3 x, g5 W9 l- N# z( d
}
7 |. E4 r' y! j
}
# g$ {/ i; j9 r
}
" Z& s% O% h5 D% W& n2 q& a; \
* L2 h: B' r3 B
BOOL CWndAutoFood:
rocess()
# R7 Q0 [) G5 B. v* ?6 ^ r1 x
{
' q4 T8 ]5 h+ |+ i1 K
if( bStart )
9 |' F6 x/ [) |" S' G+ m
{
& r2 X; a# w5 { {. w, Q" O" L, l
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
( T$ o9 J/ ?+ P2 E( O
{
" ^0 S( y/ j5 ^' O7 M
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
! U2 r3 F# q4 Q! T9 C/ b) Z* o
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
2 d/ A# a; v8 r: `
}else{
- E% E; S% O% J" z$ A7 n6 h2 A
bStart = FALSE;
3 V/ K4 v& O7 ?6 P
m_pItemElem = NULL;
0 t. _) @: e& z
}
3 L4 j0 Y) |8 L
}
( d7 K, J O4 I) E- I" M
return TRUE;
, H! x' I2 o& i; ?* W
}
u! e- d7 ? ]& o' @4 f* Z
& d( [/ Y2 p2 Q5 s
登录视频废话:
a3 g+ I1 y9 g
尾翼:
( ~0 [$ `! \: m, o. s
0 e$ r3 D, C3 L, }
代码:
5 ?0 N+ E. K' G5 \" z7 ?
6 C9 E9 O R5 g5 R# v7 c0 E
void CWorld::SetLight( BOOL bLight )
- d$ C/ t- i2 x, O4 Z0 |" e) D' ~* K, ?
durch
e, H% Z0 L3 h! X
Code:
( H! C6 y6 ], ~2 ~, W
void CWorld::SetLight( BOOL bLight )
' V3 t, t( E+ c3 Y* B& @5 x
{
1 K& y) l |) A7 |' x+ k- S
//ACE("SetLight %d \n", bLight);
3 H; L% m8 F$ E( {& S5 s
2 r4 e9 U9 m; {) m+ F" y
#ifndef __WORLDSERVER
N: }, O5 T! G! R
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
: H! ?) h/ x% {2 H( |$ _6 f
CLight* pLight = NULL;
. G6 ^( T. x; b. C- `5 n# s
: C+ x; P% Q* G5 \; q
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
. J) U- l2 z. e5 \; _
9 P) H8 s6 ^; u. I
pLight = GetLight( "direction" );
+ u( w) q! [4 x8 A5 j5 Z- I. O
; a% o$ K, Z$ ]8 C b; G3 p+ M
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 w% l3 p& S7 x4 ?4 O
if( g_pPlayer ){
; A# e+ Y5 U7 m# T* {: E" g
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
) O* v+ s: L3 B. G5 i
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
$ b6 C; J& ?$ R; o" p8 v3 v5 }
{
$ E4 w9 B. @4 K$ t# T
if( pLight )
4 k o. B" V# y& n3 B* @' [
{
/ q/ u1 ?6 X* i ~7 x6 {% S
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
. K9 T" s+ V/ i0 ~& W
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
- G; t N4 t. _$ l& Q; z7 b
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
' M D% ]' q/ }% `! h% E) a
- A: }5 `) F5 ^1 w: `
pLight->Specular.r = 2.0f;
5 o" D J$ p& L- C
pLight->Specular.g = 2.0f;
& X/ N' H# s w5 J! v2 @
pLight->Specular.b = 2.0f;
1 B9 n3 p" o) N% F- _+ r
7 ~7 ^$ _% D& x, p& K8 K
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
0 L( n7 _# V( q m: ]
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
6 j4 Q; J' _ U8 c6 t; m
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
- X' `5 o p# P: G) q5 N: j
+ u2 P# ^6 b+ z4 b% Z
HookUpdateLight( pLight );
' {4 P& U- b4 b* P/ v/ z6 @3 K
^) ]5 C8 I; m# T' L4 E, m
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 m) `( r7 T" H. E" |4 J
0 c* b( \% @8 ?% T5 J
pLight->Diffuse.r *= 1.2f;
3 e( Y# ~, g4 m" H: y
pLight->Diffuse.g *= 1.2f;
, m6 y- _/ }6 E+ R# X' N
pLight->Diffuse.b *= 1.2f;
% x! Q$ U3 d. l: y# L9 c* `
1 G) i( @4 D0 k: F' l. R
pLight->Ambient.r *= 0.8f;
7 q. E( o) m! v3 A7 P( I" _
pLight->Ambient.g *= 0.8f;
; X6 v7 Z; F. p3 n A- r9 }
pLight->Ambient.b *= 0.8f;
1 |# ]7 |. @& Q3 ^
! J8 ~+ y5 t! {3 Z
memcpy( &m_light, pLight, sizeof( m_light ) );
' G; {2 c8 v' D* ~3 Y
' g0 w5 @7 Z# E W
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 K! x) i/ z0 ~2 y4 \+ [% e
D3DXVec3Normalize(&(vecSun),&(vecSun));
. _% f: G* V9 b$ x
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
5 L% R6 l3 T$ u3 r# x& {
pLight->Appear( m_pd3dDevice, TRUE );
4 u. o8 T- c+ @ s' |2 i5 G. ]$ p
8 k3 u+ t) p4 s! W2 P
DWORD dwR, dwG, dwB;
% S1 G) I4 ~" E* Z+ |$ h" L
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 f; P/ p/ m. I
dwG = (DWORD)( pLight->Ambient.g * 255 );
, y2 y# a2 ]4 S+ n: J
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ z F( J/ @+ x# B: i8 ?
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) I5 _$ W1 Z1 o' f" P
}
: q7 `" }4 u5 W$ Q
}
# A% O {$ S9 e6 \; k& H
}
, Y1 I' O; L" v s( {
else
1 k2 ]9 f, x3 O3 E2 O; {
#endif
1 G% `+ ?. ?% F3 T
0 u! [' [* i2 u' M' s9 O
if( m_bIsIndoor )
+ ]* u0 I) s1 G% A+ i) [
{
# w) m! |% o0 B9 H# `9 s
if( pLight )
2 r$ o: O1 Q B, }' h0 q0 S: |- I/ k
{
( J- X d2 ^1 W: X% B8 @
// à??μ oˉè*
2 r2 x5 `! F* I' o
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
' d" F, n5 d' N/ a. j) Z7 `
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
7 J! c ?5 g& E- B+ @# ?$ x4 q
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
4 e' ]) a, ]9 `/ {" h
" t/ W) M% R# P9 n" D; N4 W, a& q9 O
// oˉè* ??à?
! j3 @ `: c7 l/ ~5 Y; q
pLight->Specular.r = 1.0f;
' K z c9 J( Y- \# |! w4 `
pLight->Specular.g = 1.0f;
" M5 u4 M$ ~0 j( h9 k
pLight->Specular.b = 1.0f;
" W/ \5 @* @8 v1 M0 R& w
// àü?? oˉè*
: d7 i E* w! q _1 a& K1 T
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
, p& ]# }. b) S
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
' s# z5 [- C: T( L( U
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
" x9 j5 P f% K0 D; ]5 z+ _ [
( k2 Z! L) V' q5 Q2 F1 i
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 @' ^9 k% ^# E' G9 `
{
/ Z9 n9 `- V; ^1 P# }$ H
pLight->Diffuse.r *= 0.6f;
* n3 E9 S3 z3 ?3 U
pLight->Diffuse.g *= 0.6f;
6 h* `/ a% j- |( \- R
pLight->Diffuse.b *= 0.6f;
, ], P" N' @: u: r
pLight->Ambient.r *= 0.7f;
- B5 ^# R% ~% r" g" l5 \' N
pLight->Ambient.g *= 0.7f;
, K9 w8 M2 \: t# ~; k5 @
pLight->Ambient.b *= 0.7f;
! k0 q J j7 ^' p
}
% D, J; P0 t1 T% L# W( P4 ^$ J* c% ]
- q Y0 L0 b; t2 Q6 |1 l
#if __VER >= 15 // __BS_CHANGING_ENVIR
" G& m+ ]$ O$ T2 w9 J
if( g_pPlayer )
7 v" a4 b' }2 I
HookUpdateLight( pLight );
8 ]! S* N/ w0 Q! f# B6 {: U# @
#endif
0 p* T, z8 f% ]& v- \3 k b/ f$ ?2 y3 ^
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; q6 r* z( V* I: [
+ \. K, u I/ ~7 z7 Z4 S1 @: K" }$ N
pLight->Diffuse.r += 0.1f;
; _+ Z! Q/ I) ^$ R3 h: l
pLight->Diffuse.g += 0.1f;
4 C- l: \8 j' j5 B' B
pLight->Diffuse.b += 0.1f;
; f+ u% d1 j4 w; C. ?4 s6 _) F8 u
// oˉè* ??à?
& w2 T8 A) Y6 m+ T) U) g' j$ T1 y
pLight->Specular.r = 2.0f;
3 Q; z% M+ f1 X% w+ Q0 l' ]. x; X
pLight->Specular.g = 2.0f;
5 |( r; T) W4 c, K
pLight->Specular.b = 2.0f;
6 X" H- z# w r; C
// á?oˉ
7 \) h8 T. H2 R$ K$ p
pLight->Ambient.r *= 0.9f;
6 d; a t" H7 b# j
pLight->Ambient.g *= 0.9f;
, u; c3 i# p* O1 c1 a
pLight->Ambient.b *= 0.9f;
9 P9 P! h0 W2 U' K/ s F+ p2 x
: [ z2 z6 J$ i+ r
memcpy( &m_light, pLight, sizeof( m_light ) );
b6 g. z* ^: ~, }5 w: Q/ s1 @
: F' t' q& K! x
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
3 {5 e/ c; Y* c0 V# W6 L, q! o
pLight->Appear( m_pd3dDevice, TRUE );
. x& j3 J! ?& u0 a5 z
" r/ D; a8 O& e. ? }
DWORD dwR, dwG, dwB;
' M& d8 |6 R; N" U: b
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 d# B: ^4 K4 Y( D
dwG = (DWORD)( pLight->Ambient.g * 255 );
2 o" h- Y' ?1 Q
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ m: Z: z# W& \1 b. z
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) X) \* P, p R3 o3 ~+ _0 N! H
}
- w x1 A7 v- l5 p! o- n N
}
2 ^1 U& ^2 k4 q6 T/ y- t& X
else
* }6 P7 p6 H) d" T
{
! h. ?+ a u7 `7 H
if( pLight )
' s8 s% A. D, r/ W: U8 `9 U/ q
{
6 ?: D' s2 i9 I. B
7 p0 ?1 _7 j+ R
int nHour = 8, nMin = 0;
1 {1 M1 P S& [: r# M
#ifdef __CLIENT
1 G9 ~" u7 Z( g: l
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
' L! S) ~4 s4 t& `
nHour = g_GameTimer.m_nHour;
; T8 V; N9 P @, |- X3 x8 C
nMin = g_GameTimer.m_nMin ;
+ m$ C7 E( Y# q- L: o
#else
- g# }6 m9 m# e5 X/ R1 _( v
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
8 J# K' K1 I2 X) l# R
if( m_nLightType == 1 )
, h$ n+ o4 ~) R+ l0 M
nHour = m_nLightHour;
0 \. D# j7 T* q( H. v/ r0 V* K
#endif
$ \6 z8 \! Z8 }! a6 y9 l1 Z+ _
nHour--;
9 f/ g& o# x7 H5 k; ?7 _$ I" E
if( nHour < 0 ) nHour = 0;
: m2 H: l: P+ M- P! I4 u7 y
if( nHour > 23 ) nHour = 23;
; v& G7 G4 `1 J% Q. c# b
! R5 e) G! @+ z. U% J9 ~, K# [7 B
//if( m_bFixedHour )
6 U4 s# x" `8 J% m9 U
// nHour = m_nFixedHour, nMin = 0;
# _& m) f- M5 Z0 `6 z3 a$ @* k8 k
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
+ i# Y: x2 L8 n4 z: n, s
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
+ y! A. h- q0 ^9 C) j
# w3 y. d0 w8 E m" L1 F
//m_lightColor = lightColorPrv;
. f Y3 C5 g- P* L3 o6 U( ?8 M$ n
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
3 _- @3 {! ~- l4 L7 |2 g3 `
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
; W/ Q# L2 Z0 O5 X- @
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) |+ g" a! r- N& W" p& o5 q
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* O. w0 M, v9 M" ]1 i( i$ g
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
, C" C$ ]6 g0 H
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
, W/ @7 ?0 S, G. j* S
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
. z" u: b! Q& X) ?" z: ]$ y% z; S
# E* u) X7 P* x/ h1 N0 s; n
// à??μ oˉè*
- G: U! G9 T5 n- L4 c+ W1 \$ p' t
pLight->Diffuse.r = lightColorPrv.r1;
) t5 f! v1 x2 B9 O
pLight->Diffuse.g = lightColorPrv.g1;
5 y) S. ^ w# {$ T4 w& b D
pLight->Diffuse.b = lightColorPrv.b1;
) z" n% P8 T2 z, T( b2 f: p2 E
// oˉè* ??à?
7 z5 Y2 `8 V8 @8 Q* n L
pLight->Specular.r = 1.0f;
2 B7 g2 F4 G' f n# v
pLight->Specular.g = 1.0f;
; e- R( w. m& ]% f
pLight->Specular.b = 1.0f;
! H) n" ^. N, K8 O2 y% r
// àü?? oˉè*
& z# l, l/ r7 ~8 |
pLight->Ambient.r = lightColorPrv.r2;
9 \3 t z( d: [. i0 z& I7 l( t
pLight->Ambient.g = lightColorPrv.g2;
/ x9 _' |% v9 U' \4 {, F+ V
pLight->Ambient.b = lightColorPrv.b2;
0 u( g$ N4 M) e. P2 o- T# F6 t
* D. M5 h8 t& ]% {
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
) M% C/ o: h+ J
{
5 y; O6 R& [- s) u7 ]
pLight->Diffuse.r *= 0.6f;
$ Z' I- Q$ E+ U/ u
pLight->Diffuse.g *= 0.6f;
9 K3 r; E, T; [3 t0 i6 W k+ x% a
pLight->Diffuse.b *= 0.6f;
$ ~0 t y* ~2 c# b5 c1 A
pLight->Ambient.r *= 0.7f;
: Z5 |& S5 z( ^! i2 Z9 f6 j6 b6 R
pLight->Ambient.g *= 0.7f;
6 _& L: w) n# p8 U
pLight->Ambient.b *= 0.7f;
( R2 d9 E# ?- f+ K' y( J' s3 ]
}
' ^4 c( Y% @& e4 H0 s
$ U! \' k n+ W/ G" ~3 {
#if __VER >= 15 // __BS_CHANGING_ENVIR
; P" E8 d2 L4 O! f; X# G2 t7 D
if( g_pPlayer )
: D* z- O$ g$ T
HookUpdateLight( pLight );
! J3 `0 }1 \8 ^6 V9 Y; n3 H
#endif
: _6 A. `+ B! D! h3 V
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 ~5 t! t' ?/ a9 |
; }# L5 n" y! l4 j8 p' I- X
#ifdef __YENV
$ R0 }$ Q" a) N3 l
pLight->Diffuse.r *= 1.1f;
8 H0 Y. V9 \4 U: O. I; [
pLight->Diffuse.g *= 1.1f;
; t( W: Y/ H6 V! X. @$ f9 t# u- k
pLight->Diffuse.b *= 1.1f;
! M0 v. p: T: F# P8 w
// oˉè* ??à?
( K& c+ G* n8 h4 F
pLight->Specular.r = 2.0f;
" ^# b6 X: k) _6 p6 u! B4 `
pLight->Specular.g = 2.0f;
. D, T& F4 e. c7 r5 g
pLight->Specular.b = 2.0f;
& u3 H) O! ~7 Y3 ]4 `! F4 i0 ~0 ~
// á?oˉ
) j! j7 ?- K1 K6 M
pLight->Ambient.r *= 1.0f;
/ d$ R/ M$ b: c. C9 e8 h4 w1 j
pLight->Ambient.g *= 1.0f;
' V% I; j4 L/ P' w& i7 @7 w
pLight->Ambient.b *= 1.0f;
0 ~7 E) C! H$ C* \# D- y& G6 J
#else //__YENV
& d* ]; ]+ ?% F; W2 N2 ?, o) b
pLight->Diffuse.r *= 1.1f;
# | w4 F2 Y. I# X9 i
pLight->Diffuse.g *= 1.1f;
) t- A( E! H' Y, R% t" c0 l: X
pLight->Diffuse.b *= 1.1f;
: |7 l+ h. o* ?9 @/ i. \- k/ W- B
// oˉè* ??à?
' U, z3 Q* @8 X, o8 V
pLight->Specular.r = 2.0f;
+ d0 c$ C6 C0 }) z
pLight->Specular.g = 2.0f;
' J: y; o/ B4 r2 @& ^0 t' u
pLight->Specular.b = 2.0f;
5 H S( E0 ?( U7 R' }& D% ^) G
// á?oˉ
# Z; F& F9 z. @( p
pLight->Ambient.r *= 0.9f;
: H8 `% B$ `& f$ M
pLight->Ambient.g *= 0.9f;
/ ]' v2 b: ]) ~
pLight->Ambient.b *= 0.9f;
' b8 J1 E* K8 V5 i4 s& K# ?
#endif //__YENV
: ?9 ^ \# U; V4 F9 {; i4 @
b) B" ~/ I3 f8 Z
memcpy( &m_light, pLight, sizeof( m_light ) );
" l" N3 J7 w6 G: Y. o
3 k3 X. N" \, Z* t+ R) B# q
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
, H( B& l, x! j( I( r+ t! F0 G& v
D3DXMATRIX matTemp;
: h+ v4 |' X+ a1 e! r7 ^! V
static const float CONS_VAL = 3.1415926f / 180.f;
& h; y6 B, L0 ]; H
; s; c# d3 q' ^4 U
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
1 O/ l& Q7 f; ?4 Q2 s4 ^
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
( P' c, Y' c; v* H! S- D
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
% W1 A9 V2 v9 A0 s* I$ |
pLight->Appear( m_pd3dDevice, TRUE );
1 B8 c8 ]# I7 k$ i5 Y
. t7 Y, N: g: d
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ O6 R1 {+ e& h* C) I
// D3DXVec3Normalize(&(vecSun),&(vecSun));
* b" i& R: c6 D. K6 x3 x
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 R/ S3 o) Q4 d- x0 J3 C: t
3 y5 I# w! A& D+ z9 X$ Q
DWORD dwR, dwG, dwB;
0 g/ E4 u/ _* _
dwR = (DWORD)( pLight->Ambient.r * 255 );
c8 i: [3 U$ k- l
dwG = (DWORD)( pLight->Ambient.g * 255 );
8 o- X- P" i, c* h9 Q! {2 ^( x$ F
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ Y* ]' J B& v6 ]
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
# C2 k) ]5 V: T T7 A# n
}
) u6 l5 E2 a8 Q# r9 u
}
1 [' ]: C' r: f8 w
6 X. D2 L% x( b' N1 i% X
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" z8 I) D, h& f* c: E" _: [; 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) );
9 ^2 q- a& l! R$ ~
::SetLight( bLight );
6 R8 k) t( n' [4 q+ v% {# }8 K
, X- R2 N+ j! s" g$ ]/ s. u j
// ±ao? ?D?í???ó á¤à?
+ S- ]; o/ u4 M8 V* _: T
m_pd3dDevice->SetMaterial( &m_baseMaterial );
; B6 O5 }, g3 G2 W) i8 ]* e; _6 q5 ?
/ t! O g) B$ u u
#endif // not WORLDSERVER
; x9 C3 K; k8 M
}
9 D+ n+ F4 K9 ^( U! r% b _
并更换
; s! T/ j8 g z7 }( P) E, u
Code:
/ @ n! a; F( ^- M4 \6 g% ~
__FLYFF_INITPAGE_EXT
, p. K7 g/ ?7 O0 r
定义
7 j' l s7 E' T0 X% s- B6 [% |* a
" `+ b+ U4 C5 d, D" x& W" Z2 \
" k/ F5 s& U& z* S/ l
1 y8 j" p# Y$ i& ]* `
+ d7 R" Z! U( | q1 [
现在终于删除我的狗屁加速...
- b+ j7 ?% G F; ^' M+ j5 t
4 {! I9 o, I z
' N5 ?( U0 a! _1 T: L7 B
; g" @' i+ S' @6 x% C
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2