飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
) s. P+ {7 i/ x1 M' I尾翼:9 }% c1 D6 J% j( s/ U

& R) i! x) y8 W3 @1 Y4 m0 L* O代码:. ]7 y; w6 }9 i: ?
CWndAutoFood::CWndAutoFood()
/ E7 I8 I1 a" |2 V. u* }{# {# x5 C) c  R/ [' O2 V
        m_pItemElem = NULL;' K9 f- C% V9 B- \
        m_pTexture = NULL;
" ]. v8 ]  z5 g9 z6 |        bStart = FALSE;( a) ~. R, k0 O
}  m: U* A% Y6 K0 f/ ]5 w6 [& v

, w8 X0 y) K- G/ U" w  p8 t, TCWndAutoFood::~CWndAutoFood()3 R8 b- ^: I: H
{
' W! k6 I2 x( e: b        AfxMessageBox( "AutoFood ist gestorben " );0 h- F9 S5 m& p) V
}& c7 U; s( M2 L
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )4 D% P1 J' q; _" z9 Z
{
; f& [3 [8 _0 U# e# i, x8 W2 ?        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
2 ~' ?7 v/ p; T0 b}3 z; Y! G; l, ]- ~) J. e
- L. X' s7 G8 W2 T  \0 c
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
* s4 l7 U/ R" I. p" c{: u  j5 r, c( x! s
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );& V( j7 A4 n; W& x$ c- D' g
        CRect rect = pWndCtrl->rect;
9 R/ s9 ?0 g% m- o' r+ o6 u        if( rect && rect.PtInRect( point ) )6 }" l. E4 I) m) m" d
        {2 S, \# J0 N) |
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );: \; T4 L% V4 h- a! T# L6 L8 V
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
( n2 r& [0 L7 I& ^; R                {
9 J. _0 ?' c+ X+ x                        if( m_pItemElem )8 Q# o7 w" U$ ^4 c/ Y! U+ G
                        {
3 d2 e' a$ U2 ?. |2 p8 J                                m_pItemElem = NULL;
' {. Y4 T" e  N                        }
8 d. @; ~8 b3 z! R) s( F+ w2 \1 ^                        m_pItemElem = pItemElem;
9 }; C. k+ z' \                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 ^4 z6 p6 k4 z9 W0 F                }else{
! t- D' t- n& O4 T3 j                        SetForbid( TRUE );( `$ S8 s5 c- x- Z: n- y# S- j
                }
6 k5 i2 z- c( r        }else{
" B6 [$ V$ J% w6 `% p& x                SetForbid( TRUE );/ Z9 o! U( g! ~. [
        }! d4 _7 q# m/ h/ X- E+ ?
        return TRUE;
8 g( ]# k3 q' h9 d8 g}
6 |7 j5 B9 Z  n+ m4 t7 X
" q. z. `3 }: Q4 R/ NBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )7 W' H7 l* t% ?( W6 V4 t% Y7 d9 u% D
{8 i( V9 Y. l3 C0 ^# h) I+ |  c
        switch( nID )# w  b8 U/ e6 z( Z4 _7 f
        {
# v1 @3 d# V, d7 Z) P4 ]        case WIDC_BUTTON3:
' `4 u, _. m" z8 z; p                {
* f6 }# ~1 B: x3 k! E3 v                        bStart = TRUE;
% ~1 Y/ T6 [8 Q5 n( z                        break;! C) T9 ^4 x! b! l/ u1 N6 W. J1 B
                }! q8 K2 G8 h$ t% b' D
        case WIDC_BUTTON4:! @# K1 C+ M4 K. u- r
                {) G# H7 [2 y) v2 M8 j5 S. E5 E3 d
                        bStart = FALSE;
- ~7 G# r* B+ x: C                        break;
  B5 I, x$ `% j, b4 Z. [' _/ x& D                }: A# ^2 ~6 D  {) `, N
        }
6 l/ P6 E7 ]! C3 T% R  [/ A8 n8 M        return CWndNeuz::OnChildNotify( message, nID, pLResult );
6 \9 d9 x% Z% G0 _$ K: o" c- [2 ~}        3 B7 C# T9 A6 e/ R
void CWndAutoFood::OnDraw( C2DRender* p2DRender )* r+ D) Q# k7 ~3 `+ l  E  a
{
2 d2 x3 J) u( ~4 ]* s# ?        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
* _2 Y& U% q! y0 s% h# W        if( bStart || !m_pItemElem )- ~' A2 n, r7 W! n( U
        {
) E4 [, t6 H% r  o& Q                pBtn->EnableWindow( FALSE );* \5 O( B5 @' M# x: E  y1 w
        }else: E7 e" U/ v$ h6 |- V
                pBtn->EnableWindow( TRUE );
8 b) U/ R5 d' a+ H; M+ \7 \        if( m_pTexture )  B8 S. ]9 g) ]! j# T1 r4 b
        {+ L/ I8 G! i2 Q. L- c; @
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! [1 L1 \: E: @* n0 @9 L# S                if( wndCtrl && wndCtrl->rect )* _, Y5 L. l6 C; _
                {
# r6 d( \" I5 |                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );+ f5 @! |% b9 X" U" R
                }
' E2 A4 w: S. R) w9 S' B) ~        }% w* m4 o: G) ~! l8 p
}
) e: g0 `; @9 x/ b* J, t/ Q3 m; f: [& T! |8 y8 m
BOOL CWndAutoFood:rocess()
7 V. v, I6 {1 c2 E{
0 f/ w0 t. p6 _! {# j        if( bStart )
+ D0 U) z$ C6 h5 T" E$ I        {2 o! v( h/ o; a, j
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
: p) T# Z+ [- p/ F4 ~4 a8 y                {' |* Y, D4 ?5 w7 \: S/ {( n
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
! Y/ h% V) A' A8 T5 I                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
& ?" M7 \# f$ v8 N2 v                }else{" u) `6 }5 b/ {
                        bStart = FALSE;
  m# V" ~. w0 D" ~; J" n/ e  O5 f                        m_pItemElem = NULL;. u  s, `" `9 L7 q
                }$ d5 |. C$ T& J& @
        }1 [- b+ C5 r& g- R% b! w3 r
        return TRUE;
8 q. \. d( P& O# t}
) R# H4 p' A- [% [8 Q) g. w+ S5 m7 G" S$ T. _
登录视频废话:% R! x  [+ x* J, T8 `; o
尾翼:
+ `, }, _( s8 ^) M
5 B' j+ r0 z! A1 }& F7 O代码:
+ C. z" _1 R% D) ~0 D* o, |( a& _
  V& u- ]2 u8 f" Gvoid CWorld::SetLight( BOOL bLight )' V, s  h) X9 v1 Q
durch/ n, {# y: p' @
Code:  G' g/ ]& W- K+ Y+ M4 Z
void CWorld::SetLight( BOOL bLight )
( P! F! Z' M* _1 @1 ^. v" N3 D{
3 F0 s/ @( Z) ^6 B- y  r+ Q! c        //ACE("SetLight %d \n", bLight);
" E2 ^6 r4 q+ S/ e$ n% \/ a6 m        4 {# X0 e" t$ y; `9 A2 h; C
#ifndef  __WORLDSERVER
7 ?' z- K. `5 y  T, N        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
) u  Y! C2 `( A* S- S. A+ U# ]0 i        CLight* pLight = NULL;
2 s8 y. H6 n# t4 `+ S
- N2 P' e+ w% B4 O        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
- ?% m8 g- x' [) Q, p- ^1 C" O, n
+ j- e1 K* p! q- e7 X$ n$ l        pLight = GetLight( "direction" );
* ^$ u) T1 W3 {
, r- w. D5 R1 C& M" S- }$ g#if __VER >= 15 // __BS_CHANGING_ENVIR* Q) @0 C3 M" k+ f) f: v
        if( g_pPlayer ){8 D& ^- W+ @4 P# a
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );+ N" x. w3 b/ F& t; R; ?5 ]0 X1 m
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!3 ^/ N: U0 ]6 ~, m+ D6 n( L- Y4 [: @
                {4 I% k% A& j5 h, m( i
                        if( pLight )
, C; m; @( _) u# ~, ?5 x# u: y                        {
+ I5 k$ R- K& U; h5 S) {                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];* v. {1 G# {0 b" _: I$ J, F
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];9 O: Y& n; L) k8 |6 ~) C
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];. V+ s' u, d# |+ Z8 E/ d) q
+ F$ o$ o& i* u( a5 Y, c8 R
                                pLight->Specular.r = 2.0f;
4 K7 _8 ?  Z( w( R* k' M* c5 B                                pLight->Specular.g = 2.0f;
4 f: ^# G0 O! L5 n3 \: j! d) ]                                pLight->Specular.b = 2.0f;  o  T+ g/ S9 m, ^8 B3 \+ R7 x5 _
        ; o6 N+ l1 g9 ~' u9 A5 V& d
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];7 P( a5 N. L! i2 N
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];4 A4 G: u3 U2 w9 _# r
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
* R) G! p8 }# O' Y$ h        ' X; W8 V( U2 I
                                HookUpdateLight( pLight ); + K5 g5 e; s+ o; r% ^, x

/ s4 o/ ]3 ?8 g% n$ B& E9 \                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );/ |* K# b6 D& f
                - |$ |6 @0 I5 x6 j) Q# b. W
                                pLight->Diffuse.r *= 1.2f;
! u9 X' }% s3 T1 E                                pLight->Diffuse.g *= 1.2f;
1 ?3 ]$ C6 q4 P3 C- o( ?7 H                                pLight->Diffuse.b *= 1.2f;' Q4 h4 \& c" S1 N3 V! x

. J( I0 u& @' K. [' E$ i+ D                                pLight->Ambient.r *= 0.8f;% M: S2 E) ]  e1 U  z3 t& C3 y
                                pLight->Ambient.g *= 0.8f;
+ B! i' t9 m6 s0 _                                pLight->Ambient.b *= 0.8f;: ~1 g8 c# M- ?- R% Y8 v4 d  j
        " Y4 o3 z2 O, K- o6 b
                                memcpy( &m_light, pLight, sizeof( m_light ) );
* k9 C+ e3 G' Z2 w9 L- c' C! |5 F% {9 i
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);0 [3 p3 U* g& R( [9 X% C+ [
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
3 N8 v" N6 \" x: Z! d! Q                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); % i* o6 z2 r, x0 k
                                pLight->Appear( m_pd3dDevice, TRUE );. D, z: C2 T3 _! D2 E/ `
               
- ]  a" a0 x, f1 M8 F* [0 y$ @7 j/ S                                DWORD dwR, dwG, dwB;
0 @7 B; i) ]) n  A" s+ F- y& r                                dwR = (DWORD)( pLight->Ambient.r * 255 );
. b' j4 _# ]5 ?  w                                dwG = (DWORD)( pLight->Ambient.g * 255 );
% a+ ^$ ?: V! f6 t" G2 ]' |                                dwB = (DWORD)( pLight->Ambient.b * 255 );$ z* h$ J# Y: \8 O2 r1 a0 D! L
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );& ?' M4 f5 \) J/ V0 D
                        }
" u, d" B  D0 g                }! j; _" K; d& g3 l# r: A4 N
        }
0 e9 F7 I. R" Y1 |4 I        else! a* O. S- ]' c0 q9 }1 `% d' ]" Z
#endif 5 d" T! d3 p1 Y2 ?# v

# w2 z2 y  \4 ?( P( v% b9 C/ x- }0 A        if( m_bIsIndoor )
& z3 ]9 V9 H0 b        {( X% s; M% [4 h9 o: z
                if( pLight )$ y2 M  d& i4 p0 J* F3 m
                {                & b6 P, L1 B3 ~  F+ ?, I4 k2 j
                        // à??μ oˉè* 8 C5 D, e  _( e/ z, j0 q& ?
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
+ `+ @3 H/ J# P% G) i- @# R                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
7 P7 }3 W) ^/ B6 H- [( p3 {                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
( R! Q; [& f  ^) }- k
/ h% @7 H. H0 z" G4 o. j# ~                        // oˉè* ??à?
  U/ }7 x4 {# N$ c+ |* q, V: l                        pLight->Specular.r = 1.0f;5 ^; V/ G! t3 O" h6 R. I
                        pLight->Specular.g = 1.0f;! M3 K/ t; @$ U# [* d6 c. i/ w
                        pLight->Specular.b = 1.0f;8 u" i8 V& m$ j0 v) q! p+ r! Q
                        // àü?? oˉè*
# g& G* H' z" j) q6 n                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;8 x. d, X; L0 F1 C1 e
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;3 i8 f, Z) ?/ w6 u
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
  O( I: ?9 i/ i7 R# g# j4 I( Z$ M: @9 n, }; O
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 D3 j: D! o1 C9 c. F+ g                        {0 W9 Q8 ]  }2 o
                                pLight->Diffuse.r *= 0.6f;0 i% k1 u6 b2 Q! ~+ w  `
                                pLight->Diffuse.g *= 0.6f;
0 X' ^, p  `. q; [                                pLight->Diffuse.b *= 0.6f;$ t% i! a0 o: O4 k" T
                                pLight->Ambient.r *= 0.7f;
& Z$ Z8 e% y1 Y                                pLight->Ambient.g *= 0.7f;
7 B& t) |+ Q" E# J+ e% |                                pLight->Ambient.b *= 0.7f;
( I$ ~; T. a. H2 X                        }
! R  I2 E/ j  G  V0 S
& g2 L* _$ V% c' M) @/ I' s#if __VER >= 15 // __BS_CHANGING_ENVIR
5 J4 s$ Y' ]) h3 ]; I                        if( g_pPlayer )# B# x" l6 o( |* f. Z7 q
                                HookUpdateLight( pLight );" e( V, u( r9 ?4 c8 y, ^( g
#endif
/ H+ @/ C( e8 M                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 B. ~# o, p; P6 i0 F2 P, `! m" p- C' a% M8 l
                        pLight->Diffuse.r  += 0.1f;
' S* Q7 Q8 F: H                        pLight->Diffuse.g  += 0.1f;
  g6 T7 L+ u! G$ W                        pLight->Diffuse.b  += 0.1f;
# ?: v( @9 e* G# }" O1 l                        // oˉè* ??à? 5 B' s; @3 v& ~$ t1 N2 a
                        pLight->Specular.r = 2.0f;- }8 J0 w1 W6 j1 L9 v- o# A
                        pLight->Specular.g = 2.0f;
& M! H, W; G; W; z8 Z                        pLight->Specular.b = 2.0f;1 Z5 q1 f& P3 u9 o8 Q: Q
                        // á?oˉ
2 U+ c7 D9 E3 {. _                        pLight->Ambient.r  *= 0.9f;1 ^# p8 W# k. `6 W
                        pLight->Ambient.g  *= 0.9f;8 e4 i8 i; ?- D" D$ r
                        pLight->Ambient.b  *= 0.9f;8 n* X& P" a: e& X
% t9 o  b2 w. }$ s$ W0 g3 u
                        memcpy( &m_light, pLight, sizeof( m_light ) );) ?! H' M2 R5 d/ [/ ?# r) I1 J  m
                       
- U( C7 R& H( o3 Z) ^                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );/ a) F( G" T& U$ _3 u+ I* a
                        pLight->Appear( m_pd3dDevice, TRUE );$ `  J9 G/ Q  k2 j1 |' `. n
        + `5 b9 W4 u: Z! W3 N
                        DWORD dwR, dwG, dwB;
1 O! N8 F, N9 s4 z* a; I* V7 w                        dwR = (DWORD)( pLight->Ambient.r * 255 );
4 S" b* M% U, E' I- |                        dwG = (DWORD)( pLight->Ambient.g * 255 );( Z: z0 |9 ]4 P+ p- ~
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
4 \8 i8 L. u+ r) c- [9 R                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 ~! t! `3 l2 w, g                }! Y- u' F( M$ Y: u
        }
; u3 T; C0 u2 @- v' o& c        else1 Z9 T7 ~' L+ ]* q7 d6 p' i6 R
        {
: n6 W% q; J. K. {/ K( [8 G                if( pLight )0 c9 b" k% ]- l
                {
1 m  b* y- p5 q& C' |, A                2 e  S+ N+ B. O; l. R0 H3 q: @& v- W: u* _
                        int nHour = 8, nMin = 0;2 k* i6 r  M8 h' t8 p
        #ifdef __CLIENT$ N9 U) \4 |$ q0 s$ b
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
3 P0 ]* @* A- s2 }# B& o" N* @                        nHour = g_GameTimer.m_nHour;
7 d2 n5 E: ~, w0 S* |4 _/ ^* D                        nMin  = g_GameTimer.m_nMin ;
/ ]0 j: W# t+ l        #else
3 Z" `' z- I8 d" g9 e; B                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
( s7 t! p. v% H4 Z/ |8 E                        if( m_nLightType == 1 )6 x$ U+ ]9 @' W! N
                                nHour = m_nLightHour;
7 m+ R6 @: l1 ?2 K: P* Z        #endif
; i9 D, M2 y7 C                        nHour--;8 c  d0 }! X. ~4 L& A2 \3 [
                        if( nHour < 0 ) nHour = 0;
/ l5 G8 Z5 ^& t( R, S2 Q                        if( nHour > 23 ) nHour = 23;
! L+ W6 y+ H$ U7 K, O3 L. D3 e
. {$ i7 o! ]+ i, b' j* [4 T                        //if( m_bFixedHour )
% B, O3 d- Q2 t" @+ z1 f                        //        nHour = m_nFixedHour, nMin = 0;! H5 T$ |8 \; U$ u6 T
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
0 j: Z5 _7 T0 w; E! a                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
' s# r, o- M, [2 W/ \. R  g) W
! H8 w! }4 X% e3 Z0 r% _1 p                        //m_lightColor = lightColorPrv;
) K+ ]) `( Z$ j+ \% d                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
# U$ E( Q+ V* i7 I2 L; o                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
8 Z% ^7 c' z- [1 H                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
5 ]0 w9 g& U! q1 g0 D, H2 f2 m9 ~                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
+ V8 V! j2 U& d: G4 d) Z                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
6 Q1 T/ p1 D  k+ V/ I6 w& n4 `                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;* f4 L& H3 ]( C% ]: h6 m% H1 n
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)3 I7 C) a, R! ^" g6 S$ V
$ n5 I$ U9 R, Z+ N+ q
                        // à??μ oˉè*
7 K* u3 ?/ D0 G+ y( |                        pLight->Diffuse.r  = lightColorPrv.r1;
, ]) g' h2 A4 Z7 |8 h! i                        pLight->Diffuse.g  = lightColorPrv.g1;, T- p( v; V7 n3 v
                        pLight->Diffuse.b  = lightColorPrv.b1;; A7 X  C2 ~- ~  g+ }! Z! R
                        // oˉè* ??à?
- X" O4 M9 Z4 G9 l8 p" T                        pLight->Specular.r = 1.0f;
, L5 ~. ^4 }) _- q5 w                        pLight->Specular.g = 1.0f;2 Q9 J- x& z* K: Z2 K. X. _
                        pLight->Specular.b = 1.0f;9 {( b0 Z, z2 j" V; `5 Q# n5 B7 O
                        // àü?? oˉè*
- W9 F, h* ~4 y$ q                        pLight->Ambient.r  = lightColorPrv.r2;/ a1 t8 E- H0 O% N' L
                        pLight->Ambient.g  = lightColorPrv.g2;7 V8 M6 E( W( y7 |4 F. S; {
                        pLight->Ambient.b  = lightColorPrv.b2;0 p; g, C* Q- B2 `8 M

+ j$ Y% i; d# `                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
) W; s' G, s# I* R  a# Z- m                        {$ P- @/ f( F, Q! a. C
                                pLight->Diffuse.r *= 0.6f;
' y' ], |! W- o! g                                pLight->Diffuse.g *= 0.6f;
3 [6 c- q% k: r; h- G% z  P0 G                                pLight->Diffuse.b *= 0.6f;9 N: r. R& Y  i- O2 e0 z
                                pLight->Ambient.r *= 0.7f;
: w) m. C6 R0 s# q; `                                pLight->Ambient.g *= 0.7f;" A2 i* T$ q# w2 ?
                                pLight->Ambient.b *= 0.7f;
& V6 o, f( _. R- u                        }& x& D( i4 [3 Z3 W, v( B
                       
+ ?, V. a1 f% U3 N/ k#if __VER >= 15 // __BS_CHANGING_ENVIR- |3 X5 \8 _/ t0 j
                        if( g_pPlayer )0 q  c2 i( o( @: r) Z
                                HookUpdateLight( pLight );
; g% F8 f# q  U& P: C#endif2 L4 i8 R# L8 G3 `/ s
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );; ]% g4 S, P5 V3 @
7 y- }: _4 e6 y* M0 E- P4 ^) V7 ?4 c- l
#ifdef __YENV, g$ |0 q2 S+ ^. ~) R! T5 S
                        pLight->Diffuse.r  *= 1.1f;
7 _2 D5 S8 Q' S, J                        pLight->Diffuse.g  *= 1.1f;
, O! O9 `" [% z                        pLight->Diffuse.b  *= 1.1f;% p: I6 h, U; w' ]. v0 d
                        // oˉè* ??à?
$ [2 s, L# v- n/ \0 @2 r                        pLight->Specular.r = 2.0f;
' Y4 [4 p; }+ g* Y: T, i/ y                        pLight->Specular.g = 2.0f;2 U% ?2 V& q/ U2 F
                        pLight->Specular.b = 2.0f;
1 D6 ?7 W. F# q$ _- Z# z4 M                        // á?oˉ
  T8 N9 ]) G; {! |: ~9 e                        pLight->Ambient.r  *= 1.0f;' t8 b0 X( [% h; b! P- N
                        pLight->Ambient.g  *= 1.0f;
0 F/ Z' \  j! [( s: b                        pLight->Ambient.b  *= 1.0f;
- H+ U0 u2 k1 y! ]) u$ K#else //__YENV0 e2 b7 p% _% R& P( J# }% s
                        pLight->Diffuse.r  *= 1.1f;
) O$ u; [, |. K% F2 \! f2 {/ t                        pLight->Diffuse.g  *= 1.1f;) b' O7 ~2 {' A0 T0 v, @
                        pLight->Diffuse.b  *= 1.1f;
$ l; b8 y  d; r                        // oˉè* ??à? * e9 D1 n( h4 g! v' G+ K
                        pLight->Specular.r = 2.0f;8 y9 M! K5 B; z2 S/ n4 K5 P
                        pLight->Specular.g = 2.0f;) @8 N8 E; N0 j2 u3 i! \
                        pLight->Specular.b = 2.0f;
9 a6 k2 W% ^( I3 w                        // á?oˉ
% P5 N2 f  x- u; O: U0 f& c: O                        pLight->Ambient.r  *= 0.9f;
/ d( R. c* J$ w4 `0 o' y                        pLight->Ambient.g  *= 0.9f;
1 G5 E: c3 Z# P( L. u, t                        pLight->Ambient.b  *= 0.9f;" `# U* f+ K! u; G* v" b
#endif //__YENV
6 e, v6 I. c8 @                        $ M' ]* U1 M! y
                        memcpy( &m_light, pLight, sizeof( m_light ) );2 J1 i  {, @0 a4 W( w
                       
+ `5 y5 e) n# t                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
1 t( r  |3 n+ Q% o2 H* g$ V                        D3DXMATRIX  matTemp;
, k0 O  [- I3 n: K                        static const float CONS_VAL = 3.1415926f / 180.f;# J# E7 j+ ?7 b$ R0 I4 R! `

% }% ?4 ?/ S6 c+ O; M                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);# u* F) Y8 V+ d; H+ J+ ~1 S; ~
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);0 @: q! D: J5 m; U
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); ) C0 |# U; o1 B0 z) v% ]8 J5 D' ~
                        pLight->Appear( m_pd3dDevice, TRUE );# q" j; `9 L! n( O7 J+ l0 z

, i  i; n3 X0 Y, [. }                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 h4 N5 m4 k: A1 K                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));! _- w& l. o* D5 o3 B. M
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ( [- L+ e  U; b. D

: H7 g+ [+ F" D' \0 C  X                        DWORD dwR, dwG, dwB;/ m- r6 T: l% r, E$ s- g
                        dwR = (DWORD)( pLight->Ambient.r * 255 );8 R8 _' S4 I. V' U/ C! Y
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
8 Y5 x1 N5 L4 O$ S( g                        dwB = (DWORD)( pLight->Ambient.b * 255 );7 @2 p) F. ?( g0 i& P( f
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
" I6 O6 A& M! W1 o7 d+ s6 u                }% j5 q2 g  q; H( ~2 |
        }; e  y8 E; X; a1 M! L0 G$ d

' H3 C( }2 W( G7 R/ j5 K6 x4 J9 o' T        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
5 ?, O7 i) T! z7 @1 T  N9 p        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) );* g# P" z+ d* w9 u
        ::SetLight( bLight );
: Q: c2 y- Q5 |+ s% f/ g1 c) m5 F4 j) g% H" X* ?2 L
        // ±ao? ?D?í???ó á¤à?
( @+ U2 c+ A- F# [! V9 z$ m        m_pd3dDevice->SetMaterial( &m_baseMaterial );. J/ z. R+ D* E# y4 \8 D
        & P/ k: ?, T: y  e) v6 z  |0 e
#endif // not WORLDSERVER
) ?9 i6 d' M5 V" i& ~5 D}5 |7 q7 n  L1 Z" {) z! C; ~. k
并更换
: ^1 R" X- ^# BCode:+ e* ?( U, ~( o3 q4 Y
__FLYFF_INITPAGE_EXT
; j6 t" Q8 q' A4 A7 `! R5 A. Z定义
8 J; j2 N9 j* Y9 ?4 g; P' [
% y4 X" [" N# K+ E% H9 o8 g7 |5 O: f1 ^8 I
" |3 P& k. Z, j$ v6 n% `
7 o" N& ]. m' _, c( R
现在终于删除我的狗屁加速...4 e, H5 |+ N0 X
5 f3 @  e: x3 q
) Q, i2 c# [. C6 }9 K. g
& U9 O9 z2 e/ h+ d9 c





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