飞飞世界论坛

标题: 自动饮血和登录视频 [打印本页]

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
8 J, V& _0 j9 |7 l- i6 E尾翼:8 Q1 R0 O* z* K# l0 f- N" ?

; ]: i, j3 |" g+ n  K% k8 B8 i代码:; P: H) X$ W$ F& M1 ?+ R/ d  I
CWndAutoFood::CWndAutoFood()+ F& J+ F% A1 z! y# i
{
1 |6 j( ], |! Y5 O- c6 I        m_pItemElem = NULL;
$ u' ^* o! q2 e. B        m_pTexture = NULL;
: {4 J8 Y+ ~4 |  b* r        bStart = FALSE;1 B& f" v3 Z& {7 I; k6 i# [
}
+ K! ]3 ?1 W3 u+ T: O
! G7 y- n0 R- @CWndAutoFood::~CWndAutoFood()6 [0 y* l4 g1 m8 z% J  z
{8 `$ K$ K- S# ^" _: m3 C/ O
        AfxMessageBox( "AutoFood ist gestorben " );1 `" h/ Q- {% V" ~- v6 J3 u1 Y1 O5 w5 H
}. |6 I4 n/ Y, T. B* `0 m' P
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType ), [3 C0 }8 b: F  i+ F
{
; V1 n( J, J- y# G1 p        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
# v2 @, r+ J8 ?3 A2 B}- s7 w; O/ F) r  J
, _$ n# S& @1 Q
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )2 i" w+ m, I1 f$ h
{& N: J* a; v1 k! ~2 f. i* Q  ?' N
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );5 e" b. h$ z+ c1 J
        CRect rect = pWndCtrl->rect;
5 t, `# ~6 u& r" F; Z7 V- Y8 r5 ~        if( rect && rect.PtInRect( point ) )
8 l0 K8 ^# l' o% O, l; C        {* @! o" M. w6 i% n/ Q% i  E! g
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );5 j) V! x" j  ^% }2 |* N
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )  M5 J6 z+ P) B0 F0 s3 l
                {
& Y1 s% R4 |  p, x0 r% p+ p                        if( m_pItemElem )* k% U5 P$ Y" w
                        {( ~+ N% Z" s* N/ d6 y& R0 F
                                m_pItemElem = NULL;
9 i* ?( C( g( {# m  w/ }# P                        }+ g( v- N* Q3 L  q: U! @" m+ s
                        m_pItemElem = pItemElem;
, V( G% F3 E( V: k5 d; }1 Z* F                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );: Q. o  l  v: B
                }else{
. a% c6 P8 A5 F: g                        SetForbid( TRUE );1 K: J) |% m( v& f# u! K
                }
9 `' V# Y7 l" ^. G/ V6 p: t        }else{
8 W: [) e$ m8 [' q0 d                SetForbid( TRUE );
0 L$ g4 v' U: L- T" v        }9 C1 b1 G; F0 r% C- ]8 M5 C" ^, R
        return TRUE;( E. \& i7 j! u6 k- v. H
}" D6 s* \* Z, `  y) j6 D
( A8 S- g$ a$ E! @: N
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )5 ]- S5 O- D2 z1 x& b
{7 d# g" A; l0 ^- e4 ]  _; u
        switch( nID )8 ?' w$ C& n. J, _3 R( R# C% {
        {
" Z* \; f$ i: x& X; x" N3 j. m; J        case WIDC_BUTTON3:: W1 o4 W+ f1 d# q
                {
& _/ g! p) I9 Q                        bStart = TRUE;
3 U7 h# S! `, ~' `0 z2 E                        break;
( ~/ K$ L/ m; R5 H7 z! [! ^                }
& J' M  x' d: l8 K" J) ?* W  A. b        case WIDC_BUTTON4:. i' k4 g( r; n; I
                {
  X4 [# u# x- J$ s2 F                        bStart = FALSE;
5 W  z# v  C- B2 @7 x6 k3 a                        break;
# ]. P5 K& g# s: }9 x                }
9 g- M$ A/ D; N% A' G; m) N& {        }
: E& @0 o( E8 h6 u: {/ s        return CWndNeuz::OnChildNotify( message, nID, pLResult );0 v1 G7 T3 J( Y# J+ j7 q& y
}       
/ X, B( Z; K! b2 G% Y1 ]& V0 nvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
  `5 i* T5 D* t* N& n{
8 ^, x7 Z* \9 \2 L& {        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
. Y0 i3 S! {6 ~: k: `4 N: B( B1 [        if( bStart || !m_pItemElem )
) ?/ o& ^5 e3 T0 g        {
# p' F. p% _8 F                pBtn->EnableWindow( FALSE );
0 y) e. K1 U) {8 C: ]        }else
" {; ^* P0 U: K' \4 v                pBtn->EnableWindow( TRUE );) P8 _7 y8 _# z7 O$ ^) U1 l% d- l
        if( m_pTexture )
2 J6 v. n/ i& ^$ n6 W2 {( J        {
3 z! N, S8 S+ w                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );3 e8 [, [0 v7 X; u  a7 b! e
                if( wndCtrl && wndCtrl->rect )
; I: P9 T( |9 V+ C' P: Z% i  y' N  `                {
, U# H" J. d/ u4 s  c2 b% k                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
8 e2 ^) d7 m& }: y                }
3 A: V4 V, G5 w+ W2 N/ Z# \        }
" k* h3 @2 I( i7 r" F}) e* G, J. P' K7 Q  S& g
. B, A* S, \/ E2 @  j+ ^  g" W! W
BOOL CWndAutoFood:rocess()/ J& x1 U% r7 j5 n
{5 o& G0 J  s# }. [+ w! |
        if( bStart )
9 o$ O& c, [$ C        {3 B: q; r+ {5 M9 ^& I
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
$ A2 n6 Q+ T. C; \3 n                {2 b+ z9 R% h" U! b
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )6 e8 c+ a3 J0 `) v4 F. m
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );1 I+ H, }1 T6 y- O9 \% B6 W* C$ t
                }else{
& b" t: H5 R, Z9 W6 w8 E' k! [3 F3 A                        bStart = FALSE;; ]+ ]- m5 w, y, V
                        m_pItemElem = NULL;" |! S4 @* k5 @6 U) }
                }
. t. H. Z! q! O' ~" c& w        }
1 C& p2 j+ H( b" F* ?. ~+ T        return TRUE;* _3 {  X2 W9 \: ^! Z% U4 ]9 O
}; p+ T( c6 r9 \& j5 D2 C

+ [' E# U4 F9 d) h0 h登录视频废话:0 a. C3 S& q' S8 d9 g
尾翼:
5 v7 s% B1 p/ ~, @' i
7 I. G/ ^7 A% f: D' _% q  ^* h代码:
5 m) ]6 N- D; s' B4 S+ m# d3 N$ p+ l" h: @: A
void CWorld::SetLight( BOOL bLight ). C2 g, I% Q( ~
durch
7 ~/ m1 U' t6 l; p; TCode:
0 P+ ?! n9 ~; ^void CWorld::SetLight( BOOL bLight )
0 e- Y/ G5 S; ?; x5 p8 L& P{
( c5 d, G5 g+ C        //ACE("SetLight %d \n", bLight);
1 M* q3 t1 t3 Z6 i" D        & ~6 D* }- c9 n. f
#ifndef  __WORLDSERVER - c3 `* |& [8 f6 ^
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);' v) o6 m# x8 ?8 ~% l+ ]7 o; Z7 g
        CLight* pLight = NULL;1 x: x9 m+ X+ L: e

9 o$ m8 }- a8 I( ~* R) J& P2 f        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );# r7 s$ Z7 \. R" ]3 j# T
' R& `) e& ]8 n1 a. C( C( ]- Q
        pLight = GetLight( "direction" );8 @/ K9 u" W8 o* f* @

7 W8 g. s& \5 H6 q( Z#if __VER >= 15 // __BS_CHANGING_ENVIR! j( h0 W" R7 e$ ~/ t; t
        if( g_pPlayer ){2 u" T1 H+ S$ G& ?
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
7 l" F3 `* r2 Y# P/ E                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!7 B, M+ Y0 Q2 C% Q, ~4 [% r7 G( P+ s
                {
8 W3 V, \  \# h                        if( pLight )$ Q( Z4 Q; Y7 T/ W
                        {8 _! R# G6 u: v8 |% K# h
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];5 X4 E! `5 R5 X* A5 _3 V+ t6 P
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];6 ~% M' K1 q! \# m
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
# _1 @  b# A% x5 L
+ h: A- a! ~; [- J9 ]  N6 n9 H                                pLight->Specular.r = 2.0f;% b2 l5 i6 I1 }4 L7 [* Q7 j
                                pLight->Specular.g = 2.0f;
7 I* X- `& _& E: Q/ U: K6 H4 \' q                                pLight->Specular.b = 2.0f;/ }8 k8 E/ r) X1 k" `# w% m3 n
        0 J8 [2 T: T" ]  R
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];% P8 \( v- b1 u0 i
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
8 a0 k+ M5 \# P7 q' b7 j& N2 S                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];" ]4 b* V* G: O/ Q1 p
        - X4 a# x" X4 y, ]0 n
                                HookUpdateLight( pLight ); ( G5 {& i) d! P+ @* f. A

* i, k9 @) ^/ a5 u4 a6 J' b                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ E% }, _. ]. W                + }- W9 [1 G6 s% M6 Z! h. N& e
                                pLight->Diffuse.r *= 1.2f;2 O4 }( {3 i9 u; O  u" k
                                pLight->Diffuse.g *= 1.2f;( [/ z) r, e! J
                                pLight->Diffuse.b *= 1.2f;" \8 L+ T# A9 _& h

- d1 d* D, `+ w3 f8 S) {                                pLight->Ambient.r *= 0.8f;
3 Q" j/ D) n. d                                pLight->Ambient.g *= 0.8f;2 w( l5 ]$ n& e& t& H
                                pLight->Ambient.b *= 0.8f;
2 V  }& B8 h  y0 Z2 Z5 E        ' D# k( e2 T- M  l
                                memcpy( &m_light, pLight, sizeof( m_light ) );
) w7 b# \& O# C0 Z  U3 ]; r% U: c8 {) K; @# Z2 _
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
& n' [' D9 t. a  K                                 D3DXVec3Normalize(&(vecSun),&(vecSun));8 G" F. k; x$ G$ }
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 2 T& |7 @. j8 p+ [
                                pLight->Appear( m_pd3dDevice, TRUE );& u+ v5 I0 _: g& O) K% ^# J
                - D- K# M! B3 H! P( Q/ D) w* @
                                DWORD dwR, dwG, dwB;2 j5 [' |( R' y8 J4 Q# B6 R: V
                                dwR = (DWORD)( pLight->Ambient.r * 255 );$ E% W2 Y' J( \5 A( J4 p8 V
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
. h" R5 `, [0 i& Y9 a6 Q                                dwB = (DWORD)( pLight->Ambient.b * 255 );
( k  @/ _* A$ ]- W7 @: o. U  o                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" T5 f+ ?* ]/ _  _* |                        }
+ y" c0 g- P& f1 ]2 K                }2 I$ [' ^2 N3 b/ a- e2 X
        }5 g* C: N8 U0 q5 s: B( w
        else% }( k- j/ r& W. n" o
#endif
# Y% ^6 q3 k7 o
! b; d+ n% S; e4 n. a        if( m_bIsIndoor )
( f7 }* r, }% O% k8 c        {
, A4 k+ t2 y! K0 t                if( pLight )6 }: S, G, C* ?/ }0 G" ^4 c9 h
                {                " p: H9 o, l5 f& J& B
                        // à??μ oˉè* , {, s4 T  S. {' _, s( ~4 h
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
: i' t1 C3 q9 r6 E                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;" K, n9 }4 z" ?0 e3 v$ g% O; F# d
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;5 k+ o% H5 L( L$ \
$ q4 J* {" \$ P0 X* u9 y
                        // oˉè* ??à? " k6 I6 m  r# v$ x2 |8 F6 @: J3 j& u8 C, r4 ^
                        pLight->Specular.r = 1.0f;
* y+ ~, r6 n6 `8 x                        pLight->Specular.g = 1.0f;
! O$ H" e1 @9 B. C2 g2 k                        pLight->Specular.b = 1.0f;
9 D- G8 E6 `6 a4 G                        // àü?? oˉè* 3 ~: d. d7 u8 s. E6 }$ }" z$ O
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;$ U" O( c0 Q7 ]6 W3 ^
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;+ Z5 t4 ^' V* ^9 Y6 [( L' p, K
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
% B; p3 O9 B8 k% M* L! ~5 H; \( z8 f( G% K7 ]
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' M8 X* v: X; ]/ A) i1 y- {3 |                        {# H" k  M: x5 a8 g2 G: A7 ~
                                pLight->Diffuse.r *= 0.6f;
" o8 p7 O. |! l/ T                                pLight->Diffuse.g *= 0.6f;
- N  }4 h5 W2 M# m6 e3 T                                pLight->Diffuse.b *= 0.6f;
! l* o$ y6 D7 }6 s                                pLight->Ambient.r *= 0.7f;
% ~2 z0 _$ w. N2 z3 U/ P& }7 l                                pLight->Ambient.g *= 0.7f;
) j1 x/ x  {5 n                                pLight->Ambient.b *= 0.7f;# Z) Z/ f3 s4 ]) |
                        }
% {4 ~; p& m, d- B2 r* H. ^6 P. b2 o+ K  L( g
#if __VER >= 15 // __BS_CHANGING_ENVIR) R- x0 `6 O8 d+ B
                        if( g_pPlayer )( i( R; @1 ?' A
                                HookUpdateLight( pLight );
  I  S. Z9 d) ^6 P6 o#endif9 j. }) V" g2 t8 x
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );) Z/ g5 }7 z4 V, ^

- P8 a+ f) \+ k, X9 v# O9 \                        pLight->Diffuse.r  += 0.1f;
; @; x4 |4 I4 k6 d                        pLight->Diffuse.g  += 0.1f;: e, g3 Y% G4 \
                        pLight->Diffuse.b  += 0.1f;8 r2 X% k% Q1 E. s1 o5 G( M* m
                        // oˉè* ??à?
& h) _/ m( l  ^3 |                        pLight->Specular.r = 2.0f;
& w9 d5 o, _4 w' o9 H7 A4 h                        pLight->Specular.g = 2.0f;$ e7 F! j( L0 t( ]
                        pLight->Specular.b = 2.0f;9 I# m. t% v: A2 h
                        // á?oˉ ) G9 {& W8 t6 A) p1 e* A
                        pLight->Ambient.r  *= 0.9f;+ T' d5 z7 }0 W- d6 d3 ~  R4 N% I
                        pLight->Ambient.g  *= 0.9f;$ W( f. i0 |$ i( h
                        pLight->Ambient.b  *= 0.9f;
# z' }8 F- F. U% T/ p2 `. k- N  S4 a( e2 Z3 o- S
                        memcpy( &m_light, pLight, sizeof( m_light ) );
( F2 Q. i8 x$ }' ^: A% G* C- k                          P6 o# J6 D# Y+ B: L0 M
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );4 G4 _& N5 M( I
                        pLight->Appear( m_pd3dDevice, TRUE );
0 w5 ]+ K. s) B& R' r. L# M7 ]7 z       
9 S. m! `; {# v" U" |                        DWORD dwR, dwG, dwB;
* w; g' W% |/ K: D/ d                        dwR = (DWORD)( pLight->Ambient.r * 255 );
$ }4 A6 a- T; g  ]                        dwG = (DWORD)( pLight->Ambient.g * 255 );
' `6 e) X/ v4 i& Z3 ]; ~( n3 x! b                        dwB = (DWORD)( pLight->Ambient.b * 255 );* i8 G- ?6 M0 U" @& H
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 w* G- d/ y7 O7 p- }# f                }
+ M% X4 o) V8 H2 ?2 U9 x: T* d/ `7 G9 d9 V0 n        }: r2 r5 r) z0 p+ l% T4 u5 g
        else3 G! C/ K9 `* g4 Z4 Q: C
        {8 X" h9 H+ C( t" L- C$ U
                if( pLight )
! I1 A1 K, j) S+ v& V3 z                {3 p' R' g& c. ?' `6 [0 S
               
4 T5 R' m- r' c" K                        int nHour = 8, nMin = 0;4 B- h3 X& ^7 F$ _6 t# |
        #ifdef __CLIENT
+ M# ]9 V. Q7 l                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. # T0 X9 }0 b2 h3 s3 @; U7 n8 y
                        nHour = g_GameTimer.m_nHour;
, m4 ~6 g6 f* d                        nMin  = g_GameTimer.m_nMin ;/ S! ]* ^8 I) m: U% x5 D4 q3 c% s9 e- K
        #else
6 M! [/ s, w4 C                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
0 N; @( i; Z4 |2 ?4 R: P7 @" f" B. l                        if( m_nLightType == 1 )
2 A. t, z/ ~( v, C. o                                nHour = m_nLightHour;& H5 A+ W% _) `& y
        #endif
, P' D+ n$ Z3 u1 _4 ]                        nHour--;
8 y* ?5 c) ]" ^% P9 [1 P                        if( nHour < 0 ) nHour = 0;
3 R4 {2 \9 w$ J( t% A2 j                        if( nHour > 23 ) nHour = 23;  F8 J2 ~, a& `; o3 y/ _# m: h
: y' K8 }5 v) b1 Q3 y$ ?
                        //if( m_bFixedHour )
. w0 m& c- H4 n8 i$ J; b. J                        //        nHour = m_nFixedHour, nMin = 0;
* Z- w2 o9 a$ F' f                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];- X2 y2 q4 H/ J. F
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];# j' M6 x$ @7 {7 B

& k$ N/ J- y4 L. N2 A$ w                        //m_lightColor = lightColorPrv;
8 A% n: H: i3 E5 S% D, n* @( k                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
0 d( m" \! q' q: n. o3 v                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
& N9 D) p7 g2 Z                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;; u! U3 V1 K7 F% N+ \4 p" f0 E
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;8 t0 w% `2 c+ f! _
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;  S- J, p+ O6 g/ {! u1 B
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;0 D4 }! g& z% B8 Y' z
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
8 x: ?+ f) g+ H% l, X, n2 c6 A9 O/ d) F7 \; c6 |; X  Y) d
                        // à??μ oˉè*
' T' l, h) A; [: o1 H* w- r: Z                        pLight->Diffuse.r  = lightColorPrv.r1;8 d, S# B" \6 X) \0 m, p( @% b
                        pLight->Diffuse.g  = lightColorPrv.g1;6 E8 S# c. A0 a9 u0 _
                        pLight->Diffuse.b  = lightColorPrv.b1;
5 f0 y$ f/ j$ L' @9 s                        // oˉè* ??à? $ N( k/ `0 w- v
                        pLight->Specular.r = 1.0f;
$ C: ~& D1 P. i5 g# i& X  a% e                        pLight->Specular.g = 1.0f;
( |& m# d0 [1 r& z/ K: ?                        pLight->Specular.b = 1.0f;! |% b. g4 F7 Z4 P* a- G, n8 T
                        // àü?? oˉè*
, O  S. _/ d; M                        pLight->Ambient.r  = lightColorPrv.r2;
* ]: @' i5 m1 {2 x9 s                        pLight->Ambient.g  = lightColorPrv.g2;
. j4 D7 t1 f. d                        pLight->Ambient.b  = lightColorPrv.b2;7 w2 e2 J2 U/ I3 c
* L  R. s- m, {+ s' Z
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.& l; i# Q. p  b
                        {' E+ D5 w1 c! h- t1 u4 T
                                pLight->Diffuse.r *= 0.6f;
) X! F, b- ?# p1 `  @2 C! }                                pLight->Diffuse.g *= 0.6f;
8 L% X: b+ l6 w                                pLight->Diffuse.b *= 0.6f;, T7 R0 y" L/ L1 C- }
                                pLight->Ambient.r *= 0.7f;
$ v) l) z! F4 V) m- j, }9 @                                pLight->Ambient.g *= 0.7f;
$ A8 c4 d' \! y% a! P7 j8 u3 R                                pLight->Ambient.b *= 0.7f;
, e( O# W" A2 k% ?5 p- {                        }
7 D4 d! i2 I$ k6 Y                        7 c! [5 w3 y+ o$ U$ `) m% u. Z( l% ]
#if __VER >= 15 // __BS_CHANGING_ENVIR
0 F  ]1 A* s5 l' c& L% @                        if( g_pPlayer )! j/ Q$ ^/ D' F+ I7 y3 q$ ~7 {- C
                                HookUpdateLight( pLight );
  {9 b0 f( g9 T#endif3 d% V  C% B3 o4 B- [
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );, k+ ~6 Z# t* T, b8 n

% N8 J/ D" o" G$ ~7 ^#ifdef __YENV# g6 m1 F  G4 {* n- i' L
                        pLight->Diffuse.r  *= 1.1f;; F4 z4 c4 @. U8 [
                        pLight->Diffuse.g  *= 1.1f;, x. `  _. N$ H% Y  w4 ?0 I
                        pLight->Diffuse.b  *= 1.1f;9 `" }: \& E3 Z# a* l
                        // oˉè* ??à? # w1 `  M1 |0 S7 Y* D
                        pLight->Specular.r = 2.0f;9 k2 Y+ @1 ~+ k0 t: p2 p6 n! t
                        pLight->Specular.g = 2.0f;9 Y$ T; k) F+ n5 E# I7 ?
                        pLight->Specular.b = 2.0f;7 v8 u' _1 A& V) l% C
                        // á?oˉ
' M0 \0 Q, R+ ?  ~                        pLight->Ambient.r  *= 1.0f;
( Y1 {! P3 }0 d( [: G8 }                        pLight->Ambient.g  *= 1.0f;! Z$ g  X0 f. \3 b& k, g
                        pLight->Ambient.b  *= 1.0f;+ C9 y$ G# x# |
#else //__YENV9 o' K* m$ J3 _. |( L/ w* ^' H& G" X
                        pLight->Diffuse.r  *= 1.1f;
" P* s" N0 q# r* u0 s0 Q+ V" B: V                        pLight->Diffuse.g  *= 1.1f;
  Z! g, x" Y, e                        pLight->Diffuse.b  *= 1.1f;- }2 B4 y* u8 ^6 f# v! ~9 J
                        // oˉè* ??à?
4 B6 g1 F  u* ?                        pLight->Specular.r = 2.0f;
2 |3 E6 f' T& z# O( e                        pLight->Specular.g = 2.0f;
; q" E2 B" p3 h! t7 J* ~                        pLight->Specular.b = 2.0f;
, ~8 z* q  g4 U$ ~5 v; M. B                        // á?oˉ 3 B1 L* @( X" X# }% G' j
                        pLight->Ambient.r  *= 0.9f;
) F. Y* H4 ]( e- h. F8 _                        pLight->Ambient.g  *= 0.9f;5 `6 \( n5 w. R" u, s
                        pLight->Ambient.b  *= 0.9f;
" z; _) {, u7 ?#endif //__YENV 6 X# w( s- y4 E& s
                       
8 A+ ~7 s! Q' [# U                        memcpy( &m_light, pLight, sizeof( m_light ) );
2 A; u- ]1 C& e; t* [0 P                        ) `/ O: ]: Y1 E
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);* k- K* {$ O4 ?% J7 I: P
                        D3DXMATRIX  matTemp;- E, L7 r! B) e) v
                        static const float CONS_VAL = 3.1415926f / 180.f;# v1 K0 v0 a$ b6 s/ F
4 X# `6 J. B, @3 t1 h
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);8 J' A# \4 |& C2 e: ^# Z+ {
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);2 A% q) |7 m+ g' r( B
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); " Y0 q+ k9 m$ V, a2 r0 u1 t. |
                        pLight->Appear( m_pd3dDevice, TRUE );
, [- e. i6 W2 L7 W5 i* W8 f- w/ q! i0 ]2 W* d- a7 W" c; X$ N
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 s5 a: B0 O. @                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
) X" \" l0 q# _                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); - L6 R$ q. U; x  ^5 E  M8 V3 J
- i, d/ j& |6 z9 G
                        DWORD dwR, dwG, dwB;
4 u' r& Q8 R* `/ E0 ]                        dwR = (DWORD)( pLight->Ambient.r * 255 );! ]1 ?+ M) [: v! D
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
  H8 [, f4 g2 s2 t& i1 w                        dwB = (DWORD)( pLight->Ambient.b * 255 );
2 T  R+ s* e  X: _                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        3 T4 x) b. w: O" f" s: f9 `
                }) y. y8 I4 q5 z
        }
; g: o1 x0 y3 q2 n+ Y( K' e2 V: y* C, S/ |0 Y2 G
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" T& `/ m& h" |9 Q# w* T  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) );
1 Z" i6 S; T4 c6 y7 W! b9 S. W        ::SetLight( bLight );
  ?) J0 k. A5 ]0 G9 k' {" S
! P1 G4 ?: O2 y3 F* v        // ±ao? ?D?í???ó á¤à?
9 j1 R, x( o* D) z. K9 A: O2 E3 k        m_pd3dDevice->SetMaterial( &m_baseMaterial );
% N* [$ ^8 Z7 W8 A4 }       
4 O$ Y( a2 ?( ^" C& Q/ N3 S#endif // not WORLDSERVER/ K6 G5 c) l' t8 s' N7 D; C
}
) U' E& r! S# F: a) j2 R并更换# S  D1 |) l2 F) C; w
Code:9 k3 Y5 p: k" P4 y
__FLYFF_INITPAGE_EXT5 v. a( m; f7 `0 m! g: a
定义
0 W" i; L( C( z; A. ^6 Y
! m; U; N% \0 N# j) @! ]8 K/ w4 L* X0 |2 }9 o0 C$ D
! K# c$ j. T" V) c$ ^9 P

8 f- y. y2 D; \0 `7 h& {现在终于删除我的狗屁加速...
9 c* x  G3 L7 q9 [6 d5 r% q5 P4 [  H; }8 B

& {( D0 T+ [$ u/ F+ O6 i6 Q8 N
9 k' l! c* q- F/ @2 x6 ?5 B. w( ?& P




欢迎光临 飞飞世界论坛 (http://www.ffwold.com/) Powered by Discuz! X3.2