飞飞世界论坛
标题:
自动饮血和登录视频
[打印本页]
作者:
admin
时间:
2016-1-10 03:46
标题:
自动饮血和登录视频
食品车:
3 T" a! A3 e3 Y
尾翼:
2 d6 ^$ g& B5 l
0 ^2 C* p/ h, n8 o) i
代码:
4 i' {, N6 q: ]1 i
CWndAutoFood::CWndAutoFood()
7 L$ p6 G* N1 T m
{
# l* H! f% j1 m" e
m_pItemElem = NULL;
' J. O ]- x: D4 R- \
m_pTexture = NULL;
/ T6 T; X4 d/ C; L) C6 P, q. @* T4 B5 C
bStart = FALSE;
0 v0 F4 j- A: D! ^6 [0 W) X1 J
}
- m2 Q6 I) n2 Q5 D, K1 N5 h/ F: l; r( s
- }0 e3 @0 M3 r
CWndAutoFood::~CWndAutoFood()
3 q% N* I# ^( x
{
0 I/ ?- X0 P' w! b/ ~0 i: L( d8 [
AfxMessageBox( "AutoFood ist gestorben
" );
: L/ ]4 R9 ~6 f+ A
}
8 b+ _( i- I/ e$ U
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
: _+ Y9 k+ i0 X0 g Q# `
{
3 D3 i3 o j4 c/ V/ U
return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
+ M3 d- Q) j4 @! ]$ e4 B
}
! P" }, w9 u1 t( c7 J' M/ P
( L. V& a" b& I$ e I
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
( _8 [( O/ m U+ _% d& W
{
3 p* Y" P1 Z# T% g6 ]1 v
LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 D& u3 d( C3 [, d+ y0 Y" N
CRect rect = pWndCtrl->rect;
5 D/ q' }: E2 x$ z+ t& i( W
if( rect && rect.PtInRect( point ) )
( i* }% V- h% C
{
7 p6 @: z4 O! O9 [/ i% H, d8 O- N4 |
CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
. i5 c; w0 P- {0 V8 D+ O) m
if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
# L c7 ?+ v; z% \7 x
{
+ [" R, Q% d" s# G# g1 O
if( m_pItemElem )
( ?5 z2 Y5 |7 n: E
{
3 M9 [7 `4 M3 t3 o9 P
m_pItemElem = NULL;
( n/ ~8 [+ R1 y
}
/ T; W: |. \6 Z7 |& e
m_pItemElem = pItemElem;
4 q6 ]' O7 r/ r& A' u( r# A
m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
& ?# A+ h% t7 ~ x
}else{
) z; X" y$ `) u9 G
SetForbid( TRUE );
/ ^* j, t( n& |' l
}
6 z \ M+ C, K: v
}else{
) N8 W, c, O# J3 h& a4 y
SetForbid( TRUE );
3 N" d& D/ L) y
}
6 }: O1 t- ^! A
return TRUE;
% J$ M' v" O6 D$ h
}
5 {/ G, W, ~6 Z- l. p0 L7 _
9 U9 J3 C! i$ f+ C% v9 ^
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
' Q5 e3 |4 `. \& } O
{
) S6 C) _1 d' x8 C1 ^
switch( nID )
' e. ^/ k: M0 p' C* T' H1 Y; [
{
1 e$ v9 ?" R$ p5 r
case WIDC_BUTTON3:
" F% `' S' h3 v, w% P& k# a! N# k @
{
+ J& O2 m" i$ n; @& I/ ~0 S0 N
bStart = TRUE;
+ r5 h3 i3 n" m8 a3 I
break;
8 C1 z7 c( o" I. _
}
+ _/ \1 n! B" x V. w# r. U
case WIDC_BUTTON4:
8 b) S: p2 J. c( D! D5 c" R( O
{
5 ~& w3 y3 s% b5 o! G4 m' f0 _
bStart = FALSE;
& T8 @: M( ? M* A! u: T3 r- o
break;
' G0 x. t- c3 G
}
, K+ x, g: `0 `# ~4 p, f
}
# b5 f2 V) G# e1 v% T+ ]
return CWndNeuz::OnChildNotify( message, nID, pLResult );
& |1 K4 l+ ^! c" {# G
}
& |' N: i* n, \& H; t
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
: j& S4 w" y* }% F& J* U+ ^. G
{
! p8 `4 w5 l% v6 ^ m/ z9 y/ {
CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
0 s; F+ b# R7 A3 c
if( bStart || !m_pItemElem )
- g6 w8 ]2 i$ j6 }( O
{
. Q2 B5 p; C1 h9 c! A
pBtn->EnableWindow( FALSE );
# m/ ~* }& o( A. Y% D
}else
4 R* G' T+ M, Z' p
pBtn->EnableWindow( TRUE );
5 D: i9 o- o* K: p" H" _0 C
if( m_pTexture )
: D% T8 A ~& {
{
- \0 a' ~7 n! ~6 W
LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' X1 j% @0 I5 x1 Z& @2 G
if( wndCtrl && wndCtrl->rect )
# q' {9 l: s5 X1 r- j) Z
{
: U& |8 |" c+ E3 f( B! `
m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
; b7 S, z( t* E5 t4 `( D
}
) e. y" F# G+ K
}
( m, x+ X0 _; l0 m
}
: k' }% B6 b% D! B% L8 F
2 G- C! q5 g! a$ k
BOOL CWndAutoFood:
rocess()
% a" {# t" [; K& n4 g
{
8 g7 C7 D+ P+ b- q+ l+ Z4 B
if( bStart )
- ? f$ C ~3 S' g/ d" Z
{
y! v# d7 Z9 R, |+ | L& @
if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
: L) ^; v2 h8 g: ^
{
# B8 J0 D% M9 Q* M
if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
1 @/ f: \6 H$ }( i% v; k$ D; W
g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
- G) p9 n ^' `
}else{
; w4 L0 ?: H! D: E! u I
bStart = FALSE;
+ r& t' W. Y6 ^* o5 N3 S
m_pItemElem = NULL;
( ?4 ~5 \: e; c/ @+ T
}
- e p6 k$ O( ^" ^) l1 U
}
( F8 e' c' m3 v7 `. P6 H
return TRUE;
* `' O1 ?" F8 i7 G
}
6 |. A4 @8 N- e& a3 T* x/ Q9 u
1 f7 r; r& Z" k' l: S6 T( q
登录视频废话:
) Q& J' B. `& R" ?0 r& ]( u; ]! ^! W ]
尾翼:
7 m$ c+ i+ L* c
9 U$ Y" I" D3 U) K6 C1 X* g: t
代码:
. h+ C: C: A# h. u
7 e1 Z& W$ l- T
void CWorld::SetLight( BOOL bLight )
8 i( U. W. ]: Y6 B" z9 X
durch
: ?3 j! J ~3 A( v! g$ d2 O
Code:
: c' p7 [) Z. q6 w$ H
void CWorld::SetLight( BOOL bLight )
2 o. e n1 p( T' V- |0 X/ F* g
{
) u% s! X4 [% `3 Q4 h
//ACE("SetLight %d \n", bLight);
# `& `+ |0 K+ D! G! R
7 T) N& \' N6 y4 n7 e7 O
#ifndef __WORLDSERVER
: ^4 Z1 s" D0 F o
DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
8 Z8 _- `. {4 }1 e% D
CLight* pLight = NULL;
9 Q3 q) X- |! D! Z# y( @
7 r# b7 L) L, V Y/ X9 @
D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
% Q, M( v" A5 \
, X: u! z& u/ X2 |3 o6 e0 C
pLight = GetLight( "direction" );
+ Y& b n* c5 h; F* }) O
7 J. b" b ~2 M4 J! N& G0 }
#if __VER >= 15 // __BS_CHANGING_ENVIR
( k( ~. D% B3 H& g: H8 I
if( g_pPlayer ){
) d9 N1 ^% Q9 j, `1 I0 x" T2 H
ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
; B1 ^+ y/ V3 f k# v3 t! X. X
if( pInfo && m_kCurContinent._bUseEnvir ) // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
+ E: L" R5 K) w& W- H5 Q
{
+ |: ^1 N% X9 `# `, D
if( pLight )
& X3 J% X0 R) v5 l; W2 l. E
{
3 Z5 a1 u3 a }6 o% v
pLight->Ambient.r = pInfo->_fAmbient[ 0 ];
6 s8 V( w- x/ V% E% g8 u
pLight->Ambient.g = pInfo->_fAmbient[ 1 ];
# ]) e9 |3 g: I1 y
pLight->Ambient.b = pInfo->_fAmbient[ 2 ];
Y( X( R$ b+ X# E4 j
# f9 T, f0 o" W$ G6 X6 W
pLight->Specular.r = 2.0f;
9 z a/ R8 X9 q( Q
pLight->Specular.g = 2.0f;
& G7 d! A% x |9 h
pLight->Specular.b = 2.0f;
% [. u, R/ o7 E. i( E
* J7 B' _, A: g
pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
% j; j+ F) H. ^) q
pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
5 p( @3 m' u \, [, W5 |0 `
pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
: i# |0 `# \- S# [: h
$ k0 C; U: c& k; H( P6 H& ]
HookUpdateLight( pLight );
4 D7 A. H/ @# @4 z9 A6 F
2 r+ K8 `% L; R9 P x% w
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& R% p* H- O! n
, F8 w* ~8 i/ `' W
pLight->Diffuse.r *= 1.2f;
6 k U, ~ l- v+ g- V4 P
pLight->Diffuse.g *= 1.2f;
) f+ a) e) }1 ~1 {
pLight->Diffuse.b *= 1.2f;
( A: X6 @/ W4 n3 V" i
% O7 b: x6 `2 N; I2 b
pLight->Ambient.r *= 0.8f;
' y2 k* Y4 o. }. ?" V0 @( u
pLight->Ambient.g *= 0.8f;
& a2 G+ @: L4 s6 e! O% Y+ `: a& O
pLight->Ambient.b *= 0.8f;
6 P U8 O# S! Z/ B; _% y
6 U7 W+ |6 Y( p, i) y% U; x
memcpy( &m_light, pLight, sizeof( m_light ) );
& D8 s# B2 X8 O; m
( c3 g# l3 H: w1 R& w
D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 }7 M* _# T! ]$ a" ]! i/ N4 X i
D3DXVec3Normalize(&(vecSun),&(vecSun));
8 O+ `+ y7 M4 O2 z
pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
' F$ l* ~' Z5 L L% h y
pLight->Appear( m_pd3dDevice, TRUE );
) O3 P/ [, h' F. g' [7 ~. h2 S
# V |" e; e- o0 Z
DWORD dwR, dwG, dwB;
/ ?" A! J/ a$ g
dwR = (DWORD)( pLight->Ambient.r * 255 );
* _! e- k; T! I- d
dwG = (DWORD)( pLight->Ambient.g * 255 );
3 s, n# i/ d7 A0 L1 z
dwB = (DWORD)( pLight->Ambient.b * 255 );
7 W8 L+ C9 Z; Z9 T
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- I. B8 Z, h! G, {* C3 P
}
+ N3 |' O; A2 {
}
8 u z. r- y5 d+ Z: m* U0 D1 j
}
. N8 b! N% D% ~* U, \9 h! P0 s
else
7 Y5 x+ @; J6 {9 [4 {% b K
#endif
% C5 N9 {6 T9 z3 B. p
7 M2 \5 d0 _" \! N
if( m_bIsIndoor )
+ Q; x f- v" V$ L& x) Y |
{
+ G& H# ~! H+ T# _$ i9 Y
if( pLight )
+ u1 s7 \! y' H8 w2 R, Y
{
. a% p" h( c' e' L5 L
// à??μ oˉè*
/ n, z3 K: x8 w/ ]
pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
, c# O6 u$ r+ o8 ^: p# I; n
pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff) / 255.f;
) X- i& F1 S1 \+ |
pLight->Diffuse.b = ((m_dwDiffuse) & 0xff) / 255.f;
" R7 }0 [3 U! q* ]7 }+ B, C
; p! o. r1 H- T, S* ^: n
// oˉè* ??à?
( Y6 f3 |/ F \: H {
pLight->Specular.r = 1.0f;
; ^. X1 v* T$ Z7 D8 N7 W# {4 T
pLight->Specular.g = 1.0f;
1 N; n5 s% c$ c. l4 A
pLight->Specular.b = 1.0f;
4 f* u2 D1 r& T# A4 q
// àü?? oˉè*
3 ~2 l' u2 o7 Y) L* u
pLight->Ambient.r = ((m_dwAmbient>>16) & 0xff) / 255.f;
8 r5 ^: @& i4 ^3 j" Y4 {
pLight->Ambient.g = ((m_dwAmbient>>8) & 0xff) / 255.f;
: }' X7 F1 F7 B4 W- O- K
pLight->Ambient.b = ((m_dwAmbient) & 0xff) / 255.f;
9 y) `6 [, z; f7 T
q9 t: Q' ~2 C2 F5 ]# T* I
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# N& O) N: A, J5 H
{
( v: e8 @- {* y1 x. ` H
pLight->Diffuse.r *= 0.6f;
; L9 |2 n3 O3 C$ i' H2 T+ \, h
pLight->Diffuse.g *= 0.6f;
% K9 Q1 {4 S# g2 B0 f% ~ Q
pLight->Diffuse.b *= 0.6f;
; |0 }7 m5 l8 q5 @, X+ _9 L; r# l0 n j
pLight->Ambient.r *= 0.7f;
: Z8 Q2 T, O; m& F' J
pLight->Ambient.g *= 0.7f;
: j1 Y3 w* w* A" Z8 W6 g
pLight->Ambient.b *= 0.7f;
6 M% K) S! M0 b- ^1 B0 q7 m+ g
}
- {( h6 h2 u& x+ K2 m
" X' }6 F+ V/ Y3 |7 n! Y
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 l! [* Y2 r) G6 p
if( g_pPlayer )
* { Q- b& x. [# i, N! P3 t
HookUpdateLight( pLight );
, s( X3 x9 A9 @8 D+ B) I* u
#endif
( D" Y0 U( j: J5 V4 T- n: M7 i4 a i/ V
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
( ?3 }) S5 u, k6 ?
! b2 g% r( F3 T: c, V9 t4 {
pLight->Diffuse.r += 0.1f;
+ }2 s1 r# Z$ b0 ~
pLight->Diffuse.g += 0.1f;
. B6 z. p* t% b1 n4 d' s1 Q' _+ G
pLight->Diffuse.b += 0.1f;
$ q& `$ t, X% u3 `6 H6 N# D
// oˉè* ??à?
/ z1 r% r* [' e( D, ^
pLight->Specular.r = 2.0f;
4 J! ~, v' y/ ]' x- q
pLight->Specular.g = 2.0f;
* v/ `: \: |) f# Y1 N
pLight->Specular.b = 2.0f;
7 D$ c% {$ C' Q' f' P9 Y: @# P
// á?oˉ
4 K" A' R% L0 x
pLight->Ambient.r *= 0.9f;
2 c' H" b0 H3 J" u% C9 E. w
pLight->Ambient.g *= 0.9f;
+ ]3 Q, z7 R& s* A& n8 z7 C9 Y, M
pLight->Ambient.b *= 0.9f;
0 o6 Z3 E5 f- f% i* X! u
@) O6 c" R T0 V E* q6 q
memcpy( &m_light, pLight, sizeof( m_light ) );
) Q X. P; Q% h
: s0 R* K0 S; G) S4 e7 T
pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
5 Y/ |& Y9 G1 O+ M( f
pLight->Appear( m_pd3dDevice, TRUE );
9 }, Y3 A! Z+ C2 K* {" v; u
4 g$ y1 G% r- |3 b
DWORD dwR, dwG, dwB;
4 v7 c, d. @9 k$ }' i2 F
dwR = (DWORD)( pLight->Ambient.r * 255 );
+ b& o& v& f% P
dwG = (DWORD)( pLight->Ambient.g * 255 );
0 X* a0 z7 N6 v* `: ]* F$ J* y5 U
dwB = (DWORD)( pLight->Ambient.b * 255 );
1 f4 b4 Y Z5 Y& t1 P
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" W& U z6 B( c# P9 ~5 A
}
2 v* Y3 l1 p1 h0 |8 F* u, J
}
7 M, a o2 q4 W3 J$ u
else
$ ]- |7 y8 b. o1 i3 j
{
' A2 {1 A! ~7 v4 T3 z
if( pLight )
" N9 R F9 w# w3 D6 F) X
{
( b6 v( X$ h2 }6 d+ s
1 j- \: S9 {3 @& a
int nHour = 8, nMin = 0;
# X2 @9 {- m5 l
#ifdef __CLIENT
0 A& g3 Q, D( {' ~1 |
// ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
, m, x6 U! J" ?, f9 Z1 c
nHour = g_GameTimer.m_nHour;
. I, c4 ~! T3 y
nMin = g_GameTimer.m_nMin ;
" L5 P; V. }/ G, p% s; N
#else
6 i y, ~3 b8 L, l8 R \) j
// o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
' q5 t* ^! N1 H% o# D8 j6 F
if( m_nLightType == 1 )
- Q% J% L- ~7 O1 J+ k% @& h
nHour = m_nLightHour;
$ e I1 |2 I% D+ O* V/ `" m( R* U
#endif
. u9 |4 o6 d0 ?6 @# B) `/ F
nHour--;
0 j q( G. a2 J+ V/ r9 P6 ?
if( nHour < 0 ) nHour = 0;
; t# w4 b& |* y- r2 R& u$ F. W3 U
if( nHour > 23 ) nHour = 23;
/ [+ \7 }: X/ U% s0 X6 N1 A ]0 u
7 v- i R" S! ^3 _. v/ G+ Z
//if( m_bFixedHour )
0 i/ }+ M& U8 a1 ?: g% `* [
// nHour = m_nFixedHour, nMin = 0;
+ @1 Q5 \# `# h% {# s
LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
" J7 }! D- F4 h1 n% S) S
LIGHTCOLOR lightColor = m_k24Light[ nHour ];
' w% D) u5 u) N S: V3 d! C) a# _
# i ?' I+ f2 a
//m_lightColor = lightColorPrv;
/ M7 P7 ]$ \) m/ _3 `
lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
# i/ n$ G" p' z/ L8 {7 m
lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
) N, [; I" I5 R- G2 z. L- X) X( q
lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% h g* J# L( J- d* H
lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
/ e: t& Y" a/ O& H% l1 |
lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
# f3 v, y" n9 h7 h1 ~. _3 T1 M
lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
& |7 t1 R1 d& o) W9 w
// 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
! ]6 l3 e2 K0 X! q |/ `4 {7 s9 X
: D" x3 F1 H- v Y5 c% V2 p
// à??μ oˉè*
; I- Y+ J. \3 q$ Q. y
pLight->Diffuse.r = lightColorPrv.r1;
" L4 ], Y7 S, X' b8 }
pLight->Diffuse.g = lightColorPrv.g1;
5 S( e" ]2 A9 Y* u7 b
pLight->Diffuse.b = lightColorPrv.b1;
( i1 R8 D% A7 a
// oˉè* ??à?
1 h+ c T8 p- @3 }0 Y
pLight->Specular.r = 1.0f;
( @! v1 u$ a! e8 J
pLight->Specular.g = 1.0f;
) h R( E" x1 U4 O2 ]* R2 R
pLight->Specular.b = 1.0f;
9 \' R8 y/ D5 f" i+ o, A
// àü?? oˉè*
* Z* j5 N0 t, x
pLight->Ambient.r = lightColorPrv.r2;
! c7 q+ g1 U: j& K# R: Z
pLight->Ambient.g = lightColorPrv.g2;
- a2 y, [5 m! z9 _
pLight->Ambient.b = lightColorPrv.b2;
0 O; R( d1 C% W/ w( u0 C
% ^8 `; L d* z
if( g_Option.m_nBloom ) // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% ]& l( N$ o! [. y# J6 r( S
{
: @, ?: m% O+ B, o
pLight->Diffuse.r *= 0.6f;
9 G2 K- I+ A7 {& N
pLight->Diffuse.g *= 0.6f;
! L& y, f# w, x( d8 O7 k
pLight->Diffuse.b *= 0.6f;
! Y4 J% |- a) b# W R) p$ A: M( G+ o
pLight->Ambient.r *= 0.7f;
T: K9 P1 A' a6 J5 `/ \" T
pLight->Ambient.g *= 0.7f;
- D8 S7 W- L( X
pLight->Ambient.b *= 0.7f;
, J6 o$ F |+ m4 A2 H2 ^8 n/ [. Q
}
/ W8 N5 `) o* T( q4 l) B' X
1 \) A3 @5 c3 |- r. o& ^3 a( E
#if __VER >= 15 // __BS_CHANGING_ENVIR
" X9 n) }1 m# b5 H/ }
if( g_pPlayer )
% n7 z9 K2 b( ~- l6 z+ d$ @
HookUpdateLight( pLight );
6 O7 m5 L3 x$ z5 E6 L
#endif
0 Y' F3 d1 m E- m, k& Y( ]" E
memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' H q) ]9 K8 P+ c# A1 \
2 o+ z! e: }+ K5 x3 N* @
#ifdef __YENV
1 D! ^/ p. V) @$ d" i
pLight->Diffuse.r *= 1.1f;
- d2 C! t& H: [: m: a
pLight->Diffuse.g *= 1.1f;
' V% Z) M# h8 B4 P4 U2 {
pLight->Diffuse.b *= 1.1f;
) D. u) _4 ]0 S
// oˉè* ??à?
: Z8 O- z/ J" ~% @& u) l% K
pLight->Specular.r = 2.0f;
) x; o6 A0 U5 A% ^
pLight->Specular.g = 2.0f;
. i) A/ u$ ]. N! T- }0 \
pLight->Specular.b = 2.0f;
9 ^# i( N4 b- w. s% U& a
// á?oˉ
# m6 p( ]; t: Q
pLight->Ambient.r *= 1.0f;
. J- I* V& h) t
pLight->Ambient.g *= 1.0f;
* r" n& |& N5 K9 T5 {/ Z
pLight->Ambient.b *= 1.0f;
$ x/ x! `, U$ m c/ G
#else //__YENV
/ m2 w6 @, a5 l" p9 m5 |
pLight->Diffuse.r *= 1.1f;
1 D7 ]* X8 c' }/ r" s* X+ y
pLight->Diffuse.g *= 1.1f;
; O5 y4 i5 q) t, c4 {' B! @
pLight->Diffuse.b *= 1.1f;
7 u0 s) ~8 r4 n( o- J7 V3 u
// oˉè* ??à?
% O/ l+ ?# p: Q/ t0 N9 P' C
pLight->Specular.r = 2.0f;
. @/ T- p9 Y& a ?4 S [! i8 R
pLight->Specular.g = 2.0f;
/ e0 W! j. Q& E( Z' c
pLight->Specular.b = 2.0f;
$ K h. f6 \2 h. X9 V. Y0 C. I
// á?oˉ
. g) p/ @* J8 }6 `9 j
pLight->Ambient.r *= 0.9f;
8 x+ I, c8 E( p S
pLight->Ambient.g *= 0.9f;
$ ^) J% Y7 p9 s% G
pLight->Ambient.b *= 0.9f;
' v, ^: a( J9 D2 q7 F7 J
#endif //__YENV
/ b. m: U- T4 e, j8 f
* k+ z7 G: h" U5 R
memcpy( &m_light, pLight, sizeof( m_light ) );
5 _; R4 B: Q5 T) I; w- X
, z7 Y8 U& j) t _9 Y' o" a
D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
' ?1 s/ `) u; v
D3DXMATRIX matTemp;
) ^8 t- A' a# d3 t
static const float CONS_VAL = 3.1415926f / 180.f;
$ G' j. b- \6 o, ~+ Z/ k) z
5 R( U: j6 G, e& f( u: x; N9 S
D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
8 k+ U/ T1 j" a$ G# Q
D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
2 g# Y; {8 \) E1 h6 d
pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
& @, O" _. y8 \3 r
pLight->Appear( m_pd3dDevice, TRUE );
6 H% Q0 {% n2 e7 f
5 @! O! d% v; i7 t0 h% P; T2 r
// D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
( |* w+ N1 B. O/ ]
// D3DXVec3Normalize(&(vecSun),&(vecSun));
5 g4 e M5 d) P) t3 D
// pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 L4 r$ x7 ^; i9 b8 a( W
: L0 b3 L4 o, V7 g
DWORD dwR, dwG, dwB;
0 d" X( J- E$ e
dwR = (DWORD)( pLight->Ambient.r * 255 );
6 {4 ?3 L# u/ P u, s; j& s7 L
dwG = (DWORD)( pLight->Ambient.g * 255 );
9 t$ L# X A, x, _( T
dwB = (DWORD)( pLight->Ambient.b * 255 );
$ c0 W, x4 {8 e8 b3 v3 {
dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 ~% h- P2 M9 y
}
8 \( l# O' ]( ?4 M
}
; Z! r6 P- F, l! e/ B2 n
; }# h6 f, G! e+ T: p' ^
m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
9 ^4 ^+ F2 {1 q6 n% U$ a
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) );
7 B; _+ @" C v( s: K; ~
::SetLight( bLight );
7 y0 U+ P b7 [' \$ h% t0 X
! I% p$ [5 @- _
// ±ao? ?D?í???ó á¤à?
+ n5 `5 L, E- E# R- y" z/ g
m_pd3dDevice->SetMaterial( &m_baseMaterial );
+ r% b, w4 c5 P- r: {4 C
9 `$ b/ q" B8 E, V% k( u
#endif // not WORLDSERVER
8 V) n8 S- @' p% o3 j* u
}
+ Z7 ?* @1 a; |3 v
并更换
: l2 l# z, }' ?7 I3 a6 d
Code:
+ U, b! n, c- n# D3 }
__FLYFF_INITPAGE_EXT
/ | R" E" E/ O+ I1 G. o) @
定义
9 m4 J; u ] F/ D9 G
; }3 N( ]* F5 h6 n2 K
% t% D0 P4 Z5 b" {$ r) q5 a
$ a; n- c: F9 \/ j6 w+ [3 z% a
4 F8 @, D/ E) D+ {
现在终于删除我的狗屁加速...
: D. K4 K& \3 G3 Z& z% G
* @; C' E& A$ z- c- m
" |$ `; `" U/ z0 y
* N" m2 U! Z: c5 S, K$ b% A! @
欢迎光临 飞飞世界论坛 (http://www.ffwold.com/)
Powered by Discuz! X3.2