飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
5 N" m" `, A- I6 v/ b: c& J尾翼:
6 g  ~, B) u( `% E3 E% h% P3 @5 a; z) N. G6 k" B7 D
代码:2 k4 f+ O$ }) N5 E; K
CWndAutoFood::CWndAutoFood()) N  C3 K' e5 E# z8 Q/ Z
{% H& K/ E6 j) \0 K( ~
        m_pItemElem = NULL;
/ V+ n4 J! _5 K! b: i' ]$ t        m_pTexture = NULL;
* F* T- ]' @  q$ u0 J0 Y# g        bStart = FALSE;/ `. R- z( H8 V1 G# `6 c* }5 \
}' ?/ Q* r6 j( Y9 \& D
8 Y3 A, ~3 x: p7 \- }
CWndAutoFood::~CWndAutoFood()
# h; [  b- w* O5 j{) `# \6 y2 }9 H( E9 Y
        AfxMessageBox( "AutoFood ist gestorben " );
3 d7 H/ M% @% I6 N}- t7 M8 B: j( B& ~" ^9 v
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
* K- ^+ N) R# a2 u, W& a4 J  {{
, ^+ f" A; V1 O. B- m9 m+ j. ?6 J        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
8 J+ d. Q" p7 l7 k6 Q& _}
: }0 C0 q" q* \% Q1 o' M& ^/ _; I- x7 q( A
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
5 v; [& l( R. P, o, U{, z) o4 |: ^# W
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );4 @' f- ~: g) i
        CRect rect = pWndCtrl->rect;5 G9 X6 b7 C" j& _
        if( rect && rect.PtInRect( point ) )/ }; c9 v+ c2 S/ g. v1 f
        {
6 }+ ~3 ?- ~$ R8 X- \9 X                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );$ V6 f5 ^! B- M" L. V# ^
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
, |2 C: F5 q7 j                {8 A6 [5 c3 Y$ @- C5 ~" C: Q% T
                        if( m_pItemElem )
( g. d% _( c! W, t/ I: F" ~+ T                        {4 W- l, s( C% _1 z# C
                                m_pItemElem = NULL;& U+ ]* n- e/ Z7 f9 a- C( {
                        }" c; r$ \) U7 A1 C+ a$ ^; C
                        m_pItemElem = pItemElem;
1 Q0 M2 y6 s$ d/ ]                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );7 z4 E. m, k3 U/ [7 `  t* W, k% r
                }else{
8 H0 M( H) A6 E6 r+ f) ~8 r3 t                        SetForbid( TRUE );
0 v. u& i2 g) D# a. H" I0 r                }5 [. n5 r( E' A0 \) ~0 |
        }else{
1 Q+ s% b" X! J4 a" {                SetForbid( TRUE );: |# r( G( F; V3 A
        }
6 E( B0 t" s4 p; Z1 T        return TRUE;
- F8 X7 P% v$ w' U- z# L}
; m4 u1 U! r8 `4 S! Z5 u# y  X; o; V) A& k* B. F
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult ): |2 r9 h" v2 p3 t# G
{
5 k* o5 r) j8 l5 H% e: d        switch( nID )/ \+ x) o6 t0 ^
        {
. _: n; f$ T9 I  i$ ?        case WIDC_BUTTON3:! t( M' ]% K: A8 K. |3 S
                {' _. a* D1 X* c+ w3 l
                        bStart = TRUE;
% m( S$ `) r# m  e8 i) S                        break;. a1 D7 N. i7 ^* G% _
                }
0 a3 F! j5 R& [4 t4 x        case WIDC_BUTTON4:4 X3 b0 _2 Q, e4 C
                {
: k. R$ Q6 E, l5 K% n/ o5 U3 E7 y1 M                        bStart = FALSE;9 x6 |' I( c) {" ]1 X6 t, {" d
                        break;
. J6 @( s. T' N' Z0 @                }; C; K0 X/ ~4 u
        }' t" [; ]1 U$ f6 k; W
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
; t9 c3 ~9 ^4 l0 l" U% J+ p& r}        ) X1 G2 _! J- |
void CWndAutoFood::OnDraw( C2DRender* p2DRender )# l' m* U' R! H' |
{
! U/ A5 ~3 _6 _0 @" L1 N        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
- A5 a$ o5 k& v        if( bStart || !m_pItemElem )7 m. R" l) c) b  K! s1 t
        {( y7 e: u  y! T! C3 J6 q
                pBtn->EnableWindow( FALSE );
+ K; _0 n$ w+ v  l# }        }else0 y9 {& a6 q4 x) ]0 z
                pBtn->EnableWindow( TRUE );* `' r7 Y% m0 ?& y: S) i  y
        if( m_pTexture )0 \3 b: Y; C2 C7 w3 H
        {* G; Q7 m& W  D
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );6 E! h; |5 b4 v) q3 o# ]! P. }
                if( wndCtrl && wndCtrl->rect )4 j0 s' x6 T' i2 `  m- o# y
                {  G6 ?7 T9 g, {
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );0 E/ L8 e7 [  _& d2 W% M% B& ]' a$ T1 ~
                }
( c2 ~) W4 w  D& G        }1 Q! E7 t2 T- b9 ]9 i! r! `+ m5 B
}
; N( T$ f) U- q3 K8 f- `' H( G- T7 I/ F7 x2 m+ `+ D6 A
BOOL CWndAutoFood:rocess()& p  i3 P1 R- e( Q! l: m; T$ I
{
& B3 }! \7 ?9 _' a- N. x        if( bStart )2 \  Z. m7 O& v2 ]
        {4 y# x8 C! X" X. l) w7 v( ~
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )5 f' B, O' d( P+ a' ?9 W
                {( Q% |. `- h' `* y6 ~0 |
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )+ f  q+ }2 R" e
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );# F, n4 O5 h) x" J, x' S) \
                }else{7 X5 m' Q$ t) W7 C6 q
                        bStart = FALSE;" X* g" A" f1 Q  v" X7 K
                        m_pItemElem = NULL;
. m- y( u7 m# [& Z5 d# F6 Q8 Z                }& E* s- a) p, ?
        }8 U8 ]0 R- P& F9 t' d
        return TRUE;
6 O/ W2 g! f7 U3 j7 J* H" W}: F+ v2 n) Z# v2 a

( u. w# E& h" a- X( N' \登录视频废话:+ C2 y; N0 @1 L
尾翼:
& Y2 ]4 g- s9 v" p. \6 J$ |# W  W  v& A
代码:
  \: e4 _) ]* Z6 \$ {3 x1 d* Q* E& K& z3 \: {' e$ }
void CWorld::SetLight( BOOL bLight )6 e) p; o: ~5 U  p7 M8 }+ P& ]
durch* h! V5 k6 \6 H3 R( G4 S- c2 K
Code:: f" x3 Z0 F' [3 o3 U' n
void CWorld::SetLight( BOOL bLight )
( }  e5 Q3 c! C3 E7 `{
. H& Z6 _. _6 a! m9 E4 O! t' {; g) }        //ACE("SetLight %d \n", bLight);
( B( A; h( \( ^( L        3 z+ r$ }5 @- h
#ifndef  __WORLDSERVER + R+ ]) K2 r# W0 f# R8 [
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
9 I& \6 C$ h/ B$ S" ~        CLight* pLight = NULL;( D; N( o0 z# P: i6 `1 t5 C

) {! c& v6 P  `- {        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );$ f9 I+ H# \6 }8 y

; B0 W. Y5 j5 z7 G5 G        pLight = GetLight( "direction" );
  P3 `- X  n9 ?4 A
& I1 b. d3 }+ ~% `9 I+ x#if __VER >= 15 // __BS_CHANGING_ENVIR
: Z* m7 i7 N. _4 e        if( g_pPlayer ){0 f, D, I  f5 \" `* N$ n8 f
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );8 _! A5 B9 ?% l1 H
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
6 A* E4 M3 @: B                {
1 P; `* x' m+ P6 V; ^                        if( pLight )# w( i8 z/ V/ p% m
                        {; p- C8 Z' `4 W2 \$ O5 u
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
, U0 k1 _' ^; v3 |3 c- ?4 S                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];* u/ r. l6 i9 C5 b( s# L. m; L
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
* m6 ?" B( k  ], \8 U' ~2 `, M( q' y5 P% l
                                pLight->Specular.r = 2.0f;
) D7 R& _8 h, [- R2 _* t                                pLight->Specular.g = 2.0f;
; F6 I+ {$ W' L4 c: Q                                pLight->Specular.b = 2.0f;
. e2 r& S# K% ~        6 g3 q9 H" L- P2 s2 n" V+ v+ M9 }
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
- G! k7 H. W( q/ u6 x; u                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
  D3 y9 G1 Q' ]; a1 {0 c5 O9 d                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
) `4 ^% t' N! Z  g! ]       
: L" U6 h4 }- B- ^                                HookUpdateLight( pLight ); 3 Q8 n; d; w/ |* D, ^
$ J# J* [# u" ?+ g. v
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );8 H" |' l, Y+ @' t) e* w2 v2 D
                ' a/ d3 [0 a3 j6 V! G3 }& q
                                pLight->Diffuse.r *= 1.2f;+ q, I! O% r( I0 V: ^
                                pLight->Diffuse.g *= 1.2f;
# r/ |  w& h% K7 _. L  T                                pLight->Diffuse.b *= 1.2f;
1 i, k( G% z. I% c; d  T" Q2 B
  e$ F+ m& x- N2 ~) |3 I2 h# `                                pLight->Ambient.r *= 0.8f;$ F! s  [% K8 y7 d
                                pLight->Ambient.g *= 0.8f;$ l; f. `6 ^0 ~9 n
                                pLight->Ambient.b *= 0.8f;  c$ b0 y0 @4 Z2 d. x  S
       
( E4 I/ j; i' e7 H$ r2 k                                memcpy( &m_light, pLight, sizeof( m_light ) );
& E& Y% B, G6 [/ [7 o) M* y4 O  W( a) {
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);& Z. V) u) [: u! v1 r
                                D3DXVec3Normalize(&(vecSun),&(vecSun));* X  s: x! r: k1 Y6 _: E: i
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); - \. c6 N( f. z  b
                                pLight->Appear( m_pd3dDevice, TRUE );! n$ }4 t3 N# f/ X/ G
                + q$ @: K7 f6 w+ l
                                DWORD dwR, dwG, dwB;7 O4 E0 D; }: _& H4 b
                                dwR = (DWORD)( pLight->Ambient.r * 255 );3 M+ ~2 i+ S! K
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
- L( I/ }. L2 V$ v& o$ N( T                                dwB = (DWORD)( pLight->Ambient.b * 255 );
. r0 R* G4 r6 I                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );, t5 j3 a; u. T% p  C/ o% k6 Z
                        }6 j0 B7 V( ~4 i+ F& x3 x0 d# @
                }
, R7 k" y: n2 j9 \! u/ Q' ~        }5 w8 q/ X0 e0 o' g$ E+ N- Y4 w
        else
1 v6 c/ H8 ]* c1 q0 U7 G#endif
& n# R6 {9 b: w! T: L2 V
2 y, [; J8 w% T) R/ A  y8 }- d7 A" ?        if( m_bIsIndoor )
( H; B0 [8 b& \7 |        {; G; S# L. @  `: @' r2 Y
                if( pLight )
4 ^% u/ p2 y- F2 j  O' o                {                8 ?/ s! H( ?8 y* K8 m! Z
                        // à??μ oˉè*
4 z  n  ^8 F0 r: |2 x& Y                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
/ h* Z+ c, p0 O                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
$ z+ w7 y" Z: n1 q                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
! z4 x5 a! D% \  }* v
/ I# H! Q2 o) X                        // oˉè* ??à?
0 E8 U' {6 L' n2 U( M  f                        pLight->Specular.r = 1.0f;6 U$ |1 N- @0 I) t8 |+ U+ l
                        pLight->Specular.g = 1.0f;9 e4 c2 p; ^1 K3 }0 a, a$ t1 G
                        pLight->Specular.b = 1.0f;
* M) ?5 M7 A7 e* H1 l                        // àü?? oˉè* 6 V! J* k9 d% n- B4 }
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
8 D- l" T1 W1 ^2 Z/ e                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
) ^* C& u- b: v: T                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;5 R5 a2 [! ?5 v1 a& n

/ L3 [& o& S$ n  A$ ?                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.+ ^8 ?/ H& Z& ?
                        {4 }2 P* p( F4 _1 {- Z4 w& J
                                pLight->Diffuse.r *= 0.6f;2 G: q+ }, Z* B: D8 D2 X+ R6 W
                                pLight->Diffuse.g *= 0.6f;
: s( P0 e* j/ C" c                                pLight->Diffuse.b *= 0.6f;/ ]- b/ V4 i9 t* y
                                pLight->Ambient.r *= 0.7f;0 Z$ _) O  w4 C1 \
                                pLight->Ambient.g *= 0.7f;
5 k* N. M! q5 f% r1 m; E1 @                                pLight->Ambient.b *= 0.7f;
6 A8 l2 q# c" V+ D* |' h3 f3 L0 C: Y                        }
1 p1 E; g! V( g3 _( i* ?  [1 Z2 n: p' ~, J0 F
#if __VER >= 15 // __BS_CHANGING_ENVIR  A% @2 X& r. k+ t
                        if( g_pPlayer )
9 j# W4 q+ L& y2 Y5 x& F                                HookUpdateLight( pLight );
6 O3 @7 ]0 T5 T& _1 w#endif
; j* a, ]  g7 F+ }                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 b: R; h( V7 A/ o9 c1 p
9 T- r' k6 @8 s9 s% e' u. o                        pLight->Diffuse.r  += 0.1f;) U3 V/ O5 g6 v) y8 O3 o
                        pLight->Diffuse.g  += 0.1f;" q5 N' y) s! ]
                        pLight->Diffuse.b  += 0.1f;& p( d% [1 Y" ^+ W# ?0 v
                        // oˉè* ??à? : b. ^! Z% O6 k* N2 J7 x$ K6 B
                        pLight->Specular.r = 2.0f;3 h! D8 C: \4 q4 }/ s9 \+ a
                        pLight->Specular.g = 2.0f;
) B* j# F  S, w# j  g- ^: U/ J                        pLight->Specular.b = 2.0f;
0 d  @& v% i* @' ?                        // á?oˉ
9 L6 h: |# ?. s                        pLight->Ambient.r  *= 0.9f;" ]) P8 g) e9 k' T- v& M
                        pLight->Ambient.g  *= 0.9f;1 c7 n8 i. g: v" U% Y0 O3 ]
                        pLight->Ambient.b  *= 0.9f;
7 h( `2 d! H+ o' s8 ~& H) J: [5 j- t0 j! f
                        memcpy( &m_light, pLight, sizeof( m_light ) );7 \: u' W/ [/ A
                        7 T" s1 z7 X0 a
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );/ q) T; ?1 z! D& q" ~
                        pLight->Appear( m_pd3dDevice, TRUE );
+ i2 v5 u' E2 L% p       
0 C/ C1 L3 y8 m                        DWORD dwR, dwG, dwB;
: p7 X  S6 [2 L& {4 a6 `                        dwR = (DWORD)( pLight->Ambient.r * 255 );
; @- ?0 _2 }. J/ V                        dwG = (DWORD)( pLight->Ambient.g * 255 );( b: Y- m' @, b) G& \6 b
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
6 Z" L  ?( h4 u) s7 q' x/ x$ G                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 y' o: L. J8 t                }
  w$ O# n; u. q        }
" ~  r: U/ u: U7 \        else/ O/ F/ g& Y% Y$ [- a
        {
. J) k9 j8 V# h9 i4 V                if( pLight )2 L5 o* \& i+ Q" H" v
                {
" A: [( v$ K+ d5 I" T8 R+ x/ d               
" V5 Q/ B( W/ S9 @! a7 p$ E( d                        int nHour = 8, nMin = 0;, F( i0 p4 d3 G* @7 G$ T
        #ifdef __CLIENT$ p) L/ B. d9 v; x* k. {
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
4 `; [, N( i2 |2 B" @4 d                        nHour = g_GameTimer.m_nHour;# [/ G0 P! f. _; m; [
                        nMin  = g_GameTimer.m_nMin ;& u+ j" L/ \5 ^% ]
        #else
: ]' G3 f# L' Z7 V                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.6 }- B* R, P( E
                        if( m_nLightType == 1 )
( }% X; @2 q* M$ ~                                nHour = m_nLightHour;& A0 i1 c/ U0 b
        #endif
: C# \1 T' t3 }: Q8 M: c1 |                        nHour--;- d" j& ^. i: \$ w& i
                        if( nHour < 0 ) nHour = 0;1 W; O* J' Y1 P: z
                        if( nHour > 23 ) nHour = 23;) h7 |3 f4 p5 A9 C
! c  }4 v& x) d; M: F2 {
                        //if( m_bFixedHour )
6 y/ Y% Y; `% I" @) A3 N                        //        nHour = m_nFixedHour, nMin = 0;
% e/ w3 {3 m: x                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
, S9 s( X3 Q% }: u                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];: g  q8 r+ s/ {: f/ q- }

% m+ L% U/ D  b. E7 u/ |                        //m_lightColor = lightColorPrv;
: g* x/ K+ _' D3 Y  f  k  G& b6 F                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
" {4 E% ?# ]: F                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
. k4 F7 ~; E* a3 \. k                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% U8 o* v6 f* D4 h% c                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
% A+ g- x- `4 x7 a0 l: j; R                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
8 A* @' f7 {) ~5 z3 F* x- h2 J- O                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
. G8 g4 r  Z9 K                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)" C" F- t* f" `, n

9 f/ ?+ ?7 R% u) u' h' a                        // à??μ oˉè* ' o9 z# p2 h1 {
                        pLight->Diffuse.r  = lightColorPrv.r1;. d3 {( N+ W1 a, K& B6 S! y
                        pLight->Diffuse.g  = lightColorPrv.g1;/ \7 _! [; y7 U4 @9 g
                        pLight->Diffuse.b  = lightColorPrv.b1;
0 l/ r- S! \" `* _2 [" t; ~                        // oˉè* ??à?
0 s/ ~0 c$ W2 s9 }% K7 p5 e0 h                        pLight->Specular.r = 1.0f;
; V" Y- f' H9 s* }" p                        pLight->Specular.g = 1.0f;% E6 i( @+ Q1 Q! f0 }
                        pLight->Specular.b = 1.0f;  z3 s/ Q, b6 i: S1 u: Q' @' N" V7 u* Q
                        // àü?? oˉè*
7 A# a. B3 a& S( @4 v5 F+ \                        pLight->Ambient.r  = lightColorPrv.r2;/ w% V9 A" q( n7 H5 `" p1 ]/ a
                        pLight->Ambient.g  = lightColorPrv.g2;  F  |. E6 u7 t
                        pLight->Ambient.b  = lightColorPrv.b2;- X! `8 y" g/ O6 C! ~
& I+ d0 Q- ^" ^7 v; s' O0 Q
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
5 E8 B0 N( [4 a                        {# M7 c4 V! R/ h+ g$ r
                                pLight->Diffuse.r *= 0.6f;7 \1 u0 b! ?' e) t9 }! V
                                pLight->Diffuse.g *= 0.6f;% k" B  K# m3 B' l$ R% ~
                                pLight->Diffuse.b *= 0.6f;
1 k: ]. w: c8 t' M) h" C# }                                pLight->Ambient.r *= 0.7f;8 n, C" z, @  {. K. U
                                pLight->Ambient.g *= 0.7f;
6 o* z# V$ [4 J( o4 ~) L4 [$ U                                pLight->Ambient.b *= 0.7f;
# c* \+ g; v* u                        }
5 L+ {3 v& k: \- j8 {3 T                       
3 A8 h6 k- E5 f+ h  B! W9 b#if __VER >= 15 // __BS_CHANGING_ENVIR
0 j7 ~9 q1 N5 V                        if( g_pPlayer )
2 P' Z0 Y% u* _0 }$ {- v                                HookUpdateLight( pLight );
# @0 X' D# {, O+ Z4 P' X#endif
* i$ X7 G% M3 {8 f4 D                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );. G* H4 C# e  d& R0 q

0 o& A7 C- K+ r7 R) t; p3 U#ifdef __YENV
1 c  J# Y) }# A% g! j9 L                        pLight->Diffuse.r  *= 1.1f;) P( U4 V7 e4 k  N! ?8 ~* ~3 l
                        pLight->Diffuse.g  *= 1.1f;& B9 f' `9 H( `# i# w4 K" v* @
                        pLight->Diffuse.b  *= 1.1f;
/ J0 t! i* w7 A  R% k7 e* a                        // oˉè* ??à?
* i. e) r! p0 t1 p% q                        pLight->Specular.r = 2.0f;) M) S( ]4 s9 {0 b5 G4 J: t2 {/ m
                        pLight->Specular.g = 2.0f;3 d3 \* i' T9 X' G4 S4 X# a
                        pLight->Specular.b = 2.0f;. `4 @5 b9 a* R
                        // á?oˉ ( Z* w8 J; k+ [0 {
                        pLight->Ambient.r  *= 1.0f;' L" Q3 B2 T# V+ [
                        pLight->Ambient.g  *= 1.0f;
9 `7 n5 G! j* L4 p# L; n                        pLight->Ambient.b  *= 1.0f;8 q+ K2 [! \% r$ y
#else //__YENV3 q2 I* @- f- m8 R! x. p% O/ s
                        pLight->Diffuse.r  *= 1.1f;5 x4 O% b7 G: t( f% ]. k; G5 h
                        pLight->Diffuse.g  *= 1.1f;
5 R$ w, L1 R* w1 j) L% g3 i                        pLight->Diffuse.b  *= 1.1f;4 [" p4 i2 X# J- A# ]6 x  C4 h3 U9 S
                        // oˉè* ??à? ! p$ O& U- `) a- C4 D; p
                        pLight->Specular.r = 2.0f;+ ?6 ^5 ^8 N( G0 T. e
                        pLight->Specular.g = 2.0f;
0 O  f9 ?4 Y/ f! _1 D' L0 y$ t! Q4 N                        pLight->Specular.b = 2.0f;
1 t; O; L  Y' H6 [                        // á?oˉ
( ~9 ^# z1 ]$ S                        pLight->Ambient.r  *= 0.9f;
. t9 a! ^- a7 y                        pLight->Ambient.g  *= 0.9f;+ r( V: x) ]- p' O# y+ P( x- N; ^
                        pLight->Ambient.b  *= 0.9f;- O8 E7 P. d( f1 n
#endif //__YENV
  X( k, W9 j% f* M7 a0 V! q6 Z: f                        / [; t/ `# {$ j+ M8 R8 J
                        memcpy( &m_light, pLight, sizeof( m_light ) );2 q% x4 s$ r6 g' J; T
                        $ W/ v, ?0 v3 \
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);, }: p" \4 b: c* m0 l1 R, e
                        D3DXMATRIX  matTemp;% k, u' [! b+ A, t0 A
                        static const float CONS_VAL = 3.1415926f / 180.f;3 |; \) Z8 G9 R) |; [/ I

' ^$ b+ w/ d& `. R                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);5 Z% V2 g6 Y: p7 N0 D8 ~* Z$ S/ q% P
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
  ?2 i3 }9 }4 l  T                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); + a) D$ c1 S6 P  T/ k) u
                        pLight->Appear( m_pd3dDevice, TRUE );
# ?- s) B2 y; g/ z
3 h. [" ^7 c0 M; I) s                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
. o2 j  Q% O. R) ]8 \4 B                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
+ ?( p: m3 ~2 o; p4 x                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
; r1 c0 Q' l. M8 y2 {" n/ c8 L0 N5 ~  f" G
                        DWORD dwR, dwG, dwB;3 p6 K3 N. i  l6 N
                        dwR = (DWORD)( pLight->Ambient.r * 255 );7 _7 o2 j, }$ L2 A! E  o0 A& U
                        dwG = (DWORD)( pLight->Ambient.g * 255 );/ o# _# w# D- U3 O
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
: c0 v, r. K$ R: J8 G+ `                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
0 H1 Y' Z) u5 ^$ T6 [! E                }
3 m( D0 ^% I) N' \* O  J6 @8 c        }+ ~- |3 T6 V, I! H; _. I" t

4 _' |; m; ^4 i0 ~/ [2 [8 m        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
' U* [0 p( W0 h/ p: i1 }; [4 t        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) );
, p0 q2 H, T8 e; J1 w- T        ::SetLight( bLight );
  Q' D7 k  B% P8 j
8 h' R1 ~2 e- m; v% c        // ±ao? ?D?í???ó á¤à? $ t9 r( N. V& d
        m_pd3dDevice->SetMaterial( &m_baseMaterial );- G# F; L% T* [5 A% ~4 {  m6 H4 C
        1 |: U9 ?3 Q' |3 f: g+ [& H
#endif // not WORLDSERVER
( f1 S* n9 J0 n. C( _/ Z9 e}/ v6 D! Y6 {, v8 S- p& Y$ a
并更换. H5 r8 P9 k& t5 [7 @5 ?" }9 a
Code:
) a- \5 b/ }- [* P6 C  Y) C* a__FLYFF_INITPAGE_EXT# b  n2 F9 p, z; U( ~
定义
* D; |5 C# N% r# s; P
) l5 V* Y, ~7 a/ T2 |; J, E' ~+ f$ M! I2 I" d4 F5 O, t

( L" m) l* \. n( G
' q8 g7 d2 R6 h) w9 I3 {现在终于删除我的狗屁加速...
  W9 M, J& D1 o8 W! t! e; ]
  e3 X: @& U" t3 l! a5 W& P7 u) t2 F6 l7 d% c
% A4 D1 V) ]% D2 i





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