飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
3 d7 e0 }. C. S  z0 U* v" ]0 f尾翼:* u# h1 Y' ~3 k# t5 [$ C

/ m, e: {0 v4 d3 p' v. f代码:
# g. a: \, o* R  o8 s. J% hCWndAutoFood::CWndAutoFood()
8 E% }8 J, b% G0 ?* p7 f/ ~{+ ~% c1 n) I+ i6 N2 d. M2 G. @0 q
        m_pItemElem = NULL;
6 Z4 d% u! @! m+ z; s        m_pTexture = NULL;
% C  _7 M$ o; j# e1 d        bStart = FALSE;
" Z/ @' O" D! a) ]}
2 ]! d" r0 G3 i9 t
. q# L+ a$ F, [- _3 f7 FCWndAutoFood::~CWndAutoFood(); ~6 O/ g, w/ j# Z2 O
{
% w1 _. H/ ?5 u. H0 P/ C! S        AfxMessageBox( "AutoFood ist gestorben " );7 `4 K  f% |. Y5 X" E
}$ T( I4 x( H- m; C% ^+ I
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )2 F0 J: L2 H1 L! l& R6 {9 E) U
{
. w3 i  w5 k9 w. m        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );" D& {, ~3 U" S2 ?0 K) H5 p8 M
}- O0 I3 m& `% q# [; I8 S6 T3 R

* y6 ?9 Y% ?) Q! r6 y' _BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
1 M% u* A8 ~$ |8 h* {- T. c{( u  E% q) `, ~5 m$ @. k( G
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );# B1 z2 r% t1 d( B
        CRect rect = pWndCtrl->rect;; Y% y& O; m7 x: w6 U0 P& i. U8 s
        if( rect && rect.PtInRect( point ) ): s* V. Z+ Y' k, u
        {2 R3 V$ r  N- Y& s
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
. M. @: c+ t1 |( Q5 p, u                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ T/ T- ?' D$ Z1 M2 a; \                {6 O# i* b* G" Y1 @
                        if( m_pItemElem )2 M3 m8 s3 C& b8 ]' _
                        {# n& F0 I9 |0 o4 [8 {' Z+ e8 e7 x
                                m_pItemElem = NULL;5 P9 j6 v0 Z. _9 L1 ]& \
                        }# ^% v9 @$ v! W& t1 Q
                        m_pItemElem = pItemElem;2 B) [1 {4 j% E6 X* y
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
$ x) a5 o: b, ?* i                }else{
; l5 r# M. f$ ?' ]* \$ u                        SetForbid( TRUE );: i8 U$ [5 m: _: t) x) o
                }! `* L8 Q% e. _( j. p
        }else{
/ r* y4 n$ ~# K$ _) b6 E                SetForbid( TRUE );+ o% Y1 _5 D/ ^. Q, T
        }9 Y" P) Y" L+ Z+ ?
        return TRUE;
) r- Y9 v2 l, V0 ^' P6 k: @}
# i0 b% n9 r2 R. R  \! g0 k& k! j% E% ~+ b
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult ), y$ n" F5 r4 H1 @
{
) B! U' t. o8 w" ?' Y7 \' M) o' f        switch( nID )0 R# e! U$ P( D5 w+ H4 e: S
        {
" f/ O4 w. W% g3 C8 q4 V        case WIDC_BUTTON3:+ @' |/ H5 x! i8 r
                {
5 U9 M8 S4 K2 Q                        bStart = TRUE;* c4 l( n7 ~1 J7 f9 E4 |7 G
                        break;
& j( t3 x6 n- B' T                }+ A1 Y) W2 i2 Z" W6 P$ F$ I- I' [, A( e
        case WIDC_BUTTON4:
! F' L, C& R2 e+ w1 P# O- T' u9 P                {
( H4 y, K3 c$ d- \" R                        bStart = FALSE;
6 C. C! F- p2 j* a" H5 ?0 y                        break;
+ H) `% w+ I8 t1 j                }! N; _  ]+ s& J3 x$ ]
        }$ g5 l# i6 ~- l! i+ t
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
; J8 e- `% @2 ^}        + o) P/ n' g+ b7 x' L
void CWndAutoFood::OnDraw( C2DRender* p2DRender )% c- J; m, J+ [1 c" M1 A3 h
{
( A+ H& T/ {5 k8 q! h+ F# W        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
( G7 O- W' r% o1 c, ]$ F7 s/ ~0 m        if( bStart || !m_pItemElem )
& x  y. @, }9 |: c4 y# ~" b" w- L  t        {/ L1 p$ ^4 I6 H5 f9 G% l7 i
                pBtn->EnableWindow( FALSE );( l+ E1 ]5 r3 k8 o7 }
        }else
$ ^! R5 G6 V1 ^$ }; @# ?+ q                pBtn->EnableWindow( TRUE );) E6 p. ?0 t6 s/ W* _8 J
        if( m_pTexture )4 W* n5 C0 L! K* F% @
        {) H: S, Q! Y: D! @' L, Q: g
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );7 b' t6 }* v1 ^( x
                if( wndCtrl && wndCtrl->rect )
, U! k* _$ E6 k7 V                {* t: V, E) r5 L% g) T
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );/ S6 e4 h  V- K* V/ F6 H" N
                }  D& t% ~1 v$ t9 J, d
        }
( p- ]% ]1 c) X9 b1 j. J  a! l2 y* e}
/ M5 H2 t, q6 L0 \" d7 k% ]5 J! Q8 [
BOOL CWndAutoFood:rocess()) c" @3 K8 H- _& {4 n
{* C2 h0 o; T. @# G( M: c5 R; l7 |
        if( bStart )
9 o: N( ]& g: N* e# {: k/ m        {: L& x& l+ u+ p* @1 r
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
3 b0 [# q# {6 S+ ^                {
/ j$ y. S7 j& a3 B' L                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )8 T, h& r" g7 e
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
# H' g$ m. Z, Y- ~4 L& N                }else{
7 Q) h# e$ h$ A$ t/ ~) ~8 j                        bStart = FALSE;
% v: j$ r( Z, \( [$ y                        m_pItemElem = NULL;( D6 v, Z, n( n
                }, L* ?7 R4 I* |$ ]5 }( J9 L
        }
$ Z4 z5 q  y5 c3 ~        return TRUE;: y7 Z- E  w" t; \# v
}
. ]& k0 A, M# u5 c  p0 H
# ?1 F1 |+ j5 H登录视频废话:
. c  V  ?$ ^: u+ e4 f1 h尾翼:
# a" N/ T; N/ n$ k# }- S+ x& T: d! j+ t  E- R4 I
代码:
( E0 F3 O$ ?0 w" D9 [" j2 r
: u" \# U. @2 @# j# Uvoid CWorld::SetLight( BOOL bLight )- N* j( G/ P% h( k# r/ G
durch9 h2 T. T( l' E6 n: T
Code:& N7 A4 X2 U) J
void CWorld::SetLight( BOOL bLight )
4 b3 _; N, D% s7 t: h' \5 o0 R{, g3 X/ p( o' r; T8 ]
        //ACE("SetLight %d \n", bLight);
. D# z8 L8 F* o0 h+ U- N* O2 S        4 r* B4 s$ N' U% L7 g5 C
#ifndef  __WORLDSERVER
* F9 O2 L3 l( M& T  U+ I1 L        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);7 e7 F0 y  F' Y! _5 G
        CLight* pLight = NULL;
0 k& F" {7 I% ~2 ^" k4 D9 U1 L9 t4 A8 F2 `
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
' k2 h6 G) F# a0 R4 i- I
; j  w( s. Y" N) t        pLight = GetLight( "direction" );+ w6 s% k# V; W, }

7 M7 B, @$ e# G#if __VER >= 15 // __BS_CHANGING_ENVIR
# T3 x; g6 U& c        if( g_pPlayer ){
' I, ^( W% m4 I/ ~9 @+ ^. r# U5 n                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
# z. h# O: r& b( }; G4 Y                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!1 A3 W" \, u7 m: X& y, e* r
                {' @, M. b: M3 j0 T5 `. k  I
                        if( pLight )
; H% R4 @4 L: ?9 }$ k3 ?! O. }& V  f                        {
% z( x9 k- y2 E8 s5 _) Y                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
# i  _! U  _! U, j                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];; i& }: y0 `' l1 ^$ e0 u* O
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];$ v, h6 K+ a  ?8 D7 z: V
& m, a" t( d' }# Y
                                pLight->Specular.r = 2.0f;. x: E( l, G6 z. P3 |" o5 v
                                pLight->Specular.g = 2.0f;
) K0 o2 @' |7 Q8 x                                pLight->Specular.b = 2.0f;/ D) q5 p. K5 \) x
          g8 Z4 X/ b4 z( Z. p# \% E
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];! Y2 O  E! J+ p. p. b4 g% v
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
% p, w+ N( l% A, q                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];. J. P# ]& z. a1 m# g
          S4 w% d7 M* C9 L- r) y( p
                                HookUpdateLight( pLight );
1 s: N8 n& P8 K' Z  y' _( l# C5 r" L
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ }' b2 U: @2 b. a+ ~- f+ X4 c2 ]7 h% b                ! {3 b3 z) j4 a' S: k, x6 b
                                pLight->Diffuse.r *= 1.2f;% k4 |% w( G9 H6 i2 Y
                                pLight->Diffuse.g *= 1.2f;& `0 c& x  D) n( E- }( ~& f+ {- e
                                pLight->Diffuse.b *= 1.2f;9 W0 `( U9 ]3 d1 w* e% t) M
' Y$ B  ^& v9 I. I( ~
                                pLight->Ambient.r *= 0.8f;6 X7 `# `+ U( _& V. {  l
                                pLight->Ambient.g *= 0.8f;5 s. C$ o- o. _
                                pLight->Ambient.b *= 0.8f;2 Z; k( u. X6 x% |
       
9 x/ j, W2 v% C2 t. @3 }                                memcpy( &m_light, pLight, sizeof( m_light ) );& G+ p' [: U3 y1 b1 E

, C' R( Z$ y- d$ e( E                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);1 U  [; e; B6 z2 k+ ]3 Y5 o% T( p
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
% O% t* v+ H0 W                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 7 z4 u# B& |, S' R
                                pLight->Appear( m_pd3dDevice, TRUE );
7 w5 i' ~! I5 I: E               
: k; c) I5 ?/ ~                                DWORD dwR, dwG, dwB;
3 L( [# w( R: V5 R! V                                dwR = (DWORD)( pLight->Ambient.r * 255 );
1 v- e( M- g0 ~) a" j7 D7 m: r                                dwG = (DWORD)( pLight->Ambient.g * 255 );
2 q" w# m# n" h; k; g  q' Z4 q$ v                                dwB = (DWORD)( pLight->Ambient.b * 255 );! p1 E! D$ v9 g4 R! n, n0 y+ a1 [  x
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );# E2 C9 V' [: }
                        }
# H0 A: T1 b% f; C& c# W% S; Q                }
- w7 P) t9 ^4 R3 n6 m" {        }/ N2 y2 N2 a; @
        else
$ H7 w: _2 f% t& Y9 p& h; A6 u* m#endif & t, J& o9 V( S. E1 B5 r0 [( n
# z: b7 N% `/ P  [
        if( m_bIsIndoor )
! j. s6 @  j8 |' s        {. s1 u" p. q! m4 B6 h0 U
                if( pLight )
2 Y% B+ Q+ @# }2 F3 Q( H' `# Z2 M                {               
7 f9 o7 ]; ^: s                        // à??μ oˉè* 6 p8 U3 j- l. r' f2 l; [5 w6 a
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;" J* i( w. d& ?+ \" a
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;& \1 F8 w  F8 A
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;" t; Z3 S# x9 q. c, U

  e# s/ w# D; W, z* S9 M                        // oˉè* ??à?
/ y- s( s1 ?: E2 `, N5 A( W3 q                        pLight->Specular.r = 1.0f;
, s- Q& |+ Y. S( v4 y& `! {                        pLight->Specular.g = 1.0f;
0 y( I3 k4 Z$ r0 J) p6 F" N2 c5 d                        pLight->Specular.b = 1.0f;
& d! N' O( U0 g, e                        // àü?? oˉè*
0 T+ b  [2 `, q3 D% S; G                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
& w& R; _* n, D( d2 Q  v                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;* T  a8 S$ m5 j( a9 L; ?
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
2 {. ~+ V8 c) w0 q" b, {6 y! y3 J* W- y4 x4 `  i3 k& S- z
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.8 L9 c/ X/ y/ z. U" s
                        {
% \& W" @" a& ?$ E4 b& P' A                                pLight->Diffuse.r *= 0.6f;/ C) q0 @2 K: K- k+ l
                                pLight->Diffuse.g *= 0.6f;
* {( Z9 G. |2 E5 v3 \                                pLight->Diffuse.b *= 0.6f;
. V  h- i; E6 B5 V  T. K                                pLight->Ambient.r *= 0.7f;
2 F* ?( M! [/ o" R6 d$ N                                pLight->Ambient.g *= 0.7f;7 U2 L, d6 m1 a; O0 W" o; ~, l
                                pLight->Ambient.b *= 0.7f;
7 r) k# n. P, Y3 k                        }
/ T9 D$ Y/ V6 d0 o; M% E. L1 Z' v8 _
2 v: l5 m" Q8 V' ~#if __VER >= 15 // __BS_CHANGING_ENVIR
3 N  N; A4 m3 D                        if( g_pPlayer )
1 v3 U, i; D3 g# v' B$ V& u/ B- @                                HookUpdateLight( pLight );
( E: i; u: ^2 ~! B! s/ z' ~0 b#endif% {( Z8 v: c4 K4 i
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 V2 Z; }, L# X+ L6 a, N: ]: F4 i/ X# N5 s
                        pLight->Diffuse.r  += 0.1f;
$ [8 w$ v3 p5 |$ w                        pLight->Diffuse.g  += 0.1f;
, u! F5 R+ a8 ?; q                        pLight->Diffuse.b  += 0.1f;
+ l2 d" v( s8 p# Y( N                        // oˉè* ??à? # S7 ^) H  W9 m" Y  {$ ~$ u
                        pLight->Specular.r = 2.0f;
+ ?+ p$ p, \8 V1 G/ b+ j2 l                        pLight->Specular.g = 2.0f;- C1 U$ t* X# e. f# y
                        pLight->Specular.b = 2.0f;
, c2 R, Q3 b3 s2 D& t" t( U: ^                        // á?oˉ
+ }, l4 {# k2 s' X  |                        pLight->Ambient.r  *= 0.9f;
- |' T( F. `. w                        pLight->Ambient.g  *= 0.9f;3 \5 ^7 I# K% O7 R4 O
                        pLight->Ambient.b  *= 0.9f;
' P5 {5 B& l' z$ s( b+ E5 c) Q/ P0 ~) f- M$ j0 a
                        memcpy( &m_light, pLight, sizeof( m_light ) );7 `5 U# A# N4 r+ w$ f  B
                        ! `/ o. Q2 u1 g/ B& _
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
: v* B* }. M! n5 P- w                        pLight->Appear( m_pd3dDevice, TRUE );
5 h4 _/ f0 o* B* D8 j) z        0 ~9 S1 _3 {8 G3 y8 A
                        DWORD dwR, dwG, dwB;
: T: D6 ~% `0 r2 X                        dwR = (DWORD)( pLight->Ambient.r * 255 );; r: l+ @' ?' P8 P8 h
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
) c1 m8 Y" r! g: v6 ]( G                        dwB = (DWORD)( pLight->Ambient.b * 255 );9 H# W( V0 X. o  O. s) g" N
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );1 i3 ^1 c  e9 p% Y" h: ]
                }' a' ?5 E1 ^2 q6 b
        }8 u8 N' j9 L  _0 U& r4 U& H6 x
        else
& q# \# b. T) B. _9 y7 D; d        {
% r2 e$ w% u! `1 p% }, t2 b                if( pLight )
2 n: @2 I* I( V, x                {1 M; G1 k5 g" O) p8 b
               
" U- z. m) J& h                        int nHour = 8, nMin = 0;
+ ~  s+ c% V8 S& ~7 T        #ifdef __CLIENT; m9 ^1 p/ @$ B
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 1 A8 i9 Q$ x! A/ W
                        nHour = g_GameTimer.m_nHour;
, Y8 N# ~( W, E7 c2 J                        nMin  = g_GameTimer.m_nMin ;
1 U; O  O# Y5 Q) Z8 q        #else
) ?: h# t/ K* W0 d5 E' d% H                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
; r: v1 j, d3 ?$ W, C% J' L                        if( m_nLightType == 1 )
0 `  e8 Z3 c( \0 p                                nHour = m_nLightHour;
! n; W3 h5 R( ?5 B5 T        #endif% H! y0 N3 D$ `" B, {. E
                        nHour--;" o1 v& |) E/ H3 B( \
                        if( nHour < 0 ) nHour = 0;
3 a0 r* g" b  }                        if( nHour > 23 ) nHour = 23;
' k8 I( Z' J: V9 y7 J
" R' v! |& w0 \: g! B                        //if( m_bFixedHour )# T3 Z9 @* d" X, D
                        //        nHour = m_nFixedHour, nMin = 0;8 e2 d5 u' z4 ]# e. v# h
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];# i4 M+ i6 Z) p$ r) A
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
1 p: G% y$ z. ?1 [1 U$ Y5 t8 Z1 [: c0 h* J) s
                        //m_lightColor = lightColorPrv;; [: H, j: U' _
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
. V- U2 X8 i, Z! b                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;! B! w# X; _, R
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;4 O( g9 n4 H7 Z
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;7 |. [; \5 W  v! E! t9 F
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;; x$ E, q+ o' v* G0 a& ]+ U
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;5 i. h$ X. @- q1 U
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)# m0 `1 r! [' y( A" [, D8 C

* x* N9 n! j" Y$ }                        // à??μ oˉè*
  C. W1 S8 q1 L* ]& O$ b7 K: r0 E                        pLight->Diffuse.r  = lightColorPrv.r1;. W- o' q# v3 D( y0 m/ v
                        pLight->Diffuse.g  = lightColorPrv.g1;1 n3 l) `4 u8 @6 e
                        pLight->Diffuse.b  = lightColorPrv.b1;! z: T* M# z, b5 a9 ~9 _/ O
                        // oˉè* ??à? 7 [0 Y+ t# C) a4 B! L6 e
                        pLight->Specular.r = 1.0f;: z# \. Q+ Z$ d+ P% I; t  W  P
                        pLight->Specular.g = 1.0f;
' ?- R9 R3 ?* j                        pLight->Specular.b = 1.0f;
0 n7 ~6 W/ T7 e/ i* x) B                        // àü?? oˉè* " w- d) U0 h9 [3 s  b5 i
                        pLight->Ambient.r  = lightColorPrv.r2;# `  P9 u$ f1 F9 u8 L9 q* }9 o
                        pLight->Ambient.g  = lightColorPrv.g2;( z" J  R( ~0 a4 T1 s
                        pLight->Ambient.b  = lightColorPrv.b2;
8 z$ G8 _" u" f% F
5 L8 T9 L. Q+ t7 [4 n                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! |' C% L1 {$ Q! l1 p( g: t                        {: z; k1 C# ~8 S5 T3 A' r. Y
                                pLight->Diffuse.r *= 0.6f;" v: A' R  g, c$ h3 s* @
                                pLight->Diffuse.g *= 0.6f;
+ O0 C9 i3 X( b" h# p                                pLight->Diffuse.b *= 0.6f;) M3 r& O  |: p0 a3 @0 P/ e
                                pLight->Ambient.r *= 0.7f;9 _! _+ \) H: ^4 w) m
                                pLight->Ambient.g *= 0.7f;
/ V3 p) r' C; @6 m( R                                pLight->Ambient.b *= 0.7f;
8 Z7 d  n$ ?8 ]- W+ t) U/ {+ v" j* s                        }
- n7 q2 |% C8 T7 U/ `2 V$ j                        0 P) G, I3 k7 H6 j0 T9 x
#if __VER >= 15 // __BS_CHANGING_ENVIR# X9 J( O! I$ `1 C$ H* w  d! @
                        if( g_pPlayer )
, R, x% a2 k/ ~( i& F  D" i4 I                                HookUpdateLight( pLight ); 8 y1 S! d$ C- ~4 I2 C, t2 _
#endif
: a. D& A: y8 i5 E. p( t! H                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 r1 @& x4 f- [9 K8 B9 \7 i$ o& ?9 y5 x4 d3 S8 X  G
#ifdef __YENV8 u& h  B" K$ d# ~
                        pLight->Diffuse.r  *= 1.1f;
+ g2 O$ b! O+ f1 ^2 m- V& I, Q. G                        pLight->Diffuse.g  *= 1.1f;
+ f; B5 P+ l, q1 U3 R( C. Y                        pLight->Diffuse.b  *= 1.1f;
2 b9 B; K2 n3 [                        // oˉè* ??à? : Q7 N' q% r1 {& t, b( e
                        pLight->Specular.r = 2.0f;
) t  U8 C( w1 L. Q/ b* A( k                        pLight->Specular.g = 2.0f;
& t: x/ H( q; S, h                        pLight->Specular.b = 2.0f;
2 T" m7 M% ?# o) q( f4 J/ Z) [                        // á?oˉ - p# S  [1 m8 e) H5 F5 L- m
                        pLight->Ambient.r  *= 1.0f;
( E4 Z9 u7 ~9 N                        pLight->Ambient.g  *= 1.0f;3 p9 y+ y* K  T4 C4 y
                        pLight->Ambient.b  *= 1.0f;+ R6 M0 p' @. r, P% e1 v0 x7 h
#else //__YENV! J4 s3 J0 d* o5 J4 e$ K2 z
                        pLight->Diffuse.r  *= 1.1f;# r; G, C' r+ p" {; {
                        pLight->Diffuse.g  *= 1.1f;
8 G$ P+ p8 l; O  q                        pLight->Diffuse.b  *= 1.1f;/ c- a0 ~3 f  o* O4 W& x
                        // oˉè* ??à? " J: r6 l; z$ i# a# b; {- W& g
                        pLight->Specular.r = 2.0f;
  l1 S. {/ G5 }. j- R' y                        pLight->Specular.g = 2.0f;+ s, i) \( Y; v/ P) Q7 ~1 O' P; {7 @
                        pLight->Specular.b = 2.0f;. q, e  }/ Q& D6 c
                        // á?oˉ % w* V6 `  Y( X0 W1 j, U* L, \+ Z
                        pLight->Ambient.r  *= 0.9f;
$ q) M- \$ V; K5 V                        pLight->Ambient.g  *= 0.9f;) ~  ?. B8 P/ f8 y' s
                        pLight->Ambient.b  *= 0.9f;6 ]8 a, W2 S# t2 C' f6 I* E
#endif //__YENV
4 t4 ~* p9 `% M* Q3 P7 o  f3 u# ~* u* k                        ! k' k7 i6 V$ s% S9 W, I- Y
                        memcpy( &m_light, pLight, sizeof( m_light ) );
# h/ A# N9 W; G3 m4 t9 [; s# e9 K1 p6 r                       
- `! ^" p+ u, N2 ~2 y$ u% U                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);! f8 b, B8 C0 _
                        D3DXMATRIX  matTemp;% P* I. _; O$ X
                        static const float CONS_VAL = 3.1415926f / 180.f;
' i, u- h: o1 P. y3 v5 S% I! x) w
# P) X% J3 u5 x! \( t                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);4 A! u9 T. ]$ v* f
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
0 C0 m* v. \: r2 f1 u+ t                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
% }  c+ W. a0 u3 E3 v                        pLight->Appear( m_pd3dDevice, TRUE );" Z* a+ S1 [! H8 v. R9 @
& P# u+ S! h. H; ?) Q
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);. E  ~" d: M6 x+ D9 C
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));6 p0 X$ [- \$ g% Y0 Q
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
0 R7 U8 [8 M' r) V) P3 e+ p/ Y7 o- |1 [/ ~
                        DWORD dwR, dwG, dwB;
' v$ g" k; D9 E8 `                        dwR = (DWORD)( pLight->Ambient.r * 255 );
5 c- j+ z  J+ X' B" {                        dwG = (DWORD)( pLight->Ambient.g * 255 );. n: C' s1 \3 g2 z
                        dwB = (DWORD)( pLight->Ambient.b * 255 );& G5 K5 U" b& C: O! m8 {2 r
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        ! a" ~1 q1 _5 `) X1 n# s0 _3 ]
                }$ J- F6 t; U  I
        }
0 \! A& M2 _( Z+ O6 R  L
5 A2 c: N* c5 C; K" i/ i        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
! W" N) N- D0 {! N, Z0 b        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) );
6 T; ]4 f  m& @: ]5 D* k        ::SetLight( bLight );
: K2 T5 V& ?6 H# u0 w
$ W1 p' {, c$ ^2 B* K+ w& T3 q4 \        // ±ao? ?D?í???ó á¤à? & H& r) [! v; D8 n0 I
        m_pd3dDevice->SetMaterial( &m_baseMaterial );- S  G5 D9 j. l% O: I
        9 h) p/ ]* g3 Y! L+ u
#endif // not WORLDSERVER
# J1 t- J0 v) t( J" e}, T& e& D- \" a+ l& N6 ?
并更换7 h6 S$ i  u. z6 K5 |0 B. W  W$ |7 R
Code:& C* V, x0 S* P9 \5 m( ~8 [8 R
__FLYFF_INITPAGE_EXT3 [+ C8 V# {! h
定义5 O- l. H/ l) _. l) ]; {

3 E- v8 u2 P$ I+ j& v( V" f, f3 J- M8 V2 g/ c

# e! v) S3 X; z: ^: i0 i
( ^$ @0 z6 K# l) b4 i现在终于删除我的狗屁加速...
/ l; i! L* x" L& k% P* J0 C, j, y0 ^( J0 R' ]8 T1 S
2 l: w% l7 s5 K1 X$ o/ I

9 o9 Q/ s0 ]4 G& t4 l) ~: O




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