飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
( T" k. t' A3 W1 [2 T- f. i尾翼:
4 T  l5 h; ~$ O+ i! C* {
: ?& |7 K/ Y: o1 j9 a代码:: Z; a& W) T8 V! Q" F) A6 u
CWndAutoFood::CWndAutoFood()* b$ c. T( b+ B  c
{5 f/ y; V  m! j( X8 o
        m_pItemElem = NULL;
5 O/ @1 o! w& {# V  `. B- Z        m_pTexture = NULL;
7 A( L$ X; c8 Z2 X1 c8 L0 a$ g        bStart = FALSE;' t5 Y6 h) o4 ^& K- w  ~& E
}8 z# P/ {0 ]* v

9 P0 u0 X0 r( A: ?! |) F6 C1 D2 cCWndAutoFood::~CWndAutoFood()
3 R0 W/ }7 ?, c{
6 H# O- M; |, ]. Q" w        AfxMessageBox( "AutoFood ist gestorben " );; y4 I6 M' b9 n' v8 p: o
}
% ?0 E& ]( ^: o& p. d1 K8 j' a* VBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
% U+ p9 I9 O" r- W{
/ s/ w3 V3 ]2 l1 O        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
' }; f2 L5 j4 T}
3 B9 S) D. ~/ u+ l8 e# S2 Q6 l
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
2 r9 C9 L3 q% M/ X{
/ Y3 l$ d3 G" B        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );2 ~: {, f5 g' ~% M9 f( f: ~# f
        CRect rect = pWndCtrl->rect;! Y$ ^0 o* R* o- p1 {0 x9 |
        if( rect && rect.PtInRect( point ) )9 W$ o1 `& ^/ E6 s/ n
        {
2 o7 k9 E) x- C1 U! |9 Y' t/ g                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );2 |+ }8 s" J( j
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )0 j" H$ ]& F2 C  D+ ?
                {; c8 Q3 L& M  |# l9 h- W! r# z
                        if( m_pItemElem )  [* D) n. i1 M
                        {
( p* I- }4 A% V                                m_pItemElem = NULL;
3 d( w* A( C3 g. K. W( p0 K                        }
3 t! i4 ~# R( p9 c% X                        m_pItemElem = pItemElem;
( c3 a. I- Z; [/ A3 {                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );0 D9 O" c8 L1 h, k2 L  R' @
                }else{
, h4 m" E/ ]/ @3 |5 L                        SetForbid( TRUE );
- P: o% I7 s  k/ e" w                }
2 J3 }! {8 N; c1 e$ p. y- |  n        }else{( q6 i, m- G. j
                SetForbid( TRUE );
* [: |' D8 _1 a        }5 a) a' e- Z3 l' t6 H: u
        return TRUE;
) R* Z8 v1 O6 t+ s# g% `" q5 {& z7 L}$ m4 q" Z* v, o: ]
) u7 W! V1 b4 T" x6 O0 [
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )# Y: G6 b+ E! n+ a- i# a
{
8 \( K0 R( d3 C9 E        switch( nID )
" f$ X/ Z3 W, S5 ~( H2 b! K        {* q# Q% p( X/ [) E: p
        case WIDC_BUTTON3:
/ {) E1 @& V# o$ r                {
1 [/ X' E7 A, {; x$ @! s0 J. |; W7 n5 |                        bStart = TRUE;- F3 P4 p: t& ]7 O% c  r
                        break;
8 p5 N$ o9 R7 H! f8 f7 u6 U9 P                }& o- ^4 F. d0 {9 j4 i9 O
        case WIDC_BUTTON4:
% ?: [: G- w- D4 \! o6 N1 H( u                {, [- Y$ C# g8 I( w3 o
                        bStart = FALSE;
5 @2 \/ s( L3 |                        break;
) u# O1 }/ x/ y0 z: M# Q                }
* t+ Y/ d$ M! b: d5 @" R" ?+ ?' @        }
8 P5 {# n( x( A. s        return CWndNeuz::OnChildNotify( message, nID, pLResult );/ t8 ~6 H8 D$ _8 _
}       
( F9 `, a, {" A7 n- P+ V  M3 Hvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
7 |) K" _# Y/ V# {9 X' a! p0 s3 E{) K9 G$ t- n7 v; o9 j
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );8 t0 K, F- u$ k7 W# ^* j$ Q
        if( bStart || !m_pItemElem )
! m& n1 E1 C0 D( p7 _5 A" `        {( [5 o) t( m6 D( T- o, r7 }
                pBtn->EnableWindow( FALSE );1 M/ {' x2 n1 `0 H; y
        }else) W* n# H& N+ f8 e2 V/ D% O
                pBtn->EnableWindow( TRUE );1 h, W  g4 `% K3 A
        if( m_pTexture )- y! ]9 `5 c+ n! G
        {+ F  j. w2 ~+ a. N/ O8 \
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );6 _" f: E. t( E% s( F% C  @0 g
                if( wndCtrl && wndCtrl->rect )* _0 a5 l, Q( t7 Y' O; n% _5 x
                {( e6 j* }1 X: A8 r, H0 k0 r6 B
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );! s1 |& }) \2 t7 B( u
                }
& A; [& i5 W6 t9 Y  m# \3 u% Q        }
5 E: {) ?  z" d0 g- q* V; K: z- P}* c2 T* _8 V" \! |% h* V1 P# d
, x- r3 ~/ r, _- I) {& F  M& f
BOOL CWndAutoFood:rocess()
: l4 H" L( |) t2 T& j5 n' h{
8 @' }/ {9 a  I4 N        if( bStart )
" v4 H* ]/ G, q( F5 Y) y4 O        {
5 z' V) e, M5 R/ j                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )0 w: O6 m& `0 \4 B" y% E
                {
  ~0 i# Q/ G' ?5 d/ i+ \5 b                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )2 m, G, l" L+ V9 H( I
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );# O6 ^" s$ J& h
                }else{$ T2 e# w! S4 i
                        bStart = FALSE;3 N/ U4 ?+ t1 i- n# U! O
                        m_pItemElem = NULL;
. p; C% b3 _2 w                }$ ^" H9 i& t3 v+ \4 R3 X
        }! Q9 _0 p2 N5 p4 B# H
        return TRUE;: T8 b+ t7 t" D& D9 c' X, @
}
# Q& z1 e! k% y; ?6 J8 t# e2 s+ R
( D- D3 a' ~: x0 X, G3 J登录视频废话:! L: L4 ]5 A# t: z* K/ ]
尾翼:
. n6 o4 U1 m$ r+ m& g$ U, [. R; O1 ]: {  D
代码:+ }! ^, L2 p' s3 C4 a5 Q' f
+ o  S- Z" N1 X2 v% F5 h
void CWorld::SetLight( BOOL bLight )8 Z" r& g! A% ^2 h; l' k
durch% R# a! `1 N# @, b
Code:- X1 m9 E) O/ h) Q$ J; Z
void CWorld::SetLight( BOOL bLight )
$ G  A* F3 T" _; o" u2 i7 a3 ~{1 w4 E: A; Y. V5 s* K7 {1 m! b8 O
        //ACE("SetLight %d \n", bLight);2 O! P- P8 |! E2 a" ^
       
: ^5 ~, Q7 Q2 J#ifndef  __WORLDSERVER
' u; W6 i; e( S6 c0 H4 {        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);/ j" \7 o) H; k1 Q( Q
        CLight* pLight = NULL;
2 L9 B" X7 e( s# N
2 I3 E, N$ D( F) V! o, T7 Z        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
& H$ _9 r  @# G( R1 @7 Y5 _7 K2 ]3 a& M& \# i7 n2 b
        pLight = GetLight( "direction" );8 R$ h: d$ J% \1 T# }

! {; U% |7 M& l# c3 L  k6 B#if __VER >= 15 // __BS_CHANGING_ENVIR
8 @- b. \/ Z9 i        if( g_pPlayer ){: i+ [3 `1 s6 G1 f( f
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
* F- }- R8 e" y8 I) ^                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!" y; S1 P3 V* V& C8 n$ Y: J  n
                {/ h" p2 w9 W( z& F& c
                        if( pLight )0 [) `. f: ~9 w  m# D( x
                        {
3 l2 J4 y# \  i                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];8 z$ p7 z( C4 C* Y, I! K
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
, l  {! l3 f# k! e                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
/ L  f$ ]: _0 @( _4 K1 `5 t* ~7 t& R. _' Q9 n
                                pLight->Specular.r = 2.0f;4 h  K' V! m* M; Y9 w
                                pLight->Specular.g = 2.0f;% f7 R& w! E) l; }9 `
                                pLight->Specular.b = 2.0f;
8 w% C; \) p$ k1 |, R1 |       
! l8 d4 H  o! l. R; E/ j( d                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
# A: o5 v( j' d+ c6 I8 e3 a                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];. t$ t7 G* w, u; |" I
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
: w0 B2 d8 v0 t3 \       
% f8 ^0 Q8 f" }8 m                                HookUpdateLight( pLight ); + w- A5 C- x8 Q, S! s4 m

' V3 T" E5 Y) i# f( y                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );6 a2 v* z! @+ \( t/ }* L2 b
               
: J, o, {$ S; e& @) s                                pLight->Diffuse.r *= 1.2f;. @0 ]* _. P' s3 R
                                pLight->Diffuse.g *= 1.2f;  j) E, ]0 E- L. I2 ~
                                pLight->Diffuse.b *= 1.2f;% J, q0 J5 F  V; I0 Q. T

4 }+ g4 o5 n8 [& d; T" Y% @, \( o" m                                pLight->Ambient.r *= 0.8f;
# X: A: {5 k* e8 H3 C/ j) i' m                                pLight->Ambient.g *= 0.8f;
( f( Q/ I* ]/ b9 M% {                                pLight->Ambient.b *= 0.8f;  _( C8 d; k  M
       
! b6 ^+ e( ]. r, ]                                memcpy( &m_light, pLight, sizeof( m_light ) );
4 Q0 O0 A. Z1 ~* [+ D- e0 F# l% _/ b2 P2 f" e9 d6 S$ |" r
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
- _8 F* Y8 Y; D. o) C8 L                                 D3DXVec3Normalize(&(vecSun),&(vecSun));5 X# O# W, y, [& l4 g/ g3 r9 p
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. y" i# `* f7 d$ |; v/ g1 R                                 pLight->Appear( m_pd3dDevice, TRUE );, G$ v5 g2 }/ f5 t) a5 K. F
               
. |6 }0 g' z3 I0 W2 P  \0 t- S8 @                                DWORD dwR, dwG, dwB;& A# M% q/ [% p8 z* n
                                dwR = (DWORD)( pLight->Ambient.r * 255 );- m6 h+ C/ c# a! M6 g: j4 T% O8 Y
                                dwG = (DWORD)( pLight->Ambient.g * 255 );# f; j/ e6 o8 u
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
9 ?9 ~0 ]* {9 V1 t/ N7 ]1 U                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 v2 p+ \6 M  x8 Y( ?                        }7 A+ t0 |5 G! o
                }7 w7 @! m: m9 x% k2 ?) J
        }; P5 W) [( p( l" ^
        else
0 l$ s1 K: ]% D0 C5 u- f- a) }#endif
% e$ ]3 h: l1 [' D, ?$ C. R
3 K" t4 ~9 Q  G* g$ l        if( m_bIsIndoor )" u3 F% x7 H+ U
        {
3 e$ R/ @' G6 B4 ^                if( pLight )
1 d6 `* }4 }/ y- D+ L5 D& c                {                ; \( \" c) u2 X+ k2 V# q
                        // à??μ oˉè* % |6 E; w5 G3 n& G/ s% C# U
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
4 j  D, R+ S+ }/ m2 P$ u. r                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
4 l3 d4 @8 n1 `+ r6 s                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;/ r8 g- A% Y8 x1 k5 L$ L

' ~' L* D, y( ]1 V+ A1 a                        // oˉè* ??à? ( q& `  F6 r: L; K9 e4 R
                        pLight->Specular.r = 1.0f;
1 t  }! \7 `7 @. c                        pLight->Specular.g = 1.0f;  d$ y: \1 m% u3 S8 b/ s# _
                        pLight->Specular.b = 1.0f;+ j" \5 [3 T6 @% w- M
                        // àü?? oˉè* ! K8 l/ q* x$ `: h# P
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;% V" T; d" M: c/ l% C
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
6 S& K! `) L5 a) P                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
/ t6 Y! k$ q8 i! x& c) l
0 K+ \0 [9 z8 E. ^$ `$ s                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 M; [7 x6 N5 Q" @1 U# t                        {
: B! [, G. N! T7 D! W$ d% F# U                                pLight->Diffuse.r *= 0.6f;6 K5 ~: M% |' D; M* B1 f
                                pLight->Diffuse.g *= 0.6f;& }* R+ u% ]% f0 m
                                pLight->Diffuse.b *= 0.6f;
, d, X4 ^9 w, s* y& @7 D                                pLight->Ambient.r *= 0.7f;
+ C# N; Z' H$ C: O9 g. a: X                                pLight->Ambient.g *= 0.7f;- D% T- a1 s0 V; F
                                pLight->Ambient.b *= 0.7f;
# I. c- Z7 F$ ]7 X& M                        }) p- m. W/ W; v/ |( {
! E# D  J  ^8 E2 t9 Y" K
#if __VER >= 15 // __BS_CHANGING_ENVIR
' _' J1 O; E8 r/ v                        if( g_pPlayer )' P2 A1 M) G# p+ {" K
                                HookUpdateLight( pLight );# Q; z9 P& g5 q: ^6 T2 P
#endif
3 n6 f  p4 ]2 d5 `$ `' W                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );" e- i, N1 k- m3 j7 ?

# H' b; K* X* f4 Z, G6 H                        pLight->Diffuse.r  += 0.1f;
1 e7 F+ n  i( l7 A                        pLight->Diffuse.g  += 0.1f;
; [* l4 `( ^1 ]9 r# n7 c                        pLight->Diffuse.b  += 0.1f;( ]& _" L) ?% D
                        // oˉè* ??à?
5 j" j) v$ v) ^( b$ [                        pLight->Specular.r = 2.0f;2 |- q' j8 B) y) \0 ?3 u
                        pLight->Specular.g = 2.0f;% e% K2 H! _! M/ ~: e' I
                        pLight->Specular.b = 2.0f;
9 i" P9 I+ m- M, H( c                        // á?oˉ ) p6 Q5 q# e5 x- a' G
                        pLight->Ambient.r  *= 0.9f;
( j3 i/ s- @; Y  n% D                        pLight->Ambient.g  *= 0.9f;$ m1 ?. M1 m. [
                        pLight->Ambient.b  *= 0.9f;! m' v/ ?# ?' p' r+ l+ F

# `! c+ O- ^& _5 F2 j) Z2 p6 H: O                        memcpy( &m_light, pLight, sizeof( m_light ) );4 p1 \6 a7 m$ m3 }" i; g- G) I! [: |0 W# N
                       
7 c8 i  q/ B  Y5 s                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
' m/ v" T- h6 U2 I/ ~& D                        pLight->Appear( m_pd3dDevice, TRUE );
+ D9 a4 @1 ~! ~: u0 Q        0 l2 ^# k( u$ o
                        DWORD dwR, dwG, dwB;
0 A* L+ N' s6 b( Y* i/ h  J4 s                        dwR = (DWORD)( pLight->Ambient.r * 255 );5 `# k# H% i8 c% ~& i1 \
                        dwG = (DWORD)( pLight->Ambient.g * 255 );% ]# ~( f4 W6 K
                        dwB = (DWORD)( pLight->Ambient.b * 255 );% M1 h; G: B- P9 [$ }$ X/ M
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );3 r" D3 E; D: r; I
                }- T8 R. |8 ]0 E0 ~: n% S, P
        }& @! m1 H( X& t) Z) L  v% ~
        else
. P- K& u% D' q5 Z% l; {) B' T* z6 ?& {; g        {
9 [2 C& Y1 B4 s; e8 i                if( pLight )
# V( v: Z' |: D+ p' c3 r, U                {
& b& z5 ^# _2 Q5 a3 q& f, w                6 b1 E$ E0 z% g! L/ {
                        int nHour = 8, nMin = 0;9 N+ O. I  u- `% }3 m1 `# P
        #ifdef __CLIENT
& Y- ?* t" A6 I9 _; R                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.   y* O7 a, U2 w+ t( \
                        nHour = g_GameTimer.m_nHour;
; |5 a, g2 l# b1 [                        nMin  = g_GameTimer.m_nMin ;( m0 t6 h$ n5 s6 ~5 h
        #else
& r5 ?& Z5 S& t                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù., O7 u# ^& A5 i9 G% s
                        if( m_nLightType == 1 )
5 w1 l& ~- _" \. n9 R                                nHour = m_nLightHour;  j7 |& w" r; ^5 v- R/ o
        #endif* `. {, K" m% q5 h/ ]7 o9 \
                        nHour--;' y, K8 m6 P$ y: f1 I# I: P
                        if( nHour < 0 ) nHour = 0;
. e' Y$ K; B4 {0 _3 o                        if( nHour > 23 ) nHour = 23;# W% p2 p, [: f5 h  |

6 ^6 ~6 w! i) f- f! Q0 k! W  y                        //if( m_bFixedHour )! m& c& J8 \) b% l, w9 L0 b$ C
                        //        nHour = m_nFixedHour, nMin = 0;5 y$ V: @8 N% C; w, ?/ w- ]$ G! ?
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
4 e- R. e9 b8 x5 @  F9 L/ I3 W1 `; f                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
) h. V: _, E+ O9 J# o1 f7 h4 h2 @! y6 ^, g; K8 j& j  z& V. a
                        //m_lightColor = lightColorPrv;
  ?2 |3 \5 @: o9 T: f0 h* z% Q                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
6 R: ^! N* i2 N# o, E& h' r                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;4 j' u: B% ]9 E0 {7 @9 \0 Y4 r& _& K
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) H2 ~) s) P6 ~1 h3 d: r                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
' @7 V' N+ L6 f1 L                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
  ?! Q) G3 T) @& e% Q                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;6 n6 a0 J+ w4 b# R3 m% O1 o7 v
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)9 V# h  T# k; m) F9 G
2 y: I9 e0 @  W
                        // à??μ oˉè*
- k' i  A/ @8 W( r                        pLight->Diffuse.r  = lightColorPrv.r1;
2 o$ }- R! M. i7 S                        pLight->Diffuse.g  = lightColorPrv.g1;
! b2 s7 W  }+ O3 \6 t                        pLight->Diffuse.b  = lightColorPrv.b1;- J' `  T+ u/ x* Q
                        // oˉè* ??à?
6 b/ w' d, @" Q( z  M                        pLight->Specular.r = 1.0f;1 Y" f+ }8 H/ a
                        pLight->Specular.g = 1.0f;
2 v2 {4 N, A: T                        pLight->Specular.b = 1.0f;
  l1 W( @) L2 b6 Z$ g                        // àü?? oˉè*
; u, g6 Y$ [; |2 A, S9 i+ p  i. w                        pLight->Ambient.r  = lightColorPrv.r2;
8 Z3 }& j8 s% h. Z- M' s# k                        pLight->Ambient.g  = lightColorPrv.g2;4 R! N' j" m0 m* r3 h
                        pLight->Ambient.b  = lightColorPrv.b2;
2 R/ S& r; h% o! I7 m! n% Z) v
, \( [( k0 h* o. @0 y  V- R+ t                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
$ n; t$ C. n0 T                        {6 L/ u& t8 B& \  h7 h+ _7 O
                                pLight->Diffuse.r *= 0.6f;( n! z, ~/ S( U1 Z( g  l2 t1 [* J
                                pLight->Diffuse.g *= 0.6f;
( m8 {7 z( B1 N5 j0 G) w; [* W                                pLight->Diffuse.b *= 0.6f;! v) x$ p7 }" f. i% a: R3 y
                                pLight->Ambient.r *= 0.7f;
: Q# T7 S, F0 V5 v( }                                pLight->Ambient.g *= 0.7f;
3 w# p% m6 T# l) i                                pLight->Ambient.b *= 0.7f;8 [( j7 U4 h( D! W  j
                        }
. P& Y1 o, G& E) c0 @5 n                       
- K4 i* v1 N: a. \; L#if __VER >= 15 // __BS_CHANGING_ENVIR
: I. ], j% Q) o3 _- F/ h                        if( g_pPlayer )/ Y( z2 j/ H- I* Z8 u
                                HookUpdateLight( pLight ); 2 v5 T8 ], g6 Y( H: L% C3 C
#endif
* Y5 n0 `+ Z0 v, ^" a  T$ ~                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 W; t/ f8 l) f
; S8 D( A! E" }$ c7 Q#ifdef __YENV1 b% n6 l- i5 u0 _
                        pLight->Diffuse.r  *= 1.1f;
% Y# r& V. I7 M+ ^0 R% _                        pLight->Diffuse.g  *= 1.1f;
9 n8 ^  K7 @8 N' s% Y1 r. J2 W# E                        pLight->Diffuse.b  *= 1.1f;
" ?7 }. m" \: w% c                        // oˉè* ??à? ! A8 q7 k( }2 m& v! G
                        pLight->Specular.r = 2.0f;
, ]0 r. r- C( F9 f5 |- w                        pLight->Specular.g = 2.0f;
  b) m) d7 e; a. T  O& _                        pLight->Specular.b = 2.0f;9 \) q. G. s; }( c. ]6 X: ]' C6 A# ]
                        // á?oˉ
2 _/ p$ @: ?6 G7 c% F1 ]                        pLight->Ambient.r  *= 1.0f;
7 A" g8 _: w% [7 ]  P  A                        pLight->Ambient.g  *= 1.0f;
, s& J5 `3 a3 E; }" S                        pLight->Ambient.b  *= 1.0f;
, U9 T; M) O7 S! C" f. Z* L/ `; W#else //__YENV
, Q7 e2 W" P: L5 i. S+ O                        pLight->Diffuse.r  *= 1.1f;( l: x: J9 s/ m, l3 ~; F
                        pLight->Diffuse.g  *= 1.1f;
+ _( }. U1 f, p) r8 ^                        pLight->Diffuse.b  *= 1.1f;
  A( N! _- b  {; C5 d: f! |# M                        // oˉè* ??à? ( l  ?4 P/ Y! Y
                        pLight->Specular.r = 2.0f;
8 H' Y$ ?# _6 l  m& I3 a9 v5 |                        pLight->Specular.g = 2.0f;( @# [4 S; V3 X2 Y# i
                        pLight->Specular.b = 2.0f;) v0 [7 ^0 ]( u* b
                        // á?oˉ $ f) b3 A) U; X" j. `/ B
                        pLight->Ambient.r  *= 0.9f;
! f/ a: V- _, y+ z2 X                        pLight->Ambient.g  *= 0.9f;+ c& }8 [! x) S2 V2 B) N$ f6 a
                        pLight->Ambient.b  *= 0.9f;
+ J+ P4 |9 v9 k  d#endif //__YENV
0 t7 f4 K' \8 r7 T6 w0 }                       
% ]! O* b6 S# D$ ~                        memcpy( &m_light, pLight, sizeof( m_light ) );
/ A5 c2 z. i7 N4 w                       
" ]* g9 n; b9 M; B                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);/ Q( l! T& M7 w/ l1 s, l7 a
                        D3DXMATRIX  matTemp;3 f9 x# X5 Q  F7 o# ^' F/ r
                        static const float CONS_VAL = 3.1415926f / 180.f;
2 R' m& f+ Q( t) v
& m5 }7 [# t) f) o3 Q& d                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
/ _. u3 {/ [+ g3 T5 C                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);4 W, b- X4 {8 N% ~$ f1 ~4 m
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 9 Y; p' w$ |9 Z; g5 }& j
                        pLight->Appear( m_pd3dDevice, TRUE );7 }; F- h! U3 H. H
0 X. g( s9 }5 ~* y
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% ~1 N5 p: V5 m' n+ {! W                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));$ u/ G/ |! E; A: n4 B& j9 j
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
  f( |4 b4 h) G# n; E! {) Y7 [. K) @2 ^, r
                        DWORD dwR, dwG, dwB;4 X0 D) d& A( r2 f/ j
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
- q; C: c& {3 b# k/ j; ?& r                        dwG = (DWORD)( pLight->Ambient.g * 255 );
! |! x& E" S! K- h# v8 j! J                        dwB = (DWORD)( pLight->Ambient.b * 255 );
3 [! U# A2 G0 @% J! e                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
# M: w# M3 Q" m, o2 l' y9 z                }
8 [& F9 K+ K0 K% \        }
( M3 t: t* \3 A8 F, y$ I! ^% i& o
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );1 N0 j* N/ V4 f& q: w/ [+ A
        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) );
) V8 o1 Z0 }/ f3 I6 y: q/ z        ::SetLight( bLight );
8 ~. p# a& A8 p: a: e
- D, e" f, ?( n. x' u7 |8 A        // ±ao? ?D?í???ó á¤à?
: H- d* x+ Q: P8 C! K* |        m_pd3dDevice->SetMaterial( &m_baseMaterial );
+ r* y# m4 L4 R' y; `5 }$ I        / U  j# `- s$ O& r
#endif // not WORLDSERVER9 g* J6 C9 x: d# \
}
' t" e: J/ T. r' {并更换- r' @4 t$ @8 E$ z
Code:
" o" `& m) j' e8 k- q. }- U1 M__FLYFF_INITPAGE_EXT
$ H8 l0 \; v6 b+ o5 s0 v6 G, w定义
: A6 t6 G5 {6 `
% n! i, {# s/ J& w2 \/ k, L# \8 b. _2 Q' u. T$ p- t
5 b0 B- v3 |6 _* t' A
7 c# ?+ M) g" R! m( |3 r6 |3 y& N8 `
现在终于删除我的狗屁加速...
  S" k1 a" N3 Y. e+ A0 N2 Q$ G! B. }: h- Z. ~; K/ z
/ R7 G# W4 q6 Q* w# o  f; d* A

, S+ }% j3 C( d. E, t2 K: o; `




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