飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
, V' U/ t' V) C4 x
尾翼:
% R! L& g) u% N% [/ Y
$ W: Y1 L5 @4 O
代码:
( j$ @6 X8 \+ T6 Y3 {
CWndAutoFood::CWndAutoFood()
/ t# l6 u7 u! p2 ^0 W$ u
{
6 Y1 g8 T: h; \& D4 s& p
m_pItemElem = NULL;
0 H' e) K. H' k
m_pTexture = NULL;
- t# ^3 E' E+ W' L
bStart = FALSE;
3 y! [% }2 C; C1 E& I+ x' y
}
+ b. Y7 \. ?7 ?' J7 n
, J7 J/ X8 e R2 n5 a$ A' V z. k
CWndAutoFood::~CWndAutoFood()
7 o# ?8 E G# h8 C! L, c7 Z
{
* n8 h1 s; ^8 O( G
AfxMessageBox( "AutoFood ist gestorben
" );
; n1 t0 d) t7 T3 k3 C
}
1 Y1 H6 g9 b9 V4 ]
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
7 u! c, {+ B& m& [4 F6 Y* m- ]- D
{
; \9 f; N* s& z ^. l$ L1 a
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
# l! D3 E2 ], E4 B- B, o+ T' {
}
4 S% G j, X/ F* b+ q4 c
6 K- _/ `" {& u. t# z9 ^7 N4 F* k
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
# T6 z' I+ n% x) |, @* S
{
+ h+ Y8 V- ]2 _
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ d+ ]5 L- z) Q6 P9 |
CRect rect = pWndCtrl->rect;
8 X* V4 n1 S, d/ B# y! P5 m
if( rect && rect.PtInRect( point ) )
7 V, D, z8 X* H
{
' d, a( w* i# j2 U1 @3 A& C
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
' L6 h% O& R1 R0 ]; G. [, A8 R
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
) v) T% }% g3 l7 n: [
{
, X# n1 R& R1 `7 T2 C
if( m_pItemElem )
4 B& O; Z6 ~* V( Y! c
{
. v+ d3 U& s& u! i3 S
m_pItemElem = NULL;
+ ^: d! x+ e# B8 J+ s5 Y- u4 X) K
}
3 d( B6 k% V: ?
m_pItemElem = pItemElem;
+ g' m! ]( K( F; `
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
- G9 o, h9 i9 P, I- {3 C
}else{
+ O- y2 Q" f" v" y6 S H
SetForbid( TRUE );
; J- r! u% v' B! U
}
) K+ K7 W* f2 O& J! W
}else{
- \( n4 }3 I7 l! f
SetForbid( TRUE );
) Q3 ?8 D$ @) ?5 A
}
, {1 `& c# h! n( z
return TRUE;
0 O/ `6 G! o8 C1 X
}
; D2 U; M m' n' o' Q
6 F: v m" n+ u! f% f
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
" a7 }8 \# x* o( u) A- p1 `+ w
{
[5 }7 O! @; b1 j. O7 y* E! A
switch( nID )
! e# r D4 w B' S u
{
9 H5 m2 F' g& Y0 d
case WIDC_BUTTON3:
& p9 \) o3 T! C& {* c
{
- _& N( `6 F: Z0 x( B& u2 n& G
bStart = TRUE;
1 ^; @1 S5 z1 ? k& i/ G) p8 H
break;
% F/ |& q; w4 Q# C
}
8 j* o% A2 ]# X1 u0 C$ }, b
case WIDC_BUTTON4:
( J- [4 i7 i' c# {
{
( ^9 t1 d/ Q' T7 h( ^* x( {/ P/ h
bStart = FALSE;
, N4 Q& ^% @1 B0 A$ Z
break;
f- A8 O& s2 R- g- N
}
; }( H. {# ], W. N
}
! d7 M0 F1 |; H" z$ c" n
return CWndNeuz::OnChildNotify( message, nID, pLResult );
F: T1 i* X1 M2 u
}
$ B, I+ Y: d, G- e
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
# B$ R2 R5 g, O% ~5 y- j
{
, J" e. Y- z2 v1 E/ A3 l
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
7 S% N3 ^7 r. d( `$ n" F+ N
if( bStart || !m_pItemElem )
0 o& ^* J3 _$ H3 v, e/ |$ k
{
) w" t: O, w& f* F6 E+ B2 I
pBtn->EnableWindow( FALSE );
, M0 L1 N' {, n1 s
}else
! k7 e8 c0 }- r* K
pBtn->EnableWindow( TRUE );
4 `) {! {( x1 m; i2 O* I
if( m_pTexture )
% ]3 R" s% _$ c+ y+ t
{
3 h2 F4 d% I# w* E
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- B2 k: |/ m+ s& W( K9 R
if( wndCtrl && wndCtrl->rect )
3 A- v% v3 Z( y
{
" K. x7 U* H! p9 R
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
; E, P2 ?, v* z8 Y8 I5 `% q" a
}
5 [# k+ ]1 N. J' F& E
}
6 |7 B4 e$ d- H0 O2 F
}
& `8 c3 v/ X! o) u$ r# r
0 j1 u/ {& W) `. T5 ?; X
BOOL CWndAutoFood:
rocess()
1 v- z6 V+ S: X
{
3 |3 ?9 s6 z" U
if( bStart )
# Q; A4 Q) Y/ U$ ^8 P
{
: ]. T9 v$ J: |# n) u7 W6 C
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
, e5 Q) u% D* b0 k* \/ H2 w2 {3 n
{
, U k+ i; C3 k4 ]) c* a
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
3 j5 U+ d) M4 q; f
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
b2 w" I8 |/ {& F" S' p& @* q
}else{
9 j7 e9 [2 I4 p
bStart = FALSE;
) m3 a, S2 H# K7 \; \% G; t
m_pItemElem = NULL;
F# a/ E; d) M9 X- h
}
) v$ s3 d% c7 x3 Z- O
}
& i( ?2 {# m. X, j3 p. M$ p
return TRUE;
# }/ _/ T" M% w0 b
}
& q; n" ^ H7 P6 ^5 U1 x
+ H, [% W, |0 A- T
登录视频废话:
' F: \& |0 y* K- @
尾翼:
6 h" v- V& y. P/ ~& p
. q, T J1 b& F$ d" T2 S2 J% r$ n
代码:
: D4 F/ n" B+ z3 p; M& X* G( @ }
* v8 D( O4 T6 _4 Y* a
void CWorld::SetLight( BOOL bLight )
8 Z) [- V6 S/ E. A9 v0 p: ^
durch
# z( g( d& L* ^% a7 {; N' O
Code:
' v. r! o4 A7 w- ]0 V
void CWorld::SetLight( BOOL bLight )
+ u) ~$ Z$ C6 S( l8 w! l, `3 H
{
. g4 f* D6 S" G1 w% p
//ACE("SetLight %d \n", bLight);
" |$ d7 c8 i8 a8 Z, C
( k2 T3 p7 ]# ?2 ^4 |
#ifndef __WORLDSERVER
; ]# h* e& @' p% @$ k+ j
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
2 J E4 x; L+ T' P0 k$ a8 C) p
CLight* pLight = NULL;
/ z8 S( {' X7 U6 I/ C' J
6 I6 x3 P6 A( m
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
, T1 U; z. N+ P" u' O6 p
: E1 J4 n8 X; O
pLight = GetLight( "direction" );
& G6 ?: M Y7 P! W
* M: B. k, w9 w" G; Z
#if __VER >= 15 // __BS_CHANGING_ENVIR
' A4 [% H) H- R/ ?
if( g_pPlayer ){
6 l3 o2 h% h# ~" ]% `- l3 M! B& P- N2 q8 ^
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
8 U. n8 `. ~3 O1 v
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
/ r, G7 |/ S& X' R1 w3 g
{
4 ?% Z/ d4 H& Q7 a
if( pLight )
2 b4 M* w3 s% F
{
( c# K4 ^! t) h5 \5 t# R& a" G+ F# q
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
$ z2 W8 A; U5 U7 _- t. M, h: G
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
1 E' g1 L: x7 P1 a
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
- J. l7 N7 J; B6 ]$ i, \
4 T+ F }! K9 c* r8 Y2 `: f
pLight->Specular.r = 2.0f;
& Z; Z9 k( \! y# ]6 D8 g/ q
pLight->Specular.g = 2.0f;
- I% H- Y. N& F
pLight->Specular.b = 2.0f;
* t) \ M* v+ j0 I g
6 S/ n2 _$ Y7 M8 U$ c! V1 T
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
k: D. ^5 X, E2 h' J9 N+ u+ M5 I
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
. q6 O1 T0 H0 Q2 V$ N( S& C
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
! \; r: K1 I/ F* U
1 i4 z* R- i1 @& W" S
HookUpdateLight( pLight );
( o0 P6 g, N& O* H# [0 r
$ c3 a4 A4 i& y f" u$ ~
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 `. K: j, A( z
0 t* w; ]' A6 E
pLight->Diffuse.r *= 1.2f;
2 I( B5 \+ J5 j; h$ G, E
pLight->Diffuse.g *= 1.2f;
# r' g( }; [1 h# d( G8 `% S. S
pLight->Diffuse.b *= 1.2f;
Z/ D- h# C3 i# w) X
9 M) c6 o- j! Y$ Z; Q/ Z
pLight->Ambient.r *= 0.8f;
" {. k( ~% f- X
pLight->Ambient.g *= 0.8f;
, x* O; d7 k2 Z
pLight->Ambient.b *= 0.8f;
' g! X% G8 P- u
Z5 K" Y9 h1 j
memcpy( &m_light, pLight, sizeof( m_light ) );
( m; @# Q; }3 J
+ i6 t* a9 Y P v& B
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* [) z' s$ g G" I$ u; }2 @" @% ?
D3DXVec3Normalize(&(vecSun),&(vecSun));
& d6 w; i3 X' R* i
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: X: h3 `: G- T! @
pLight->Appear( m_pd3dDevice, TRUE );
: c0 D/ y$ d# P0 X: V* M
& X V; v; f' y2 X) e" `3 r# K
DWORD dwR, dwG, dwB;
! |4 Y5 a3 `. y% C
dwR = (DWORD)( pLight->Ambient.r * 255 );
- }% l7 A- _" W! Q. D7 W/ N g
dwG = (DWORD)( pLight->Ambient.g * 255 );
" N$ r, ~& D+ \" G
dwB = (DWORD)( pLight->Ambient.b * 255 );
) |- n6 {* K: k9 Q* \
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; N$ {& [8 C. v. |: V& t( i
}
, {0 D, F6 P; P9 Y) d
}
! R; ~3 R' [4 |+ z, Z
}
7 Q4 t7 _' b& z* D5 `# s
else
3 m$ s% Q9 o S( A$ |6 {0 [5 d, g5 H8 W
#endif
) g A# ~" k1 C# |6 e
* Z; M; d/ B# Q$ M1 T( w, u
if( m_bIsIndoor )
! _# J5 f4 l, @# C/ R0 q/ V8 k a( b0 s
{
3 l- m# k6 {% h; e) k; j$ u% L4 i- x
if( pLight )
! h5 @' P) b+ E! {; @. y; ]
{
, h% M8 K# R, `/ s
// à??μ oˉè*
- d3 p8 r0 i5 l2 @- G9 J1 J
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
; N7 ^5 P/ U$ ~. w+ m
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
2 x0 e! w; V1 R6 A9 s4 n7 Y
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
( Y9 ^& Z# e. K. f0 `6 S2 y
& W' x* q# B# x& P3 C7 q
// oˉè* ??à?
+ G2 U* ~/ z5 ^, o4 r# }6 P- X* ?
pLight->Specular.r = 1.0f;
! S8 y9 f9 o p. x0 t: {7 q
pLight->Specular.g = 1.0f;
% U; H6 ~8 e1 b' I$ N: W& S
pLight->Specular.b = 1.0f;
9 ]2 A; \' ]; r) y; {9 y
// àü?? oˉè*
% ?, W4 E8 c8 ?
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
1 M6 q0 d: i9 h+ i3 u2 F
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
1 T; e* v# x- Y& X
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
$ ]! x/ E; @+ [; X
' M5 Y' u1 B) l3 R
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 U/ V4 i( N6 Q) r2 C0 P
{
+ n0 c& v w8 p9 j' `
pLight->Diffuse.r *= 0.6f;
$ Q% u" ^2 b) i2 l& S2 a @" M
pLight->Diffuse.g *= 0.6f;
- `9 |$ ~$ P8 w: E7 P
pLight->Diffuse.b *= 0.6f;
' G# ?/ `/ \9 u p
pLight->Ambient.r *= 0.7f;
! E; @+ H: \. v8 |3 G, u7 [
pLight->Ambient.g *= 0.7f;
6 `) s+ |' H- h E
pLight->Ambient.b *= 0.7f;
7 ?! Z+ M% e2 A. f, B( X
}
- V* G- F& D% Q+ o# w' w
m% @6 c/ q$ g$ Z/ O
#if __VER >= 15 // __BS_CHANGING_ENVIR
0 P8 i8 N& }! p: ?" e- d0 ]" E3 c' X
if( g_pPlayer )
2 h+ y8 `7 a( H
HookUpdateLight( pLight );
; x+ K3 D0 l# Y$ u% U
#endif
$ w8 H0 ]3 B$ P8 o5 D. M
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& ^7 ]6 C. L9 \/ c+ Q7 O7 N
) y" f/ b" Z: a2 B
pLight->Diffuse.r += 0.1f;
: y* d& a( _9 Z; O0 Y6 y
pLight->Diffuse.g += 0.1f;
! i" h4 ?$ x) U3 o
pLight->Diffuse.b += 0.1f;
- S2 ]! |. c. o7 }4 [& D i& e
// oˉè* ??à?
# W8 o- f1 P9 K7 ?" t
pLight->Specular.r = 2.0f;
7 R" A8 [/ O C. Z& }5 } K
pLight->Specular.g = 2.0f;
+ B1 v$ A% o# h, [6 N- B
pLight->Specular.b = 2.0f;
; H6 ~1 x0 W" M- w7 H( M7 Y/ h
// á?oˉ
! i7 M" y6 d$ H9 w7 Z* w- a
pLight->Ambient.r *= 0.9f;
0 C1 {; z9 n" @3 ]! C/ x7 A
pLight->Ambient.g *= 0.9f;
5 B7 r( t3 J/ f7 @2 L- b
pLight->Ambient.b *= 0.9f;
& }3 l9 |* W$ c; T# \$ C
; o% X' d8 u: v4 D7 s
memcpy( &m_light, pLight, sizeof( m_light ) );
, T6 v& s1 W1 c9 S$ n! `
5 W+ b5 \, s5 t0 l% [ c
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
6 m5 a- T4 d* s3 c% q
pLight->Appear( m_pd3dDevice, TRUE );
) I6 a" k- O7 [7 U: o
- {0 A7 T3 E+ P% z* i. S$ h `9 x' L
DWORD dwR, dwG, dwB;
6 Y R# e6 ~& h) a8 [7 j
dwR = (DWORD)( pLight->Ambient.r * 255 );
: x; l+ X& D7 j9 H1 y# ^0 y
dwG = (DWORD)( pLight->Ambient.g * 255 );
# K# `7 q0 N6 M$ A
dwB = (DWORD)( pLight->Ambient.b * 255 );
8 l% V' x, @* ]7 C1 |
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 I1 Z5 S# c* X/ x g" i6 H6 t* q9 h/ i
}
D( K4 W* S( B" [* [2 O5 a, ?
}
H$ }. |% s9 ?" L4 a1 q9 @
else
1 v3 A7 b- Q3 } F: I
{
7 |0 {2 X' N. ~- a
if( pLight )
8 v5 F4 S1 `: k( x
{
+ ~8 D, ^# V+ c8 l
, }( | r; o, B5 M0 E1 J
int nHour = 8, nMin = 0;
' s8 q- d$ u ]' c* H
#ifdef __CLIENT
- j# p; R; H% w5 K2 r2 ?' `
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
6 b# u/ P0 D2 V+ [5 E& a
nHour = g_GameTimer.m_nHour;
8 Z# _7 h, `* n( C, l% C6 X
nMin = g_GameTimer.m_nMin ;
$ [& x$ M) e3 X& g d, b/ H
#else
. ]9 c8 f' E% [" A2 c# z$ g% n& f
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
. }3 [- w+ e n' O( Z; x
if( m_nLightType == 1 )
3 u! W4 T& V4 Q7 p
nHour = m_nLightHour;
1 O' z4 I0 X6 P& M5 q
#endif
* G9 x# q3 U$ f5 l1 X. l
nHour--;
8 L' e2 J9 t* Q: P6 K. E: |9 Y2 ]
if( nHour < 0 ) nHour = 0;
% Z0 [6 o8 m9 i# C. W
if( nHour > 23 ) nHour = 23;
; @5 O1 n* q8 R" o o! n
& Z; w) k8 F- z0 j
//if( m_bFixedHour )
9 J6 s& Q- @8 c d# L. o
// nHour = m_nFixedHour, nMin = 0;
+ ]3 } y8 o9 h, v7 h
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
; I5 h& e5 U( h7 O" j3 E! L9 A
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
; m4 l* [1 o! c0 q* }( K/ x
0 P3 e+ \7 \* c) p" t% J X; Q3 L2 H
//m_lightColor = lightColorPrv;
2 k; b5 n0 [; t4 p. s7 @, g
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
# W2 b: E' o* `9 O6 S2 t
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
0 A% R4 b5 U- }. C0 y9 r. A3 f. E
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
5 r/ R. ?: E$ k
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
) S, b. c; X) N" }0 E
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
4 B* O; r2 k- I9 {4 X9 l$ @
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
$ {: J% e% q* ~1 J; ?1 C) _. M
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
$ i+ s; y. k3 t; U- h- n! M( o
- F" i9 K1 x5 U+ T/ d N; X
// à??μ oˉè*
! s A" |. |. K o
pLight->Diffuse.r = lightColorPrv.r1;
9 |& i$ |. C% k1 c% S, t# Y( H
pLight->Diffuse.g = lightColorPrv.g1;
0 H; Z# H- K, c' G- |) ^
pLight->Diffuse.b = lightColorPrv.b1;
, i3 n9 G8 O5 O. G
// oˉè* ??à?
" i8 n, k( n' j0 f
pLight->Specular.r = 1.0f;
3 T- \+ ^/ e. V, F/ C/ E
pLight->Specular.g = 1.0f;
4 @. u7 E: W0 y N- u c
pLight->Specular.b = 1.0f;
0 C- _$ J. S& J3 Y$ H) F" o( T* V
// àü?? oˉè*
0 X3 d6 L3 Y/ A+ l- D4 }5 k7 i
pLight->Ambient.r = lightColorPrv.r2;
; o* q( j5 F2 r) U, M" P C0 {- M
pLight->Ambient.g = lightColorPrv.g2;
' ~2 z9 A4 K: l: I
pLight->Ambient.b = lightColorPrv.b2;
0 L8 L( n2 ~( z3 o( a
& v8 N4 z) B4 D* a5 Q- A
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* }4 @; V, b+ o1 k. J% S2 ^6 S
{
$ u7 o2 O) t m6 r
pLight->Diffuse.r *= 0.6f;
, f6 I2 ~ |/ K
pLight->Diffuse.g *= 0.6f;
4 v) f/ p) z( \
pLight->Diffuse.b *= 0.6f;
/ F$ r* |# E' E, g+ ]6 P% O0 Q
pLight->Ambient.r *= 0.7f;
- D, `& {& o n4 v$ }/ X# z
pLight->Ambient.g *= 0.7f;
( U/ K( C" L! D0 Y1 h( G# t& J
pLight->Ambient.b *= 0.7f;
: ~+ ^' r5 ^' v6 t
}
8 Q( r3 {; G& d& M3 @9 _; B' ?
6 p2 u: x. i/ ]% ~- I" d
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 i6 q' p6 k: e: O
if( g_pPlayer )
$ Q- ^2 R' \+ s' k# N ^# w
HookUpdateLight( pLight );
* h6 \1 Q% Z+ E- g, h
#endif
( W' O: G: e6 E6 t0 X
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
f/ o: L& Y- O) X. b
6 J* o* @# X5 ?- d1 A
#ifdef __YENV
' m% [% I: i6 [4 A
pLight->Diffuse.r *= 1.1f;
: M% H1 c0 b0 h2 w
pLight->Diffuse.g *= 1.1f;
: f/ }% A, I- `, P: H
pLight->Diffuse.b *= 1.1f;
3 u. W% k4 B, j! K
// oˉè* ??à?
4 ^* A' B& F& H8 M
pLight->Specular.r = 2.0f;
* P m L' @* n3 m
pLight->Specular.g = 2.0f;
. u" O, |$ f& ^, C
pLight->Specular.b = 2.0f;
/ ?% ^/ I9 Y* c0 c& w. F6 Z
// á?oˉ
! [! L. d# g0 k# V
pLight->Ambient.r *= 1.0f;
. B/ Z7 M8 ]. c7 z7 Z
pLight->Ambient.g *= 1.0f;
0 N- g0 Q. K. d3 B2 x3 T
pLight->Ambient.b *= 1.0f;
+ x8 R/ i0 |! G" t4 r
#else //__YENV
: o5 L+ A' d9 i/ b4 O% D
pLight->Diffuse.r *= 1.1f;
' X% r! J T* |3 a) W% v8 a
pLight->Diffuse.g *= 1.1f;
) m8 G, N8 c; J4 {8 w
pLight->Diffuse.b *= 1.1f;
4 @! U: z" I3 m8 B: Q( X: D
// oˉè* ??à?
7 ^7 C; o6 a# X6 T1 q: k
pLight->Specular.r = 2.0f;
6 z0 P0 P7 Z4 }0 D# P, a/ @
pLight->Specular.g = 2.0f;
6 }6 S1 I# S* }
pLight->Specular.b = 2.0f;
- B6 W2 d% v& t, a1 X1 T
// á?oˉ
8 n" V* u+ k0 \" z3 }
pLight->Ambient.r *= 0.9f;
: |, u; i2 N' {0 K
pLight->Ambient.g *= 0.9f;
5 E$ t3 N D0 k* v8 T; _( _
pLight->Ambient.b *= 0.9f;
' p1 x* u4 R6 L t3 m
#endif //__YENV
& Y5 k/ N( o) f7 T# Q+ I
& T4 {: _( X5 \) s, P
memcpy( &m_light, pLight, sizeof( m_light ) );
' w+ d# a* z: _- t
% H) l+ z! Q5 b" ~7 G# P
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
& s8 Q; r$ N% G4 e) @! m$ L
D3DXMATRIX matTemp;
9 F* L4 l$ o. s0 V
static const float CONS_VAL = 3.1415926f / 180.f;
# r1 k) n; h B/ x+ n0 l: ^) f
7 N' r# z- S7 v6 M, o
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
* g0 d9 _# n/ T- Z( }2 {
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
! z/ a! A$ B( a0 |& a
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
5 J$ k' |& ^0 H4 F: Y, N2 R
pLight->Appear( m_pd3dDevice, TRUE );
4 H: b" R3 {0 F/ P2 i
4 w3 J% c. M, X, z% g
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
8 o0 Y4 Z1 f; `" Z/ a# y! q
// D3DXVec3Normalize(&(vecSun),&(vecSun));
( g, P2 l0 y& g& k* t
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ ]" d% B: b4 k) C" f; L- [% Q
: W7 _6 l9 D, {
DWORD dwR, dwG, dwB;
8 [0 s& a+ Z3 B! p- E5 ^ Q/ t. x
dwR = (DWORD)( pLight->Ambient.r * 255 );
3 V# q# R( v, C/ t
dwG = (DWORD)( pLight->Ambient.g * 255 );
/ q, q, v. B) y1 C% z' w" N6 H
dwB = (DWORD)( pLight->Ambient.b * 255 );
* K0 w% ~/ ?3 F
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ t6 H" l( T! g& E3 G+ ^* g* {7 X
}
" t4 e; z5 V1 N6 S; }& r! f1 q$ s
}
' g9 i# r& }8 l% i, o( I
% ^& V5 {! E' _5 b( P
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" h4 j2 R1 c$ C/ d# y) k" f
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) );
1 }9 e- J0 S; D/ n0 M+ ^% R
::SetLight( bLight );
" l; L! N6 q' c& K% @3 Q5 s
, Y: K) C+ g2 C, ^
// ±ao? ?D?í???ó á¤à?
* v0 y B* [( a9 ~- G, |) a& E
m_pd3dDevice->SetMaterial( &m_baseMaterial );
9 z# }0 ~- z& s; J. _% t6 G, }
$ s. M: _+ L, m# T2 D3 ]
#endif // not WORLDSERVER
5 Q) k, t! p2 H- n3 M
}
: @0 j5 J, T& f3 u# Z0 e* H
并更换
$ m$ E d# {" L) K7 I9 H
Code:
( E$ e3 R4 Y2 y% s$ h
__FLYFF_INITPAGE_EXT
- x% v# Z: h2 Y9 |2 i' t7 ]
定义
; V' R4 n: P* f T
8 X% R/ T$ u+ R9 i! n
# r2 h2 m D* w" ~' [. D* u4 z9 n
* n) B& S: B, W- g2 m3 s8 L
, i& \# Q4 D6 ~0 }* l
现在终于删除我的狗屁加速...
' k/ M4 k1 `# a( k2 o3 y3 N
% k* r! W& C. b
1 o: [/ A9 _: Q) [
# E. q! i4 X- s; j
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2