飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:7 C. B+ c: V6 u' i: F+ K
尾翼:  d' h& U, U( N4 y5 _+ M- ]

: i! V7 _. T3 u; j! _* K, b/ e: t代码:0 }9 h( `7 J, y5 A1 i' x
CWndAutoFood::CWndAutoFood()
5 z; p! X& h/ S- E6 a+ c* e6 N{
& J1 d7 Q' k' [# e        m_pItemElem = NULL;1 \/ X9 k  l4 A0 C% g, w9 Y
        m_pTexture = NULL;
* P  v- N$ \! J! g        bStart = FALSE;
4 f$ V: ^9 J% |& X$ Q}7 I% Q8 ~+ |9 z8 A8 S$ |+ U
# O0 n: m% z9 |4 l2 j
CWndAutoFood::~CWndAutoFood()- I* ~& }7 Q2 d0 D! I  N
{+ r/ Q' p- m* \* S' j: N, y
        AfxMessageBox( "AutoFood ist gestorben " );
4 }# \- h8 n. t7 B4 ^6 M}
4 H0 a1 |3 [1 D) M( uBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType ). j. X' X% t- ?5 [& W4 r3 Z8 ?
{
- P: u" [" t" P, `        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
- H  @$ F! K8 [- K6 E2 D+ ?. G}
& A$ r3 N7 }3 H+ m9 o+ s; b4 l3 K+ G2 }( N
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point ): D# H3 ?6 o; \& G' Q
{( b9 ?  \" I# v( l" a
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );9 k5 i; R3 N' V( b3 l) Q) }! n
        CRect rect = pWndCtrl->rect;
  G0 y# N' V; v( N3 L        if( rect && rect.PtInRect( point ) )
5 T0 }5 _: A* p! X8 s: A        {" M2 D  u/ S# D
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
( _8 N8 g8 R7 B( c! R' R9 ?7 l                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
' G! q- {- k' K/ V. ]" @9 V                {
. @& Y( l. I2 g                        if( m_pItemElem )! O5 \- }& E( U$ \2 l+ ]1 Q
                        {% I! z+ L, [. q  w2 n
                                m_pItemElem = NULL;+ t2 l+ t0 x6 ^; E# f- q8 N
                        }
9 }, ~8 A. J: g* i( x& @1 k# {                        m_pItemElem = pItemElem;, v' y3 I0 V! {; {3 t9 t
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
/ h3 t/ ]+ b# W4 k. i+ u) {/ N                }else{  f4 e: ^4 c" k! N
                        SetForbid( TRUE );
, f$ d1 e+ f7 J! d* n4 E                }
) U8 u& l5 s3 H7 D# T; j1 i, Y        }else{
; e" G; c7 ?, [$ f0 @0 p" T                SetForbid( TRUE );
. M% y" H( w6 N- G7 ]- N: |        }
- Y& H2 N2 N9 L# i        return TRUE;; B; Q7 D' Z/ a: T: b$ S  [; \
}) i. Z- ~) v! \$ t" P

* I7 i8 s1 t- `8 C: r4 }- w. YBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )! |$ N1 M! U/ y/ \, y3 Z8 m# h  i
{
% n7 f; o8 ?, A. V0 j( b! ?        switch( nID )
9 S- i% c+ X6 \2 ~5 I        {
, q; j# q, L2 ]( }        case WIDC_BUTTON3:6 a, S6 H) R& r, R2 t
                {
* f9 _( p" Y' C% C7 ]+ E                        bStart = TRUE;* g! j) c$ ^) V7 j7 ~% k& C
                        break;+ i+ E# i+ {7 d' x+ K' B. q, O+ m
                }% o1 a" A5 z9 A! [  g* D5 R8 u
        case WIDC_BUTTON4:! J$ E1 n& z) v% g0 Z' h
                {
" j0 A5 `& Q6 `) I7 ~, W                        bStart = FALSE;+ D) K. _( F7 ]9 }& F$ f
                        break;" Q" B' J: L1 E, h5 A
                }
! {! o6 v  U/ E9 G5 }        }+ P/ W$ J% m$ D3 q) ~1 W" Y) D
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
: K: p" S- C6 H}        % u, i% U7 s& ^; f3 Z6 @
void CWndAutoFood::OnDraw( C2DRender* p2DRender )3 y+ J1 r, m) m
{
# f2 z0 C9 n0 f$ m        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );* O  L  H6 C1 v
        if( bStart || !m_pItemElem )
9 U/ R5 k+ n2 {, M% |9 O        {0 w: b0 X" X! E# {  w
                pBtn->EnableWindow( FALSE );7 d5 u3 b& `9 C( ^3 F; m
        }else$ j5 `9 `% r0 F" r1 @  u
                pBtn->EnableWindow( TRUE );
) ~5 ]$ _7 l5 g, \$ s        if( m_pTexture )
2 H: N' \* Y0 g1 \6 b: _# H        {
/ ?# N5 S- F& P! o" D( j) k& g% ?' R                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! b( f: F% d# Q% J& c/ m; M3 _6 N                if( wndCtrl && wndCtrl->rect )& o" ]! z+ s( q8 y, B
                {
2 x; v! H& \1 T2 E. f                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
/ R/ f* Q# G; `& w8 ?3 a$ E                }
2 o5 W1 l  x+ w- }% x" u% X        }
& T4 `, i8 }0 u* }+ c% d" ~}
( `: u0 M5 r3 I0 L6 k2 a8 _% \
3 k) S/ E0 r% X, H6 n4 F" U, D$ ^( hBOOL CWndAutoFood:rocess()
8 a6 e2 q- }& f$ X{1 f. F. c! m' z* _/ G6 i
        if( bStart ): w1 G7 x, Z4 Y
        {* D. V* z, [& o, ?; J" p
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )$ T7 A; Q( Q) n7 H/ U$ S8 H
                {
1 b$ X9 ]5 s1 x5 [) D/ `$ P$ Q                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
( v2 k' m5 e* A2 f. M. U  k. c                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
* D9 q- e9 f$ L' Z                }else{! m/ D/ w, }; d5 v
                        bStart = FALSE;8 o9 b8 h8 W# y# [
                        m_pItemElem = NULL;
1 U4 ]  d& t9 P7 a( R                }# x8 X- ^. S! p( W. p. Q; ]
        }
  \* o( [( a$ t8 I: M        return TRUE;
$ h" |% z. q% U( C" E6 f}
0 s5 M% @* b6 ?+ T3 E. q* Z) A
+ W2 X5 U( P3 X( w登录视频废话:
0 H0 k! G4 c( k; H$ a尾翼:  D8 C$ i, ]9 q$ E. K  W
  i" t0 D, Y9 l
代码:
2 ^4 [4 R* w" O$ I! r' O9 K$ A  n3 \
void CWorld::SetLight( BOOL bLight )
0 k* n' s& B4 I6 ~- k  {; Gdurch0 E. Z9 O2 }0 Z/ l- u
Code:/ _3 K; r+ A& Z8 G9 j6 E
void CWorld::SetLight( BOOL bLight )
+ J+ P& P7 C7 o7 w* B" x- o6 ~{
& H) Z! W/ W5 U. G7 [. v6 s( I& \        //ACE("SetLight %d \n", bLight);
( U, h0 V4 @9 a# ^  b       
9 y- n% q, _; c/ |8 `% i% S#ifndef  __WORLDSERVER 1 g9 {# ^: W$ Z5 f: p
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);; c% {! j: p6 n
        CLight* pLight = NULL;
; Y6 Q& R8 \0 n# a& ~  @+ u) Q2 S( X6 I  P7 I, i5 k
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );2 _1 @$ X  a; n
3 E1 Q: C1 c* B! \8 w1 f9 _
        pLight = GetLight( "direction" );2 E- j% L& i' \! g! K+ _

. _$ O$ Z9 @5 B* C7 z5 h$ V4 H  S#if __VER >= 15 // __BS_CHANGING_ENVIR( _$ x  Y, E7 |' u5 p
        if( g_pPlayer ){
" t& r3 g# @8 r' C                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );8 Y( z# L( O% Q. q7 i9 q8 R; x
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!- w6 j6 K; o" v( n8 T- V6 {
                {/ j9 b" e3 I3 }8 u
                        if( pLight )
8 Z  z6 Q. P9 Q  Z: E                        {
7 i. S! h# `) ]) J/ {0 |                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
* g7 Q. P" o5 u3 c! ~: c. ~; w                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
4 `* j6 {: V# l, ^' A                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
# J& B8 g3 u5 Y% l$ ]6 n8 U# |
9 S/ L' H4 l( j$ l8 i5 x                                pLight->Specular.r = 2.0f;, D  y" o# j& U/ _
                                pLight->Specular.g = 2.0f;
* G6 s; g6 A7 m2 c- G                                pLight->Specular.b = 2.0f;* ?) T* r: U5 w" J: a: h
        9 o" E+ e2 [5 |( y
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
0 j4 l! Y( q6 _3 U6 u                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
4 ~2 ~/ C3 M* J1 D4 I9 v! K                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
/ l$ X5 p. h$ D, L) J/ ^3 U9 C' K        2 W$ h0 x4 w5 g5 N1 k# x$ l6 t
                                HookUpdateLight( pLight );
) d  U7 }& \' C  y1 }. `
6 l) z, }- ~& h1 ]6 f                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
! X( R) X8 U6 A5 V+ d3 \$ {  S               
0 d( g6 R8 ?. ?: Q* I. C                                pLight->Diffuse.r *= 1.2f;$ \$ w. h6 e& q& j, v( {
                                pLight->Diffuse.g *= 1.2f;% O- r$ K, P8 }9 _+ P" \+ f
                                pLight->Diffuse.b *= 1.2f;
9 _" F; v4 N* N; F; }+ w% I  a+ _: c7 y
                                pLight->Ambient.r *= 0.8f;! ~4 [1 l: _6 J. M- T
                                pLight->Ambient.g *= 0.8f;
! |+ g5 w1 d3 p( W4 k7 P                                pLight->Ambient.b *= 0.8f;
. L: y' x5 J5 _/ d& y) d/ q        ) {* a4 S* ^: z
                                memcpy( &m_light, pLight, sizeof( m_light ) );
9 c% |# b4 M! [, K) R: a) q, X  W: r" o2 |
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
! [; T% H3 V. E3 M* n                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
" W* O& G- E9 c' j  h& ]                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); - ~! D  g: x6 J
                                pLight->Appear( m_pd3dDevice, TRUE );$ F0 b: Q5 b7 J" |8 Z& Q
               
3 J+ h" B" f9 U7 X                                DWORD dwR, dwG, dwB;4 n/ \+ P' M' \) j# u
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
. ~" ]" \% ~; K. }; b- J( v6 \                                dwG = (DWORD)( pLight->Ambient.g * 255 );8 L# E% E. g3 ^! J7 g
                                dwB = (DWORD)( pLight->Ambient.b * 255 );9 g- ]: o; V5 d( V: Q5 [
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. F; ]4 v# Q0 M  m3 c1 G                        }
" j" L7 ?" H% O/ U  Q& o/ |, q                }# ~+ y2 I; y7 ~
        }
6 Y5 `( w, o& K/ u; X        else
* |( F9 w# Z: n' i. A7 K: v; ]) g#endif 7 j$ S, r! M2 {
  c; ~1 q7 [& }3 D4 j
        if( m_bIsIndoor )* K: d& @! S) ^& `& s, Z# T
        {4 I& x9 i3 |: c0 v: E, o
                if( pLight )
+ ]. q! g% r; N* o                {               
- A$ u' B: b" g5 c1 c" X, l                        // à??μ oˉè* # x6 [1 s; i# b3 G! `
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;: l9 N' O: g5 f, i1 [. t
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;5 P) E3 ~" E+ v
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
" _; w9 }8 @- B$ v" C( e% `6 `+ x1 ~, Y- Z- P$ V# T3 `  L& |9 r$ E
                        // oˉè* ??à?
. F' K9 h$ _9 W& Y2 ?                        pLight->Specular.r = 1.0f;
& p" K" _9 L. T2 t; t                        pLight->Specular.g = 1.0f;  x: Y# m6 D9 ~8 T5 Q
                        pLight->Specular.b = 1.0f;( x9 s6 b; f/ f5 K5 R" U
                        // àü?? oˉè*
3 @, a; h% ]2 n2 A                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
8 b& H- l" j0 C0 h) {1 l/ _                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
" d* U* k3 i- R; g* T0 H                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;" U' ^. ]% k& Z. w+ q
: s$ A4 B0 V4 }  @
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??., `6 \7 c, E' _6 [8 B
                        {  x- s2 y' n, P8 o0 A6 R. G% J
                                pLight->Diffuse.r *= 0.6f;* ?2 u) B0 q( m
                                pLight->Diffuse.g *= 0.6f;
# Y/ j: w" H7 N& q                                pLight->Diffuse.b *= 0.6f;; A( K3 b+ \. e8 d2 ]' x) R
                                pLight->Ambient.r *= 0.7f;
- H  D; H6 ]& Q/ ~: {% {. h                                pLight->Ambient.g *= 0.7f;2 t) t! ^' q& \/ b6 |
                                pLight->Ambient.b *= 0.7f;# h& s0 b8 b3 u# D) c& ~
                        }
6 R9 V$ o. W1 I0 q; }! Z2 }3 Z8 z1 T; N. S
#if __VER >= 15 // __BS_CHANGING_ENVIR
4 Z; t7 w; Q4 F  c6 }                        if( g_pPlayer )8 \4 d- `) s0 A. p3 R
                                HookUpdateLight( pLight );5 _4 ^- G: d/ x+ g& V- T' U8 U
#endif9 [9 E0 b1 A: V* H+ K4 E4 ~
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 `- L& o3 J4 g+ T4 t% U* |. [7 G0 W% V! x6 W' }
                        pLight->Diffuse.r  += 0.1f;, h( t6 Y, c* h$ s3 `
                        pLight->Diffuse.g  += 0.1f;9 u; h$ F  V8 Y, d- S3 v' S
                        pLight->Diffuse.b  += 0.1f;' d# o8 \! u5 G/ l! k
                        // oˉè* ??à? : \3 p/ [8 w; m/ n$ g
                        pLight->Specular.r = 2.0f;
  l5 w8 V# U- O                        pLight->Specular.g = 2.0f;. z# Y+ @  n% Q  U+ l
                        pLight->Specular.b = 2.0f;
! P# [4 a1 ?9 g8 Q2 D                        // á?oˉ & O: A4 |* ~; i7 \0 a+ E2 u
                        pLight->Ambient.r  *= 0.9f;& a2 Q, Y! D+ {& \, C
                        pLight->Ambient.g  *= 0.9f;/ H/ l2 x2 s. o: n* ]
                        pLight->Ambient.b  *= 0.9f;
) O- H: N/ j3 }6 [0 D( b- \$ F7 Y* ]# q0 b) U$ B' I. |
                        memcpy( &m_light, pLight, sizeof( m_light ) );
! c6 D- Z- t) W% N8 i; M( S% d                       
4 y1 ?! O! g# v8 X; R                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
! O/ x/ @% X' G. C; ~6 r& [                        pLight->Appear( m_pd3dDevice, TRUE );
" y* t( z' F0 O& k5 U9 a; U6 n; {       
0 e2 f3 e4 E* P+ Z/ B                        DWORD dwR, dwG, dwB;
$ Y1 m4 H5 E( d  r" B3 z                        dwR = (DWORD)( pLight->Ambient.r * 255 );+ D: L7 i) r( f. j! F: P" A
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
6 T) c' }! D7 I  V1 [7 R3 L: ?                        dwB = (DWORD)( pLight->Ambient.b * 255 );
2 J& @! ~2 u3 g6 B" O                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );1 T( J1 U) ]+ H* `
                }
& u( A& k4 z1 d6 Z# O# k6 ^8 u9 u        }
. p, A( X. Z6 q, q4 T) M' g        else
8 G" _5 `) n6 p! K" W8 P! D; k        {" k1 t# r/ J2 J; l6 s: ]$ J2 Q
                if( pLight )* q- A+ ]- f- S. D) u( E
                {9 z( [0 E8 y# M! E! F
               
* H% H. F9 a6 M) R8 E                        int nHour = 8, nMin = 0;* d& a) G0 q" x5 ?( q: E
        #ifdef __CLIENT  W- K; D1 G( {1 }  J; {4 r
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
$ N( x) y% Y4 [, Y                        nHour = g_GameTimer.m_nHour;3 ^! {& C' ?# {! y
                        nMin  = g_GameTimer.m_nMin ;
- ~% i7 h  v0 C; Q        #else
1 y' i4 _# D% Z                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.  Z& L0 o! T* {6 V
                        if( m_nLightType == 1 )# |3 S4 K8 t# N& e1 Y4 J" l# `4 i
                                nHour = m_nLightHour;: f4 V& v1 I& B) _. y- E: x8 O
        #endif, ]1 e; g) K0 _5 s- q1 l$ G1 L4 M
                        nHour--;4 w# t1 P- }0 F0 S& l6 t$ K: m
                        if( nHour < 0 ) nHour = 0;! ?8 @0 O" s. w; H" G* |9 E
                        if( nHour > 23 ) nHour = 23;% }& L5 o+ M" t; `8 u4 [, Z
8 ?0 _4 o( s* O' |+ E$ s
                        //if( m_bFixedHour )
' R+ q- |8 T5 E                        //        nHour = m_nFixedHour, nMin = 0;0 x6 q$ J% N0 T% g  g
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];& x. g, A% _5 b% q+ U# t5 U
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];* B! N4 n$ L; I, `) L& }# P9 o
" u7 ]1 s! F$ {( C. M& v+ E% s0 P0 |
                        //m_lightColor = lightColorPrv;+ K- i9 f7 j# k+ |$ E
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;# q( o9 k* P$ v- u+ I! t1 y* t
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;  S/ m! V2 {+ U6 E# b
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;  B; ?( u: P8 x+ R* G
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
3 r3 b+ Q4 {- l. `* x/ `                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
! U& h( a; D9 [% q, ^9 |+ [0 S% W3 m                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;  m" g& i, V: `
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
" p) ~. s  {: w! O" i: P9 U' P2 V6 }. X% \; R( h- F) B+ |; H2 L
                        // à??μ oˉè*
* j. o5 N: m& f+ p, `                        pLight->Diffuse.r  = lightColorPrv.r1;6 D; D( U; }( E/ W1 i
                        pLight->Diffuse.g  = lightColorPrv.g1;
8 n8 ]+ g: S& W7 _9 S# o: F8 @                        pLight->Diffuse.b  = lightColorPrv.b1;
9 }8 ^( f1 E3 k) }                        // oˉè* ??à?
1 T7 k: X# g% M                        pLight->Specular.r = 1.0f;
' K" O7 ^( B  _! p% w$ ?                        pLight->Specular.g = 1.0f;5 T+ _  D; |+ Z, c# D
                        pLight->Specular.b = 1.0f;
) w4 s& g6 c3 r- n( X                        // àü?? oˉè* 2 v- z& ]3 ?* q& v
                        pLight->Ambient.r  = lightColorPrv.r2;1 `" _3 k  R2 o4 ^8 T
                        pLight->Ambient.g  = lightColorPrv.g2;( K6 s9 T  P0 ?9 S4 q
                        pLight->Ambient.b  = lightColorPrv.b2;2 P) a2 {! Z% A' X1 E+ t

: U( j5 D8 n% u. G7 Q+ t! x2 |                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.4 }. _( E5 @- b' T( {
                        {) z4 }: T$ {- D$ D8 t
                                pLight->Diffuse.r *= 0.6f;! @4 I( {  N) J
                                pLight->Diffuse.g *= 0.6f;4 X+ c0 K. D# M" G. e4 m
                                pLight->Diffuse.b *= 0.6f;6 ^$ }5 P& d7 T& c6 _3 C# R
                                pLight->Ambient.r *= 0.7f;
" J3 ^6 z5 J+ v" F! C                                pLight->Ambient.g *= 0.7f;
' B- G8 z8 d2 z4 M, F                                pLight->Ambient.b *= 0.7f;5 q5 G# m+ }# e. c+ K
                        }! d7 |% c4 _1 C( O' e' F1 L9 z& m, a
                       
/ V- Z$ S) A! Z3 ]5 a# e#if __VER >= 15 // __BS_CHANGING_ENVIR! p* y9 {2 d( j) e" u0 a4 g2 p% `
                        if( g_pPlayer )0 G( J  Q- d! z3 T) z0 y  q
                                HookUpdateLight( pLight );
! g; {3 {5 z) O1 R$ v#endif
2 U, c2 Q  A8 p8 g( ~                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ [$ d  Y( x! F
& p+ l9 {+ D4 O* ?* J#ifdef __YENV
+ n8 `6 I5 {& O3 X: |                        pLight->Diffuse.r  *= 1.1f;( G5 U# e( S3 L9 g- V; k& {
                        pLight->Diffuse.g  *= 1.1f;
: j0 w, I7 @* H4 Z0 j' t- D                        pLight->Diffuse.b  *= 1.1f;
" U5 k/ K7 E. D# H( ]- R                        // oˉè* ??à? 3 w+ {% ^4 M5 u3 w
                        pLight->Specular.r = 2.0f;
) ]5 S. \% V/ z+ `+ N% X                        pLight->Specular.g = 2.0f;
! I5 ^* h5 V3 D5 ~                        pLight->Specular.b = 2.0f;: H4 O2 c- Q- I- r; \1 G
                        // á?oˉ
1 V, b0 _" Z/ j9 v# @% m* v$ i6 `                        pLight->Ambient.r  *= 1.0f;/ L# l7 r: ^' E5 b
                        pLight->Ambient.g  *= 1.0f;; G: S2 X  ]7 B; z( n, h# g
                        pLight->Ambient.b  *= 1.0f;2 U! h. s; y% y1 A# R: \
#else //__YENV
: u* D$ W8 Z# d) k( I8 a                        pLight->Diffuse.r  *= 1.1f;
2 c5 M8 L* n( j                        pLight->Diffuse.g  *= 1.1f;
* ~) X( |' S( n  `/ H' G4 M/ m5 z                        pLight->Diffuse.b  *= 1.1f;: i5 o" c3 ~/ \% W+ d
                        // oˉè* ??à? # W/ Q$ E' n- T; W9 B
                        pLight->Specular.r = 2.0f;
0 b$ w1 [8 x1 U                        pLight->Specular.g = 2.0f;2 Q0 Z1 X6 l1 s) v
                        pLight->Specular.b = 2.0f;
/ R6 \' u! j1 ^" K; \! V* {* Z6 g- ?                        // á?oˉ + C( c2 S  S7 R. Q7 S6 T3 ?0 o
                        pLight->Ambient.r  *= 0.9f;3 Q6 _7 E0 u- `. R% |4 ]; P# l$ C
                        pLight->Ambient.g  *= 0.9f;9 U# h8 ?# P" P* Z
                        pLight->Ambient.b  *= 0.9f;, M4 c5 c/ P0 w' E5 `4 I. v* f
#endif //__YENV $ p8 m, C- X( b3 B1 r5 f+ x3 Z
                       
8 N; _% a8 R5 v( O                        memcpy( &m_light, pLight, sizeof( m_light ) );6 N! a; a/ B4 e2 L
                       
, S* i) s! Y% o, T" {. A6 f                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);4 `* Z' o, O3 D, R& H
                        D3DXMATRIX  matTemp;( A. E1 h9 B2 X. K  W& V
                        static const float CONS_VAL = 3.1415926f / 180.f;* @6 s1 k  z5 j
4 Y) k- {, Y( ~5 n7 H
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
% g# h8 q9 j4 {+ N                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);+ v/ U; M7 z* S9 ?' ?& |# Q
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); ) m( @9 M! Y0 t. o  r9 C6 {0 L
                        pLight->Appear( m_pd3dDevice, TRUE );1 V# ~$ o1 N9 j0 W

8 ^2 J8 r; |9 l, k/ G                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
& w" Q; ^9 `6 o7 [" G                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));4 ?5 l, F1 ]. P: U
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. X8 Q/ N/ i' v) J$ W2 f0 z1 [: t5 ^
                        DWORD dwR, dwG, dwB;: o( G' D' }& Z' A
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
8 y9 ^; k- z0 l' k% W2 t) B* m4 ]                        dwG = (DWORD)( pLight->Ambient.g * 255 );
% r8 a& y$ m* h# N% [; R/ o* j" W/ V/ x                        dwB = (DWORD)( pLight->Ambient.b * 255 );
$ o8 T4 F- Z. w) ?! S& K9 O                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
( U4 l: }, j# n                }
) R+ {/ {5 Q: ]2 ]; N        }' v7 o5 G% v: ^! n+ S- s  u
% G! J9 }0 f/ u$ G  W
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
6 K- H8 v8 [- m0 |6 G$ U        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) );
3 i9 x2 c+ T& k1 T. r        ::SetLight( bLight );) x+ N9 f  y- H7 V8 v" |2 X- ^

8 ~; Z! ~9 {) q$ ?# p: a        // ±ao? ?D?í???ó á¤à? 2 Q4 I. |& Z0 H9 A% q9 B% t
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
! D8 s( G; R* h5 l4 N       
  Y7 y/ E0 |* ]% y- e#endif // not WORLDSERVER
' u! b: s- ~9 E2 f2 }}- D" Z* _: ^* y" E! I3 q2 q
并更换
+ A& S8 @+ W' _9 R' FCode:
" ~* F" W) e4 ?" O" B__FLYFF_INITPAGE_EXT/ c2 i3 W" @( D, t6 G
定义
; y4 v% h7 t# O! r& U
+ h7 t1 Y$ D( T$ z5 v3 W3 L" Z( {9 D  m7 l1 S6 x" r
; e; e2 h: |9 u" g1 t. d; ]
$ r, l  y) [% y" c. G" J6 g
现在终于删除我的狗屁加速...4 @3 J: S8 m, Z3 f5 {2 V

+ S" W& r, O  C( d3 }/ ~& O. t0 R4 l/ S# V" c5 n3 E

9 D" b: d% t' X( i6 ]% W$ _




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