飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:% M- c- L4 `9 p
尾翼:
4 }7 h9 n" O! J& j6 d6 g
" ~. y% Q( d+ q* `3 B  V- ?代码:. ?! F5 K; D) I/ B4 ~; f" B
CWndAutoFood::CWndAutoFood()
5 `* X5 M2 Z# G/ u# L7 d, y{
1 v( ?2 k6 V" p+ {        m_pItemElem = NULL;  m7 W, q, F& N# `8 j' _4 j
        m_pTexture = NULL;  F* U/ B, r# y1 Q4 }* a* e
        bStart = FALSE;
3 @0 G7 M0 H) ~2 h/ @2 L# [" R- ~}
! l' E; ~- x5 U
1 z) F- ?7 ^/ q1 T- W" l" ~1 TCWndAutoFood::~CWndAutoFood()
1 Q% I+ X& k1 d( Y+ W+ n1 c{
, I5 W9 P, d) Z6 ]% t6 F        AfxMessageBox( "AutoFood ist gestorben " );. `( h" U0 j" O4 f
}( y7 f$ e7 |$ x5 Y. {# X8 T0 n
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
) f7 }/ N  L+ ~" y% a! w{
0 U6 G; |! F6 u; K! y1 w        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );) s% i! z* f* r& i; k8 w9 a
}; N) K! g# F- z' ]. o  Z' S2 z9 w

- m7 I: u7 d& lBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
( N4 `3 J1 l6 o4 m3 P4 \6 Z{+ q9 N: v4 c9 Z3 j- e3 ^7 P" P
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
- Z8 }! _* E; u! A! c$ Z        CRect rect = pWndCtrl->rect;3 z: }9 D+ I, b9 i& C$ Z% K
        if( rect && rect.PtInRect( point ) )1 l( W9 C8 w! E' K2 m+ {6 r
        {
3 T* C. w8 z8 G, z9 s                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
* z) s% T, P* X6 X% x5 ~                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )) A5 V6 f9 O! E; O! h" V; J" Y
                {
% x; o' A; z7 s3 t' p3 D4 s                        if( m_pItemElem )( \5 S: S/ P3 L7 f2 X% D# J
                        {
& H; Q2 s4 t0 D5 s                                m_pItemElem = NULL;- R0 }! W- P1 x% k% ?% z
                        }
3 e0 V$ f/ s, R1 ]' e                        m_pItemElem = pItemElem;
$ u) u* t! E1 d+ z* c8 c                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );+ A' t$ O. f* H4 D
                }else{0 {* X" ^3 M0 Q7 |+ I+ f
                        SetForbid( TRUE );) [! F0 R/ q# [; C2 \. B1 c) v
                }
+ t3 \; }1 N. M2 v        }else{3 n& J  Y0 p2 f' @! V
                SetForbid( TRUE );
* C% e! d$ R! i$ T        }% x+ f% Z" m/ r0 |& x
        return TRUE;% n  S4 W7 J) z, g: L1 S& U# e4 O
}
3 L, E6 `7 ^' R/ [, r
1 `% O+ B- J4 A$ J, f# kBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )+ a4 m' a$ ]6 B0 x' u. Q
{
# K+ v9 Y/ K) |: P5 u$ N        switch( nID )
( o* E! b' W, P. d/ ]        {
3 O' p- d" I# x3 S6 [        case WIDC_BUTTON3:
) ?& b% f' z; b! ~# e                {
5 j6 I9 K" S; F) v$ I& x                        bStart = TRUE;4 Y/ I0 e* z7 m1 }. W2 E& B: j
                        break;
. c+ k- m( h+ z  A& V; C7 P                }
# \( B- z: n. i  g        case WIDC_BUTTON4:
0 w5 y8 d' ]0 \8 j                {
. A8 {, C8 b. g5 G                        bStart = FALSE;
5 c$ X, z8 l2 C2 Z                        break;( b; l( W+ O. L, r8 h6 A# H% W6 c/ g
                }/ R$ J5 ~3 ]. o
        }# _2 _* y0 G6 Q) H
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
: \. N& y# p- ~& B4 X}        1 z- V+ g% J0 t- W4 \$ n
void CWndAutoFood::OnDraw( C2DRender* p2DRender )) [! J( r- S8 i% F8 _
{0 H" |$ ~. O# T
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );$ l3 f& W# p  C  @7 `2 _$ n- p
        if( bStart || !m_pItemElem )7 k3 R* M$ J. [1 L. ?* T+ T4 T" P9 F  p
        {
% O+ L' x  V, L6 T" I. G7 `                pBtn->EnableWindow( FALSE );
: q2 ?7 d* S, {        }else
, ~% P( Z6 |" ]5 w6 O                pBtn->EnableWindow( TRUE );
7 v& N& }" M% Y% z  _- R8 Q        if( m_pTexture )
$ t' H9 j- k* L" W% i        {
4 V% ]( P: p5 A                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );8 H# V# K4 ~7 R8 R* S
                if( wndCtrl && wndCtrl->rect )
* l9 ~1 V- `2 x& p& z& ^; [                {
/ r7 ]0 F4 K9 z6 U1 u0 p                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
3 s. Z' h. F9 k                }4 @" ?$ P* x8 F
        }
. }) B( m% s* @' F" ^}
4 g6 `# E, Z4 S8 }8 |, s: C  _: T6 n4 W$ O9 K
BOOL CWndAutoFood:rocess()
' a& ^7 `$ |! A3 Z" C+ v  G{% L: O4 L7 ^- ?! I4 J( o
        if( bStart )& ?2 T! S& a5 c  f& @/ t1 ^
        {6 s2 c2 ~- W: \. J, I) j
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 ): m; I6 P6 B# t' ~0 l1 a8 `7 ?
                {" W# W3 P8 d$ l7 G
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
1 o% k& m; {# M                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
9 T6 P* y3 {# f; r: U+ i% m1 X                }else{1 p4 F) p0 R, H5 i2 g. u
                        bStart = FALSE;
6 P6 s9 i! C0 C7 h                        m_pItemElem = NULL;8 V; N4 B3 D( T
                }
/ ?. g* s, \/ R/ j/ K2 j4 \( @        }
4 [( A, A( j  M, K+ @5 l- M        return TRUE;
2 R$ x9 r: E' l* E}: _: |! D' M1 Y% D/ W" S* h  I$ }
9 W% x5 ^. p# m' u: x3 ]9 C) u) u, C
登录视频废话:
0 _% M- U8 `! H0 h/ d尾翼:4 n3 N: _# y+ t, b

# |7 J1 c( |! v. ^代码:
% I3 A* g: w3 g7 [2 U9 s% \, K
! c* u  J5 `: lvoid CWorld::SetLight( BOOL bLight )
2 ]+ l2 E7 D7 n; q1 T, ~durch- K, ?- e! _0 A/ x
Code:- L' b, H1 w# d% N) T9 h$ j
void CWorld::SetLight( BOOL bLight )
5 _! c# X- H! |+ k! }{" H0 Y7 ?# `& X) Z# @
        //ACE("SetLight %d \n", bLight);
- S2 X* [# g) k& x* G7 \. i        % r/ }) _- o- x; L7 l7 p( K
#ifndef  __WORLDSERVER
3 ~7 J( `- A2 G: j& w- B        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
9 W- c$ T8 J$ s# f- G3 p$ B        CLight* pLight = NULL;
: F2 X2 O, R0 x& _
( o" H" |; m. V; O: z        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );0 p2 @& w: {9 M+ \' Z

& _9 C4 t0 h/ g0 X+ I        pLight = GetLight( "direction" );
9 j  S  e( v2 I, w& J$ h3 L% c& Q  k/ M- y9 J# t) d
#if __VER >= 15 // __BS_CHANGING_ENVIR! z7 C+ V+ a+ r9 X
        if( g_pPlayer ){- z1 G; P5 I5 L
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
  C4 L- ?" `5 v# V) f. Q$ Z                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
+ S4 C5 S; b& |# u( R, F) R                {: Z5 G5 a7 o0 H% V, R. ]
                        if( pLight )
! g2 t, _( A/ k: M! c& I2 r                        {+ Y6 |/ @" u& G: S" T* b/ l( o: k
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
' H3 _+ \9 \5 b. [  F$ |* K                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
9 ~9 |: \. }- A                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];3 F' j6 m6 r0 `+ Z  c, k

+ p7 |" G3 ~4 S' V" q' n6 n                                pLight->Specular.r = 2.0f;6 R6 W8 Z2 j7 G# S3 @: ^1 I2 }
                                pLight->Specular.g = 2.0f;
1 Y7 O" O4 c3 n8 k                                pLight->Specular.b = 2.0f;
5 J. I/ h% F* l3 u7 i) z        + r; ?( a, g( L
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];8 L/ z7 f0 `! }: y' k: e0 m" e
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
6 L2 N% O$ [8 Q( g; V0 L- a                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
* h+ A/ J6 q: ^       
/ G4 D0 y# \* i$ \0 a                                HookUpdateLight( pLight );
3 z2 K6 B5 V. _: ?9 {3 H3 o& D3 T, A8 M! }! @
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 F4 p5 W) A7 I  L               
. V7 k) T0 p4 v' l/ F                                pLight->Diffuse.r *= 1.2f;( ~/ A5 s' y: F+ `; ?, B) V! ?$ S
                                pLight->Diffuse.g *= 1.2f;$ K7 ~4 ]; F$ s& g# Y9 Z; Y+ Y
                                pLight->Diffuse.b *= 1.2f;
( f& {; N1 b9 b; U! x2 d7 D! ]: `+ w! R5 Q1 K4 V3 y7 I/ c% M
                                pLight->Ambient.r *= 0.8f;7 M" G# w" j- U/ P, i% [) Q
                                pLight->Ambient.g *= 0.8f;
2 F4 [! }4 U5 e. r                                pLight->Ambient.b *= 0.8f;
: H! O0 t. a1 c        ) W7 d/ Y. K& j2 l; h/ n2 O
                                memcpy( &m_light, pLight, sizeof( m_light ) );0 S% ]8 d* ~  s1 {8 Y" x
7 t- n8 r# s" b3 G( B3 Y
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% U  s. @, }2 y2 I& [1 y                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
7 M& v0 W/ y( A& n1 D; C% _( C                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
) M! W, p4 ^' H4 ]$ y. V! [# U                                 pLight->Appear( m_pd3dDevice, TRUE );# B" M2 C; ^& J5 ^8 y
                # t) B# o9 E3 Q- E' M
                                DWORD dwR, dwG, dwB;3 [3 q) |0 i  Z: m* [( a  A
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
; A- I' O, T) Q0 n% K( u* G% \                                dwG = (DWORD)( pLight->Ambient.g * 255 );$ s2 i# B. q4 y# P
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
6 \! A2 F( J+ c' J                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );3 {& Q, C$ J1 X- f; u: r$ L
                        }
: k: c% W$ y  t3 ~                }7 l7 W/ N' E  y4 B5 |7 J
        }
3 t+ Z# s9 l0 _+ f. j) d9 s        else
& K, j/ ~! Z& y1 k0 F; n: W#endif
& _, S* t! s0 n* D* [  T
4 r0 W9 o' V5 X) P7 {2 X$ n. y        if( m_bIsIndoor )1 v  X, d0 k0 v1 J7 N
        {
2 M3 c. F. \/ H2 b2 b                if( pLight )
3 ?7 d2 W' G( q0 {8 g% u                {               
: r' A5 r$ o1 r7 \                        // à??μ oˉè* ' n# @7 b* A% B- D6 i2 r9 [
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;% z/ E2 H: ?0 B8 S$ L
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;, k* k- k* V+ s1 B% O8 g+ ^
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
0 P3 i! ]& T( p% V, R$ S. A$ ?7 B% n1 J* F3 z( y
                        // oˉè* ??à?
4 s$ b) D0 J( t3 R; t                        pLight->Specular.r = 1.0f;; q4 \( V) k4 e2 L4 [
                        pLight->Specular.g = 1.0f;
( J1 e0 d" F! }0 m; [- z                        pLight->Specular.b = 1.0f;# h$ H" i/ u6 m& h; Q
                        // àü?? oˉè* $ ~3 u4 s8 [9 \# \
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;; v* N/ G$ A, Z
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
" w0 a* P% |& L" s5 I                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;$ F7 s% ?; C4 D
' K) ]3 a, s4 j- K2 r( |
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 L, y# Q% V) Y2 J0 j                        {
$ y0 F( J( B9 l% c6 Y                                pLight->Diffuse.r *= 0.6f;
+ r+ \7 a5 d( g9 W                                pLight->Diffuse.g *= 0.6f;' k& q9 G6 \6 G/ P, Z, A
                                pLight->Diffuse.b *= 0.6f;
) H5 o4 K5 l, h$ f" }, A! O- U                                pLight->Ambient.r *= 0.7f;
* Z0 D, s' ~' [/ I$ F                                pLight->Ambient.g *= 0.7f;
" U1 s, y( N; e' x8 o& e                                pLight->Ambient.b *= 0.7f;
' q2 M9 [4 l2 j$ \$ U, A6 Y' @                        }# T1 M. ^- u/ Y" L
/ A! O0 O) p6 U& E
#if __VER >= 15 // __BS_CHANGING_ENVIR
  O* n& X* A/ o1 K# Z                        if( g_pPlayer )
" e" d% y9 h  A% y8 k- T                                HookUpdateLight( pLight );* E! _4 @* B/ Y& q
#endif
- V# \, n  B1 u8 J0 P                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );7 R% \3 q0 k) k+ [

" V% g: L$ t3 i1 C                        pLight->Diffuse.r  += 0.1f;
5 P* \1 ?2 p. w% @6 Z. C) B                        pLight->Diffuse.g  += 0.1f;) O& B" R7 X9 W; _
                        pLight->Diffuse.b  += 0.1f;
4 W# l  n/ P1 @+ g7 w0 r                        // oˉè* ??à? & r8 s: Q7 b7 ~, [
                        pLight->Specular.r = 2.0f;6 T# ^3 B$ M: Y( d8 J
                        pLight->Specular.g = 2.0f;* Y+ t4 U7 L" i+ m
                        pLight->Specular.b = 2.0f;
! E8 m, q! w9 V                        // á?oˉ
% Y. a7 I1 f2 Q) R/ m: n3 y- n                        pLight->Ambient.r  *= 0.9f;
  T( c  \- P% R9 A' b" F( q                        pLight->Ambient.g  *= 0.9f;
& K. |4 O" x1 y+ A0 \6 z                        pLight->Ambient.b  *= 0.9f;
1 w0 U. ?7 I9 K1 q/ I% Q
- O5 A0 t3 R: V  Z5 O; z" j                        memcpy( &m_light, pLight, sizeof( m_light ) );" ^& `5 N: h* L, x  p; C/ u8 I% b+ B
                       
' l. Y4 H, o# I# W                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );* e1 F: o' u+ u2 ~9 e
                        pLight->Appear( m_pd3dDevice, TRUE );
& t9 G$ w1 T8 D        ) f# u/ J- s! g4 g& \, Z! W' N
                        DWORD dwR, dwG, dwB;. W( M0 _7 M1 i& U
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
; A% G" q9 s, K+ T                        dwG = (DWORD)( pLight->Ambient.g * 255 );
2 P2 F+ N# P% A7 N                        dwB = (DWORD)( pLight->Ambient.b * 255 );
8 W, }9 w- n  p$ N! q                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
$ A2 }. [; `8 |8 W                }  L/ I" {' D& @2 b! u
        }
5 D& V- W" f, p2 D( z3 m        else* I" V- i; Q. m4 L0 r( l. \
        {2 r- O6 [; D' ^  h& X' u
                if( pLight )- O9 |/ ?0 }7 n! W5 r
                {1 R. j5 @4 u/ t- v" d2 h
               
6 Y1 I- N% s, ~: ]" p% k4 r                        int nHour = 8, nMin = 0;! ~9 u  c& y* [2 w3 L
        #ifdef __CLIENT* h) R) _# l: {
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 2 ~% T6 x2 g. Z7 P/ v1 ^2 C7 M0 ?
                        nHour = g_GameTimer.m_nHour;
# @2 }5 E' ~' ^0 o6 x, J                        nMin  = g_GameTimer.m_nMin ;
0 V3 l* Q0 ^- S2 ]( B/ ^        #else
6 u5 O# @& k3 Q8 h: g- @                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.  z/ l+ y' T; D# A5 k% c9 F
                        if( m_nLightType == 1 )
9 g6 `3 a: U" {7 i$ H  l/ |2 a                                nHour = m_nLightHour;
+ d# W, `1 [3 _* m        #endif1 a: H2 N5 H) r  o" ]0 y
                        nHour--;: y7 {2 L# }* q; s* S/ P
                        if( nHour < 0 ) nHour = 0;
, {& V! O: V) x, T5 L0 f% k9 q                        if( nHour > 23 ) nHour = 23;) S4 @1 I+ I. p2 K% R- l8 Q$ Q5 F& M1 B
& c1 g- Y) G/ l- ?. E+ T+ o  B
                        //if( m_bFixedHour )
' D- f1 e' b$ q- X6 c                        //        nHour = m_nFixedHour, nMin = 0;
! l& e" _- [5 X+ i! R                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];) G% h, }; A/ ^
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
- z) o+ B4 X- X. `9 \2 v* C2 ?( C/ i6 @  o- [
                        //m_lightColor = lightColorPrv;- Z! o. O1 N) @1 L
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
$ j: T7 i1 E8 H5 |2 J                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
' f1 O4 l1 L2 w: T                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;1 C* Q6 w5 m- s$ i: T) s$ |- s
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* o& t; u5 Q* [+ o7 ~; c) n                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;/ P0 T0 D7 ?  s& R' V2 f/ r8 Q" \
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
  d% l% Q6 q  j  y# i% f( X( W- A' ]                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
6 B+ J2 A" k2 K9 L7 b8 I' E4 N& o3 v3 \; |5 r  g" _
                        // à??μ oˉè*
7 `+ {: w- Q! G8 s                        pLight->Diffuse.r  = lightColorPrv.r1;& ]# y8 a% }& I, L. O' `7 M1 b
                        pLight->Diffuse.g  = lightColorPrv.g1;3 k( Q* n% P  O  t% ]8 M8 P6 G4 ?
                        pLight->Diffuse.b  = lightColorPrv.b1;
7 }2 E0 \- |, A+ L0 c% _                        // oˉè* ??à?
8 V9 d& J; x& }( ]; c6 y                        pLight->Specular.r = 1.0f;
$ F8 M$ A3 A; a* j2 X                        pLight->Specular.g = 1.0f;; h+ @( \5 l' A9 c& H& k. D
                        pLight->Specular.b = 1.0f;1 a6 o9 I( ^2 u7 n; g3 N% R
                        // àü?? oˉè*
" |5 b" t2 S& h$ r7 J! h( B                        pLight->Ambient.r  = lightColorPrv.r2;( _: I/ V% c2 B1 Z( K" ^- O( z
                        pLight->Ambient.g  = lightColorPrv.g2;" ]9 P& r; D6 E2 ~$ \* S
                        pLight->Ambient.b  = lightColorPrv.b2;) L* v" X; B2 F6 |' a& {% M! ]
; L5 F7 L7 K  n, s& ^2 ?( f. M8 A
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 O" H: k5 W" V4 w; O0 a" [+ ^                        {
5 ^% n1 J* F  @+ I; D1 x# f! b, n                                pLight->Diffuse.r *= 0.6f;
- U) e3 ~1 u/ T5 A                                pLight->Diffuse.g *= 0.6f;" m( f& t5 g/ _. }) I+ m
                                pLight->Diffuse.b *= 0.6f;- C% r) T# {+ s8 |0 o
                                pLight->Ambient.r *= 0.7f;
/ @  a; {% L# N+ b& j& i                                pLight->Ambient.g *= 0.7f;
) P3 Y' @  X9 q3 N! Y3 {, Z                                pLight->Ambient.b *= 0.7f;, _/ o9 ?  s0 @/ u6 _
                        }
+ f+ v- F9 v! z* k                        7 H, q& N0 V: c* O
#if __VER >= 15 // __BS_CHANGING_ENVIR
5 c8 G" M( n* N+ s# g                        if( g_pPlayer )8 ?+ n2 s: _! F' \
                                HookUpdateLight( pLight );
1 ^' [  m2 ]5 h- y% o2 K0 x# `4 W#endif
4 m7 h1 K5 _9 q3 ~% J6 X  {                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
( q! d* F) f: G7 F+ e- a; L3 G
#ifdef __YENV$ a! w2 `/ k" t* g, |4 f
                        pLight->Diffuse.r  *= 1.1f;) L' {4 k7 B2 ]% G$ }: a
                        pLight->Diffuse.g  *= 1.1f;% y  m! t! |, C* ~& s; X
                        pLight->Diffuse.b  *= 1.1f;
$ O! I3 Y; `' N' A5 V                        // oˉè* ??à?
. }, G3 T4 G/ j  _6 H1 E9 W                        pLight->Specular.r = 2.0f;1 q4 x1 G) _; z% B( P5 a
                        pLight->Specular.g = 2.0f;
, M3 `, \. A& o" ~2 _( ^/ L$ t+ X                        pLight->Specular.b = 2.0f;' x9 m& T6 h# j9 l; N) m4 c
                        // á?oˉ 7 Q. p/ `7 v  t- p0 E1 K9 j
                        pLight->Ambient.r  *= 1.0f;! W1 n0 ^! s$ V) _' v0 L% j
                        pLight->Ambient.g  *= 1.0f;
- K3 R0 s6 Y& h! H                        pLight->Ambient.b  *= 1.0f;3 ]# ~7 Q, M- S
#else //__YENV' F1 D( ~" U' I' H% N* [1 w
                        pLight->Diffuse.r  *= 1.1f;# D7 l' `" L9 s4 A' B
                        pLight->Diffuse.g  *= 1.1f;# ~* a' x% [1 O$ W7 i9 C4 P
                        pLight->Diffuse.b  *= 1.1f;4 m) N# x) j) \  I) T. C/ m
                        // oˉè* ??à? ) @7 @0 o4 W: Z; w* Z" V
                        pLight->Specular.r = 2.0f;
# Y# q' O/ }) [/ a0 f" [, i2 }                        pLight->Specular.g = 2.0f;
; F/ R$ B' |' W- o                        pLight->Specular.b = 2.0f;& B  |/ V  Z( Q$ @5 ?8 \% z
                        // á?oˉ   F% Q! l9 ?  h5 w; u
                        pLight->Ambient.r  *= 0.9f;
' N0 o6 b7 P7 q                        pLight->Ambient.g  *= 0.9f;2 B" s% a3 ~9 |- z" Q$ N& n) }5 L
                        pLight->Ambient.b  *= 0.9f;7 _! K) ~8 m: Q# ]" j
#endif //__YENV
3 \" P3 L' M/ ], u$ _; o                       
' v* p* d0 x. W                        memcpy( &m_light, pLight, sizeof( m_light ) );
8 u+ g- y# g  b* w) q) ~                       
* o. W) [; x* B* |- R                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);0 b' N+ B% g6 E( y# I- C% ^* T& ?. _
                        D3DXMATRIX  matTemp;  Y$ m) g9 M/ b3 }; r* d
                        static const float CONS_VAL = 3.1415926f / 180.f;
; w0 @9 z; X3 Y, B5 v: c, ~, v, e0 ?0 e
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
0 D/ r% U/ n8 n9 v; B4 ]( p                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
% A, ?' n3 g5 y& y' a3 ?                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
4 i7 i4 c/ B( k; g, _                        pLight->Appear( m_pd3dDevice, TRUE );
- {3 x. g1 j! F: N
, c- n$ a( r* Q( t3 ]                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
( D- l" J# z" f                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
: t8 _* I" N% C                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); : V5 g  f6 |  ]1 e2 J% e
! s* w2 m; M" k  W! U: L! h
                        DWORD dwR, dwG, dwB;
  f' G. z' i2 t! ?                        dwR = (DWORD)( pLight->Ambient.r * 255 );" d/ q8 Y& B" D: Z- B1 v7 z
                        dwG = (DWORD)( pLight->Ambient.g * 255 );/ E: [4 z, u# v+ l) L+ Z
                        dwB = (DWORD)( pLight->Ambient.b * 255 );6 M2 m2 M0 J- @# s- ]
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        ' @" B$ l9 r, k+ d0 e, U
                }( }' ?+ a& p& k2 o4 I6 u, \
        }* L! \8 M9 p6 x+ Q1 _6 C. ^6 B

% q. t7 _  g6 o2 R' Q        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );* x6 j6 F9 I% N+ G0 @0 |# A. w
        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 t. e: f6 k3 l- G6 T4 S" Q
        ::SetLight( bLight );. B7 E( b6 \* I8 x3 n0 y

2 {" s! j) }$ h        // ±ao? ?D?í???ó á¤à? 2 C; J/ {1 T) {: F
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
# j7 b( ~- O$ `# e1 V* i6 \1 T( ]2 |       
: Y* N8 g( c: T' a#endif // not WORLDSERVER- V2 x2 y" ]( ?% l& U2 q" T
}
  x- A9 x/ \4 q' j5 h并更换
/ r/ W! F4 `; W+ YCode:3 j! M9 k) \( }7 ]/ {
__FLYFF_INITPAGE_EXT
% ~7 y5 \( J, C; H定义
* |: q! h$ u0 q0 {0 Z9 G- R0 r, f" _& }! [( W) J9 |, q& K# l
% w8 e+ B1 M$ \# d

- \) Y/ U0 B# ?9 I- y  _
; c3 L- b+ D  m& ?. G2 I现在终于删除我的狗屁加速...* g$ N" r/ w, `2 o( W

6 v. d0 p, k, E8 ]
: W9 U8 F1 E/ Z* S# n2 L% K7 {* l- y3 k4 k  t8 B





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