飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:& ^6 n/ }$ [! o* ~$ |5 h
尾翼:
0 e3 U! S- B: ]4 E/ i8 d7 s- p2 J
代码:7 M! Y. @- C( h( s2 _
CWndAutoFood::CWndAutoFood()
. ^# h1 n, m) V, ^% e; m: M{
' r( P5 z2 q6 |0 H. N) M        m_pItemElem = NULL;
( ], ~  R1 m, K; k- C; E. Y- r        m_pTexture = NULL;. u5 W: h) R0 e# @0 G6 }: q) k
        bStart = FALSE;
/ v+ q% ^. P( ]+ `}3 w% ?1 ?" I! y: m# W7 d8 v% j1 E

1 j" _; Q* b/ ZCWndAutoFood::~CWndAutoFood()
7 _& A( P" N3 |! a6 p/ a) a{
) `; B8 x% ]" b2 E        AfxMessageBox( "AutoFood ist gestorben " );) W* w% ?6 S+ J: I
}
% |4 t8 a7 T, g9 M' C2 [7 tBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )6 ]4 [- `& |( ~2 u% E/ f. L
{$ g) ^. J. O: G& ~0 D
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );2 ]! M3 x- A' }
}
: H% l# W- V# \' }  d# ^# L1 j! [6 Q; u$ v5 l  w3 N; s! U- d4 D
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )  G) ~2 B" u1 m9 B/ A! c/ |9 y+ H
{
9 h3 ~& N5 R( ^2 f+ C$ T/ x& W( j2 j        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
; [' C5 i: w" p4 J. L+ X) V        CRect rect = pWndCtrl->rect;: i! M# R5 Q9 F% N9 K- @3 D( V
        if( rect && rect.PtInRect( point ) )
- }, P7 ~2 s0 B        {
% ?) P# M- s2 i' \- g( b5 H                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
! u8 g7 O" V& L/ [                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )! B* X. H. B2 k- `2 M
                {. ?' i1 N8 e3 o( w
                        if( m_pItemElem )" Y) d8 W) E, p+ J  r" k1 L
                        {' t8 L$ I: \$ r
                                m_pItemElem = NULL;
; L8 }" l* G. N' b                        }1 h; s* I. d% j$ Y% C& u$ r
                        m_pItemElem = pItemElem;0 H) E# e- j7 M  e- ?5 z; {  w
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
$ t2 d# _6 K# j3 p; q( C/ l                }else{
0 x5 s9 e: e% Y- x0 K8 B1 g                        SetForbid( TRUE );
+ t5 `$ f0 I# v. c                }1 b, U0 m9 P$ r5 t2 a. F
        }else{
; l8 c+ F% B; ^                SetForbid( TRUE );0 P9 ~; E7 P$ ]4 `$ F) Q
        }2 }( L! `9 w. f6 B$ n7 D! i& T' c
        return TRUE;
* |! L9 F: c0 m, E) p}
  ^  Z: U- f9 k# a: @
* {- d' @% q# p1 C) h5 M% U( ?BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )) j& p2 W4 L& g0 I5 I0 A: k
{( V* l# ?; V" D, Y
        switch( nID )  T2 {2 p% D) s7 B7 G
        {9 g2 d+ L  J2 v, e9 A  I/ \/ o6 M
        case WIDC_BUTTON3:
( K6 @8 b2 `' q' a                {
7 y) F6 i( ^1 @2 a) f1 s. S4 i* a                        bStart = TRUE;
; l) i: V, @0 Y: s+ l( S* z2 t: e; z7 w                        break;2 }, x' Y2 f6 ^" z0 f1 y  D
                }
+ s- f" j( |* `6 P8 W, \. |( T        case WIDC_BUTTON4:
0 g  j) |; c, I& n& p  I# c                {# _( r- P# a8 T2 H2 X  Q: y
                        bStart = FALSE;6 A0 C. V! u) e. G- B
                        break;
- u* ?2 L$ H. S! @! t- b                }
* H7 c: R& k2 Q" L        }6 ^7 X' B1 T7 l) w* P9 W
        return CWndNeuz::OnChildNotify( message, nID, pLResult );4 l/ R" t' b5 E: W, K! u! U
}        3 i5 V1 H* b1 U2 \% p
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
/ W" t& S) v3 S+ T{& v& k; ]* p( Z" J0 v# k, R
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
; t( l3 R' q) \8 @- ^/ [  t        if( bStart || !m_pItemElem )
. d2 P. U% S% ^) C  y        {
# M4 y& U8 s9 C% r1 g5 Q7 c                pBtn->EnableWindow( FALSE );
, W6 R; u' B$ p2 [/ O/ U- X        }else% R+ \5 M7 J0 K8 l9 |0 s9 c
                pBtn->EnableWindow( TRUE );
! D/ P  Q; D8 B) \) Y        if( m_pTexture )
* f6 Q% \" ?% p; f4 r4 Z: P; l9 g0 t        {
% f% L1 ^  Z2 y3 \  H" a9 `                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
1 k1 L: F4 ~2 @& N: I( e                if( wndCtrl && wndCtrl->rect )7 H) g$ j0 K: q5 v5 P
                {
& G- ~6 p+ d: W5 B* e  t9 K. \                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );+ Z% Q! y1 W0 Z9 s" ?
                }4 ^' ~7 r7 e; e
        }0 G5 R) r& j$ M. Z$ ~' [
}
# T* i7 w3 j/ ?3 e% h& Y1 n+ g3 \. d$ s' j8 a7 b) R  C
BOOL CWndAutoFood:rocess()
2 [( ~2 a4 N- h- e2 c{% r$ @4 N" N. {2 Q" q: f
        if( bStart )4 o# r. u- S) E6 l2 j& z* B
        {& z. [' ?8 o1 w/ I* \
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
" d; U( Q+ p6 a9 s: ^                {( u; w! W: m0 F9 ~
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
) _4 t, p' ^) z. ~! ]7 B& O                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
; j* N$ X, {  n                }else{
3 R3 y& x1 @6 @( K1 b$ ^& o                        bStart = FALSE;
: M! d0 ]9 }  d/ K                        m_pItemElem = NULL;; Q0 F7 U4 Z, I( Y7 t6 n+ Y
                }( q: i" n1 U) b7 C
        }
' M' k9 ]5 Z. u% g  m$ T        return TRUE;
% t: B, v2 _" q) C' _, _' Y+ I}
' X0 z6 r# i& |# Q  v+ y
8 O& l) K) V- d' e& Q/ M" m登录视频废话:2 s5 V. a( @% ]6 M/ ?0 P
尾翼:& O, R& m  p! E: n

6 _+ c( a2 K& u! l0 c2 k代码:
' Z; M4 y$ \9 a' B3 Y, g
2 U6 a; U& _# Uvoid CWorld::SetLight( BOOL bLight )- s% E) r6 i1 e3 r% V! O) S$ o8 ?& }
durch
) D3 B# m/ ~) aCode:) a/ A/ w7 s% `, ~! C% T: e  J
void CWorld::SetLight( BOOL bLight )* u$ e7 D8 n2 Q' T
{, f3 X0 i( p. V+ [  }. s  G4 I* N5 Y
        //ACE("SetLight %d \n", bLight);5 h; U2 U1 }2 S1 ^1 b+ I
        : L; N& w6 a( ^- O7 h
#ifndef  __WORLDSERVER   P  ]0 n) Z( j6 L. q' O5 ~
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);7 {* o! r( q6 @8 v- k% q$ B7 U
        CLight* pLight = NULL;
' ]- Y* U2 R+ P) R4 m5 C$ x& Y# u( k5 [
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );$ W9 t, w) Q; {8 D
. w- g( ?, T" l) `( a! O7 z
        pLight = GetLight( "direction" );
; s* u" T) K5 q; v8 L# {5 g, R$ z" v( j8 ]( `* D. q. A- k$ C- w1 m# C
#if __VER >= 15 // __BS_CHANGING_ENVIR
' e/ ?8 j9 G' y8 |' P' F        if( g_pPlayer ){
3 }  S4 G: y4 v& c& X& w                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
* A9 ~# w% o6 m2 F& _# ]                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
! M% i) ~" A" ~                {
( g+ j! t1 A* f' S9 Q                        if( pLight )) t; X. o7 W1 a* H! Z4 f% U/ f/ Q
                        {
, g: L1 c; ?2 w% C8 z, c$ ~! n. [5 Q2 W                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];& s& X% Q+ M* A8 x1 a2 u
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
  ^, t; b7 v' Q( j                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];  |3 p2 D4 `+ c( H* M) Q; x# _; @, n
- i+ T* l/ a$ j) A$ i/ F* f
                                pLight->Specular.r = 2.0f;/ y, [, k/ l; {! b
                                pLight->Specular.g = 2.0f;) N  ~7 h) Z, K- L2 h
                                pLight->Specular.b = 2.0f;
6 Q, |/ ?( H) m1 g8 k6 A        4 W1 O+ T* @+ O, y, w  i) p! W
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];" X7 ?9 ^' p  U# k( K) F2 x
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
0 M' U3 p& Z) O$ C7 C                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];+ L2 \; ?. q' E: w1 W2 v! I: `
        + q% `% S6 f* K4 Y( a. \. H
                                HookUpdateLight( pLight ); ( t. P/ X( Q9 ?- E; ^5 _
$ P+ o6 L! m8 t" v$ z0 q- i6 m* Q
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 ^7 B5 O0 g9 K7 j/ ~& d$ B' w               
% H+ b6 a8 q8 ?, p  y                                pLight->Diffuse.r *= 1.2f;
# p1 {4 j; L* U3 a9 B& w# V                                pLight->Diffuse.g *= 1.2f;
! w" f5 k6 f/ u6 n# Y                                pLight->Diffuse.b *= 1.2f;
$ P# }" y# o% |: h& b% ?0 h( E6 ?$ Z! d/ I7 _/ u+ c2 c7 f
                                pLight->Ambient.r *= 0.8f;
: p" C5 V- }2 s; y                                pLight->Ambient.g *= 0.8f;5 w6 {! z9 T3 F# O! t4 `
                                pLight->Ambient.b *= 0.8f;
7 x& j7 Q0 t8 u        ) o; y  F$ t6 E# e- x" ]9 u- @
                                memcpy( &m_light, pLight, sizeof( m_light ) );. r/ k& i  l( m0 |
, V4 D# T' ], q
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
8 p! m# i% p7 u& ?# _7 T' Q                                 D3DXVec3Normalize(&(vecSun),&(vecSun));$ A( c; ?  C$ s# Q4 \
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
  H& s; o. u8 y4 u, i7 Q                                 pLight->Appear( m_pd3dDevice, TRUE );, W' e, v2 P5 {/ x" H* d
               
& Q7 L4 ], e4 v                                DWORD dwR, dwG, dwB;! c0 ]( n4 E( C* @
                                dwR = (DWORD)( pLight->Ambient.r * 255 );+ C) Y+ u, i) `: a4 M
                                dwG = (DWORD)( pLight->Ambient.g * 255 );! x# ^) _# I) R# G; h" l  h
                                dwB = (DWORD)( pLight->Ambient.b * 255 );/ S2 a. u% G, O/ x% ^; T' F
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );8 \1 W; p- ^3 g9 J% |- X  w
                        }; e4 v; r, ?  ~/ i" n1 V' T
                }# J% u; g9 {& ~( L0 ~
        }1 C' ^6 y8 o$ V- T: h
        else6 l1 b: X4 n* m! W( j& Y
#endif 5 V2 n$ }! O# y8 h3 o; N, Z6 U
: |6 H) d3 W6 ~, c( i0 D
        if( m_bIsIndoor )
4 d& b; n  f' z4 S) [# G4 A3 d8 P: Z        {
2 k, G; X' q- Q2 Z* m6 f% K) [                if( pLight )2 c& D; F" Y1 i$ B' i, |/ y
                {               
6 ^8 d$ M" ^" t, g% x* b0 L                        // à??μ oˉè*
( }1 C( {; A1 d; ]: L                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
% f  x- z+ z2 d4 s  s                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
  X+ i5 |# U; T# N                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;# O! ~) p9 v1 ]: L! |

; z0 s& o: F: X6 ]. \* r                        // oˉè* ??à? 4 G8 p& A5 D; X1 K2 s. s& z8 e
                        pLight->Specular.r = 1.0f;
" O9 a" a% K+ C. h1 G0 i; M                        pLight->Specular.g = 1.0f;7 A% f  \# S, c
                        pLight->Specular.b = 1.0f;
& \: r! q% s$ T- o2 A% }7 l9 e                        // àü?? oˉè* 3 `9 R+ [, \/ x
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;4 n. Q9 h7 ^5 C) d
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
# P+ y$ V9 C, T' A' Q# J0 H                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;' w1 j6 M% v+ [, B/ [. V
# C6 v; W; |- q- x; C0 A& Y
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
& O- h1 P/ b* U( v                        {0 O4 [* T0 @- C) S2 z9 q( N& \
                                pLight->Diffuse.r *= 0.6f;# _) s* S' \9 u
                                pLight->Diffuse.g *= 0.6f;
) b7 D, f5 b0 J/ S" I                                pLight->Diffuse.b *= 0.6f;) n. A0 ?4 X; r# _5 K2 B+ {
                                pLight->Ambient.r *= 0.7f;  T5 Q& h4 J  ^$ }: X
                                pLight->Ambient.g *= 0.7f;) `' \! c3 f- K5 T% J$ S
                                pLight->Ambient.b *= 0.7f;6 v+ E/ L% w+ b/ C
                        }
5 S) C5 R. M- n; b
) C2 j5 b: Q& \& x% Y8 m3 Z#if __VER >= 15 // __BS_CHANGING_ENVIR! b  {% R( X; K' ?+ L
                        if( g_pPlayer )% O& g+ \8 i! N3 B
                                HookUpdateLight( pLight );+ ]: o- @+ E1 E
#endif& H( _, N) B- x  f2 x! {0 P
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );8 k" @. J' |& i1 {# G- _
% h) q" x3 V* S3 V
                        pLight->Diffuse.r  += 0.1f;- ?% n9 E5 |! f  f
                        pLight->Diffuse.g  += 0.1f;
0 W' M# _- U  A% U$ r                        pLight->Diffuse.b  += 0.1f;5 R; a; F, L: M7 p! i  i
                        // oˉè* ??à? ; z) a/ q7 j5 Q+ Z* H% B. e  _  v
                        pLight->Specular.r = 2.0f;
5 d) g* ^, t  a& r; m                        pLight->Specular.g = 2.0f;& T) p6 n/ E2 U9 z  C6 f
                        pLight->Specular.b = 2.0f;8 ]- C* J, n3 r0 D  }' b8 F
                        // á?oˉ , A. s) t2 \; R# J
                        pLight->Ambient.r  *= 0.9f;
. |4 N- d# O2 @: b" s                        pLight->Ambient.g  *= 0.9f;
. C8 z6 L4 y1 O* R) g0 s' x3 h$ W                        pLight->Ambient.b  *= 0.9f;8 f* V/ ^' t* V& \
! d, A- |2 g* g4 I
                        memcpy( &m_light, pLight, sizeof( m_light ) );4 x! n# B* K/ w' @; V- C
                        & E6 h, |) l! a. t) t, b
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
  d7 A$ c; b) d2 z, j. N) J                        pLight->Appear( m_pd3dDevice, TRUE );
3 G- T. J* q8 B: Q% }# y# P$ V5 J        : v7 r# ?) @5 X
                        DWORD dwR, dwG, dwB;, S7 h- |. L3 ~
                        dwR = (DWORD)( pLight->Ambient.r * 255 );" k. J* b3 w$ Z, L( \1 q" V
                        dwG = (DWORD)( pLight->Ambient.g * 255 );% \; o2 i0 c) v) z
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
! D6 M( v1 U3 I0 C                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
7 A% C2 V7 X+ D+ W7 a                }) O5 \4 g% [! H% o7 {! U
        }+ t( W# U" I6 a
        else, n: V8 m8 p  K* v3 A
        {/ t8 M$ ^4 Y7 h( Y+ Y, \$ s
                if( pLight )
0 I$ G5 O5 W. r  t                {  O# h. }/ H1 w# M: c/ t
               
  p0 |$ S1 d& g$ h# `; w1 q! o                        int nHour = 8, nMin = 0;# p2 }8 e  K' `; V9 K9 A7 ?1 x
        #ifdef __CLIENT3 P/ \8 g, i# G+ ~8 d" {; V% E2 \' v
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. ' s" f, P* P8 I1 v% N- e7 |
                        nHour = g_GameTimer.m_nHour;
1 g# u% M  e( Q* `  `+ C                        nMin  = g_GameTimer.m_nMin ;: U% ^0 B1 d' G* h! }4 j. \" r# e
        #else- v( A* X& n7 H$ G, N" a
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.9 {) ^, Y6 r4 |. q$ `
                        if( m_nLightType == 1 )( B. \" N) \; l& ^5 I; |* l
                                nHour = m_nLightHour;/ H; c4 A7 u% L. K
        #endif
+ h/ Y$ }: {+ q" p5 ~                        nHour--;1 e8 M0 x$ P3 |- j, G
                        if( nHour < 0 ) nHour = 0;& S) D) L+ }* \, M1 N0 _
                        if( nHour > 23 ) nHour = 23;
2 {+ T1 I0 B+ Z8 ^8 D4 v+ R4 h: O' u& f
                        //if( m_bFixedHour ), ~. J+ A* o* t8 C
                        //        nHour = m_nFixedHour, nMin = 0;
; n5 z/ z! v2 ]7 ?9 v6 v                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];$ v7 R) m8 K  B
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];0 l# ?& P* O& M- |7 |; R" i
2 V1 E& M/ I4 g2 k$ B7 j+ d
                        //m_lightColor = lightColorPrv;; m$ U; Q% L( n& b- |
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
  Z- U0 M8 p  w- F+ R                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
/ k: ~- W1 V/ f7 K  D2 I                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) N! P$ A: H5 i. u- c                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
0 p9 h1 }5 Y0 w) Y2 k                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
6 ~# v* B( j# u& Y8 @: O9 O# M) x# }3 m                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
5 W) Q$ L+ l3 F                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
! A% V& g: n0 B9 h
5 H% ?/ \& i  w8 ~                        // à??μ oˉè* 6 k( k4 ~; x) B  S) ~
                        pLight->Diffuse.r  = lightColorPrv.r1;
& X- }, t, _% ^7 t# w! e1 T                        pLight->Diffuse.g  = lightColorPrv.g1;% ]5 J  o# v% u4 b
                        pLight->Diffuse.b  = lightColorPrv.b1;
# H) U* Q0 s0 j6 H, T6 c9 b                        // oˉè* ??à? ; c4 x* ^: `2 d+ ^% g0 L
                        pLight->Specular.r = 1.0f;
- L) ~' {- d2 d% h6 k& M                        pLight->Specular.g = 1.0f;
' J. E4 s+ \: b/ c/ j0 I                        pLight->Specular.b = 1.0f;
) d% U) `& [& U/ O2 e2 D# _9 B                        // àü?? oˉè*
% ~' ]: b5 s9 C# G  `! T4 K                        pLight->Ambient.r  = lightColorPrv.r2;- u* p- W. K, I' n
                        pLight->Ambient.g  = lightColorPrv.g2;: K8 u7 t+ ?- ]  M
                        pLight->Ambient.b  = lightColorPrv.b2;
- O6 t, t% V5 w( x5 S- i1 x. S
: A: B9 X$ J0 j5 r                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' H2 w/ [( i$ X8 r8 d4 U! m* z                        {
' p2 H# c3 O6 ~3 w8 k: f' I                                pLight->Diffuse.r *= 0.6f;
& \3 l$ f; L6 z# ?                                pLight->Diffuse.g *= 0.6f;
% G! H' e, y  i9 Y. l/ E( a+ }# G, F                                pLight->Diffuse.b *= 0.6f;
+ m' p0 i) H- {8 _4 S                                pLight->Ambient.r *= 0.7f;, `9 X0 s" |- @' W
                                pLight->Ambient.g *= 0.7f;' f& f2 B+ N0 T  r' Q* y+ t
                                pLight->Ambient.b *= 0.7f;
; a8 I* e# Q4 Z8 ^                        }6 {9 P9 Q& {! T5 m( y* A
                        , q$ k- Z' t5 A, T
#if __VER >= 15 // __BS_CHANGING_ENVIR6 t& m* z2 @/ Z+ w$ G3 P" C
                        if( g_pPlayer )7 ]' \# q7 z: C$ D1 [8 L9 N
                                HookUpdateLight( pLight ); 3 J& v, ^  r$ Q$ p
#endif9 A% E1 t9 R/ v; \3 I  q8 _
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );% R3 f# M/ k. P0 G$ l

5 y5 ]3 ~3 p5 J0 N! B#ifdef __YENV
6 y6 t. J1 U4 H8 G$ d2 C% t% S( `4 R                        pLight->Diffuse.r  *= 1.1f;
7 {7 o$ ~- A% v. c9 G                        pLight->Diffuse.g  *= 1.1f;
( F5 D; m& z( V                        pLight->Diffuse.b  *= 1.1f;2 D. J& x4 |( f0 M" N! C1 Z
                        // oˉè* ??à? 4 v9 M: `  F8 R. z& t$ |
                        pLight->Specular.r = 2.0f;
7 H3 V# u8 L3 B% s0 |! s( d                        pLight->Specular.g = 2.0f;
. J" M' Q' A! i: L, X6 E) ?                        pLight->Specular.b = 2.0f;+ Z7 }& w3 ^3 U* `2 w
                        // á?oˉ
, c8 A, u  M5 m& Z: q8 Y' p' w: {                        pLight->Ambient.r  *= 1.0f;8 P- N4 D- a# t) {
                        pLight->Ambient.g  *= 1.0f;! y1 T2 t! |2 r; P
                        pLight->Ambient.b  *= 1.0f;
: ^$ e9 K, B. Q+ P) |; r& \; L#else //__YENV
) L4 D  d  t; O; E  C                        pLight->Diffuse.r  *= 1.1f;
' f2 q: x# c+ j* K3 x; H: k7 T                        pLight->Diffuse.g  *= 1.1f;
4 W: J; v1 g  w+ `& j                        pLight->Diffuse.b  *= 1.1f;' j5 B! [+ B+ W- L
                        // oˉè* ??à? - k2 E2 U& c4 n3 W
                        pLight->Specular.r = 2.0f;: i: l" P4 m* e8 C0 @) I' @
                        pLight->Specular.g = 2.0f;
; b( H% {7 A: v                        pLight->Specular.b = 2.0f;
  ?  B% ^, `8 l( M/ F                        // á?oˉ
9 A( u' V) f2 R7 k& S8 w+ A2 A                        pLight->Ambient.r  *= 0.9f;
4 @9 ?; \" ^5 ~# ~! F4 [                        pLight->Ambient.g  *= 0.9f;
" `: ^( M' Y+ T" o. {7 B                        pLight->Ambient.b  *= 0.9f;
- |5 q5 C5 {5 F  i. n  h- \5 P9 }#endif //__YENV
# `: X$ F6 R& L2 }3 F# X$ p                       
( l1 W* L8 K9 r/ {. M0 J                        memcpy( &m_light, pLight, sizeof( m_light ) );9 C' X' E0 v1 f
                       
( n) `: F+ `9 W4 X! \% A, ]                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
3 {9 F( E3 x+ H$ j                        D3DXMATRIX  matTemp;
) u1 \+ D( L6 u, v/ m& S. J                        static const float CONS_VAL = 3.1415926f / 180.f;
: e. v& m( P- [/ S" F0 S4 t) j6 c; ^* |/ F
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
3 R+ z9 |8 R% O3 k) l8 ?3 A                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);  J" {7 s+ n' o4 o
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
/ N/ u8 O, ^. E9 p6 H& L                        pLight->Appear( m_pd3dDevice, TRUE );
6 n; Y2 e( y7 L# A* Q/ l, \' g
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
- V% }7 C- @7 m; J0 l8 h% ]# F$ K                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));. C) K. L5 E* J9 [
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ; I) T$ `& [( G  q# W4 h

) P( m9 s2 W( A0 q; o3 p                        DWORD dwR, dwG, dwB;
- L/ j. m  d( u; A+ v; E# V                        dwR = (DWORD)( pLight->Ambient.r * 255 );
& R, ~9 y8 d. I' x                        dwG = (DWORD)( pLight->Ambient.g * 255 );) K# }3 p5 g0 x) ^& P  g, x9 }) t/ B9 X
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
8 n7 X, L) }2 z7 M# s, e' z                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
) {  [7 Q: [) ?/ G' A  }                }0 }' K7 F  B# D
        }3 q. [+ T) D9 D  Y& x1 c

7 U0 S/ k. D& t( m. B        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
' R* v  q! n5 @7 b. z        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) );0 |  K: G& R: s1 i
        ::SetLight( bLight );" q0 A7 y3 @/ o

& d8 S; Y& T5 G% ~8 @! J: H4 j        // ±ao? ?D?í???ó á¤à?
7 r5 j, ^3 m* S        m_pd3dDevice->SetMaterial( &m_baseMaterial );- V( p& F& t3 \  p
       
' V2 t# p$ j* @2 F) ?( m#endif // not WORLDSERVER8 d5 @' o$ c! C! \/ q9 c4 A4 F
}/ y5 s8 J1 O2 F8 n0 n1 H3 O6 S6 F
并更换
0 m  g% a3 s7 C& ~$ f5 l1 JCode:6 m2 m$ P( X& r1 f" q2 L' O
__FLYFF_INITPAGE_EXT3 j2 U9 O- ^/ G
定义- g' X! T: Y- N4 T+ U: o- h8 q' P6 I

( D( F3 [3 \+ |2 U; e% l* o: z+ R% F) V) E4 Q9 d2 F1 a

% J! h% E# ?' d; v3 v# r7 {: J, e9 f  Y0 m8 T$ V# S
现在终于删除我的狗屁加速...
  X" B( v" c" h
! \1 P* l+ W3 V6 Z; O. H% U: Q) S- r* I% z  G' C; ^, z& s; B
( P) o$ [  I6 w/ P2 M5 j





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