飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
* W! A! [( ]( x; g$ g$ e s
尾翼:
( u- O5 ]9 W _5 |
; h* t/ E% L( n5 R w2 I
代码:
; J1 v, N, ?7 ^/ U Y3 B, F
CWndAutoFood::CWndAutoFood()
, d$ N) L' }- m$ c
{
0 I$ W# _. ?- H. s
m_pItemElem = NULL;
9 B. r8 q2 b$ N1 N5 j. q0 T
m_pTexture = NULL;
1 z/ G; H$ X6 C- s l5 u& e) p
bStart = FALSE;
* U2 X6 l! W5 z& ^
}
* Z% x5 {4 n3 i* q0 ^0 [8 Y
+ J8 E- U$ n& j C4 M, k# g$ P: p5 B
CWndAutoFood::~CWndAutoFood()
7 O; B# W# `- x- j" R
{
( y& W0 a; d8 w$ U
AfxMessageBox( "AutoFood ist gestorben
" );
2 l5 ?! r* B6 O0 P& h& @8 M1 v$ C
}
7 i* P! {* Y+ x d% S$ a+ _
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
+ g) n" F. E3 K
{
( S' c/ w& K( T9 ^/ `
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
7 ?( P; i) R) Q4 M
}
* r; c) p o: i# M. H- j
6 b# }- x# |* Z) K5 ^# @
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
& X/ H; P; y1 w2 c+ k- }
{
9 G: O. |9 S! C: x
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 p+ c2 `0 a/ s b0 D
CRect rect = pWndCtrl->rect;
) p- G* o2 z% J6 o9 V
if( rect && rect.PtInRect( point ) )
# j7 M y5 |3 ?! ~# e+ [
{
0 `$ w1 |; r7 g1 H, R
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
" X$ r: P% b: @/ K) H( |7 E
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
* d# i+ h9 i- @% ` t0 F1 w
{
& v1 t: \" [+ Q/ e7 C0 ?. R
if( m_pItemElem )
/ T% [# k. y% C5 s) C9 \ W8 l, ^
{
: \- R) \0 ^* |2 p3 O
m_pItemElem = NULL;
+ K, o9 P& }2 \7 k
}
# |! W9 z* m; F1 v/ w+ ?7 o% P
m_pItemElem = pItemElem;
: u' b, O+ @ ^: G C7 z
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
, S ?' ^; i5 D1 n0 m
}else{
% C# g. U/ D5 y0 a5 [# B1 a
SetForbid( TRUE );
- L/ d. l0 n! E. Y
}
* I7 E$ o& n+ g4 W+ w* ~+ |
}else{
3 J; k P4 a! C- F! X" W
SetForbid( TRUE );
9 C" W$ _8 c5 J5 a' G# S: z& s" |. @
}
/ y' v$ a# Z% ~( E: C( G. ]
return TRUE;
! C0 f J% I' X7 |, r! x. p
}
% ]' L# i8 o( e1 A
/ \: H: g7 ]! @$ v' \+ `2 I
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
5 j# F9 \5 r4 v) n: \) A( N) p
{
" H- }# h; [# H6 |
switch( nID )
; V- T8 Z* o" O& a
{
9 s8 N/ m5 H8 S4 S J6 z }% s5 K
case WIDC_BUTTON3:
/ E5 A. V4 J5 | O
{
# g m m# ^! \2 a" {* v
bStart = TRUE;
* [' R% o: M$ q* M4 T* Y- j8 e
break;
, G6 Q: m% H! l" P
}
9 }1 N# ^. D* {
case WIDC_BUTTON4:
3 X( H9 ^& V3 X) ^
{
* G3 V9 u% r3 j- L
bStart = FALSE;
- @8 t- E* n6 c% C
break;
/ [% P. h2 c+ C' f8 a
}
9 R2 w2 X Q I, C2 V: W6 [( @9 z
}
8 B7 I4 N, K( c3 x
return CWndNeuz::OnChildNotify( message, nID, pLResult );
& N P. O7 Y7 G/ Z2 C0 a1 V5 S( @
}
6 B' p' x- O' Y7 ]( P$ |
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
2 Y3 h( Z3 _# t/ N5 ]+ ~9 l
{
* s4 a* m$ K# H6 X1 o5 [& S% w7 X
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
4 F" x2 A: H1 g3 H, a% L( w# G- }
if( bStart || !m_pItemElem )
$ v/ O0 M$ ?" j
{
5 y4 C, |1 s0 O' L, D
pBtn->EnableWindow( FALSE );
: W7 g: Z7 y) T5 L) @- W9 e% W
}else
8 X. {, G$ m, C- t5 @2 {: j
pBtn->EnableWindow( TRUE );
, w9 R3 U$ T' j! g
if( m_pTexture )
, P0 c+ H( `* G" L/ v, `
{
$ { T3 X, H( A7 Z6 l! B& H$ a
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 l* h7 s% D0 D/ ^1 U
if( wndCtrl && wndCtrl->rect )
9 ^7 {# S7 ~6 \1 T
{
& |& W* h. I, W9 M; g
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
@$ k4 t4 z& i; [. a& e6 U- M
}
+ T% B0 d+ y7 w
}
/ {$ k& x* s+ O
}
9 K9 g2 W( F# O
& w+ A' F% A3 a4 e6 T- N* D
BOOL CWndAutoFood:
rocess()
g+ q4 `6 ]; ]: a3 F* {" r; ?
{
1 c; {( |# L8 l* L
if( bStart )
: U; @1 u: _' D2 Y$ ]' S' X
{
6 U M; u/ z! \4 V8 ?9 r
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
3 x* v0 _* O* q! Y# v
{
0 | K4 T( G6 [8 H
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
7 S$ d% z' W) S* h
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
- c0 Z' v$ r3 T1 a: I: N$ \
}else{
( m& i& }$ W6 [
bStart = FALSE;
4 p9 E3 V1 E/ E3 O+ k+ Y
m_pItemElem = NULL;
# Q$ A& c# Y- Z7 o' ?% C
}
. F7 h, c: k$ w# W5 A
}
3 Z. w2 d$ l% T. O
return TRUE;
; G8 x6 z+ G; U$ E4 ^
}
V# n* P9 b/ [# x6 v {" t
: ^4 M3 K2 j& \0 K8 m" M
登录视频废话:
1 S1 C( Q& p8 E( Y. } R
尾翼:
4 Q) n, o1 y( n: R9 W) p- T
0 L0 A1 E7 X& F& M: Z9 ]
代码:
; B- @' h: s# P5 C+ u3 P
+ G* P. l: j! p, `6 B
void CWorld::SetLight( BOOL bLight )
1 e5 _6 l6 e t- s* ?' z' g- }$ o
durch
# j( T0 U9 y$ u$ l* H6 D3 Y: c
Code:
2 G/ W- g7 C5 h$ Q
void CWorld::SetLight( BOOL bLight )
u \* e* g7 w: R( j6 N' N
{
7 |( x& n) D% \& Q3 k" ?& i5 T) W
//ACE("SetLight %d \n", bLight);
. r! x$ `/ q7 Z4 c9 p% O
% {: T; e# i, F6 E1 Z( ~- p
#ifndef __WORLDSERVER
- y% n3 g8 e2 F" \" n- A
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
' S3 b) D* X8 o
CLight* pLight = NULL;
6 r, @& M% L- g4 y, z* u& C
V8 D; K7 C) O# P
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
' c5 J& w; C* Q: _% B1 D) [% V" H
, g8 S7 M$ f4 Z" Z3 d
pLight = GetLight( "direction" );
# v2 P9 u# m. g4 t* E7 ?/ d; e. P
& J7 S2 L/ B, g- t/ }6 H* L
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 ^+ l; \; B* M
if( g_pPlayer ){
0 e) R0 M% f% ^4 b, X0 \
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
2 c: s" J# ]$ f- [: O j
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
/ b* P' [- X, N; y3 x* k
{
x) ^4 Q# b9 W6 v: e V. L
if( pLight )
$ K3 f; a" z" q( U4 e: I) J) R
{
3 J; S& k7 i/ |- U3 C
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
4 f0 z' n1 z& A8 Q
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
z E; m$ f# r; V* C9 Z
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
$ T6 p; {7 B* u. O. ?
6 j8 {: o, O* R
pLight->Specular.r = 2.0f;
. [4 Y! g4 ~: J0 g$ K% H' Y
pLight->Specular.g = 2.0f;
7 @3 G& c' P5 m: g# l0 n* p
pLight->Specular.b = 2.0f;
7 _* a3 N! n4 B" X' k7 x
( R2 T2 K% y2 k5 s
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
8 I' i7 C: W: B0 U* P9 M
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
9 V0 e; a7 S& E' y) ?7 ` e
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
$ @6 |4 P) H8 n( s! s$ N; p* M% [
. h# h% O/ q9 C9 V
HookUpdateLight( pLight );
6 v8 ?" Y; N! l$ h7 @# c
$ m5 a6 n' `1 x& E n8 R" u9 ~
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 b+ k, Q% d, @
/ u5 l0 B9 P; G# l% \, S
pLight->Diffuse.r *= 1.2f;
5 X, T/ L9 d9 G. ~ t
pLight->Diffuse.g *= 1.2f;
9 h2 U$ y9 q! `: `& G6 w: A1 }" U
pLight->Diffuse.b *= 1.2f;
0 W" ~1 Y5 a( z3 [# l. y/ k3 D
0 C6 _) ]3 z7 r8 F! W- {, f
pLight->Ambient.r *= 0.8f;
+ \$ p. a; U% _& Y |8 [: f
pLight->Ambient.g *= 0.8f;
( U7 D6 q" R; A
pLight->Ambient.b *= 0.8f;
& L7 n! E: F5 M. r
1 e' x% F! p; l# k. @$ Y
memcpy( &m_light, pLight, sizeof( m_light ) );
# U0 i8 K5 ?& o4 n: i
! ]; {! E# ]/ j& d& j" n
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
+ n: U- m) V% k; o
D3DXVec3Normalize(&(vecSun),&(vecSun));
3 D4 O* x. u/ \5 J
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 U0 L! u; G" |2 b8 j. ]
pLight->Appear( m_pd3dDevice, TRUE );
! J1 W. \: K7 d4 b# W4 G
) U M4 N: X+ G, ^8 t0 J' Z+ D
DWORD dwR, dwG, dwB;
" G2 a& C W" i
dwR = (DWORD)( pLight->Ambient.r * 255 );
. s! K. n7 L% @- V7 ^8 n7 v: g
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 @( x: w, _3 L4 ?
dwB = (DWORD)( pLight->Ambient.b * 255 );
/ j& I7 ]0 @3 }' j; d2 Z. c! I# p4 B
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 c0 u1 P9 n8 d9 }* i& n+ H5 s
}
; p7 R' M0 r- _/ z N1 W
}
3 y% O- S/ i& ]3 A' o
}
9 c6 b% }4 t/ r$ i
else
' N9 s% O1 R# Y3 `) b
#endif
( j- X! f/ c. p. c% f& @% X
- V6 c" H2 I& m
if( m_bIsIndoor )
) x) m7 w* W9 B( y S/ r
{
. L a! B( o. l* U; o# K U; Y/ P
if( pLight )
4 T/ h) W- @% v5 x$ S8 y
{
2 q, ^. u8 K3 `
// à??μ oˉè*
1 O3 C% q( T+ p O3 d% v( A3 N' C U' Z
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
# ?9 X! O/ y* G4 _3 c: J
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
2 C1 _' T' A. r
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
6 x4 }* o, v5 g+ @; }
& L" |( N( I- O# B
// oˉè* ??à?
: D6 ] U4 Q- ]" Y. s; B7 I1 c
pLight->Specular.r = 1.0f;
1 b* d2 H( A" d" R) E4 B8 O
pLight->Specular.g = 1.0f;
% E' `" K9 W% j% z9 o" z% e2 H
pLight->Specular.b = 1.0f;
: k# M; w0 B6 y4 K: G& L
// àü?? oˉè*
) b A, i6 N4 V9 {
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
) j8 j' [1 N* s) @( M
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
. t+ }, B# Q1 `3 h0 J) E
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
4 [. S& J4 g, z! i% p, J
* \; L5 Z- _- C: F- Q3 _. a" \$ z
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
( b' f: m$ L) U, X
{
7 }2 Y6 z( k- E: @
pLight->Diffuse.r *= 0.6f;
( K7 j- @9 M. T
pLight->Diffuse.g *= 0.6f;
( k: _3 l% w$ F: e
pLight->Diffuse.b *= 0.6f;
& Q8 O, ?5 w5 k2 x' H. z1 s
pLight->Ambient.r *= 0.7f;
' n" w7 `% K! y/ Q
pLight->Ambient.g *= 0.7f;
) P1 t: v" S8 C3 k1 N( k3 M2 U# U
pLight->Ambient.b *= 0.7f;
, `. K* d% ~. ^" |/ Q
}
( W) |4 `; l `% _: w
. z2 J A- q& P
#if __VER >= 15 // __BS_CHANGING_ENVIR
" ^% r2 I; L# M2 i0 z
if( g_pPlayer )
0 S5 S& C, p8 i1 Q% ?" H% v1 N j
HookUpdateLight( pLight );
+ D+ K) d" X! e8 M# y5 x3 {
#endif
3 n6 ^$ L- v- r5 a1 A( z$ J
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* \+ g F; z" x
( \6 m2 R: p* k
pLight->Diffuse.r += 0.1f;
5 o- b4 j2 |0 b: k
pLight->Diffuse.g += 0.1f;
+ x2 c' Z/ D4 B, E+ l; H
pLight->Diffuse.b += 0.1f;
' C+ ]; x4 Y% @, s9 n* d# O
// oˉè* ??à?
- |8 _5 b: P' m+ G' R9 W2 p- c" a
pLight->Specular.r = 2.0f;
" _2 G. w7 d6 K5 S
pLight->Specular.g = 2.0f;
- A+ J" }% d1 P$ f5 Q
pLight->Specular.b = 2.0f;
* e' Z v6 C+ [/ T
// á?oˉ
, a+ ~# M; P! H- t* y3 I6 \8 d
pLight->Ambient.r *= 0.9f;
2 E- U0 {& d" m
pLight->Ambient.g *= 0.9f;
; p) C1 Y. h8 X, A
pLight->Ambient.b *= 0.9f;
* K& U6 U& r5 O
, H( M* R" `! W
memcpy( &m_light, pLight, sizeof( m_light ) );
) {. m% [0 R1 x- D2 V& D
' S" a$ Q; A; r2 I; l7 u
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
% E! J# \7 D1 Q; ~' T6 J
pLight->Appear( m_pd3dDevice, TRUE );
( E0 x0 {1 f3 v) O
1 w9 n6 M; ^/ w* j8 _
DWORD dwR, dwG, dwB;
* b3 `: G J; _5 \8 V6 D0 J
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 o0 f- }5 |3 I. ]
dwG = (DWORD)( pLight->Ambient.g * 255 );
6 K+ ]: W3 t6 ?- X1 h
dwB = (DWORD)( pLight->Ambient.b * 255 );
. D1 j: }2 O0 t+ Y6 a; L6 Z. M
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
& H! H+ Y3 d+ U+ ?8 G. V. W
}
8 S' s) ]; X3 H. x" s5 m
}
! C, e" g! a) S' |& V
else
9 b4 Z0 G/ }+ ~# a% `8 K& [# G! j
{
0 }2 H3 v* }, |2 `: Y; {0 ]
if( pLight )
( D" ?$ n! [& M, U! N5 z+ I
{
$ P: Z$ G0 D* {# @ k Z
2 V% Y& n+ v* S, h
int nHour = 8, nMin = 0;
- ~& m) H# N. d, ?5 b! A
#ifdef __CLIENT
5 F/ S0 g5 u. P0 p; V. t
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
5 a( C( |2 m8 P; }$ |! S
nHour = g_GameTimer.m_nHour;
6 o3 {( z+ `& p2 L+ Q
nMin = g_GameTimer.m_nMin ;
) V" q8 M G, J* S
#else
2 }$ z$ d1 _' a) r
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
: g" R/ D" M4 Z! m, B
if( m_nLightType == 1 )
! ^1 k0 U# M4 y7 X% c6 K0 u
nHour = m_nLightHour;
, b( b5 c% j9 q
#endif
: I* i* d& h; v. n# d! a( ]
nHour--;
1 ^; e2 n9 E& ?! o7 {1 j. I
if( nHour < 0 ) nHour = 0;
y9 p5 E: T4 U+ W* t$ _
if( nHour > 23 ) nHour = 23;
2 V5 q; O9 O6 u3 ]0 z8 X2 T
: k; X9 T* S* n6 P+ Q! z& E7 ^" k. f
//if( m_bFixedHour )
+ f% _$ F6 L" E* w
// nHour = m_nFixedHour, nMin = 0;
3 P9 f3 j4 z% q3 p6 Y" r) y% T
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
* Y1 G! g( q) ?$ P! L" O
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
; V, |& D! L+ F$ A# m' U: H
0 ^( _1 Q$ b" m- E) G) v
//m_lightColor = lightColorPrv;
' y5 i3 k4 t" c- Y6 X9 A
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
6 [$ j! g6 G* x" q+ `$ g6 I
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
* X$ |; T# ]- N3 l* Q
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) v1 Z, o3 |# M) O8 d6 E
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
9 e+ J+ ?; b: L6 ?
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
& q1 f2 P) [* g7 \' p6 y
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
$ t2 c0 l# X- ^2 y
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
7 y3 }: ]0 h2 ?* H
; `9 E* X5 d' A2 B* Z$ X: h
// à??μ oˉè*
3 Q w! `4 X( }/ @8 B2 M: g
pLight->Diffuse.r = lightColorPrv.r1;
0 Y; D6 }4 N* P; {: e
pLight->Diffuse.g = lightColorPrv.g1;
& W6 ^0 `3 s8 m" {2 I
pLight->Diffuse.b = lightColorPrv.b1;
, l6 W7 a5 J: p5 h4 [4 ]
// oˉè* ??à?
: L" k/ d: ^" c! {
pLight->Specular.r = 1.0f;
o+ m! f1 d8 a2 t1 |. K9 O& E+ J8 p
pLight->Specular.g = 1.0f;
2 m- y% O n1 A. G ~
pLight->Specular.b = 1.0f;
& O2 H4 |' K3 s
// àü?? oˉè*
! L& \: [; S% w8 z/ h/ q3 g
pLight->Ambient.r = lightColorPrv.r2;
( L8 i( m! [; o5 V& i1 B
pLight->Ambient.g = lightColorPrv.g2;
# D% r( b) P$ D; m$ w' L3 e
pLight->Ambient.b = lightColorPrv.b2;
. w( a5 a+ A2 Q! E3 \8 K# l! V' C
' h8 M- E, P3 z+ d6 v
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
+ I5 Y# y' Y% T2 P0 M; f" r: E
{
$ N% O0 ^9 [, ]& {) ` {+ N0 L
pLight->Diffuse.r *= 0.6f;
# t# I5 z2 g8 v2 ]) v7 i/ |
pLight->Diffuse.g *= 0.6f;
4 ~3 x* {% I* f5 C+ P! g z0 G
pLight->Diffuse.b *= 0.6f;
; D: j7 ^9 i# z
pLight->Ambient.r *= 0.7f;
7 e( t; _/ I" A* a$ Y
pLight->Ambient.g *= 0.7f;
! D$ e% C6 _) Z+ ^) a: U" Y% o _, u
pLight->Ambient.b *= 0.7f;
; t( t9 Q' x3 _) ^+ n" C$ X7 K; _
}
0 _8 _% A/ `( I# Z
1 ~' t7 P9 ?+ o T3 p4 W
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ ?8 u/ [* L9 c2 H
if( g_pPlayer )
+ f$ X' y* U; x( ~8 A& y! _
HookUpdateLight( pLight );
) u0 D& [3 [ E4 P
#endif
4 S, b! e7 @6 b& B* N
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 w& H- B+ B5 l9 W* |9 V( ?- c
1 v9 L7 ~# e/ l! \0 m/ P
#ifdef __YENV
: `" V; G X: N2 A# U* y% z
pLight->Diffuse.r *= 1.1f;
% [& [- _. b+ Y8 v+ _
pLight->Diffuse.g *= 1.1f;
: b8 t- O( U' S }& ^
pLight->Diffuse.b *= 1.1f;
+ k$ W' M$ z2 @7 r8 Y1 f
// oˉè* ??à?
' c0 D% }# j1 p/ p( c( \, F
pLight->Specular.r = 2.0f;
1 P! y) u5 ]0 K, {9 c7 x$ |
pLight->Specular.g = 2.0f;
& ?+ Y6 Q- p- C/ i2 r3 ^
pLight->Specular.b = 2.0f;
9 o" [7 M, }; R. o
// á?oˉ
1 v4 |: R7 k' I& t
pLight->Ambient.r *= 1.0f;
& j1 L& D9 E: ^0 ^
pLight->Ambient.g *= 1.0f;
% W; j/ I, d0 w2 e& n
pLight->Ambient.b *= 1.0f;
8 W( `/ Y b% J) ]4 W
#else //__YENV
! O( ?. n9 o5 [0 t) h" \# [( ~
pLight->Diffuse.r *= 1.1f;
4 ~; g7 v+ R9 @! u- ^/ W% V
pLight->Diffuse.g *= 1.1f;
# m& m/ V1 L) c5 g) p$ n
pLight->Diffuse.b *= 1.1f;
+ ~& @. g! n2 u7 [2 \4 G+ i5 z2 o
// oˉè* ??à?
3 T- K% k: y. {
pLight->Specular.r = 2.0f;
# @! X1 V& g" l! G" }! i/ v
pLight->Specular.g = 2.0f;
/ g0 r- ~/ Q: p/ ^ z
pLight->Specular.b = 2.0f;
: r- d J0 ~! e9 }. T
// á?oˉ
) q" `4 c& p, x5 d1 j+ M$ E1 f
pLight->Ambient.r *= 0.9f;
; l* C" j" _: L; T3 ~
pLight->Ambient.g *= 0.9f;
, z( n1 p" U% f
pLight->Ambient.b *= 0.9f;
9 {! n& W2 V \/ ?: F* V
#endif //__YENV
, C& [" |; Y# S2 _# I; g
; ~- \2 ~" p% Y1 T$ F
memcpy( &m_light, pLight, sizeof( m_light ) );
/ T1 W' y6 y& e9 Y
' ]7 x+ E6 M. o
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
4 ^5 c" W- b/ K- w: v
D3DXMATRIX matTemp;
( l& Q: i7 `! I
static const float CONS_VAL = 3.1415926f / 180.f;
& p, u9 I6 _ g6 y) M. }
5 }5 b [( t" o
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
( f* x/ V! r l% z4 ^
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
% z" y3 V; h$ L# h8 S2 e* q, G
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
. ^( t' u% E, [
pLight->Appear( m_pd3dDevice, TRUE );
4 B" C" }' w6 H$ m
2 j! A( c. D" d
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
8 r# l N' F- I1 y* C( i4 z
// D3DXVec3Normalize(&(vecSun),&(vecSun));
8 Q( Y0 |8 X7 I% B" h
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
0 c/ H: u7 w. W v6 h4 H4 Z
3 |. w, k6 c- O4 ?
DWORD dwR, dwG, dwB;
% z; |* M) e; J, l2 ^9 y+ A. Q
dwR = (DWORD)( pLight->Ambient.r * 255 );
- y/ S6 y0 R4 g* O6 c/ ~$ J
dwG = (DWORD)( pLight->Ambient.g * 255 );
! |4 u: N! o0 I0 G' C4 |
dwB = (DWORD)( pLight->Ambient.b * 255 );
& b: d7 G8 v1 o5 x
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. b) m( D- x0 ~9 T+ U$ L
}
6 N! [: O0 w$ O2 ^; x
}
5 _$ }; R+ _( N4 `3 r+ P
) z% T+ K2 j( o( X# Q9 M
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
' k+ t: w5 S/ n5 \. ?7 ?
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) );
! d5 h* q6 s' g z
::SetLight( bLight );
& K+ ]! k0 Q7 p1 ^
& k% c! T% y9 k
// ±ao? ?D?í???ó á¤à?
. T3 _7 O8 P5 Z% M5 \4 E4 R
m_pd3dDevice->SetMaterial( &m_baseMaterial );
* ?- {" T2 m, W1 Q3 x5 m6 E
j8 ]2 g2 j6 Q. O( V+ L
#endif // not WORLDSERVER
( M9 Q e, A9 d
}
. ?' }. {% [9 b7 s5 f
并更换
. L1 Z9 ?) _0 N1 r0 M# o( ]9 Z
Code:
: n6 Q+ A Y# h
__FLYFF_INITPAGE_EXT
T' ^1 t5 L9 N6 Z' Z
定义
, R- Z, O( a: ]' y# I, p
6 m. Z- V* X+ U* \' o5 H9 V
) o- b* g. d- o& a; F" b
5 [2 U8 ]! C6 M3 N' T
+ E* o( h% A- O; B: D" G B- }
现在终于删除我的狗屁加速...
( b A/ l$ \$ S! H; j% E
4 \5 \: M8 |, p
! R7 {; @0 c% C0 t; \/ m. U; W1 \
& a# n/ o( l& i' s* B4 o
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2