飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
$ ~" @  V* n" L% g1 U$ i! E尾翼:+ [8 C6 g) I; M1 @! h

& U# Y: ~- I3 {6 Z代码:
, q* P0 w, {* A  G! VCWndAutoFood::CWndAutoFood()
% c7 u& a" D! z3 ?& R# u' `0 Z4 ^. b{) V$ f! ~6 h) y9 ]2 M
        m_pItemElem = NULL;
# y, @+ @1 m5 L+ {% Q! I        m_pTexture = NULL;2 t0 ^# K7 m7 j5 I9 o
        bStart = FALSE;
  E/ p9 J, y1 d3 I, p6 U" a}5 [; {: n8 U( g! v9 {

# [! Y* g3 K. j) LCWndAutoFood::~CWndAutoFood()7 L& I7 _3 L8 V6 W* r7 w1 u' S
{! t) R! S4 b3 _) e5 f7 }$ |
        AfxMessageBox( "AutoFood ist gestorben " );) c3 e* F6 K, C# M0 z- b+ u
}: o7 I! r3 D; J$ R4 L
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
! n) m  C% U  Z; v{
7 ~3 q* Y5 B2 x$ ?8 _        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );: r) M) ?  l( j9 S0 q
}. P; w8 Q2 a6 r& }! Q0 M$ \8 g7 Y

5 ?9 f! ~' O' E+ v1 N' }: X" X+ p& kBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
" @8 U$ @9 f) l{0 S1 J/ T: e/ c4 k  {
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" P! p5 ^) y7 s( z        CRect rect = pWndCtrl->rect;' C; a$ C! C7 b! T, I1 A9 O9 X
        if( rect && rect.PtInRect( point ) )2 O/ @( Y1 p2 P5 u1 C
        {
- J# a  x6 l7 J' Q0 e2 J1 ^                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );* A5 s9 _9 ?9 l
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )& x4 k/ \- U" I6 V" {
                {4 w+ H: o, Q% o7 {
                        if( m_pItemElem )/ X9 i9 I1 Z3 L& ~. q4 R
                        {* ~: R) q1 B: r1 Z3 g$ `- [
                                m_pItemElem = NULL;. Q( g3 E% i+ t* t5 S, b9 l8 S7 Z
                        }# N+ k2 _* D5 ^0 _- n
                        m_pItemElem = pItemElem;
' _1 \) P4 v) L8 K% h! z3 H                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
$ b5 E0 q# `9 F6 y                }else{' j" B* \( F: a! |; m! u! c
                        SetForbid( TRUE );' h6 j! O  y( T
                }
& G$ v8 \- K) ]1 B, ]        }else{# y  ~9 p! A' v! V! K
                SetForbid( TRUE );
8 |* Q/ o8 T% l+ O! X, n& J# r        }+ _- J+ x" e- y
        return TRUE;
3 K( o8 w) R  j  _+ n* T* y}
. t( h& m  D+ E& {4 I
: Z% P5 c1 W% q2 |BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )3 l; `( \! s- i( \4 w# t
{# x* Z3 b  l# U! V
        switch( nID )  F/ h4 {8 }+ C" L  `9 q9 @
        {
" h: H# R6 j* z        case WIDC_BUTTON3:$ ^1 A- O/ ^/ ^+ D. S& ^
                {4 s4 a. j5 Y6 U! _! b: ?& v" i9 f9 n
                        bStart = TRUE;, t' E! w4 h; {3 {! b* s9 m
                        break;) e% @$ r7 ]8 b' i9 W
                }
0 C/ U" O) ~8 I1 N* }        case WIDC_BUTTON4:3 p9 C  K/ G$ k5 r7 ?6 v6 q0 ?# @
                {  f( @9 y3 c$ l$ y0 A
                        bStart = FALSE;# ?9 |7 v, ~3 P/ c5 g: @* M
                        break;1 C' c& K$ h! R; X8 J/ L/ n) ^
                }0 I8 g' G* K1 x- A" ^" P# a' i
        }3 H! u& g# I$ H3 V0 ?3 ]
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
: b+ ]7 M1 K1 v1 ~}       
9 E# I# D5 ]3 g7 hvoid CWndAutoFood::OnDraw( C2DRender* p2DRender ). X! b* P+ w' v( ]% m
{
. L7 y% J% G0 X, A2 p% ]: E        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );) P" c1 S7 ?' v3 n% S$ G
        if( bStart || !m_pItemElem )
- E: R! w% l; z3 y  z/ E: b7 S        {
& S: Z1 x: u% z/ ^: i                pBtn->EnableWindow( FALSE );
% n' M1 v* R; u; t8 q& n        }else! f- c" }& k' M
                pBtn->EnableWindow( TRUE );/ X2 z8 d  `$ d# Z6 m9 f' C. z, q
        if( m_pTexture )% y  d3 j0 a# s; w7 `
        {
2 g6 w3 A6 M! d- |$ {                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );, P+ |+ ?- Q1 W( @* a' ~
                if( wndCtrl && wndCtrl->rect )
# ?$ U2 ^- L3 Q9 k2 M' g" ~                {4 m8 ~3 e/ \2 z& e' u
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );( p. C4 \; X8 r3 }3 m$ D
                }2 b: |( a0 C+ E; R3 L$ n: l5 T
        }
* C% b# g5 t! X% S' D; {" q}7 v9 P! z6 g. i9 J) |6 g; B6 ~, o

+ t' |6 U" m1 Z! i0 o" r/ t+ `BOOL CWndAutoFood:rocess()
* [5 U1 l- u* D; v/ B{& x! b* i) B# t$ A
        if( bStart )
, F* B, e1 r( o1 ~        {/ t- v4 x. ~3 P# z! d: x4 @: @
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )9 }3 A3 {) U6 e  ^! J
                {6 r+ s) U$ K" c: G+ @6 B- a- G4 a
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
& K# D. n$ p% x% E/ g) ~                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );# d* e; t' S/ P2 Y
                }else{
3 A( G5 a: _* e0 f) ~                        bStart = FALSE;
. X% z* M6 F: R# F' O                        m_pItemElem = NULL;" b- f& `+ k8 G  t
                }
$ X$ ~: l) c/ h  C5 M        }
: h1 e1 ^1 [/ Q5 r8 U        return TRUE;
( H6 I0 j0 |4 H. v( h' b}8 d4 e( r  T6 x8 y+ H( S5 }) g

- d7 N3 w6 h" r, |登录视频废话:- ^/ |& n3 ~( e* ]; J9 _
尾翼:8 Y- _" X! f; l/ s' @' @! V% L- f
* V( ^% M2 k/ }  H: U4 r4 Q" K* _
代码:- o% F) `( F! Y) u9 \  H

, a! }  h& R; c) rvoid CWorld::SetLight( BOOL bLight )
  O9 l% U) `% Q; p( vdurch
8 g5 {/ c# L7 p7 x9 c. uCode:. T0 x' z; T0 V$ k$ j. ~
void CWorld::SetLight( BOOL bLight )
9 q& ?8 N" ^# |( e9 m. J8 |) y{
, c. x. d# r/ w3 t& D        //ACE("SetLight %d \n", bLight);
$ S+ y3 q% U0 ?# v5 `       
. `. v9 R. y; M2 r# C6 X9 m#ifndef  __WORLDSERVER 6 \" E5 }+ A0 x8 B& R
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);/ u$ d! O9 x6 q
        CLight* pLight = NULL;
0 J! r- {  \1 [; n4 Z) ]3 ?4 }; R) r' r
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
1 k/ D$ m8 B4 X+ i
; t) P6 C& D  p6 X        pLight = GetLight( "direction" );
: L5 k% `2 D: U9 w8 V  c3 X' L
$ o) U6 i$ P7 W( f  E( k- I9 \#if __VER >= 15 // __BS_CHANGING_ENVIR5 A$ E) m' m1 }5 ^0 x. W% ^4 p: A/ a
        if( g_pPlayer ){
& n  I! u, r" k# _8 h: G$ J, G                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
9 T8 w. G: W, b9 F2 e                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!7 K/ F4 E+ L, `+ R9 w/ k
                {
% D& a+ J& M0 n( w2 R, g3 {                        if( pLight ); L+ F& f1 {1 ?- p! K/ l, F2 |3 x
                        {
1 P1 s6 }& u6 d- v8 D# N1 r0 r                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];# h( K5 N! ?) E" ~/ q( p. F
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
& H' H+ q/ N& D! T; r                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
, d2 B1 z! J* @# ~3 M7 T& t2 }/ B2 E7 j" q/ h
                                pLight->Specular.r = 2.0f;) T( Y6 n$ \( W4 b8 o3 a6 e* k
                                pLight->Specular.g = 2.0f;
$ Z/ O% y9 g$ |3 k5 C                                pLight->Specular.b = 2.0f;
1 }# G0 k/ g# X# R6 c3 b        ( \) i2 e* G3 d7 \3 P6 t
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
2 M; @/ n8 u+ c                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];* Y4 `) I7 s& R- d/ X
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];. t  T: k2 U5 {
       
# n2 s1 F% @2 b& a# J$ I% l                                HookUpdateLight( pLight ); % h2 Z1 }2 o; D, ^1 r
$ ?& m1 y  p7 B7 ^
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
! d- H' \  M7 F                0 t, v- I( A: _8 {9 j' z+ U+ M
                                pLight->Diffuse.r *= 1.2f;
: W/ a0 i4 B3 x9 ~! ^6 {: Z" a                                pLight->Diffuse.g *= 1.2f;# ^5 Q9 A2 V1 G" ^  V* ^# q1 u: ]* `$ ]
                                pLight->Diffuse.b *= 1.2f;
* G0 e1 [% d6 g8 X# t, f- V* h4 S/ o0 V) C* c* E6 R
                                pLight->Ambient.r *= 0.8f;( u: ?# o# B9 U4 t( I* s. e
                                pLight->Ambient.g *= 0.8f;
% E) i' b! k& `- r$ l7 J7 h                                pLight->Ambient.b *= 0.8f;
: x2 r/ B! t/ t1 ~9 {% o7 w( [& @2 R        8 K9 P+ B- d( r
                                memcpy( &m_light, pLight, sizeof( m_light ) );
' V; x" _: i4 G  `  K' k: K* _: D
  }0 @2 x% K" z& [                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
. s8 A; O) G) U/ f$ @. K                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
# d  ~9 g; i, I. P+ J0 {                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ( B) |8 @7 l# x
                                pLight->Appear( m_pd3dDevice, TRUE );- l+ R4 |0 E  V! d. E2 O% n9 u
               
1 D( b" l* q+ z- g" H% z% ]3 g                                DWORD dwR, dwG, dwB;
1 o4 x9 o2 c$ l) q% ?: ^                                dwR = (DWORD)( pLight->Ambient.r * 255 );1 S) c! \5 k) R, o
                                dwG = (DWORD)( pLight->Ambient.g * 255 );- b' Z& i' k5 K" T7 I. g$ G- _
                                dwB = (DWORD)( pLight->Ambient.b * 255 );( c8 [6 e3 k$ m9 C
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
; Y1 X4 C6 o# v" e6 m                        }
9 x3 V- {+ o8 w, ?# F! l* s/ _                }
/ x% ]" \) {/ F! {+ Q; i: s' Y        }
1 U( y" k% Z9 p% N/ m  _( r        else
' j1 B( @* A& ~9 L* _#endif
  ^/ u  [  Z# u( Y5 B( G6 M+ q! W8 ?3 s
        if( m_bIsIndoor )- ~0 M+ ~( W2 `0 x
        {0 }9 O+ O* D! t# ?- [& M
                if( pLight )0 h. K& \6 G. N; t0 n: V
                {                ( `! X, O" ^/ F& _1 G: ^
                        // à??μ oˉè*
' O$ r' F! s: R9 W" c1 Z. |                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
- D2 U. `5 Y. o( f! t                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;  N7 @. W* k2 A$ }; v
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
. g1 W, {# _8 w% g* y4 o) Z/ ]( L
) T! W# D* f+ N                        // oˉè* ??à? * Z+ J  q4 c3 i* A# N' R
                        pLight->Specular.r = 1.0f;: {$ q# T4 |) @( o) R: w" C' i7 _* _
                        pLight->Specular.g = 1.0f;
2 t/ e. e9 [: g: W1 t' i                        pLight->Specular.b = 1.0f;
8 `8 G6 n) a5 p- U0 v! X                        // àü?? oˉè* ' |" y" L. ^8 m, }& F! _5 l4 F
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
/ X# k& Z4 _0 s, K  I6 U( L                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;, S6 c; v; d: Z4 l! m2 [
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;1 ]- J. W1 x1 B. l
7 x. Q! W2 Q* V; L8 Y- G
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.1 x1 l% n5 ?0 F- q, u, P; w
                        {
7 N$ p" H  a, M7 ]0 q* R0 h' V* J- O                                pLight->Diffuse.r *= 0.6f;( s+ k- G( R: l5 @7 R: w' V5 G1 G
                                pLight->Diffuse.g *= 0.6f;) ^$ ^! B6 l# {* }1 R8 V$ E) L
                                pLight->Diffuse.b *= 0.6f;/ J) O2 M7 O  k$ O$ R6 M* @
                                pLight->Ambient.r *= 0.7f;
9 {' ?/ h0 o7 W) o                                pLight->Ambient.g *= 0.7f;
& G6 Y  N& L5 n, J                                pLight->Ambient.b *= 0.7f;4 k& q- j% m2 m6 C
                        }
, ]6 G5 j3 Q: b+ N
+ W$ G  r2 E. a6 G3 W7 y. v2 k$ k#if __VER >= 15 // __BS_CHANGING_ENVIR) u5 A# n7 |9 e' B4 q
                        if( g_pPlayer )
/ Y( n/ f5 ]/ `% E                                HookUpdateLight( pLight );9 M- o1 x  B5 t
#endif0 o) n/ D" e/ W# r! Y9 N
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' G; w8 }& D& Z) l& y
; U: i3 c& a9 G' c                        pLight->Diffuse.r  += 0.1f;
3 o" B4 R' k- @% e6 X                        pLight->Diffuse.g  += 0.1f;: Z5 r+ ]- n; x6 P
                        pLight->Diffuse.b  += 0.1f;
# ]7 J+ }6 A2 U, j, z9 G                        // oˉè* ??à?
3 {( ~) j9 z8 I1 E                        pLight->Specular.r = 2.0f;6 m2 M4 T9 R" C1 m. S
                        pLight->Specular.g = 2.0f;! Q% [7 a- p6 S; _  i5 N% _
                        pLight->Specular.b = 2.0f;
, E8 Y6 O6 q! n# G+ s                        // á?oˉ
! O. e2 {  E8 R' i; j9 m                        pLight->Ambient.r  *= 0.9f;
3 [# e8 Q8 Q! T1 G" s                        pLight->Ambient.g  *= 0.9f;
; T7 L9 y$ {/ e                        pLight->Ambient.b  *= 0.9f;
5 u1 D3 L) ^4 |1 S5 H
$ K% P) n4 ?( B# p/ F! F3 W                        memcpy( &m_light, pLight, sizeof( m_light ) );
* Z; ^/ }8 o5 m! k6 z3 h                        4 d$ ~$ r# D) R6 @/ q1 ~
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );) Q  P& A# {* x: H% T  E5 U9 g" ]* A
                        pLight->Appear( m_pd3dDevice, TRUE );' a+ o/ B) H3 D$ b
       
' R0 C( a( d: s7 H6 j# Z; M                        DWORD dwR, dwG, dwB;, @' b# {% c1 T# D; Y* }
                        dwR = (DWORD)( pLight->Ambient.r * 255 );; E0 [& Z9 @" i
                        dwG = (DWORD)( pLight->Ambient.g * 255 );& K9 y- z1 t+ z8 A: |
                        dwB = (DWORD)( pLight->Ambient.b * 255 );) I4 ~9 y2 d! q$ e4 R
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
2 B- p3 s& n2 a  B; ]* S                }- l8 i) q$ J3 r$ c5 [" r( _8 W$ P
        }' p# d+ f% A7 Z% w; T
        else
, Y8 G: E+ ^4 S& k        {
5 O! O9 T8 _$ h- ^' Q                if( pLight )
) p) c( o" ?" R( H/ Y) Y! Z                {
  ~9 C9 p7 t+ A: B& D1 q2 h. y% k               
0 N' h  Z! K7 F; {                        int nHour = 8, nMin = 0;0 h2 q! Y- v' v- ?( ]
        #ifdef __CLIENT" ~. R0 D3 ~! h% Q" W
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 1 W* F/ N, Z7 X8 r& P
                        nHour = g_GameTimer.m_nHour;
3 C/ k4 _7 K& |+ S- q4 `                        nMin  = g_GameTimer.m_nMin ;
/ k' I1 \. `/ I; Q        #else) Y1 v3 i1 Q' ?" z
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
: D6 ~% u9 {+ O3 i2 p                        if( m_nLightType == 1 )
, J! Y( I2 L0 Q5 t! e0 y& W! _                                nHour = m_nLightHour;' m, w# ^& P7 |9 a- c5 h$ j
        #endif
" J' U) z  |. T  h5 s4 J8 R                        nHour--;  Y, v9 B5 a" f& G
                        if( nHour < 0 ) nHour = 0;
  K" ]: p$ w( i8 z1 y4 N4 y                        if( nHour > 23 ) nHour = 23;' l2 o, ?3 z9 i+ c) C

% F5 n" w8 I* r# w7 B# {0 p5 s                        //if( m_bFixedHour )
# ]3 N) f1 A$ G" H2 D8 `5 @% }                        //        nHour = m_nFixedHour, nMin = 0;
4 v7 y2 I2 L% Y1 V0 [; g                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
/ O6 P4 [) b( H) ~! C# `# ]                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];; l% V4 {1 E# E$ z+ K
3 l8 o3 Q8 G9 W1 |$ B& m8 {9 k
                        //m_lightColor = lightColorPrv;# A8 Z; }. T. H  E
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
/ h0 M3 h2 q& j2 y' ^                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;+ p8 A' g0 A& h  K6 R
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;; R6 _3 K' _& r% b( j
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;- }; C% q; @% d& H
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
; P5 S' u* D7 @$ _$ N                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;$ x- G) J- d0 x% a+ B8 K& t8 _
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
/ ~, ~' P" N- H# p4 C
2 R; W/ L7 w4 ]& L& P7 t. [                        // à??μ oˉè* 8 e( J! c; r, K* h. X7 m
                        pLight->Diffuse.r  = lightColorPrv.r1;! r$ A$ {5 m4 w+ O) ~+ q3 e
                        pLight->Diffuse.g  = lightColorPrv.g1;
* _7 q+ e; M3 P                        pLight->Diffuse.b  = lightColorPrv.b1;
8 o1 q5 I* u6 \' Q                        // oˉè* ??à? 3 ~8 P" J3 z9 W$ C. Z3 q  p
                        pLight->Specular.r = 1.0f;
9 g, x4 s3 u: t                        pLight->Specular.g = 1.0f;+ e9 E! m$ P5 `
                        pLight->Specular.b = 1.0f;+ h7 \9 k* C) E" J1 k
                        // àü?? oˉè*
* P) E2 O% h3 L% M" N4 [) d9 P2 v3 G                        pLight->Ambient.r  = lightColorPrv.r2;) X7 |: a3 R9 k4 D3 Y: ~
                        pLight->Ambient.g  = lightColorPrv.g2;/ f2 R1 s  h5 A6 R6 \
                        pLight->Ambient.b  = lightColorPrv.b2;
9 R" |  Y$ _: X9 S: n$ B- n
- j: ?* w5 l9 w/ ~" G( f                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
$ m& _2 h/ _9 k/ Q: t                        {
, l  j8 e4 H2 U6 v( Q8 z                                pLight->Diffuse.r *= 0.6f;
/ o) D% n) d3 G/ G. v                                pLight->Diffuse.g *= 0.6f;$ S+ W  z; C5 h8 G
                                pLight->Diffuse.b *= 0.6f;9 m- o9 U7 i8 F9 J/ l' h
                                pLight->Ambient.r *= 0.7f;
1 Y0 D6 S& j4 E" l' ~                                pLight->Ambient.g *= 0.7f;# L& E5 t8 }/ ]! h$ _! \' X
                                pLight->Ambient.b *= 0.7f;
1 C4 q6 Q1 G# b                        }' y( V1 T- h8 h& `( q- W: b
                       
# ?: v5 l& e, D0 a0 C! [#if __VER >= 15 // __BS_CHANGING_ENVIR( A: O; L0 u' h% D& ^" W
                        if( g_pPlayer )* K7 M6 L* T" n' q
                                HookUpdateLight( pLight ); # T  \4 _1 W4 I9 L" c
#endif' Z1 z) n% k6 T5 e- x5 ~  \# e
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );* r! U& m/ |- v+ ?8 C6 I1 j/ y/ W

8 A# k  {9 K% P2 t, b' S/ ?#ifdef __YENV6 P5 M  _0 C% W% \9 Y6 G$ B; o. t
                        pLight->Diffuse.r  *= 1.1f;
$ r4 f; c/ @; p  D9 H" M6 _                        pLight->Diffuse.g  *= 1.1f;; E! t  T! h4 Z' u: D" o% B( N$ ~
                        pLight->Diffuse.b  *= 1.1f;
% T1 {6 V  T- Y  k# x/ @                        // oˉè* ??à? 5 ^9 b# G1 i' I, W( H% n
                        pLight->Specular.r = 2.0f;
3 l1 q' Y7 D& M1 _& U6 b                        pLight->Specular.g = 2.0f;
2 z+ x' k1 r7 f; M' F& {8 l* p$ k7 B                        pLight->Specular.b = 2.0f;
4 q6 l2 f6 P$ M& e  Q. l- _" F; s                        // á?oˉ
' v2 g( G! k/ \0 h& W                        pLight->Ambient.r  *= 1.0f;* E+ v. C* h" D8 u& n9 ?) u* l
                        pLight->Ambient.g  *= 1.0f;. S5 R: d8 f3 w
                        pLight->Ambient.b  *= 1.0f;
# N$ I) O7 o5 z; M% z  D9 D#else //__YENV
7 W5 J- [- J; q# b) y( G' {                        pLight->Diffuse.r  *= 1.1f;" ^& ~. p$ s8 {9 J7 K
                        pLight->Diffuse.g  *= 1.1f;5 D8 y7 \$ Y6 f
                        pLight->Diffuse.b  *= 1.1f;1 E8 J' o6 H, N3 D9 ~1 ?6 ^( t. x
                        // oˉè* ??à? " z4 j" i  J& e" j
                        pLight->Specular.r = 2.0f;. N$ E% e% `8 A( T. @7 ~( T7 c8 J
                        pLight->Specular.g = 2.0f;' \, X0 S  E6 O+ O) {
                        pLight->Specular.b = 2.0f;) y5 l# K- f) v7 P4 ?5 t
                        // á?oˉ
8 o% h& k, v; A: O4 O                        pLight->Ambient.r  *= 0.9f;
; u$ R% C" v/ I* t) ]                        pLight->Ambient.g  *= 0.9f;
: O, a* }4 N' e                        pLight->Ambient.b  *= 0.9f;
. g0 l" ]& L  h$ Y6 x9 o, I#endif //__YENV
  [+ Y! v; ?. G" O; X                        # }- Y4 \3 ]3 o: B
                        memcpy( &m_light, pLight, sizeof( m_light ) );% t; M7 T+ c* z8 s+ y0 v7 Q; o$ n
                        $ N7 i; }. W( g& W9 P" ?' p
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);% s) _* C7 \+ Z- c4 h- ?* b2 m
                        D3DXMATRIX  matTemp;$ C8 \0 E, T7 G9 h1 `0 o7 E8 D
                        static const float CONS_VAL = 3.1415926f / 180.f;
3 ~. i4 C; U6 S1 k
6 U" P4 F, R* _+ e5 x7 q                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
  D7 @  ?9 @  z( e                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
. k+ b, q: Y  h                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
  b( d: U# d9 P( d; p                        pLight->Appear( m_pd3dDevice, TRUE );6 a: ?) ~; i# L- C- a
: M/ v+ Y5 e, @! I
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
0 m5 l8 t3 n9 L* ~7 K                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));+ Q+ u( w/ L" z- e+ h$ r
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! [: j. r- `. _3 H: @5 v$ }6 }, l0 t; [
                        DWORD dwR, dwG, dwB;
  r3 O6 D$ K& z8 Z                        dwR = (DWORD)( pLight->Ambient.r * 255 );) Y# b2 a7 H7 T5 o2 [
                        dwG = (DWORD)( pLight->Ambient.g * 255 );3 |( B  r- |- ^4 T, {1 f
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
6 ^& T$ W& b5 r7 i) R                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
% B& K' x" D5 ~2 |. \                }6 P) p4 Z! \8 P# U8 h' G( [" f
        }" X5 `$ i% @* X) z  r! o, `2 z- P& e
' F4 g& K, P9 k- c3 \" O4 u9 w0 o
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
# R. i- X( K- R8 c# f9 M7 ?        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) );6 i$ U% a7 \0 X  M- C
        ::SetLight( bLight );
8 {6 U8 G* D. x0 F  R
2 d& c& Z+ A+ j+ i- }- B! J        // ±ao? ?D?í???ó á¤à? + q9 f. M+ Q2 z8 n" G
        m_pd3dDevice->SetMaterial( &m_baseMaterial );6 d  @. V" w0 w" X
        $ Q9 U( I3 s% V8 I% O
#endif // not WORLDSERVER
  ^: _) P3 l) l) Z1 y' [}
+ c+ q: H. m; d) I' U' W并更换) K& g# U. J9 W/ j5 `
Code:& J- k. q; r: [
__FLYFF_INITPAGE_EXT
3 I! B0 U3 {0 V  n8 ?  F; g定义
3 `3 W, ^! l7 l$ |+ y4 U9 @7 N4 t" r& _! F' S; `0 t1 R
9 m3 H, S/ w. C/ o' _. u

+ |( v- A9 s6 A2 ]
2 s/ ~" R3 `) s' l0 U: t% y现在终于删除我的狗屁加速...
( G) u* W9 Q! S: B
; E$ ^! c; \' r7 g& j! f4 A: Z; R# I8 U: G

7 \; i" Y8 T' _6 j: n- S" {% N6 m




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