飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:6 m* u) y: T4 e# l1 `: }) W( T
尾翼:" f7 e4 w4 u4 @) Q

( t4 {2 S3 H. ^+ Y9 r4 q  K代码:
/ g: P( @5 u. `: eCWndAutoFood::CWndAutoFood()
5 L  k7 F3 R, P' r! ]; \{& i% p5 M- N; k% E1 D. G
        m_pItemElem = NULL;
1 F% y, ^; _0 i  O; @3 l        m_pTexture = NULL;
# Q0 ?/ j) C; B) g  D! R" U        bStart = FALSE;3 R: e; j( D  |" ?
}# J6 Z! N& g, O+ n! W; M

. [- ~! c/ A6 L+ M' _CWndAutoFood::~CWndAutoFood()
8 B7 Z) Z& T' n. ^( u- _/ b! i9 U{' [+ F7 @& ]) o$ b+ j
        AfxMessageBox( "AutoFood ist gestorben " );
, g+ E, I; {! i4 U$ L& y( n}
, r3 l' K8 f& N# }3 B; rBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
" [4 s8 T! b: w0 D{% |. S2 s: ?0 x. E# Z% K# ~
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
6 n0 s* A  d0 l+ L$ @' d}0 J: o. u$ a7 @

6 p# N* P: H9 d0 Y- p& d( p/ UBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )  X/ C6 o) e8 [& ]
{
, A  o3 O2 k9 i& p  z        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );7 Q2 m# M5 _* z6 W* q  x0 w
        CRect rect = pWndCtrl->rect;
2 `9 w% R$ N6 F& I4 A8 Z        if( rect && rect.PtInRect( point ) )
1 v: s4 H0 x  u9 B        {0 \* I1 b5 I: J2 X- r
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );5 e' {9 X' @9 J: }3 T) o2 M
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )- q" w; p$ H" L
                {
7 A+ N- S% i; d' J2 Y                        if( m_pItemElem )7 |1 L) L  [; {* U5 [/ A8 w
                        {3 I# R+ [, B. P$ j5 l
                                m_pItemElem = NULL;9 Y* Y& S# b4 A: W# \/ E5 q) f
                        }
9 f$ @% q5 U$ @! J, S                        m_pItemElem = pItemElem;
) c" f/ d) @+ u                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );: U8 V  ^5 d8 X9 \: ~
                }else{
3 k, o: R" g8 M2 x6 ~                        SetForbid( TRUE );. {& s1 t& E6 V
                }
) Q$ U3 L% g8 |/ q8 B( i/ P, l        }else{
7 O  b" w; H& h: U* a5 e1 f4 S: {4 u( g                SetForbid( TRUE );. w; G9 N$ f7 j8 d9 O2 Z
        }
+ f" Y6 o! @8 m& D1 ?& p  ^4 C        return TRUE;
0 ?% v( ]* Q3 {3 i0 Q7 N}( ], y: [3 N, y
1 T2 r3 K4 x- h+ _* _& [1 x
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
8 y# P6 L) l2 R, d4 l{
5 M, h, D1 n1 l1 k$ _! V) |3 `        switch( nID )
# k. C8 O; l( n& ^" t        {
5 l* r$ U( a# ^" }* N        case WIDC_BUTTON3:
" x# @1 ^& v& d5 r" l                {; b4 r" R) x% X" k7 P2 U" ^
                        bStart = TRUE;
9 W: q" c* ?: h/ b3 L                        break;. b& S; M- k( R" ^
                }
& a" A: A. Y/ E1 V        case WIDC_BUTTON4:: h5 V* \" f: U  Y3 D( S
                {. M7 F" m' @5 e( f3 y2 |
                        bStart = FALSE;
7 e1 U) v0 a* x* K* t% _                        break;
0 O. n( D- [4 m, K5 x. m( m9 D                }
, m5 R% t$ x6 `( ^7 K# A        }7 _* Y3 Z; c6 z/ A  q
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
  V$ n# ]. U4 ]# h: E. t}        + H. o0 i$ W2 ]- \) E) K6 b5 [
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
" p. b% J* c  L; d6 ^. H{* O9 R2 N( A7 h0 G9 b% b/ s. F
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
* @9 h0 o% p; N! F9 b) T- U$ |+ r- e        if( bStart || !m_pItemElem )
& f' E( }4 v7 z        {
) l" {! _* t4 w, c* W  `                pBtn->EnableWindow( FALSE );# m+ \+ \1 ^% V" g! L- V0 q3 S8 R9 O
        }else
. d3 L0 y0 t7 U3 A                pBtn->EnableWindow( TRUE );
5 O* m5 }6 L" p& e' ~5 c# ^, k        if( m_pTexture )  a& S% k. f! H" V0 U8 S5 o3 s
        {
1 |3 m5 v- v0 d                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );9 h/ ]. u" N5 E# F, a
                if( wndCtrl && wndCtrl->rect )5 I& Y% ^7 k. Q- k8 q9 [
                {. H% X: c- a6 V- g3 g
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
0 `" o2 j( l* Q2 q* s+ P                }
( i& X/ S9 }% C8 }' u: I. r+ j6 A        }1 P  \, s9 o2 V
}
; n( c& I6 A% A; {* A5 q% b# }3 U( B) S! C0 {: X( a) f* \
BOOL CWndAutoFood:rocess()
2 F3 a5 i2 L6 c; j3 M2 T. T" R" o{' Q( C* r+ H0 P4 q- U5 @( o
        if( bStart )
; e. Z1 d& H; ~$ p( ?1 V: l1 K" z8 z        {) T- B  U* M. G. [/ J5 t: j7 x0 \1 H
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 ), N9 J3 u3 [/ d0 v1 u
                {
: W% C$ F6 Z( d* Y/ h" I# A/ j                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
# F% i; {, f7 ~                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );& [/ w4 {" h* a1 e
                }else{
" |+ ]; u$ e% q- V$ j                        bStart = FALSE;9 l9 n. P% c* I
                        m_pItemElem = NULL;
3 \" o2 U7 F2 F# f) P  x                }
2 K6 a* b" G& O        }
9 O+ ~/ I! ~1 e' v8 m$ p' h1 b        return TRUE;; q3 J* h! o' \
}
3 N0 Q8 L7 e. J! K6 ]1 `5 k1 @* l# e3 S; Q
登录视频废话:5 y  j1 n9 K% @) C
尾翼:8 T! f$ j, W* x- }- E  A

4 x) |, @5 q8 X+ d& c. I代码:
" V! P6 _/ Z' w9 V7 V7 d/ Y. f0 J
void CWorld::SetLight( BOOL bLight )
; d5 ^, d  z5 v1 d; Mdurch8 r5 m2 b: P) F; G/ A  w
Code:
5 v: b' Q: j" Pvoid CWorld::SetLight( BOOL bLight )- g6 R% U! P: Z' p
{
$ K( b) v8 P) b8 h5 B9 `* A% K/ o        //ACE("SetLight %d \n", bLight);
4 h- ]$ Q- O/ A3 |& E2 T        0 g' s7 }! W' g
#ifndef  __WORLDSERVER
4 e9 d% V, I- S        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
* _- W& x" N  x0 F+ e        CLight* pLight = NULL;0 ]4 _: k7 t8 l$ B$ z& m
9 f% C1 x4 o0 `2 G* R
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
3 y. O+ m% l8 @% H4 l4 L6 O; N: U9 l5 ?( B( r% u  G+ ~" [
        pLight = GetLight( "direction" );- m  O; p! J4 M
3 Q4 T# }( e. }/ Q9 b9 `0 b  [+ n
#if __VER >= 15 // __BS_CHANGING_ENVIR% N! V: {% c  J
        if( g_pPlayer ){( f; t/ P" M) ~% p# N2 @+ m* m
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
1 k, z5 r8 n! _, n9 ]                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
& j& A' V# Z$ F                {) Z1 h) \, O/ W$ [0 `& q: u
                        if( pLight )
6 [( s4 B3 I) [9 M$ I4 x3 D                        {
: z6 ]2 c! d4 n2 \                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];8 b0 N" `1 N; R9 a7 Q8 `2 n
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];. x" D9 G  r1 b: d: U
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];9 I' Y8 t8 H: T. J/ o5 {- Q4 }; @3 [
# r( X, W6 B, r+ N/ p/ O
                                pLight->Specular.r = 2.0f;! S+ i% x0 _) M$ T
                                pLight->Specular.g = 2.0f;8 `# x, e1 I) `
                                pLight->Specular.b = 2.0f;
( g0 M; S% e5 j        6 L7 v; ~2 A9 G4 S
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];, h1 w. [4 i3 H# {! y
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];* ]0 T; I& u  c% L& m
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];1 _5 x. b  u0 n2 B; m5 M
        5 O8 w& y* ?0 x1 x* W
                                HookUpdateLight( pLight ); 4 {0 h6 H# ]) B& T2 r5 q/ l

1 q7 S9 I4 v# @; C1 {$ ?; e                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 V) e7 ]4 z% X( k1 B               
9 F2 r  y3 F. {# l2 o% {                                pLight->Diffuse.r *= 1.2f;
6 o' @* @: r; v7 k! {- w* j                                pLight->Diffuse.g *= 1.2f;
5 j- \! m% U; ^: G7 M( _  W                                pLight->Diffuse.b *= 1.2f;% f& n! G; D* q1 I
2 h: _& ^  I6 V. `% @( c4 r
                                pLight->Ambient.r *= 0.8f;
+ m9 p* k" P( F3 g, ?5 v                                pLight->Ambient.g *= 0.8f;) l1 S! M6 w1 i4 u: f5 ?6 W* z% r: W
                                pLight->Ambient.b *= 0.8f;: a8 O" D  |7 t
       
" S  |, O. d/ x  Y                                memcpy( &m_light, pLight, sizeof( m_light ) );
% S. X* R2 o5 I, Q: }# F% b* f+ p1 H6 b1 ~
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
  V$ W. b4 L- W" p                                 D3DXVec3Normalize(&(vecSun),&(vecSun));( Z# x9 H. N9 G. D- {+ M
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 2 a* f  x8 y' m: u
                                pLight->Appear( m_pd3dDevice, TRUE );
& z  {9 j2 e4 I; R1 ~$ G7 _( U9 e                1 I8 D: l7 u# c4 ~" ]3 p! `; {
                                DWORD dwR, dwG, dwB;$ Z# |. W: W8 |5 S3 v; o
                                dwR = (DWORD)( pLight->Ambient.r * 255 );3 O8 E) l( ?9 f
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
- f) d* B& u# ~                                dwB = (DWORD)( pLight->Ambient.b * 255 );# @* h; w% [' q7 Q
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );# a4 U; v. ~1 `) U" G
                        }
( p0 J4 F% c  J& C                }1 f" Z- R9 y' L/ e5 k
        }9 c: z& X. O2 T% x; |# @
        else
/ ]( M  s( u# [' `#endif
- N! e6 [+ X: T; o( j' w6 }  B) _' Q. d
        if( m_bIsIndoor )1 ]& w1 r1 v4 k% J; p
        {
: \+ \6 y3 A# a  T+ J8 ]                if( pLight )4 @4 i  V. x( i6 m5 A$ F
                {                " {3 |) _. ~9 f
                        // à??μ oˉè* ; w9 U4 {; R: u5 T/ E9 ?# [  W
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;- C* B1 p% V& c( @
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
2 ]( @' n) O* U# H% A0 x( n                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
: d  ~2 r" N5 E9 K. Z( J
: D. k; ^3 D2 H$ f8 i, G. i& U/ W4 c                        // oˉè* ??à? 0 |% E3 H+ F( T$ k  O
                        pLight->Specular.r = 1.0f;+ M: g% I! F( }- O$ b" }
                        pLight->Specular.g = 1.0f;1 p: y% w# R: X5 Q* M: G
                        pLight->Specular.b = 1.0f;
. {& p" Q9 P! u$ u" M                        // àü?? oˉè*
2 V: R  r( E' J" F" e3 [                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
" Z& b* z2 }6 ^( D& @; M                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;( r5 @/ b. q3 Y. T9 J
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;) [( P/ q9 s9 K
1 ^* T4 A; c7 K
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??., B* F2 e- \# }0 ^3 e) g
                        {
7 r: y* a* q" S                                pLight->Diffuse.r *= 0.6f;- s' |" H8 l# g, ~
                                pLight->Diffuse.g *= 0.6f;0 b6 f- Q: L' Y1 }
                                pLight->Diffuse.b *= 0.6f;5 F5 Y+ Z: T) s* Z
                                pLight->Ambient.r *= 0.7f;
6 w5 ?+ S- Y' r5 z6 K                                pLight->Ambient.g *= 0.7f;
. P2 V+ G+ H1 n# q% G6 M                                pLight->Ambient.b *= 0.7f;4 ~: H7 R$ S3 \8 z0 H
                        }
; V+ h, e, l) O/ i/ ]9 ~& P
% A  S( {) r! G; C# }#if __VER >= 15 // __BS_CHANGING_ENVIR
. X* Q/ U* v" z                        if( g_pPlayer )# G' J" S5 o3 d* e
                                HookUpdateLight( pLight );1 V7 C, d9 k/ n7 b% R
#endif( r' O4 w- z  ]5 H, B
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# ?: \& G6 r* d; t5 i5 x
! q7 @1 u& q/ w1 Z                        pLight->Diffuse.r  += 0.1f;5 u' f0 j: I6 j8 A- ]8 ]( h" c) J( l
                        pLight->Diffuse.g  += 0.1f;
! E/ W! e/ D+ J2 I. A# G* J                        pLight->Diffuse.b  += 0.1f;
" @) m4 x8 ?9 ~                        // oˉè* ??à?
& g& C& J/ L: J                        pLight->Specular.r = 2.0f;% V  M8 h  b6 s$ `- t8 t/ {* t" L
                        pLight->Specular.g = 2.0f;$ F6 O9 E7 `6 F4 p6 Z& I
                        pLight->Specular.b = 2.0f;
: U6 V7 Z; L: q0 U; T                        // á?oˉ
) q. B# Q2 b" a" z9 l: _                        pLight->Ambient.r  *= 0.9f;
" Y8 m( l- j" r! J, g5 _, C4 F                        pLight->Ambient.g  *= 0.9f;7 D3 C5 j$ c4 h& `
                        pLight->Ambient.b  *= 0.9f;
' e0 F: S' K7 _* q- V, h. Z( V, s3 f
                        memcpy( &m_light, pLight, sizeof( m_light ) );
- O1 @' O& r* _8 V5 V7 t7 s, C                       
# q- V5 L7 z# h( X5 H; U1 |                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );' W$ r2 N0 Y, q
                        pLight->Appear( m_pd3dDevice, TRUE );3 |4 [6 O3 k7 e1 |( G$ E4 R
       
& S; U: u) o7 R* o! o% i                        DWORD dwR, dwG, dwB;+ T' u) z; O: z9 H( d; R! G/ o
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
* C2 F! G  F) }  e. b                        dwG = (DWORD)( pLight->Ambient.g * 255 );/ a/ e- Y& d4 J; c' `9 _$ G
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
3 Y9 e  n* @- u& t                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );' k% |  O- I) M6 {
                }
* c, v. a3 d! F# z6 H0 i3 w9 d        }
3 {% _( p0 Q2 H8 \- y) A        else( d* e) Z" A2 d5 k* L% s
        {
$ g& B4 a  }4 [" x7 u& K( \& v                if( pLight )' k/ r3 U0 S. S* w# ]
                {/ W) e  t8 R+ [* B! F
                  H* z/ `# d: y: z5 Z  {1 j; W; c' O
                        int nHour = 8, nMin = 0;
& B( q6 g' R& O' C7 H- s( \- c& ~- t        #ifdef __CLIENT7 [! ]3 B$ n! r8 T, w4 }7 K$ O6 e
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
+ t3 B; g: H5 y7 I                        nHour = g_GameTimer.m_nHour;
5 k& p: F$ W6 \% M) S" k$ b                        nMin  = g_GameTimer.m_nMin ;$ t  |. k3 V+ x6 r
        #else
! F2 }% T& M2 Q                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
1 c/ }% H9 \! t- |5 C9 g7 `                        if( m_nLightType == 1 )3 ^% \3 t9 e7 ~& H
                                nHour = m_nLightHour;% V( K- h* p4 [9 o0 ^& ]
        #endif
) c( N0 Z) @% P( P% I# k& ]                        nHour--;5 ~. r# X( u+ M* {, D0 h
                        if( nHour < 0 ) nHour = 0;
' p2 {3 ]- a% h, K  W                        if( nHour > 23 ) nHour = 23;. E9 g" V1 M* |( k
7 U7 j& |, f4 E
                        //if( m_bFixedHour )
7 k' R) e3 P- w0 U                        //        nHour = m_nFixedHour, nMin = 0;
, h. `& y/ x& o; P- `0 H                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
( F0 U# x/ y1 o8 J/ J                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];: r* h( j/ a/ ?+ k- [
$ O: c0 K. u5 K7 f% u% n
                        //m_lightColor = lightColorPrv;
, w2 ?0 h3 I% X) {0 P: D                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
  k6 W; i, C8 S% s3 L# K2 E$ a. W! \                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
0 @/ I, X# P, |                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;' f' `+ L/ e! m* J1 S
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
4 W2 w. v* J7 A5 p  R                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
' F+ `" Y- W/ Z( s                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
+ G# ]8 V. h" D) k/ p! n1 E                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)- z" R- i- Y+ Z( h% }3 j

/ e: B+ M! j! K: h! x3 d  b/ P                        // à??μ oˉè* : E/ r3 C; l4 V9 v
                        pLight->Diffuse.r  = lightColorPrv.r1;8 X6 E' i; B" A( Z$ `) W
                        pLight->Diffuse.g  = lightColorPrv.g1;8 I1 M9 \' }3 k; `' ?. R
                        pLight->Diffuse.b  = lightColorPrv.b1;
3 U+ k, o) ~9 R( u. p% Z, ~& A                        // oˉè* ??à? : D3 o  M7 @7 M! `; h* V( e7 _, z, x
                        pLight->Specular.r = 1.0f;
+ b/ c- V5 n: u4 J                        pLight->Specular.g = 1.0f;2 }, o; K! D8 V" h& N. c9 Y
                        pLight->Specular.b = 1.0f;
) h* p3 L3 R: @, N, x7 u                        // àü?? oˉè* # h8 m' ^$ I( \
                        pLight->Ambient.r  = lightColorPrv.r2;
& i; j. O+ S4 B' ]                        pLight->Ambient.g  = lightColorPrv.g2;
& `; C) E4 R9 R. s. M                        pLight->Ambient.b  = lightColorPrv.b2;
3 g# [# ]" I9 j3 x4 K6 {9 D
; h; ]9 {% c- _& o$ F) s1 m5 Z                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.6 O8 S( G+ F, }
                        {
: ~. Z, T# W3 I4 G; b                                pLight->Diffuse.r *= 0.6f;
; N$ P: {9 O  t9 v! A                                pLight->Diffuse.g *= 0.6f;. }9 ?* w$ v7 M( |0 e
                                pLight->Diffuse.b *= 0.6f;
# W. Q; j. [$ c. v                                pLight->Ambient.r *= 0.7f;
2 o6 i3 U" k; {5 v                                pLight->Ambient.g *= 0.7f;0 x0 d9 @4 w  g, B# Q: W
                                pLight->Ambient.b *= 0.7f;
0 e' a$ v7 {: f# z9 l, o                        }
. D9 |* G0 [( Q0 y" E                        9 W& }0 D0 W' C; f$ }* f9 Y
#if __VER >= 15 // __BS_CHANGING_ENVIR! y0 o6 G& P- X, U( j
                        if( g_pPlayer )- H- b  [" s/ w' n+ p! k0 r
                                HookUpdateLight( pLight );
. K, d  o2 H* g; v. f7 P3 \#endif
$ ]9 M1 M# N4 ^9 p4 _+ x7 q                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );. K. n( L5 S  P  Y' g4 P
& n! _# a1 b- f
#ifdef __YENV
& ~* ]3 D$ Q$ Q: J& N7 ~# M+ g                        pLight->Diffuse.r  *= 1.1f;
" L- s, p0 R+ q+ i! @9 h                        pLight->Diffuse.g  *= 1.1f;
; o& Z7 @2 ]3 d& r# _( |& U; S$ _                        pLight->Diffuse.b  *= 1.1f;
2 u% ]" v# Y* i" ~3 X5 v                        // oˉè* ??à?
; r3 w! A. M5 r5 O                        pLight->Specular.r = 2.0f;
* Y6 ]% ~. j: v+ @% P7 Y$ |                        pLight->Specular.g = 2.0f;& n- y3 d: H; v8 L% v
                        pLight->Specular.b = 2.0f;% d9 }% k$ U/ k: ^
                        // á?oˉ
1 \) \& U& \: {6 L3 X                        pLight->Ambient.r  *= 1.0f;
/ A; K: p2 l9 f$ y# ?! a% U                        pLight->Ambient.g  *= 1.0f;
( j' H/ y0 X5 r                        pLight->Ambient.b  *= 1.0f;9 f7 |) b" s- f. ?- [
#else //__YENV0 @" i" i+ S1 f1 ~  M
                        pLight->Diffuse.r  *= 1.1f;
' N" t5 s! J2 v$ G9 r4 p: b                        pLight->Diffuse.g  *= 1.1f;
0 l/ X) \4 g: m- b0 u                        pLight->Diffuse.b  *= 1.1f;3 U; q% {6 _$ I( o
                        // oˉè* ??à?
5 S! ~% }  ]4 p6 Z% a1 Z* m3 U5 n                        pLight->Specular.r = 2.0f;
3 g/ y( P( |8 Z# k+ \1 z% ]  B$ @3 F                        pLight->Specular.g = 2.0f;
4 K" i# K& d) Q. @( q. E                        pLight->Specular.b = 2.0f;) ]! c( G0 \, Z* ~
                        // á?oˉ
- y) G5 a- j( }+ k! Y, |                        pLight->Ambient.r  *= 0.9f;
+ f& c& i0 s6 p1 _                        pLight->Ambient.g  *= 0.9f;
$ _* p8 P* n8 @                        pLight->Ambient.b  *= 0.9f;
) _- N* V. H5 j4 ~% A7 G- e; Z& T#endif //__YENV
# K8 ]; D% d0 {7 f                       
6 Y2 a5 s8 @6 _9 j                        memcpy( &m_light, pLight, sizeof( m_light ) );4 C/ K6 f* e/ V1 L  y
                       
5 X6 h+ n2 ]& E! X0 [) E& G' y                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);- G8 z) j1 E+ ^5 Z% w
                        D3DXMATRIX  matTemp;/ y9 z9 N* c8 O. }3 p5 n6 y
                        static const float CONS_VAL = 3.1415926f / 180.f;
' A3 N  `( e5 K  u/ B' n* N' X2 m2 w5 F7 f' F0 r- j+ z
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
' s( u* w/ c/ m1 l" K                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
' b( k  u" x. I0 t                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 6 |0 B% K, n& \) b- ~1 J4 D4 P
                        pLight->Appear( m_pd3dDevice, TRUE );
0 }" @2 s; w$ \) d' b( c- s' p. y2 L" a: ]
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);( ^7 |$ a0 u" F
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
- c, @  r- @% q3 u/ d$ y                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 W# v) r/ T* Y5 W$ r1 i. A7 d
* Z+ ^, t1 C- O# K" s& k3 G                        DWORD dwR, dwG, dwB;
0 S+ |; O% v, K6 t9 i                        dwR = (DWORD)( pLight->Ambient.r * 255 );
' S' `7 `0 Z' a6 m                        dwG = (DWORD)( pLight->Ambient.g * 255 );. c# t% t) }$ [0 U* C/ D
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
2 V5 |" q9 Y+ u                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
2 ?8 D! u8 ?% T  v4 s$ G                }
" [6 ?& t0 f( s0 ^4 I        }1 A3 c, ]9 R% P/ f
$ m" V& h& C0 @! ~) Z! [
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );- H% s9 c9 s4 b7 M1 X5 E
        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) );
- H: s: B! U2 {/ w        ::SetLight( bLight );- M# r5 O2 g2 ?3 z

0 b3 n/ [/ q( c' L% x0 f# }2 s        // ±ao? ?D?í???ó á¤à?
5 W% L' g& d: U, P  H* f        m_pd3dDevice->SetMaterial( &m_baseMaterial );& t" s9 _# I/ F- Q0 `6 Q* y" O
       
- m: I( x- K' F- j5 p0 \( b. D) l  j#endif // not WORLDSERVER
' s0 X: X: f7 ]}
1 c3 X7 i! U1 u; T7 G并更换
6 F3 h  y0 \4 Z- T, w8 PCode:
) B8 B: \% A% |# _+ }& _7 ___FLYFF_INITPAGE_EXT. R7 h8 G% ~& R' k8 B) o
定义
  p4 q- S0 ^+ E8 M0 k- z
: i" v2 o' M! |9 S# u
! O7 b. ^9 C  _/ L% r& G5 F9 Q( R) `; W2 W; V; a" b4 M

( M. U. A- c2 w: r  c8 A现在终于删除我的狗屁加速...
& t# @! ^/ P6 X" M; O" c$ S, F- r/ \7 c- k4 U+ e3 a

- E% i- Z* @; @" R" p* x/ W' \' D5 z" K# u2 G  m( U3 o





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