飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
, V' U/ t' V) C4 x尾翼:
% R! L& g) u% N% [/ Y$ W: Y1 L5 @4 O
代码:
( j$ @6 X8 \+ T6 Y3 {CWndAutoFood::CWndAutoFood()
/ t# l6 u7 u! p2 ^0 W$ u{
6 Y1 g8 T: h; \& D4 s& p        m_pItemElem = NULL;
0 H' e) K. H' k        m_pTexture = NULL;- t# ^3 E' E+ W' L
        bStart = FALSE;3 y! [% }2 C; C1 E& I+ x' y
}
+ b. Y7 \. ?7 ?' J7 n
, J7 J/ X8 e  R2 n5 a$ A' V  z. kCWndAutoFood::~CWndAutoFood()
7 o# ?8 E  G# h8 C! L, c7 Z{* n8 h1 s; ^8 O( G
        AfxMessageBox( "AutoFood ist gestorben " );
; n1 t0 d) t7 T3 k3 C}1 Y1 H6 g9 b9 V4 ]
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
7 u! c, {+ B& m& [4 F6 Y* m- ]- D{
; \9 f; N* s& z  ^. l$ L1 a        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );# l! D3 E2 ], E4 B- B, o+ T' {
}4 S% G  j, X/ F* b+ q4 c
6 K- _/ `" {& u. t# z9 ^7 N4 F* k
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
# T6 z' I+ n% x) |, @* S{
+ h+ Y8 V- ]2 _        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ d+ ]5 L- z) Q6 P9 |        CRect rect = pWndCtrl->rect;
8 X* V4 n1 S, d/ B# y! P5 m        if( rect && rect.PtInRect( point ) )
7 V, D, z8 X* H        {' d, a( w* i# j2 U1 @3 A& C
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );' L6 h% O& R1 R0 ]; G. [, A8 R
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )) v) T% }% g3 l7 n: [
                {, X# n1 R& R1 `7 T2 C
                        if( m_pItemElem )
4 B& O; Z6 ~* V( Y! c                        {. v+ d3 U& s& u! i3 S
                                m_pItemElem = NULL;
+ ^: d! x+ e# B8 J+ s5 Y- u4 X) K                        }3 d( B6 k% V: ?
                        m_pItemElem = pItemElem;+ g' m! ]( K( F; `
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );- G9 o, h9 i9 P, I- {3 C
                }else{
+ O- y2 Q" f" v" y6 S  H                        SetForbid( TRUE );; J- r! u% v' B! U
                }) K+ K7 W* f2 O& J! W
        }else{
- \( n4 }3 I7 l! f                SetForbid( TRUE );
) Q3 ?8 D$ @) ?5 A        }
, {1 `& c# h! n( z        return TRUE;0 O/ `6 G! o8 C1 X
}
; D2 U; M  m' n' o' Q
6 F: v  m" n+ u! f% fBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )" a7 }8 \# x* o( u) A- p1 `+ w
{
  [5 }7 O! @; b1 j. O7 y* E! A        switch( nID )
! e# r  D4 w  B' S  u        {9 H5 m2 F' g& Y0 d
        case WIDC_BUTTON3:& p9 \) o3 T! C& {* c
                {
- _& N( `6 F: Z0 x( B& u2 n& G                        bStart = TRUE;1 ^; @1 S5 z1 ?  k& i/ G) p8 H
                        break;% F/ |& q; w4 Q# C
                }
8 j* o% A2 ]# X1 u0 C$ }, b        case WIDC_BUTTON4:( J- [4 i7 i' c# {
                {
( ^9 t1 d/ Q' T7 h( ^* x( {/ P/ h                        bStart = FALSE;
, N4 Q& ^% @1 B0 A$ Z                        break;  f- A8 O& s2 R- g- N
                }; }( H. {# ], W. N
        }
! d7 M0 F1 |; H" z$ c" n        return CWndNeuz::OnChildNotify( message, nID, pLResult );  F: T1 i* X1 M2 u
}        $ B, I+ Y: d, G- e
void CWndAutoFood::OnDraw( C2DRender* p2DRender )# B$ R2 R5 g, O% ~5 y- j
{
, J" e. Y- z2 v1 E/ A3 l        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
7 S% N3 ^7 r. d( `$ n" F+ N        if( bStart || !m_pItemElem )
0 o& ^* J3 _$ H3 v, e/ |$ k        {) w" t: O, w& f* F6 E+ B2 I
                pBtn->EnableWindow( FALSE );, M0 L1 N' {, n1 s
        }else
! k7 e8 c0 }- r* K                pBtn->EnableWindow( TRUE );4 `) {! {( x1 m; i2 O* I
        if( m_pTexture )
% ]3 R" s% _$ c+ y+ t        {
3 h2 F4 d% I# w* E                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- B2 k: |/ m+ s& W( K9 R                if( wndCtrl && wndCtrl->rect )
3 A- v% v3 Z( y                {" K. x7 U* H! p9 R
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
; E, P2 ?, v* z8 Y8 I5 `% q" a                }
5 [# k+ ]1 N. J' F& E        }6 |7 B4 e$ d- H0 O2 F
}
& `8 c3 v/ X! o) u$ r# r
0 j1 u/ {& W) `. T5 ?; XBOOL CWndAutoFood:rocess()
1 v- z6 V+ S: X{3 |3 ?9 s6 z" U
        if( bStart )
# Q; A4 Q) Y/ U$ ^8 P        {
: ]. T9 v$ J: |# n) u7 W6 C                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 ), e5 Q) u% D* b0 k* \/ H2 w2 {3 n
                {, U  k+ i; C3 k4 ]) c* a
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )3 j5 U+ d) M4 q; f
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );  b2 w" I8 |/ {& F" S' p& @* q
                }else{
9 j7 e9 [2 I4 p                        bStart = FALSE;) m3 a, S2 H# K7 \; \% G; t
                        m_pItemElem = NULL;  F# a/ E; d) M9 X- h
                }
) v$ s3 d% c7 x3 Z- O        }
& i( ?2 {# m. X, j3 p. M$ p        return TRUE;
# }/ _/ T" M% w0 b}
& q; n" ^  H7 P6 ^5 U1 x+ H, [% W, |0 A- T
登录视频废话:' F: \& |0 y* K- @
尾翼:6 h" v- V& y. P/ ~& p
. q, T  J1 b& F$ d" T2 S2 J% r$ n
代码:
: D4 F/ n" B+ z3 p; M& X* G( @  }
* v8 D( O4 T6 _4 Y* avoid CWorld::SetLight( BOOL bLight )8 Z) [- V6 S/ E. A9 v0 p: ^
durch# z( g( d& L* ^% a7 {; N' O
Code:
' v. r! o4 A7 w- ]0 Vvoid CWorld::SetLight( BOOL bLight )+ u) ~$ Z$ C6 S( l8 w! l, `3 H
{. g4 f* D6 S" G1 w% p
        //ACE("SetLight %d \n", bLight);
" |$ d7 c8 i8 a8 Z, C       
( k2 T3 p7 ]# ?2 ^4 |#ifndef  __WORLDSERVER ; ]# h* e& @' p% @$ k+ j
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);2 J  E4 x; L+ T' P0 k$ a8 C) p
        CLight* pLight = NULL;/ z8 S( {' X7 U6 I/ C' J

6 I6 x3 P6 A( m        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );, T1 U; z. N+ P" u' O6 p
: E1 J4 n8 X; O
        pLight = GetLight( "direction" );
& G6 ?: M  Y7 P! W
* M: B. k, w9 w" G; Z#if __VER >= 15 // __BS_CHANGING_ENVIR' A4 [% H) H- R/ ?
        if( g_pPlayer ){6 l3 o2 h% h# ~" ]% `- l3 M! B& P- N2 q8 ^
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
8 U. n8 `. ~3 O1 v                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
/ r, G7 |/ S& X' R1 w3 g                {4 ?% Z/ d4 H& Q7 a
                        if( pLight )
2 b4 M* w3 s% F                        {( c# K4 ^! t) h5 \5 t# R& a" G+ F# q
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];$ z2 W8 A; U5 U7 _- t. M, h: G
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
1 E' g1 L: x7 P1 a                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];- J. l7 N7 J; B6 ]$ i, \

4 T+ F  }! K9 c* r8 Y2 `: f                                pLight->Specular.r = 2.0f;& Z; Z9 k( \! y# ]6 D8 g/ q
                                pLight->Specular.g = 2.0f;- I% H- Y. N& F
                                pLight->Specular.b = 2.0f;
* t) \  M* v+ j0 I  g       
6 S/ n2 _$ Y7 M8 U$ c! V1 T                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
  k: D. ^5 X, E2 h' J9 N+ u+ M5 I                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
. q6 O1 T0 H0 Q2 V$ N( S& C                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
! \; r: K1 I/ F* U       
1 i4 z* R- i1 @& W" S                                HookUpdateLight( pLight );
( o0 P6 g, N& O* H# [0 r
$ c3 a4 A4 i& y  f" u$ ~                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 `. K: j, A( z               
0 t* w; ]' A6 E                                pLight->Diffuse.r *= 1.2f;
2 I( B5 \+ J5 j; h$ G, E                                pLight->Diffuse.g *= 1.2f;# r' g( }; [1 h# d( G8 `% S. S
                                pLight->Diffuse.b *= 1.2f;
  Z/ D- h# C3 i# w) X
9 M) c6 o- j! Y$ Z; Q/ Z                                pLight->Ambient.r *= 0.8f;" {. k( ~% f- X
                                pLight->Ambient.g *= 0.8f;, x* O; d7 k2 Z
                                pLight->Ambient.b *= 0.8f;' g! X% G8 P- u
          Z5 K" Y9 h1 j
                                memcpy( &m_light, pLight, sizeof( m_light ) );
( m; @# Q; }3 J
+ i6 t* a9 Y  P  v& B                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
* [) z' s$ g  G" I$ u; }2 @" @% ?                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
& d6 w; i3 X' R* i                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: X: h3 `: G- T! @                                 pLight->Appear( m_pd3dDevice, TRUE );: c0 D/ y$ d# P0 X: V* M
               
& X  V; v; f' y2 X) e" `3 r# K                                DWORD dwR, dwG, dwB;! |4 Y5 a3 `. y% C
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
- }% l7 A- _" W! Q. D7 W/ N  g                                dwG = (DWORD)( pLight->Ambient.g * 255 );
" N$ r, ~& D+ \" G                                dwB = (DWORD)( pLight->Ambient.b * 255 );
) |- n6 {* K: k9 Q* \                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );; N$ {& [8 C. v. |: V& t( i
                        }
, {0 D, F6 P; P9 Y) d                }
! R; ~3 R' [4 |+ z, Z        }
7 Q4 t7 _' b& z* D5 `# s        else3 m$ s% Q9 o  S( A$ |6 {0 [5 d, g5 H8 W
#endif ) g  A# ~" k1 C# |6 e
* Z; M; d/ B# Q$ M1 T( w, u
        if( m_bIsIndoor )! _# J5 f4 l, @# C/ R0 q/ V8 k  a( b0 s
        {
3 l- m# k6 {% h; e) k; j$ u% L4 i- x                if( pLight )
! h5 @' P) b+ E! {; @. y; ]                {                , h% M8 K# R, `/ s
                        // à??μ oˉè*
- d3 p8 r0 i5 l2 @- G9 J1 J                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
; N7 ^5 P/ U$ ~. w+ m                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
2 x0 e! w; V1 R6 A9 s4 n7 Y                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;( Y9 ^& Z# e. K. f0 `6 S2 y
& W' x* q# B# x& P3 C7 q
                        // oˉè* ??à? + G2 U* ~/ z5 ^, o4 r# }6 P- X* ?
                        pLight->Specular.r = 1.0f;
! S8 y9 f9 o  p. x0 t: {7 q                        pLight->Specular.g = 1.0f;
% U; H6 ~8 e1 b' I$ N: W& S                        pLight->Specular.b = 1.0f;9 ]2 A; \' ]; r) y; {9 y
                        // àü?? oˉè* % ?, W4 E8 c8 ?
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;1 M6 q0 d: i9 h+ i3 u2 F
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
1 T; e* v# x- Y& X                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
$ ]! x/ E; @+ [; X' M5 Y' u1 B) l3 R
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 U/ V4 i( N6 Q) r2 C0 P                        {
+ n0 c& v  w8 p9 j' `                                pLight->Diffuse.r *= 0.6f;
$ Q% u" ^2 b) i2 l& S2 a  @" M                                pLight->Diffuse.g *= 0.6f;
- `9 |$ ~$ P8 w: E7 P                                pLight->Diffuse.b *= 0.6f;' G# ?/ `/ \9 u  p
                                pLight->Ambient.r *= 0.7f;! E; @+ H: \. v8 |3 G, u7 [
                                pLight->Ambient.g *= 0.7f;
6 `) s+ |' H- h  E                                pLight->Ambient.b *= 0.7f;7 ?! Z+ M% e2 A. f, B( X
                        }
- V* G- F& D% Q+ o# w' w  m% @6 c/ q$ g$ Z/ O
#if __VER >= 15 // __BS_CHANGING_ENVIR0 P8 i8 N& }! p: ?" e- d0 ]" E3 c' X
                        if( g_pPlayer )2 h+ y8 `7 a( H
                                HookUpdateLight( pLight );; x+ K3 D0 l# Y$ u% U
#endif
$ w8 H0 ]3 B$ P8 o5 D. M                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& ^7 ]6 C. L9 \/ c+ Q7 O7 N) y" f/ b" Z: a2 B
                        pLight->Diffuse.r  += 0.1f;: y* d& a( _9 Z; O0 Y6 y
                        pLight->Diffuse.g  += 0.1f;! i" h4 ?$ x) U3 o
                        pLight->Diffuse.b  += 0.1f;
- S2 ]! |. c. o7 }4 [& D  i& e                        // oˉè* ??à?
# W8 o- f1 P9 K7 ?" t                        pLight->Specular.r = 2.0f;7 R" A8 [/ O  C. Z& }5 }  K
                        pLight->Specular.g = 2.0f;
+ B1 v$ A% o# h, [6 N- B                        pLight->Specular.b = 2.0f;; H6 ~1 x0 W" M- w7 H( M7 Y/ h
                        // á?oˉ ! i7 M" y6 d$ H9 w7 Z* w- a
                        pLight->Ambient.r  *= 0.9f;
0 C1 {; z9 n" @3 ]! C/ x7 A                        pLight->Ambient.g  *= 0.9f;
5 B7 r( t3 J/ f7 @2 L- b                        pLight->Ambient.b  *= 0.9f;
& }3 l9 |* W$ c; T# \$ C
; o% X' d8 u: v4 D7 s                        memcpy( &m_light, pLight, sizeof( m_light ) );, T6 v& s1 W1 c9 S$ n! `
                        5 W+ b5 \, s5 t0 l% [  c
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );6 m5 a- T4 d* s3 c% q
                        pLight->Appear( m_pd3dDevice, TRUE );) I6 a" k- O7 [7 U: o
       
- {0 A7 T3 E+ P% z* i. S$ h  `9 x' L                        DWORD dwR, dwG, dwB;6 Y  R# e6 ~& h) a8 [7 j
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
: x; l+ X& D7 j9 H1 y# ^0 y                        dwG = (DWORD)( pLight->Ambient.g * 255 );
# K# `7 q0 N6 M$ A                        dwB = (DWORD)( pLight->Ambient.b * 255 );
8 l% V' x, @* ]7 C1 |                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 I1 Z5 S# c* X/ x  g" i6 H6 t* q9 h/ i                }  D( K4 W* S( B" [* [2 O5 a, ?
        }
  H$ }. |% s9 ?" L4 a1 q9 @        else1 v3 A7 b- Q3 }  F: I
        {7 |0 {2 X' N. ~- a
                if( pLight )
8 v5 F4 S1 `: k( x                {+ ~8 D, ^# V+ c8 l
               
, }( |  r; o, B5 M0 E1 J                        int nHour = 8, nMin = 0;' s8 q- d$ u  ]' c* H
        #ifdef __CLIENT- j# p; R; H% w5 K2 r2 ?' `
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 6 b# u/ P0 D2 V+ [5 E& a
                        nHour = g_GameTimer.m_nHour;8 Z# _7 h, `* n( C, l% C6 X
                        nMin  = g_GameTimer.m_nMin ;$ [& x$ M) e3 X& g  d, b/ H
        #else
. ]9 c8 f' E% [" A2 c# z$ g% n& f                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
. }3 [- w+ e  n' O( Z; x                        if( m_nLightType == 1 )
3 u! W4 T& V4 Q7 p                                nHour = m_nLightHour;1 O' z4 I0 X6 P& M5 q
        #endif
* G9 x# q3 U$ f5 l1 X. l                        nHour--;8 L' e2 J9 t* Q: P6 K. E: |9 Y2 ]
                        if( nHour < 0 ) nHour = 0;
% Z0 [6 o8 m9 i# C. W                        if( nHour > 23 ) nHour = 23;; @5 O1 n* q8 R" o  o! n

& Z; w) k8 F- z0 j                        //if( m_bFixedHour )9 J6 s& Q- @8 c  d# L. o
                        //        nHour = m_nFixedHour, nMin = 0;+ ]3 }  y8 o9 h, v7 h
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
; I5 h& e5 U( h7 O" j3 E! L9 A                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];; m4 l* [1 o! c0 q* }( K/ x
0 P3 e+ \7 \* c) p" t% J  X; Q3 L2 H
                        //m_lightColor = lightColorPrv;2 k; b5 n0 [; t4 p. s7 @, g
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;# W2 b: E' o* `9 O6 S2 t
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
0 A% R4 b5 U- }. C0 y9 r. A3 f. E                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
5 r/ R. ?: E$ k                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
) S, b. c; X) N" }0 E                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
4 B* O; r2 k- I9 {4 X9 l$ @                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
$ {: J% e% q* ~1 J; ?1 C) _. M                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
$ i+ s; y. k3 t; U- h- n! M( o- F" i9 K1 x5 U+ T/ d  N; X
                        // à??μ oˉè* ! s  A" |. |. K  o
                        pLight->Diffuse.r  = lightColorPrv.r1;
9 |& i$ |. C% k1 c% S, t# Y( H                        pLight->Diffuse.g  = lightColorPrv.g1;
0 H; Z# H- K, c' G- |) ^                        pLight->Diffuse.b  = lightColorPrv.b1;, i3 n9 G8 O5 O. G
                        // oˉè* ??à?
" i8 n, k( n' j0 f                        pLight->Specular.r = 1.0f;
3 T- \+ ^/ e. V, F/ C/ E                        pLight->Specular.g = 1.0f;
4 @. u7 E: W0 y  N- u  c                        pLight->Specular.b = 1.0f;
0 C- _$ J. S& J3 Y$ H) F" o( T* V                        // àü?? oˉè* 0 X3 d6 L3 Y/ A+ l- D4 }5 k7 i
                        pLight->Ambient.r  = lightColorPrv.r2;
; o* q( j5 F2 r) U, M" P  C0 {- M                        pLight->Ambient.g  = lightColorPrv.g2;' ~2 z9 A4 K: l: I
                        pLight->Ambient.b  = lightColorPrv.b2;
0 L8 L( n2 ~( z3 o( a
& v8 N4 z) B4 D* a5 Q- A                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.* }4 @; V, b+ o1 k. J% S2 ^6 S
                        {
$ u7 o2 O) t  m6 r                                pLight->Diffuse.r *= 0.6f;, f6 I2 ~  |/ K
                                pLight->Diffuse.g *= 0.6f;4 v) f/ p) z( \
                                pLight->Diffuse.b *= 0.6f;
/ F$ r* |# E' E, g+ ]6 P% O0 Q                                pLight->Ambient.r *= 0.7f;- D, `& {& o  n4 v$ }/ X# z
                                pLight->Ambient.g *= 0.7f;
( U/ K( C" L! D0 Y1 h( G# t& J                                pLight->Ambient.b *= 0.7f;
: ~+ ^' r5 ^' v6 t                        }8 Q( r3 {; G& d& M3 @9 _; B' ?
                       
6 p2 u: x. i/ ]% ~- I" d#if __VER >= 15 // __BS_CHANGING_ENVIR
7 i6 q' p6 k: e: O                        if( g_pPlayer )
$ Q- ^2 R' \+ s' k# N  ^# w                                HookUpdateLight( pLight );
* h6 \1 Q% Z+ E- g, h#endif( W' O: G: e6 E6 t0 X
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
  f/ o: L& Y- O) X. b6 J* o* @# X5 ?- d1 A
#ifdef __YENV
' m% [% I: i6 [4 A                        pLight->Diffuse.r  *= 1.1f;: M% H1 c0 b0 h2 w
                        pLight->Diffuse.g  *= 1.1f;
: f/ }% A, I- `, P: H                        pLight->Diffuse.b  *= 1.1f;
3 u. W% k4 B, j! K                        // oˉè* ??à?
4 ^* A' B& F& H8 M                        pLight->Specular.r = 2.0f;
* P  m  L' @* n3 m                        pLight->Specular.g = 2.0f;. u" O, |$ f& ^, C
                        pLight->Specular.b = 2.0f;/ ?% ^/ I9 Y* c0 c& w. F6 Z
                        // á?oˉ
! [! L. d# g0 k# V                        pLight->Ambient.r  *= 1.0f;
. B/ Z7 M8 ]. c7 z7 Z                        pLight->Ambient.g  *= 1.0f;0 N- g0 Q. K. d3 B2 x3 T
                        pLight->Ambient.b  *= 1.0f;
+ x8 R/ i0 |! G" t4 r#else //__YENV
: o5 L+ A' d9 i/ b4 O% D                        pLight->Diffuse.r  *= 1.1f;' X% r! J  T* |3 a) W% v8 a
                        pLight->Diffuse.g  *= 1.1f;
) m8 G, N8 c; J4 {8 w                        pLight->Diffuse.b  *= 1.1f;4 @! U: z" I3 m8 B: Q( X: D
                        // oˉè* ??à?
7 ^7 C; o6 a# X6 T1 q: k                        pLight->Specular.r = 2.0f;6 z0 P0 P7 Z4 }0 D# P, a/ @
                        pLight->Specular.g = 2.0f;6 }6 S1 I# S* }
                        pLight->Specular.b = 2.0f;- B6 W2 d% v& t, a1 X1 T
                        // á?oˉ 8 n" V* u+ k0 \" z3 }
                        pLight->Ambient.r  *= 0.9f;: |, u; i2 N' {0 K
                        pLight->Ambient.g  *= 0.9f;5 E$ t3 N  D0 k* v8 T; _( _
                        pLight->Ambient.b  *= 0.9f;' p1 x* u4 R6 L  t3 m
#endif //__YENV & Y5 k/ N( o) f7 T# Q+ I
                       
& T4 {: _( X5 \) s, P                        memcpy( &m_light, pLight, sizeof( m_light ) );' w+ d# a* z: _- t
                       
% H) l+ z! Q5 b" ~7 G# P                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);& s8 Q; r$ N% G4 e) @! m$ L
                        D3DXMATRIX  matTemp;
9 F* L4 l$ o. s0 V                        static const float CONS_VAL = 3.1415926f / 180.f;
# r1 k) n; h  B/ x+ n0 l: ^) f7 N' r# z- S7 v6 M, o
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);* g0 d9 _# n/ T- Z( }2 {
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
! z/ a! A$ B( a0 |& a                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 5 J$ k' |& ^0 H4 F: Y, N2 R
                        pLight->Appear( m_pd3dDevice, TRUE );4 H: b" R3 {0 F/ P2 i

4 w3 J% c. M, X, z% g                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);8 o0 Y4 Z1 f; `" Z/ a# y! q
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));( g, P2 l0 y& g& k* t
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ ]" d% B: b4 k) C" f; L- [% Q: W7 _6 l9 D, {
                        DWORD dwR, dwG, dwB;8 [0 s& a+ Z3 B! p- E5 ^  Q/ t. x
                        dwR = (DWORD)( pLight->Ambient.r * 255 );3 V# q# R( v, C/ t
                        dwG = (DWORD)( pLight->Ambient.g * 255 );/ q, q, v. B) y1 C% z' w" N6 H
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
* K0 w% ~/ ?3 F                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        $ t6 H" l( T! g& E3 G+ ^* g* {7 X
                }
" t4 e; z5 V1 N6 S; }& r! f1 q$ s        }' g9 i# r& }8 l% i, o( I
% ^& V5 {! E' _5 b( P
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
" h4 j2 R1 c$ C/ d# y) k" f        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) );
1 }9 e- J0 S; D/ n0 M+ ^% R        ::SetLight( bLight );" l; L! N6 q' c& K% @3 Q5 s
, Y: K) C+ g2 C, ^
        // ±ao? ?D?í???ó á¤à? * v0 y  B* [( a9 ~- G, |) a& E
        m_pd3dDevice->SetMaterial( &m_baseMaterial );9 z# }0 ~- z& s; J. _% t6 G, }
        $ s. M: _+ L, m# T2 D3 ]
#endif // not WORLDSERVER5 Q) k, t! p2 H- n3 M
}: @0 j5 J, T& f3 u# Z0 e* H
并更换
$ m$ E  d# {" L) K7 I9 HCode:( E$ e3 R4 Y2 y% s$ h
__FLYFF_INITPAGE_EXT- x% v# Z: h2 Y9 |2 i' t7 ]
定义; V' R4 n: P* f  T
8 X% R/ T$ u+ R9 i! n
# r2 h2 m  D* w" ~' [. D* u4 z9 n

* n) B& S: B, W- g2 m3 s8 L, i& \# Q4 D6 ~0 }* l
现在终于删除我的狗屁加速...
' k/ M4 k1 `# a( k2 o3 y3 N% k* r! W& C. b

1 o: [/ A9 _: Q) [# E. q! i4 X- s; j





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