飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
; B3 d/ b8 _' g5 v$ C
尾翼:
! C5 S8 ^8 n7 N
. [6 m( X/ m1 u! w3 e. e
代码:
6 k9 {& S( I4 t E; X& X
CWndAutoFood::CWndAutoFood()
! R- G, {& J5 E
{
|# h5 C$ E' I3 j* `) I5 ^
m_pItemElem = NULL;
- o9 z: |8 `: Z& S" [
m_pTexture = NULL;
; h7 x* _9 ^% `' U3 b7 n
bStart = FALSE;
$ @& G3 T2 z' ]2 i: c; z* t, X! H
}
( ?. D+ [* r& P* z4 Z5 m
* Z' D6 a2 b+ |) ^
CWndAutoFood::~CWndAutoFood()
! T" j4 i2 U( P% p" j% v
{
9 ]1 I" ^. K3 s
AfxMessageBox( "AutoFood ist gestorben
" );
! ]2 b6 a8 S! e4 i4 j) R1 ^7 ~
}
+ O( u9 L, D9 q
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
. S1 `" @) a3 R* F
{
1 X# H( I0 Z# W7 }. g
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
8 U U' e" q! ?0 @
}
2 U% s: q6 |/ g6 G0 w, i
* A1 I, y0 P3 ]. X# A( Q
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
* ?6 A7 w) u# e
{
f& c1 m C! Q7 Y5 @" k
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
2 |3 @+ i/ N2 [/ b% G% \/ B- g
CRect rect = pWndCtrl->rect;
& ~( ]6 Y! X5 I% W. N
if( rect && rect.PtInRect( point ) )
" ~$ ^% \2 g2 q3 j" [) o4 `
{
4 o" Q( g6 m0 ?& _
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
$ B9 c& `5 @8 t3 \5 Z/ @
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 i! N' S2 i! g/ V
{
$ K/ O. c( p8 Y+ e- w
if( m_pItemElem )
8 v) R: L3 H3 Z* G6 L
{
+ h a' L$ M) h
m_pItemElem = NULL;
$ U8 }8 e& L2 R7 H* r; z1 v
}
% ?9 R- w: M- s" i4 Z
m_pItemElem = pItemElem;
9 }4 ]# Z& D2 e k
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
* {2 Q0 d0 r( n4 Z; m$ ~( j8 r: M2 I
}else{
/ R' j: k+ C; x/ G$ V X
SetForbid( TRUE );
3 q# j) q Z, j! w6 m* o
}
9 s1 d9 y0 j# k: U. G
}else{
5 L* Q. [* F; n; e$ a: P& D3 Z
SetForbid( TRUE );
. F2 F) u& t( Y( `4 n$ D8 {
}
# E7 f1 ?* V* [
return TRUE;
( v' f" d; i# k8 j$ I6 X
}
/ { k* e" v! d5 K/ A
( f0 P* y! F0 g, U, }
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
9 e" H- L$ f/ n/ b) y
{
% h! h B% Q( Z9 \! ^
switch( nID )
! Q2 c! [1 e# D# W, h
{
& N+ M/ @* k x& p
case WIDC_BUTTON3:
) r; E( I% A( C% h
{
4 K2 T" t3 }# A+ i5 r
bStart = TRUE;
; e9 _/ y, t* \) c- ?* h) y$ Y, k" k/ i
break;
$ O. d; W" v& `) G6 q( d
}
% ?+ O# k" n4 R: s) ~' S
case WIDC_BUTTON4:
P& |* e' Z( D
{
& W& W1 }' Q0 {; t" L! e' [
bStart = FALSE;
: }* B" P1 @; }! B$ j" t
break;
& C, E$ I* e" ^3 `5 e* r
}
7 F0 v% O4 S, c% n* Q
}
4 t1 v9 c$ _# ?* o
return CWndNeuz::OnChildNotify( message, nID, pLResult );
5 F1 A! k+ W! F! P
}
& \. s, ~! g) W0 ~
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
2 d6 t) \$ b6 G m x3 _
{
: M3 L/ b/ p0 b: A0 X7 d7 p% _
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
& R7 e9 j1 ^) d2 v1 q
if( bStart || !m_pItemElem )
1 k& R3 d+ c. j- R" u2 r
{
* T! E4 Z- C- z& d2 B5 z8 C2 j1 j
pBtn->EnableWindow( FALSE );
4 B. V1 y4 j; d+ Z. L
}else
. f; r5 D8 d) |2 F, |
pBtn->EnableWindow( TRUE );
0 g" n# A A1 ^
if( m_pTexture )
7 i8 f+ A( Q/ n/ `2 `
{
7 {' ~- T' U: ^& r" b* c
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
$ g, X7 c R @, i E8 `4 Z- c# n( S
if( wndCtrl && wndCtrl->rect )
- _' k; p$ ?% x2 V9 S; w& b
{
. q4 f) I7 u$ e3 ^9 d
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
3 D# j- e1 l8 F# |* F7 D
}
6 k0 H( M6 z; u% R' q7 V
}
. f2 q9 q# F6 F; G
}
' n# A; l. S. N+ o) U8 s9 Q/ G
. F9 H! ^. h, G, u; q0 b0 N' `
BOOL CWndAutoFood:
rocess()
) l3 \" t) F! h9 r
{
$ Z1 i4 Q: M# U2 j" W) A* A; [- q4 }
if( bStart )
( X6 Y0 g# C$ {. l
{
Q9 i5 X/ Y' ~ x& O
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
" Y Z. P' a1 f9 q; Y/ n9 G% B
{
! {" W' _$ `1 H- w* q4 b3 q9 g
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
/ Y! r6 Y( u3 w. t% z' M
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
' o1 X: g( v$ H" s3 F) A) J! t
}else{
* D( o% W( N- {0 n
bStart = FALSE;
# r5 _" h& L3 e" c
m_pItemElem = NULL;
9 W5 a& c n: t
}
, [. |; I( \& t: o
}
4 D; S$ O; W" B" W3 _
return TRUE;
1 C9 K4 k: E% y* z. O7 i6 l
}
. K) P4 g) Z) L" A \- I
: b' J$ O5 T% L% c( d
登录视频废话:
( L J; W+ f1 \2 T- Q+ }
尾翼:
+ D! w( T& E9 m) F& o
4 Q9 @* D1 F7 L( }% B( D$ P1 h' E+ |3 U- b
代码:
5 m7 E# o, a; e
1 ~9 Y k0 h0 A
void CWorld::SetLight( BOOL bLight )
# c2 ^; s: o; F: `
durch
/ G$ B+ E" b1 _# M" [; U* y
Code:
% z& f" J# X" A! c. R {* K* t
void CWorld::SetLight( BOOL bLight )
2 _5 j3 ^4 \$ k% H1 J! |7 [
{
0 f; |; o3 K; u. _" E3 ~
//ACE("SetLight %d \n", bLight);
) Z$ f3 C, O# x- t6 P/ w2 _5 @
8 I6 Y. Q5 F; M& N& r) B* @
#ifndef __WORLDSERVER
+ h- W# m5 W/ L9 w% f8 z5 k
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
6 k, ]1 }; P+ m- q. a
CLight* pLight = NULL;
1 O- L" |& [9 I- @1 s5 A
* L E$ ]0 A' h1 [( j0 l( u
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
' t Z* i; V8 O8 q' Q. A
2 U" Q$ m4 t' m3 G; W, O" C
pLight = GetLight( "direction" );
5 o C6 y# B" n' e6 z5 A" k9 ]
3 r" ?5 J {& Z! u) Q; n/ K3 g* F
#if __VER >= 15 // __BS_CHANGING_ENVIR
. J% b. x+ |- E! S
if( g_pPlayer ){
f/ F# [. O1 r+ k) K
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
9 ]9 |& A2 G& p
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
6 F7 D& Q" G: B* L1 `% d" R4 P' E d
{
" R5 l3 J. ^# N# Y6 B
if( pLight )
% `4 N0 z6 u6 {$ @
{
) x/ p% o8 F m: A% o1 V7 l$ U
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
d$ |2 ]5 z- p1 F
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
( m4 m4 z. a5 S( d1 P& d- c
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
& T) O3 y6 E* z/ o: A- b: b- X
3 r6 k/ W. s/ v. d
pLight->Specular.r = 2.0f;
5 X8 p# {, B: `0 I: f
pLight->Specular.g = 2.0f;
5 A. |, b: _7 f: e+ I2 ]
pLight->Specular.b = 2.0f;
8 H" n; H& s1 }- c
$ l+ W' c% f4 O2 x
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
2 K% j$ v2 `9 Y$ D% G: [( L
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
* B% D% a4 y' N( g4 k5 h$ a/ W% c
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
8 ?* I/ F# e0 G! d
J8 N0 p1 k9 x' a: p
HookUpdateLight( pLight );
6 j) c% f6 x$ D9 M* k! z" h& M
1 b3 _7 b8 \3 {4 j5 k: ~
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) }/ O' q# ^1 V% w; N
. u" i9 }& `- f3 F6 x
pLight->Diffuse.r *= 1.2f;
5 K( q& j/ b3 T) c
pLight->Diffuse.g *= 1.2f;
' z: C/ x: E, z* M0 m
pLight->Diffuse.b *= 1.2f;
2 Z+ i7 C. m$ {$ V. T
3 v9 ?) t" N$ U$ l" R/ V, E$ H7 { j
pLight->Ambient.r *= 0.8f;
# B/ s+ T& p9 }, L0 n. S! }
pLight->Ambient.g *= 0.8f;
e, o4 H$ C$ m' {. {. c. P! `
pLight->Ambient.b *= 0.8f;
1 s% }& l5 f P8 U0 v* v* K# t- x/ ^
' Z/ O' L3 b6 Z$ J6 C
memcpy( &m_light, pLight, sizeof( m_light ) );
. D" W5 N8 }/ S
* @$ J: L: w. r& ]$ f, ]4 }
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 v0 Z m0 X; o" @0 V
D3DXVec3Normalize(&(vecSun),&(vecSun));
3 s7 v+ l1 _0 s4 \8 ^, j% l8 Q( D
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# P9 j2 D, U6 z: C
pLight->Appear( m_pd3dDevice, TRUE );
0 z1 K& ?" I5 z; s
" b5 p5 k C8 H. c7 G
DWORD dwR, dwG, dwB;
% ]5 V" [$ y. T( G
dwR = (DWORD)( pLight->Ambient.r * 255 );
1 d% l- ?- ^ J) r) b; o0 b. V" i
dwG = (DWORD)( pLight->Ambient.g * 255 );
# d$ d5 O. |& d
dwB = (DWORD)( pLight->Ambient.b * 255 );
9 L1 \; n0 u$ @) u. L2 G2 \, a
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
8 r" K3 I3 s3 `- d) h4 m+ G- M
}
; C2 w8 v1 S X; V1 q( T9 e$ j& s
}
: L; S8 Y) W# [/ w" d
}
& t8 {8 W9 {4 [) s# e( Q0 @
else
) W' _. j0 ^; @! K
#endif
1 Z. P4 f2 n; `( ^
0 R% D r+ w2 P3 o. \9 o
if( m_bIsIndoor )
. J4 s: e; x0 S }7 W
{
0 S$ g0 R: z. n B/ e
if( pLight )
, c! F) Y% k% v) X$ A% |4 v1 v/ z* \( v
{
. ~! m+ {. G/ }6 A
// à??μ oˉè*
+ T1 u, P; o1 L* {2 w. ~
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
: _6 Z; v; ^& F* L( z) C
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
4 l5 {" L1 R7 l8 I: q# s6 z
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
' V3 t+ f+ z' N, ^( J
3 w1 S" i9 [, D2 U
// oˉè* ??à?
: g+ z! A- W' m* B) Q' X/ h
pLight->Specular.r = 1.0f;
3 E6 G+ |: x6 @9 U K: _
pLight->Specular.g = 1.0f;
: B# o+ L- Q3 J9 W7 _
pLight->Specular.b = 1.0f;
5 O; e# e. s, |) W! H, w. c1 D
// àü?? oˉè*
0 F4 ]* w: F: M8 H2 O- @0 P
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
. @( @; A5 k5 Y: o9 M, K
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
! m, i) }( w, |7 X
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
; n5 \' n0 C/ O; Y0 e, k
, h/ m" G$ A/ r( ~$ `0 ~
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
8 j( W! {9 V. O$ J* C+ H
{
4 D+ W$ c* c: ]! H7 Y
pLight->Diffuse.r *= 0.6f;
' }* |7 ~5 X2 l: I
pLight->Diffuse.g *= 0.6f;
( S9 a' k& a, N+ _9 H( S
pLight->Diffuse.b *= 0.6f;
4 f0 n) |( G" p4 {
pLight->Ambient.r *= 0.7f;
( u1 a! s) Z8 p7 q. H
pLight->Ambient.g *= 0.7f;
3 f% q: T. j8 g- @
pLight->Ambient.b *= 0.7f;
5 X8 Z* V) I3 T
}
# j7 m5 a3 O1 L+ O; p5 e6 ~
' t9 H' e( p: X, Y2 o
#if __VER >= 15 // __BS_CHANGING_ENVIR
% c% r9 F5 j, \1 w- [4 S
if( g_pPlayer )
. M2 G; _8 n$ e1 C9 M" `; r1 X5 e
HookUpdateLight( pLight );
V' h1 ?# f! }
#endif
, W" \$ V& o* s
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
|1 _: v8 ~6 G
- z) W3 ~4 }* E/ n$ i# y) I: C
pLight->Diffuse.r += 0.1f;
% {- |- u$ S9 w, v3 T0 F) ^0 d& A
pLight->Diffuse.g += 0.1f;
2 H- m' T' E# c8 u5 Q
pLight->Diffuse.b += 0.1f;
7 X8 d9 E3 ]9 @+ ?# T4 |* Y: e- B
// oˉè* ??à?
. |7 H E5 V5 P9 T/ a, @
pLight->Specular.r = 2.0f;
8 R) |! P- }6 Z+ W; @
pLight->Specular.g = 2.0f;
+ g) Z3 U* ]/ L9 R0 e* m
pLight->Specular.b = 2.0f;
% n9 t6 m- U% c" ]( h0 e* J
// á?oˉ
. v) ?" D) C- r( H' d
pLight->Ambient.r *= 0.9f;
& K! }. L5 A9 x
pLight->Ambient.g *= 0.9f;
+ [1 `8 |6 h* Z8 u6 _; x, V' j4 S
pLight->Ambient.b *= 0.9f;
8 F& w9 X: R" Y
! L) T1 I9 k# V2 w5 m
memcpy( &m_light, pLight, sizeof( m_light ) );
: M/ f* \) C5 G R% L( a- N
" y5 X( O# `1 u o: I* s4 h$ p
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
1 r$ _2 @! ]0 D `) D/ s6 y* U) e, j
pLight->Appear( m_pd3dDevice, TRUE );
. X8 a* [% W7 P
1 Z7 ?- E/ I+ A* k, t3 Q( H
DWORD dwR, dwG, dwB;
6 n; G5 {1 |. W1 A( K
dwR = (DWORD)( pLight->Ambient.r * 255 );
% g9 e, V+ c5 P$ A9 \* [ z- y
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ ]8 j1 t8 w5 b; u2 Y' L
dwB = (DWORD)( pLight->Ambient.b * 255 );
" C% L: P7 B1 [9 @$ c' p4 k2 r! A
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
5 N0 G5 t2 Y- k; X0 i+ k, R
}
7 ]7 \& \1 L) P
}
& B$ T4 _0 A$ x9 V
else
+ E0 @ j+ F ~2 A
{
3 ?( [% v3 ~ C& o* j
if( pLight )
+ n5 ] B1 r$ q- }. h5 K
{
: S! a/ r0 K1 n
" [- [- d7 V5 B+ t- A
int nHour = 8, nMin = 0;
% L6 p1 B) T# ]3 f8 y
#ifdef __CLIENT
3 B1 I I9 `$ {
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
4 q' y& R6 b0 Z' v4 V
nHour = g_GameTimer.m_nHour;
4 c/ Q4 `5 E* m* x
nMin = g_GameTimer.m_nMin ;
+ I& ]" h( I+ P7 F& o, u5 g$ M, g
#else
- `1 @; W) {- F. I& ^" v4 B
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
) g4 h5 N9 x& \- P
if( m_nLightType == 1 )
! E4 m3 l4 R" q& I! _+ @
nHour = m_nLightHour;
$ V8 {$ h- ]$ o& [5 o
#endif
( I0 b7 D8 H5 e0 E- w, V
nHour--;
1 }) c& o' \8 y8 v; n
if( nHour < 0 ) nHour = 0;
* ^' r+ w R* ^7 C7 Q
if( nHour > 23 ) nHour = 23;
4 Y9 j, @" A1 x# z# Y; h
+ q+ ~" K0 Z! _( x
//if( m_bFixedHour )
& F% w$ V# r, k5 t) t" }8 }
// nHour = m_nFixedHour, nMin = 0;
+ F+ ?6 @2 h$ L. b; L- w. [3 {7 H
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
3 Q! o0 A0 L& E Q* G5 A' Z
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
8 m0 D5 R# J8 R$ B/ Q
& K0 Y5 r2 _* R* ]
//m_lightColor = lightColorPrv;
1 J" b* Y7 M: ?8 k1 O2 L3 q/ B
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
d6 v6 I! N) Q: ]) J
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
4 T9 r9 k6 [: D- E, n
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
5 ?! m( k% @# Z B& v5 U
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
. P0 n( X( j: v# K7 X6 {, P9 A: L
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
& |3 b h- ~4 T/ m* Q0 q; e
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
: \' ?1 O: V2 }- Q; p C. H
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
8 z% b* I" c; v
# j9 Q+ S5 b# s7 O# t: P& D
// à??μ oˉè*
& d8 D1 ?3 H4 B* d$ F
pLight->Diffuse.r = lightColorPrv.r1;
. z; t1 T% A4 \% }" M
pLight->Diffuse.g = lightColorPrv.g1;
& D; ], ?! D# }* h* I5 ~
pLight->Diffuse.b = lightColorPrv.b1;
1 `* n* G) x1 E2 d' a# l
// oˉè* ??à?
) ?0 A9 q% t( ^ V8 o- l% E
pLight->Specular.r = 1.0f;
% H, V1 b$ ?/ m9 d: r( q
pLight->Specular.g = 1.0f;
; o& V, f) g4 i; I
pLight->Specular.b = 1.0f;
8 j: i2 |" e( R; r+ S
// àü?? oˉè*
; n7 A0 F# p9 \/ `& U4 \4 y% _
pLight->Ambient.r = lightColorPrv.r2;
" V- D$ T2 ^9 |# O7 E
pLight->Ambient.g = lightColorPrv.g2;
8 i3 z7 W1 s' l1 A2 j2 U
pLight->Ambient.b = lightColorPrv.b2;
3 h8 v9 f. x- c" e
+ [4 R" C; f6 x& G+ S# F
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
2 Y0 h, E" W6 f- U B
{
/ o" y- V n2 _$ ?0 J
pLight->Diffuse.r *= 0.6f;
) |& o e T( c, q1 u
pLight->Diffuse.g *= 0.6f;
1 k' V/ M; q) P' j
pLight->Diffuse.b *= 0.6f;
% q2 i9 n; m" L
pLight->Ambient.r *= 0.7f;
- h+ s% K# c% a4 B1 q
pLight->Ambient.g *= 0.7f;
2 t% P( q5 o' g! R. i
pLight->Ambient.b *= 0.7f;
" a& z8 d) v/ x: _
}
, W: [ a9 E, C% w% H G
( |. T! A2 B" N4 ?' b1 J
#if __VER >= 15 // __BS_CHANGING_ENVIR
% S. c1 H9 C6 m' Q, _7 Z
if( g_pPlayer )
, H) m% t2 f8 K+ w0 S* t5 J
HookUpdateLight( pLight );
1 z, R/ P6 j9 `- ~. F$ _! f
#endif
5 @4 p Y( I* H \& Q
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) ^: a3 I% i# ~
4 K" i3 K3 a: S3 `4 j1 k
#ifdef __YENV
' ?- H% I, E; n" ~9 z4 D, R
pLight->Diffuse.r *= 1.1f;
" i$ T+ z' O7 N: V2 W1 U
pLight->Diffuse.g *= 1.1f;
" _+ B* \+ Z+ m; S3 b
pLight->Diffuse.b *= 1.1f;
8 g( p6 E a8 z1 l, F
// oˉè* ??à?
. m" G3 a+ s4 `+ Y0 P2 ~
pLight->Specular.r = 2.0f;
3 Z& K* G+ i% u# [: e2 R, |
pLight->Specular.g = 2.0f;
: \/ p9 J0 @" m9 w H
pLight->Specular.b = 2.0f;
+ |3 K: N! w' O6 j. F# ]5 R: c
// á?oˉ
' j' Q+ e' a9 @+ v, K9 M& R" R3 ^
pLight->Ambient.r *= 1.0f;
X) \0 u# M) P5 p( O
pLight->Ambient.g *= 1.0f;
, M& h( x1 R: w8 I) F
pLight->Ambient.b *= 1.0f;
* `! ]/ C+ h& z* P
#else //__YENV
- l% Q: H) f3 l) v4 J# g; |/ v
pLight->Diffuse.r *= 1.1f;
7 p& t+ @; U h
pLight->Diffuse.g *= 1.1f;
3 Y& ~( F9 ^; X. n
pLight->Diffuse.b *= 1.1f;
( y2 C1 l: L% v5 u- _* d
// oˉè* ??à?
5 _7 L+ Y+ C1 K" s$ p0 I+ f
pLight->Specular.r = 2.0f;
4 F2 R N l' N% p2 z. p* i/ k2 s
pLight->Specular.g = 2.0f;
- z0 j/ @) p9 X3 q
pLight->Specular.b = 2.0f;
( Y+ J# i1 L- x$ [; ~
// á?oˉ
5 @0 D" k# k! S3 u0 G6 }% P
pLight->Ambient.r *= 0.9f;
" d+ s1 D9 c6 a$ m4 S
pLight->Ambient.g *= 0.9f;
) O# ~5 T$ T1 X( ^9 H( q
pLight->Ambient.b *= 0.9f;
+ B8 r" D) r" _( {3 P; n4 `4 v2 A2 z" [
#endif //__YENV
, q, u1 y9 c' B j3 _& ~
9 ~5 m3 I# \4 {4 Z+ B7 l
memcpy( &m_light, pLight, sizeof( m_light ) );
" H/ m, N8 W* h5 ^2 [3 J
2 Y5 D3 \+ v" ^
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
. P4 i# e1 ^8 q
D3DXMATRIX matTemp;
) r+ f6 x+ {9 z9 U3 ?, Q" {$ N9 z1 v: B+ V
static const float CONS_VAL = 3.1415926f / 180.f;
1 O. l, c! \1 a* G2 I
4 _! I8 z- ?) _7 s6 D
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
8 s/ F: f' S" W+ W. q' }
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
N$ k* N9 Z! Q1 S3 f! {( D1 Z0 e
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
# u0 X9 Z+ A: c' ^9 G6 E
pLight->Appear( m_pd3dDevice, TRUE );
" a4 r, l1 O5 T6 s u. G9 S
) r+ X# X, j5 ]) f. x- w
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 O3 Y; N1 D+ U
// D3DXVec3Normalize(&(vecSun),&(vecSun));
0 L5 V4 l% p1 S* }. r# \
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: i0 u. o8 _% W' Z
" D& i, ?3 N+ V
DWORD dwR, dwG, dwB;
U l% E( a7 j N" J7 Z9 }
dwR = (DWORD)( pLight->Ambient.r * 255 );
( e9 N6 a0 i3 q+ A8 S7 i- d( b
dwG = (DWORD)( pLight->Ambient.g * 255 );
$ z( H1 t' J7 W: u4 v2 r* J8 k
dwB = (DWORD)( pLight->Ambient.b * 255 );
5 ?, ~8 r. i- i$ y( U: b9 K
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
m8 g9 W8 a$ G
}
6 ^ @# M j( E- S+ g- M
}
( }1 g0 y" n% n& {
/ W7 c# @% B. E# Z: z
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
0 b! ?: G4 }& m1 y* G& 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) );
, j; q/ r0 ~) B! a5 C) u
::SetLight( bLight );
* t* |1 ^- @! m; z, q! g
% `: q6 x2 ?9 J7 Q' `! M
// ±ao? ?D?í???ó á¤à?
: l( V. c5 ?1 K- |" k& a- P
m_pd3dDevice->SetMaterial( &m_baseMaterial );
* J' l, d; m h& C
, C7 v |" }: ]8 u& G/ o% A
#endif // not WORLDSERVER
; e. w: S0 ]) F+ o
}
# X7 n) d. Y# Y; ]2 ~$ o+ Z* \
并更换
8 o# Z2 x; q& h1 x0 u6 V6 H8 B
Code:
* N* {4 k0 g8 h" ^) L2 r# _) L0 v
__FLYFF_INITPAGE_EXT
2 ~+ _ `7 l0 e! @. [
定义
+ ]/ E8 Y4 d6 s
5 V" Y/ F1 K5 D* l- z: c
8 X) m0 U M: F8 |- C1 D
% z& B% p, ^( J8 t$ T3 X
6 o4 v: x1 D4 L. D& `5 h! j; @
现在终于删除我的狗屁加速...
5 ^ M$ M8 j2 @, Q! e/ P+ N! m
* i O- O& c& y* D
6 H$ c& _7 R, P2 Z& h7 Q8 |
: u7 N7 j) j0 l/ J* T" [/ [
欢迎光临 飞飞世界论坛 (http://ffwold.com/)
Powered by Discuz! X3.2