飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:6 r! E. Y' N, X6 q7 c0 n. \/ v/ }8 F
尾翼:/ `# y( V+ \& s! d; z4 a6 d5 @
" \. L% |  i; [3 c6 t) {  V
代码:; y* g5 x4 Q/ ]
CWndAutoFood::CWndAutoFood()- ^6 x7 D! U  v% b' d$ v2 A; s
{* g* K. S5 F2 V/ P( a8 p( W
        m_pItemElem = NULL;3 \( n& u0 }: Z! P# H5 N3 K
        m_pTexture = NULL;! l/ _# {% i1 u1 ^7 a
        bStart = FALSE;$ P, h# }7 h9 b& B5 T0 n
}! Q  v$ A$ ]# Q2 F5 c0 G$ o0 _
  ]) T1 B& f- k: ^! W
CWndAutoFood::~CWndAutoFood()
. x9 |& f% P# R$ G) |- f$ J{  ~2 b* z! a% {- L0 k  g: L
        AfxMessageBox( "AutoFood ist gestorben " );0 g7 ]9 z1 J8 n% X# J5 b! e
}
( _& j0 q% @1 y2 l5 A7 v5 JBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )5 \. e1 g) ?$ {" t
{; o9 {; d) C" J0 X$ b
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
0 g# n& h3 I7 d. Q0 n* n}
3 ]1 p* i: [5 b5 B1 @# e/ v3 k( K1 A6 V& L- `. l- v
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )* T0 g9 q* M1 t% H
{2 w& d/ ]8 d# P; M
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );  R! ?( E7 A. l+ |/ x
        CRect rect = pWndCtrl->rect;
2 r7 L' J* J0 i( B2 X; m        if( rect && rect.PtInRect( point ) )- }& U0 `8 L# R/ i4 b
        {& Z5 ]) p0 P& b5 K) w
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );, `( Q& @1 ]4 M* Z; h1 Y; V
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )! k. P, p) \9 N" k
                {, K$ m$ C6 t2 E+ Y. E3 V: L
                        if( m_pItemElem )' A! [2 O* L) F3 b% `% `
                        {
6 W0 k3 ]7 f5 \                                m_pItemElem = NULL;3 T" _4 |$ V( }- o/ g
                        }
5 f8 H1 y8 @) }* T- V$ ]! M2 ^                        m_pItemElem = pItemElem;
5 a) s4 M: d6 x                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );4 T( b9 ~' E7 E* n  x
                }else{
+ U8 ]* a1 d5 o9 [7 _                        SetForbid( TRUE );" E8 P. K4 P+ D# T6 x5 N6 c' }
                }- l1 `- ~! m6 M
        }else{
! M2 {; G) i4 h3 Q% G9 D! y                SetForbid( TRUE );6 M' G% g1 K1 D$ P
        }! Y! w5 z7 q& w! W8 ~. {
        return TRUE;
+ L( {' m, S' @/ B}8 v( w$ j7 V( Y# d

  b# z  V7 F: Q9 Y/ b7 \BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
4 y9 V, B2 j5 c. A" b& [% M# y  K{
& ?* W- d/ h* S        switch( nID )
" h0 |( }+ M! F        {6 Q1 S; y- T+ n& }- F) I
        case WIDC_BUTTON3:
% ^, m; C) ~# R* l8 N8 g                {
  r3 B$ q4 b- Y3 R! ?                        bStart = TRUE;- m7 v. y: F7 E) p- }
                        break;
5 E# g- P# v8 V+ @1 L6 Z; `                }' n1 U- ?6 d5 r
        case WIDC_BUTTON4:1 r! b" J3 @4 M, }0 P
                {; Z' U" b" ?& \2 C; I
                        bStart = FALSE;
( E! ~; j" y0 X6 w9 a; g9 Z6 N2 S                        break;9 P( f  G5 a; V4 T
                }' }, X- c2 g( u: D% B0 d! L
        }
* ?% e: B- i2 Z; B( ~; b6 e$ d        return CWndNeuz::OnChildNotify( message, nID, pLResult );
: Y8 c& Q) G* t8 q5 D}       
3 E, m( g7 J7 K, A7 Vvoid CWndAutoFood::OnDraw( C2DRender* p2DRender ): X3 ]4 x% b7 z# `0 F
{) L$ C2 \% o6 [7 u& {8 Q% L( l1 ^' }
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );, q8 ?" G+ H5 E) X3 J: H
        if( bStart || !m_pItemElem )
3 l, `$ Q% e$ H# d6 ?        {5 {. }& ]" G& p3 a" v( X
                pBtn->EnableWindow( FALSE );" @/ p6 r& n6 ^, w) Z
        }else
2 {1 i" U" E6 s' \' J1 `                pBtn->EnableWindow( TRUE );  C5 E! F+ H7 Z2 R" P8 l- D6 d
        if( m_pTexture )
+ _6 d0 ]( Q9 r2 C7 n        {
7 @/ [/ z" `- Y3 b                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );7 V( o. ?5 j" X# H( ^) D* K
                if( wndCtrl && wndCtrl->rect )
3 f) J/ N4 o# v/ X5 _                {* Z/ _. l& W- K1 V; h
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );5 J/ `2 W: s) V& y0 ^& p
                }/ c0 |/ C% |# ^! C5 ]! |
        }
/ i) u  r5 S' W& |}" F6 k0 o1 H9 o8 M4 S: h

1 I( n/ g, I+ P% i% f) K/ i6 G5 WBOOL CWndAutoFood:rocess(), d; F: n+ d0 b- I$ S* J
{' {  B6 ?# q( w" p  F7 M
        if( bStart )# ]  W4 l. R! g& P" p2 B/ n
        {
/ t6 B; z! n3 C( n% r- E7 p* w2 s" q                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )) h- U  T" Q4 R' B% u# x( |
                {2 t" ^; Y# Q" x! z
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )& ?: f3 W# ^2 l7 t
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );8 ~% D" A! X" P! l) @
                }else{
$ R7 a. V3 u8 `                        bStart = FALSE;
! ~* \+ H; g& v* [                        m_pItemElem = NULL;
9 x! D2 o% i3 L                }) x& K/ l/ c- g  c
        }0 f: u9 s- m" ]% p& n- x9 ~& o
        return TRUE;
1 z- _$ @9 D! j7 C, x  U6 e5 D}4 L7 T# D4 r$ g. ~" o
- l7 P0 m! f1 M
登录视频废话:' n1 |/ H  M! G% }% K! j
尾翼:
3 Q3 z# n3 ^3 n9 z& E. C5 Q  [" W: ]9 l: Z1 s
代码:3 h% k& g" ]  z+ S* ?

' F' R, m0 h' w( c7 u1 B# o' ]void CWorld::SetLight( BOOL bLight )0 O! V8 \5 _3 M( L
durch. C" ~$ q" S+ M" M' B
Code:; F  |1 o. x$ e0 s" X% N* T
void CWorld::SetLight( BOOL bLight )3 G& t4 y# F5 F
{
/ ^7 e4 C0 q8 `, \- w        //ACE("SetLight %d \n", bLight);
& i9 A! \. m: R/ O        # H) G% {, \; o2 G( m/ J, I
#ifndef  __WORLDSERVER 6 \+ w, B7 `) k) l+ d
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);$ A( q# B$ ?$ v
        CLight* pLight = NULL;7 T  K; Y5 k  G/ `$ n+ F9 P
; I( g! b7 L2 n! w& G# [% B& t
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
! U$ @9 H( a: U7 W, T7 n. L; V+ `, |* l$ J7 Y+ S
        pLight = GetLight( "direction" );$ ]) y$ j" a5 S1 T; s* F! A+ x
2 a* o# |8 c7 F! s: ^1 n7 ]
#if __VER >= 15 // __BS_CHANGING_ENVIR* t7 R6 D1 A! A
        if( g_pPlayer ){
' z: o* o' X& M; ~                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );1 J, r$ O4 g% h+ V* @" O, L
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!+ F0 x& M  c1 a8 o9 s
                {
1 v, X0 U: }. p& c3 ]; S( s                        if( pLight )
" x3 H# V5 Z& q- f                        {
% l3 t! h: f" L# ]7 p# o                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
4 i! ~; q* a, E4 p4 L2 f1 E3 |                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
# M% I/ f* X; h( Z" r& Y                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];' |  e: x' Y/ \( y3 W8 [
, T: j) G  K# g. x
                                pLight->Specular.r = 2.0f;
) ]  k* L# ]2 g7 v; \. m                                pLight->Specular.g = 2.0f;
; u# `6 E5 o0 p5 ]( P3 d5 Y                                pLight->Specular.b = 2.0f;
2 c) e) g" y- ?# X* e: j0 j        1 U0 h8 h) W; E9 p- h9 H, p
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
* S$ q8 V( p/ s6 N                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];- o" W* R; ^/ v% j; P5 C6 C  X8 [
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
' k8 J3 |8 G' c' D7 M/ b        / @6 E% q" `6 G: u% z
                                HookUpdateLight( pLight ); 1 F8 Z% E" M! ~3 a" L$ m+ Q4 i
& q' D% n% c' E6 O6 X5 M
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );" |, J' F/ t$ t$ [- P6 D: T0 e
               
! L" U/ l  {; P0 g, n' e$ j9 g                                pLight->Diffuse.r *= 1.2f;1 p2 c/ j! j& ?- S+ A  X4 L6 i5 a
                                pLight->Diffuse.g *= 1.2f;
0 \, e7 F& L1 Y  t  ~7 i3 a) p                                pLight->Diffuse.b *= 1.2f;
. d4 o# p; L1 \/ v) ?5 h# u; {0 C3 v7 K% C% ]* h8 D9 j1 D
                                pLight->Ambient.r *= 0.8f;5 p+ D! V6 f- C0 X- T" I) w0 Y
                                pLight->Ambient.g *= 0.8f;
7 G2 Q7 C- i. n% R/ I. z4 O                                pLight->Ambient.b *= 0.8f;/ `% x3 O+ i) q4 x3 Q) ]! `
        5 a, @% Q  @# t2 ^1 E) A. E
                                memcpy( &m_light, pLight, sizeof( m_light ) );% X" r2 ^, m# ^" U/ k
! F  w1 }2 ?; O" e/ {
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 j( F, ^- p- T7 M                                 D3DXVec3Normalize(&(vecSun),&(vecSun));6 Z7 ~8 f# I9 X3 K2 i) b# ^6 f
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 j, ^' ~$ j* M6 m) {" t                                 pLight->Appear( m_pd3dDevice, TRUE );- x0 }: N% o) O7 N+ }/ ~' r
                # R: V/ g# D9 g6 Q) N* B
                                DWORD dwR, dwG, dwB;+ j, I$ Y& A" g! \5 S! O
                                dwR = (DWORD)( pLight->Ambient.r * 255 );  J, x5 p' w3 z9 [' I6 D+ Y* H
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
& i% `4 I9 W5 A2 _' j  P  z) v                                dwB = (DWORD)( pLight->Ambient.b * 255 );$ r& a; _3 V/ e. a0 a
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );( F: a- [  f% c4 z8 F! d! H
                        }+ A6 ]( _7 J( |* N
                }
! E6 ?1 N/ L7 o" ^4 b        }
% z/ V$ D/ V3 [0 q        else! W3 m( d4 ]1 L
#endif ; Q* Z1 z' ^1 C7 ]# S9 t5 H5 @# g
  G; a7 v7 h3 `# C+ \/ q6 ?6 p
        if( m_bIsIndoor )
( x# q+ a, T$ N2 H! m) h        {! Y: U: y* ]1 T2 C" T/ P5 a0 \' c
                if( pLight )+ R. ]6 ~7 t; V3 X. K) W7 A, `' Q
                {               
6 M( R3 O! J( S* d) U                        // à??μ oˉè*
: C+ T* A& |/ d+ q( o" O' ?                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;; a  W3 X+ Y( [7 A
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
5 H2 N/ A. T2 }                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;' P: [* v5 o2 S2 p* i
. Q5 x) q1 \) A" q( p
                        // oˉè* ??à?
0 c2 d8 W) Y, Q& J; V; v( Z                        pLight->Specular.r = 1.0f;: y, [' b: H( z$ C% M/ I# R- s* ^
                        pLight->Specular.g = 1.0f;6 i$ Y; k* k0 c/ N
                        pLight->Specular.b = 1.0f;& V( o$ j& I, W1 L4 W
                        // àü?? oˉè* , E5 ^- H4 e$ z* l. f7 [* b: C
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;: ^- U( [7 L- h, P* E. Z' j4 H
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
0 T* C3 ]  ?% O# V                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;  X0 x! b/ I; P6 e

# C% P5 g5 b  i& A' p4 z& I4 n                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
+ {! e; r2 S2 F& w2 S1 u                        {0 A. P4 V, f8 G" j5 v5 W7 M& v/ i
                                pLight->Diffuse.r *= 0.6f;. U/ O- Y* p. D6 a4 n" S: f
                                pLight->Diffuse.g *= 0.6f;' D: a/ ^+ T# j, \& O9 U. Q
                                pLight->Diffuse.b *= 0.6f;
7 V8 n  F. x1 S* J                                pLight->Ambient.r *= 0.7f;' H2 G3 Q  a% f1 G6 H: m
                                pLight->Ambient.g *= 0.7f;* y3 M$ A- {/ X
                                pLight->Ambient.b *= 0.7f;
8 h  \( Y! Q9 W% v1 f; r                        }
2 G+ h% X- C" ^  J2 E, Q* E9 C5 G- D
#if __VER >= 15 // __BS_CHANGING_ENVIR
3 y5 X# }: O8 x; i                        if( g_pPlayer )
: }3 i0 g" z$ A6 {; Z, }                                HookUpdateLight( pLight );& K9 |/ m" q  [& [
#endif
9 D& b8 _, N& Y! h* `                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );! F+ A* V) H  B- k& d- n9 T
5 c* r7 l8 g2 ?# Q' n! H" a1 T9 T
                        pLight->Diffuse.r  += 0.1f;, c" o3 e$ N% P# p( F8 d
                        pLight->Diffuse.g  += 0.1f;
2 {8 d( }1 M) C" R9 Q                        pLight->Diffuse.b  += 0.1f;5 D0 r3 U* z' w9 Q: P$ J" g
                        // oˉè* ??à? : [  \8 _& [5 e7 X* U- t" A/ G/ l
                        pLight->Specular.r = 2.0f;$ R( x8 y* G5 c, `$ H3 r* b
                        pLight->Specular.g = 2.0f;
# Q% x1 ~2 d/ J/ D4 `                        pLight->Specular.b = 2.0f;
" U) i! ~5 n+ e, P) G                        // á?oˉ
6 k: e! x0 e; z2 O, E                        pLight->Ambient.r  *= 0.9f;* N' S5 W# c* x3 Q: K  d9 X
                        pLight->Ambient.g  *= 0.9f;3 B. ?9 Q8 l9 }% b6 |
                        pLight->Ambient.b  *= 0.9f;
0 O: x6 J4 f2 i" w
: u7 B* R0 b# O% u- E& i                        memcpy( &m_light, pLight, sizeof( m_light ) );
& D# t9 t$ p' H" l" w& Y+ c% \                        3 f' w- ~! f' u% o4 R$ c
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
) L  F# i! e  l" H' l                        pLight->Appear( m_pd3dDevice, TRUE );
4 c- l2 `3 {3 f7 o. R       
* P0 Q3 n. k. L1 r2 n                        DWORD dwR, dwG, dwB;
7 a1 m3 }+ t% v( s- ?! x                        dwR = (DWORD)( pLight->Ambient.r * 255 );& K- [( S0 D0 E; l2 a  r( Q
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
' R# A7 w6 E/ Q* ?* b! B                        dwB = (DWORD)( pLight->Ambient.b * 255 );3 C+ S+ g4 h, m/ w" {0 ?, |
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );! c9 U4 E$ }" Z8 a9 j
                }  }6 i) y  F- p" N8 }
        }
$ P& a4 S" s, G2 l* L        else
2 K+ a. Y" n5 O, u/ E        {$ w% _& H8 `+ ?0 P7 y# E. v# X( v
                if( pLight )9 k* ~6 M( D# U0 f5 @; U
                {
1 D' q- j  {2 d8 u4 b               
5 E& b" j; y& k                        int nHour = 8, nMin = 0;
  d3 w/ Q, H: Q" `        #ifdef __CLIENT( C. ^; a5 ?9 i* M# @2 H
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. . w0 n- l1 m. {& ~4 p
                        nHour = g_GameTimer.m_nHour;5 Z8 [+ c8 C( B: j: o, }
                        nMin  = g_GameTimer.m_nMin ;; J! T% P4 \% n2 I  X
        #else
: F' R- ]" p1 |* _5 d6 C                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.* u" z4 m0 f4 K/ a7 J
                        if( m_nLightType == 1 )
( D. @/ |7 n2 X. E5 `/ _) d                                nHour = m_nLightHour;+ S# y2 ^, |1 ]. w; v7 {
        #endif" p+ }4 c# `' s! y! ^4 T
                        nHour--;( d' L2 h6 M) @" r( }! s' G
                        if( nHour < 0 ) nHour = 0;1 L( e( N6 T  M$ y7 v
                        if( nHour > 23 ) nHour = 23;
2 f9 P9 o0 y: a/ D7 }% b4 g0 l" r2 |/ x3 N4 u
                        //if( m_bFixedHour )5 ~: @8 _; Z" q! P2 |
                        //        nHour = m_nFixedHour, nMin = 0;( c; k# t; q! U  H4 y+ w
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
; w) V0 l: S9 C3 l                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
3 |& P6 G* h& ]$ ~2 Q
9 E( c/ a! s+ n# f9 |                        //m_lightColor = lightColorPrv;
1 B8 W$ X( |* @" v                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;! C& v: }+ l" Y2 y) j
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;# o& [! Q/ f" Z
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
  [1 e7 k: o7 O$ H3 Z                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
! M. u# M/ A$ `" N: q                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
1 T% n- ~4 k- b8 j' g  Z) J- b                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
& g( ~  `% R7 q; O                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)1 `- v. t0 B2 d, ~  G2 c8 {5 j, h
2 J  V% I3 c1 E# @6 G
                        // à??μ oˉè* $ D7 ]$ P) D2 \
                        pLight->Diffuse.r  = lightColorPrv.r1;
7 D- h: s9 _. R; u4 f  v                        pLight->Diffuse.g  = lightColorPrv.g1;
2 N2 y' t7 P: X- O  T0 P- ~3 s                        pLight->Diffuse.b  = lightColorPrv.b1;
' o7 t4 g% H& Q                        // oˉè* ??à?
* E* ~, [( I( W                        pLight->Specular.r = 1.0f;
# u! X+ c7 ^# v" x                        pLight->Specular.g = 1.0f;) \6 c$ p, I6 H! l8 P7 |
                        pLight->Specular.b = 1.0f;
) K; t/ M; b' [$ N2 N1 ]6 O                        // àü?? oˉè*
' k% `1 @6 c6 ^: G4 S7 O                        pLight->Ambient.r  = lightColorPrv.r2;
; P+ o: Q# t, l; ]2 i" C) g                        pLight->Ambient.g  = lightColorPrv.g2;2 v* A" \* W4 O& D" w$ N) K9 ?* u
                        pLight->Ambient.b  = lightColorPrv.b2;2 d2 J' s" D, J4 m( X2 j& r
( J3 V" t  Z# H7 [6 [* [
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
8 D. ~$ U" |) n2 ~, F1 a                        {
. T, ^( n* x5 U, A2 i# W                                pLight->Diffuse.r *= 0.6f;
7 W' k$ I* f5 M; E9 `8 l) P                                pLight->Diffuse.g *= 0.6f;2 x( k/ X  J/ ]# J& A5 l  s4 d- V
                                pLight->Diffuse.b *= 0.6f;3 n7 y: M1 C  T1 C: l  r2 W1 X  w5 ]0 u
                                pLight->Ambient.r *= 0.7f;
' n7 O0 L3 u0 B2 \                                pLight->Ambient.g *= 0.7f;
4 D. R" ?% N; r  r) s                                pLight->Ambient.b *= 0.7f;
1 k9 E- S3 Z9 N1 t$ m" ~% G7 r                        }2 Q( L. ]* {% B0 L
                       
1 Y, a0 r% ^$ U! s% C6 H#if __VER >= 15 // __BS_CHANGING_ENVIR  T, y. I( A7 c9 ?! y! e
                        if( g_pPlayer )$ |% Y( E" r% y7 y; t0 ?
                                HookUpdateLight( pLight ); . z) d6 b2 B5 l9 w/ h# ^
#endif
" O6 l$ g( D& [                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 y- b5 D8 o" E& _* V! Q% t  N( I% y' L2 I
#ifdef __YENV- H% Y; g! e) j% T) I
                        pLight->Diffuse.r  *= 1.1f;6 z. X* e+ S5 \9 S3 H, A* L
                        pLight->Diffuse.g  *= 1.1f;
& L& w( g, I$ Z8 N2 T+ N                        pLight->Diffuse.b  *= 1.1f;& h' r3 h9 y8 d: m, O( f7 S
                        // oˉè* ??à? - l  f9 l( W' Z, o8 K- v' J- W) p
                        pLight->Specular.r = 2.0f;9 L; X7 @4 |* a6 h
                        pLight->Specular.g = 2.0f;! C2 x0 e  F" g8 X
                        pLight->Specular.b = 2.0f;: U# q5 M! [; ~2 P' Y( ?$ P  w
                        // á?oˉ ' |" b$ r- y  F. ~
                        pLight->Ambient.r  *= 1.0f;4 Q/ r! Y9 b2 I  ]4 r0 B
                        pLight->Ambient.g  *= 1.0f;
0 n4 F! t0 l) K" C: z4 s                        pLight->Ambient.b  *= 1.0f;2 V, t. S) E; Z- H
#else //__YENV
+ d7 ]$ b# j$ \  q0 Y" z* S                        pLight->Diffuse.r  *= 1.1f;& {1 {) v1 v, i. r/ b/ S) t# r7 M
                        pLight->Diffuse.g  *= 1.1f;7 f4 R1 L3 E8 e% O0 Y# q( D
                        pLight->Diffuse.b  *= 1.1f;; W6 c3 G9 s; f' w: F6 h! u/ j
                        // oˉè* ??à? 4 _5 H" ~9 }( d! s/ u
                        pLight->Specular.r = 2.0f;
" ]! j6 }0 F) J) Z                        pLight->Specular.g = 2.0f;
. R6 J( E) j2 G# |8 q! @                        pLight->Specular.b = 2.0f;
! b# u6 o, u7 p) S; t# Q3 e                        // á?oˉ , ^: |7 c# T$ i4 \6 r
                        pLight->Ambient.r  *= 0.9f;2 Q5 a+ r% G$ a; a2 D5 {  v
                        pLight->Ambient.g  *= 0.9f;4 y) ~( R( d5 i& o0 O" k' g
                        pLight->Ambient.b  *= 0.9f;" R/ \7 @# W! h: a8 ^* m
#endif //__YENV # `' S2 Q+ j; [2 Q( d
                        . d' Y6 I( Q0 x/ v! R- u/ P# Z2 o
                        memcpy( &m_light, pLight, sizeof( m_light ) );
% O3 V# S1 Z+ E% d9 h                       
. ~7 p+ [6 t$ f1 ^+ ?3 k                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);% c- {' @% e' f* F& j2 k* F5 u- J
                        D3DXMATRIX  matTemp;
* W, b' B4 @* f" Y( W) V                        static const float CONS_VAL = 3.1415926f / 180.f;
: y( t. N% F& q) a
8 i0 h, Q/ w8 D: g                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
% B/ ?. {$ C! r4 f' U                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
1 |9 W3 n0 _6 M" u5 b                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
2 `- C# x9 j5 f% F. l1 C5 ^& l                        pLight->Appear( m_pd3dDevice, TRUE );
/ r6 l/ E; G% c. B) r5 W5 r3 @
- ^& L& T# [7 D3 Q4 r$ [: d                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
$ e' y# h2 b% E# |: h' @                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
1 ?  F& b4 C4 R                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
7 O: l0 @1 J) a  B+ ~& B( S0 ]! z7 m1 h# V( L6 ~! f# i8 T: |6 ~
                        DWORD dwR, dwG, dwB;3 q9 V% [4 W7 G3 V1 ]; x5 s7 N0 W/ m
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
( H6 g& d, D/ f5 P0 p1 E' A                        dwG = (DWORD)( pLight->Ambient.g * 255 );
/ W7 ]9 r; W$ U+ l: [. a                        dwB = (DWORD)( pLight->Ambient.b * 255 );0 h" S; m- K3 [/ h, l7 U
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                          n( I' L0 }+ y0 E0 |9 T& h) Q
                }+ P2 r% e5 l* M+ c" g1 u, g! x
        }) t- r; K3 t$ C8 C

: P' x1 Z. P' T6 V: w1 N        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
- r: V6 Z+ E: X; t" J        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) );
  y* C+ j( P+ J9 j. d/ E        ::SetLight( bLight );
" t. `5 K' g1 {; j! t) ]5 [
$ S, z  H6 ]. `7 v& o$ R( z        // ±ao? ?D?í???ó á¤à?
7 g+ e, L+ E0 L% j% i; d+ q        m_pd3dDevice->SetMaterial( &m_baseMaterial );
3 \$ o8 a; ^7 c8 ^4 ]  B; q       
2 `* w6 ^+ x6 ?3 I6 h1 ]#endif // not WORLDSERVER' a+ _' t" l, q4 e0 L$ u9 _2 ]1 r5 p0 J
}1 Z( c) _) ^. q) g) l/ K  u7 i
并更换
, E% O  d. L+ e8 bCode:
- {5 O9 U; |' A  T; e__FLYFF_INITPAGE_EXT1 G, O7 t! e7 p9 R
定义
1 c, w0 u- ]# z" t& ?* d. }# ~( x
7 [9 v9 F$ _$ R! f8 O! s& S  s+ H7 e! v6 ^
0 V( J8 G4 `8 q- Q: E
2 Y6 E3 s$ Q) C! m! B# R
现在终于删除我的狗屁加速...
# ]/ A% V& p6 F3 Q8 D
2 `! f' i' b" ?5 }  C6 T# N- P) i8 W6 m1 Z3 v7 f# ^/ s) I7 b# }
9 ~+ H* d) M) C3 T+ `





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