飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:" ?' W! T0 D4 m) @) e
尾翼:
+ E! h1 l  I8 d) X8 i
1 N$ J9 A! l) J4 s$ a6 p代码:2 e7 W& S! }8 m& |
CWndAutoFood::CWndAutoFood()+ s* I+ |" Q  A: o
{" y" K* n: A9 p3 Q7 G9 V
        m_pItemElem = NULL;1 z$ O5 q( u; C4 c) v& v, i% ]$ b
        m_pTexture = NULL;, e1 u/ f: W5 Y! n0 J& f
        bStart = FALSE;" E" R% D6 ~% g5 V% w8 O$ u
}
) G5 x4 f6 }. Q, l( I
9 C4 c$ E* `( S0 M) _% o) ^9 FCWndAutoFood::~CWndAutoFood()
; t: n: c& s9 |; d# s+ v* i9 v{+ q& _  e1 y: m9 b  }# j1 V
        AfxMessageBox( "AutoFood ist gestorben " );
$ L, ~) X- J$ e+ S}9 M8 X  [6 B, K$ J" [0 U
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
# F/ t$ X, Y# g5 l{
# ^5 U" {; B3 I/ b1 X" p        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );  c! L: \* d* S6 H; [1 W
}8 S- I# ?! ]/ o3 |- D$ i
* J6 p  h9 C3 p4 a5 d8 Z
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )6 w. D+ v3 o5 G7 m: V7 ~; @
{2 E3 K! m1 ]' H4 {) P- z2 k
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
9 e# K1 ~2 m% |) w. C1 H* Y8 z3 F        CRect rect = pWndCtrl->rect;4 N) Q/ v* n( ~0 ]
        if( rect && rect.PtInRect( point ) )7 W$ z2 P. a  o
        {
8 g+ m, @! X5 ?5 x) X% k* t                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );% p& \5 T9 T2 U8 _+ N/ X2 {
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
7 I! |6 A1 E% j& N( Q/ P/ i# Y                {$ W- ?9 |0 I  N/ m0 A
                        if( m_pItemElem )
" p& D7 T/ e6 A9 }                        {
% x' n  x1 I& P6 s                                m_pItemElem = NULL;
8 Z& J1 [& M$ U5 v4 j9 ~8 ?' Z                        }
9 e* L. Y  b( a! m7 s                        m_pItemElem = pItemElem;0 @; F" U( S: y9 g
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );8 N; N6 M3 m, h2 p0 b3 `% |  H
                }else{
) @# V2 C$ h& r                        SetForbid( TRUE );
1 B# _# ?0 F8 i/ G. a4 r                }5 o& K2 _( {7 E9 q8 m& a
        }else{
) ?' _; t: F& A  x' b$ }6 J                SetForbid( TRUE );9 z: Y' @0 e1 E3 H/ Q
        }( E/ u) \& h( d
        return TRUE;
: a. d/ Q& D4 z- P# ?) c% P}
& r4 U- O0 }2 s- s) q8 ?7 R
: |. T* T3 s0 vBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )" i9 t& X8 ~+ q9 F1 N. Q1 o9 o
{
9 O- ]6 q2 ?! B- y6 W        switch( nID )+ p( W7 k5 g2 L" _" I' F* n& X
        {! M+ T! H& n2 z( H0 V
        case WIDC_BUTTON3:& _6 i3 k4 `- F1 K. S2 i* \
                {; c, y7 Q7 I+ M1 o" p$ u/ S9 s4 l
                        bStart = TRUE;
, |# e% v: m4 W' W                        break;, ^; \( P: z! m0 a# g
                }
8 H- A+ k- {2 q1 C) |* z9 \        case WIDC_BUTTON4:; b7 V$ @* T5 y2 n6 d( {# j$ D5 v
                {
# i" r* q) @/ L% U                        bStart = FALSE;
' D) O/ l: l9 n( o/ k! M, B2 w* C                        break;) f# Y% N$ K4 Q0 i( ]
                }
) c8 H4 R  C7 G% R4 n2 X3 Z* M        }
: P5 m0 K' V! _7 R( A2 C7 n        return CWndNeuz::OnChildNotify( message, nID, pLResult );
4 `3 g, F; i. \  e5 c; U}       
3 F4 b  W5 g* H! Z& cvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
* p2 N  e( S! @4 J/ T) @7 P{
8 Z) z! _. ~- P- e: X        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
9 _& ]( H  m( z        if( bStart || !m_pItemElem )
! r+ @4 Q4 v! n2 J6 ~) V        {
& ~* K( V4 o7 G+ Z# e8 y                pBtn->EnableWindow( FALSE );: F; E' m8 q5 }7 r. I
        }else
: V( }& N$ J3 o6 `" z3 l                pBtn->EnableWindow( TRUE );4 n# H5 v  D( N! h8 b. r+ a
        if( m_pTexture )
. M$ \0 Y4 o1 l: n; `/ v1 h; H        {
7 z! G+ Y* ?  j                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
: y4 P4 @9 ?8 `% X& T3 B0 E                if( wndCtrl && wndCtrl->rect )/ o" U* M8 i- x- U% b/ [
                {
: m- Y: ~& W- X3 D+ C  k                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );( _2 w1 p1 _3 P) @  u
                }
/ I$ Q! X/ W) P" W2 H        }' s7 n  q8 v1 ?# Z
}/ B/ B. F3 J8 M" I. X$ c

- [: {7 `5 k# z( ^  KBOOL CWndAutoFood:rocess()5 A0 ^1 m6 o4 A, A
{
% N1 P7 i: `4 R- r3 u$ x4 R8 Q        if( bStart )3 H2 i2 B1 ~# K4 a1 q/ p# G* }
        {
$ K& @5 E- h3 b                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
; l" l) B- z" z* ]9 o                {
7 j" _& K7 U( R                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )8 t# E$ q2 W- S$ S- p
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );& h3 \$ Z8 p3 c  b% `# V; T' R3 C
                }else{
% N; ~" C( o  m5 k                        bStart = FALSE;- }* G$ v% }: s$ z! I
                        m_pItemElem = NULL;% d$ D% E! J* S" R" ?
                }
' D9 r6 e7 O+ w, y        }
1 M3 V2 `& v3 ?) c        return TRUE;
$ O& z/ f9 P* m3 l: G( k  j}
2 O. s# p2 c5 ^# H. S( M0 l) `: z- T6 [7 v& Y. U  D
登录视频废话:. X3 }- F$ f2 }. F( w! o& i* h- y7 S- _
尾翼:
2 I( }) h# L& F
: W1 \; u5 I- n8 I+ v' O+ a代码:( E6 a- G& }5 |" h

, w/ M: Q: ]6 Z" G& ^) o- i3 Pvoid CWorld::SetLight( BOOL bLight )2 t$ C8 f- G" a' w
durch
3 h2 D' }: q& }2 M* S% y' lCode:0 t; e5 }% k4 R& H+ I
void CWorld::SetLight( BOOL bLight )
: q; |, O' ?8 W+ y( a* B" o: e{
8 t) V9 B2 @/ U" I+ |        //ACE("SetLight %d \n", bLight);
- ?+ m+ X2 ?. v        " n+ {: s& I) c, z7 Q, ]
#ifndef  __WORLDSERVER 9 V+ o: i2 N) p$ S
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
% C  i  p! L$ g: S        CLight* pLight = NULL;
# p3 n. E# {" B* F7 B) m& z2 B
! _9 E! M! a3 P        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );4 @# V  B% y' |: d0 J) o( W( n

% H" w0 f+ r' z9 P+ U2 E, p        pLight = GetLight( "direction" );; Y# U# X: i/ k! _$ J1 b

( l. o9 v) G1 I+ r/ F#if __VER >= 15 // __BS_CHANGING_ENVIR$ Z* Y& X' d  [
        if( g_pPlayer ){0 _" U" R2 q, A6 u6 B
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );. C: j. h, {0 o, \+ S
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
' w. m& W0 J4 O  D                {" ^$ V) N6 X% {% x# p! g$ g
                        if( pLight )( }" K8 y( M( C0 y& b
                        {
( l- ^$ B5 Y  @( |. ?+ h% V0 E7 C5 D                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];2 P) X. m4 }( w4 M& S; p& y
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];" i! }# y8 ]8 n! R6 d
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
' [& i% H3 K$ Q+ \6 o
9 }' s* C; [& o) v9 @& O- l; L  ~                                pLight->Specular.r = 2.0f;' E7 X2 a5 G, \
                                pLight->Specular.g = 2.0f;0 z0 c/ ^* `- g9 `' v* ?% @, ~. ]
                                pLight->Specular.b = 2.0f;
$ c/ u, v0 U4 N1 u# w$ S2 v       
0 K+ v9 {6 T- A% V2 d                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
8 X5 ]7 z, ]! }7 i8 Z                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
+ W8 h2 M0 r! V9 W  k9 Q                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 J& L8 w. [# c& d       
) d( R# T1 D8 o' l7 I                                HookUpdateLight( pLight );   f" {' O& m' _9 H1 S
- j) O8 c. K+ @1 N: D
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );1 ]* I3 K6 i5 y6 }$ B! o
               
9 V/ G! u0 q4 E                                pLight->Diffuse.r *= 1.2f;. `& P3 I# ~/ J3 a' {2 {1 r" x+ o- K
                                pLight->Diffuse.g *= 1.2f;1 }' Q4 u+ d6 Z$ y
                                pLight->Diffuse.b *= 1.2f;; m" ]( X2 W9 N4 L8 `9 Z" q

- w# S9 r+ h2 N3 Q; _" w( b                                pLight->Ambient.r *= 0.8f;! P. ?; i% R/ X( {/ [) t9 F1 G
                                pLight->Ambient.g *= 0.8f;! `' J7 a  P8 R- \
                                pLight->Ambient.b *= 0.8f;; w" s4 ^% Q( Q& U  `* F
        6 b+ U( @/ E( ]/ `
                                memcpy( &m_light, pLight, sizeof( m_light ) );7 Q6 H6 k. f/ u% X3 [
& S1 d- s. D  P* F$ G
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);; L6 q( L1 q$ A! i4 W4 |% n2 i
                                D3DXVec3Normalize(&(vecSun),&(vecSun));6 _+ m; N. f( d7 {- ~  a6 Q
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 7 H: P( G$ O) p5 b0 d) {
                                pLight->Appear( m_pd3dDevice, TRUE );
: [& X8 _, j6 Q               
8 U/ d" V$ U% O6 T                                DWORD dwR, dwG, dwB;
2 r1 S& r8 N0 ]! c6 [  ?: [                                dwR = (DWORD)( pLight->Ambient.r * 255 );
; o4 z4 Q% M: a; M: z                                dwG = (DWORD)( pLight->Ambient.g * 255 );1 N; J8 W& k3 x  r' \! \2 Q
                                dwB = (DWORD)( pLight->Ambient.b * 255 );/ X5 D* H- q" W4 H1 h, h# P9 ^7 b$ q
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );" U5 i5 @; a9 U/ F; T8 Y
                        }
. I1 `7 J2 W; `                }
% E/ S% u6 z8 f: ]        }
0 Y0 }+ @9 ]* X9 ?! C8 g, Z        else+ k& J& ^6 G: f& D& G
#endif # r, _9 \' G4 O/ S9 m; s% l

5 U7 h- a. _9 Z# o/ B8 e        if( m_bIsIndoor )! H4 @# G3 Q5 q) d: B; |+ y) _
        {
! t- `" J4 J, k# F) J                if( pLight )
+ e" z1 o) w6 M8 A# k: B                {               
7 i* C3 J, w' r) W$ a                        // à??μ oˉè* $ p% S, N5 o7 `( `: T# f6 x
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
9 A8 x; _- b' s( y/ ?  V/ W; t2 @                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
* T9 n, E& V6 ^/ A6 E0 b                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;! {/ t* b9 E3 ]& L+ K7 I
4 T' u, s5 Z' a0 |  _# Z
                        // oˉè* ??à? ! ~5 s3 P' C1 A3 I
                        pLight->Specular.r = 1.0f;- h7 c+ ~! V" Z, `, U& g9 b8 `
                        pLight->Specular.g = 1.0f;. ~3 v, ~; L# T
                        pLight->Specular.b = 1.0f;: ^; u6 ~4 p( s$ {5 `0 ^* V/ T
                        // àü?? oˉè* . @; U$ a( i5 o8 m) V
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
4 N. C7 p! P, F6 o# p$ G: K                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;6 t# I+ `( q. t% i9 Z) d
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;, |) {! f) H5 G, L, h" O5 u$ E8 l* b
. W: J1 A- q+ M$ _
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, `, G# ?% c) }* U7 Q7 s3 w                        {- ]  d& O" R8 ^0 P/ c' V
                                pLight->Diffuse.r *= 0.6f;1 u- _" n0 l9 S
                                pLight->Diffuse.g *= 0.6f;
! G8 r: A6 J6 M, D% {7 U8 D" C                                pLight->Diffuse.b *= 0.6f;3 P, c( v/ ~0 X  ^/ ^3 G9 w
                                pLight->Ambient.r *= 0.7f;
1 x& M0 W" F9 s  R: D, [$ S" A                                pLight->Ambient.g *= 0.7f;
; Z8 ]9 d" u) W: j5 d8 C& ]+ e) s                                pLight->Ambient.b *= 0.7f;2 X" B, ]2 r4 P3 g" I  J( I$ ~1 V5 y
                        }3 g" l: o  N: r  L/ v' u. J

+ e5 ]+ }  b& [1 s7 o0 v4 t4 _$ r#if __VER >= 15 // __BS_CHANGING_ENVIR* s/ H6 v) }% H
                        if( g_pPlayer )
7 R, l* k& u* \* \                                HookUpdateLight( pLight );
, }2 |1 ]* f) R# R, B/ X#endif8 S/ ?+ E% {( L+ f
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );4 q+ \  F  p; E- ?2 G. {  H$ U

  _/ j. j% e$ A. r  w* l$ E                        pLight->Diffuse.r  += 0.1f;
; z6 V2 e* |5 G7 d, |6 L- S' C) [                        pLight->Diffuse.g  += 0.1f;2 \+ F; h. ]' f2 H- m
                        pLight->Diffuse.b  += 0.1f;
5 s; g2 ?6 ]( c, D5 r                        // oˉè* ??à?
2 t) W0 c4 K( y' c, `; P                        pLight->Specular.r = 2.0f;
  H" _2 ^/ C6 m1 Y                        pLight->Specular.g = 2.0f;! B9 \! r* I9 K2 l5 j: o
                        pLight->Specular.b = 2.0f;
# A* m, t. l' |6 K# Y                        // á?oˉ 5 k2 b9 U/ q" I1 ?6 W
                        pLight->Ambient.r  *= 0.9f;4 g( R; t4 B  V2 O9 g' m2 n
                        pLight->Ambient.g  *= 0.9f;
. O' t3 m4 b0 u1 p9 [- R! f9 c                        pLight->Ambient.b  *= 0.9f;2 b* M' o. |! K: |

, X+ ?1 U7 j4 i, U                        memcpy( &m_light, pLight, sizeof( m_light ) );
1 |+ s# G8 Z; k4 {2 ~2 s/ B                          Q, M" {& y4 Y6 r" S1 M# S
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
$ p' s! M/ Z# K( `: ~$ r                        pLight->Appear( m_pd3dDevice, TRUE );8 R( I8 I& x- s
        - x, ^2 j+ \1 o
                        DWORD dwR, dwG, dwB;- o" L/ m& ~7 B( O$ }( b+ y
                        dwR = (DWORD)( pLight->Ambient.r * 255 );3 m) Q  b2 ]6 o7 m0 U2 d# @
                        dwG = (DWORD)( pLight->Ambient.g * 255 );3 K4 N3 F" W  F) C) F+ F8 Y
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
/ {: [# M+ `- P+ \6 C6 ~4 A, \                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
+ \% q, W8 y# @                }& Y; G6 e5 q* d. f0 t
        }
% ?4 v) d! Y4 }$ ?0 e6 J        else1 U7 g, t& v5 P
        {
* d4 N% N- D; I4 P9 f" M                if( pLight )
# d) ]! W0 R% n                {
* q0 m* K9 h" S                $ V; }4 X6 j6 M! q
                        int nHour = 8, nMin = 0;/ p- P1 n! Q, F- _/ k9 L7 `
        #ifdef __CLIENT- {$ G2 E4 i8 o+ O: p2 u5 s
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. & C5 J. w* O/ ?
                        nHour = g_GameTimer.m_nHour;
5 o" x# c7 v; ^$ p4 b. W                        nMin  = g_GameTimer.m_nMin ;
$ Q  I3 [. g8 r7 S. @( p        #else
3 N% u  U5 X; ^2 o; \                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
8 r& g1 \: `! N! n" Y# ^9 J) f                        if( m_nLightType == 1 )
" v5 P% }/ `0 A7 ]                                nHour = m_nLightHour;
: D; x( w# Q) ~- s, G2 X        #endif' A% J0 ]6 V/ t0 \5 ^0 n6 E2 F
                        nHour--;0 A9 c& y# O3 t) @/ C: u
                        if( nHour < 0 ) nHour = 0;
7 @1 s, E7 t+ w                        if( nHour > 23 ) nHour = 23;
3 [! M. g7 C* p
( R; m1 [9 b& ~8 @  f; K& W" a                        //if( m_bFixedHour )! ^1 v* m+ P5 u, B
                        //        nHour = m_nFixedHour, nMin = 0;
) j/ N- q4 V# j6 s) I                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];/ l: C' z2 f9 P* Y
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];: T5 I! E% N+ G. [) E4 Q

6 c4 C0 k* x  F( s5 H3 h                        //m_lightColor = lightColorPrv;+ e* t/ N9 B7 h3 q) J( A, P
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
* ^7 a& }/ k' i  _  Z! w" D$ Z                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;. k+ M$ e; [: L7 u& u! p0 [; U
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) P7 l: w" j/ ]) g& V# z                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;4 U& B( m2 O% y  j2 D" @* O- L
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;+ Y. o0 q! W% C/ \; m% E2 k
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
" ]( Q, k# }- h: m! L: T                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
3 K! ^" H( I  v9 W7 k9 Y1 C. s
3 W3 {/ R3 \, n( s1 H- g& D                        // à??μ oˉè* / N7 [& S8 N; p
                        pLight->Diffuse.r  = lightColorPrv.r1;% K7 f; g+ z* @/ u, O3 ]/ a, I
                        pLight->Diffuse.g  = lightColorPrv.g1;- ]/ g# @( A' |+ |: s# J  V" d, N
                        pLight->Diffuse.b  = lightColorPrv.b1;
3 u- M# q8 b, l9 k# P                        // oˉè* ??à?
/ u& {! K* J4 `* v5 @0 t: h& a9 h  N                        pLight->Specular.r = 1.0f;; R  @4 W% n3 l% i
                        pLight->Specular.g = 1.0f;+ R: h7 r! `3 P% k, d! X) G
                        pLight->Specular.b = 1.0f;. u$ z3 r- x) r
                        // àü?? oˉè*
1 Y' n# h' L  N                        pLight->Ambient.r  = lightColorPrv.r2;
0 \  X% i5 I# x; ]/ c: z/ H1 t                        pLight->Ambient.g  = lightColorPrv.g2;
- Q8 n% b1 A) v; A$ F                        pLight->Ambient.b  = lightColorPrv.b2;
* O, D, }) X7 l0 J: l1 O
+ x. k, k: f" H* n4 I                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.8 f5 f/ c( X; o) r& ~: W2 k
                        {: P# p3 |9 X- l; i% y5 J6 @
                                pLight->Diffuse.r *= 0.6f;6 ~/ l% g! F1 X: {- V, f
                                pLight->Diffuse.g *= 0.6f;
% f, O/ O9 g: ]* n8 w                                pLight->Diffuse.b *= 0.6f;
7 {' E2 O6 o, \5 k  {0 H' r/ Z                                pLight->Ambient.r *= 0.7f;* x3 F& A% n  E7 w; ^8 @
                                pLight->Ambient.g *= 0.7f;
. ~7 ]# J: A9 O0 r# h                                pLight->Ambient.b *= 0.7f;
% a& K! A0 b0 ^                        }( j6 D  M( v: z2 q
                       
4 D) J- @- ^9 |1 c#if __VER >= 15 // __BS_CHANGING_ENVIR
5 O1 F- Q% G# ^- Y) ]1 c                        if( g_pPlayer ), m& Q4 m4 {' m2 ~' ]
                                HookUpdateLight( pLight );
# w" ^- a' o8 o#endif1 G& Z3 _' I& L
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );6 O8 P: U: R/ U2 b/ I

& l' X* m7 K/ q3 ?, n: W! X" A#ifdef __YENV
, l! }0 B/ n2 ]7 P                        pLight->Diffuse.r  *= 1.1f;
$ [' |6 g4 o6 B0 M% D, @& \                        pLight->Diffuse.g  *= 1.1f;7 M8 N) `* ?  F0 V" _1 L
                        pLight->Diffuse.b  *= 1.1f;
$ O6 w. e& b8 X- O3 D2 q! ^                        // oˉè* ??à?
& |" z% I' g9 H, B8 l. e                        pLight->Specular.r = 2.0f;
' Y: u$ n/ Q* F+ F9 f+ t: j# b                        pLight->Specular.g = 2.0f;
; g' X1 [5 M3 a# G) ^                        pLight->Specular.b = 2.0f;
; Q/ d0 V1 P  o                        // á?oˉ
; \$ E0 F: i# p2 E                        pLight->Ambient.r  *= 1.0f;
+ V2 o; O  Z! F7 B( Z( v  O3 P: {# C. j                        pLight->Ambient.g  *= 1.0f;
6 s2 J  w, X- P  ^: d% n4 @5 S% {                        pLight->Ambient.b  *= 1.0f;5 @- G6 ~( x; G; k! |1 k6 }
#else //__YENV
6 i0 `5 F; s" L. u$ D5 w                        pLight->Diffuse.r  *= 1.1f;
* V/ T8 P+ l! N! G$ w# k                        pLight->Diffuse.g  *= 1.1f;
6 F0 P* D* f1 s- r% w# v6 d) N                        pLight->Diffuse.b  *= 1.1f;& u2 {& W/ R0 {' g
                        // oˉè* ??à?
) a9 Q- L6 `, d& _7 s9 Y8 e, s! ?                        pLight->Specular.r = 2.0f;* Z6 \$ q% [- D  a( q* o
                        pLight->Specular.g = 2.0f;% O' `6 R) A6 d8 \* ^: e
                        pLight->Specular.b = 2.0f;
; e+ t- X4 V. T' B- j1 m                        // á?oˉ " k8 t) n; }  K: ^* e( ?3 p
                        pLight->Ambient.r  *= 0.9f;
8 d7 X4 z1 D3 g2 H" g  k* D                        pLight->Ambient.g  *= 0.9f;+ h* Q  ~& ]2 O2 v, ~2 M
                        pLight->Ambient.b  *= 0.9f;2 F( r- P0 R1 t- R" F3 {. v
#endif //__YENV 9 A# |+ S  L  a
                       
, o5 O( }5 Q, ?$ D3 Y7 G( x- |                        memcpy( &m_light, pLight, sizeof( m_light ) );% }( I: F, ]0 O( H
                        * _1 Q" f- F( X" I
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);- B7 U. R$ U$ {7 U  k
                        D3DXMATRIX  matTemp;# `7 r5 t5 [& F2 |% Z9 T5 l
                        static const float CONS_VAL = 3.1415926f / 180.f;" ~+ f+ B/ n8 o, j  y7 U
8 G" o  H  k& d9 t: G
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
" V3 N1 y/ x; [7 u' v( R                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
+ W% d. J- h7 {: D1 E8 k+ J( G- H                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
& l# S: x$ m9 N# O& I% @6 }, c                        pLight->Appear( m_pd3dDevice, TRUE );
" m9 x* g1 @0 d+ u+ k
% O; Q. P0 L. z/ u  V2 `                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);# |: Q( ?7 Q: c* v1 X9 w+ e- ^3 v. Y: m
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
; J# i6 u* _' D/ q1 ?# p  H                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. |( M. b  u& y+ c& G7 I! m4 e0 J3 M5 d' O/ t( i, j
                        DWORD dwR, dwG, dwB;
% j. G% V" w) r- m2 X% m                        dwR = (DWORD)( pLight->Ambient.r * 255 );# y0 D# r% w: c' F
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
0 v/ _& L& H+ u0 e: G                        dwB = (DWORD)( pLight->Ambient.b * 255 );9 [& Z( }; f: y) c& y
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        : B4 _: `1 u' M- p& ~; Y) p( z, y
                }0 N" J) V6 u: E) g; [$ h
        }
* T/ H9 ^  B% g, f" ~: F: j! N% C; }+ A+ c" P& o" t. |5 l. u
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
: }. R+ }, o2 k/ I" D        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) );3 }5 J' x0 k/ Y: Z. E+ t6 w
        ::SetLight( bLight );* m5 ~% ~7 Y4 s: j1 f

: }9 E: C0 ]: C- w        // ±ao? ?D?í???ó á¤à?
5 `( F& N" P, D; n3 E        m_pd3dDevice->SetMaterial( &m_baseMaterial );8 Z; e& F: c$ I
        5 h9 k4 `; l' \$ O) M5 s
#endif // not WORLDSERVER! i( x0 H+ g- I$ t# @( x% ~
}9 E7 r5 a9 L$ M6 `* q
并更换
% I4 c' F) L. ?# l4 X* _/ [  R: SCode:
# d5 X/ ^' h7 v- I2 ?6 j__FLYFF_INITPAGE_EXT
8 H" g8 L% h5 \4 F' S2 x" W定义: r2 ^+ F# F) e7 @, I, h+ x( G
7 Q) N0 L! o: c0 Y" K8 w; }) K9 x

8 r, a- A% U9 ^" I6 X2 i% V# t6 a$ v- \, U  }
# U5 D- I) W" Z! f% y* p. Y7 ?
现在终于删除我的狗屁加速...  ^% d* c7 O+ h$ l2 s9 Z& \
: x* D( B( C& r8 O- B, ]
- ^& g3 v1 j% ~* |3 e

7 X# e. y1 D5 B- Y8 N; l1 _




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