飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
# L- r  m6 `+ ]3 g9 {8 k尾翼:
1 l0 o/ n  H$ T2 Y3 B0 G
/ k8 r* v0 F7 k代码:
# m, l/ @* X* v. \5 a0 zCWndAutoFood::CWndAutoFood()
- u! R/ Y9 V& S5 b& }{& ]1 Z! O. q( X. |0 _% U
        m_pItemElem = NULL;
. O" P) n+ N9 Y3 d: V        m_pTexture = NULL;
4 t7 R) |& Q/ x  B* Q& M6 t6 a        bStart = FALSE;' S, W2 |, n( a+ }( p
}
9 E! m: J2 M, O2 Y3 o# _
# ?, f6 |1 Y* ~# @( S$ x+ PCWndAutoFood::~CWndAutoFood()
$ @, ?+ n& h, |0 S{
6 v0 z: |: K" _/ [( k        AfxMessageBox( "AutoFood ist gestorben " );  W; p. f$ o4 f0 _" r+ e! ?# ~
}5 X/ G2 G; n( ^  n- r/ ?$ E
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )5 R, h  F0 q' p8 h) l' w
{
7 w  i" \6 U& u, Z! R        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
3 _) [  ?# M2 _, X  J1 r}9 l8 E  l. H3 V. X5 `
/ ], A+ Y- Z5 A2 n2 M! B. ^
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )5 a- E2 D+ q$ N" q4 t! V' |
{7 s9 b$ v# A3 g( {' n8 A4 f) p
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
+ }1 v. w3 b  Q        CRect rect = pWndCtrl->rect;* b9 |* `1 A7 m& ]/ V6 A: z
        if( rect && rect.PtInRect( point ) )$ z0 s! E' r# Z, z4 B- a2 Z1 u. m
        {
5 P3 w# y4 l& E- }6 N                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
& q& c- I3 A1 f# e                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )4 R6 u2 d7 e" ^9 J# \
                {0 x7 ?$ l5 p* a3 ^. t! F9 h: T
                        if( m_pItemElem )0 i, T3 I+ v& [9 N
                        {
; V4 ~; j1 J' v6 c                                m_pItemElem = NULL;6 }2 _$ r9 B* [  N; g2 ~
                        }
3 N; x' A* ~: F3 x9 a& X                        m_pItemElem = pItemElem;9 c* p6 o- m% S* C
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );8 @8 C* D3 [- M; w* m; a
                }else{
& |2 a4 c4 I3 Q                        SetForbid( TRUE );. D7 l6 X% B: y5 }& w, n& P7 K
                }! c* Q; ~) z% h
        }else{' I) C  H* _! C
                SetForbid( TRUE );4 L7 l0 v% S  c, X5 n1 I
        }  b5 L* K' e* E! X1 g. r8 j
        return TRUE;
6 O% }3 Q  z  K}) k; R) T$ {8 }

; {( }6 [" d0 M4 A9 NBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
" ^  Q8 i1 k* i{
' U$ n; v( O* n        switch( nID )4 h/ x* M8 u# e1 c2 M+ H& k
        {) h0 F0 r5 X# t* R& w# h% h* P
        case WIDC_BUTTON3:
5 C& h9 i. J: }/ K. F                {
9 k, E7 f4 H% q6 n* {                        bStart = TRUE;! L+ g! e% U+ O, e; v0 v
                        break;
' l4 [! l' t' x# L: Y0 C$ E/ ^# O3 v                }7 t* t, e, s7 C
        case WIDC_BUTTON4:
9 N5 K9 _- t6 P* _6 ~: S                {
6 s" g1 T  e6 V# [# {" h1 G                        bStart = FALSE;; J' w7 K$ d8 g  D6 |3 `6 A
                        break;
& m% o" w" j" w7 B# y, {                }
& n. o' e* u5 H: G        }) W7 l0 e8 Y; `# @/ ?& P
        return CWndNeuz::OnChildNotify( message, nID, pLResult );5 J- J4 w8 ]% v' ]- e
}       
- |1 H1 ~! W$ l9 Jvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )/ Z7 e4 X: V+ K  d
{) D1 E' G' ~# e7 t) t! `6 }3 V
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );. j  h1 Q) h3 T9 S6 o
        if( bStart || !m_pItemElem ); Q. |6 B: T: s9 i0 m: w5 E5 x+ {
        {
2 ~% P! S) R- Y$ `5 J  E) n! T9 \& V                pBtn->EnableWindow( FALSE );
/ e3 k. ?! o0 n. T- U; ^0 U        }else
7 _  u7 G9 H" h% {: v6 j) ]1 p1 @                pBtn->EnableWindow( TRUE );$ _  |8 v1 t9 S8 G* a, K
        if( m_pTexture )
; l5 z( G$ U3 t6 L        {: R, f& m. g/ H9 o, C
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
% _- y7 o3 S7 o$ D/ ?                if( wndCtrl && wndCtrl->rect )7 M' X0 z6 I2 w" G  x& b( i, O- @
                {
; O0 y0 w( ]# e" [: {                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
+ q& e/ n" c; \; g                }
. n( `2 v' W. e0 y  {: h' F        }5 s" \' M2 e: H( h0 P8 U
}+ x) T% d$ X3 I

: S" r; c8 X+ M* R% a- Y  w5 yBOOL CWndAutoFood:rocess()# _- b4 r, w% C4 P2 N; c- r% c
{
+ v' l4 j* m1 h        if( bStart )$ }2 C+ `  F) v2 V& r
        {3 P( z: k; C2 ?. r( y9 d
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
, Y4 D! B3 L" h: Y; Q" [                {
7 I- X8 x7 b8 S& s, 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() )5 p1 N( P7 ~8 x
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );$ e$ j: k# F+ C6 x  k: X, z, L% E; u; T
                }else{
4 S8 B& B7 `6 D) h                        bStart = FALSE;7 q' |. @0 _: N! c7 R% E' A
                        m_pItemElem = NULL;; v* G, l+ B" W, S3 Y) d
                }9 w5 {# [7 J2 _% j# W
        }# W& @) Z& \7 I# `2 ^
        return TRUE;
/ Z2 B, Q5 h" L  v}
( A! t# Q' v% h' X/ M1 [# C' D( C) b& N
登录视频废话:
9 m5 X/ v& a+ a+ Y2 C2 X  S尾翼:
( z8 r. U! _5 W3 A+ |: c5 z. m4 F3 j! x1 O
代码:9 B7 ?( ]7 B- u8 P/ q2 ~; h

' j7 M9 \2 M% U' N2 y% |4 N2 ivoid CWorld::SetLight( BOOL bLight )' D* D4 s: S$ K' h7 G8 E1 M; l* K
durch
. A3 _( K- f& s3 ?Code:
4 l1 H0 q" H3 W; Wvoid CWorld::SetLight( BOOL bLight ), Q4 J! |/ g6 B, v
{3 k6 Q5 h+ P- o2 ^7 e' s
        //ACE("SetLight %d \n", bLight);
; m" ?6 n9 y; ~2 k$ p, l" T# |( z( L        % a7 S) @7 J" k2 y1 h0 Z
#ifndef  __WORLDSERVER 7 Z5 ?# h( n; G; C% n) e
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);  g3 \/ ?! q/ Y6 l
        CLight* pLight = NULL;
0 l5 p+ t4 p1 }: M/ f7 b$ s
  W4 Q/ \1 {) I' ]8 f2 U9 n( V        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
, H. j" Y% o/ r  h
( K* `" E4 T0 S1 `2 N5 e        pLight = GetLight( "direction" );# b/ G. ?: h3 W& ]8 g, y. ^

( J' R1 q) k% ^, j( _7 V#if __VER >= 15 // __BS_CHANGING_ENVIR- t" R0 m# b  D/ z; N8 K0 `0 Q
        if( g_pPlayer ){" n9 B4 K4 Z1 G
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );- W/ d1 D) \. j9 y
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!% N" Q& }7 }) c1 A( H
                {; {+ Y8 N' n9 B& j8 m% P, w
                        if( pLight )
  |( k/ i: t& |) Q                        {
" r1 R* c1 X$ g. Q( g" G, _                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
+ m6 o3 ?5 g* Y2 [, K9 j$ I                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
) N) D" @, r' U1 l# I                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
! f) ~, \, U2 w5 t2 h3 u: H; N( P% ~" E8 `# d& W, D0 i. \
                                pLight->Specular.r = 2.0f;
1 \. w2 \3 A6 i0 X% f                                pLight->Specular.g = 2.0f;
( S, i; d- r% E( K; y" M8 s5 a7 m6 I0 W                                pLight->Specular.b = 2.0f;
0 t  P6 L% Y# [3 u/ i; Y3 q6 I$ b        ) R* w+ L% i! Q5 ~$ ?2 M8 e+ r: S
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];4 G2 U3 H4 r% M# U% E. `9 |  }! p
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
9 S& R) s9 D' I2 C& ?& n7 s                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
2 _' B- j4 m! v* ^" u# n) q       
8 j2 ~$ G; R8 w3 O9 m                                HookUpdateLight( pLight ); 6 m; t; U+ w* Y2 i

$ k# e# q3 G0 ]0 Y! t( z                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );( m- d9 U9 j; \1 P/ F# u
                ) t8 t& v2 H4 p1 f/ ^# H
                                pLight->Diffuse.r *= 1.2f;
7 k/ h4 Z1 P4 U# q( O                                pLight->Diffuse.g *= 1.2f;
7 t3 p2 e0 |# ^- T( i                                pLight->Diffuse.b *= 1.2f;( @5 y8 k0 e- k/ O# ^
3 m: m3 U- c2 \; y9 O  l4 F$ `- s. r
                                pLight->Ambient.r *= 0.8f;; P( f+ I1 N7 {+ V5 l" v7 j( T
                                pLight->Ambient.g *= 0.8f;+ g# u' J( m* D# J0 K% h
                                pLight->Ambient.b *= 0.8f;
+ \! x* \) O; m) k8 z9 J+ ~" `       
0 U- }/ o2 i) ~6 B' T                                memcpy( &m_light, pLight, sizeof( m_light ) );( I" a/ n* l" \, M6 a0 Y
) ^8 _; Z) f& @$ C# R2 \' X
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 X* @4 V; W4 H, t2 ~# Y9 [3 D; x                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
3 @' m4 M/ R( O* [( ]+ e6 v                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
- ^7 R" l: b4 G* s  x                                 pLight->Appear( m_pd3dDevice, TRUE );
8 J2 l/ M+ @, @               
" z# e0 V9 y7 E; q) i* ^0 i0 k2 M                                DWORD dwR, dwG, dwB;
' n, g: C3 Y! G4 W! ]7 H                                dwR = (DWORD)( pLight->Ambient.r * 255 );
4 d, R3 ^6 N0 U0 _1 \                                dwG = (DWORD)( pLight->Ambient.g * 255 );
, A2 \8 C6 ?$ p+ s) e; z: P                                dwB = (DWORD)( pLight->Ambient.b * 255 );
+ u+ o% e: F# o4 @4 e                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );- [: c# ~$ x% i1 j
                        }& c0 L" {& q, p1 V
                }
9 Z: D/ V: n$ _        }$ z& @4 f$ `$ _# g- ?: B( ?
        else
  D8 H6 Q" v# i4 {' w1 E#endif " U' y* m) @* x2 |% t" F: R
$ E% G2 z6 e6 l: G1 B* M
        if( m_bIsIndoor )8 _( X, Z# {- L4 a
        {
5 {7 ^) S- D. ?6 }                if( pLight )3 R6 T! w* s1 o  a9 I
                {                / N$ `  q- Z5 b
                        // à??μ oˉè* ; `) R% S" x2 a& ^9 C
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;: ^  ~* G. l5 C( D$ n0 b
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
: B0 y# `$ r3 D! z  S$ [- y                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;: H- H: v* K- S( k* c
& z- M: Q8 _0 ?1 g$ k
                        // oˉè* ??à?
) J3 ?* M9 u; b% d                        pLight->Specular.r = 1.0f;4 ]1 R9 z& K5 y, F- [
                        pLight->Specular.g = 1.0f;
) L9 y# ?8 \5 Q9 h                        pLight->Specular.b = 1.0f;; C, x$ r) F% h, `2 V. k4 ^( W% v
                        // àü?? oˉè* & x* B, o$ G( c9 k8 O
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;% I. {; f- x7 X$ u' I
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;% k! y, z. Y, N, E0 f6 G
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;) ?: X. V. E1 ^4 J  D5 z8 J8 n8 b
7 J* ^1 Y/ k. d
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
8 f* W$ P: I6 h4 S- E                        {% a4 [; X" a5 r+ J5 R+ F
                                pLight->Diffuse.r *= 0.6f;; r1 _1 x1 ^% \" x$ j% d8 D1 g$ i
                                pLight->Diffuse.g *= 0.6f;
9 B( m8 z+ j6 O5 [0 \: }0 T0 X                                pLight->Diffuse.b *= 0.6f;% s8 y, |7 t' \; [9 X
                                pLight->Ambient.r *= 0.7f;
0 u+ w* d6 r9 F$ W                                pLight->Ambient.g *= 0.7f;
+ |1 v. x3 V9 \. S                                pLight->Ambient.b *= 0.7f;. Y$ b% o1 x, |! a1 Y( y
                        }
3 b8 p' K$ D; Y4 a# U8 a* M6 T
# A$ `3 _1 i9 J' a- s1 C- O! U+ ~#if __VER >= 15 // __BS_CHANGING_ENVIR$ R" e# j9 S0 T/ r
                        if( g_pPlayer )& e$ Q/ @" @: X8 u! u, H0 \/ w
                                HookUpdateLight( pLight );$ H2 I- h- y2 M2 a! Z0 p. V
#endif
' ]5 A2 ~3 w! Y, j: d1 a5 X2 v3 m                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' t: H4 m) X' a3 A2 i* o1 U5 s
# w% W' l" d' Y) @) i; i7 P: `) l" ?                        pLight->Diffuse.r  += 0.1f;  m3 o; r0 N) F" o7 G' |
                        pLight->Diffuse.g  += 0.1f;
+ u" p& c. C. a  n$ J" ~( k* u+ |, c7 d) A                        pLight->Diffuse.b  += 0.1f;
' ?5 p8 t  @% n% o                        // oˉè* ??à? 7 }. b- I, k7 i' X! e  N& Q) l
                        pLight->Specular.r = 2.0f;
' E2 i( ~5 h1 ~                        pLight->Specular.g = 2.0f;
! ^0 V8 l) \. u# i4 c0 M                        pLight->Specular.b = 2.0f;
6 }) _9 a4 {, d/ X1 W                        // á?oˉ
3 f4 u3 O# r  X7 q$ Y                        pLight->Ambient.r  *= 0.9f;5 C/ ~& O* E5 [5 }1 W: H7 _  s
                        pLight->Ambient.g  *= 0.9f;
3 Y( C& P7 o- p, B+ C: J# p                        pLight->Ambient.b  *= 0.9f;
$ n  {6 L% C. P7 r- V. d4 W( W6 }6 O2 }
                        memcpy( &m_light, pLight, sizeof( m_light ) );
7 h+ ]# g! L$ ~! y4 K                        ' W! Z2 s3 G: Y
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
4 |$ i0 W% V8 W) n6 D                        pLight->Appear( m_pd3dDevice, TRUE );, }# y9 A2 e; j) v+ }  t
       
9 w& ?9 b5 ]# X4 C                        DWORD dwR, dwG, dwB;
# D9 D5 ]& V# H8 Y. X. Z                        dwR = (DWORD)( pLight->Ambient.r * 255 );2 |2 ?! H3 g- A( W) U
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
) d- @/ X2 A: g8 z: P4 p% }6 |                        dwB = (DWORD)( pLight->Ambient.b * 255 );
$ r0 {* \" H& j7 U# d; T0 q2 e                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );1 L- p  K  J. J$ G( ?6 L
                }
0 B0 p- S& ~1 i) ]        }3 O9 h: i7 V4 d0 G) h, [6 ]
        else
" q( E/ ]5 ~, Z" i        {
) H1 D" ^% i3 A, v- D                if( pLight )
' ^( N- q8 d% ~                {
6 y- I6 j/ G4 p/ x) D5 Z                5 g" _7 R6 }* S2 ]0 R
                        int nHour = 8, nMin = 0;0 p) {6 Z4 _  d+ B) ?4 i8 x
        #ifdef __CLIENT
" Q: |! S  L$ N' |0 c: S1 m                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
' @, R" X8 i3 @* f0 o  Q+ Q( A% i9 G                        nHour = g_GameTimer.m_nHour;+ _8 L# \) P% b! e( N
                        nMin  = g_GameTimer.m_nMin ;1 V! V  a2 u2 I+ Y4 k  z( X
        #else
& D& P9 F1 y% W( ?7 e                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
3 y2 q  K$ J' C7 ?) s* F0 M6 ]                        if( m_nLightType == 1 )
/ j0 z' m' X: l) N1 g                                nHour = m_nLightHour;% f0 l% i: f. F5 g5 W' E* ~
        #endif% T7 S( m+ c' i' A: H7 y5 z2 T
                        nHour--;# |* U9 |3 i1 v5 o+ Q3 W% P
                        if( nHour < 0 ) nHour = 0;
; s9 r9 M7 @: l6 @                        if( nHour > 23 ) nHour = 23;
  j# N( E7 ]- K* B1 p7 K! ^! B7 E
                        //if( m_bFixedHour ), p4 T" x2 f- d3 g
                        //        nHour = m_nFixedHour, nMin = 0;5 V$ p- ^7 y- t) o5 P
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];0 u# v7 V' V5 f8 H+ i1 {" b
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
2 B' T% c$ q% x& u! [7 _" H8 F4 V9 t1 `$ `* _
                        //m_lightColor = lightColorPrv;& D# ^& c) X, \) B; W4 o
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;) s1 K) m$ ^3 J. E
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
+ J" M( Q- }1 W* M* S+ D                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
; `# ]( ?& [+ E$ F8 ]4 j# G0 `                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
! s: z' q. p, [* k7 L; b                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;2 L7 t) r6 i# u
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;& V7 N% F+ {- e/ p6 u+ V9 K
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
. f: F) X2 M/ f+ Y7 S
( l9 L, ?; A5 U                        // à??μ oˉè*
4 ~* d: c; g8 J( X  c! ]                        pLight->Diffuse.r  = lightColorPrv.r1;. e) k) D  Z' h8 U# y7 N
                        pLight->Diffuse.g  = lightColorPrv.g1;
8 |4 ~1 n9 Y: Q                        pLight->Diffuse.b  = lightColorPrv.b1;5 e, B  Q2 i! V' J
                        // oˉè* ??à? 0 U6 w& z( L: P
                        pLight->Specular.r = 1.0f;
' g" b9 R+ E7 Y  S                        pLight->Specular.g = 1.0f;/ M6 {6 I1 h' E8 ?$ C4 Y
                        pLight->Specular.b = 1.0f;" l& O; h$ e: a% B3 E$ L( S. I
                        // àü?? oˉè* + P# G. t; r% ~9 e7 u' w: t' S5 ?
                        pLight->Ambient.r  = lightColorPrv.r2;
1 W- D$ o" T3 W  h* n- b& Q7 p                        pLight->Ambient.g  = lightColorPrv.g2;3 W( J. i% x, C: l$ d& O
                        pLight->Ambient.b  = lightColorPrv.b2;- e, B- c4 P. R! @+ Z: F4 [8 k
3 ~5 Y  H) ~# ]( C$ }* q; @
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.3 L% f, S( f% i/ s
                        {- M& \+ y4 B, w. e+ c' B, |
                                pLight->Diffuse.r *= 0.6f;- e2 d: y. m% S' {2 m
                                pLight->Diffuse.g *= 0.6f;
* u  ]6 F' W9 ?5 d4 p$ I                                pLight->Diffuse.b *= 0.6f;, f: ~: u4 `. y+ R
                                pLight->Ambient.r *= 0.7f;
# _6 `% m- e+ e; Z" B0 O2 v                                pLight->Ambient.g *= 0.7f;
$ S* w* w- H4 r# m1 Y9 V                                pLight->Ambient.b *= 0.7f;7 y* ?' u6 p, Y9 ~& r  B) [
                        }0 `- z5 g5 P0 y$ u' c
                       
3 l- I3 F1 Y& Y& o/ q! r#if __VER >= 15 // __BS_CHANGING_ENVIR' m, z0 f6 {! p2 S) ?  Y4 H
                        if( g_pPlayer )
( ]: _+ l  q' D4 X0 x0 [                                HookUpdateLight( pLight ); ' n2 a, D8 U, S6 }
#endif$ {% F* Z8 U) z! l& g4 D3 J
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );! R" K' Y) [0 i$ y9 N
1 j) M: B0 p' A% Z" O( s5 ^3 X! Q- l
#ifdef __YENV
; Z' A' D, ^( F3 ~! [5 o) M9 [* D                        pLight->Diffuse.r  *= 1.1f;
: n4 [# Y; b* ~                        pLight->Diffuse.g  *= 1.1f;
* D$ L; i* X. Q7 {% T                        pLight->Diffuse.b  *= 1.1f;; e" ]. W& m! \2 Y3 U# I
                        // oˉè* ??à? ' [- S1 G, |. d
                        pLight->Specular.r = 2.0f;
9 |5 ?$ C: v$ |/ Z) k8 Y( G' J                        pLight->Specular.g = 2.0f;2 j' N6 ]9 d) q/ ?
                        pLight->Specular.b = 2.0f;
5 D, l, ^- W. Q) Q6 P# S7 N' I2 ^  J, h1 r                        // á?oˉ
; Z5 e! I! O% C                        pLight->Ambient.r  *= 1.0f;
4 C" b( Z* B0 r- l                        pLight->Ambient.g  *= 1.0f;; Z7 C7 e! z) z0 Y  {. o
                        pLight->Ambient.b  *= 1.0f;
, F2 L! _, ^1 ^+ n0 T& T5 e#else //__YENV& z) l& g3 X! ]# o
                        pLight->Diffuse.r  *= 1.1f;. `0 `5 M7 C) Q* l. p
                        pLight->Diffuse.g  *= 1.1f;: M/ b5 Z' W# Q
                        pLight->Diffuse.b  *= 1.1f;5 B2 p% T1 `" c# s* ?7 p3 d
                        // oˉè* ??à?
4 q( i+ N  |9 P, @) `: g* d                        pLight->Specular.r = 2.0f;
4 z7 ]4 Z( |( S6 A                        pLight->Specular.g = 2.0f;
3 L8 z( y4 h+ B/ F! V4 {                        pLight->Specular.b = 2.0f;
' t/ k2 J+ @* l4 z                        // á?oˉ 4 E8 [8 u9 R0 b. ^: b+ F
                        pLight->Ambient.r  *= 0.9f;- i, S( _' {% u1 r- N% {4 W0 W4 [# T/ @
                        pLight->Ambient.g  *= 0.9f;0 Y9 V# X3 _0 P  e; s  e
                        pLight->Ambient.b  *= 0.9f;
8 N4 I( c( H7 D/ }#endif //__YENV
" {/ U( j5 g; R( Y  U                        * U1 R) x( m& W7 F4 M' j
                        memcpy( &m_light, pLight, sizeof( m_light ) );
7 J  Q4 E6 i3 r5 d                       
, S0 R+ \" S- P% U2 Q                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);7 L" `5 C+ g) p! V0 K, a0 k8 W
                        D3DXMATRIX  matTemp;, B) g6 s) N: I6 F8 _( R0 D
                        static const float CONS_VAL = 3.1415926f / 180.f;. x0 g. h: x/ y* x& E: k
. V& C4 z7 I2 R- ]
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);- C9 n, D7 Y4 X! D& |! u8 r
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);& q6 g9 g6 v- [' P0 {' D
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); - ^4 p8 R7 K: k9 l, j( m/ q4 B) X
                        pLight->Appear( m_pd3dDevice, TRUE );5 x* d! B' K9 F& s' ?9 K2 ^

" a3 V4 _1 G3 D5 R                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
$ u. B1 x& W- f( H                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));- B" e& p7 g3 z7 P8 z; ^
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 u( q0 ]$ x5 S* |& W# g# q7 l: c: X5 W0 ~; Y/ c  O
                        DWORD dwR, dwG, dwB;
' |5 u" h* t1 O0 F                        dwR = (DWORD)( pLight->Ambient.r * 255 );3 z# e: ]( N: S& q: Z
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
. {- G! i4 X, g  C                        dwB = (DWORD)( pLight->Ambient.b * 255 );, w/ T. E. G! ^: ^) K: {& ]1 Z% d
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        ( z% ?' d: c& b0 m- G7 [/ Q3 j( U
                }
% A& I6 }( [' O( H        }# }8 |! v6 J* m

& q. q2 o2 l3 g7 _        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );% T' e5 T- Q0 b; I8 C1 `* 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) );' n7 Q" V& g$ @1 k. y: J8 M8 x
        ::SetLight( bLight );
3 o: d& T& D' k+ u  x5 w- V
1 D9 P% r$ ^. D& h1 e2 F        // ±ao? ?D?í???ó á¤à? ' q# q. J# @6 b7 X, A
        m_pd3dDevice->SetMaterial( &m_baseMaterial );$ F& U  L& ^$ F% M
       
7 _; V* U" n9 e+ l! m#endif // not WORLDSERVER0 G  X5 m( C2 j1 x, X
}
% e3 V. O1 v6 R并更换
' y- C/ t' z! e# K) V5 C9 yCode:
' v- }7 l( Z8 z__FLYFF_INITPAGE_EXT
* f0 w1 o+ x9 [/ c: a0 a- _& r定义6 T* A( v1 T6 v% D, W5 ~; [

! D* Q, M$ O5 J4 w& K; c5 {& F" R8 K6 j8 |$ ]

" O$ j( D- v5 N+ Q3 d7 Z0 n+ V/ F8 m1 M7 `4 T# {' F; T
现在终于删除我的狗屁加速...
) @' m" h# ~$ X" M- g
; A; [3 c' J' C+ H8 T& r, E) o7 Y: i- }% T5 s9 Z% {" c

8 U7 C1 u6 S  t




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