飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
/ }' T2 V: P: o8 \8 g/ l1 F
尾翼:
* L) a9 S! ^- t* U
, S6 b1 q! X+ {; X) j
代码:
* t6 }5 d/ m& u# a3 J! n5 M/ r
CWndAutoFood::CWndAutoFood()
% h& K& a6 ]1 W4 I: Z
{
$ H9 t4 _4 E. x3 {9 W1 r
m_pItemElem = NULL;
3 j8 g9 C: @7 l3 F9 [
m_pTexture = NULL;
. N' D; Z. p2 _
bStart = FALSE;
7 ]+ A8 x' m# C7 P+ ?" o& X
}
1 O; a5 `. \& a5 f7 T h
' c1 H- J* H, T
CWndAutoFood::~CWndAutoFood()
+ c9 [( y) S5 E& S B+ O
{
' a, L. B, A8 I) n1 \* V
AfxMessageBox( "AutoFood ist gestorben
" );
4 K9 a8 L+ ]7 H: s M
}
1 _& Q, `$ b6 Q1 ]
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
' J* Y* g- N! {8 w* C& ~+ A
{
; H; G7 h' h3 U8 N
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
! O2 l, \5 V* K7 L9 e) c
}
0 A" e( c4 F# q. e, I( ?& y
! D" L4 j/ u* n/ u3 x5 |0 |8 ?
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
& I+ r9 Y7 G3 a h2 s% x
{
' D! {5 I$ b1 a( R; r' m4 R9 a- y% h
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
. @$ h) D" H% D5 p7 a
CRect rect = pWndCtrl->rect;
2 Q9 J, x* Q7 U6 d8 p7 O$ q/ U9 P& M
if( rect && rect.PtInRect( point ) )
8 d2 w+ T( u+ i. y
{
( v1 u( `3 a& ^% \* |
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
1 }0 x: T* |- p# ~% U
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
% j2 E# n' A; {& h, _! Q1 L3 Q
{
& c4 F- W0 l3 @4 R; j# e
if( m_pItemElem )
: {5 G! y/ S: j- d$ h; \
{
% I2 r$ X4 g% n. C2 {- }2 s) @
m_pItemElem = NULL;
2 t4 s' n/ Z+ V+ K
}
2 G j7 v0 |/ n7 t
m_pItemElem = pItemElem;
9 p* `) S! y. w% q1 E3 v' e
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
& o) I! [( T* k1 T7 m9 L% d6 n
}else{
) @4 t3 k* o9 o( x
SetForbid( TRUE );
; O3 `* M2 U9 z ?2 ]' }
}
7 S8 I6 f5 `, x2 Z* z5 X
}else{
( P5 |9 W o# B! Y* a' v. Y
SetForbid( TRUE );
; r7 o4 O6 y) I0 R# D
}
/ h, _' r# [9 ^6 ]* B
return TRUE;
) f! B0 m% X4 A- u3 B. ^
}
& V% r0 f* T, l& o1 j0 Q
7 Y; j; q3 s: U2 ?1 F C4 d$ G
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
$ F+ i2 }# a" k7 e6 Y
{
: j" s/ |: G1 m0 n
switch( nID )
/ G: t" ~+ a& r9 P" T
{
+ B y- g( v" J7 Y$ G
case WIDC_BUTTON3:
* X4 b; Y" E$ ?+ r
{
; G7 N! y6 e/ ~5 n' z/ _/ f
bStart = TRUE;
, v9 @4 F4 B2 `$ ]* o% W& o; u6 t) i
break;
. |4 e6 q Y/ ], ?
}
# Q: I" U. d+ l! g
case WIDC_BUTTON4:
7 M2 Z& o8 a+ M2 a9 z/ G. c; z
{
8 P9 C- P2 D" N+ s! n) Y4 _
bStart = FALSE;
- j/ ^% {1 u6 }8 ~/ U
break;
8 K0 q) J6 B3 }: L# |
}
" n# B" \" P( b# z2 |+ M# K# a3 j
}
4 e* c+ W- p* n5 V. j
return CWndNeuz::OnChildNotify( message, nID, pLResult );
, S9 S. T/ _6 i1 K1 O9 m
}
+ U' I7 E# @7 a% L7 l. R, Y+ ^: j
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
* [8 J: Z( q; q F# U
{
5 d: z9 f7 }$ j! h( r
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
V4 A# \7 w0 j1 ]+ l; {& c1 T
if( bStart || !m_pItemElem )
' D' p' Z: l; Q: z, [
{
# F" g9 G {* J
pBtn->EnableWindow( FALSE );
2 h% P' Y' {% t4 v
}else
6 L& [' G) u3 G0 [- s) h1 u) V$ {9 [
pBtn->EnableWindow( TRUE );
' l' o- ]# r% r4 C
if( m_pTexture )
, b, G' X$ L9 }4 M2 d$ B% S
{
0 Y) c2 b& u. H9 z
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
/ q+ G( d1 R( s1 ?8 z7 ?" g1 ]
if( wndCtrl && wndCtrl->rect )
/ D3 x0 `- j) I3 z2 @2 \! z
{
( V$ c" O }4 M2 X' o, e6 R7 y
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
+ `+ z1 r# `; i
}
: p0 t- x. Q. t, K8 L, s6 R4 @: x
}
! B0 R9 }3 [" n2 [4 U; Q! v
}
& [& f: l" \# O. t: ~9 I* J$ Z
1 u) L4 s$ {& ~3 S: f
BOOL CWndAutoFood:
rocess()
0 x6 U- Y2 o* s+ F$ U, X' f
{
: i# |, d% w2 w9 @. i1 Z7 G/ J
if( bStart )
$ J' r; p" t; }; s( K2 h
{
H. a+ s4 d% H
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
+ R% s& f8 V7 R) A! Q: H. ?
{
7 I, S/ ~( Q, i3 p0 {3 a5 O0 |
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
5 m) M ~' |5 Z1 q
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
! s4 k7 Y" \. B$ L
}else{
: P9 B- n) ?" Q
bStart = FALSE;
" E! y4 @( r$ f. S1 w
m_pItemElem = NULL;
. l: [6 s' |0 X
}
. }" `$ u$ y$ q5 e5 ]7 X
}
/ ]' |: M% \: S( `; | ~. L& D1 l
return TRUE;
/ a+ w% y2 T7 g. A6 N( N
}
# B" ]8 ]) C+ {; b
: v' f9 F" c l. x. ^2 J8 n' n
登录视频废话:
8 v* t( A% ^0 Q) ~: ?, b
尾翼:
& i# n: q3 w' O* y( v V/ g. P
( u- t- o# t" t5 X9 q( ~
代码:
9 l- f8 C6 t( p3 e. g8 P
7 }% Z, E" U& _
void CWorld::SetLight( BOOL bLight )
# Q$ ^/ ^2 O K5 e1 W% P# e1 s) Z
durch
3 ~ X0 Y% U f$ F% G+ F5 E1 u
Code:
5 e- x" C7 f3 a: v' a7 j) m% t
void CWorld::SetLight( BOOL bLight )
" X9 M6 R' X0 F
{
" h( O7 V9 p/ x
//ACE("SetLight %d \n", bLight);
7 ^8 y2 i: u# M0 G+ b
0 l# K" p4 U6 s. j5 g- z
#ifndef __WORLDSERVER
% y* M+ T( b8 B9 s P9 T' u
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
' u; ?2 X. u1 Z7 S2 @- R
CLight* pLight = NULL;
( g* R# ^6 z" g/ f
9 r& G( X1 ^/ O2 X0 d( D
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
9 |7 g9 ~; j4 L5 O2 l( w) o- ]! B9 M
* L, k2 a$ a$ ?$ d* o
pLight = GetLight( "direction" );
4 a! y+ K, ?5 Z% }. R
; e$ Q I. q3 z, t% W0 |0 W
#if __VER >= 15 // __BS_CHANGING_ENVIR
# I C1 f" L4 r! g- e
if( g_pPlayer ){
+ L3 V/ v1 d; d* c+ T% _: e2 U' q* Y3 e
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
" t' I* n- F6 V- |( A& ~
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
3 e$ x( [( U* K
{
j4 ?! g& ]% A- S8 p
if( pLight )
! l# b8 V! Q, r7 |' o
{
( o5 n( `% k# I1 m* g8 J
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
' P5 \ ~) z( W) T) |, n D
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
+ t. V7 V# F# _4 ]/ S# c6 k
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
; d& d- S, K& S; V! |/ B4 K1 X
8 J' \2 q6 G) T U
pLight->Specular.r = 2.0f;
% v2 i0 k( l* n9 c5 i6 q% T4 c
pLight->Specular.g = 2.0f;
6 {6 J0 \% g6 _4 F
pLight->Specular.b = 2.0f;
; |) p& h" n2 Y8 T
- }1 h0 o- I8 U& P! A- }" p
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
* D8 q/ H3 a% v1 l) e
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
4 X# u) y! Q& w3 E) M
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
) Q9 u: K. t* a- a; G' Z
: |& F# w# ?, i) s8 G6 |
HookUpdateLight( pLight );
' n; T' L2 q v( r% |* I( s# o
3 q* _* n5 w" x9 U7 O
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
: b% C2 ^, B- I, M- Z
! b- o& m, q3 m' M' [$ M
pLight->Diffuse.r *= 1.2f;
* _7 M, E' U3 y, V* K
pLight->Diffuse.g *= 1.2f;
! L9 q% k. l& F6 \% H
pLight->Diffuse.b *= 1.2f;
+ Y8 c5 V4 v, p) |; I1 f8 i
; N3 l. E% k; x. N8 w% n4 g
pLight->Ambient.r *= 0.8f;
) l+ n9 `& w8 b7 q( u' c0 r. [/ |
pLight->Ambient.g *= 0.8f;
2 R5 o O- t7 @: }
pLight->Ambient.b *= 0.8f;
v2 s6 _' r9 ]% c2 ?
. M5 ~+ d4 J) Q5 C, [! \8 Q( q
memcpy( &m_light, pLight, sizeof( m_light ) );
f2 D+ C8 K ^3 W
3 ?0 Y, o S5 C2 P9 }, s; _
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' |$ C! W# o T* ^4 X
D3DXVec3Normalize(&(vecSun),&(vecSun));
# z/ k. F/ M9 O6 `8 ~; X2 ]+ S
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 B# B- q+ r6 v! b7 P; a1 w& p
pLight->Appear( m_pd3dDevice, TRUE );
! K ?1 e7 M( y' A
7 Q$ n( ~' |, [7 z l. Q
DWORD dwR, dwG, dwB;
0 U3 W- F$ [7 L% S$ ?. Y: Z
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ I9 ^& o' \8 g1 V! a' T) `
dwG = (DWORD)( pLight->Ambient.g * 255 );
+ h! X F3 M$ O8 d2 i
dwB = (DWORD)( pLight->Ambient.b * 255 );
% K3 D. H5 d% y- F J8 j+ b
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* M* @/ r* l3 K# ^4 ?3 j
}
6 i( F0 l' K; W! C
}
1 z- N! A0 `! w- u! d( X
}
8 U; z6 t! I3 W! N+ L/ C
else
% {! I4 B |$ [7 |
#endif
+ a' Z0 L, ~# W! P, W7 G
4 v3 k( n& F9 O0 R* ~
if( m_bIsIndoor )
+ c) ^* h, N5 \0 o' U
{
1 C; ]- v# k9 Y$ ?/ T
if( pLight )
' j L" V9 w7 j4 u- V
{
" c8 Y# |+ w" b/ q! H! B
// à??μ oˉè*
$ i o8 v) E) g7 A2 |* i
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
; b! J- ]+ O, {! Z
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
x* Z* c9 P* g+ P: I0 x3 [3 i0 Y
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
% N3 g/ W1 D+ Z9 ], u9 G6 Y( |; s
! O% k/ e/ g9 |* N
// oˉè* ??à?
( F6 A0 K- A" v) p
pLight->Specular.r = 1.0f;
8 s8 Y; z6 _' _- v0 E
pLight->Specular.g = 1.0f;
, ?) `" I0 k, E# l$ r) x$ X. |: S
pLight->Specular.b = 1.0f;
! |' L) L, u/ D* J. F" x
// àü?? oˉè*
& J4 w" v# B9 o- [
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
( M% y! H. g: v1 G/ N8 P' L
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
' A; J0 S- S3 H
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
" z& o6 p- h* F, n2 f
' g0 l- ~! q* g4 F. y
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
+ s4 b, M4 [6 `; @: Y! g/ V
{
3 n, P' ?& ~7 k) I7 e
pLight->Diffuse.r *= 0.6f;
. U0 F7 l$ z, ~1 Y
pLight->Diffuse.g *= 0.6f;
7 H3 V$ [5 R( c: V1 Z+ g/ W* u
pLight->Diffuse.b *= 0.6f;
# {/ t1 R) I( g
pLight->Ambient.r *= 0.7f;
: |1 a3 b5 n6 s( ^0 z& H' @
pLight->Ambient.g *= 0.7f;
5 Q( B% n$ Z# _" d q- o+ n8 X
pLight->Ambient.b *= 0.7f;
7 E! e2 E0 p' I5 E2 b
}
- t" H/ e' x: Q8 H/ e* P7 j
p- {; T9 I' E% K/ \4 j
#if __VER >= 15 // __BS_CHANGING_ENVIR
8 p' ~" e! [& G
if( g_pPlayer )
9 X: y3 H1 V( {$ J+ o! _
HookUpdateLight( pLight );
- k: D, I/ f! I
#endif
! g2 C% u9 _' ?1 R' i& B, K
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 x. h( ?- u% j7 s
% \( P" x4 f) a2 u
pLight->Diffuse.r += 0.1f;
' P8 u1 d5 R/ {; T2 A5 _& u
pLight->Diffuse.g += 0.1f;
! {5 Z) g1 M) O+ X- |3 v
pLight->Diffuse.b += 0.1f;
. N/ Q3 }4 r3 S$ u$ i) t# q
// oˉè* ??à?
; @5 X. L; B9 R2 N$ o8 f7 S
pLight->Specular.r = 2.0f;
" |- W1 L3 ^! g
pLight->Specular.g = 2.0f;
% ?8 v/ z( ?2 m9 N% U8 @
pLight->Specular.b = 2.0f;
% j8 g4 k( O5 @. l( @6 q( i- Q
// á?oˉ
- k- g5 \" t" C& G2 C3 M7 e
pLight->Ambient.r *= 0.9f;
- S- t/ U! P% @0 s. x& I
pLight->Ambient.g *= 0.9f;
( i, j2 G8 s9 j' f2 }4 L
pLight->Ambient.b *= 0.9f;
) V G+ k3 w3 b0 D
5 F" K1 j1 n+ V4 Q
memcpy( &m_light, pLight, sizeof( m_light ) );
7 Q9 u0 I4 u& F& v: i% w
' I1 K7 x5 B3 @
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
# G2 o8 w# Q5 J) h
pLight->Appear( m_pd3dDevice, TRUE );
# ]$ M2 y9 ?8 X' G1 O7 B( B
5 `3 w% m2 i! a2 J+ L! P
DWORD dwR, dwG, dwB;
1 q- K1 S7 F( J7 u5 a% p' c# q! d
dwR = (DWORD)( pLight->Ambient.r * 255 );
) N7 y, r- @9 J3 e$ N$ x4 b( D- @
dwG = (DWORD)( pLight->Ambient.g * 255 );
# W# ^. h* l( x+ H4 {, T5 X
dwB = (DWORD)( pLight->Ambient.b * 255 );
+ B; Z8 G/ C) S/ P
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
m! F+ Z8 d* Z' k9 \6 m7 L
}
q" }' u* {; ~
}
& j: |/ A8 t9 s6 U9 k
else
. a' w6 H& M. h% f$ N; G
{
3 Z+ E4 a2 i, c3 `0 y
if( pLight )
* O1 a: @& B* ?- n' j
{
$ J9 p8 w- V, J6 `; C- q" w
- J; q( e7 X/ ]& ~9 O) b) k
int nHour = 8, nMin = 0;
/ i: v0 H/ A* [6 q w
#ifdef __CLIENT
0 ^, j0 f( l5 }# n: T" V
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
0 l; H: r& V2 m: M$ L
nHour = g_GameTimer.m_nHour;
7 u# W A, w7 Q8 \8 A# H" p9 @* _6 P
nMin = g_GameTimer.m_nMin ;
% F/ G& B/ k- s. [+ ]
#else
1 q) a8 _9 i2 r( Y/ J
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
8 H3 g5 u5 x) N7 `
if( m_nLightType == 1 )
. R. X1 e$ }- V9 \& m8 a
nHour = m_nLightHour;
! G; X, F! `- K% [
#endif
' @2 Z0 h4 @. R" F4 }
nHour--;
L$ ~! n i5 Y, n/ }; W' l. w
if( nHour < 0 ) nHour = 0;
% B5 R/ k" y+ u+ n
if( nHour > 23 ) nHour = 23;
, t" s. B8 D6 J
# C* Y3 @% m6 b, g
//if( m_bFixedHour )
; l& d l3 q o/ M+ B# L2 \
// nHour = m_nFixedHour, nMin = 0;
" k, K$ H" m/ h5 W
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
( w" y6 `8 T% r( s4 F; F
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
$ B* q( v% x& T8 ~2 z
" R N0 K* H$ H& J
//m_lightColor = lightColorPrv;
+ p6 {+ M0 F, z" Y+ @
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
N. T6 r1 i: y0 [8 p2 ?# v
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
- ]! N/ g$ Z7 E1 K0 I
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
, e) s5 L/ p, e2 a9 t
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
& a9 c7 m% f$ b8 {5 n# S0 M+ O) M
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
3 g8 L; A4 q$ M7 f6 V9 l$ v, @
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
; ~* e4 y( c4 ]
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
, j( M$ }7 z# n2 ~; a/ y
8 ~4 U: Q3 E6 [1 G
// à??μ oˉè*
" m& ^6 c% U4 w& p3 {) p# e
pLight->Diffuse.r = lightColorPrv.r1;
. \9 f/ { M3 ]
pLight->Diffuse.g = lightColorPrv.g1;
m- k8 _/ \, B* Y2 w2 }
pLight->Diffuse.b = lightColorPrv.b1;
: L9 J. j4 c( S" ~
// oˉè* ??à?
2 G- a0 X5 q0 c* b* |0 f6 s
pLight->Specular.r = 1.0f;
& G0 ]- c: }; j0 i9 J
pLight->Specular.g = 1.0f;
$ l6 I I9 `* ?8 M0 R0 E& f% {
pLight->Specular.b = 1.0f;
0 Y; `1 h" O7 k
// àü?? oˉè*
0 s o/ [% \ h2 U' |7 ~: i
pLight->Ambient.r = lightColorPrv.r2;
9 q: U; R) U2 S* `! J6 Q4 z
pLight->Ambient.g = lightColorPrv.g2;
1 _; H) {, i# s; Z& D" N! E+ Y. S
pLight->Ambient.b = lightColorPrv.b2;
# W$ k$ m* Z3 g! i1 z) U, U ~
* l8 K& F K6 \7 X: ?5 E
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
0 w9 K: Y+ P3 S& g, m- n2 {) I; a
{
+ E6 F* t- m, G y+ O S
pLight->Diffuse.r *= 0.6f;
P" ^9 L; T! G0 H
pLight->Diffuse.g *= 0.6f;
) l4 z3 e5 v& a5 x s: ]
pLight->Diffuse.b *= 0.6f;
7 k ]- [) s0 l, K
pLight->Ambient.r *= 0.7f;
7 J: W7 u4 j$ Z8 E6 f4 j, {
pLight->Ambient.g *= 0.7f;
# R" _0 R7 d9 K& U0 E1 I
pLight->Ambient.b *= 0.7f;
. v* G K3 G* B8 j
}
+ S3 E1 K( \8 }% ?) ~- k, ~; X& J. F
- B7 J' T0 L1 b3 m( Q) g
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 N. j: ^5 m, ^$ D1 R
if( g_pPlayer )
; U# Z* v+ g, Y5 `6 k% Q
HookUpdateLight( pLight );
* J0 a- K6 }% B5 m/ f# w" L
#endif
3 v4 ~' @) s" h P- V. _
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 M' M9 e; w1 ~
. _: d; d( f* V6 {7 _. {
#ifdef __YENV
' f7 q8 ^0 [; ]; B1 H' f
pLight->Diffuse.r *= 1.1f;
! D B. P, R. ~* H+ ?
pLight->Diffuse.g *= 1.1f;
6 g/ L& g, D( F1 a
pLight->Diffuse.b *= 1.1f;
5 a% S* x+ Q3 r
// oˉè* ??à?
' N' |2 P; [; Y3 L( p. U( f$ _
pLight->Specular.r = 2.0f;
8 J& F4 f& V7 E0 w# K& l* k
pLight->Specular.g = 2.0f;
' v( b8 j. T$ `; M; ^
pLight->Specular.b = 2.0f;
7 o) K& E3 N# a, r1 d# y
// á?oˉ
5 k) m0 l& l( Z6 H; v
pLight->Ambient.r *= 1.0f;
& e0 e- {# n& m! s, z
pLight->Ambient.g *= 1.0f;
' r- t3 x/ f$ [" w) ~# L/ N. Z
pLight->Ambient.b *= 1.0f;
, r k U1 ]+ C/ n0 k: W
#else //__YENV
- E! R% z7 s9 o, {. V$ Y
pLight->Diffuse.r *= 1.1f;
4 F. x! s4 n# S% a
pLight->Diffuse.g *= 1.1f;
) E; R" G' M# R i: Y9 _; U. C
pLight->Diffuse.b *= 1.1f;
9 {/ z8 L" P9 m! W8 p
// oˉè* ??à?
& p, O- `: Y: f; F
pLight->Specular.r = 2.0f;
4 c a+ C$ w9 @: r
pLight->Specular.g = 2.0f;
# O; M8 M; b; X5 b' C1 H# y1 N
pLight->Specular.b = 2.0f;
+ ~ J1 P7 A$ N; b- `4 V
// á?oˉ
- G: p, O: I9 Z& x: E, l8 M
pLight->Ambient.r *= 0.9f;
% v. p! m1 Y& F. y9 ~% f( k( ]2 I7 E" v
pLight->Ambient.g *= 0.9f;
# Z4 g0 M: k: ?2 K( v4 B6 q" }
pLight->Ambient.b *= 0.9f;
2 S# i2 [& ^/ D0 d- }
#endif //__YENV
- s7 o' f3 {, m7 A( u" u4 ?% \3 B
! e+ G# x8 m" G# w) n
memcpy( &m_light, pLight, sizeof( m_light ) );
; `$ L. d8 k1 |& u `6 c, @4 f& b0 P* x
. k) i5 E' i& S: V/ w1 q" w
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
% H$ G, U# s1 m" E0 Z; T
D3DXMATRIX matTemp;
7 e5 u6 t, Z8 w# g% I
static const float CONS_VAL = 3.1415926f / 180.f;
- w0 ]" @; ~& R& D3 {* v/ b
, n* N, M! N8 @% E3 ~
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
; e0 _# p" ~3 q4 a
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
: l* g: }% g7 y. [ A8 c
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
; e3 ^4 v- V5 N4 ]( ^' A. \
pLight->Appear( m_pd3dDevice, TRUE );
+ m. m; L5 v P+ T# d+ ?* d
0 {$ B, a/ L7 Y- D3 a& _5 P& T! w
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 W! K/ V' U, d% E' P1 u5 W( y
// D3DXVec3Normalize(&(vecSun),&(vecSun));
8 S/ \. Z9 w6 M1 t" a
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% a% a: d/ a8 |1 Y: T& ^9 W
/ U* u4 e, c2 t' M/ \
DWORD dwR, dwG, dwB;
* X. f- C' _/ ]; L
dwR = (DWORD)( pLight->Ambient.r * 255 );
( o* [, t9 r( r; f9 \7 V5 t( \
dwG = (DWORD)( pLight->Ambient.g * 255 );
4 i1 M3 j/ l" A) s% U0 T; G3 } N& B2 w
dwB = (DWORD)( pLight->Ambient.b * 255 );
3 P) M$ T8 w& d6 B
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" x$ [; e+ ^5 Q
}
9 \% ? L4 h& D: |* }
}
0 _& c& ?! [2 } c+ B2 B% o7 _. m
+ f- V! D7 B2 F1 F5 o9 a7 X
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
0 |- r. G# e/ b" f8 q
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) );
# f4 F% o6 W( K: r: z
::SetLight( bLight );
9 P& @% V; ~& R/ J8 o7 s
: q- |5 J+ B( q+ R+ {5 c0 ]* \
// ±ao? ?D?í???ó á¤à?
$ _- ]! x y. T- r$ ?
m_pd3dDevice->SetMaterial( &m_baseMaterial );
) R' [+ F4 J# s9 N" C! a
: L) r! B8 K+ X+ ?; G `
#endif // not WORLDSERVER
7 H' ?6 E5 G/ d, l8 m3 _
}
. G$ p+ u0 v- T) d) H* o* I6 z; e
并更换
+ B. t- B. d4 r( g% M
Code:
+ K% Q& I1 k7 W& ] i
__FLYFF_INITPAGE_EXT
+ ~# i! H0 A7 f6 s
定义
3 w: n6 [9 G. Z; D% G
! Q4 G. c" Q; r9 \; h: H( A
6 \1 I; Z4 b& |% r8 Q# W
# i7 b9 g- U# j8 K* w6 \- h
: Q+ \0 v& e# r" G+ D
现在终于删除我的狗屁加速...
( _ ^2 r8 ~. g+ H" Y9 m
" j* x; u, w5 j& z1 i3 F
& C5 |( O* }3 B* [0 q6 p
, W- D; T9 y% N, Q8 l; ?7 H
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2