飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
" u$ U. b* L' N0 ~尾翼:
" N" e+ @( c: B: }+ d1 u- Y$ i/ s9 {% J
! ~. l# P1 g, W9 \% L代码:
8 i. V1 L" o7 e9 }$ gCWndAutoFood::CWndAutoFood()
! A/ H6 v( P% y% A1 F8 f{
0 b0 _; K5 i0 {* u) f8 f% h4 b* m, w' U        m_pItemElem = NULL;9 B; @9 p& h1 R. z, v
        m_pTexture = NULL;1 _" t- n: l% K+ `( z
        bStart = FALSE;
. b( a# t- p$ ^( Y1 X4 [/ ?}) Q) J( o/ E8 j: M$ I6 v

- n6 V% U9 E5 u, M  eCWndAutoFood::~CWndAutoFood()
8 o5 R2 B% I  V$ _$ v5 e) q{# h0 {; z6 h/ Y" n3 n4 b; O
        AfxMessageBox( "AutoFood ist gestorben " );% `- z2 @  U/ R
}
$ n- w$ L' T: Q/ X. V: \BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )$ @  \0 D$ T$ O4 g7 W3 r
{, R4 @- X+ K3 d5 \7 Z
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
2 G: O" m! }/ q1 `8 q; T( G& A}; g1 F8 d) E3 \! {" L0 @
7 h7 a+ Z% q1 {: G$ C1 E& m5 R
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
  a/ w. M' t* f% r. O{
  s' v( B1 `0 m, |3 A8 L9 a! m        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* e* S* H; H3 j3 G" Y        CRect rect = pWndCtrl->rect;6 k5 @9 n  f7 ^  ^. J$ S& W: K$ [
        if( rect && rect.PtInRect( point ) )
- n6 W* }0 P5 s4 k. q0 ?        {
" Y, f  s* G7 P                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );1 p5 _: d, d+ @
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
: z7 u$ w2 W' m6 ]& I- C/ g7 [                {
9 l2 B9 X4 E0 Z. B9 a: T                        if( m_pItemElem )
. S( K; F. S. t9 d' x  A8 h                        {
) r0 j" Z7 K$ P, |3 F                                m_pItemElem = NULL;  Z" x, `! r) G4 e7 e$ q
                        }+ B. x5 x! w7 D& U  C
                        m_pItemElem = pItemElem;
! X& ^1 O' y7 B: q                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );4 G$ V* M9 K& T% I$ U, l/ U% U  S) U
                }else{
# N( y+ n, y6 J6 s# H6 M1 ?                        SetForbid( TRUE );, n- O: J; H" i2 O# O/ F
                }$ e! F# A4 Q( \* b) ?+ S0 }
        }else{
! H- t7 B. e! A* f$ @* l* F8 Q( w                SetForbid( TRUE );- d) I% c7 M5 W: t1 N
        }8 r5 L* i1 z" B
        return TRUE;
# T% o* c; k/ G( i4 d}% W. f4 i( z3 Y3 W  F

/ W: X$ G# w  y( V( NBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
' E3 G, w1 L" S" J( V0 r{
  h$ V: ~9 J; }3 W        switch( nID )
0 o3 u, B8 K6 t0 ?8 ]1 @6 d        {
! i/ g) \0 {. Y7 V$ s4 J' g& O; m4 }# R        case WIDC_BUTTON3:2 M- G! B6 f2 W7 T# w# ^5 h6 X
                {
1 Y/ T! N! U6 J1 p& g! ]0 O                        bStart = TRUE;
' ~. v2 V, i; Q5 e2 C% X" f0 l                        break;) f6 E/ s: q5 k; E5 f. l4 D7 N! P
                }
" ^# c/ {9 \5 p7 F3 Q        case WIDC_BUTTON4:2 F0 P% H5 a+ b: u
                {
% J9 k& Z, q4 I# e, C" Z9 g                        bStart = FALSE;2 G: G" O- ^9 M9 ]$ Y5 a6 b/ e7 O5 c
                        break;# @  O- Q; X* B6 Y- I
                }
' r8 Z: _' [0 b6 H0 f        }- _; n, }6 `7 d
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
# f  o, Y, E. R4 A  L  }" Y+ `7 v}       
2 `" {* {* c! _void CWndAutoFood::OnDraw( C2DRender* p2DRender )3 O9 [! M. N0 E) p- E3 ^6 x
{
& j# X0 K# r- I/ H$ }        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );$ q4 G) f" y) B, S/ w2 Z3 s& `
        if( bStart || !m_pItemElem )7 Y6 H8 K7 B" f( @0 w; v
        {
* s) D! n# ~& g! {- `                pBtn->EnableWindow( FALSE );5 {. ?: g# T. A* E
        }else* S* O& [3 M6 G5 _( G
                pBtn->EnableWindow( TRUE );6 C) v2 S4 I# I5 X3 w+ V! i7 K, w- [
        if( m_pTexture )
- t$ c0 y- [* e1 |2 @        {
3 B0 s0 m8 Y  c2 ~6 P) m                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );  P4 n4 g( }( f7 \
                if( wndCtrl && wndCtrl->rect )& P" w2 }! U, ]. Z
                {6 x' U; b% ^! v2 y6 a& H
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
! q" B+ j8 J  M# T                }
3 L$ }( H% ~) j        }# a7 A% l) E6 v& ~3 I
}
5 E. Q: K7 m1 n+ J
; B* J( @9 ?9 T2 x0 [$ NBOOL CWndAutoFood:rocess()
* T( @# G8 D& M( O# o, Y% H3 a{; S' q, H. o5 g0 X
        if( bStart )
! o! X. U( Z. I        {
! B& N' N6 Y3 D+ u) M+ s. f! P                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )8 a& T- y( o" w2 D3 m
                {2 y, c" j( G2 n# P5 v8 h
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
) a5 M2 a  A* M$ r  h! ^                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );, j* |" r" D) T! J  i. ?
                }else{$ O1 Z. q) L& J. T) R
                        bStart = FALSE;( P' C. R8 {6 g# h. z6 A
                        m_pItemElem = NULL;
. \, a/ J+ T( }# x* |                }$ X$ B+ o5 s) U: a7 v0 l  [; x' Y4 N
        }9 b3 Q; \& K# w" Y
        return TRUE;4 l$ c5 Y7 }9 m2 B- k& X5 U9 i+ U  X
}
  z9 e5 P. W+ H  }: S; T- e
, C8 @8 E  t$ R  ~  i1 T# a7 @登录视频废话:
7 G3 c; x, i6 s+ |! N: o  H' v) ^尾翼:
! b' }$ O, W- g+ w5 x5 i# `7 p; K: Z3 i5 q: W
代码:& a$ v+ [) @% t6 _) L% W
  \$ T1 D! k0 I/ \% Z! r1 K
void CWorld::SetLight( BOOL bLight )8 u  V' p# s$ O" {8 z1 t- s
durch
0 O3 p& R  ^: e  @% }2 E3 lCode:0 q# c+ G# K" u. W, C
void CWorld::SetLight( BOOL bLight )
8 T$ S! [7 }* L: G. k! l, E! _{2 `9 p# B' I- u0 [
        //ACE("SetLight %d \n", bLight);( X! ^) X& V7 a' n2 P
        2 U. T* g  p5 X
#ifndef  __WORLDSERVER 8 n! v7 L- V3 O, V  o
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
/ |* g; @/ @$ [& @2 T        CLight* pLight = NULL;3 e# w- M, m. m/ f+ m- I

6 J$ {8 f2 `1 i' D! @; E        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );( A: g$ l0 Q) T  i- z9 P: o" ]
5 u7 P' |& `% f6 O4 u! @+ i3 |: s$ Z
        pLight = GetLight( "direction" );
* M: U7 p; d& W4 ~
8 A4 l3 B, o' ^#if __VER >= 15 // __BS_CHANGING_ENVIR8 d# ?# g& x1 \4 |- r
        if( g_pPlayer ){
+ Y, p! ^) z1 Q) p8 k( W                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );* [1 ?( G  j/ h- f
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!% W7 e7 \$ D' {
                {
# E/ ^# Y9 m3 U. K6 X                        if( pLight )
1 ]( F7 x' \& ]1 g                        {
% Q+ p2 E3 t' I2 v. L5 S                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
! ]: x* H2 D3 ~+ F+ ?2 F                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];5 M4 e/ h9 c- f5 X: H$ T, B* B. K2 O
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
" X! i  o5 ^) [3 m+ B3 q/ v- D. S% O1 s8 L6 s8 w0 a
                                pLight->Specular.r = 2.0f;
! y! \; A$ o5 |6 y                                pLight->Specular.g = 2.0f;
5 ?5 j; Z  R7 A                                pLight->Specular.b = 2.0f;, w2 j; V: J- m" l5 u
        . i5 z3 ^3 \. g3 H$ f
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
7 c# K' z. [. W" {3 g                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];7 m1 Y2 a1 p( ~9 j
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
6 I+ U3 U/ H0 J! Z( Z  C       
9 |, @- M3 [/ z# R; x                                HookUpdateLight( pLight ); * o0 v; m# l) p9 }: }- o4 l
) `6 d6 Z  j5 ]  ~+ N7 O. n1 N9 |; S
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
, X5 \& i; ?7 a               
* {" @3 ?" e- S9 Z+ j                                pLight->Diffuse.r *= 1.2f;) `3 f# }, V- W/ c4 f
                                pLight->Diffuse.g *= 1.2f;
* l. v2 f( v3 A1 g4 l5 j4 K                                pLight->Diffuse.b *= 1.2f;2 j% N& X: Z. e% ]: n% B4 ^" P# r. z
* _1 V& ?" c# n; y
                                pLight->Ambient.r *= 0.8f;( ?9 `- r7 e, f6 i
                                pLight->Ambient.g *= 0.8f;
2 o) x2 h% Y9 g7 H2 i- M  ?                                pLight->Ambient.b *= 0.8f;
7 X: C7 s1 \$ I: G       
: G, x4 n# W" h6 l+ {, G) E                                memcpy( &m_light, pLight, sizeof( m_light ) );3 s* E* W3 w( i) p8 }  y6 M

) E1 l* g9 ?- U9 a& F2 t                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);$ Y/ \+ [3 }6 x  ^
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
9 y. E/ c5 X  ]" v2 O                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
  f4 f' [, X; _& \                                 pLight->Appear( m_pd3dDevice, TRUE );5 n/ e5 [. d$ n: m' l. S; V: @) R
               
% l3 b. ^& D! f  O- R& q, v                                DWORD dwR, dwG, dwB;! c! ~$ M- F  x% }# v
                                dwR = (DWORD)( pLight->Ambient.r * 255 );) q; c: l( S8 t0 y
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
2 e' {( i) r, d5 c! B; I                                dwB = (DWORD)( pLight->Ambient.b * 255 );6 P1 ?( f6 j! C! f, L
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );5 X/ H5 g. Z5 S, |
                        }
; e7 `/ n7 H( j, |3 U) \1 C+ |                }
0 I( P3 b' @1 f% s1 d$ o  [- L        }
. ?: [/ X/ f8 w& ]        else
5 E" w$ E, M9 Z+ ?#endif
; Z. |& n; h- ]5 j9 O8 [2 {( j# D- L! Q% [
        if( m_bIsIndoor )3 d0 b& \2 h# z5 d% L4 i) S4 b
        {2 ?: Y3 F; @* c+ z, W& z6 w' C. k# x
                if( pLight )  d5 s% M; m, s' [
                {               
' k7 g7 F* t4 h4 C' P/ u                        // à??μ oˉè*
# @# c0 U, p' J5 M! x% H) `' P                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;1 e6 ^' N8 S  G+ M2 g  c' L) u
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
. L# U* x- x( M) t; A8 ]6 F8 u; {( g$ b                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
' w! }8 V3 Y) ]/ y3 ^7 [" E7 \/ ]" v6 ~  P( M' E
                        // oˉè* ??à? 6 `' S' `. m" F. |7 a
                        pLight->Specular.r = 1.0f;4 S! V  F5 ~9 V% |
                        pLight->Specular.g = 1.0f;
4 l: I; C& V0 t  F, M                        pLight->Specular.b = 1.0f;
- p4 r. p# u7 x                        // àü?? oˉè* + Y4 {, g, s! W' H6 p
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
) H) i0 [- {5 q" h0 B1 J                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
0 U8 `: ^3 z9 I6 L' ~4 K) c5 U                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
6 o2 _$ M  G6 N3 S7 i" G
. }1 {7 Z/ n0 l7 u0 A8 z5 n: v                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.& S& T% d9 r' I
                        {5 G1 M9 E/ `5 i& `) l' V/ n4 f3 _
                                pLight->Diffuse.r *= 0.6f;
7 b9 r8 S6 ~4 g4 ?                                pLight->Diffuse.g *= 0.6f;
! W. |7 s6 h/ u+ O/ N                                pLight->Diffuse.b *= 0.6f;0 `7 g+ F: \- c# T
                                pLight->Ambient.r *= 0.7f;% V* s; h. ]* F1 q) i
                                pLight->Ambient.g *= 0.7f;
6 O" b+ W: F/ x, ?                                pLight->Ambient.b *= 0.7f;8 d5 o+ C" D9 F+ t  d( S4 O
                        }
+ x& N2 X) C7 F, g
9 S: {8 i' B5 y6 d; U#if __VER >= 15 // __BS_CHANGING_ENVIR. h0 q, n# C4 @" h" `
                        if( g_pPlayer )6 y& X. X  N# n6 P' l2 m' R
                                HookUpdateLight( pLight );
; e, o4 p5 y, o$ C6 ~% A#endif3 ]% F& n* H* X- |
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );- e& i0 Y1 z' G) B

6 I/ I4 x; j6 {' B4 ^! A                        pLight->Diffuse.r  += 0.1f;; e) C4 w& N8 L# M
                        pLight->Diffuse.g  += 0.1f;2 S" ~1 M! {- V
                        pLight->Diffuse.b  += 0.1f;
1 O! n- _( N; ]! j2 b$ a                        // oˉè* ??à? 4 L8 K; F" I+ n" b, T
                        pLight->Specular.r = 2.0f;
. Y; w9 B& P! S0 [6 t5 x/ |2 ^                        pLight->Specular.g = 2.0f;
& \& U; I6 T$ g9 [4 i+ B                        pLight->Specular.b = 2.0f;, \7 O) B- s* j
                        // á?oˉ
1 k6 O3 n6 q0 a) Y0 k! f, Q                        pLight->Ambient.r  *= 0.9f;
  v* O: I) w8 l' r' n3 H                        pLight->Ambient.g  *= 0.9f;
. @4 r6 V8 J8 ]0 W! e                        pLight->Ambient.b  *= 0.9f;4 y0 \7 l' G/ {' Q: l2 p9 ~
3 V. ~, M# _  m( J: j9 V
                        memcpy( &m_light, pLight, sizeof( m_light ) );! ?2 k# _$ ]+ q9 z
                       
' J3 F+ _8 ^$ |! s0 l. n                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
. X, |/ @& N" b* f                        pLight->Appear( m_pd3dDevice, TRUE );
2 v; i/ X4 y* a0 m       
; ]5 s/ o, V8 v1 h                        DWORD dwR, dwG, dwB;
& C2 [" _9 P' [% |% `# R1 I                        dwR = (DWORD)( pLight->Ambient.r * 255 );: j2 y( H* w- J
                        dwG = (DWORD)( pLight->Ambient.g * 255 );* Z2 S! c& V' S4 U
                        dwB = (DWORD)( pLight->Ambient.b * 255 );0 {  b8 e9 r# j3 G
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. t2 B8 X' F1 o) g2 o0 m                }
( m% ?$ `! |" ^& f& R        }& c. G  S7 [+ h7 B* f: T
        else7 Q9 F/ w, X& Q3 A
        {" v/ U0 P6 N7 F3 Z- `- e
                if( pLight )( W$ \) J: Q" i6 w( Y
                {
( g( R* j) o4 V1 k6 ^' Y9 C                6 F3 o# D% X1 D* e  {$ K/ j) |
                        int nHour = 8, nMin = 0;
  X/ J. z+ e: L" ]4 t        #ifdef __CLIENT
: e) _9 r2 g0 s: k8 A" f7 Q                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
  F9 _7 z: b3 S8 v( O2 {% ]                        nHour = g_GameTimer.m_nHour;- F. S7 ]* v! e/ p5 ~" T
                        nMin  = g_GameTimer.m_nMin ;# v. M1 B3 Q; V+ B$ ~+ d2 {
        #else
8 v- E$ L9 u% i1 s! A; d6 G                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.& j! ~* T2 Z' u
                        if( m_nLightType == 1 )" [8 y0 e9 O" X/ g7 J) j
                                nHour = m_nLightHour;2 H, f( v2 [) \. f' y+ J
        #endif
: g( i/ S- A% ]) S3 f& j                        nHour--;
  m/ m. {4 b! X  T4 T6 N1 R, }                        if( nHour < 0 ) nHour = 0;
$ z& D  A$ M/ B1 P                        if( nHour > 23 ) nHour = 23;
3 ]) b' v. d7 o/ H& [+ V% _- Z; d3 B/ U3 c. Q" |
                        //if( m_bFixedHour ); y. x5 R6 \* k0 W, L
                        //        nHour = m_nFixedHour, nMin = 0;2 \# B0 [/ _7 d  h% C6 ?
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];5 ?4 \1 Z, n( n% r/ y
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];9 K1 A- s/ h! a2 @9 ?6 R2 `7 i

4 `+ c  I) c4 r                        //m_lightColor = lightColorPrv;# P- S, v1 @! o0 @, f
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
0 d, R' a7 s5 A0 l' b                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
6 S1 x; g  h4 C1 I2 Z                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;2 l) V' U+ V+ q9 ]
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
3 i/ |( F$ O  e4 P: l                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
# q* C& d: ?- G* q2 w                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;: ]" E& a6 i# u' ?4 S/ M5 }
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol); h( c5 m4 I9 {1 J, s+ s* V

6 z# K6 Q5 K1 X' v9 D% A                        // à??μ oˉè*
3 q' d6 w9 _) \: w6 v                        pLight->Diffuse.r  = lightColorPrv.r1;. x- S6 B. [! P& ~0 \
                        pLight->Diffuse.g  = lightColorPrv.g1;
9 L, N! N3 o& T7 {8 `9 V                        pLight->Diffuse.b  = lightColorPrv.b1;
* n' J# h2 Z; J- h; {; w0 ?                        // oˉè* ??à?
0 d2 w: Q8 I7 W% Z                        pLight->Specular.r = 1.0f;
. k9 f$ h- D$ @                        pLight->Specular.g = 1.0f;
0 w, `0 W& e. s9 }                        pLight->Specular.b = 1.0f;
+ d# R! l9 V( }* e                        // àü?? oˉè* ) B- p2 l9 K, ~# o& O. S( ~" m
                        pLight->Ambient.r  = lightColorPrv.r2;
1 j& Y2 V, C. M2 Y# `                        pLight->Ambient.g  = lightColorPrv.g2;
* Y8 a$ e; C; V, W; f2 i                        pLight->Ambient.b  = lightColorPrv.b2;' {9 R6 v2 ?" i2 T

. f; O3 Y5 o* b7 A/ f                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.7 o. P9 {& _9 C
                        {
* D; {1 ^( ?9 d$ d; e                                pLight->Diffuse.r *= 0.6f;
* t$ g1 Z! Q) {3 X0 P9 v1 t                                pLight->Diffuse.g *= 0.6f;
& N5 f- M3 [) ?4 X                                pLight->Diffuse.b *= 0.6f;; N2 P: s9 @/ c( ^; H9 R' O! D
                                pLight->Ambient.r *= 0.7f;% A' G* x1 i! r- V
                                pLight->Ambient.g *= 0.7f;- a* p# H2 n0 E' I2 g6 A# I
                                pLight->Ambient.b *= 0.7f;
  x( U' f. Z/ a' N, y                        }
( _& F- p, r+ j. u' m* ^0 n                       
# X, X8 |: _: y+ @#if __VER >= 15 // __BS_CHANGING_ENVIR
) d0 I" q) Y1 K+ j                        if( g_pPlayer )
6 }9 u- S, x% D( I                                HookUpdateLight( pLight ); / F) O0 X+ e5 o: I. V$ z( \
#endif
; B, I! X1 Q6 e2 ^3 b( Y                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
  W1 D* J" e' r+ P1 y7 z# d# s
( V* J7 S2 w% e2 |7 w' \  K#ifdef __YENV
- _$ h$ i1 d# o                        pLight->Diffuse.r  *= 1.1f;% j% z1 h# F2 C0 L
                        pLight->Diffuse.g  *= 1.1f;
- g% K: M  Y! m                        pLight->Diffuse.b  *= 1.1f;
" u( y3 v/ t5 C+ K% I                        // oˉè* ??à? 1 o$ W' {' \. P) z$ ?6 ?! Z7 u
                        pLight->Specular.r = 2.0f;
4 Y, D9 j+ X/ {+ k; f( p, I                        pLight->Specular.g = 2.0f;
% I% Q0 }$ a8 i; W& I                        pLight->Specular.b = 2.0f;
5 P" g) R0 h& G5 G! ~                        // á?oˉ 7 }+ p7 R0 Q1 Q( p
                        pLight->Ambient.r  *= 1.0f;
- [( ~4 G6 U- b  e6 q2 D                        pLight->Ambient.g  *= 1.0f;
0 \4 w9 {, |! n* F; l* G: q: N                        pLight->Ambient.b  *= 1.0f;
( V! [- x, [' \- v4 m#else //__YENV
# U) s% ?) i% ?/ z( \$ w                        pLight->Diffuse.r  *= 1.1f;( j% J1 h$ D& }
                        pLight->Diffuse.g  *= 1.1f;
' e) ]8 Q3 H  w- o. m                        pLight->Diffuse.b  *= 1.1f;
( u: r( ]6 m% }/ R                        // oˉè* ??à?
0 S! g& A$ s% d                        pLight->Specular.r = 2.0f;
+ |6 [; T3 d4 m; F9 e( ~                        pLight->Specular.g = 2.0f;
1 S7 P& p$ S  n3 ^                        pLight->Specular.b = 2.0f;
# i( ~# b8 ?# T$ W                        // á?oˉ
: Q/ ?0 N' o# |% ^' F% W0 u% v                        pLight->Ambient.r  *= 0.9f;# M% ]& {) X5 y
                        pLight->Ambient.g  *= 0.9f;- ^* A$ g3 |0 v+ V
                        pLight->Ambient.b  *= 0.9f;" z) A' I1 N1 g4 C$ T. `" |
#endif //__YENV
3 C. |. |* U  \( Q5 ^7 u                        # |/ g7 ~' @. _4 n+ q8 \5 ]+ T
                        memcpy( &m_light, pLight, sizeof( m_light ) );4 d: M( o! P8 W5 J
                       
) X' G1 W. W- ^                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
4 W2 S2 H4 [. V( D& ~: {! _                        D3DXMATRIX  matTemp;
# p* t0 T4 C! ~# `& u                        static const float CONS_VAL = 3.1415926f / 180.f;$ y" q2 U% ~: ^; Q' P) s& y
" H! @! G( J6 u" y
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);- q* Q% B/ q- J1 V
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
& W4 P" K% D8 z                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
, T- Z0 ^% S1 E/ P1 X                        pLight->Appear( m_pd3dDevice, TRUE );
  z3 h8 q( ]  b5 R2 n" r: U/ W9 C( v+ f
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' @$ j8 D' |/ F, g& J                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));" x# m. [8 n. D: ^/ B0 v
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 8 u: m4 E( V. f6 M% h' K7 Y; P3 b

6 a9 O7 O8 q/ L( c                        DWORD dwR, dwG, dwB;/ E  ^+ I8 j1 z5 ~& q
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
% `3 M* N/ b& G5 O4 \                        dwG = (DWORD)( pLight->Ambient.g * 255 );
5 g# l& p& u, B/ @7 y                        dwB = (DWORD)( pLight->Ambient.b * 255 );
3 P1 G9 R3 V( |; S                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
: M2 R* R2 m9 R, A* B                }; B& s0 @" {- e: v9 Y
        }+ Z8 u7 V1 i7 R5 h1 ~% c$ T

& F: ^# \6 z2 m7 O        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
9 s4 c* Q8 z0 e0 Q" b. v8 i        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) );
( b! L9 [/ [" z! p( y6 H# l% U        ::SetLight( bLight );# J& u# ~0 Q9 v0 |9 S

; t& K) X) M$ e4 H* }* K        // ±ao? ?D?í???ó á¤à?
; v' t& v8 k& ^% Z& O        m_pd3dDevice->SetMaterial( &m_baseMaterial );
; X* U2 L7 F( U8 A2 I0 U       
9 K+ S$ K1 w2 S: O; @#endif // not WORLDSERVER
& i  V1 _6 J! ^. ]}
$ z! o) b  U. {2 U/ h5 V并更换
! ]  ~3 ]0 M4 I! Q! m1 D! _Code:" B0 |& [  }9 Y, M% [" w
__FLYFF_INITPAGE_EXT
) o6 S/ }; j9 c& L定义) F, H8 i6 {8 x

$ u' Q+ n6 @3 K% L6 S  t1 [7 o* A# D) Y9 p* w. q  d* M7 p0 l; P
: L7 y0 c8 M+ _. w0 s
' i( ?, i3 j1 h! q% F$ m4 Q% F) m
现在终于删除我的狗屁加速...$ i6 C9 f0 M3 m6 R4 e3 B) v$ {

& I* t- S! Y/ s* q
# z  Z+ ]$ t% S& M% I
/ Z8 J% Q5 E9 ]8 u# w- d7 w9 m. B




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