飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:, d  v4 k% n, U! T3 r8 s
尾翼:
. C8 }# ]6 X* S, _, Z. W. K% A, F( v6 |* T$ P$ w# Y
代码:
4 ^. B/ p+ b5 q& [1 `1 l% [CWndAutoFood::CWndAutoFood()' A) O1 Y, g. d" E3 b6 Z
{
( p% H+ Z  B; c6 l0 q- p. p; ]' a        m_pItemElem = NULL;
# v, @% H9 J$ J+ }2 H        m_pTexture = NULL;
% x0 F3 q+ z& D# V7 d: K        bStart = FALSE;
0 i! u' A" T- J9 n& ]; U* o}
5 a! w! m7 p7 @3 N; [, B; B1 |1 d  D7 \
CWndAutoFood::~CWndAutoFood()2 w: l/ w$ h4 J+ P2 q- G$ L/ ^
{
4 C! K7 A8 Z3 t! }% E        AfxMessageBox( "AutoFood ist gestorben " );
/ Y% a" l3 Z, a: _! J# J: D6 x}
- M* @6 K7 b! t+ L7 P0 CBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType ): j' h0 R+ ^7 y  Y  u
{
) K. j9 p/ D* `, W5 W1 `0 z        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );. t# |8 }' E& b# r$ @& S1 }
}
9 x/ V4 [+ A4 ]5 l' Q0 J
+ [7 K7 M; [2 vBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
; M% k) f% ], }; y{  D8 O& @4 ?/ n% W2 Y  r5 R, N
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );8 m4 U. }: b9 i7 G3 h2 ]
        CRect rect = pWndCtrl->rect;: }9 i1 F! Q. V1 ?# W
        if( rect && rect.PtInRect( point ) )
1 t1 }9 z0 l( b/ V; w# J        {! h- l, i" L) L' E
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
1 U' [* I% H+ q                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
% m/ ^% J$ s4 @4 x" ]                {
9 _$ s+ B9 L& X6 |& @                        if( m_pItemElem )" P# O+ T6 A' D' H: `
                        {( }0 t" w5 y8 x7 ]( W0 {0 i6 T+ `- f
                                m_pItemElem = NULL;+ R- |8 S! _; O5 v
                        }
  a5 v5 a4 |  E# Z( l1 A) i7 z( |                        m_pItemElem = pItemElem;
0 }- P& w+ v# N, M7 v9 ?                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
2 q: D0 \6 e; l! w% j2 g                }else{2 {- D9 E( E. y: k% }, x5 ~( d
                        SetForbid( TRUE );* x7 y. d, P0 G  k0 F" I
                }7 A3 z- M1 z0 P
        }else{
5 `( A9 x& X7 @                SetForbid( TRUE );
+ \$ F7 H) k7 d        }
3 p' O3 F% J) M  B7 Z$ a0 ?8 U( v7 k        return TRUE;2 f. w8 t' Q6 g# ^! Q, W) I
}
( J- R2 w& x+ l# b+ x$ Q& N4 A' U4 m/ h5 C7 X
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult ); P% j: ?% p0 f  z. u
{; V7 n, q) Y: f* H3 b  W- D0 K
        switch( nID )
4 \0 ]5 x) ]- [6 T* c' N        {8 R# ~9 u- F  C4 R- D
        case WIDC_BUTTON3:& I+ S: Y5 i7 m& [- d
                {
1 O- q; }, |6 s9 m7 V7 K0 s' ^                        bStart = TRUE;$ _( O9 y& s. ?% g1 N
                        break;% G9 K* y) A! H" @
                }
! B+ o& d- Q3 ~        case WIDC_BUTTON4:
! S- _/ A6 |/ o# K; K! P: z                {. p  F7 W. @0 Z& n9 V5 c
                        bStart = FALSE;
# u2 z/ K; z) E+ W                        break;" L( I+ @4 C, |1 @; M, R
                }
- f1 S: b+ u4 _. M# @/ b8 R# e! [        }, W# t& ^: ]0 U1 i  @7 D3 \7 x
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
+ [5 m! m3 N% O  l1 P; j# ?}        9 [  Y: t( \3 E; C1 d2 l
void CWndAutoFood::OnDraw( C2DRender* p2DRender )6 ^2 w9 Q" Q/ H. ~, }: `- u
{% i: w; L$ @7 ^: ~8 w# w4 ]
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );8 q! L1 q, Z6 J0 D
        if( bStart || !m_pItemElem )! y5 m1 ?! g" q" y. n* T
        {
* `1 K) u! E8 U/ W2 p  ?                pBtn->EnableWindow( FALSE );
" A# J" M7 I* ?2 C8 [        }else" v7 i( x1 ?, ?0 S/ B- W
                pBtn->EnableWindow( TRUE );& V6 `9 W4 U5 `9 S% c1 `7 s9 ?- h
        if( m_pTexture )
- j3 x" l) B  z        {2 H* P$ |! m! |7 p* n3 T( d2 H
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
9 i( q* |/ {' w! y" C& t, Z! Z  G& B                if( wndCtrl && wndCtrl->rect )
( m* C  H' F1 |2 L8 y) ?                {0 ?+ a2 c/ V/ q0 }. q; O" {# J
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
6 T' D$ z0 e7 K: Z                }
' X# N$ A; P/ \; n5 I" h1 I& @8 c  g        }6 c1 o7 l, D" d4 r9 E9 ~
}
7 j+ |( P7 c2 Q1 Z& l0 b$ `& E% _+ m# C. J, {- g' j/ B
BOOL CWndAutoFood:rocess()9 o- M4 l. @/ l; c! t) D+ f
{2 [" N! s6 `6 G: x
        if( bStart )6 |9 D& Q) ?: G  [1 _$ D0 Q
        {
2 _- z0 u0 \2 T0 M- L* u- r4 B                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
0 T: Y2 R2 Q* G1 d. g                {- L( Y1 `/ |1 C9 @& d- a9 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() )
! m( C5 z2 J0 z, f4 a% j7 D                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
7 M! o: R0 `) \; Z- b$ o                }else{
" U! A7 q! T9 [$ b  l! l                        bStart = FALSE;5 z% z/ [( p8 o5 \. Z% h" ^& x4 M
                        m_pItemElem = NULL;
3 D( P( X4 W- a0 b" R3 C1 b/ [6 C                }& t8 ^5 k$ I* w. P* I7 L9 [/ S
        }6 N0 l+ S( k6 v6 P( q6 `+ D. x
        return TRUE;
5 X8 t4 G% @& S$ U}
$ l+ ?/ u; M$ j5 H; F1 L! P6 e& z' H4 s+ \5 P$ h
登录视频废话:# t& u+ y! L, B6 r
尾翼:
  L7 x: Q+ S" {/ {0 ]) x
& u3 G2 B: ^+ w+ u代码:% @" c, Q5 d4 U
2 B1 H! G0 O( T& v/ |( L
void CWorld::SetLight( BOOL bLight )8 M; v3 f, k  y
durch
$ I5 P7 S( ?' A2 J* H: @' a' sCode:
" F9 t- G' Y" G7 V+ w! Pvoid CWorld::SetLight( BOOL bLight )
9 Q) D" ^) r2 b9 G" Z{
/ r8 [. y/ {( _& E4 ]) f        //ACE("SetLight %d \n", bLight);
7 L. w9 u: Q& v* ~        , v/ v9 O" C9 ]% g
#ifndef  __WORLDSERVER
3 L/ y% _0 Y) K( w4 w        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
5 {( r+ ]! N" T6 d" U        CLight* pLight = NULL;
* K0 V3 i! Z3 z. p8 j& ?* A5 v2 q1 J8 {1 y) ~% W; \( K
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );! I7 x* k1 q: ^, W
! C2 P! m7 J  v! R9 F
        pLight = GetLight( "direction" );. ]: J; }8 u% W* j9 c; |, Z$ f
; x* n4 S, [' K. e7 i
#if __VER >= 15 // __BS_CHANGING_ENVIR" x7 G4 k) r5 a4 ^  v3 R! N% x. h$ p
        if( g_pPlayer ){
1 k! ]: m+ [7 I9 P% w7 @, F# I" T5 W                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
5 q- C, k! D5 R) J- k                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!: a% g  s0 a3 o. S
                {
! l! W4 F5 S: ~2 c                        if( pLight )& P0 a/ i) n' U2 h
                        {
4 z; J$ v% b7 H                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];# h  ], n( V% Z: e. V
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
1 s3 s1 K! I/ L% g" v: A                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];# G% ~8 D( W3 s# l! ]" J8 z

  i' {' z3 `' F5 W                                pLight->Specular.r = 2.0f;$ N' k/ J4 i* t& r
                                pLight->Specular.g = 2.0f;
' A$ g5 `7 E3 h1 h+ d1 P                                pLight->Specular.b = 2.0f;
+ k3 V3 s; K8 U7 }1 u, z       
6 d$ T# I- N# x' b; L                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];$ K- S2 I6 [' k# U! k  ?
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
( Q# N' {; m- k* R  O                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];4 \$ v2 X; F( R& Y% C* R1 R! J
        9 ~7 x( M- l" L4 `
                                HookUpdateLight( pLight );
+ e0 j6 y9 y$ l8 e7 z, _
& [1 X/ S! R- \7 {9 N1 O                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# j& M- ^0 C! `/ i                " ]5 N" d! u" T
                                pLight->Diffuse.r *= 1.2f;
; L  }; ^7 h* N1 |; K+ M                                pLight->Diffuse.g *= 1.2f;! j8 V" \  C9 O# Q% O
                                pLight->Diffuse.b *= 1.2f;
5 Z- ~# m% E/ }; q
/ c( ^5 s6 F: }: l" L, y: @                                pLight->Ambient.r *= 0.8f;  P( g, M8 L6 l4 x! U
                                pLight->Ambient.g *= 0.8f;
9 n# Z/ B: \* x* R! k8 I- w                                pLight->Ambient.b *= 0.8f;
# t0 B4 f7 X, P2 `7 A. f       
! o. Y- _% K# S7 U; o                                memcpy( &m_light, pLight, sizeof( m_light ) );% n. I7 W, ?& A. o4 k

. O, w8 O6 f' U! l! W$ z$ x# {7 H                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' `3 `0 T% r% k" ]  x) k                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
) ]  b- e' s* K. h; A                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 2 ?, b/ y% N# T) B
                                pLight->Appear( m_pd3dDevice, TRUE );
$ n& ?: q6 W' d# B' ^* k                / P  }+ t+ e1 a2 Q7 Y4 r& [
                                DWORD dwR, dwG, dwB;
# O4 B. y  a9 ]* u9 V& O4 g2 [                                dwR = (DWORD)( pLight->Ambient.r * 255 );
( H# d: S1 C  x! V; j+ N                                dwG = (DWORD)( pLight->Ambient.g * 255 );5 m6 s8 q( ~$ D- E: G0 x- f) G
                                dwB = (DWORD)( pLight->Ambient.b * 255 );# e) [, g6 E6 |' V6 x7 A
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );* Q% E! t3 G* M  i8 Q2 e
                        }" V  w0 }) q8 j8 t
                }# z, c, H6 l; P' n, o* h+ U
        }
1 G6 H8 Y& ^" p        else' h! w: P9 x# b
#endif
! I$ b; Z7 T: L
7 M2 G3 S# P* h5 Y        if( m_bIsIndoor )
9 g; r! `+ g: c0 e* a- o$ j  }' e5 t+ ]$ N        {
5 t# f& [6 V3 {; u4 r                if( pLight )
* s# N3 i; |3 r" }3 U                {                & c$ \, T: }3 o
                        // à??μ oˉè* ( P0 J( b& O4 ^' l5 }' X0 W- p
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;! R) ~( U5 p: ^( Q% n3 w. D
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
' b# W; j: F. |2 U9 l$ _( Z                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;4 _$ C0 o7 x6 y0 W
+ U1 [. t+ Y5 t7 C
                        // oˉè* ??à?
- k9 d/ T5 Z- {9 O                        pLight->Specular.r = 1.0f;" g6 A9 F; E; q4 i* V3 v/ p
                        pLight->Specular.g = 1.0f;9 b8 L7 L9 _3 E9 C
                        pLight->Specular.b = 1.0f;4 N" P# L& M% n
                        // àü?? oˉè*
4 ^  U1 C0 q& i) y                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;4 p5 l9 M4 i2 D: R  U) u3 X$ e/ B7 C
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;7 I/ a  U: l+ @. G- Z
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
3 G( W1 h- W0 J6 ?! k
+ U" Q4 W; e/ [, V                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! b( I. p0 `+ V. Z, G5 K                        {! v9 }+ {5 e9 Z8 e; ?
                                pLight->Diffuse.r *= 0.6f;
; H4 e9 g( M: M8 |0 ]* m. A                                pLight->Diffuse.g *= 0.6f;
( d  V$ a9 U3 T, C$ I. W3 l                                pLight->Diffuse.b *= 0.6f;6 j+ P# C5 F5 g6 V9 \
                                pLight->Ambient.r *= 0.7f;0 B0 v1 {; \/ r% V. G4 L
                                pLight->Ambient.g *= 0.7f;
$ U3 a# p* J6 S                                pLight->Ambient.b *= 0.7f;8 i( X; |! y* ~1 @0 v
                        }
6 S3 o9 p- ~; E( ~2 x: }! W$ m0 r0 y) y9 A. e3 w2 Q2 R) [1 A
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 u1 J8 W: T# U; f                        if( g_pPlayer )/ `* R0 P$ U9 q: j. r# Z% A. e
                                HookUpdateLight( pLight );) L* [% O7 e/ y
#endif
) R. O: q$ J! J; s. R                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 o0 y" E  l. I: M" u1 m( U( X6 a
1 U! Y4 F8 E! k2 r7 f/ l                        pLight->Diffuse.r  += 0.1f;
0 v4 n' ?  j  [                        pLight->Diffuse.g  += 0.1f;
, X+ E9 F& |: O  D                        pLight->Diffuse.b  += 0.1f;
3 v  Y) x- W/ O& _# i+ P5 b                        // oˉè* ??à?
3 L7 \, Y, x) `# o: s                        pLight->Specular.r = 2.0f;
# C, r0 r: {1 T% G9 X6 F2 q                        pLight->Specular.g = 2.0f;# l$ c& ?" \# B) B2 w# Z
                        pLight->Specular.b = 2.0f;
* ?- I' q: m" v# h& K1 T% H                        // á?oˉ
) z: Y( G5 u7 S. n0 ^* j. Z0 g                        pLight->Ambient.r  *= 0.9f;. u. A% Y( b" H! x3 W( s2 u
                        pLight->Ambient.g  *= 0.9f;
8 Z( G+ r/ q9 l                        pLight->Ambient.b  *= 0.9f;/ {, H# d# b' u5 C8 x

/ V$ |$ y! k1 |. Y8 J& t8 Q, g4 H9 `                        memcpy( &m_light, pLight, sizeof( m_light ) );! P# f' k' v( f8 f5 _/ W3 F
                        " V$ s4 }' Z+ I& e0 D: W+ }
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );. c8 n9 c& Y. f/ P. X$ A( E9 B
                        pLight->Appear( m_pd3dDevice, TRUE );
$ j% T+ N. e' U- E+ E        . _/ i4 I3 d0 }" E) r$ A5 {2 t
                        DWORD dwR, dwG, dwB;/ w. `( F! h9 h/ q( _
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
' X& x& }8 N! K2 @0 z8 _( v, d( [                        dwG = (DWORD)( pLight->Ambient.g * 255 );
& V. P  j) a& s                        dwB = (DWORD)( pLight->Ambient.b * 255 );
0 W$ Z7 _: Y) N& q' o( S3 a8 |                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );* w0 n6 g- [# q; m; L( p% j2 n
                }9 m) Z- f6 e& z% B% E- k
        }+ V0 Q* I- d4 s. Q# J
        else; W+ a3 Z, ?3 U% a: a+ v
        {
3 Y( s! x8 \; s1 C" h& ?                if( pLight )
, W# s2 a3 @0 b* g5 O( p                {
# ^4 i! \' L3 E5 V9 N1 W; k               
4 A0 [8 K' E# t  B; u                        int nHour = 8, nMin = 0;5 a- ^4 P( z( o. b) A
        #ifdef __CLIENT0 E" G0 i  S" K8 X/ ~- }% K5 r0 D
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. ; Y9 G9 g, D0 `, d, {
                        nHour = g_GameTimer.m_nHour;
5 @' f( J" g: @, l% d  y8 g                        nMin  = g_GameTimer.m_nMin ;/ d0 I; ^' A- Q. j) A0 j9 b% M
        #else1 M5 ?0 ^5 P" y4 I: C
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.$ z+ b. }( O5 y, c2 B" D9 v2 X
                        if( m_nLightType == 1 )
1 n; `  C' b: C                                nHour = m_nLightHour;
# E, P2 @  u! s4 X5 t1 g4 o        #endif% D7 t* X! Z% U' \- {
                        nHour--;3 s6 `/ j; e) ]2 l0 P! V) g
                        if( nHour < 0 ) nHour = 0;& _, P6 n: t; B/ D7 w* ^
                        if( nHour > 23 ) nHour = 23;# a9 h4 I" H4 a  W

" I0 {& O5 T/ L4 |+ ?' M                        //if( m_bFixedHour )
7 d; ~4 @- c7 m3 ]                        //        nHour = m_nFixedHour, nMin = 0;
! K9 r! m7 Y1 U. I1 l4 a0 T) A                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];  F7 B1 K) [3 V  d
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];& x$ r* E9 S! p/ g
6 p* r: N" Q$ }# q, q  P* r5 Y
                        //m_lightColor = lightColorPrv;* S; [  W% n0 m
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;& `- p. T2 E- s( C
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
* C% z4 C; Z$ o                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
! u! u. e: [2 H8 Q                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;$ _3 `' q( G! P* I9 ~
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
" x) ]5 o6 w6 s* {3 u                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;; S* }* |3 R; Y8 W) I+ s
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)/ G5 a; P. G  `8 p% [) Z# B4 F( a

5 A8 o1 u! W/ [2 H+ D                        // à??μ oˉè* : w: h2 s$ D- |" G8 d' E. N9 w
                        pLight->Diffuse.r  = lightColorPrv.r1;
, I) N* C; H' Y- w                        pLight->Diffuse.g  = lightColorPrv.g1;6 f6 ~1 p. U2 V
                        pLight->Diffuse.b  = lightColorPrv.b1;/ k6 \4 P8 d" l; y1 M3 h
                        // oˉè* ??à? 6 x8 `( i( w- ?6 x$ P8 A
                        pLight->Specular.r = 1.0f;
' _- e9 R6 l) p: T' j/ a8 @                        pLight->Specular.g = 1.0f;. D; t: H7 y) r. b7 @) r
                        pLight->Specular.b = 1.0f;) E5 r# A- u0 _1 s. ~! a
                        // àü?? oˉè* & k2 n8 r+ l8 Z. }: K. ^
                        pLight->Ambient.r  = lightColorPrv.r2;
1 h& N% I- O" R% k                        pLight->Ambient.g  = lightColorPrv.g2;+ p, O( [4 J: X2 [; C
                        pLight->Ambient.b  = lightColorPrv.b2;( L8 i! ^$ O. Q: |( r" E6 h& F

$ A/ i1 H% l. P1 M                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.5 f7 w. J+ Z2 Y* g. B/ B1 A! z8 l
                        {
0 L9 R- F( {4 U  \* J                                pLight->Diffuse.r *= 0.6f;' o' {' z3 C; I6 o
                                pLight->Diffuse.g *= 0.6f;9 T" H0 D- K3 a
                                pLight->Diffuse.b *= 0.6f;
. T. E" T$ N- u) @! `, i                                pLight->Ambient.r *= 0.7f;+ I& V" C# S2 R& V2 s8 H& Y/ L
                                pLight->Ambient.g *= 0.7f;) u% Y6 K0 I" k# C: v
                                pLight->Ambient.b *= 0.7f;7 y, O9 c6 [: @, @
                        }* U) a  M% ]+ S* c
                       
' \7 \" u+ U0 N3 p# f#if __VER >= 15 // __BS_CHANGING_ENVIR6 B# C# n) @% }5 K' i# I0 L
                        if( g_pPlayer )
: Z. M" C5 M' F/ f$ c                                HookUpdateLight( pLight ); ' g/ e% t* I& ]6 F5 k* t5 j
#endif# [( ^. o  \& i- k9 [/ v/ B6 W6 ~
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 ]1 S* O8 i+ c' ?# \
- _( }4 F1 H5 ~; \- \#ifdef __YENV
6 w8 U: D3 ?+ N                        pLight->Diffuse.r  *= 1.1f;
6 A- X# g1 y. ]6 K                        pLight->Diffuse.g  *= 1.1f;
8 d2 ^8 A: }- b' c  o; \                        pLight->Diffuse.b  *= 1.1f;9 n' H  T( ?& q) A1 R7 @& z: X
                        // oˉè* ??à?
' l7 \' q" a0 c: H+ y; @4 [% g' a                        pLight->Specular.r = 2.0f;/ Q( M. v& ?5 w5 ~5 ?' z( q# Q
                        pLight->Specular.g = 2.0f;, Y5 }- N7 z8 g: t/ u( y
                        pLight->Specular.b = 2.0f;+ D* ]/ Y$ k$ \# E' v
                        // á?oˉ % X7 z+ S' B9 q( ]4 z# A8 ?
                        pLight->Ambient.r  *= 1.0f;
: w8 x! F8 t% L8 t$ M2 q; e                        pLight->Ambient.g  *= 1.0f;7 m. S5 g9 ]  x5 A9 E& R3 k
                        pLight->Ambient.b  *= 1.0f;
& p4 Y+ H" |) \#else //__YENV: v) }7 z& @% |. C8 O0 r
                        pLight->Diffuse.r  *= 1.1f;
5 w9 e2 U+ N  H! T# ?" D                        pLight->Diffuse.g  *= 1.1f;
0 M" t$ d  a" [6 u: ^( @# R                        pLight->Diffuse.b  *= 1.1f;
& R  \7 ~1 D( ]. v# p! q                        // oˉè* ??à?
& t. N; k! [9 e! a: F7 C! \+ O                        pLight->Specular.r = 2.0f;
7 w- W- t1 m+ l                        pLight->Specular.g = 2.0f;
2 r# w! _. u0 n* Z; l                        pLight->Specular.b = 2.0f;3 c9 @& P5 a% E9 E0 ^9 t9 s% q9 W. r
                        // á?oˉ
& {- K5 H7 t6 ~, j* ?9 B  q                        pLight->Ambient.r  *= 0.9f;1 G1 i4 q- |/ P! P# y% G0 t
                        pLight->Ambient.g  *= 0.9f;2 t$ |( A  f: \# C
                        pLight->Ambient.b  *= 0.9f;' n1 b  E3 a+ l& _7 C
#endif //__YENV
2 y) _' K( U' K/ Y5 D. L                        , J3 O. m. c- L  T5 L) s, \) c1 K3 F
                        memcpy( &m_light, pLight, sizeof( m_light ) );( C1 [# z+ ]7 N
                        3 f2 \2 [$ t7 _, ?/ y" \) J
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
+ y& v0 s4 s+ s) }7 d8 L4 ]+ C                        D3DXMATRIX  matTemp;
# U& ^* a9 J" \                        static const float CONS_VAL = 3.1415926f / 180.f;
! t, t, x( V* v( t4 o' B8 ?% A0 z3 H, h* m
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
0 d1 J2 e/ B" q' O2 A' Z" _                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
  z4 \* W4 D( m                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
5 Y  m$ H9 v. N8 G1 v3 i+ {                        pLight->Appear( m_pd3dDevice, TRUE );) U- ]5 o2 e) ~. [4 N; ?

; J* c8 P9 {4 d9 K# _& i$ m                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
  g! D+ h- j0 z; G$ T0 e) C" ~                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
. z; {# k; i3 z- w# M$ G: @                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); + k, A' h( [8 {
( c- n9 ?7 ?0 q0 x# S6 W  b
                        DWORD dwR, dwG, dwB;
( }1 T; _! R' F3 Y2 i+ }8 q                        dwR = (DWORD)( pLight->Ambient.r * 255 );3 E) H( ^( A* S, e' r) h. T
                        dwG = (DWORD)( pLight->Ambient.g * 255 );6 p& b* L2 e- r
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
$ [9 h# @, `; C" S1 I' b( s5 u                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        9 a' W* L; M: a9 n6 r2 N
                }
6 U2 a) `/ D# a' D, w% u        }
/ X, ~  q  j) o
0 Y8 K, a4 X3 |0 X8 Z+ n5 v        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
, x, [# f( U2 c2 G# R        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) );' u2 |7 ?- U# V2 X; \
        ::SetLight( bLight );
0 J6 m) H% p6 b5 \$ `4 T! M1 u; a( d: B* [
        // ±ao? ?D?í???ó á¤à?
2 B+ O+ b# A2 h; g  x9 S        m_pd3dDevice->SetMaterial( &m_baseMaterial );
/ k. n4 `7 E7 L        7 d8 X+ W8 x' {/ \7 d- Y; H: [
#endif // not WORLDSERVER
; z+ V. E3 |9 b; M7 q$ b}- P4 ]  ^5 j( m/ I# q
并更换% ?2 H; y6 I2 {5 l: _
Code:9 u1 d+ s$ b: c
__FLYFF_INITPAGE_EXT/ _6 `/ X2 a0 f- C/ _3 [8 ~3 o' H1 G4 i) v
定义+ u  L, T0 G2 L( [+ X

" |$ G, S" F, @/ N
9 L  `) S9 M: v
: e* l2 u1 e2 |8 z- V: t
6 N  a) W6 e6 O6 l: z现在终于删除我的狗屁加速...; U: B4 T3 e" O. u1 f# E8 Z
4 c) b# ?' y+ r/ ^& W

8 ]8 _' y; X$ a! F0 m- v1 o( J5 A1 M7 L





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