飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:6 N( `/ `, g$ }7 b. V" M
尾翼:
/ M" q, t1 J7 W2 @1 r5 ~+ i$ s1 l. v" [% d1 ^
代码:* e- B: ?- x$ z7 e6 L
CWndAutoFood::CWndAutoFood()
6 S: N6 H2 R1 ?4 s" S9 X; E1 j: D{7 f* K7 J5 Y+ m* K
        m_pItemElem = NULL;
$ j, [) h8 P6 i5 C: @. l: W6 Y( r        m_pTexture = NULL;1 G0 l+ _6 \+ g# @8 K( p) r0 w; ^
        bStart = FALSE;
6 y2 e. \; t9 b7 d: H% j2 r}
& _8 ~* |4 j4 r( Z8 X6 Y$ F  x- W% T: U0 I) t, ]; ]
CWndAutoFood::~CWndAutoFood()0 p+ [- B8 Q8 W
{
( v5 b" {% F. I        AfxMessageBox( "AutoFood ist gestorben " );; |- [  u( I6 @5 X+ [( Z9 {3 m
}
1 Y: D3 ^7 `2 Q( \( W) {, @BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )* f, A" ?5 Y- k4 D# g7 |: _
{
3 g* Z6 n8 M  i6 p: I        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );1 c$ w: p' R1 q. Q6 M
}
; n4 q/ D& [+ P
: h; T+ D4 q& f5 _3 M0 q. GBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )) Y" O1 Q& N$ R/ u( N
{8 E+ M' E' F) L# \$ F' Z
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );4 ]% ]' E! t: ^+ w% O# M+ W# d
        CRect rect = pWndCtrl->rect;
) G2 |( p# d* _- D. ]        if( rect && rect.PtInRect( point ) )1 w+ Z) N& d  a4 A1 X6 @
        {
3 u4 U* ?  C1 k# U5 ~+ \1 a2 v                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );* S8 g9 m0 ?. z  V* d! |$ @
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 ], s, C, v1 H; i# U                {. o8 Q+ N& E' M( s7 L. X6 |+ c
                        if( m_pItemElem )
: z6 a; \* C1 _! c                        {
6 P0 H, M0 L' W( {  S3 e5 {6 ]4 v                                m_pItemElem = NULL;
2 f7 \8 Y6 [% w: `3 N- M* x                        }7 s" C) ^+ \; o
                        m_pItemElem = pItemElem;3 h& q+ w* {( _3 d1 s7 d" M' Z
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 d* F( J- M! j                }else{
5 {4 }" }" a5 M" P3 I: d/ H                        SetForbid( TRUE );2 \) d# n& M& i$ }8 U' w
                }
. k: m, S( L# |3 ~+ {) N        }else{- B+ U5 ^3 m+ H) v
                SetForbid( TRUE );- E, x" L8 }( c' o
        }
, i) ?2 o; B: x' m1 z        return TRUE;' I& m3 {0 w- O1 W7 |- K
}% x$ W0 a2 J( q# g  g

' u& ]2 M, |7 S, NBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
5 L, a3 N  z9 E2 E% _{% l+ ?# L" C% |, |/ d! p* ?* b+ ?( M
        switch( nID )
1 C0 ^. J8 X+ M0 x7 j  T3 n' T( H& v        {! O+ f: \, H: o/ p' u9 ^% B, `! w
        case WIDC_BUTTON3:
" a- H3 ]$ k. C" S                {
- n& q+ E) T2 K1 |3 d3 M" O                        bStart = TRUE;
, H- V, ?! X0 }' T5 l3 y' d2 A                        break;8 x% D- A9 b5 ]2 L* y6 |% P# {
                }. N; {' a- t2 x5 q% l! l
        case WIDC_BUTTON4:
% @3 D/ J/ W" F* W1 n                {
0 a+ D' s! K% _                        bStart = FALSE;
4 A# X- g8 M, b* x; d" y                        break;  N9 g2 D& }. c" u  k/ a7 T" S0 F
                }
, j/ n) w5 j* Z4 t        }
% l, m1 u/ a- N( O( |        return CWndNeuz::OnChildNotify( message, nID, pLResult );
8 ?3 E9 ~# @# \7 W}        * f) A+ x2 W, E% N9 I2 Y
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
! Z) _8 y6 O8 Z' Y{, I' _4 f+ F+ L
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
8 L! I* g: \( v- ]        if( bStart || !m_pItemElem )
1 ^9 _2 B" _0 v" P& {* B8 @        {( a% N6 R' s7 o* N5 y9 ^4 t
                pBtn->EnableWindow( FALSE );
3 L% V$ v7 \& _! {( \3 ]1 {        }else
5 p& O. |- K, Y' ~9 F9 H                pBtn->EnableWindow( TRUE );
- O; W  E1 q' ~' H, n        if( m_pTexture )
$ J9 }! d1 ^' G0 I, K" i& u; P        {6 l% d) p& \# u! P
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );! Z0 ~9 m, k  {+ n2 P/ ]' @
                if( wndCtrl && wndCtrl->rect )4 r7 T+ v: u: k5 k. j1 i# N3 B
                {
* J$ f1 `* O9 @! T- w' k9 S$ h                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );% V7 r- z3 x' Z9 u8 v
                }
( ]; H, v; d% f; U8 n) ?        }8 g4 o  N  K9 M% G$ j
}- g) W9 z2 o8 ~; X! m# `

8 v. W& |# B- I0 ?) L+ m% c! HBOOL CWndAutoFood:rocess()
0 |' b4 [4 z$ \5 }{) t: }; S! T5 {6 p: N4 E+ F$ x! Z
        if( bStart )# ?2 z2 Q6 A* ?
        {
8 }, N1 _  I' e, `. Y* ~, D                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
; W0 j0 T& m0 }# q1 |                {' X* o6 S4 s" T) d
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )  J$ a8 F  `) `; t% g& r0 s
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
$ `; F: X: I1 b! [; _/ `+ {+ r$ U                }else{) D4 E+ b( i) w/ e: |, _* T# I9 Q
                        bStart = FALSE;
. \' Y9 X; V/ E0 M                        m_pItemElem = NULL;
" ?; {1 G/ |( @" n  P4 O  L1 R. \                }5 s+ S" Y5 t+ z/ h
        }
: C# W* |% [" T- g        return TRUE;
+ s, M9 Y  F* j6 e% c}
; _$ a4 L- b7 ?6 p) E+ f4 \3 t1 `% q$ G( W; T
登录视频废话:1 ?1 `4 I4 I$ t
尾翼:# m% S5 R" c0 C! w

1 H& w1 O# v+ u: v代码:& x% ]1 v" `% M, }

; u  q- C9 ^0 c# Tvoid CWorld::SetLight( BOOL bLight )3 D# D7 d- N  V0 V3 a
durch5 ?, ~& }; t8 S* `" s' G, s: I* ]
Code:! g2 c# [" B& w0 L! ~
void CWorld::SetLight( BOOL bLight ): y2 G- v# K0 e, p. p7 O7 \' b
{
  [6 V, ?! p2 n4 E, s        //ACE("SetLight %d \n", bLight);% z* n+ u8 D* o9 }/ f
       
, x1 S/ m% b' l1 T5 ]8 K; `% t#ifndef  __WORLDSERVER 2 d, \% ^/ X. s1 A  J! k
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
4 Z; Z4 e7 a9 m% X) b& ?; p        CLight* pLight = NULL;
2 C! |3 K3 k; P0 X
' n3 `4 G7 j7 _5 C        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
- _  C2 F- G5 e5 ]# S" ?1 M7 s4 _4 g
        pLight = GetLight( "direction" );3 u; T4 N6 q6 H1 Q

/ L& T& H( D( h( Q0 h9 p$ Z7 P7 J#if __VER >= 15 // __BS_CHANGING_ENVIR
4 v* H; p* p: E! j4 r& J        if( g_pPlayer ){
0 t# G8 F: ^$ R0 t6 k8 p) N* ?3 d- B                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );7 P# n  D# i7 r
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!+ W! j, l' i* I+ f
                {
% g/ c" h& o6 M, A  t* Z& \4 [' R9 D                        if( pLight )
$ C' A3 \' x! ]0 S0 l  S! W  y                        {
2 W3 X) h* g! W( H                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
; d* a2 A4 I  M* E, c, X                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];2 i% Q4 Z6 {1 g6 Z( ~/ i& H
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];7 U+ S% E, L: |# J6 Y- o

* |# y! N- l* q( _- J& J% x: r                                pLight->Specular.r = 2.0f;! @5 a9 `1 e2 w
                                pLight->Specular.g = 2.0f;
, ]- y1 H' u' y2 x( Z2 L2 R                                pLight->Specular.b = 2.0f;
3 `+ S* a7 d1 c        ' D5 j7 _2 a& `( ]' ]
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
. z: V4 z4 }5 r: h( ?                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
' e) @! I+ I9 ?                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];" S: v# Q1 Z4 F: \" F7 M
       
. d9 E" {4 h& f# s8 j& M                                HookUpdateLight( pLight ); & W0 w& o2 d$ \7 u" v

. S1 Q) T  m) x; [2 m+ M                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
$ |0 ]3 p, ^  W                & x  W1 }( b, S: y# K
                                pLight->Diffuse.r *= 1.2f;9 K6 B. K4 k% O, |
                                pLight->Diffuse.g *= 1.2f;
6 x9 o: s. ~6 t7 j0 W                                pLight->Diffuse.b *= 1.2f;4 {% j5 q1 B; V6 p. h( q' ]
0 d+ b$ S3 `, Y; f$ _" m7 M
                                pLight->Ambient.r *= 0.8f;
! V' k8 ^% }6 x; {2 C" _                                pLight->Ambient.g *= 0.8f;0 f7 R$ Q7 k8 w5 w" ~& E
                                pLight->Ambient.b *= 0.8f;
$ D0 u" l- \% N2 W% R* \        3 Y/ E2 G- \. V4 u
                                memcpy( &m_light, pLight, sizeof( m_light ) );
4 n0 ~7 f' A5 d5 l3 Q
, C: U  @# r" f5 |7 l' F% l5 A5 e6 x( G                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ X7 J8 x5 |! p* F: d: ?) z0 Y                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
/ P  m" D1 l$ g5 b  b; I% K                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 ~1 K# ?8 ]6 k1 J                                 pLight->Appear( m_pd3dDevice, TRUE );
" }! \6 \& L. J8 A4 z                9 J9 ~& o/ A1 Y$ t; c* ]/ f+ m* `
                                DWORD dwR, dwG, dwB;+ x0 p9 R% b+ J: i3 j5 U
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
+ b& I( I* f7 G6 f                                dwG = (DWORD)( pLight->Ambient.g * 255 );6 Z; V* P9 H( |
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
5 F' C% \; T0 }7 O  `' h3 t" _                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );- [; N) p% z8 k) p3 ]  U
                        }
. u" r8 F/ u9 T4 _" j) g3 v$ o                }
, m5 f2 r6 Y( {0 F        }
! w) B! ]+ \9 d; M8 e+ t        else! F% T* [0 Y: _; `
#endif # M7 |" M( J% s

6 B2 O$ \0 _# i) U. y        if( m_bIsIndoor )6 \% R  J+ Y$ N4 _$ A7 `6 a
        {
2 S. y3 Y" Y! R/ A2 t. w                if( pLight )
" u, ?, b& b3 S1 v; k+ ^5 P$ F                {                ' m; W5 h' w- p
                        // à??μ oˉè* ) I. F0 g! a! ?1 r; h% O9 g$ b0 i& x
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;6 ^" @% R  ]& O, w4 [
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;' E% s* Q* T7 Z
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
4 f* m3 v9 s" a  b9 Y2 }2 u$ f
, h# D6 [; P$ h3 u" C                        // oˉè* ??à?
/ Z  K( r. d* _9 D, Z                        pLight->Specular.r = 1.0f;  a$ k3 Z: b$ q5 B
                        pLight->Specular.g = 1.0f;$ T' `5 W- r; h* ]
                        pLight->Specular.b = 1.0f;; `1 X+ m% g4 \& u" e& n5 \
                        // àü?? oˉè*
  V) V; }: m- T5 N, g7 G: q                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;  R9 I1 b; G& F7 J  I: ^
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;' o, |3 s, z+ h" H
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
6 n3 x6 i- z3 \8 I$ B& V) V7 \$ s5 o& _+ v
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ y, |/ F, }/ f& _8 ]5 x                        {
9 i0 e  C0 z# f+ E                                pLight->Diffuse.r *= 0.6f;  O& \. I5 |: V6 Q/ c2 W
                                pLight->Diffuse.g *= 0.6f;: Z3 h. k2 ~% [- k; Q( B; A6 f
                                pLight->Diffuse.b *= 0.6f;' k' ^. h) I9 ]  S7 z
                                pLight->Ambient.r *= 0.7f;$ J5 _1 g% a. C, \2 d
                                pLight->Ambient.g *= 0.7f;$ T( P7 J! S3 L; o" w
                                pLight->Ambient.b *= 0.7f;7 e1 q6 |# v: \% R
                        }
7 Z2 ?. U- z9 U; |2 K/ S/ b$ u/ l5 `4 b1 ^
#if __VER >= 15 // __BS_CHANGING_ENVIR/ I  ~; M2 G0 W) s. j, P) j
                        if( g_pPlayer )
, T; q% R+ G' q+ O" Y: p9 \                                HookUpdateLight( pLight );
" P6 i0 ^; H* i- A#endif0 n. B7 u1 N$ c1 P3 T: k# ?
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 F% P' V) B; S  S* l
* X- V1 q  C4 Z% I' H1 \& g: D, ?                        pLight->Diffuse.r  += 0.1f;. l* |& |* z% c* x
                        pLight->Diffuse.g  += 0.1f;
5 `7 Q6 i7 n6 q+ ~8 A& e                        pLight->Diffuse.b  += 0.1f;
! _/ s0 ?2 ?& C5 c) D3 n( p# y- S% y                        // oˉè* ??à? 2 _) A& j% I% L; N4 N
                        pLight->Specular.r = 2.0f;
; o0 Z$ ^! v% v. _: C. ^                        pLight->Specular.g = 2.0f;$ b) z7 u% J6 i
                        pLight->Specular.b = 2.0f;. z* b" r' W3 K2 z, T  M
                        // á?oˉ
' B" t) t+ S  {5 }; }                        pLight->Ambient.r  *= 0.9f;0 u" N5 `# x8 U+ ]) j9 @0 Z) E
                        pLight->Ambient.g  *= 0.9f;
7 s3 O, u0 h5 p) h# y                        pLight->Ambient.b  *= 0.9f;  x) |+ J( ~- `4 W

6 M. U, F7 s, j& l                        memcpy( &m_light, pLight, sizeof( m_light ) );8 ?% m4 C, \. n  t9 P
                       
+ O7 Y& [8 D, T* N                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
8 w8 b% m1 L4 e, n/ x# @2 `# [                        pLight->Appear( m_pd3dDevice, TRUE );
% P( O5 P1 D- n        # u' F  g, J1 F2 u
                        DWORD dwR, dwG, dwB;+ o" c# p9 M6 g9 Z
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
2 f% J6 s. B; E" u. e1 X+ J, C                        dwG = (DWORD)( pLight->Ambient.g * 255 );
+ P6 i* ]$ V" ?: q9 m/ [8 b( @' F                        dwB = (DWORD)( pLight->Ambient.b * 255 );
( _, V( v* \: G/ }! Y) ]6 O                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- d4 E8 _0 ?3 W" s1 Y+ U8 T% w                }8 p* a8 I! Z& p; X
        }% o, h, e7 p2 p  `5 n: L
        else* N6 O9 Q: y0 A. r0 ~2 g. N1 ~
        {4 p0 R0 l$ K" N/ F" s
                if( pLight )$ x2 Y( v4 X* m% ]( I+ e
                {
$ R2 y$ t; b8 ^) c& V3 a* S               
' e6 S8 G" }% r' o& _                        int nHour = 8, nMin = 0;
( ~7 F+ s9 v! ]" `        #ifdef __CLIENT
' R; d5 a+ j! c6 i- Y# b                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
! \. A) v1 ^' i. e: X                        nHour = g_GameTimer.m_nHour;1 y! }& I- f& n! s; u7 b
                        nMin  = g_GameTimer.m_nMin ;5 B6 ?$ M) g: z5 I5 h
        #else9 {; ~: Y5 r% z* Z) |
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.$ _: ?* k  c! p$ f
                        if( m_nLightType == 1 ). x. ~5 z7 o4 J. i. T
                                nHour = m_nLightHour;0 ~6 O/ Z. h  g7 E- X/ B
        #endif
4 Q9 }) I7 z4 g5 \* p- g                        nHour--;
/ o( b0 [0 {1 h8 N. L7 b7 O; _                        if( nHour < 0 ) nHour = 0;
( d2 N5 q6 z  Z7 \                        if( nHour > 23 ) nHour = 23;) T7 p4 Z" N& w5 ^  S# }
, \* h2 G/ e$ k
                        //if( m_bFixedHour )
, }1 ~$ L' e( g7 b1 G# ]+ F                        //        nHour = m_nFixedHour, nMin = 0;
8 a# F" r& l6 B6 X' Z; |                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
- D- l; s4 R# X) F0 d& D2 S                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];- [7 R0 W- {: ~8 f- s. X5 x
; ^  U" f* ^5 K3 _3 k$ ?* S- p
                        //m_lightColor = lightColorPrv;
4 n$ {# B/ I- i$ u8 y                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;  D- ~1 {9 d% o8 r
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;- e+ l' E. |* D# j' r
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
. e) L- J/ ^0 d! |: p; G                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;9 G3 ~" \  B' p9 f2 a
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
1 r1 Q1 x7 G* P) \' L                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;6 x  }9 i3 |4 K7 j9 P/ u
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol), j, u  C0 E1 _

& M/ g& p* b, ?- n9 \                        // à??μ oˉè*
7 X# e2 q% |% D) d                        pLight->Diffuse.r  = lightColorPrv.r1;
/ X/ e9 j- [, {6 ?                        pLight->Diffuse.g  = lightColorPrv.g1;
- j  e, E& F2 `  W8 e# \' z1 N$ z                        pLight->Diffuse.b  = lightColorPrv.b1;" C, k* e; a, u7 F
                        // oˉè* ??à? 3 t* ^5 R9 {# J
                        pLight->Specular.r = 1.0f;
; h. Q6 `/ c+ _                        pLight->Specular.g = 1.0f;+ M8 S6 T0 N) \2 \6 Y. y
                        pLight->Specular.b = 1.0f;
* Z( w- C: ~; |/ u( @+ p' [( B6 h                        // àü?? oˉè*
5 h* K+ e% [8 G1 r5 {                        pLight->Ambient.r  = lightColorPrv.r2;0 S" y# i  F! \7 H  x% \, @
                        pLight->Ambient.g  = lightColorPrv.g2;0 K* R7 A* m1 |. m" G7 g* K" ?
                        pLight->Ambient.b  = lightColorPrv.b2;$ i" k' \, p% T( \8 U
& d3 e- h2 i% F: c
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# T0 ]; y& d+ k7 \/ j                        {. {7 S5 M% [( ~* V5 R! ]
                                pLight->Diffuse.r *= 0.6f;& p) U% P! d5 c3 {
                                pLight->Diffuse.g *= 0.6f;
, t/ U- Z2 V# v  }: X                                pLight->Diffuse.b *= 0.6f;
# c, `, X3 U- Z7 _3 Z% s8 z                                pLight->Ambient.r *= 0.7f;$ j. g! {/ O- K* H
                                pLight->Ambient.g *= 0.7f;3 T. {) u" U! _/ d2 L
                                pLight->Ambient.b *= 0.7f;
+ d& B4 B6 [0 ~6 G0 |! @% H                        }
4 d6 L' `: k2 z                       
) Z4 C+ }& y5 x) q2 R5 _#if __VER >= 15 // __BS_CHANGING_ENVIR/ B! ?4 i* l1 D& J
                        if( g_pPlayer )
4 \6 V# t! f4 d/ Z                                HookUpdateLight( pLight );
5 Y. W2 n0 _) n$ w$ h1 ^#endif
0 D0 n, a- o. Q' i8 C% D                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 T* S7 m4 j" B( ]- _: H9 {. A& P, o+ O. W; \/ F
#ifdef __YENV- w5 @6 o% H) j3 y2 d2 J( Z4 W
                        pLight->Diffuse.r  *= 1.1f;
  K" T- u( M  Y2 y' v                        pLight->Diffuse.g  *= 1.1f;
* A+ P6 T+ O! l- l: K9 d% o                        pLight->Diffuse.b  *= 1.1f;
* H6 w3 G# r& m' e: c8 |                        // oˉè* ??à?
# z$ Q( N: u7 {+ u                        pLight->Specular.r = 2.0f;$ w  U" a2 O% X: \$ t" h1 @4 X
                        pLight->Specular.g = 2.0f;
: C( {: @) e  Q7 O& x7 k9 l7 O- W7 M  Z                        pLight->Specular.b = 2.0f;3 w" ^. j  Z6 p
                        // á?oˉ
2 R8 t- ?# B) w2 z9 y                        pLight->Ambient.r  *= 1.0f;0 |+ Y% K! s1 c- C
                        pLight->Ambient.g  *= 1.0f;. \6 U4 }. K( P" W6 Q4 s
                        pLight->Ambient.b  *= 1.0f;" G9 c, d! f2 J! s: j& H% {
#else //__YENV
# b$ f9 s+ [7 Z0 m# [& R                        pLight->Diffuse.r  *= 1.1f;
; u9 f! W- [' Y                        pLight->Diffuse.g  *= 1.1f;: J3 w* ~. h; V# a
                        pLight->Diffuse.b  *= 1.1f;/ y- K& D7 Q1 q2 j' t; B
                        // oˉè* ??à?
5 v; R7 @8 `) s" A                        pLight->Specular.r = 2.0f;
$ P( U3 ^/ K5 I* B: ^& P0 L' d                        pLight->Specular.g = 2.0f;
; K9 I+ ?( b/ M' Z  \, V) A: S! i                        pLight->Specular.b = 2.0f;. k2 F. t# z7 z5 x
                        // á?oˉ
" U5 g/ X% \! Y+ z                        pLight->Ambient.r  *= 0.9f;* m! l, L2 l3 ?" a
                        pLight->Ambient.g  *= 0.9f;9 r$ ^$ m0 d$ l, v( I  B( p8 y  i
                        pLight->Ambient.b  *= 0.9f;" k' I/ |6 D. z0 |) v
#endif //__YENV 4 L. I: U( ^. N
                       
9 K; ~/ o( u1 I) ~0 y                        memcpy( &m_light, pLight, sizeof( m_light ) );
% C& k0 z2 G5 |& q# {; ?: _9 g+ g9 q                       
7 o( p0 o! [# d1 a5 G- U                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
+ R$ D7 \0 |' D/ `                        D3DXMATRIX  matTemp;
8 w) |% L+ `* i4 k; p                        static const float CONS_VAL = 3.1415926f / 180.f;
# y1 r0 k( `  {" K0 K  A
6 M" [6 y" U$ V3 w9 a                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
) d. T+ d) [+ A$ E4 W$ ]                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
& ~8 Q1 `" X* W% h: Z- H                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );   y# w% g9 W# _3 V. p* k. F+ w: e) z
                        pLight->Appear( m_pd3dDevice, TRUE );
5 Y* s- K7 A+ D, e
- v5 X+ C& B, \) o6 P8 z0 `                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);! b$ B4 y$ F3 U4 @: k* j& Z
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
6 o% p/ `5 x2 V0 X2 I2 n" s/ X                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, b1 p- z# S4 T& I/ V7 ?# ?" x7 k3 f
; o2 g' j- F' b4 ~                        DWORD dwR, dwG, dwB;  r& ?: v" ?: J( g% z* z5 V
                        dwR = (DWORD)( pLight->Ambient.r * 255 );, Y  ^( s' l& L# [
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
1 [- t9 _) F% E  x/ _# G  s                        dwB = (DWORD)( pLight->Ambient.b * 255 );
, d- {* E; p: A' Z: n3 e                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        ' W9 V+ v! S7 U3 J. r3 r
                }% `$ N+ N* |# ?: @* q, X& W7 h- l/ F
        }# @% S, D# r! }& ^* J" O

4 [$ Q  M8 `& `4 e* i8 C6 |  ]. ?        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );& ?2 ]( E; u1 c2 R5 o
        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) );
$ T: x. K3 ]" {- B5 i        ::SetLight( bLight );
$ e6 v% l& A( V3 K1 M6 k$ x3 \! J! a) P8 `0 E, x* x2 X1 c1 T
        // ±ao? ?D?í???ó á¤à? * v/ a( Y1 x+ }
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
" V" a) F+ i" n, K       
. H, ]  W- i( I: O#endif // not WORLDSERVER! l9 t2 |. ?* R4 M2 l; n
}
1 M2 s2 [5 Q7 G. z并更换
) j5 y+ B! z( Z) H: xCode:! ]# T5 O4 }% \  o
__FLYFF_INITPAGE_EXT
+ U% Q, d- g" J定义
4 i+ X; C5 K6 |4 q$ i6 Q2 x$ e
+ z6 Z1 K* a+ u& J" S. p, J" ]2 f# v9 v/ m" }" |8 e
. H" F6 D/ {' B( a  O: D

& v1 y9 ~& Q$ @0 w8 e现在终于删除我的狗屁加速...) r/ L  p. p6 H2 x! s9 {

0 W- d& h! C. I! k# ^6 U% r7 |$ b9 `' j: i% Q8 ?

% E( c( X3 r  ~# I7 V  C8 W




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