飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:( S7 J; M% V" V+ ?$ U
尾翼:
: b( j, [8 E/ h/ A  {; t) I! [
) p" Q. o3 o( M* s* _1 c! l& W1 a* T9 X代码:
3 l9 H& I; H4 VCWndAutoFood::CWndAutoFood()
' ~& V7 o8 F$ t6 x: z{; ~. R% C% i# S, l% ^
        m_pItemElem = NULL;
0 r+ @" G: P1 X5 B* E        m_pTexture = NULL;% G  x9 a. G6 S  _
        bStart = FALSE;1 E9 e% K' D3 {0 Y
}5 v& g+ v& d- ~- [( `  t
! k" ?. Q4 z0 A4 Q7 Q; b7 m- r
CWndAutoFood::~CWndAutoFood()
0 M- G+ U( w0 y( x6 l/ p3 f{6 c6 w- S7 k$ K) }6 ]
        AfxMessageBox( "AutoFood ist gestorben " );7 Q' f: T" J2 E; P! ?5 D
}
( k+ }1 P' x5 Q6 M! zBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
* u7 |0 Y4 P8 r; p5 x6 g{4 ^' ?2 L( J- B0 g- \3 W* {
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );0 Y4 K& ^. q: O- |6 S; l
}
" L/ o$ v2 ~1 \. B6 Z9 g
4 b0 w1 I! O. IBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point ). D7 v( a7 D. L0 a1 |
{
4 [9 ?1 ?& Z1 s        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );& X# k$ f1 ~% |
        CRect rect = pWndCtrl->rect;
- f5 p8 W. c3 A) e1 U        if( rect && rect.PtInRect( point ) )
9 t. H$ h3 k7 e$ g  ^# [        {
7 n! w* @5 _, y% g( m7 A& _                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );8 d/ o8 E: P1 `$ ^  `' J
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
4 y% r/ j8 |" w                {
$ o; m* M. D/ b& b9 g4 e/ G" I/ j                        if( m_pItemElem )
2 M( {/ `2 F& A$ v                        {
8 F: Z- K7 o- v                                m_pItemElem = NULL;
. J# R% i  l: D- u6 v7 O( S                        }5 l6 w! W# S# t4 N
                        m_pItemElem = pItemElem;
3 o0 E7 [: P( ^! H- M( e) B                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
' }+ {9 H, |% y  p                }else{
" Q+ O2 @- ~- |                        SetForbid( TRUE );7 L( W8 n0 u$ J. X
                }
% j# B3 ^& L8 X  k8 S5 t3 d        }else{( Q" C$ Q% B3 W6 {5 N
                SetForbid( TRUE );
) u7 A8 L+ b5 X" S        }
2 o- L0 C1 p' n3 g, g& ?        return TRUE;
7 B, H% K  N  ]  H9 \- y0 z2 _}
  I/ @# u2 G7 N: Y0 q1 M1 Y; I2 S: t1 s3 ]
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )) ~. q5 F; ]" Q, J! L& ~2 @
{) e1 w- P; ?3 ^0 q) P, Y4 i( A& }
        switch( nID )
, [& \9 K5 U3 L3 `$ V        {/ }; t% r$ p/ x8 P2 j$ Q4 G1 l- Q1 [, i
        case WIDC_BUTTON3:! t; w9 g. Q9 z& w- G# u( B. u
                {5 p$ x# g. W7 a' F
                        bStart = TRUE;
3 A0 G* e+ I3 _- y, f                        break;
/ ~; {/ h$ M9 M9 K4 L8 [. ?                }( z3 U3 ], U: m7 ]! a% K7 e$ p& m. v
        case WIDC_BUTTON4:9 D' d0 p: S. x, O
                {8 ?" v9 x+ A' A: @: i
                        bStart = FALSE;
# B- j; t6 E, c: u                        break;
& t; o. Q4 p: k! H5 R0 ]) _; J9 w( {. t                }
7 {: {/ ~. v6 e        }$ g, O9 U; ?. o& a
        return CWndNeuz::OnChildNotify( message, nID, pLResult );$ G9 o% x' S& v# C$ Y
}       
) `- U% w! h$ G9 j. Hvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )( v0 J3 q% U( e
{0 r: G' T) F! X
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
3 }0 @6 M5 t. o9 l0 R6 ^        if( bStart || !m_pItemElem )
5 O% x: p) G: K        {" H) @; X/ X3 r  }: o; L1 p
                pBtn->EnableWindow( FALSE );
; @( Y  y4 W+ M4 x  O        }else/ ^6 K  u/ C/ ]9 y
                pBtn->EnableWindow( TRUE );
' j" G$ \3 z  u; }* B: |* t        if( m_pTexture )- E4 D. m2 a) |( ~- g. n9 E4 }$ v
        {
( V" i" O" A  L. y, t5 T; C# A                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
: J& h) g6 L7 A) @/ P2 ^                if( wndCtrl && wndCtrl->rect )
) M2 S) v7 r6 \                {
7 M9 i0 d: c& ]8 y7 D- A                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );2 o0 H- B/ Y: u. a5 j
                }. R* z# C# _# P$ n/ Z% M
        }
# a0 }1 e1 E7 ?* S! {% n' U& ?2 k& b}
0 w* n' R/ }4 c
& l9 w+ }9 `$ n* B+ NBOOL CWndAutoFood:rocess()
( Q; n- S/ Q, n' e* O) v9 c{, u5 K" Y3 g1 U: O) [
        if( bStart )# t6 E# `* d0 Z
        {
7 {! [: k; M7 Z* l                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
9 m& A' B& n" Q4 D+ ]                {
3 b- k9 y, F- n4 L1 o                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )! B4 t( d6 H. ?3 o$ U$ T
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );6 O0 _( E8 C# N
                }else{% Q; ]3 C! o7 Q/ G! I7 `6 n6 G
                        bStart = FALSE;' L7 u- O8 a1 C- y3 r0 x
                        m_pItemElem = NULL;
# T& w, H5 O# I' ^$ j" D                }5 P1 ], R& V* X
        }
. V$ g$ p- B. O# _" e8 ^        return TRUE;
. j* P( {6 s9 q2 E- X0 g}, L+ b2 B4 ?( k3 I8 {+ ], l' ^

0 X4 B, X! ~) s& O' \) \登录视频废话:
4 d! m/ Z2 p! @+ J1 L尾翼:; L% b1 p% N0 a, F$ d3 H& \

, i4 X$ ^/ d% f3 h- }" I/ v代码:3 J2 w% D- W4 W
  Q( c1 a( S& M0 k
void CWorld::SetLight( BOOL bLight )4 Z9 T4 F9 H5 Y+ G; `
durch1 Q: Z* Q3 _4 D  r9 A
Code:/ n1 Z, {! b3 P, @9 \
void CWorld::SetLight( BOOL bLight )1 k; O# F: Q6 f" R% V
{
0 ?: K2 q: c& C! r4 R        //ACE("SetLight %d \n", bLight);; e5 x9 `- \' R" C( l* P. f" s
        8 V+ W8 Z0 F" w# x/ [* e6 O
#ifndef  __WORLDSERVER
9 o: a- f6 b% o9 o+ b" _        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);  F  l' C6 l: p0 }
        CLight* pLight = NULL;( i5 c* u2 R. U, N, C
& V) n& S, v6 ^
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
! Z5 e; O7 m1 L6 D/ o
- D  ~% N7 O$ t% |6 o        pLight = GetLight( "direction" );- J8 x: R, T8 l0 B- ^! ^
: a9 z. b6 i: Q8 v3 P
#if __VER >= 15 // __BS_CHANGING_ENVIR- K9 b- C% t  _+ U" E) _
        if( g_pPlayer ){
( j' E4 P* h+ u+ k                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
6 T( f/ i9 E+ l) f: K5 H# m& M: x                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
% o8 w' T& {& H; e                {
0 b; Q7 F# ^& r- U- L                        if( pLight )
3 a" `, X6 n$ H2 ~- R/ p                        {2 @  Q* d1 A+ ]% C% e( a/ H. T
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];9 {! o) M  n0 ]
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];8 I0 g8 p  _2 e4 ^( t! m3 b( l
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];% ~$ R/ V; K/ q& @. c
0 r6 k- A- {/ M8 f3 ]
                                pLight->Specular.r = 2.0f;- u/ B6 [7 e' F; `% C0 E6 e$ i
                                pLight->Specular.g = 2.0f;
4 E. s- e0 M6 l                                pLight->Specular.b = 2.0f;! R( i# I. j6 S. n. {6 w1 I
          z1 D; O. E! V  C
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
$ S) O. U) P( q3 Q6 F                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];8 U6 f( T' R6 F+ r* d
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];3 u0 T. t! T/ M& H; d2 f: K6 e
       
4 T0 Q1 o2 E: Y9 I/ B                                HookUpdateLight( pLight );
1 M' z6 s- U7 S
! f% b/ B8 Z4 r/ ]0 _! Q. f                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 y, Q! \2 H+ \9 }: k                ' s' S# n* a8 p( o' I$ I/ V
                                pLight->Diffuse.r *= 1.2f;4 L- ~5 X  _( n! C" r
                                pLight->Diffuse.g *= 1.2f;
5 A" a  U3 P6 u9 u. X9 Z                                pLight->Diffuse.b *= 1.2f;
/ H& Y2 v' `. {- n; Z6 T+ c
/ b% o; Z! E4 N' P2 ^6 v* _3 h                                pLight->Ambient.r *= 0.8f;% i* U# E4 G; _7 t# }( N4 U1 x
                                pLight->Ambient.g *= 0.8f;$ S6 K( `7 p& ^8 ]& G& S
                                pLight->Ambient.b *= 0.8f;, o5 S' f4 h1 n8 J% J
       
# L. X2 k' D6 X4 \: i, i                                memcpy( &m_light, pLight, sizeof( m_light ) );( D, r% v8 I  L9 x. n6 ^5 W* n
9 V9 r& q% l9 S4 P7 j
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);- k5 T- t- {- x( Q
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
- R- U  f8 ~3 B' \* y                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); - x( l4 `3 O8 m% @3 f: x. y/ o
                                pLight->Appear( m_pd3dDevice, TRUE );
* l. y+ G  x' }3 f& n7 a* B( H               
8 g1 n, i% P- W( d- d                                DWORD dwR, dwG, dwB;
6 m1 Y& D: q: a                                dwR = (DWORD)( pLight->Ambient.r * 255 );
- E0 N0 e5 L4 ]6 {. F$ V                                dwG = (DWORD)( pLight->Ambient.g * 255 );
& a5 k7 @* l% e) ~) r3 E& W4 P; c                                dwB = (DWORD)( pLight->Ambient.b * 255 );) j. L; D2 W1 I) T/ g" J/ L
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ w3 V) R9 v& V- l                        }
) i% |- T- l/ V' G& c                }
  I5 x' u- [0 d2 ?  \) ^+ H        }
& l, u8 a# M. Z2 ^        else! o2 B& Z4 o) ^$ [1 F7 d
#endif
$ t/ U6 K3 X! Y0 w4 f9 i, u& `
/ d1 S$ @8 f! P! m7 r. L% a+ Q        if( m_bIsIndoor )
/ H; o; u: E7 ]; y        {4 P4 ?. {4 _  c
                if( pLight )
$ h1 |- f6 J- k% i8 E; W                {               
, d3 I, ^+ Q+ a9 w* o3 w                        // à??μ oˉè* ) {. d7 z( q3 W  N6 c* @6 H
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;9 o4 C% `9 o' ~
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
; ^$ O7 T7 v/ b/ t7 u& Y- @                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;3 v/ f( i/ X" w  S0 W
4 p0 d$ T/ y. G( j2 i8 M8 f
                        // oˉè* ??à?
0 j5 O& k, P/ Y- @0 s+ p0 N( Q                        pLight->Specular.r = 1.0f;5 e, Y9 }: w( [% W8 u3 K4 m
                        pLight->Specular.g = 1.0f;
* x; J1 e1 A+ n/ n                        pLight->Specular.b = 1.0f;0 \3 J9 n" p9 J, y: \
                        // àü?? oˉè* ; B( Z- P9 g( E) \
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
3 B  i1 z* @* W! `5 M$ e# a, A                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;4 r' s) q& y! t8 G+ C% Q( p
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
5 V, j8 J4 g# p: X4 j- L1 b/ }0 }6 F& q+ Y6 I  t: t5 e& u
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ s6 I5 e5 t9 j4 `' z$ K3 I                        {' P7 h; L" A; n/ `$ k2 P2 C6 v' V4 P
                                pLight->Diffuse.r *= 0.6f;
! e0 [6 p# }9 A% k, \, @                                pLight->Diffuse.g *= 0.6f;
4 |8 I8 Y6 q5 D: W; p- S                                pLight->Diffuse.b *= 0.6f;+ G4 e! r* j! S. a
                                pLight->Ambient.r *= 0.7f;* `( T& f- [3 \. y! {6 e5 ?
                                pLight->Ambient.g *= 0.7f;
9 E: U- T; f9 ^$ B) }. K9 O                                pLight->Ambient.b *= 0.7f;. o5 R5 L8 B! [7 P4 R9 m- L+ t
                        }8 z; ^9 I4 c- f4 I% f3 p; D# r" F

: u) U8 G7 L1 Q" _#if __VER >= 15 // __BS_CHANGING_ENVIR
* u# V& v2 ]5 ^4 T                        if( g_pPlayer )! N; |. I! P$ L$ k9 V6 S5 }
                                HookUpdateLight( pLight );7 M# V; G& I0 Y
#endif
1 T( E( e* C4 B% u$ V. Y1 G: H                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ h5 f  n5 \$ S$ L" g
* T* t9 Q( `- e9 ?1 f                        pLight->Diffuse.r  += 0.1f;$ |* ?% z6 h6 D
                        pLight->Diffuse.g  += 0.1f;
5 ~& }4 E; O7 }                        pLight->Diffuse.b  += 0.1f;5 f- S& ?+ [' q' ?9 T: `
                        // oˉè* ??à? ) }) }3 p* V# t
                        pLight->Specular.r = 2.0f;, v( u. T  \+ c9 `6 r
                        pLight->Specular.g = 2.0f;
: [/ ^4 @# b9 M% |                        pLight->Specular.b = 2.0f;1 o2 E- ~1 p6 l! T' @" S* Z
                        // á?oˉ
# [* o$ Y1 U- H3 m' t/ h/ Q/ Q                        pLight->Ambient.r  *= 0.9f;+ t  M& }& A+ c; B
                        pLight->Ambient.g  *= 0.9f;- T4 d  ~, A! G( n: Z  _6 b
                        pLight->Ambient.b  *= 0.9f;
& z( L! h0 ~0 y' t+ I7 J0 i( h/ Y! H
0 d0 `! j, x- G6 u$ }3 U( y                        memcpy( &m_light, pLight, sizeof( m_light ) );
) Z2 N2 w4 N7 h2 \! q- ?/ Y1 b                       
" r  t) s: ^& o* K: [                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );( D" w2 C& `8 A# P9 F2 v: u
                        pLight->Appear( m_pd3dDevice, TRUE );
; F5 g' A0 k6 U* w" ?, \       
& s9 `' t; A2 d+ [+ `: i/ l                        DWORD dwR, dwG, dwB;
' f+ Z, T$ j8 f: C                        dwR = (DWORD)( pLight->Ambient.r * 255 );
' d3 _  S! p, x                        dwG = (DWORD)( pLight->Ambient.g * 255 );" A* J2 s5 q2 V2 M1 z) \- z
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
# d2 Q) v, ^' Z8 l* ]. S/ \: s- {                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 ?% [( k5 X* V5 Y% U: R, K                }
) c! x1 N0 @) [+ m: F; R9 r* x        }
) z' V$ q8 g/ b6 `  U4 R- x' U' i        else# [2 a( n# Q1 l' ]6 Q' K
        {3 R& Q1 \! ?) C
                if( pLight )
3 Y. |2 k6 u' }' z8 l! a                {
9 @. [  N% m0 h% Z               
* f. h: `3 \5 ?2 |4 m                        int nHour = 8, nMin = 0;& f. @0 ~. w: i
        #ifdef __CLIENT6 B. U5 B6 T: P( s
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 1 f# o8 _  {3 y7 _0 F. V
                        nHour = g_GameTimer.m_nHour;
4 `9 A7 y# w( J& \) E4 P  }3 A( H6 x" j                        nMin  = g_GameTimer.m_nMin ;1 ]/ b7 D& M; k# F4 |
        #else
' ^# R( T+ F: B& T9 f                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
4 n% R; o/ s3 o# _7 I9 R                        if( m_nLightType == 1 )
4 k& A9 Q; Z+ H                                nHour = m_nLightHour;
: M5 T6 W1 K* L! N5 f' ]2 y& Z        #endif% O+ |1 p' W  J) _3 R
                        nHour--;
3 j, a, p# Z8 R% _: _) W1 w- m                        if( nHour < 0 ) nHour = 0;
; t: [9 z5 Y- ?; W8 P                        if( nHour > 23 ) nHour = 23;1 D: f) B! I7 v* ~6 L+ k8 v# Z5 N
* _4 e0 Z7 H, l8 k+ I. u: z3 u
                        //if( m_bFixedHour )$ T+ R8 X* B7 Z6 r0 N" y' x6 U
                        //        nHour = m_nFixedHour, nMin = 0;3 l8 n9 \: ~* N
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
! A: b( P9 z. i/ g                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
$ I8 ?" c/ L5 j4 x  j' C% B* X7 C
                        //m_lightColor = lightColorPrv;' @2 e) R4 X2 h' m( N% `/ P  H
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
4 M- y: l0 [% M0 B4 b8 M                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
( [7 o8 w9 J. q: y9 z                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;$ U/ P) E7 o% c) H; {
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
8 y* C% e# Y' {: J3 Q4 U1 J; }                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;: t# Q& ^6 L) B1 T! w- F# C$ J
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;8 A0 n% ]: h6 l. l
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
* O8 Y) \- b1 f* H' G5 v
7 J0 b: i& s% F5 \, K  y                        // à??μ oˉè*
0 @( h" {7 [' f2 x                        pLight->Diffuse.r  = lightColorPrv.r1;1 [- |6 M4 [5 N" p
                        pLight->Diffuse.g  = lightColorPrv.g1;
% k8 H1 n* {1 \% C% p& q, Y/ [                        pLight->Diffuse.b  = lightColorPrv.b1;" f$ S  ?3 a0 T0 W7 u
                        // oˉè* ??à?
: r8 \/ p' D% a; S  l6 {, `' Q                        pLight->Specular.r = 1.0f;
) [% r4 E) S* ^2 R* @; ^                        pLight->Specular.g = 1.0f;
6 W0 t8 x9 L% ]( Y$ H4 M7 Q* }                        pLight->Specular.b = 1.0f;
. q3 S1 ^( N7 J; W' M0 b                        // àü?? oˉè*
! l. j# y2 d: y) b                        pLight->Ambient.r  = lightColorPrv.r2;9 W1 a0 |+ I& h) B7 r+ G% C
                        pLight->Ambient.g  = lightColorPrv.g2;
3 g. i5 M: n2 S) P$ {9 q                        pLight->Ambient.b  = lightColorPrv.b2;( Y# `8 O1 @) ?$ O, e9 t) f% x$ V8 L
5 e- o3 C7 ^6 O; B  [8 Z$ R8 T+ I
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* T$ g% ?2 W) f4 z* e2 q6 J2 Z% R( I                        {  A& z* Z* D0 f$ U* J
                                pLight->Diffuse.r *= 0.6f;
$ t  |3 e5 D' T$ V) n9 P                                pLight->Diffuse.g *= 0.6f;
9 j) ^$ i* \; A. m/ Z8 G" q                                pLight->Diffuse.b *= 0.6f;7 s; }: r/ g& K) {# d3 c
                                pLight->Ambient.r *= 0.7f;
1 }& h1 V9 M1 l  `: N                                pLight->Ambient.g *= 0.7f;( D  \2 y; ^5 l% B) ]! w
                                pLight->Ambient.b *= 0.7f;
1 J0 u# H/ x! t# U                        }. C% c2 n+ u0 ?
                       
' [2 y. w; R5 a! J4 _$ W#if __VER >= 15 // __BS_CHANGING_ENVIR3 r. |3 w3 {% S; P5 U
                        if( g_pPlayer )
9 {+ Z& \: w& ]+ O                                HookUpdateLight( pLight ); 0 \  ?( |  z; g
#endif/ p( j6 _" c- a7 l0 Y1 c) t0 c
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
* k! S3 B5 `# k' X8 x7 i# X7 ~
8 }& E9 }. u! G! Q3 h#ifdef __YENV" ~% b" [+ ~% g
                        pLight->Diffuse.r  *= 1.1f;) A5 S$ o6 K- Z% s# x& u2 x1 m/ c
                        pLight->Diffuse.g  *= 1.1f;
/ |5 |% ]# P9 N' M/ }& h6 l                        pLight->Diffuse.b  *= 1.1f;3 e5 q+ t3 O7 n( l# @
                        // oˉè* ??à? ' ?$ s8 h/ J& I# x8 O
                        pLight->Specular.r = 2.0f;
" @' s0 u0 t' L. W* {                        pLight->Specular.g = 2.0f;7 u! z) f( {  i. i6 V4 Y
                        pLight->Specular.b = 2.0f;2 j+ K% c9 g# `% D  U* l. M! J( Z
                        // á?oˉ ! @9 K% @8 E2 g1 h+ j% A
                        pLight->Ambient.r  *= 1.0f;
; Z; ]& G5 H+ M( K  G. }6 E; a                        pLight->Ambient.g  *= 1.0f;$ r- i' v0 I' G3 d# Y- J. Y
                        pLight->Ambient.b  *= 1.0f;
" R4 D: C$ q% i7 Q' G#else //__YENV2 C! ^$ w$ ]3 x2 ~7 x
                        pLight->Diffuse.r  *= 1.1f;; D5 v: q7 N: P  _. G+ q8 s6 ^
                        pLight->Diffuse.g  *= 1.1f;! B" ?, A4 A- V' q0 f- i2 G, b- U
                        pLight->Diffuse.b  *= 1.1f;# \  B! O4 ^' [  F1 G  s& E9 N. q7 Y- F
                        // oˉè* ??à? / x" a  J/ w* H  V, ~! V5 \
                        pLight->Specular.r = 2.0f;
1 q1 `: Y0 L3 Z% @! O  q                        pLight->Specular.g = 2.0f;5 ]5 \# y/ u+ R- t) O
                        pLight->Specular.b = 2.0f;
& y$ n- a: ?8 Q3 R# A                        // á?oˉ
7 l, s3 e' m% j& t& [6 d3 K# ]                        pLight->Ambient.r  *= 0.9f;* ~. s; }9 [6 N( B1 ?6 V
                        pLight->Ambient.g  *= 0.9f;: t2 R3 v: L8 X
                        pLight->Ambient.b  *= 0.9f;
4 k5 |; j8 ~" t- F9 ?$ a#endif //__YENV
& e2 s" ^8 N9 {# b& R3 [                       
" ?  A6 W* @4 E% D% j                        memcpy( &m_light, pLight, sizeof( m_light ) );/ r9 K: ^; C0 @# O8 z+ V% |1 R
                       
1 {' x( V& E( V* l- m% A2 Z" [                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);7 I! j* P7 Y: Q% A' l& }1 t
                        D3DXMATRIX  matTemp;6 @4 v1 j- H5 W
                        static const float CONS_VAL = 3.1415926f / 180.f;  P( w% W: a5 d  L  `( J5 o3 \1 J
5 @& t" g3 ?1 F! ]+ x, G' |6 t
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
9 N1 Y! i" B$ T" S% i( O9 }# f                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
) H' Z4 g6 Z/ z; i( |' |3 v+ u/ K: A                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
; I+ V  w4 I3 s* s1 y) e                        pLight->Appear( m_pd3dDevice, TRUE );. j! H) W- c, t/ g! |' e
' O6 F) f4 E. D" A
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);7 L$ f0 c+ v0 x! B! P7 L2 Z
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));2 l7 M! q# h# Q% \8 I! k4 v
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ w; [) ~6 j% a% B  c  V: `! D9 W5 A3 k* c
                        DWORD dwR, dwG, dwB;" s# s! P. @2 V4 w1 c! q5 d
                        dwR = (DWORD)( pLight->Ambient.r * 255 );. U. u+ y/ |) g1 k! j+ K
                        dwG = (DWORD)( pLight->Ambient.g * 255 );0 A' `2 m9 ]+ I& V( q/ c
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
% F/ }* R# C0 X/ [! K- Z. z% J                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        + S) f; Q; O# v4 f; L( B
                }
4 _' i2 O7 @2 p4 W        }$ g- l9 k' Y( D0 O) e  Y4 e

3 T6 r: T' _- c- J, A        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );# r8 L. a0 f0 }2 C; l8 f, P
        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) );
4 U$ ~9 F4 J+ H        ::SetLight( bLight );
( A6 l0 C; r+ h( @# T' G. J9 O0 G8 C. Z0 R- r
        // ±ao? ?D?í???ó á¤à?
) }/ G( T# c% f( i        m_pd3dDevice->SetMaterial( &m_baseMaterial );
2 \5 H, k$ w1 A: G        : M2 G' B5 |$ p1 s  ]: a# e9 Y/ `
#endif // not WORLDSERVER
& Z9 ~6 Q3 d. n2 s}
$ F; q6 S5 l0 w  i1 H并更换1 a7 r7 y- \9 }8 E+ c
Code:
: _# Y# i: {! ^; b7 _0 ?: r1 E__FLYFF_INITPAGE_EXT
& I& \6 R: U% U5 a定义
' k+ ~# h& R: W# n; ^# u. P8 M8 q/ |& {( T1 i
$ m- C1 [- ~2 O/ W
8 P( }7 u% S) O0 k
! |5 N. k# G2 Y; }# C7 _
现在终于删除我的狗屁加速...
* f% t5 w4 S* B
; _) `) Q- j" p# K% c2 F
% s( c. d* J( |' j. g4 k
- q" b/ d6 _, G1 O% N( z




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