飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:( [! Z6 x1 J1 Q7 V) [
尾翼:/ o1 B4 [/ N- j/ F' |. ?4 O

/ I( A- F0 V- T( o' P9 B. [$ Y代码:
( V5 h% S8 e2 O8 fCWndAutoFood::CWndAutoFood()  _8 d3 g! |1 }) b" D* z
{/ r7 L9 b+ p5 C' @% h/ V/ ]
        m_pItemElem = NULL;
& u& n1 \5 `* _5 Y        m_pTexture = NULL;
2 s" H( F* r  G9 o$ D        bStart = FALSE;3 c& L0 i/ B+ o( V3 I% h
}6 w. \& g: j: U8 h. Z1 i, n

0 x$ o3 ^! Z# O. g) {CWndAutoFood::~CWndAutoFood()
! }5 c1 |( x' M; @) k) [{
; w& X* f* K7 @* c8 H, O' ^0 D        AfxMessageBox( "AutoFood ist gestorben " );
! K$ R/ d2 v4 g) s1 _}  M2 p& R9 k: Q4 Y8 |9 x# Y1 D" W
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )" n  j: T$ \! F9 x5 i+ b
{0 ^$ x. m+ v" E; J9 d
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );2 V: L! z$ _- f
}
3 d% t  b# e) _( i* l2 R: h+ R5 ^: f1 Q) M. L2 m; g
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point ). E7 X$ k1 {  f7 Z
{
. J, _5 _# G+ z" U        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );- k5 s8 a- n( b4 w4 |0 h2 _1 y
        CRect rect = pWndCtrl->rect;7 ^5 w& Z0 y7 e4 F
        if( rect && rect.PtInRect( point ) )
5 D2 Y$ `5 _8 S; k/ ]2 x) @' @. g) |        {
* ^* g1 J  p; R* k                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
, |6 k( y* d$ L" R' I- B                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
1 o8 S, T6 S; R6 B+ n/ v                {* S7 o0 x4 m- u. c& e, b) J" m2 \/ \
                        if( m_pItemElem )
. w3 Y. M4 B! X3 G* p3 n5 R$ U                        {9 k3 I3 X2 b2 f! w* o5 b+ V
                                m_pItemElem = NULL;
% f" b. p; O7 H' D* @                        }1 k2 l% n& Y& I. m
                        m_pItemElem = pItemElem;1 A0 C/ K1 v- ]
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
4 p# t: h% Y  ?% }! R                }else{% V! R4 G2 x& D4 x
                        SetForbid( TRUE );. A. w! U$ v/ b2 t9 J4 Z1 F0 Y
                }
; I! @1 l/ y+ @  \! n/ [% F0 S3 D        }else{
0 b* ]" h3 k- k7 `+ z- @4 u, T                SetForbid( TRUE );2 y: U2 L8 Q7 N6 {6 U4 W, ^: Z
        }
5 L- J% u0 d0 |6 H5 R$ K0 k        return TRUE;
$ w6 v% F+ c$ ]5 ?}
( v$ |- D" h. u0 J1 L. L% M! b. c
# y, }' R# ]7 ~, iBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
* n; z) |9 N: {7 J$ q  x{; p' f5 U4 W6 L/ C0 x, p2 M
        switch( nID )  [' X5 T6 v& g; G) U4 D
        {' b  W% M* K  j4 v" p1 H
        case WIDC_BUTTON3:0 {8 X7 L' z* _& e2 P
                {# q6 V* K; W, B: B
                        bStart = TRUE;1 K, k% a  e/ _1 M7 G
                        break;
  d, w% c1 b* n: P+ D$ U+ [                }# E! j$ @+ B, E3 X; M" s0 x8 h% q
        case WIDC_BUTTON4:
7 ~% v7 a  C: ]3 Q% ^0 k- h+ P3 x" P& W                {
2 \. j1 O' @" e! N0 E                        bStart = FALSE;4 D, K, u! c; D0 O( U; |5 q
                        break;
5 K3 u8 F; U4 ^6 L, h                }! D1 ~: x# [" W6 s9 K( I: C" F9 H
        }' E/ B: t$ S# S8 H& J! G
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
+ b2 w7 I2 A! B6 c! G# g5 ?( F}       
# O; T7 W" Z$ K6 w8 O& mvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
$ X* R; W  U& C{* |' |; L+ K0 x
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
  d! K" G6 T% P4 z0 s        if( bStart || !m_pItemElem )- [) l# C& X- r! B( `
        {: Y9 \  W4 [) P
                pBtn->EnableWindow( FALSE );
, t' U2 G3 j9 a9 m, ]" z! T        }else
2 j% ~4 Y# H9 {* r6 q  {9 R5 P" L& [& \                pBtn->EnableWindow( TRUE );5 N0 U5 W) j" Q0 ^/ ~5 Q
        if( m_pTexture )) j. b9 u& y: d. s
        {
& @/ v' h$ f% E# ]* v  r                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );9 r  U* k! z. |/ _1 C- s+ B
                if( wndCtrl && wndCtrl->rect )
  i7 p3 L; `* P% O- J) I- k                {
, j+ ?, t$ e4 F, J1 [+ b/ P0 i                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );# u6 G4 z8 z% v8 A
                }
+ z9 c) f& C6 c) H3 R& U: \4 l        }
  v/ A8 t- R, u( n- M6 D& [}3 q- w( a- c7 K2 K+ _# R
6 N" C% w0 O) m# i) `- Y
BOOL CWndAutoFood:rocess()
$ `9 f+ ]  s3 F! t5 I3 ]{
3 t% M& P: d; K- O+ a" t7 R$ T7 }3 m        if( bStart ): d; c0 M& J' r' M3 H1 V+ Z
        {4 J+ R. h9 g: P  ^, K% O
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
6 f7 _2 U# C5 ^) ]+ a  f                {
0 U3 W& ]/ T6 C2 D                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
' x) f! o/ z0 R6 g4 p9 C                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
7 M! _# \8 F! D                }else{+ }* R( }# j  n1 h( I3 W  ^) B. K
                        bStart = FALSE;2 @2 e6 S5 @' r+ {* P
                        m_pItemElem = NULL;3 d* N4 ^7 a' b$ L) Z
                }0 s6 [+ l- m  @) u* Z) {
        }+ B2 e3 l7 w5 n" b, [; G: p
        return TRUE;2 d; U3 U9 y4 X9 Q9 ]
}
( Y$ i0 n4 E4 [9 C
  }/ D+ E+ K1 m: z; E, U登录视频废话:1 D+ z" @6 H+ z5 {# c! _4 p
尾翼:
# V! L+ M1 ]: {$ a! _; l2 g/ g; Q* o0 v, L2 A' P
代码:
0 S' B7 O. H& _) C0 C$ F; g
+ C7 [0 _6 V  {! O5 h. m$ i( pvoid CWorld::SetLight( BOOL bLight )
; j3 r0 t) b" A& r: vdurch% \8 w3 }6 P$ P/ K6 H' L
Code:8 ^8 S) \5 G! G  x+ T% k, P1 \% J
void CWorld::SetLight( BOOL bLight ); N7 o: l9 D' s& Z$ r+ ^. M" Q
{
) T1 k1 B; p. g; Y8 I+ n        //ACE("SetLight %d \n", bLight);. o5 i9 c; s) P" B1 O0 X
        % n7 P! |7 j6 m$ N1 s; F& Z# m
#ifndef  __WORLDSERVER 6 J4 A: ~0 w8 K% V9 q+ ^
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
* y8 U1 P: p+ C& e        CLight* pLight = NULL;2 X, d% P1 X- @; C: B
! K3 @. x0 X' a1 D5 k
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
  o: o0 X. c3 [( d; ~. g
# b; W0 B) R5 p" J0 ?% b" y3 r        pLight = GetLight( "direction" );
( F9 Z3 k3 q' u" ]9 G  S5 @- {4 g) }# f! S: G' r6 i9 Q& O* \" X" r
#if __VER >= 15 // __BS_CHANGING_ENVIR, s0 x; s" Z; V! Q- V- }9 O
        if( g_pPlayer ){% \* i9 t) e6 A5 y; x, M( E
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );3 O! |1 `6 ?$ G% h
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!5 [  n4 o# V! g- x4 |% U
                {
: C; z) k) N0 H* U                        if( pLight )
  `$ y2 s1 Z% a! W' {  @7 F, ]                        {0 @; f3 P6 }8 {9 |7 M
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
' d6 E2 s1 F  M, W                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
# W; n& T8 o8 c  V                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];9 j! S- \$ j: @7 x

3 g; e! t% m5 N- U                                pLight->Specular.r = 2.0f;4 ?9 Q! O) c; U
                                pLight->Specular.g = 2.0f;
: v$ Z2 w. D( i1 O                                pLight->Specular.b = 2.0f;
* O: X  w+ Z) w        2 m- T9 P; F7 Z' H& ?3 b" S
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];; {& R, w" w) t  p" M1 T
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
( p+ M4 F) F' H" w1 o                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];- n  k, y  D  V- O" F
          j* Q  a9 B5 F  {) j
                                HookUpdateLight( pLight );
1 \/ a( s- i9 [4 z/ q  \# Q
7 ?3 x+ N5 L% w6 E                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 d7 Y& l* t( w3 i* z                8 p0 c/ D/ r! p
                                pLight->Diffuse.r *= 1.2f;0 ]/ l$ B: t; f. K0 e
                                pLight->Diffuse.g *= 1.2f;
1 t& W6 Y: O! {3 ~  \                                pLight->Diffuse.b *= 1.2f;
7 D9 G3 h$ x" A# J1 D+ `' Y5 g
% [, |* h1 U3 [3 g( C( g  E$ k8 N. {  _                                pLight->Ambient.r *= 0.8f;! O" i" w( x5 C! S2 a
                                pLight->Ambient.g *= 0.8f;; x! N$ B) [& j; E
                                pLight->Ambient.b *= 0.8f;
4 M& h1 J# k/ T5 \: V0 `       
( j% e0 ]; [5 B: r6 d) E2 W5 q                                memcpy( &m_light, pLight, sizeof( m_light ) );1 X  P& z; C& J. f& k. ], t
  A5 V. A, z. [
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: J% B3 n* a# F9 _                                 D3DXVec3Normalize(&(vecSun),&(vecSun));- }2 V8 \" P3 q6 b
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 9 F) F- N3 b2 S) m. k" |. U8 u
                                pLight->Appear( m_pd3dDevice, TRUE );& O4 Y' {; o' {3 D- Q* L
               
9 E7 k( D2 o( Z! [6 C# H, \+ u                                DWORD dwR, dwG, dwB;- {5 y% q3 o7 N1 _9 l
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
7 u" \: [, i/ V, B& J                                dwG = (DWORD)( pLight->Ambient.g * 255 );8 `! E6 X0 N) X* X. F
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
! \  p8 A6 |6 B9 r                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
1 _$ W- _) {3 D5 c8 T                        }: G6 P; O1 {, T+ K
                }
3 C- \' t0 l) B8 R  @; q        }
7 f1 U) p: V8 M+ N# ^$ o        else. i" s# B  D) m" Q  H7 i. y" c
#endif
" i' v# l0 {8 \4 l, a6 l8 e  _) p' U+ `
        if( m_bIsIndoor )
- H& o) Y- J$ D0 `1 D7 b5 ]        {
  g1 F9 L2 J3 u7 [: H! e3 c                if( pLight )
) l8 P8 D: a0 h: T  h( s                {                0 F, C( N4 s6 G) E
                        // à??μ oˉè* ( }5 G+ `: r2 G8 R) O
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;$ P& s, X  C! a) p% u" u" l0 O, @
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
& X9 B9 p0 P6 t                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
- i  q6 V0 ^6 ]! {! s4 W) B
' _; Q% ^, a0 w  D                        // oˉè* ??à?
4 B# g5 {' O  H# x; W  p0 C& j' n' Z                        pLight->Specular.r = 1.0f;
) o: }5 ^* r) u& Q6 C+ m. z; ^: t                        pLight->Specular.g = 1.0f;- \2 I, P0 B8 ~* @& `& y: H
                        pLight->Specular.b = 1.0f;
6 K! C0 L6 S3 b$ C+ v" d. \: V( J                        // àü?? oˉè* 3 j5 k) v8 t. J/ h6 X1 A
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
) ^: s2 i% y* u" U; G( n                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
% x3 r) A, G+ H4 T3 }0 A                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;. X, u3 N, c$ H6 [$ E
, w8 ?. Y3 F: q3 c# x4 N9 j' W9 O: I; ]2 N
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% u  s: W, x' W7 y! i/ W                        {
$ A; A9 C3 C9 ]4 D. g9 s                                pLight->Diffuse.r *= 0.6f;
  V9 }; s7 y4 a7 p+ A                                pLight->Diffuse.g *= 0.6f;+ Y: q; N. q- G+ `& p5 E8 F
                                pLight->Diffuse.b *= 0.6f;
! L2 T; Z+ F7 V+ B8 a                                pLight->Ambient.r *= 0.7f;
! Q- u/ K, |8 y                                pLight->Ambient.g *= 0.7f;
+ m) J1 T7 s: A% W9 E8 j$ K1 H                                pLight->Ambient.b *= 0.7f;! ^( E8 }+ @; \- w3 [
                        }$ O, ^9 M' H0 Y4 o3 d. }/ v# j9 q. I
3 Z+ v" C9 G% [( ^/ w0 f
#if __VER >= 15 // __BS_CHANGING_ENVIR
" A  v" v2 }3 T2 Y2 c* p1 V                        if( g_pPlayer )
5 A3 _: r% C( W+ m  F/ N                                HookUpdateLight( pLight );
6 c$ m, s4 `* w" r#endif0 r$ ^1 Q" R  i# Q5 |
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" p# I; w6 ^- H% L7 U) L* D$ T
* d% e3 a0 R+ d* z& a5 q/ A* }                        pLight->Diffuse.r  += 0.1f;
9 x/ }7 t0 n- |+ W0 M                        pLight->Diffuse.g  += 0.1f;
" t0 o- s# E0 @                        pLight->Diffuse.b  += 0.1f;
* O0 ]% X2 ?) `3 f# G                        // oˉè* ??à?
% W" u% f- P7 [2 s' E) p                        pLight->Specular.r = 2.0f;) }6 x" A4 c2 \. }( V; b8 f7 _' I5 d
                        pLight->Specular.g = 2.0f;
: a- T' s0 F+ \2 ]6 J1 o                        pLight->Specular.b = 2.0f;
2 o: E- m7 f! k% P9 B7 Q; t# Y. Y( n                        // á?oˉ
0 E$ }4 E0 U) _3 F+ l1 l' G9 q                        pLight->Ambient.r  *= 0.9f;/ p! A6 r: g  U+ ~4 m
                        pLight->Ambient.g  *= 0.9f;$ {  Q% m$ U) @. X: @: d
                        pLight->Ambient.b  *= 0.9f;: f% n; }9 }8 L% b

8 N# ]3 q' j# m9 U/ R/ q: s# C                        memcpy( &m_light, pLight, sizeof( m_light ) );
; {6 {- P. G1 f1 @                        " V0 k6 W5 F6 j) ^7 T1 H
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
) I6 y* l2 {3 l! y' z( G                        pLight->Appear( m_pd3dDevice, TRUE );- N/ d+ J4 A8 x
       
  Z" a9 f5 ~1 m: W                        DWORD dwR, dwG, dwB;  _" i9 O9 A( Y0 O" l8 j3 s
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
- D& v9 `1 f- a7 r+ Z  b9 |                        dwG = (DWORD)( pLight->Ambient.g * 255 );
# I8 l# o3 L- d$ Y                        dwB = (DWORD)( pLight->Ambient.b * 255 );) q- ]4 }, e( s
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );9 ^1 t6 d8 j7 y2 Z
                }
# w& J( L( ~: Z9 a+ G- F4 H        }
0 f( f/ v5 w/ M& V5 E* J        else
- m( @5 G9 }* P1 ]. Q$ Y# \        {
9 m( h6 M; F3 g7 w( b                if( pLight )8 q- M( m+ A: |2 p
                {
  F+ c( p' U9 W" `5 V               
# y( j% V% q$ Q# V2 M3 K6 @) F                        int nHour = 8, nMin = 0;
/ q  H9 Z, ^) |) s        #ifdef __CLIENT
9 N% H+ S* F/ g. q+ o, w                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
6 b7 K5 d1 }% {                        nHour = g_GameTimer.m_nHour;* ^2 x+ c3 Z! z! J0 d
                        nMin  = g_GameTimer.m_nMin ;/ I! B8 f* `( v
        #else) N- W6 B7 R& Z8 ?+ d
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
8 x* b1 _1 K: o9 p1 ~! y                        if( m_nLightType == 1 )
% S/ F( i4 ]$ V5 ^3 G                                nHour = m_nLightHour;
: a' R8 n; ]! ]* ^$ H& e& S. E4 a        #endif
: V' h7 v& a0 n0 `9 S4 P                        nHour--;8 Q9 C/ c0 F9 m  j
                        if( nHour < 0 ) nHour = 0;
' g+ c/ X% f& J8 [0 X( ^  c, H                        if( nHour > 23 ) nHour = 23;
4 c6 z. H+ v* ~$ j- R
. T3 E. H  p; @, @( K                        //if( m_bFixedHour )
; _" Q3 J+ Y: j9 ^9 R* w                        //        nHour = m_nFixedHour, nMin = 0;
. i% p6 R6 e- l# C. k0 k! Q! y                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
! ^- g" I1 q5 @2 ?, l# B/ F( `                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
& H/ `+ n* f. u2 @  ?" U) [- i
: z# o; J/ H. \/ @3 B                        //m_lightColor = lightColorPrv;
9 s8 F% s/ y- u                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;7 d5 q# k$ K9 X) Q3 w
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
; N! J* {7 i: n/ ^                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
  }7 A+ [- \: s: i/ o4 l                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;7 K. `- W! K3 {# N8 R9 b/ f' y0 s
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;5 V' |; G8 m3 z  D6 d2 \
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;; G6 w4 \# A& H' N" r8 @& d$ I
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)7 T$ K7 [. E' [: A- s; R- r  @& y. u8 }

  q  L3 f" W/ k# a( C# @                        // à??μ oˉè* + L$ j. g7 z3 B7 F
                        pLight->Diffuse.r  = lightColorPrv.r1;9 R, i2 M/ R' s# i
                        pLight->Diffuse.g  = lightColorPrv.g1;
7 v2 N, m, @& e4 ~+ r' `1 b2 r' Z                        pLight->Diffuse.b  = lightColorPrv.b1;
* A' Y$ l6 D# f                        // oˉè* ??à? : c/ `$ B/ q% [& k
                        pLight->Specular.r = 1.0f;
- U% y* s* i* P: x: [* S& v7 e                        pLight->Specular.g = 1.0f;
9 I2 K5 ^- M% C" J% Y% I* j                        pLight->Specular.b = 1.0f;" l1 y$ f: M( j
                        // àü?? oˉè*
0 I" X4 r# O( ~! u% ^                        pLight->Ambient.r  = lightColorPrv.r2;" L! T; d& R, Z# A
                        pLight->Ambient.g  = lightColorPrv.g2;7 o6 e! [, A) R
                        pLight->Ambient.b  = lightColorPrv.b2;
6 k) N( X) N7 p7 A$ D
6 v9 D9 A5 F' a% S0 e& E5 W                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# A; d+ H4 ?2 v  D                        {
, u* m" j$ Z5 v                                pLight->Diffuse.r *= 0.6f;
3 z3 t! k7 T( x7 R                                pLight->Diffuse.g *= 0.6f;
8 A/ c9 t  O# ]; t" T. O+ u6 L                                pLight->Diffuse.b *= 0.6f;' W" B6 G$ u' W6 s" Z
                                pLight->Ambient.r *= 0.7f;
! N9 e" H2 U3 N1 f% U                                pLight->Ambient.g *= 0.7f;6 H9 k" _) D+ A) t
                                pLight->Ambient.b *= 0.7f;
. f3 \7 {, e$ ^" r! [" y                        }$ J4 @: U4 Z% z
                       
" v$ l8 B4 G1 M7 }#if __VER >= 15 // __BS_CHANGING_ENVIR, p; X5 G  y5 u7 y% T1 |; }4 D0 Y6 f
                        if( g_pPlayer )
5 A, [# U  h, N6 `7 v$ P4 k$ y' l. g. r7 c                                HookUpdateLight( pLight ); + ~% a- \4 q3 N/ \2 [0 z% }( Z
#endif
5 Z2 G! F/ t& M6 l2 D                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
4 V% D3 \2 V  m( X1 k# o/ B7 O# m8 V
#ifdef __YENV4 g+ a; J- e4 G6 S3 z
                        pLight->Diffuse.r  *= 1.1f;8 W0 \8 \+ p' s
                        pLight->Diffuse.g  *= 1.1f;8 E1 L7 t) ?% O& T
                        pLight->Diffuse.b  *= 1.1f;
, ]; U* |0 F9 c, J, z1 j% |                        // oˉè* ??à? 6 p- v0 N* Y% n8 C2 P
                        pLight->Specular.r = 2.0f;6 E, v* r2 y" q$ @; {- _! o* W2 o
                        pLight->Specular.g = 2.0f;
5 T* e, n0 d( {# [+ P9 G                        pLight->Specular.b = 2.0f;
& H* t! }+ T& }3 q                        // á?oˉ
4 L6 U' E$ D: ?( ~" g6 p; a1 c                        pLight->Ambient.r  *= 1.0f;
) I; M/ j7 I% \1 u7 Y/ I2 F                        pLight->Ambient.g  *= 1.0f;
/ `# [- S8 g; X2 ]# K1 R6 j, j                        pLight->Ambient.b  *= 1.0f;" B" H+ P. Q- Q) ~* Q6 D
#else //__YENV( e, V- B* z% G4 T* {1 N
                        pLight->Diffuse.r  *= 1.1f;
# |+ p- f: N. k1 E" _! L  v9 j) e% O                        pLight->Diffuse.g  *= 1.1f;
* @8 j/ r. z5 t- m                        pLight->Diffuse.b  *= 1.1f;, q3 i/ o8 G- F3 J4 \
                        // oˉè* ??à?
# M0 s6 w+ \- p  }+ [4 n5 q                        pLight->Specular.r = 2.0f;
+ V1 T! Z! T3 s                        pLight->Specular.g = 2.0f;
5 W7 @  C; G0 [                        pLight->Specular.b = 2.0f;( O7 f; d0 z9 {4 ~$ o
                        // á?oˉ
* `# U" b9 b( k0 K# g* m2 k% C  f. m                        pLight->Ambient.r  *= 0.9f;; M9 U" V2 ]; l1 w0 o/ M3 y
                        pLight->Ambient.g  *= 0.9f;
" Z8 W. }6 G, c  v+ l; D+ ?9 L( ~                        pLight->Ambient.b  *= 0.9f;4 k4 v6 |* j: A. |5 x: C
#endif //__YENV ) ^5 f9 ~6 K- @. ^5 K+ t+ g
                       
6 C& G7 F5 v2 c* g4 v' z                        memcpy( &m_light, pLight, sizeof( m_light ) );
1 p( v$ b. I- C5 J) m: y% T                        ; V. N* N* _" m" n( Y
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
7 N% e& Y7 d  U& m$ y' q                        D3DXMATRIX  matTemp;
1 C: Z& w( w( x0 U                        static const float CONS_VAL = 3.1415926f / 180.f;. r0 A' Z$ v% D* t8 }' t2 D

( ~  X; D2 e& p) v3 G/ M                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
1 O: K8 G& D: D3 x6 m& c                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);5 h6 s+ B: J/ ~1 W$ b  [- E
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); ) X" T! J" o. g0 n4 F1 T6 _
                        pLight->Appear( m_pd3dDevice, TRUE );
9 G7 w8 C# Z8 V5 n; _7 b  f0 l) N. A7 J+ _0 W, [; t
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);* z' o8 f/ p7 p1 O
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));$ K. y6 M4 k' r, h
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: X% @0 y1 Z+ L1 h- g/ N7 L. ^2 Z+ m
                        DWORD dwR, dwG, dwB;
. e* P6 ?0 o. O) `' r  M                        dwR = (DWORD)( pLight->Ambient.r * 255 );& U7 p3 t6 S. Z' f: O) R9 i3 u
                        dwG = (DWORD)( pLight->Ambient.g * 255 );0 {& b4 G2 @  t8 O2 J
                        dwB = (DWORD)( pLight->Ambient.b * 255 );  l2 x/ f5 f, |7 O, k: {( A' C" @; I
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
; N9 G: d) E1 r/ O8 R7 M+ s                }. g& z5 T( \* o4 m- @2 v* ~
        }2 N) k1 i2 L+ Q: Z
# ~& i; r" U7 R3 Z/ Q* M
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );. Q; o( x7 n1 J# 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 @1 F' z5 W1 X' S% _        ::SetLight( bLight );# @  A( T2 ~0 `

9 `/ a5 d' G" U' c) v1 t        // ±ao? ?D?í???ó á¤à? 6 ]8 _3 p# v7 s+ }+ f+ N, h; O
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
! g+ s. @# r$ e+ D0 V- f" R       
; r( X* L1 b4 A0 t7 _4 x' `#endif // not WORLDSERVER
# C) i, D3 n, }; l' G+ C}
8 [+ e* ]" H* E6 @8 h% o并更换
: d+ i$ t# i& z+ F# `) [Code:
9 ]) A! t$ S8 n. G__FLYFF_INITPAGE_EXT
2 p) X* ^9 F0 G/ M5 z+ [定义8 D/ h; M. h' q: O* f& L
5 b' S0 B" k6 ^1 k9 e. ]

  j1 L1 U. Z- s; p
, B, [0 B; z6 k8 O8 S) @5 m% f: O! w2 ^3 \: n8 c6 S% N
现在终于删除我的狗屁加速...% i( w0 K; Y9 b+ ]; v7 y" Z8 y

. \" f3 V6 a9 y. O1 O) ?: B
, A6 s/ P3 O' ~. K
: @. {  [/ O6 P7 m2 @




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