飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
. L" w% j# Z! @7 S. `. d尾翼:
6 T  @2 Q( s7 \, B! y( C8 z, V0 Y9 Z6 A2 L  k+ f/ [) _0 D' i* y# X( u
代码:
; l0 o6 O8 C9 l8 l# |" W( t; P7 CCWndAutoFood::CWndAutoFood()8 z- V' |8 l4 N& t- H5 h9 Q, Y
{; |) r+ m' w, ^/ R7 Q) _
        m_pItemElem = NULL;% y! {2 M# t% O" c9 a) I7 v3 Q# Z
        m_pTexture = NULL;
0 p8 h5 p) v9 Z        bStart = FALSE;
2 D! p# D+ h) e7 C5 o" K9 M}
4 E- w- _4 Y0 W
2 b. E- y: Y! b# G( ]CWndAutoFood::~CWndAutoFood()
* y; D( Q8 v" W' S" X9 ]/ t" A{0 F2 S) _9 z1 u2 _. W% S2 i
        AfxMessageBox( "AutoFood ist gestorben " );
4 o% M+ }$ k- A}: L. z( ]3 B% H3 }& E+ `
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
( Z% s  h" c7 D  G2 z# ^{3 Z9 U7 [% r- a# V
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );- t( x4 a3 W4 y! A% p' D8 p( j
}4 H& `* J9 A  @2 r$ Y5 `3 U& ]/ g

; u) j2 P7 q7 i* t* JBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
& e- c- l) W8 J# ]& W; E9 k{
0 E% L# b6 W0 h        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' y" d5 b7 c( V0 Z% p3 b2 g% n        CRect rect = pWndCtrl->rect;! P) O" e: D8 l" V( k8 N, C; r
        if( rect && rect.PtInRect( point ) ). L) x0 u5 p4 M- x6 |
        {
: o8 @+ K/ V! ~/ t                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
2 v6 R4 n1 _& t                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )) V" s4 J( X( i+ `
                {
, y! n/ s2 W9 V* i                        if( m_pItemElem ). q; z- R7 M7 b" V- Q: z* }
                        {. K+ F* j" K0 g8 o& A0 K) S3 B
                                m_pItemElem = NULL;) n; S# o8 N1 T& d% a& x; S
                        }  \1 O  a6 x' q6 S$ e
                        m_pItemElem = pItemElem;; d8 [* x: i6 n% P* ^) f
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
8 I, U' V# Q8 o' T                }else{
* y6 D, s, h9 C- }: }) a- P6 C                        SetForbid( TRUE );
: S' r0 E$ q! N2 f9 M2 H                }: N/ F$ \" U4 J' J4 e- J5 x
        }else{
0 \: I4 m) u# y$ @- b: ]! t+ ]' j) M( K                SetForbid( TRUE );; L, `% y+ h' f1 z
        }
9 y5 k/ l: h4 ^# m        return TRUE;# R4 X0 H" g  i: K9 U
}; e- @/ N$ e" L
  ~1 |6 ~) T# H8 a. `8 O
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )5 O% @/ w9 g& |/ B4 U5 y0 `( _
{
; V6 E0 ]' ^- d4 {        switch( nID )/ H4 I4 {6 @8 h
        {# ]: _) v& C$ G7 r9 u1 c
        case WIDC_BUTTON3:
$ s. q5 I1 W% W6 n" \; A! Z                {/ @& u; z6 }, b9 r: D) B6 m7 K* r
                        bStart = TRUE;
" ]6 e  {) ^  d" C                        break;
: I8 m: ^; h  A- a2 W( p$ n                }
- g; Y8 r7 [9 F4 B. l, c( d        case WIDC_BUTTON4:9 p% v# A% z' c1 ]
                {
) t# `& K, K/ D" F. n$ t& N7 B8 I( [                        bStart = FALSE;
) ~3 v) d) p$ t- U                        break;
5 G: o( O) {% V. E# X7 m6 g                }6 [9 W. Q1 ?% j$ s% Y4 K4 ]
        }7 v  L; Y" H' i
        return CWndNeuz::OnChildNotify( message, nID, pLResult );3 [. M; {' o  D4 k6 o
}       
! Z# `$ b& G# H1 C( x  kvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
9 s6 z! l$ q2 g; ^{: P$ V" v4 P1 p- C7 l9 Q
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
" g) ^0 d3 \3 Z        if( bStart || !m_pItemElem )4 g9 L7 X6 D3 \+ v2 d2 |
        {8 i/ K' I' ~9 P+ Z! F9 x- R
                pBtn->EnableWindow( FALSE );- {( D+ r3 z/ P. P# X
        }else: ^4 Q3 l8 X3 ]$ P
                pBtn->EnableWindow( TRUE );
+ I) \. K7 `6 ]        if( m_pTexture )
: ?) I' G* l4 f2 }* b8 Y) M        {7 ~0 q6 f8 K3 M9 j9 K0 r' p
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );, {& k2 l% W7 a7 l+ U/ c
                if( wndCtrl && wndCtrl->rect )" k1 i2 x4 t4 q& [
                {
' ]* z/ |* }$ G" ^/ r1 Q                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );* w( A$ R. r7 m2 `$ z8 s2 T: d
                }
6 h7 Z8 p+ C6 B5 B+ @0 e, a9 }        }; a, K- T5 ?- ?
}
, l0 `& N+ y- A3 A& k) ?, W% [
$ z9 e/ r" s6 l' H. _" K# _BOOL CWndAutoFood:rocess()( j5 k, S- l4 c/ Y! z7 F+ @) \
{
( [& q* e, B" D+ d" q7 d        if( bStart )
/ H4 B0 Q- o9 D: q4 E% @        {1 i+ f8 Q0 G* V; E
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
/ @% `) l3 m. R3 _& Z! G% o0 f; J                {8 v, ?) K9 w! S4 F) W- v
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
) b- r' s! E" R) E                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );; ~3 W' m; s5 G+ d% f' h  ~4 H" G
                }else{0 x. R- R' B+ h, B; E! K
                        bStart = FALSE;) `, k( }- ?$ e: E4 x0 N  o
                        m_pItemElem = NULL;0 p& o$ h/ f; @$ k0 o9 z
                }1 g! G6 x& v  {3 \4 w& d$ s2 Y
        }+ {, [/ G6 _/ _4 _$ V; N
        return TRUE;
5 }( A. s0 g" }! j+ j" J}
' q9 c; q3 q1 a. m; n* W
, P2 M. W8 _' X5 U6 E$ [登录视频废话:
1 s5 ^+ [1 t- l4 W' ?3 H# l尾翼:
5 w8 a4 P5 t8 h, V+ }+ R% E6 l! y) f# c2 c1 z4 I% W' b7 x3 V1 @
代码:* y: }- v) t# p3 l3 N! \7 r$ Z( k
3 A0 _* q7 P) k" I# M  u
void CWorld::SetLight( BOOL bLight )
+ r# ]/ E. z& l! ]durch
4 V1 ^' H5 J* D5 ?Code:
0 B5 T! X5 J9 r  Rvoid CWorld::SetLight( BOOL bLight )! w; N! @4 Q7 p
{4 p9 S3 T6 H' m* V
        //ACE("SetLight %d \n", bLight);
* i2 t2 y* j" T8 q' ]: _9 g8 K; U        ) |4 h# [1 M$ U6 @3 ]
#ifndef  __WORLDSERVER
0 i9 v; I5 g0 I* Y        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);# _& e: A% o; t* H7 y& W* Q
        CLight* pLight = NULL;7 s8 h. ]  e# u4 F$ B
+ H7 s0 f( A. j' b" T% |- W5 V. |' ^) s
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
( ?" q+ r0 H5 c
; \5 m9 B: A" c# o! t5 m$ h        pLight = GetLight( "direction" );
! m/ I8 S! q0 F2 T8 o
: V8 |! |0 L. ]: q#if __VER >= 15 // __BS_CHANGING_ENVIR7 j+ d" c0 s& m4 |; Z
        if( g_pPlayer ){
  d# i: p2 E% G: P' W                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
6 P5 p& d) R) D( M" f) _                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!* `: I, G( R& ^' d+ @
                {; \+ u* g( d- b2 |2 h
                        if( pLight )
# V# X" t8 D$ X9 `& S9 M) k                        {
4 t2 E  F. c. C7 u, I, n$ N. l                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];4 p8 w  M8 B& c- L+ R0 H
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];9 |: @- z9 h2 Y9 Z6 ^) [
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
0 u* r% d  x; s# `0 @+ J5 L& [
# @, S) W/ w; s+ S5 S* Z                                pLight->Specular.r = 2.0f;
3 o. T5 H& K5 b, f: F5 X5 j                                pLight->Specular.g = 2.0f;! s! L/ T  n# P2 o7 f' ^! a3 p
                                pLight->Specular.b = 2.0f;6 x' X3 x$ [2 n/ X8 W5 d- G6 o, m
       
4 y5 n2 U6 P; i9 U) g( {7 ?  t                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];+ O! c' u1 y6 {2 T! \
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
$ y9 j# w0 H6 N1 ]; o4 }7 i                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];4 J- t5 R& A2 q( }* j
       
' j7 W/ W% C7 Y% c4 h& q                                HookUpdateLight( pLight ); . U2 @5 h, j4 |. X

5 d( \6 f/ o: B- A                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# c% y+ f/ f5 f! F$ ^* J: H               
5 k& m7 n' \% h7 ~8 q8 J                                pLight->Diffuse.r *= 1.2f;
9 C: f  E$ q1 T6 O7 Q' I0 i                                pLight->Diffuse.g *= 1.2f;
' H& X- O. \+ S1 k9 d                                pLight->Diffuse.b *= 1.2f;
. e# r1 M4 @7 K* }0 }& n7 x4 Z. |2 U  B9 E
                                pLight->Ambient.r *= 0.8f;
% I9 M& p- O5 u" _- p/ x+ i3 b                                pLight->Ambient.g *= 0.8f;) b6 x  h( p/ R- U
                                pLight->Ambient.b *= 0.8f;
( V" D) s) k) g        9 j6 S/ A9 G+ N! _. I
                                memcpy( &m_light, pLight, sizeof( m_light ) );
; G3 k* D5 D, x) m! h! I6 H) B! h: H# f- P
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' f3 }/ J9 ]  n4 s- Z/ G                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
# K" B6 T. D0 g* t4 f                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
( {4 w9 a3 ~  E5 r2 ~; M                                 pLight->Appear( m_pd3dDevice, TRUE );% G% u6 f7 J9 j. L* o4 H0 ?( C$ N6 }
               
/ E: ?/ a; H8 }0 T- y) P                                DWORD dwR, dwG, dwB;
! X5 U1 r: ]' o9 E$ o                                dwR = (DWORD)( pLight->Ambient.r * 255 );
; u! b2 H7 w' L# N1 J. w) F                                dwG = (DWORD)( pLight->Ambient.g * 255 );
/ {+ c. i1 v0 K# T                                dwB = (DWORD)( pLight->Ambient.b * 255 );5 I7 N" @) x6 t' W+ C
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );( u7 F" C  Y+ e
                        }
1 P) U% t, D* q7 ^% F4 l; d# Y                }
! @2 T7 n7 p, [/ h2 ]5 i! [        }! [" C# d/ ~2 D& T- C
        else/ f+ v) s* C$ u4 f
#endif
9 D) W: N* m0 q7 W) s, T) @5 m! d3 `. @, ^
        if( m_bIsIndoor )
( Z7 A* [. K. S( N. Z        {
- }7 Z' G/ u) K) _, x; \3 ]                if( pLight )
: `# A$ _5 ^" g6 b. n5 R7 P8 x                {               
" c3 N8 q- u! X1 _8 u% |                        // à??μ oˉè* 2 ], d9 Q% y3 |
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
0 W, s2 v' u, P0 [) R4 @- f                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;' @" V5 h  W+ H; t! v
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;! @% ^0 u8 ?. X3 D% V
* x. r$ A- @8 h
                        // oˉè* ??à?
6 z) F. K( M: e- _( m; \                        pLight->Specular.r = 1.0f;
7 D! q+ o: a) V+ d7 e/ D                        pLight->Specular.g = 1.0f;# @7 V2 _2 u$ Y9 }! S3 U
                        pLight->Specular.b = 1.0f;
% z. ]8 m) T. }) k                        // àü?? oˉè*
2 u$ @3 r1 F! Q. [/ V                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;+ S4 `4 s/ [/ {5 D% A) S! X
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
  H+ e+ ~) y# U0 a5 T1 R                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;8 Y( u9 S( X: l5 }( d5 g

. k: [) D5 B7 i8 F                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
* |+ _( F0 H& s# u! @' S* ]/ m7 T                        {9 o4 w  \" l& W7 g7 U
                                pLight->Diffuse.r *= 0.6f;
3 T4 ?" G: j; a6 E                                pLight->Diffuse.g *= 0.6f;
, A% N: {  k$ Z6 _$ H2 m                                pLight->Diffuse.b *= 0.6f;2 B$ r' S7 Q$ i- @
                                pLight->Ambient.r *= 0.7f;7 x! P/ h; ^) C# P5 W
                                pLight->Ambient.g *= 0.7f;1 {/ h( t8 `9 Z  S0 \$ X+ t8 C9 m
                                pLight->Ambient.b *= 0.7f;+ U! |4 ?; M3 N0 `0 I  J( o8 b7 N
                        }
+ u8 ~6 d; W( Z9 t" Z: A' C4 y7 Y2 o9 N
#if __VER >= 15 // __BS_CHANGING_ENVIR
" U5 V; N3 x  E/ D$ p" q                        if( g_pPlayer )
' F3 L# R* c5 u' D6 s                                HookUpdateLight( pLight );; E5 x/ K# o+ a' t
#endif( v3 e6 l$ {- v# b. e0 p
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 R& d& @" j3 S+ \1 m
9 o. O! D/ c! h; ^) a. r% d0 ~9 g                        pLight->Diffuse.r  += 0.1f;
+ Y0 }1 y9 K  c6 v2 _6 z                        pLight->Diffuse.g  += 0.1f;8 o9 q% X' N: C6 s/ E
                        pLight->Diffuse.b  += 0.1f;
8 C* }6 f, d5 w  m( N1 x                        // oˉè* ??à?
: {& z: G$ o! x( N: |                        pLight->Specular.r = 2.0f;8 S4 I0 W* W' h: D
                        pLight->Specular.g = 2.0f;
; Y- {2 p+ e. ]) s                        pLight->Specular.b = 2.0f;$ K5 n, T4 K! f' z0 p* d. g
                        // á?oˉ
+ ~/ Q# v( P: n7 m" z, G; H5 u  \                        pLight->Ambient.r  *= 0.9f;
6 x* {* V4 e! I% V$ s; x( I" v                        pLight->Ambient.g  *= 0.9f;, K# {3 |* P- _, U7 s, ]" V# s* C+ v
                        pLight->Ambient.b  *= 0.9f;" i1 r3 }4 S# J4 V
' R7 ~  V; k" s8 d- ~4 w* R
                        memcpy( &m_light, pLight, sizeof( m_light ) );
# W5 B6 S! C6 Y6 ]( l/ Y0 {4 ~                        $ b" ^( p2 C3 g& M: s) ~7 e
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
9 p/ J; K, k( T. E' w- M                        pLight->Appear( m_pd3dDevice, TRUE );( E5 \1 X# p7 Q5 ~1 R# {& s# U
       
7 f2 l/ L# W! }, S; L                        DWORD dwR, dwG, dwB;
" ~' I7 L- j( ?                        dwR = (DWORD)( pLight->Ambient.r * 255 );2 l/ I- h7 m+ h6 g
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
$ l3 T3 w0 R1 x2 A7 `0 Z# t0 i7 f& Y                        dwB = (DWORD)( pLight->Ambient.b * 255 );9 F( n( `- |7 Z; r
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );: w$ ]3 D3 \3 M
                }
9 a! ~; Z" `9 U0 V2 w- k        }
( J) m+ L4 T3 Q" a! f8 ]+ @$ r7 C        else
5 Y. [$ i. n5 {5 {4 b* q6 Z- A        {. Y9 s" _# z' T8 f, r# V
                if( pLight )
& l- t; @3 O( {" Z! o                {. t; L; I6 C8 E" \
               
, {+ R- T) H2 D% d                        int nHour = 8, nMin = 0;
+ ?( `8 N6 N# `- S( B        #ifdef __CLIENT- ~% r* ?7 Y; ~7 ?/ f$ a% s' n/ _
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
: n8 ], T) z3 t2 b" u/ E7 l5 }8 E# S                        nHour = g_GameTimer.m_nHour;# s& W" n1 _7 a' \
                        nMin  = g_GameTimer.m_nMin ;0 z  r  z: k' e: I6 ^, Z
        #else0 A/ j- ?2 e. Z4 p( w7 [) m, I* V9 |
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.) A( Z5 L! a# e, J7 y
                        if( m_nLightType == 1 )
- Q& s+ i8 ^1 g                                nHour = m_nLightHour;, I1 J7 O* s6 \9 g
        #endif( d) ~+ q3 x# f: f0 s
                        nHour--;
' P3 w2 f( [  {7 \  T                        if( nHour < 0 ) nHour = 0;
$ R( O; W) ?# j5 g4 F                        if( nHour > 23 ) nHour = 23;5 z' \5 c; _% m
. t- u7 I2 z! ~% W% \* t
                        //if( m_bFixedHour )
6 M1 a4 W$ y. i1 d' \3 Q4 c7 N: a                        //        nHour = m_nFixedHour, nMin = 0;8 o! @! T: z* a3 e
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];" z" F$ m$ f" _! _
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
! D1 C/ _7 x' Q9 |8 b, u
6 |4 i* g  m) F  p2 s  b                        //m_lightColor = lightColorPrv;9 t* v. `' K1 m4 O
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
2 \7 w/ B" v9 A  k( T! H                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
& n, Q! l5 t4 ]% i* Z% M                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
! r  b+ b) _! x5 P( r7 }) H# [                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
; t- F+ a* f& t! r0 s" f' Q                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;0 L1 S2 ~  }. `
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
7 m# |" T. w1 Q1 E7 d7 j                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
7 r$ w, g! I/ ]" V1 b, }
3 E6 o; A& j* U$ M5 G                        // à??μ oˉè* . F" Q3 F7 L3 L+ w& o% A4 v
                        pLight->Diffuse.r  = lightColorPrv.r1;. p0 {$ W- p$ D: t( i
                        pLight->Diffuse.g  = lightColorPrv.g1;& t$ }+ S7 |& C; E, M8 C
                        pLight->Diffuse.b  = lightColorPrv.b1;
" x2 A9 ^4 _1 c0 y: W) ~9 }8 y                        // oˉè* ??à? % C9 ?) h" u- i5 G
                        pLight->Specular.r = 1.0f;5 m+ M* K8 b& p' s" n% o# K* e
                        pLight->Specular.g = 1.0f;
, e5 v& n9 S  N4 _0 ~                        pLight->Specular.b = 1.0f;' I3 a; I/ G8 w/ @) A/ x* T1 A
                        // àü?? oˉè* ) _: r* M1 T  t5 C; r- |% U
                        pLight->Ambient.r  = lightColorPrv.r2;, `" ?4 {: ]- `
                        pLight->Ambient.g  = lightColorPrv.g2;, d  @- X9 ~/ B( R
                        pLight->Ambient.b  = lightColorPrv.b2;0 z9 i; Y+ C$ c+ r$ _! B- V

6 s/ Z9 x# q$ u. X" X" y2 x, D+ h                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.* s: {% G' I! u
                        {
5 F3 L" R4 Q) L( \: L4 }) |                                pLight->Diffuse.r *= 0.6f;
( X. \$ R# L: s% u$ Q                                pLight->Diffuse.g *= 0.6f;5 l6 ], K) }# s$ j7 a. I% B2 i
                                pLight->Diffuse.b *= 0.6f;
5 F1 z1 X, w( T& Y0 |                                pLight->Ambient.r *= 0.7f;3 F$ [, {) [; h3 }
                                pLight->Ambient.g *= 0.7f;3 I' @9 q3 H' n/ t* }
                                pLight->Ambient.b *= 0.7f;0 a4 y. D% b4 i, K8 q0 U
                        }
0 `! [) t; b* C3 L                       
/ W  u# L( k0 b; N: |#if __VER >= 15 // __BS_CHANGING_ENVIR
* W4 l$ N+ o: H                        if( g_pPlayer )
3 Q: O0 [. z- W7 J- [- W. S                                HookUpdateLight( pLight );
' Z+ u  w& \- [  S0 [; r#endif* w/ d( @% w! r) k( F
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 @' D3 O( v$ O6 y0 K0 S# L
/ E/ F  m+ C8 ?6 _" P8 D9 X; p#ifdef __YENV
0 ~* a% o' w4 H) X) a                        pLight->Diffuse.r  *= 1.1f;
1 A4 H; j. @, F" H1 u8 m! J                        pLight->Diffuse.g  *= 1.1f;& H/ {0 w6 M7 A( Y7 }& ]. l. s# U' j
                        pLight->Diffuse.b  *= 1.1f;0 P- ?. a' z. i1 {3 f) P3 f% l
                        // oˉè* ??à? 1 C7 Z* ?& |$ z( z5 C
                        pLight->Specular.r = 2.0f;9 [: t* T2 b! W$ \2 W9 Y
                        pLight->Specular.g = 2.0f;$ r0 @1 J6 N/ d" }, Y8 k1 h7 m
                        pLight->Specular.b = 2.0f;6 h. h- o8 W$ {- P
                        // á?oˉ & F9 @1 C" S4 `+ R8 l
                        pLight->Ambient.r  *= 1.0f;
! r* M% A" m& e7 z& o                        pLight->Ambient.g  *= 1.0f;3 W2 |# U0 E( m
                        pLight->Ambient.b  *= 1.0f;
0 v( X- }& P# b% q6 }) Z  C#else //__YENV
" _2 I' J1 B4 T1 V4 D. c+ R. a                        pLight->Diffuse.r  *= 1.1f;" |7 l# E# B  d* f2 |
                        pLight->Diffuse.g  *= 1.1f;
3 O7 i4 S# X1 `# S. x4 b                        pLight->Diffuse.b  *= 1.1f;
+ u$ |) Z5 L+ f$ X% N                        // oˉè* ??à?
3 Q' U$ q( d8 s5 ]                        pLight->Specular.r = 2.0f;
1 m( E. D' c9 b4 ~7 t  d& g                        pLight->Specular.g = 2.0f;6 @! ]/ H4 ]5 q
                        pLight->Specular.b = 2.0f;; ]/ y0 e' n$ x' c
                        // á?oˉ   A' T3 N: I0 X' o  l
                        pLight->Ambient.r  *= 0.9f;- a0 D5 M& x, A: v  R1 w( T
                        pLight->Ambient.g  *= 0.9f;
( k  r0 g4 H: t- P$ H                        pLight->Ambient.b  *= 0.9f;
9 A+ u$ P0 Y5 z4 a1 S9 `#endif //__YENV
3 V  E& J" B* z; l4 \. z                       
% q# d5 {* `' ?8 g; a) [                        memcpy( &m_light, pLight, sizeof( m_light ) );( R! S- i; ]( g+ ~6 N/ n) x  \
                          j" O; T9 B+ s$ e, \* d
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
2 p3 E+ S+ c2 v0 H7 d. T                        D3DXMATRIX  matTemp;
# ^3 p( s! h; g8 H2 x$ Y; O' F                        static const float CONS_VAL = 3.1415926f / 180.f;
  N6 k( n" U, q2 Z/ N2 ~) ]: x# b' W' d9 j- w9 j  @
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
1 \# v) p$ [' ?) `* f# C                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
3 p9 q- Q8 @0 \9 O$ V+ o! Q                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 5 i( _! E+ ^0 C' Z# s" \3 n
                        pLight->Appear( m_pd3dDevice, TRUE );
9 P" t" a3 u. @- s+ x& Q
9 f9 ^$ B: M4 I3 I                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' M  O! m7 V! U; e/ ?7 \/ I                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
& C" |  u, {6 _: w1 g" O) U! D                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ( a3 N# a6 w, ]6 p) i
( {' Z2 O7 ]* V) ~2 }
                        DWORD dwR, dwG, dwB;) b! t6 n( s& I7 ~; {7 A
                        dwR = (DWORD)( pLight->Ambient.r * 255 );( D) P2 I, v4 s# i$ D7 ^! |
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
! C, P- p3 O  _+ ~) y1 \9 @                        dwB = (DWORD)( pLight->Ambient.b * 255 );
1 V/ k4 w, ~: M                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        , ~2 O, ^/ @$ Z8 a* Z& a
                }
, p: x" ?* Z" L) T        }8 T& Q& c7 y9 Q4 @' \/ Z1 v7 k

8 q8 Y  f3 Z& i& j/ ^7 b        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );' c5 f$ L0 F+ z9 X. d+ f
        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) );
: l! z% r7 o8 y: b        ::SetLight( bLight );
2 q3 K0 Z6 Y- H) m
" j& ]- d) J$ r( Y) X        // ±ao? ?D?í???ó á¤à? 7 J; }8 S: X9 N$ ^, S) Z0 c- X
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
9 f7 Q1 q$ {0 V- j       
; d! y7 o$ X! m  k- o4 |6 h% s* s#endif // not WORLDSERVER7 _: B4 }! Y! J6 Z
}
2 l6 z# w3 n; N3 P5 D并更换
8 P" l$ c, P( bCode:
& M; s4 C) [* b7 z# l__FLYFF_INITPAGE_EXT' E& M( Q- W8 T4 D
定义
/ b% F, ?' z, j
! L6 k( t0 f, A- [9 w  c, R. J* E& t' l. @; L- S, y+ [/ I: w
5 m/ \2 D" Q! p) e

* l% ^- d, l. i( o现在终于删除我的狗屁加速..., k$ O) V$ \1 Y9 F; Z

8 t" q: {( o& {4 F
: p" F2 B) L9 {# J) Z, k
2 N' T$ P6 S6 x( q* v! @4 l/ A4 v




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