飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
3 w5 G# n$ d/ R: J: K# \, g, l3 N! g7 v
尾翼:
% M+ Y0 g3 l2 I0 ^
$ Y6 c! K o% ^
代码:
, ?! D4 ]: W6 x4 T6 E# h3 p" `$ D
CWndAutoFood::CWndAutoFood()
9 z/ E+ C% z, r% ?
{
5 r3 ]: o* H: W1 A
m_pItemElem = NULL;
; w9 T: L# Y7 V: t' _9 J& q/ v
m_pTexture = NULL;
8 z; M& q7 J: i- K+ v! v
bStart = FALSE;
, o2 ]5 ]$ h4 I* B
}
% t% A, n1 T; D, Q/ [( h
, b+ A' M; b7 T" Q5 ^7 @
CWndAutoFood::~CWndAutoFood()
& t* y9 i+ p9 J
{
; l M& e- r' A3 y$ U
AfxMessageBox( "AutoFood ist gestorben
" );
8 N1 B5 G! m: d. W$ H
}
7 K4 I; o/ l6 t
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
# @& a% X6 m; o" {0 u7 E4 w8 y# d
{
+ K, `1 r. |2 K" P. _( B
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
L5 l: Y' B' s9 r4 R
}
, i8 R! o8 r8 N8 h! C3 r
, ^4 ~+ ]' m6 U5 T4 { d" C" R
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
$ B6 W3 o; U4 W, D9 z4 P4 [
{
3 u) C1 U+ u. p" O
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ [. ?6 |/ r+ f e7 W
CRect rect = pWndCtrl->rect;
- A, O9 [' ]: v# w1 h
if( rect && rect.PtInRect( point ) )
6 V1 M' T+ a- T* |
{
- o; J! w' Z ^# P
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
9 o+ s$ e. ]. e A- Y
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 b' I4 M' G# |0 ^
{
0 _4 b- p9 h4 _1 \1 o
if( m_pItemElem )
8 _( `( I7 [7 O
{
8 l, a$ T0 ]3 W( S% y% W. Q# v
m_pItemElem = NULL;
4 ?9 }' z6 X3 g3 d' Z$ c$ @
}
N5 t P3 k; E2 T( Z
m_pItemElem = pItemElem;
- A* r, J0 {) n0 K ] p8 }' E7 t
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
" [( W' u, w3 V
}else{
6 m" h' A7 d0 B0 ?
SetForbid( TRUE );
( C# g# p4 S, {6 d0 t
}
/ r3 {- Q' @& x7 U, G
}else{
/ d5 N; Q, Z. K! Z+ s1 ]
SetForbid( TRUE );
$ W/ @; u# T: f) p5 G8 I5 g
}
6 H5 j' g/ U, f5 P7 J3 H2 R
return TRUE;
( r- {, Y$ A) Y: }
}
) I H5 d7 \! a$ o2 P* k
- x8 }" n& L7 B7 }( [) {3 O
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
- K2 Z7 ^- L' j! [3 M! z3 n
{
! l% F9 w/ f$ Z& _/ K
switch( nID )
( n- z# T5 Q8 ^- f* f4 K
{
3 Z, |1 x* {. @
case WIDC_BUTTON3:
7 D! O' e# \7 T. h. Q
{
/ `4 H( x2 ~5 S4 X$ k
bStart = TRUE;
1 K. e# h. C' X: P7 E
break;
3 ^, L! O7 A; |4 o( W1 J
}
4 M$ w3 N2 R) o0 U: c6 b# D
case WIDC_BUTTON4:
1 l3 w( e; l E" G# d+ b
{
$ j( I- w. w0 C+ }
bStart = FALSE;
3 r; q; p4 d U9 o( ^* t j7 d
break;
5 v' O# c) r/ F( r
}
! T0 I! P/ w6 L( F3 @9 f5 Q8 R0 V
}
- `- l: N/ @" A" C
return CWndNeuz::OnChildNotify( message, nID, pLResult );
5 w4 f% O* k. k" `; n
}
7 u9 i6 M2 N9 g$ o) f! y
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
% d* T _' a: B5 l# U0 i
{
3 w, X3 S- L# I6 Q
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
; `1 F' H3 N- \3 T" f) D, h
if( bStart || !m_pItemElem )
+ H. l/ \/ F8 `) J& F
{
5 }6 ]! R6 `* w
pBtn->EnableWindow( FALSE );
' q: e( @0 D- b2 P+ V4 r* k7 ~& L: g
}else
5 F% n" I2 ?6 u0 ]: ~/ e5 N
pBtn->EnableWindow( TRUE );
4 q" F1 G' q6 v4 |
if( m_pTexture )
: R6 h) N2 a/ r
{
8 }- o' I$ }" j2 U+ c4 ]2 C
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
% ^' Y$ F5 p2 I/ a8 j9 Y
if( wndCtrl && wndCtrl->rect )
# L, L0 o, [) I
{
; h% Z: ^& _! b
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
- A) r S9 a5 s! a
}
8 m |4 N1 L7 ]: q4 K: e3 q! c$ I
}
1 a `5 V* l+ g% c3 x- u0 i
}
, z5 Y" ?( W/ N0 {
" ^5 @( S3 W+ N0 q9 L
BOOL CWndAutoFood:
rocess()
" X7 f2 t t; p% E
{
. }0 ^3 e4 [* y8 D
if( bStart )
/ |3 ]/ G" I! _9 q, b
{
. ?% r. t* Y( |( \
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) q6 A1 k6 B. k/ \; B
{
7 E+ o. `0 |* m" P/ p. Q! X+ o$ t0 P( p
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
% r' Z. u# z4 b. W4 l7 G0 A
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
3 L4 p! q% G& I i% y/ B
}else{
% d# ?* ~5 j8 F6 M: C
bStart = FALSE;
/ _' K+ @, L9 d! N. s# i
m_pItemElem = NULL;
4 p# K1 J( C9 ]" j
}
. x' l9 ~ w* k b
}
3 T# L0 G1 j8 G+ D
return TRUE;
* {/ n# f! k. w# Y: [
}
# F/ A' W) ^6 \4 J( Z! x
! K+ D8 A& \' L1 Q$ L. W" ?; u
登录视频废话:
7 V! k; D5 P. _' q% j
尾翼:
- w: Y5 s: {4 w
6 i% [3 G7 k9 O3 Z
代码:
" c! |8 p' S' L* o
/ X6 G* P. Z5 `# s2 T/ s# E
void CWorld::SetLight( BOOL bLight )
4 {4 q! X! @' w/ |
durch
- p+ c5 r: X+ U1 }6 v; i
Code:
6 |9 |6 K% `) e5 M' l2 t
void CWorld::SetLight( BOOL bLight )
# @. J( v; t; k N2 n
{
" ~* D9 l5 b- _, J
//ACE("SetLight %d \n", bLight);
, @4 |0 k0 B! [) _
+ o: S$ G8 Y3 [
#ifndef __WORLDSERVER
/ J; R1 Z$ Y' y7 ~% z7 I% n
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
+ X+ H$ y1 k" x0 }" s1 |( g
CLight* pLight = NULL;
% R) n |% U) @4 a: S
5 b* y$ O6 i. f
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
% N4 r. g3 c5 H4 @# G1 r. S3 j2 ^
! H9 Q2 ]( N* T2 S; C3 G$ i
pLight = GetLight( "direction" );
z# Y4 s! {9 Z/ x
, z: f! A7 o: p# C& m# `( V
#if __VER >= 15 // __BS_CHANGING_ENVIR
4 N# k8 a/ L7 z3 ~4 D
if( g_pPlayer ){
; O& u) i* V/ O7 {7 Y
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
! U- F$ j6 }* Z3 t3 n7 I
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
5 J# y( @# D* ]" Y* J
{
+ J5 h! ~9 o( d1 S
if( pLight )
. H! j- y/ b. Z0 S( ]
{
5 D1 {3 v8 W9 l9 @* e
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
! \& s' Y+ o9 ^# W# }) U
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
+ }4 }( y3 Y* P7 M' h! I" H, B
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
3 O) V$ ?& A% ?, j6 T4 T
* i3 \+ @$ a; V# w5 ~
pLight->Specular.r = 2.0f;
1 e! [, W3 j+ ?
pLight->Specular.g = 2.0f;
! I; X5 ?. A) Z0 \% z% F/ d
pLight->Specular.b = 2.0f;
; v3 m8 }( r& f$ W( U
! C) M4 s0 N+ i8 ?' |" k9 f g
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
6 U1 n; D5 N, X: ?' Z
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
# R1 F" U" G, I/ F
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
1 V/ t* {0 h& V9 Q0 l1 i" Z
# e6 M' B4 @$ W
HookUpdateLight( pLight );
V, }& c" _* H' E: `
. d5 v" \2 b* S$ X; }& ]+ F
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" c1 M5 N( \, r' u5 k; b" c# }$ t$ G
$ \" A; R2 z: v9 d- l8 B
pLight->Diffuse.r *= 1.2f;
& |! G* l6 _, }' G* B
pLight->Diffuse.g *= 1.2f;
& }1 y3 f% H' S% ~+ D7 J _+ L4 G
pLight->Diffuse.b *= 1.2f;
3 e5 ~5 [: w8 x1 H k! f+ x
7 L' X- u4 b) X4 ^% w
pLight->Ambient.r *= 0.8f;
' r0 O& @* t/ ^$ |. }
pLight->Ambient.g *= 0.8f;
3 k J; b0 `6 W6 Y7 ?
pLight->Ambient.b *= 0.8f;
! G- j& \5 B3 U; h A
, M- e+ W) D! Y8 m
memcpy( &m_light, pLight, sizeof( m_light ) );
! X' v: e/ z# ]* c# ^
9 C5 D) b$ Q! U7 P
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; J" U+ O% m' k6 r) [
D3DXVec3Normalize(&(vecSun),&(vecSun));
" p& _4 @5 g5 c
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
' B" D8 r8 R2 z: D$ o: s! P
pLight->Appear( m_pd3dDevice, TRUE );
; }2 Y) q: q, A' k" J# ?
& i" }7 x6 h; ~6 @" E
DWORD dwR, dwG, dwB;
/ I9 O% @; g% S
dwR = (DWORD)( pLight->Ambient.r * 255 );
7 c6 T, Z! [2 h' r8 P" e- ]. N8 E, X
dwG = (DWORD)( pLight->Ambient.g * 255 );
& w/ @3 c! M% [, T! u7 O
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ v8 E8 ?- {# ~; H4 v7 P8 @
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. n' M* V- r, G
}
; x9 k) B# C! w; z0 p4 V6 N" B6 u
}
& K2 d) b; T2 S, P) r
}
* O9 t3 D4 j# \4 g( T6 Z3 r
else
6 d: [3 ]" n7 t
#endif
6 ]3 H) r6 w: {: l8 r' \
& Q% t8 }2 \3 ?2 k3 C$ Q9 D( w
if( m_bIsIndoor )
% S8 o8 J }# O- [
{
$ `3 e* C7 f7 a6 n+ m/ n" {. O
if( pLight )
$ P- f: j4 [5 ?
{
5 |# t8 k1 u/ R$ |4 V- I1 E% f; }
// à??μ oˉè*
- c" O8 z' ~" ]7 w/ ?
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
( h1 w5 l0 T3 I: z) I
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
& _; d" B9 Q2 u% f- H( S
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
: Y/ D1 m; `6 P9 m+ d
& [5 q0 y, w5 x
// oˉè* ??à?
, c% A9 X' U; I6 y. z7 y) c. t
pLight->Specular.r = 1.0f;
5 n3 B1 s# a( H4 h2 t1 H% G6 K
pLight->Specular.g = 1.0f;
: |0 }: s; L9 [, _) A \
pLight->Specular.b = 1.0f;
2 S* K6 s- M" `
// àü?? oˉè*
: o0 s6 @( U6 v8 w6 N& D1 K1 U
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
# Y, v$ e$ _& y
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
5 R% _! {4 H* w# H
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
+ l+ |9 q" S7 N, r8 i$ w
3 w& N4 i' Q6 }' y
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
+ }2 S( ?7 s+ C
{
/ ]% R& ~0 v* ^+ i6 f1 Y
pLight->Diffuse.r *= 0.6f;
8 @" Z$ {: L* b# ]: m0 ]; i3 o5 u
pLight->Diffuse.g *= 0.6f;
# M$ a0 C8 k Y8 j# r0 b
pLight->Diffuse.b *= 0.6f;
0 V; I7 w! O9 x1 C, H% d1 B- p
pLight->Ambient.r *= 0.7f;
6 g4 G4 p6 k) O% f) K8 P- N6 Q: a
pLight->Ambient.g *= 0.7f;
0 {$ A% ^! {9 O. F
pLight->Ambient.b *= 0.7f;
" `; K- v* f3 j; I$ P8 b
}
0 R" ~7 g0 G1 R0 x
" v6 T" T" I- O f
#if __VER >= 15 // __BS_CHANGING_ENVIR
4 ~8 C3 F( e! G0 P% K! y# M; `
if( g_pPlayer )
# j+ ^ w' u0 s
HookUpdateLight( pLight );
5 s% g: x7 M' a4 M Y' u
#endif
, y* Y5 \. W4 r; Y7 o6 G% S: `
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 o+ M4 n0 e! k
7 \7 i9 V* Y2 ~
pLight->Diffuse.r += 0.1f;
L1 j- u; H A/ {) r! Q. L
pLight->Diffuse.g += 0.1f;
) f& `8 V; Z& U# i- O- H6 N& O1 P
pLight->Diffuse.b += 0.1f;
8 p6 h D4 ]; |: B
// oˉè* ??à?
& v, w7 v( j7 R5 _
pLight->Specular.r = 2.0f;
0 {& ^* c+ [9 r& e1 G% k
pLight->Specular.g = 2.0f;
. a/ _! Z: g2 n6 e4 Q' Y( \3 N
pLight->Specular.b = 2.0f;
0 z+ s$ L" j2 E7 `! ~
// á?oˉ
; F" |/ H, J- W& F; U
pLight->Ambient.r *= 0.9f;
2 J# Z5 w( G% @2 A! P2 C
pLight->Ambient.g *= 0.9f;
0 N, c1 [' x% a# E; ]0 t w0 J0 \8 `5 {
pLight->Ambient.b *= 0.9f;
* f: ]; Y( ~8 f0 F6 L
* b; Z; h: l" u' `# ?% p1 M1 O5 S
memcpy( &m_light, pLight, sizeof( m_light ) );
% M8 ~: A$ h8 K3 k W+ P
5 i# i: v) L3 }; L9 | u! e
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
# v8 K s' R. @9 g }
pLight->Appear( m_pd3dDevice, TRUE );
6 H: o' o- l/ E9 N1 a
) i4 n0 b9 _3 Y1 ^: q/ ?9 U
DWORD dwR, dwG, dwB;
% L4 u$ A: e, v( F6 f: n
dwR = (DWORD)( pLight->Ambient.r * 255 );
# G" I- F9 K3 M0 L W9 |3 O
dwG = (DWORD)( pLight->Ambient.g * 255 );
# u# x6 F9 l, j1 j
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ e/ B1 o/ m" [9 d
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' B! B# I* ]2 f! ^1 b
}
/ i) I5 j% H3 K! L+ p' w
}
! c! `5 g0 C( m2 x8 `2 c$ Z) k5 k
else
, ~3 h2 I( Y" A' m
{
" u! R! j5 d4 N; I
if( pLight )
9 U# z/ ]# n" `0 z! I$ V0 c/ P
{
1 ?% N$ ^% L' V; P$ `
0 q( m! G+ I$ `- A {0 z
int nHour = 8, nMin = 0;
3 C- @4 o: D$ z$ S
#ifdef __CLIENT
$ X- ?) `) h! f T* V0 U( g
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
& V3 @# P" ]& X4 Y2 S/ m9 A
nHour = g_GameTimer.m_nHour;
* ?- j% U0 A1 }* t/ E
nMin = g_GameTimer.m_nMin ;
s$ B! q* K2 V8 a7 b" N% @
#else
' `, W7 q, ]) X7 X9 p) m, K
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
; d3 K, u, X% f$ L! j
if( m_nLightType == 1 )
* L8 c# H; K; j% y2 p. `. f
nHour = m_nLightHour;
S/ k( d0 y4 N# \- V& O+ {3 \
#endif
) f+ i5 N, J& D) E& X9 q+ N
nHour--;
' J* T# Q" [$ {! p
if( nHour < 0 ) nHour = 0;
' _/ k3 ] I# a
if( nHour > 23 ) nHour = 23;
: f% V: M b8 _% i' s" g* _+ ~$ r
- J- A+ N6 l7 C) `( ~
//if( m_bFixedHour )
& w0 Y' j# g; c' b3 G
// nHour = m_nFixedHour, nMin = 0;
" |* ]! v) F8 y& V" Z; M
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
. D8 T5 [* s$ ~7 H! P& ]
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
+ _) b/ J9 J* Y$ I1 B
1 T$ S( |0 G( E5 r2 M/ ]
//m_lightColor = lightColorPrv;
* m6 m3 v* G% {( C7 A ~$ x
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
6 C/ W' X6 t! ^- n6 A
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
# S( w; l, u( M
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
1 r; I# @' C% \% C7 |, c
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
/ h. {5 N/ p$ G2 B1 v, F, [
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
3 N3 x/ j' ?4 g4 N
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
( {# e* A; t1 H b! f( T
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
' _& h, v% c( X+ s
8 h( V$ f* [4 C# ^0 T
// à??μ oˉè*
' S" E3 I: d) |
pLight->Diffuse.r = lightColorPrv.r1;
$ U% v# A1 @; Z2 r
pLight->Diffuse.g = lightColorPrv.g1;
& Z( |& v7 j* s
pLight->Diffuse.b = lightColorPrv.b1;
5 Y, w. X" }6 _0 w
// oˉè* ??à?
9 G1 y. m' Y$ P: c. m' A
pLight->Specular.r = 1.0f;
' O1 v. B5 K5 }$ K* {
pLight->Specular.g = 1.0f;
, v% \# M- w8 d6 \( G
pLight->Specular.b = 1.0f;
7 o, N# }9 [' ~- q
// àü?? oˉè*
- N8 [0 L2 f$ C8 {. ~8 {+ _
pLight->Ambient.r = lightColorPrv.r2;
6 a1 e \8 a! _% U9 y- n$ g
pLight->Ambient.g = lightColorPrv.g2;
# I. [6 q2 ~# K$ e; a8 G" k- f
pLight->Ambient.b = lightColorPrv.b2;
& E- \7 ~: D/ }. c
& X7 i/ Y. [" J3 _5 b
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
2 V+ X9 }# z4 ? u7 h& r1 q% m- h
{
+ |) t: w: M, A# y! l# Q ~1 ~+ ]( ], j
pLight->Diffuse.r *= 0.6f;
( F! K7 W/ S8 e) S7 M8 i; B
pLight->Diffuse.g *= 0.6f;
, B( E, g+ V3 p1 b. V5 C1 q7 j# |
pLight->Diffuse.b *= 0.6f;
1 `) B# o% I1 t
pLight->Ambient.r *= 0.7f;
* R: A+ {0 @1 a9 P4 ~
pLight->Ambient.g *= 0.7f;
& F4 p: e- G6 ?7 Y( b3 g5 g S
pLight->Ambient.b *= 0.7f;
e5 l) N X/ `6 H! F
}
, P/ }. Z: x* y3 c4 H5 y
4 p5 u* b9 h2 H) G Y! y" t
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ v3 r0 b/ G. T" ]! E) d
if( g_pPlayer )
9 Q+ B7 B% o: t' E8 M6 R
HookUpdateLight( pLight );
7 u! p1 B0 |: i; M; X
#endif
9 [: b& g) a8 H: g
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ |8 G* n5 |, N7 Z. K) ]
7 f+ @' Q0 B. V- N
#ifdef __YENV
: n, Z7 g+ f: X5 ^* g7 A
pLight->Diffuse.r *= 1.1f;
) G2 g4 x' j$ u/ H+ R( C3 z
pLight->Diffuse.g *= 1.1f;
( O; `& K) O, I$ c! G3 }, h2 }
pLight->Diffuse.b *= 1.1f;
" k4 j; t- q7 F7 Y3 p. p
// oˉè* ??à?
2 G/ A% t c/ V2 U2 t
pLight->Specular.r = 2.0f;
5 M2 p8 k. _% i% r, J
pLight->Specular.g = 2.0f;
" S. [2 u6 G- A8 X% y4 w
pLight->Specular.b = 2.0f;
; h- W' _. j5 H" U) ~9 V" g4 d' w
// á?oˉ
( }- Q4 J3 }, ?" m
pLight->Ambient.r *= 1.0f;
; V3 E2 V& O# u
pLight->Ambient.g *= 1.0f;
, _ f# a! R3 `; u; d8 T$ R% s6 q
pLight->Ambient.b *= 1.0f;
# ~/ z5 Q+ G* U# @4 S
#else //__YENV
" j0 n5 g/ q3 H7 R- b' L4 @
pLight->Diffuse.r *= 1.1f;
, p$ Z: s2 P: G) z; U
pLight->Diffuse.g *= 1.1f;
) k b' Y1 `9 [3 Q
pLight->Diffuse.b *= 1.1f;
/ x) {- T6 Y1 |) Q9 ^7 p
// oˉè* ??à?
+ ?6 P4 z8 B5 k- T4 @# \/ j0 q
pLight->Specular.r = 2.0f;
% q# O" I3 \' h" P1 W
pLight->Specular.g = 2.0f;
+ v* B4 ^! s- V% I$ k
pLight->Specular.b = 2.0f;
8 U, M3 c( R6 P6 ]% z3 q+ z
// á?oˉ
+ b0 e3 w& ?- Y( h& W
pLight->Ambient.r *= 0.9f;
2 o" l% h' ]! e5 u: ]
pLight->Ambient.g *= 0.9f;
+ k9 w2 j/ y: I# F
pLight->Ambient.b *= 0.9f;
0 }* F6 U% T' e, t! V5 ^3 e; O5 \
#endif //__YENV
3 a4 N/ r7 S9 v
" P1 D0 \' H6 }- I; G9 g. J1 M
memcpy( &m_light, pLight, sizeof( m_light ) );
1 {, \4 K- U. B$ z( h
3 c! s9 L$ ^ r8 i/ t2 `! c; k
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
/ B' q7 K' f# I
D3DXMATRIX matTemp;
8 ~' c0 k0 x0 Z4 z- ~/ s* O
static const float CONS_VAL = 3.1415926f / 180.f;
3 B! `: F4 s& a/ g# F! J
! Q, B+ y! t s, e" s
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
$ T$ Y4 A/ m4 {
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
* D: p$ M# S/ {2 Z
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
" I; w+ |0 m5 t4 p$ d
pLight->Appear( m_pd3dDevice, TRUE );
6 S& z! A7 c# {4 L. ~
, i5 n, d: A2 b5 V; {3 Z
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
2 \* `, w4 m3 x1 i/ C, w/ U6 f
// D3DXVec3Normalize(&(vecSun),&(vecSun));
2 S5 p3 C. X# j \) D8 v/ R
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
0 h' S6 ?% Y5 |# s
* Y2 l. i4 ]6 [! m: H: \# }
DWORD dwR, dwG, dwB;
3 [- i5 N/ W: _/ H8 U N
dwR = (DWORD)( pLight->Ambient.r * 255 );
0 _0 {/ q/ i1 N+ i& e$ I& I
dwG = (DWORD)( pLight->Ambient.g * 255 );
' {$ k, P C5 e' L# M- z$ S! K
dwB = (DWORD)( pLight->Ambient.b * 255 );
( L+ L7 i. [, [ z4 V, L! o
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 a! \9 A$ f8 W) o6 J; t3 l
}
2 [+ m/ F6 s2 W4 J' h- n& ^
}
) N& [+ D$ ^4 E0 d
! R0 x4 c1 o- j! A
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
$ C; F9 O/ b; o
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) );
, I0 C4 }1 C, F0 E5 _0 a3 `' J# D/ C5 x
::SetLight( bLight );
. t$ X' z/ U- V
# ~6 } L9 B+ t C1 V2 s2 g
// ±ao? ?D?í???ó á¤à?
$ M' C3 n$ D% C, L+ `
m_pd3dDevice->SetMaterial( &m_baseMaterial );
# W2 X! J t) |# T
( E4 i, O) ?# O5 s- X
#endif // not WORLDSERVER
, D* |! i/ P4 Q' P- Z
}
6 Y0 H% q: f& N" f0 i
并更换
4 R6 ?( |4 o2 ~/ b
Code:
( U# h0 Z) v! E" r6 Y3 ~
__FLYFF_INITPAGE_EXT
0 n: Z! x7 a- c! G
定义
/ P9 {. g9 @2 w. M: a
/ [) ^/ l; z7 }( `2 E, k
5 S5 e. S7 H* g2 x8 F, r
: ^) v% k5 O: a+ M! z% A& ?
4 ?' l$ V; m; U& Q+ Y _
现在终于删除我的狗屁加速...
/ f) |3 c9 D, z/ S$ C6 E
! o. L4 N* K+ e& M: b8 t4 X
) ^( s$ P4 g: E3 n# F! h8 J! E. L4 I
' b8 V( R' X# B$ t. E
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2