飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:% m# ~8 Z/ G) }% H% J0 ^
尾翼:3 y! @4 E! c1 V3 M$ @
' x+ O9 v$ ^2 X0 L, b; R' \
代码:/ V; A' U0 e5 C4 a: z9 n
CWndAutoFood::CWndAutoFood()
2 ?$ g) Z2 H5 {+ g: r) T{
: B) C7 B; O( J# ^4 A5 v  m        m_pItemElem = NULL;
; x, U1 R5 b  c, p8 |9 ?        m_pTexture = NULL;) c9 X0 h. X8 a8 `  _- Q& x. d" J
        bStart = FALSE;* y; |* S+ _% p% `6 b& }
}
6 B7 E8 z# I! r7 y2 q/ h3 t, S: Z# z( S* G8 \: l; n1 a
CWndAutoFood::~CWndAutoFood()
& e5 S5 _0 g" j0 X{' U* V8 ~# e8 h9 v# E  j
        AfxMessageBox( "AutoFood ist gestorben " );
6 z: _; w, f* i}! e8 p" ?( W2 m4 ^( \
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )& {/ w* |1 f; ]6 [
{  x& z7 s# A$ i; u0 O( J
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );5 m5 y8 ~8 ?8 l- O4 W
}1 z, C1 O" T9 \5 a* ^- l, M

7 k! z7 L; ^3 X$ W; ~# E, sBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
7 N. g& _; J* w2 R- r1 e2 {{5 z& J; `" I% V# v" ~6 Z/ q. a. e/ b
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );- M4 T$ ~7 X# P' k) u* r% {8 s
        CRect rect = pWndCtrl->rect;
& k5 a& a! D  h+ `2 i# |7 q        if( rect && rect.PtInRect( point ) )
) g& F: ]: \/ a  _, |  v+ W! d        {4 q6 w8 k5 l& ]0 A3 \
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );" [) B" {9 b  x  U6 a* Y
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )8 ], r+ J# X! Q1 h" o& ~
                {
9 p: ]: S! n4 k0 `5 U# i2 C                        if( m_pItemElem )" \) H# P; {$ L3 p
                        {% C0 _4 _0 }' c
                                m_pItemElem = NULL;" {2 f  R0 c9 K+ U
                        }! e7 g# I+ L% M8 e
                        m_pItemElem = pItemElem;6 e7 T0 i. r  X
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );! [. i4 r* z& C3 P
                }else{
4 i9 @; P+ M3 p                        SetForbid( TRUE );5 \) s( Q( f9 t& x9 P. w
                }0 z: u; P) b. y$ H/ _' N
        }else{3 S" U; u% r2 Z" }7 I  a# I! F
                SetForbid( TRUE );
5 @/ A, o0 K# y6 I        }! |3 Q% b( W  O2 K$ }6 ~! J' h
        return TRUE;
$ C( \4 p7 ?( ^7 C8 Y& @}
  u; f/ Z9 @; d3 T( ^2 e/ X4 a3 u
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )2 ^& r% b* Y& X0 z  G# W3 P; q
{6 y. E+ H6 A  Z2 z. m
        switch( nID )
! h0 Z+ M1 l3 P+ K' J& P' J        {4 G! P) {7 l0 F& c
        case WIDC_BUTTON3:
: b% h' g) b5 L4 s& v                {/ c2 o- l( H. R. T7 t. }" Y- O" ?
                        bStart = TRUE;
) K; @- }; t9 d7 t# G! k8 `7 ?4 G; p                        break;
" c7 a0 ]. Q& i0 c$ f6 H  K7 ~                }6 {) d. R4 n  j+ i, `8 k) Y
        case WIDC_BUTTON4:8 {% d  W% I4 M1 v3 ]9 z3 q
                {- U8 X5 r+ M6 t+ C& I& B
                        bStart = FALSE;
4 ]% |( |+ ~6 J0 P! b5 X4 H9 Y                        break;8 k( v: e8 @& E: w5 }) j2 F
                }
! n0 Y4 u) @/ O        }, s/ d5 x: L4 R" ]; s! K
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
1 Y* F9 q% b4 B5 D& O( v}        * q# }0 z5 V5 O' f+ n' t# a; R. E
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
, W$ y& m# z, G) B( N0 l{
4 y, O& l5 x( S# d3 ~8 `        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
  x1 g2 b7 h3 E. H, d: V2 ]        if( bStart || !m_pItemElem )5 w" ^2 w/ O* y& m- |
        {
$ d* U2 G4 h8 t' B2 n                pBtn->EnableWindow( FALSE );
2 H! Z4 a0 k& M/ x1 a        }else/ x) e; K: ]% {- [( d4 [
                pBtn->EnableWindow( TRUE );
& I! I* L: G2 Q9 ~, ]' K% [        if( m_pTexture )
" m$ S* G# d1 R        {. \0 U& X% J1 k; U$ r
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
4 U# V4 o0 C2 M                if( wndCtrl && wndCtrl->rect )% _- r1 w! E5 j, c
                {2 i5 ]/ Z; r( c0 }2 {8 C
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
$ S( D1 w0 u9 o5 L                }
( C! e  F" `) u& a+ N        }1 o$ H6 B4 K- ?/ [9 n
}
1 F4 j; k* X- y
: x2 `) A* W) q, B$ Q+ EBOOL CWndAutoFood:rocess()
- R1 Y8 I) N9 b9 s- N{
$ S8 \% p( M! i+ l        if( bStart ). s4 O8 P: t3 M; |% D. T
        {" W) X4 g* d/ ]6 n5 a) n
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
: {! O$ e. B: U& d  E! w                {; \1 y4 E1 W* W6 j8 y2 A$ S! L: F
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
0 q6 w# m, x8 z! v% H( Q" D                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
/ i) G; p5 ^( e& Q6 j                }else{
0 K* v9 J8 @9 o: x                        bStart = FALSE;9 m) j$ y& h4 T# F$ Q8 ]" J5 j
                        m_pItemElem = NULL;
7 p) [  i: p) Z  O* H* J+ y                }/ R% I4 R; H3 v  o3 w) b
        }6 H" `4 x2 ~3 e! p1 n- W
        return TRUE;: l( {2 C4 ^& n- H# x, E
}0 R! Z+ k) E* ?8 r

% C2 Q5 U+ F9 M+ M登录视频废话:
) p$ ~' x5 i0 w! p5 w# o! U; S% v尾翼:! h' G) r7 c/ @) W4 u$ @; D! \9 s9 O" s

/ k) ^( u2 P. k( P' n5 N代码:
- C# e% K+ _6 B  C+ [- p  Q. j2 B( ~& |( n
void CWorld::SetLight( BOOL bLight )! O# p! H7 u+ A& N$ F: \
durch
) C% e8 G+ E6 [& q  Q5 TCode:4 W7 Z, L1 B1 q
void CWorld::SetLight( BOOL bLight )
1 \' Y+ ]1 F. [8 m7 ~0 v{
/ `+ P2 w  |8 F        //ACE("SetLight %d \n", bLight);0 G8 E- g. K5 O/ Y
       
$ Q9 h* a- a7 y0 m; o5 N6 o#ifndef  __WORLDSERVER
+ m) i: R. }- S' j7 v6 M+ w        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
" ^" {5 U( j, U2 Q        CLight* pLight = NULL;6 |4 c3 w. i# `( W  r, e. g

0 d- d# s; ?4 A. p        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
  O( O6 r& ^0 f2 H9 ^# i& e* b1 o/ V0 C5 v, ?5 b: D0 @
        pLight = GetLight( "direction" );% b+ G( `2 w2 w" P! k, `
6 k6 S  i/ m4 ?1 O
#if __VER >= 15 // __BS_CHANGING_ENVIR2 m8 M  K- i1 p, x+ [
        if( g_pPlayer ){
  O4 O' S$ x0 }; Z# z& r9 m: f; y                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
* ^1 I% N" e3 `7 b) Y8 W" T                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
1 _5 W+ j! H- Z1 t  x                {! e7 G: F( i( @8 C" t8 M- V; [
                        if( pLight )
( ~! F1 a: e; ~                        {
$ o/ z& ^% |" g0 y; c( l: o$ b                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
8 K3 y* i8 R& a1 C$ w                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
7 R8 n' l6 P1 p1 m# I, p7 Q3 |$ q                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];( I0 n7 d/ c, y
) l; [& Q' f' e$ n& V% T' i( B
                                pLight->Specular.r = 2.0f;8 P) W; V+ B* _+ L
                                pLight->Specular.g = 2.0f;" z- x' A& u5 Y6 J5 r0 z# F
                                pLight->Specular.b = 2.0f;
1 D. w) I7 F* O5 j5 ]0 {. ~        0 A3 M8 L$ C) R8 l1 |$ t
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];+ V& V4 x' j0 p2 m& n
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];9 e" Q7 u/ T& I, V7 R) a
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];, h5 l) ]" }' i) m0 e
        $ _( H( G! |* c/ z
                                HookUpdateLight( pLight );
8 {2 S/ L) ]* ?0 f+ c; n
+ M) s: u% x1 i5 b" p) ^& |2 t                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
( ^- Z$ L& s0 A8 G' |                . ?1 L! E- |. F, `8 k, x4 M5 C7 H
                                pLight->Diffuse.r *= 1.2f;2 Q6 p& \, O5 V5 q* Z; \
                                pLight->Diffuse.g *= 1.2f;
: }6 @% f7 g, V8 I8 F                                pLight->Diffuse.b *= 1.2f;
- l# }' E8 p3 q4 R" [3 a  j" Z  U
9 U. e/ ?* [6 z                                pLight->Ambient.r *= 0.8f;
% U: x) Q9 D. t* Q                                pLight->Ambient.g *= 0.8f;+ G  ?4 K0 j1 b. x( `
                                pLight->Ambient.b *= 0.8f;8 x. u; t: [; s/ k6 L5 i% n5 T
        - G& I! v, G  ]2 }# `) }7 Q
                                memcpy( &m_light, pLight, sizeof( m_light ) );$ r/ @1 q( V* u: \. s+ T! z
9 M& t. t- I- r+ x: D: e, \! j
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 @* |* U* _/ I% A6 F, m9 p                                 D3DXVec3Normalize(&(vecSun),&(vecSun));, P$ g% M3 ?1 f- \4 N6 M5 P+ Z
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 7 i! L4 ^) L: O6 S8 L5 x4 p, i
                                pLight->Appear( m_pd3dDevice, TRUE );
( @+ k! Z0 p0 L$ s- r1 K: Q% P               
" b' K+ I1 g$ c                                DWORD dwR, dwG, dwB;6 I3 k; v2 T7 H4 }7 X2 U% P
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
3 D& f1 b& j, D                                dwG = (DWORD)( pLight->Ambient.g * 255 );
' P* R6 [7 b  S) q1 Z                                dwB = (DWORD)( pLight->Ambient.b * 255 );
1 M7 i: x6 Z+ C- g: z( Y: P* f  Y                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! `: M# `4 G# w/ x: g8 f4 ~                        }" c) x8 P& d% ^1 K  I& i. T
                }/ p( M' j! h& t2 T
        }8 m9 D5 C5 O+ k- X4 }4 N1 d
        else& A. L/ K3 M2 C) K
#endif
  C) H0 H3 y" R: A, p0 v6 q2 y% q( P6 r1 c0 J( Y
        if( m_bIsIndoor ). z6 B6 g4 _2 X8 h* J9 _
        {3 }+ Q& g( S! g6 ^9 m
                if( pLight )
9 k( S% ~3 p$ Z* l. o3 o( ?# Y: ^5 H                {                / q) K8 ~6 W* A1 m" K% F
                        // à??μ oˉè* 7 A& D: f: [& n- d  _5 z
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
1 V  Y7 x: x$ R, L2 v  P0 t8 P                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
# X% X! K) O/ h                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
8 a# Y: A: U4 G: F4 {+ ]7 p# [
; ]' G4 }! O- [! [1 l                        // oˉè* ??à? 3 J( s" A$ |6 i& Z5 {& u4 x) y3 n# z
                        pLight->Specular.r = 1.0f;2 n& k6 \1 M! ?: G- a( M( z7 {7 L2 p
                        pLight->Specular.g = 1.0f;
1 c% l8 u' c5 \* O/ e, \" M                        pLight->Specular.b = 1.0f;2 h/ L! `- t& \2 [
                        // àü?? oˉè* % b$ ?' r2 l5 P
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
6 E- ^7 C9 q6 [" A7 I% x                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
+ c; r% o! i+ C- |                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;4 v" q4 }: d* k+ w
) V: o7 D+ x. {
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* S9 v) I- F1 j1 o4 f+ ~0 U1 H* s% t                        {! _# o7 b" o4 u  P: g
                                pLight->Diffuse.r *= 0.6f;8 ~4 \3 @, Y1 W, ]2 ~
                                pLight->Diffuse.g *= 0.6f;
) ]: T" E1 m, t- b( {/ j                                pLight->Diffuse.b *= 0.6f;
: ~* R! |  @6 w* M1 R( m( N                                pLight->Ambient.r *= 0.7f;& m* |6 `6 ~& G' P& i
                                pLight->Ambient.g *= 0.7f;* m. [- |# i6 D- I
                                pLight->Ambient.b *= 0.7f;4 F2 `' H# D! Y, ^
                        }
4 e' |# \2 g; h9 P4 i- o
' {% S- C% z; Z5 H: ~  c2 w#if __VER >= 15 // __BS_CHANGING_ENVIR
6 r- L  x# b2 U/ f- p% h1 `                        if( g_pPlayer )$ H1 H! D1 G" u+ V/ N7 A
                                HookUpdateLight( pLight );
* R8 I" k: F! o3 m#endif
: |  j# ?# H% U6 o                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 C* ]& f- A3 p+ r% U& p3 h7 |) r! n0 A$ @- N! B9 q
                        pLight->Diffuse.r  += 0.1f;
1 h/ T& O& X& Z$ J; u% k                        pLight->Diffuse.g  += 0.1f;. s/ _) j8 |0 H: ^- m. B
                        pLight->Diffuse.b  += 0.1f;; r6 I3 \8 [# T) v' [2 |; M
                        // oˉè* ??à? 2 F) m$ I9 S, F% j: G. \7 r
                        pLight->Specular.r = 2.0f;
) V$ o. \5 N, z/ H                        pLight->Specular.g = 2.0f;4 {) S8 G5 A& ~+ {
                        pLight->Specular.b = 2.0f;
7 A4 o+ p3 |+ y4 i                        // á?oˉ
# j8 W/ U  z, u                        pLight->Ambient.r  *= 0.9f;, `- o4 K% n$ M4 ^& t. U( u: @4 k6 f
                        pLight->Ambient.g  *= 0.9f;
2 Z9 Y" x! s8 j& \& C7 Q                        pLight->Ambient.b  *= 0.9f;: A% _" p& B; q& w) M

6 d/ u1 l0 k0 Y8 L0 i! S                        memcpy( &m_light, pLight, sizeof( m_light ) );
0 @' c' d- ^- u" L                       
1 v$ e3 Z8 B' U, Q; G  M8 z  `9 S2 \  [                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );4 R# {7 N3 `: m; Y" E
                        pLight->Appear( m_pd3dDevice, TRUE );* D$ z4 L, ^! _; H' @
        ; Y+ R# c( W' @: |4 |* o" c8 \" w
                        DWORD dwR, dwG, dwB;
9 u& N  e+ a0 \% u/ u                        dwR = (DWORD)( pLight->Ambient.r * 255 );
) G6 p7 Q+ J3 X( x. U, @4 R                        dwG = (DWORD)( pLight->Ambient.g * 255 );) {7 x# {- N% ?( f* B3 |
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
5 v: R5 \0 ?4 h) S                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
7 T" k/ U* s$ t5 [) s                }1 D; R: ~2 J% f( E( c3 I4 u
        }
9 a8 r0 y! v4 q; j        else
4 I1 ^+ M) F# E4 ?9 V$ d2 e        {. s4 N* V( f9 h3 l! B
                if( pLight )
5 d+ b& l- P; u4 J# i                {& }/ b4 D: t# W* u$ T% H
               
$ u/ t. n' d. N. w3 H* ~: c7 ~; Q& s                        int nHour = 8, nMin = 0;8 c2 d( |  a$ W+ t! v" w! Y
        #ifdef __CLIENT
3 K5 V: O# m& E4 d8 |                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
$ b* Y7 U3 c2 J) M                        nHour = g_GameTimer.m_nHour;
! ?; }1 N) v. B  e6 H+ ^                        nMin  = g_GameTimer.m_nMin ;. _" w) V& R" }* S+ i
        #else! g; Z0 J9 c; g! J% p
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
' F1 T: k  p3 p. ^, s0 V7 y9 n& L% k                        if( m_nLightType == 1 )
, \! f8 b4 O9 G6 c) P& Z                                nHour = m_nLightHour;
2 y% g8 u) N1 L. A" t        #endif7 w+ w: Y' h* H$ K7 \' z
                        nHour--;
4 R( U5 K3 r* n, e                        if( nHour < 0 ) nHour = 0;
% T; v8 f. \0 y) D  t                        if( nHour > 23 ) nHour = 23;5 B% P& Q; @( T8 t; ]
  j# p6 a5 s9 c) p5 h
                        //if( m_bFixedHour ). G& m5 X. q" \5 D- B& r- W
                        //        nHour = m_nFixedHour, nMin = 0;8 {( E" D- F$ d* \+ L2 P5 @
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
( E! G7 V$ u1 ^                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];; I" t9 N7 U6 E. h& B

1 P% x/ {4 {; C6 z) J' M                        //m_lightColor = lightColorPrv;+ _: n2 Q4 n( b/ [3 Y1 J. M
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;; Y/ b" F$ a! L$ w6 P3 o6 m' s7 M
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
9 K/ }! v: R: h0 x* o' J                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
& a+ `) n! }7 l                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;7 r- h0 K8 N: o4 w" v. e
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;8 `! K. j; @2 g; l
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
6 J. W3 z; a7 ^9 X5 ^+ Y                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)1 t' E  u6 ?5 Z3 C8 S0 i. _
( v& @6 l9 V7 O
                        // à??μ oˉè* " L. t; P/ W3 B, l5 ^9 P8 t
                        pLight->Diffuse.r  = lightColorPrv.r1;& D- G/ {; O' e# p  E
                        pLight->Diffuse.g  = lightColorPrv.g1;) s; G1 C; {3 S2 l3 H
                        pLight->Diffuse.b  = lightColorPrv.b1;
& ?8 T  m/ @2 Q+ f3 {5 \                        // oˉè* ??à?
5 R- |) M: G+ K                        pLight->Specular.r = 1.0f;
$ o/ ]) c! R/ X1 d. U) W                        pLight->Specular.g = 1.0f;
! K4 K" @  I% o: C9 D                        pLight->Specular.b = 1.0f;- b# p, ^& D2 F! M/ V, _$ T
                        // àü?? oˉè* 7 S9 Z  @4 N  `- l$ h
                        pLight->Ambient.r  = lightColorPrv.r2;
5 l9 i5 S' F/ }0 D0 M/ Q: Y                        pLight->Ambient.g  = lightColorPrv.g2;
1 s% d) D* k5 Z& x6 \: q                        pLight->Ambient.b  = lightColorPrv.b2;
" r$ f) a2 }, o5 K
' [! E. E6 L: Q5 V( Q                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* m) Q; ^! Y: S7 \                        {$ O( R7 R% _+ W& H8 a
                                pLight->Diffuse.r *= 0.6f;
1 y2 i3 D/ c. N5 V/ |9 Z                                pLight->Diffuse.g *= 0.6f;
& f' K1 s& g2 L5 _) @& n: y                                pLight->Diffuse.b *= 0.6f;
. f/ j8 r9 X8 I- k! z3 f                                pLight->Ambient.r *= 0.7f;8 ~2 A' O# `# T1 {# W/ t9 }1 P
                                pLight->Ambient.g *= 0.7f;: ?5 ]3 L2 |8 h7 y) X
                                pLight->Ambient.b *= 0.7f;
- P6 k  q+ i6 U# z/ ^                        }* h- D: g5 ~" A) c, A
                        7 C) R: t3 U$ ?4 m6 R2 [) d
#if __VER >= 15 // __BS_CHANGING_ENVIR8 S- M/ @5 t' k( s" m2 J. l
                        if( g_pPlayer )* h4 a4 a, d* o& N7 c
                                HookUpdateLight( pLight );
( I: w7 y1 b. q9 Q#endif
4 v3 Y- L) C* ~' x                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );4 k  ^* H" U! P+ ]

* j' J* K3 G& W  K6 Y#ifdef __YENV
& r4 p. C( A, C- ^/ T! k2 I                        pLight->Diffuse.r  *= 1.1f;
( h) j; h/ b8 D& ?6 B' |                        pLight->Diffuse.g  *= 1.1f;7 l3 ^0 w0 Z7 y& g/ J" m
                        pLight->Diffuse.b  *= 1.1f;
9 @* e/ M; d" Z* d; P- r                        // oˉè* ??à?
: A" A# V7 G3 A' }                        pLight->Specular.r = 2.0f;- I8 R- M+ W  V& |# f2 a  B' E" y
                        pLight->Specular.g = 2.0f;! |0 f8 `; r% \" J% `$ e
                        pLight->Specular.b = 2.0f;8 z' m% T& f* f. C! ?8 ?2 |
                        // á?oˉ / f+ c- {8 ]& I/ L( `! x: u
                        pLight->Ambient.r  *= 1.0f;6 E; J1 [) E: M
                        pLight->Ambient.g  *= 1.0f;: R( G' l$ M, s- P8 c4 a2 f
                        pLight->Ambient.b  *= 1.0f;
) @1 R8 u/ {4 H#else //__YENV
- f8 M+ I6 F7 M. A                        pLight->Diffuse.r  *= 1.1f;( G2 J" X( a0 Y8 B1 X9 {& |
                        pLight->Diffuse.g  *= 1.1f;
. [/ U, U8 N& q& U, f: f! X                        pLight->Diffuse.b  *= 1.1f;$ a" U% p: v' t% @  r  T
                        // oˉè* ??à? + e: A, k7 _4 O  Q  A4 k% e3 _
                        pLight->Specular.r = 2.0f;, p6 D& t1 d5 u6 K2 M$ [2 j$ ]
                        pLight->Specular.g = 2.0f;
5 d) r7 L; t0 |% a                        pLight->Specular.b = 2.0f;: p; Q7 M4 ?3 l
                        // á?oˉ
/ W* E: \, U5 r4 f                        pLight->Ambient.r  *= 0.9f;& T! c3 Y' U0 L. n2 ?/ u, Y
                        pLight->Ambient.g  *= 0.9f;
/ P& H0 j4 v. j6 s0 u% H                        pLight->Ambient.b  *= 0.9f;
- |# u# O; w4 |: R#endif //__YENV
  u. [1 F3 A$ b$ J                       
! l; @' X+ N; n: t                        memcpy( &m_light, pLight, sizeof( m_light ) );2 ~. \. o$ [* h# A* a, f6 o
                          }) Q6 X+ ]% l0 T8 h! Z2 c7 J
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);& y8 r% \5 t2 Z( U8 x# U, j
                        D3DXMATRIX  matTemp;4 H. z5 ^* ]  o0 {
                        static const float CONS_VAL = 3.1415926f / 180.f;
  A5 g+ ]' x( Y7 F2 y5 M# z. M' R. V$ P3 U5 B6 M: |' B  b5 v
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
& B; T" v$ l# V4 K- E/ @! a                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
1 |8 }% d. G1 v' J                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
' y" g+ j8 ^* ]# A6 v3 ?, R                        pLight->Appear( m_pd3dDevice, TRUE );
3 J) f0 _, o1 X( c/ R/ k7 _+ k/ D9 L- R
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);9 j" R/ P& v+ E+ f. m& o0 B2 r
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
7 e7 ]+ g0 x8 y4 e                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ; o8 l3 L" ~+ u4 ]- r4 j- _2 a

1 N* }1 G7 Z7 P1 B% ~* c8 k4 q                        DWORD dwR, dwG, dwB;
: P0 H" C. ]/ f                        dwR = (DWORD)( pLight->Ambient.r * 255 );
3 P, U9 i& ~1 |& s                        dwG = (DWORD)( pLight->Ambient.g * 255 );; u) U  e1 D5 V; z" D
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
% s& M. ^* C; c: l( W                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
) t; R) ?$ K: M' w7 O+ K. D                }/ [" e! ?8 [# D4 k; D
        }: z5 {8 v3 x8 g; P& m

  W! M( O' C4 R3 \+ _        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );% s9 a) M6 W: G7 l& M) v1 ?
        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) );& t9 u+ F6 l$ q. b3 W) z9 N
        ::SetLight( bLight );9 |$ g; G" R6 i/ a
% K) K9 M% o2 o8 l
        // ±ao? ?D?í???ó á¤à?
+ h! K5 b; ~! g- Z2 c7 z; [        m_pd3dDevice->SetMaterial( &m_baseMaterial );8 [( K9 |$ c8 o4 P, `; P  _' l
        ) s4 V# z" b! c! i3 F# \
#endif // not WORLDSERVER
7 ]) ~* F) |& A}
& f3 Q9 H  Q$ ]9 M  f1 E并更换
% ?% R! f6 U- j, OCode:
& t( j' U; N/ x# R7 B% u$ g5 t__FLYFF_INITPAGE_EXT
" A# a' h' I8 [! n定义
; q" C6 S5 C5 F: C
7 ^& Q7 [+ n; Y2 E8 s' H" @( Z( a

/ c5 ]0 o  E8 @/ R1 z9 K$ N+ I0 }
3 u9 s- y0 o/ O  K+ S+ U现在终于删除我的狗屁加速...3 J, S4 g0 d' r) D' g

; o$ c) a1 n9 Z% d  i  s7 u8 j8 ]+ C! o! m6 k- w' t% I2 B

; Z) y# q( ?# U# b1 F, @




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