飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
" k: D/ b8 @4 ^1 d尾翼:. D2 e8 Y7 l; V* O* K! t
8 S* r+ j) h; M& F
代码:) e* ]% G' O' d2 }7 g3 z
CWndAutoFood::CWndAutoFood()
- w+ n9 }/ h, M9 w0 O: y- d{
3 U5 D" U( q5 L6 Q; x+ t' [( u7 g        m_pItemElem = NULL;. R. i. A6 h* M' s5 O, X
        m_pTexture = NULL;# i) |- Q5 M% ~3 `2 x- e/ i
        bStart = FALSE;
" L9 @8 p: e, C$ F}
3 V1 ]- t+ D4 W9 t
6 s8 ?$ H$ I& o4 r' l: q( U) I( R% DCWndAutoFood::~CWndAutoFood()  u( O8 w/ C& T* S$ E# X' x- |
{2 M4 Q8 N; f) c  }) B7 b
        AfxMessageBox( "AutoFood ist gestorben " );* b  k, c, R' K& w
}
$ P8 h+ _! P5 Z8 w2 X# v6 bBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )2 W% W* k: k6 B* ?
{) U2 J$ N, B$ T0 P; O+ r& v+ u
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );  K3 ?9 q  f: R  q7 F: T+ R
}5 _1 d, Z; _, V& G$ i/ _
2 w6 Q# t) M: k
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point ): K$ x. X8 O6 _- u- W- N9 i
{% S# n* o* h4 m5 Y0 i
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );( M; _7 {& ?; _# @$ y, D
        CRect rect = pWndCtrl->rect;9 {7 l8 H* L4 u2 F, d* G$ F
        if( rect && rect.PtInRect( point ) )
  O3 G: Z5 r" v; d. G! P        {; B6 O+ X6 k% Y- T, w1 ]: n8 \
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );3 s. ~- `7 |9 ?
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )* k' |: _1 T& A2 q4 y9 ]
                {
' O* B# h/ S: |8 f! q! G' M                        if( m_pItemElem )
9 J! a  ~0 M: v* t" b( j* U- {                        {
# D  d& z$ I3 J- q: B                                m_pItemElem = NULL;
0 W  P) k" o0 z5 y. P                        }1 @: u* F$ p0 \$ O" d5 |9 k6 l
                        m_pItemElem = pItemElem;9 N4 ~" Q3 {, z6 g! u0 Y8 s
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );! C1 z4 {  i) B$ t+ c
                }else{4 C4 E. `7 I* O
                        SetForbid( TRUE );
' J+ M% b0 R2 T9 ?                }& _  k7 M  v' ?  E; G, H
        }else{
7 \% j& L4 a7 _' i. m% G                SetForbid( TRUE );& z9 Q. H9 N3 E7 S
        }5 F, ^1 w6 b% P- c4 `3 Z* \
        return TRUE;1 A3 R1 ^8 E& m; r; f* k$ X3 J6 ^
}; q* H0 o& y- ^; E
  I$ ?3 F% l( R' w( k4 _( ?
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )2 l( t# M# S" [! G
{
' {5 p! |4 }% \% D        switch( nID )
* j& H( ?/ {2 a! ~5 @        {
$ y" H$ v- F* m0 q( d        case WIDC_BUTTON3:
$ W- g% C' A' u/ S$ V                {
" [9 w2 @4 `3 w8 p; m                        bStart = TRUE;6 u  c3 Y+ H* ^8 B8 v
                        break;
+ N3 s/ f' R# d7 t7 L/ [7 f                }" O' a9 X# G, \# h! l; n+ \
        case WIDC_BUTTON4:: i3 R* [2 X+ I( x8 @0 z. Y5 M2 Z- Z
                {  H9 T' D3 Z. w+ U1 K/ ~
                        bStart = FALSE;
# I# ^* d) B. C4 A, `                        break;
# b* a! r1 [! E: ~7 s  V9 T                }+ r) ?7 C" t8 {
        }
7 Q& Y9 e; @- S6 Q# A        return CWndNeuz::OnChildNotify( message, nID, pLResult );: O. {& ?7 W; l. e8 v3 N
}       
2 z% @- X; ^( l; bvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )0 Z$ n0 Z. R! _& P
{
  v3 H9 ^% i8 ~: i$ H4 s9 Y        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
; g8 N6 b! r( r) C2 Z9 {6 K        if( bStart || !m_pItemElem )
+ S. u' C  G- g) l( g8 u        {
1 v- A# o( m3 ?                pBtn->EnableWindow( FALSE );
. w$ \) q, C4 s$ U0 `6 A  {4 J        }else
* U8 k2 f: L9 t7 ^( A9 R4 S6 \" }, W                pBtn->EnableWindow( TRUE );
4 S; W9 ?' |4 ?; @7 I8 P5 s        if( m_pTexture )
4 v7 V. Y' T0 v3 `# k6 ?        {
  E+ r: l; ^  |- I* e! I                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );' s& `4 w; M; T
                if( wndCtrl && wndCtrl->rect )6 {0 ?3 g" ^: C9 Z, c
                {
! ?: o6 t" Q$ U: M                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );5 w" B/ L9 K, i
                }, `5 `8 u; i7 G3 k, H+ E' a0 T
        }0 }7 ^- Q5 t8 W6 o3 `
}& j& @% ^# A' V# _3 o- x

6 |. K# [, |1 P/ cBOOL CWndAutoFood:rocess()
1 g% c6 n# P3 T7 E& X{
2 @  o4 h' v& M8 m+ I* u2 y% ?) E: n7 a        if( bStart )$ J8 L" b/ Z, ?" ]
        {+ Q4 |4 V  }8 a# L' j# i
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
: u; g+ S; l. d! F: b- W1 y                {; @6 \/ m" }% n! H& K
                        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 {* K5 h0 B8 u( @( t' V6 P* T
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );/ k/ ^4 ?5 G" Q$ G9 X1 a+ A
                }else{
  ]5 i) J' G. z! u3 v/ W                        bStart = FALSE;8 B7 z+ J  l  c; i+ H4 z
                        m_pItemElem = NULL;2 d1 f, @; E/ H% B; V+ B
                }3 C9 R$ [3 N+ o' B+ e
        }
% w& G9 y" H& T1 w        return TRUE;1 h) i, ?8 ?4 I  Z6 e+ F, u4 u
}
) t4 H3 b+ r5 }; q6 o. `
  [- r2 [4 X3 z登录视频废话:
7 s& v7 L" `$ w. p尾翼:
) `: F* o) Y+ @6 Q& T7 C; P
1 M% ^3 U( u' \. ?代码:
, Q) q* R; U+ I2 @/ r# @
* f/ g9 @- T7 D8 s- @( d. M( w4 ]void CWorld::SetLight( BOOL bLight )
0 U' v5 O7 p0 @/ }/ @durch) t' w6 c9 t2 H% v# X: a$ T9 b9 i; y
Code:
# d, M9 }) w' \/ Rvoid CWorld::SetLight( BOOL bLight )
! u4 w- Q/ S7 z2 r" I7 M{( o5 ?; {; n7 L9 l) E
        //ACE("SetLight %d \n", bLight);
8 o6 u+ ]# N5 U0 y) p        2 y2 J' t9 S7 w
#ifndef  __WORLDSERVER
$ ?. H- q5 P1 V        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);: \- r- M+ W+ n3 V1 U% u0 Q
        CLight* pLight = NULL;3 Y$ H/ B- ]1 o0 O3 P. {2 N& h+ }

  G5 [, H: V# R- _1 R/ ]* T$ H$ k& `        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
/ m# B  k- h) f2 k2 A1 X
* }  u1 f: k; F' s# H        pLight = GetLight( "direction" );
3 P1 h4 A2 U3 M& O% K" Z
  g; V% C$ P" ?4 j8 |2 q0 Z! Y#if __VER >= 15 // __BS_CHANGING_ENVIR
" M& u1 ?8 r4 Z9 d5 B2 k7 V  D        if( g_pPlayer ){3 s1 L) ~% h+ Z
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );/ |5 U2 _9 m8 n' P8 e; \5 b2 `
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
1 m, @' j7 b8 b                {
. T5 q" v) w8 I/ R( V7 h( E                        if( pLight )
! d: L& M- n" x1 N6 |                        {
' `" t* f6 k/ n. z% H                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];9 X" r  R8 T1 O* m
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];2 N) ?3 t" V' w) E: Y
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];3 |1 \4 v8 P' p4 W
5 e* b8 t& D' C) \3 i  X
                                pLight->Specular.r = 2.0f;
, }7 t7 v4 r4 z, W) U$ f  z                                pLight->Specular.g = 2.0f;3 J* P  E8 d. H, j7 [
                                pLight->Specular.b = 2.0f;: }" Z0 e* Z8 n/ w( g
       
7 P& r3 t" J8 M- u9 f                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
* L- r, X6 @' m9 \* |, |                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];, e0 d1 ~8 T3 ?. d8 ~
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
9 B- W9 \, Q" w9 X5 ^' X# s        7 [/ r2 c/ J2 ?! v. P1 L+ d) j
                                HookUpdateLight( pLight ); . }& D+ `: b6 l- l& ]
2 v1 K+ A' {. s3 `0 i& e4 O
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );- t) O1 d7 I0 V6 m1 S
               
. [; C6 i% b% d+ q/ @                                pLight->Diffuse.r *= 1.2f;
3 X  R) E1 @( y- f0 v( ^' G" d                                pLight->Diffuse.g *= 1.2f;- Q- f. h. E* `  r1 m
                                pLight->Diffuse.b *= 1.2f;
: q5 g/ o/ W1 j* x4 p4 l3 F+ {  B# R! m. C! J2 a
                                pLight->Ambient.r *= 0.8f;! U8 s& n  L' F& z, M' }
                                pLight->Ambient.g *= 0.8f;
+ c8 i( i2 q  {% b6 z. ?2 g                                pLight->Ambient.b *= 0.8f;8 a4 U7 V7 d/ J; h% k4 S
        4 Z) g6 @! c7 z* b; ?
                                memcpy( &m_light, pLight, sizeof( m_light ) );! ?/ B- `- X# m3 m& X

% R& x3 s0 Z0 l8 {: T                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 n9 e3 c- a& t3 {, O& O                                 D3DXVec3Normalize(&(vecSun),&(vecSun));' e; f( \. F6 k6 J" [! j: v4 E
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 8 U6 r# Q8 X* C& p+ ]- E7 k
                                pLight->Appear( m_pd3dDevice, TRUE );8 a& g3 n" S( N+ z
                , w! g1 c: S4 o
                                DWORD dwR, dwG, dwB;& V8 b* d' i1 a9 _' X# y- g6 C
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
/ s% Q, @; ?  F                                dwG = (DWORD)( pLight->Ambient.g * 255 );9 p4 ]# ]/ Q! P5 }% N! h. b
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
* B! U, y* a% x/ l                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 w1 y  Z8 J5 V" x1 Y; m" b  {: ^                        }4 y6 r' F2 s* I% u: q: V
                }4 M4 f; D  W0 ~* L& m$ r
        }
# U! l8 Z( _. U5 L) s        else  u, q9 ?9 _' @2 z
#endif
; ]& v4 e6 L5 z( c2 |. @$ ~( X6 o7 m4 O  n  e+ U
        if( m_bIsIndoor )
" W6 U  H% O7 [: g. z# j        {
$ n  W! k) J- O& M9 V$ A5 a                if( pLight )- x. F1 _+ i1 ~; ]
                {               
% b. l; x, n' i/ U' E& d  l; |                        // à??μ oˉè* & @- C7 a5 U8 a" G2 M8 ~
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;5 f! A3 l( Q; q4 n+ `' i  {
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
' p* [+ d# w7 }1 n1 M: M, [2 E% [                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
: ~( ~  _8 U0 T' b- R4 J4 `1 K* C# D- t8 m+ C$ z" k9 M" t# q& Z" m
                        // oˉè* ??à? 3 ?" Z' _& h/ V1 d! R
                        pLight->Specular.r = 1.0f;
9 z3 _" }% D; c5 n0 O0 B, g" |                        pLight->Specular.g = 1.0f;1 Z* t' r. v8 x8 ]/ r
                        pLight->Specular.b = 1.0f;" |6 `* [7 x3 H7 @
                        // àü?? oˉè* ) k6 e. A* \7 e  }9 ^) V3 [  m
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;6 P1 l/ z" G$ E
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;6 O: d$ c0 B( Z9 t$ h5 `$ j* D
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
' S* Q8 V! K, F) K7 d
7 g& L# Y/ ^0 M                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.9 w2 P$ _# \' S* c3 |
                        {0 ]1 F* h! P/ V' X- B
                                pLight->Diffuse.r *= 0.6f;+ {" n/ a" M; f( ~0 |! g0 L8 f9 G
                                pLight->Diffuse.g *= 0.6f;1 \6 N& d$ T+ q  \) J) f
                                pLight->Diffuse.b *= 0.6f;
+ Q4 \1 S* D! L- @" n4 V' u& {                                pLight->Ambient.r *= 0.7f;
  W' H. `; F/ C! B# }                                pLight->Ambient.g *= 0.7f;. D9 j( H% a4 _% P; h
                                pLight->Ambient.b *= 0.7f;
% C* p* Y% y* y5 \6 ^' C4 I                        }; m4 r  p+ C7 v

+ C8 Q1 H0 \4 ]% b#if __VER >= 15 // __BS_CHANGING_ENVIR; K& A0 y' ]9 n8 f2 V6 m  e: P7 x
                        if( g_pPlayer )3 K6 A  @* f% |9 e% {% }: l
                                HookUpdateLight( pLight );
" F, n1 h& }% F% J" U/ i! ]: z  v#endif
! }. ~5 L' B1 f                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. l( k- p, C9 r) R8 A% b
( v0 B0 r5 ^/ e( y3 P                        pLight->Diffuse.r  += 0.1f;0 ~. q- _, H/ `" F- R
                        pLight->Diffuse.g  += 0.1f;- y9 ]+ _7 [8 {7 r! R( u
                        pLight->Diffuse.b  += 0.1f;
# Q! [  A" P/ h8 S- b                        // oˉè* ??à?
. F+ \; x6 I" r0 I                        pLight->Specular.r = 2.0f;, O& e7 g* p7 g- O5 S0 s4 d' P
                        pLight->Specular.g = 2.0f;
) S: B* g$ t/ ?( W! K) C                        pLight->Specular.b = 2.0f;
0 ]1 _% v0 ~+ j1 P7 N) S                        // á?oˉ
1 A8 r: q4 e. l( b- p                        pLight->Ambient.r  *= 0.9f;
# y3 e; A9 g: R# B5 l' Y                        pLight->Ambient.g  *= 0.9f;2 l. T& _* M4 U8 i6 Z
                        pLight->Ambient.b  *= 0.9f;8 A, D7 r# i' h

$ \2 \1 C  X* f) ~* X                        memcpy( &m_light, pLight, sizeof( m_light ) );
- B1 o2 B" i# ]' r2 `. D1 \                        8 a$ S; h4 C) M& i* ], u
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );/ J0 I& w6 c3 C5 Q# q& [) s) {6 X
                        pLight->Appear( m_pd3dDevice, TRUE );& S" B; g" n+ k5 a* W$ A. w
       
; i6 [) I7 _3 c                        DWORD dwR, dwG, dwB;
1 I( g. j* p: J7 o: R+ i                        dwR = (DWORD)( pLight->Ambient.r * 255 );
* Z: G+ |, `& n( I1 |8 R0 r                        dwG = (DWORD)( pLight->Ambient.g * 255 );
/ N" b3 [- U' K5 ?) M% \                        dwB = (DWORD)( pLight->Ambient.b * 255 );
+ _, X/ L4 T% z( Y                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ o) I9 p( I6 c& K6 |% }                }7 {! [1 y& c7 x
        }
) {, Z# W3 x. A* N& Y        else
$ A+ R2 n1 [! u        {( b/ d7 A8 U+ ^1 [3 Q, g
                if( pLight )5 k9 b' L! c7 D8 T+ ?( a0 d1 X& `8 F
                {1 t% w" O( G) W* _( t5 f
               
; ?7 l8 Y0 X/ A# |                        int nHour = 8, nMin = 0;" F7 B! T' }, G8 Z6 A
        #ifdef __CLIENT3 J- [2 H' [; Y" x6 V2 T8 y2 p
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. . w2 v* j" A5 P* @# |- S
                        nHour = g_GameTimer.m_nHour;
, x& D! |/ k5 I" t% W/ [                        nMin  = g_GameTimer.m_nMin ;
# o* s/ E$ B; L6 a8 [$ V        #else7 Z# `# y# V, \/ C! g2 M  ]
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
7 T; H& h! `2 y: _6 N, N( V                        if( m_nLightType == 1 )
: o( R' R' v1 J0 @                                nHour = m_nLightHour;9 M; M( R( g+ {: w
        #endif1 t/ S& F8 N, B- j& A+ c
                        nHour--;
$ Q! F+ Y8 e( Y/ I( y( u                        if( nHour < 0 ) nHour = 0;' z9 R4 k* G8 [- n, I
                        if( nHour > 23 ) nHour = 23;6 a, T' p, c0 T4 w( d) U
9 |" p8 S: Q! a* k7 ~9 V* q
                        //if( m_bFixedHour )
$ H' R, X% c$ _7 j2 v7 D2 x                        //        nHour = m_nFixedHour, nMin = 0;
* F$ ]7 l4 m0 E" Y+ z! w# D                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
+ L! J, R/ l/ Q                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
" V8 F/ F& w  e# v& u% _6 K
2 n7 a1 U' J' D- ~5 |# |7 [                        //m_lightColor = lightColorPrv;
. ~; F( M* x# N5 T- O                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;4 u3 E" C( _! q' J7 Y
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;! ^$ W) |, t* e6 s) g2 r; b
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;1 R* F2 p+ ~% k( A, L+ H+ ~9 D
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
! K' z$ [9 k( f$ b                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
( K# b: q5 Q: q. j" c                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
0 f: T7 S, E! k                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ M0 h' v7 t3 L( O
1 q' e  Z2 K4 v  v; b                        // à??μ oˉè*
; _$ Q0 ^, E& |9 o2 z: ]2 G1 Z, }                        pLight->Diffuse.r  = lightColorPrv.r1;
1 s/ L4 O# V3 S* k1 ?1 }  _# s                        pLight->Diffuse.g  = lightColorPrv.g1;
' p+ y+ b6 r3 P4 t4 U5 A* ]5 `6 j8 H                        pLight->Diffuse.b  = lightColorPrv.b1;
" @* Q" p6 W2 ~, ^6 c- y+ c                        // oˉè* ??à? # i2 K( a  r; q& o# |/ N
                        pLight->Specular.r = 1.0f;6 d: X; ?9 m4 ^8 E
                        pLight->Specular.g = 1.0f;8 K2 T+ _5 h2 D% ^6 q  \
                        pLight->Specular.b = 1.0f;
9 k& T( m' Q5 Q7 A8 s                        // àü?? oˉè* ! S: W- S/ H! b0 O+ R  U1 a/ m
                        pLight->Ambient.r  = lightColorPrv.r2;
5 J3 e5 H. S$ Z                        pLight->Ambient.g  = lightColorPrv.g2;
# Q' y# T/ i' F% K0 h                        pLight->Ambient.b  = lightColorPrv.b2;6 G( R$ {( @3 Q# o( Q

) s! a- z: S; J1 N: |) S2 N                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.5 g0 k9 C8 O' |4 ~- P6 ~% t
                        {
/ {) c. b5 f' l$ f) `8 D2 r                                pLight->Diffuse.r *= 0.6f;7 T) u: v& Q$ L
                                pLight->Diffuse.g *= 0.6f;1 F4 S. U3 X8 R* _- @7 \- H
                                pLight->Diffuse.b *= 0.6f;7 G) z9 i& P9 O3 }9 }
                                pLight->Ambient.r *= 0.7f;! S8 ?4 G) w: Y& P! Y/ Y1 j( }
                                pLight->Ambient.g *= 0.7f;
2 Z, L7 ^  [/ M' M7 K6 ~* |1 v: R. D                                pLight->Ambient.b *= 0.7f;
5 a/ n. G1 L3 i7 H2 u1 {                        }
' Y+ }' P3 i( r: S                        + I- |; i5 @- ?: Q2 G
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 u" A$ i" @7 J" y' C1 a) U* i                        if( g_pPlayer )
) J2 _+ Y* {* h' p                                HookUpdateLight( pLight );
- p; s. M! P" k9 C2 j#endif* d5 ]6 M) Q: b, l$ @0 ~5 D
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );0 L2 p1 s2 a# F
- R; A( m& \1 Q+ Y
#ifdef __YENV
$ ~- g& i- ^3 V0 W2 V                        pLight->Diffuse.r  *= 1.1f;1 N1 f7 u- i& R
                        pLight->Diffuse.g  *= 1.1f;2 O+ K8 P0 K/ U* A
                        pLight->Diffuse.b  *= 1.1f;
8 v  P6 u4 O' ^# q: C                        // oˉè* ??à?
+ \$ b4 a; j; f2 u1 j                        pLight->Specular.r = 2.0f;
9 n1 O6 t4 c9 [4 I; w+ m                        pLight->Specular.g = 2.0f;7 w: n2 _; P) D5 ]( ~
                        pLight->Specular.b = 2.0f;! t8 p0 j/ G& ]
                        // á?oˉ ! e8 v1 ]% Q3 f+ s+ O. B8 N) G
                        pLight->Ambient.r  *= 1.0f;
7 @2 k/ b( i0 h9 f. Y# M7 X( \                        pLight->Ambient.g  *= 1.0f;
1 o1 ?# Y9 [( \                        pLight->Ambient.b  *= 1.0f;
' P" Y4 N; y' o! Q% a$ @#else //__YENV
( \. `7 a! U9 O# {% Q8 ?  E                        pLight->Diffuse.r  *= 1.1f;
  X4 @) k+ p" K3 a/ q4 n" T                        pLight->Diffuse.g  *= 1.1f;. _& l  _; |! X; U3 o
                        pLight->Diffuse.b  *= 1.1f;
: Q' X' E. p5 v/ R, d! A                        // oˉè* ??à? / K7 W" Y: v* m& W) u$ \
                        pLight->Specular.r = 2.0f;& h3 @" P/ C# J
                        pLight->Specular.g = 2.0f;
6 S/ r. {9 s3 V- A" m                        pLight->Specular.b = 2.0f;, U0 E3 I& A7 G. W8 Q3 K
                        // á?oˉ
1 ~0 Z: R" t0 g% M                        pLight->Ambient.r  *= 0.9f;9 E/ R4 @. `  a4 `$ v2 d/ O
                        pLight->Ambient.g  *= 0.9f;
6 N( w' j8 h* |) q# M4 s                        pLight->Ambient.b  *= 0.9f;$ |  K% N  j* i- y
#endif //__YENV
. B; v# m, i1 m; E5 k                        9 c$ \) @( r) Q5 w
                        memcpy( &m_light, pLight, sizeof( m_light ) );2 @. d- U: k6 `$ ]+ `# M( G
                       
& U" U0 I: h: z, V% w" w* G6 g$ e. c                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
; R8 A5 j2 T# P7 A' f& v0 X                        D3DXMATRIX  matTemp;
' [2 Y# @3 H' A  E8 E* f                        static const float CONS_VAL = 3.1415926f / 180.f;
/ ^# |8 T& r. X8 h/ S
4 X' R9 o2 Z! A3 c                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
% R/ y8 j% a8 h1 |# S5 P                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);  J+ N  [6 A/ d
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
# k  r4 _) w# p$ O" x% {* K                        pLight->Appear( m_pd3dDevice, TRUE );
+ g& k; D, r5 K) G' U5 o* G, H) H4 f" w! r5 b/ u
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);/ Z$ p, V! Y2 M, N; P
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));/ m4 E0 R& n4 y3 n6 _, _
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: R# H. m& i/ ], X/ {0 Z8 Q2 s2 o7 D$ v) i) \9 ]
                        DWORD dwR, dwG, dwB;
1 n/ U; _1 r; a! `- Y                        dwR = (DWORD)( pLight->Ambient.r * 255 );
" I+ `* v! E: G8 L4 M8 L- c2 S                        dwG = (DWORD)( pLight->Ambient.g * 255 );9 H, j+ H/ z2 ?9 s: w
                        dwB = (DWORD)( pLight->Ambient.b * 255 );$ ]: I* {: q* l5 C0 C2 t! _1 |0 H
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        * a+ `) }2 Q0 H2 k+ Y
                }
. I+ t$ P/ H& r- V. L4 E  _' ?        }
: x3 Y/ ]$ D4 Q$ G; M) `0 P, }8 T" B4 c0 P
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
: S4 R3 C9 }* Y6 H( J        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 A& H4 y4 Y; u$ k  w( ]
        ::SetLight( bLight );
$ C4 b6 s+ u5 S- D9 {
; i! H- C+ t& Q( i) w/ N* D" _        // ±ao? ?D?í???ó á¤à?
$ c5 i0 f3 H$ A        m_pd3dDevice->SetMaterial( &m_baseMaterial );# a. x3 v0 s) e- E. c3 M3 G2 ?4 x( u9 i
        ! o! ~- p/ T$ ?4 B0 ?: _# v
#endif // not WORLDSERVER) L* r0 Q6 A* S9 U+ e
}+ B& U5 s0 X9 G1 k: m; e
并更换# ^4 {8 [" g. l3 I' x) n
Code:
5 M8 O  I; y: `3 U" e. d  X) n__FLYFF_INITPAGE_EXT8 y7 i: ~+ k5 z( r
定义) t6 K/ m3 R( b5 T. S6 d

- j& d) s3 J1 D3 t* w& P- L1 ?/ ]" c

" k6 G3 O- f0 b3 ^, @+ R0 J( n& S) q) u/ c, b% ^
现在终于删除我的狗屁加速...
! ?" o. u. q# }( v6 z& f. z
7 I, V8 b* D8 D3 j7 t! R
/ L) L# h) z* L. Y6 I! C+ q
6 O# k& |9 C$ u' t0 ^




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