飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:% V3 l$ z  ]1 |; U- V: z
尾翼:
3 \9 e# {- E; m4 g5 o3 h3 a' ^9 R7 Z  a4 T
代码:
; f/ x% y  o3 Y6 s" SCWndAutoFood::CWndAutoFood()" h- U4 p3 ]9 z2 z# d% W6 j1 u
{/ _2 O4 @% f6 t7 E
        m_pItemElem = NULL;
6 M3 E$ k/ y3 i, G        m_pTexture = NULL;
7 ]4 r3 G: X# W8 P9 o        bStart = FALSE;. o6 a5 _& a, l- G, _
}& F) M% [1 i& G  f1 Y
& r7 W5 c' @1 V5 s
CWndAutoFood::~CWndAutoFood(); C) n6 O: K7 h  s/ m
{$ p6 ?1 X1 t. c4 D
        AfxMessageBox( "AutoFood ist gestorben " );
% q. ^& ~0 R! n4 R) d$ Y7 v* l% ?}* W) Y- N  c0 I% u
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
  |* a" `8 h8 g  {$ y% a/ ^{
. J8 U% N6 z& L+ ?& w8 t        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
; h4 H2 Q2 a* c. V+ w3 N! g}, d9 i9 h- y/ B' N( Q& M5 q' L
3 Z: t& m- z- X3 b1 I8 U4 N
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )  R/ @% i( M# C+ _* L
{0 B- o9 ?1 O5 U) L
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );9 }6 ]- S; a$ c! u7 Q
        CRect rect = pWndCtrl->rect;
2 n' o% e; A3 i        if( rect && rect.PtInRect( point ) )3 N; T1 x/ {# e4 L) {/ K4 p
        {- C" E1 n/ i. r' c6 @: C
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );- ]* U5 c+ U" [1 s! h
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD ): S  u5 d; n" m8 Y
                {
+ L) g: O+ `% w                        if( m_pItemElem )' {- i6 R. h% y& i- z" d( X
                        {0 n- C/ p- w# F1 v) o2 T0 G
                                m_pItemElem = NULL;, }6 ^5 q4 ^* Y- N
                        }
4 ~* P. h7 c7 o% g8 `0 N; u                        m_pItemElem = pItemElem;' p% e) t9 p! @, g  y3 w6 y$ v
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
+ d- T" b6 L# a2 D" Z/ h, f; E                }else{
$ X: L: U! N7 N) y                        SetForbid( TRUE );
( N0 x8 ^, X4 H7 ^4 E" g% @3 I                }
0 w( _+ y  y7 L* B9 e        }else{0 I0 {5 P; r4 j2 i% n
                SetForbid( TRUE );
" `% _8 w7 K5 o+ I$ J) P0 A' b% Z        }# X7 e1 @! m5 `) V
        return TRUE;8 I* U. }4 D8 J
}
# y2 D7 N5 z, c5 A
; E4 A; g5 p7 F& VBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )$ n8 F6 j" e9 ?# t
{
! |  b  x* r- E. K- U& m3 k        switch( nID )
1 m0 p( |$ d* ?$ J$ m7 j1 I# i# X        {7 Q& I1 |6 g" e! ?% n  R6 B0 b2 z
        case WIDC_BUTTON3:4 M, S% s; N1 k
                {1 Y* ~  w8 n! @! M
                        bStart = TRUE;0 X4 a. R3 P) U) r; O
                        break;
$ e' V( U8 ^6 T  M: K/ g( T                }2 H* c2 d. f0 x0 v- r+ q5 |
        case WIDC_BUTTON4:; W" {# Z. z/ h
                {& r" l$ ?- J% S& E
                        bStart = FALSE;
1 h6 Y. F# s# [8 q( f+ z                        break;$ a% ~! |  Z/ r+ u
                }) P, w; G4 K+ O5 t: ]
        }
8 k4 X/ U3 j" q" X        return CWndNeuz::OnChildNotify( message, nID, pLResult );& t1 M% @  F" x  ^
}       
' X1 _* C9 S# H( L7 qvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )6 n7 G* x6 `( X# b8 m3 i
{5 s* Q; N, @4 i" z+ D. q9 i- l+ j( j
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );. y9 W" _. w' X; [% A
        if( bStart || !m_pItemElem )' h% E& |( F, E0 |7 @
        {; g- |  @$ r" W2 f
                pBtn->EnableWindow( FALSE );$ K, A* J: ?- R  G3 }8 E+ p
        }else
' o, t/ y1 V- N: D% m5 m/ ]                pBtn->EnableWindow( TRUE );3 _; `. [7 s4 R9 A# a5 |
        if( m_pTexture )
( j5 O" Q  \( |% c! A# X' g        {
7 H1 x6 ]' V- R  N9 m3 A& I& [                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );( u4 c0 X8 T* X0 j
                if( wndCtrl && wndCtrl->rect )
3 d. ?8 c1 L0 H4 H                {
2 i, q8 _+ i9 d                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
/ f+ t7 u1 P1 r$ f) p& v                }8 e( v4 B# p! U% b
        }* T9 f' E; j, b( w) g
}
# J( [+ r' h# T2 @  M2 p
6 i  L# C! l, M2 l& jBOOL CWndAutoFood:rocess()
1 y7 F6 H, X" \$ z  m( r{
: u: O4 a( v" |% r$ [- t, D" W. a        if( bStart )
) O9 D% s8 H4 w        {
% k8 E4 k& q/ T3 J: q! t+ }, [' y3 I                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )* {$ l1 q, i  h; [/ @) J
                {% k7 r' W" S& K  C1 U
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
& I6 d) l; B/ [                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
9 h+ A- W" G* M                }else{( ]4 Z! p) J* l! \; ?$ }- Q- P
                        bStart = FALSE;( F, s% d0 l6 I9 M
                        m_pItemElem = NULL;6 }" w3 ^8 r, W9 M1 D2 @
                }
- J+ _" A( {1 s3 Q! N/ o5 J        }
' @0 r' P+ D0 D' c& V        return TRUE;
) L/ @7 `0 ]0 N- D1 ^  r  V* r. _* j# d/ T}* O' u% I" r5 L( M
9 T! F9 C+ [* z7 \9 h1 h% Q- x' \; y
登录视频废话:8 F2 J( @* l6 w; a
尾翼:: ?. v1 F3 f/ L5 x, I% u
/ u! x0 u! ^% h! m& t; y6 ^
代码:. ^) {# ]' \7 U  o/ q) k1 M* J

0 ]6 R& D8 M& Q) E8 }$ _void CWorld::SetLight( BOOL bLight )
; E: D$ A8 P0 E9 r/ e0 \durch
% Y1 i- U9 ^7 o4 z, LCode:/ Y* ]; g, j7 y2 [6 g9 J
void CWorld::SetLight( BOOL bLight )& W2 l6 [* F$ E6 g
{, G: i& R0 O5 W8 t  K6 E  }! @9 l% o
        //ACE("SetLight %d \n", bLight);
9 N; ]; a5 s1 O7 c. |# Q        * O6 |  g( o4 I9 O9 N$ L
#ifndef  __WORLDSERVER
3 r8 W0 g) ?5 k( a- X9 L( ]        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);4 T# f" R/ _5 z2 W! A/ h
        CLight* pLight = NULL;- b: K4 d+ Y" l* `* n: D/ v5 [7 T1 Q+ T
4 Z- |. }' ~* j( L
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );' l$ t% g( V5 z! k
$ l5 ^' M' O$ t  n
        pLight = GetLight( "direction" );
( Z) p: I: J1 Y# e5 ~: j
( U9 z4 \, m! j#if __VER >= 15 // __BS_CHANGING_ENVIR% z+ E( m) Z1 A' K
        if( g_pPlayer ){8 Y' d9 u+ A" A$ z0 V7 V5 t$ M# l' l! z
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );! V- p  y) z2 d/ ]6 K
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!. O/ P' e6 ?6 q4 d3 D# k* L4 v6 L6 B
                {
, A$ n! _. N! p1 R8 `- b/ z                        if( pLight )
' r" r+ f- D* `6 X6 c, I8 ]# m                        {. u, Z- n3 z- S, g0 Z8 @
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
+ r0 G, [$ j' U8 f* [* X, n7 }                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];6 t6 H# O+ W& o# W+ x
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];4 w1 ~) H! R) T3 H: Z5 W6 m9 V
* ~0 {. I5 `6 b0 B% m
                                pLight->Specular.r = 2.0f;4 t2 L: L) E6 R/ `
                                pLight->Specular.g = 2.0f;7 C# n" b( C1 k/ z4 A
                                pLight->Specular.b = 2.0f;, ^* `4 x. }- V
       
7 v# T8 t: Z, _: [                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
3 y3 F- ]4 S2 N                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];% L0 {9 e* p/ h' d( R, S
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];+ y$ G1 ^  s* j5 [: Q4 _9 D7 F
        7 G. v4 q' x, }# m9 m) ~
                                HookUpdateLight( pLight ); 4 ^! n1 d  [% V# F  D. ?2 g  ^

0 E2 p9 ^- H8 w1 m7 I1 j) t$ H                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );- ^4 |/ m5 E' {0 I: c- v
               
$ Y  a" X, ]: n/ A                                pLight->Diffuse.r *= 1.2f;. g: a* G2 @7 P7 M3 O" o
                                pLight->Diffuse.g *= 1.2f;
# W4 D6 F' a% x. e8 Q                                pLight->Diffuse.b *= 1.2f;
5 ]5 S6 n. ~( n0 p
7 M* B  V) I' b' N5 U( p                                pLight->Ambient.r *= 0.8f;
, w# ?3 V9 D( \" K! B+ S- {                                pLight->Ambient.g *= 0.8f;* Z, }' J+ z6 W) V% @0 _, Q$ P
                                pLight->Ambient.b *= 0.8f;
  F" x: Y6 V$ `8 O  U       
8 `) B* }2 s$ K6 O                                memcpy( &m_light, pLight, sizeof( m_light ) );! Y1 N2 @/ L9 s8 B0 a

& p- T8 ^4 G# V: J2 D  `                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* [9 C+ |  n2 W. J5 R; f                                 D3DXVec3Normalize(&(vecSun),&(vecSun));* m2 q# p/ f* E
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); . y3 V! b! ~9 D5 O+ A4 T/ g7 ~
                                pLight->Appear( m_pd3dDevice, TRUE );
. `; I8 ?9 W+ F2 q. J  a1 F. N                1 t( |5 W3 L2 t( w5 r4 v
                                DWORD dwR, dwG, dwB;) e4 ]$ O1 I9 I6 x* S3 v+ i
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
, S: M% u% w6 ?# q/ W) `                                dwG = (DWORD)( pLight->Ambient.g * 255 );
/ Y+ T4 u  ^, [9 p3 u4 g                                dwB = (DWORD)( pLight->Ambient.b * 255 );
: q2 k! Z# p* L. Y7 `                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );; t( M4 F3 V: L9 f
                        }
+ R; y  X! f  n, {" S                }  h3 q  Y7 U5 \* ^
        }
8 l+ g. z0 j5 }        else; w9 _/ A7 e7 U- x6 ?& \  N+ P
#endif
% U6 z- B9 y: m7 e
+ c4 \3 i# T7 O6 p# W! ~1 `        if( m_bIsIndoor )+ j5 m, N1 b$ j/ C
        {3 k3 Y9 S" a  y5 o$ N6 o
                if( pLight )$ g! c, W5 `% N. D% R8 ]9 D' s' M1 M
                {                " R' v4 H+ }! c6 W4 W) S3 n3 g  j) G
                        // à??μ oˉè* 2 `; \" E1 A  X  t! {: M- R2 @
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
& O# q0 Y9 [$ O* u4 A* H! H                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;& ~- }6 T7 X# {& ~9 x
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
1 `( C( D: N' r
) C' P1 z- Y9 g. A7 v                        // oˉè* ??à? 8 ~7 f( ?6 g0 O. V  [* c
                        pLight->Specular.r = 1.0f;
. E0 d' u0 F5 T2 T! a/ V' H) [! d                        pLight->Specular.g = 1.0f;
9 s! E; Y' f3 |1 O                        pLight->Specular.b = 1.0f;
* E* n8 R$ _3 _8 z( U8 y. h                        // àü?? oˉè* 8 S/ y$ b, {$ ~4 [
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;8 l" g/ w- R* v  R, F3 T* \) o
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;1 p. }. V; D9 E" E+ ~1 U- k
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;; g& u# w" [! g# X/ ]8 H

5 r. P4 H. Q7 r" R                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
0 _% t/ g- M, H8 l                        {
. l' D8 G  d( y                                pLight->Diffuse.r *= 0.6f;' @: p1 J3 o8 Z5 |( Y7 A6 X7 `
                                pLight->Diffuse.g *= 0.6f;
. K6 h8 f' r: w2 z( P2 B) z                                pLight->Diffuse.b *= 0.6f;% S0 ^' w9 \4 T  p+ d3 z) q
                                pLight->Ambient.r *= 0.7f;
7 N0 S; w6 Q& `, ?. R9 X                                pLight->Ambient.g *= 0.7f;7 {7 p5 C* }; C" @
                                pLight->Ambient.b *= 0.7f;
5 I5 F& r; O4 O9 B4 p                        }
  b5 s) ]& Z$ c  J: O3 O% g
2 S' R- b: M2 [6 D" D/ I#if __VER >= 15 // __BS_CHANGING_ENVIR
& X& ]" k, q8 t) a* x                        if( g_pPlayer )6 e+ h4 d* K3 N& }& N
                                HookUpdateLight( pLight );
. b" u8 ~) m2 A% n* P0 p5 ^6 c#endif
4 l! @$ U* C1 Q% Q5 g7 ?3 U                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );7 q" e  `3 z) z% @0 j

/ V7 a1 t2 x5 l* z& x                        pLight->Diffuse.r  += 0.1f;9 l0 {- n  @5 K# B, a+ S
                        pLight->Diffuse.g  += 0.1f;+ j' }0 k+ R$ j
                        pLight->Diffuse.b  += 0.1f;2 i+ l/ ?) C) f
                        // oˉè* ??à? $ J- X) T; |. R' g& H1 A
                        pLight->Specular.r = 2.0f;2 b0 {. e9 i0 m
                        pLight->Specular.g = 2.0f;
& [: p- V9 K" E! x* f1 e                        pLight->Specular.b = 2.0f;
$ b0 W+ S1 `, k2 m  b# a                        // á?oˉ : z- y# h" I& ]7 k# v- E6 [
                        pLight->Ambient.r  *= 0.9f;0 {" ?8 a" q( ]" d# F$ E) L
                        pLight->Ambient.g  *= 0.9f;
, D1 Q( y: N2 P$ x* |& n                        pLight->Ambient.b  *= 0.9f;
* }0 l  z! X0 e* a0 @1 M9 Z: w/ C) K, O
                        memcpy( &m_light, pLight, sizeof( m_light ) );  V; e1 ]  K6 A  v2 R& O7 w( a3 |
                        ! o7 g4 X5 y) Q2 W  H! _3 F3 A
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
+ O4 v# k7 i* W* c4 {, q                        pLight->Appear( m_pd3dDevice, TRUE );
( Y$ |$ o" I3 m9 ^8 u- N  M! D! s        5 {/ c0 d9 z! `- V' x
                        DWORD dwR, dwG, dwB;
/ j  D. T8 @$ N% n1 C6 ^                        dwR = (DWORD)( pLight->Ambient.r * 255 );9 i; \  V- r3 m" f! {' d
                        dwG = (DWORD)( pLight->Ambient.g * 255 );/ m6 K# ~) f' h0 \( ]- G
                        dwB = (DWORD)( pLight->Ambient.b * 255 );5 S& P+ `+ S8 W" @4 J* w! B( q
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* m" l. m* u  n1 p                }- P" j/ ?  b/ B
        }8 O( ~/ i2 j- [/ C* @
        else
1 X& n) I: y+ E- D2 _        {' H  v! L- e% K, ^
                if( pLight )
4 \( W) i" j8 B/ v$ q+ x2 I  ~                {1 C& `5 d2 G4 G* h3 r6 s: O5 w( h" P
                ! l" T# G% r1 |( V
                        int nHour = 8, nMin = 0;
3 A# i! W  N5 o$ W1 f        #ifdef __CLIENT
6 w0 S) S9 D! ~$ W                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
1 _# G, |/ p$ W1 R% B4 R% h                        nHour = g_GameTimer.m_nHour;5 V* w1 N8 ?. Q" g, T
                        nMin  = g_GameTimer.m_nMin ;
: @+ }" S- P- ^9 Z1 Z. l3 \        #else
) k' p/ Y7 p+ F6 F4 v! `4 A                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.+ G% \+ Z! ~$ }. S! C& T1 i" c
                        if( m_nLightType == 1 )
# m% E. f3 r* t0 ]                                nHour = m_nLightHour;
# u) P3 L6 U2 U        #endif# Y: }. b: x0 B7 e( f
                        nHour--;! m: M  Z5 G) B2 b3 d, N
                        if( nHour < 0 ) nHour = 0;7 A/ m2 L7 Q/ j4 p  a
                        if( nHour > 23 ) nHour = 23;: q, r5 b! _2 ^- l7 d: i
& F" m/ T6 H3 o
                        //if( m_bFixedHour )
" t- V2 H2 O+ j% R4 Z8 p' R                        //        nHour = m_nFixedHour, nMin = 0;# d3 ]. ?) @; n) y, H
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
3 M  u% i5 F% q# Y* ?                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
- o( ?1 A. K2 ?. c  C
* i( ~: Z4 R  a  b                        //m_lightColor = lightColorPrv;
2 e: ]- c. c# M                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
, J9 w8 e( E1 K8 j. b) F4 h                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;0 ]9 U9 }8 S) |
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) ?8 Y. ~7 q! F: M6 `0 w                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
0 v- T' E" n0 G+ |6 h" z* p. S                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;$ h# ?+ I' h7 K0 |+ O/ c
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
1 Q+ i- h. o. z/ X3 S9 H7 g                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)& b! |: v$ E, @4 ^

, s9 d% \- w  }" J                        // à??μ oˉè* / y4 A/ |# i) M% [
                        pLight->Diffuse.r  = lightColorPrv.r1;; L* K4 S! S* N7 G
                        pLight->Diffuse.g  = lightColorPrv.g1;
) [9 i5 t$ `" ], ^: K                        pLight->Diffuse.b  = lightColorPrv.b1;* }6 l2 h/ k1 j( M) [  c9 U
                        // oˉè* ??à?
* O/ b+ r3 _' ]$ \+ y7 Z                        pLight->Specular.r = 1.0f;
8 Z" d0 T  y' E4 R) b                        pLight->Specular.g = 1.0f;: z8 h0 v- F+ ^" A% o- M
                        pLight->Specular.b = 1.0f;
3 }1 O% ^' U! z, F                        // àü?? oˉè* 2 h0 T7 `4 d9 m4 L
                        pLight->Ambient.r  = lightColorPrv.r2;
7 C4 `4 V: |7 T0 y) g' Z                        pLight->Ambient.g  = lightColorPrv.g2;+ ?+ v; _0 {7 ]1 S) U; t% }/ h+ Q
                        pLight->Ambient.b  = lightColorPrv.b2;
( T+ ]; T+ S0 e& X
# U, Z6 X2 Q$ g                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
2 [5 {+ i6 J# h                        {
0 k0 b1 |  |# q" {                                pLight->Diffuse.r *= 0.6f;
) Z& e5 X) _8 F4 \                                pLight->Diffuse.g *= 0.6f;7 M5 N1 f2 l# C- S. G" X8 |
                                pLight->Diffuse.b *= 0.6f;
+ a) a7 i$ T- x# |% G6 Z+ f                                pLight->Ambient.r *= 0.7f;% v! v: h8 S: W# Y0 w+ d2 W) w
                                pLight->Ambient.g *= 0.7f;
0 B' m4 K  K1 Y0 C& f4 R- `6 I                                pLight->Ambient.b *= 0.7f;
# t0 r3 f9 r7 D7 O# K5 P                        }7 l, n: G4 c: C2 }: u
                        ) ^) z6 l8 b. V% ~% V  v. k
#if __VER >= 15 // __BS_CHANGING_ENVIR
% ]% I+ r& e" K( m/ a                        if( g_pPlayer )0 J5 Z1 _$ w/ _/ S. S
                                HookUpdateLight( pLight );
7 ^1 p% g1 ~  e6 }  c7 E#endif
% J! C2 P9 }! M5 S0 a: c" ]                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 V  i4 {, O3 B) l# R; R8 }& j2 @; O. P0 P
#ifdef __YENV" _+ N5 u3 Y+ o. l. k6 W
                        pLight->Diffuse.r  *= 1.1f;
# n  `# Z9 I' K/ Y6 M                        pLight->Diffuse.g  *= 1.1f;
3 A3 I5 o( H% u+ n2 n5 V                        pLight->Diffuse.b  *= 1.1f;
: v; ~+ {' M8 w5 n                        // oˉè* ??à?
! @) o, u+ h0 I0 l1 e                        pLight->Specular.r = 2.0f;) _+ U6 T( A" o0 ?" K; i. R9 _/ L
                        pLight->Specular.g = 2.0f;
0 r+ `$ I3 C- A, m; v9 A. o+ I                        pLight->Specular.b = 2.0f;% b/ U: p" Q3 C0 M% m$ _
                        // á?oˉ 6 K5 s  f; }3 K2 l) i' t
                        pLight->Ambient.r  *= 1.0f;
8 W2 C0 d  Y% q* ~+ E$ o5 |; E; @                        pLight->Ambient.g  *= 1.0f;6 T$ N+ y/ |( n0 p1 N' F* `
                        pLight->Ambient.b  *= 1.0f;
2 c: b7 W1 t$ {: X9 V+ t3 l#else //__YENV
, M' J! ]9 V! G. Y7 }& K7 g                        pLight->Diffuse.r  *= 1.1f;; Y+ d- i4 M9 j' b
                        pLight->Diffuse.g  *= 1.1f;2 E; ?$ @2 X: `1 C% }1 W$ a
                        pLight->Diffuse.b  *= 1.1f;& f' ?4 y8 I/ Q* l# v
                        // oˉè* ??à? / j" m$ @$ \* c
                        pLight->Specular.r = 2.0f;* F& E4 Y8 V) W& q
                        pLight->Specular.g = 2.0f;
& b. p/ k5 s; B" }8 ~                        pLight->Specular.b = 2.0f;9 E- \, D& q+ ?5 V! {
                        // á?oˉ
/ h" F5 b6 y) R# R6 @) u& m                        pLight->Ambient.r  *= 0.9f;9 ?' R6 G- F! l' z6 s- Z
                        pLight->Ambient.g  *= 0.9f;
+ R( w4 P6 V: C6 ^, t: {                        pLight->Ambient.b  *= 0.9f;
" \; j4 C. S+ K- J+ |8 J#endif //__YENV 6 {" J* N3 g- ~9 D
                       
9 ]) ?  C8 H" z% K4 _% |/ y  L                        memcpy( &m_light, pLight, sizeof( m_light ) );# t4 R! G: N3 B. F$ N6 O9 K! O' d
                        7 l) S3 P3 D1 R: O! ?4 `/ J) I
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);9 [! F. {! E. o) y& [2 @) k; h! F
                        D3DXMATRIX  matTemp;
) ^( m; Z% W; N3 Q1 _' w& p, }, A6 n                        static const float CONS_VAL = 3.1415926f / 180.f;
/ m) P7 s# c  z  D: M* r; x) }8 T8 Z+ w# U' y% A/ A
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
- H! d* D" y( w. f5 o  ?# ~                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);7 B  u; L! f5 y
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 5 ]' z; A' R# }
                        pLight->Appear( m_pd3dDevice, TRUE );
) e9 E) w% |; T9 X  _- j6 d3 V+ T/ C9 p3 Q. d3 F4 n6 R- A. g  V, M
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
( B8 A9 x$ R$ i; T                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));+ K" l* M& }, n" D& `1 V0 T( T
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 8 J0 u5 W% m9 Q3 m5 Z9 d
# v) v3 W' {7 k  i+ p# d- D
                        DWORD dwR, dwG, dwB;
$ Q5 H$ ~. L1 y+ ]* A6 k# b, _                        dwR = (DWORD)( pLight->Ambient.r * 255 );. G/ o9 Z/ |& u) P/ o
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
# a- [+ R1 o. A                        dwB = (DWORD)( pLight->Ambient.b * 255 );0 h1 o5 u$ [) @, @: P0 O
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        & C/ m; q8 q) ?4 A6 C! D: |
                }8 d( I9 _& d6 g3 e7 W8 G0 T
        }3 p$ X; A( q2 n+ Z
! l" F1 s, S; z7 Z7 z
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );5 _, W" Y- L  m" q6 {
        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 V; u" [" x5 O, Y6 t/ r        ::SetLight( bLight );! g* `% w! |2 \8 K3 ^, M# q* H$ w
8 Q/ i2 p$ Y- u: f
        // ±ao? ?D?í???ó á¤à? ' m+ i8 s# g& m4 v1 X4 s
        m_pd3dDevice->SetMaterial( &m_baseMaterial );3 V6 i/ k) v5 B5 h5 Y- t* f3 [
        / @2 f! O6 O' N' j1 s) o
#endif // not WORLDSERVER
' B- g# {( Z9 ~- j8 g3 ?}% L9 ^7 {& \5 R5 v
并更换  `3 v1 L- d# a- E
Code:
/ m4 [* p* i( J9 F' Y9 D; a; e__FLYFF_INITPAGE_EXT
9 O& U3 q+ z7 [) c* E" G- K定义/ n2 b9 S; L) v4 s1 S: F

. L1 T' b% Q- a/ R' ?3 c9 X
- z; H. k- b) p" T' q4 @) N7 d2 O8 z* k+ E1 ?' e" ^

& W. {; A: P  t+ ^- h! L现在终于删除我的狗屁加速...
( ~5 F% r* X/ q) A6 ~' B* K8 K1 w1 I% i6 }( H! r7 q" K5 M

+ E0 n% c8 J! s& A, G& M5 a  N4 ~1 Q4 R5 [, v





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