飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:) @' k. v& J' c& Y2 B) C( W
尾翼:7 b1 R; e( \' D- o: n6 g

7 F& i  i! e8 r代码:1 q  J1 n6 v  W* W/ v- e/ O
CWndAutoFood::CWndAutoFood()
- H, a7 r2 }3 P0 N{
5 z2 `* \, j$ |8 a& n: |        m_pItemElem = NULL;
) s  n" n! n3 A: Z        m_pTexture = NULL;- P/ q7 {/ G1 n! }
        bStart = FALSE;) ^! {; `8 @1 c; b/ b. M
}- x- D8 M: q5 [
6 O: D$ E  Q5 n& u/ ^8 X
CWndAutoFood::~CWndAutoFood()* ]/ P. H5 X  f# K
{
7 N7 \; V* X! B& v/ a        AfxMessageBox( "AutoFood ist gestorben " );9 l) P4 q% S# y2 ], e
}
: A- L, c& _) b# T5 xBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
. w# X+ Z* E0 W1 U& h{
7 I; E; G* v* U- y8 g  ]        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
$ E* v6 v% h2 Z" O* K, I, g# y}2 @9 N' f, ~  e
! @5 ]6 _+ _6 w! j( v7 Q7 z, I1 H5 }
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
9 S6 j+ Q$ I0 q: w) O{3 a% P  p4 n6 s$ {
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
9 D- P* R0 E) o$ s) R* k4 J        CRect rect = pWndCtrl->rect;
9 x" g7 S0 X5 V0 Y9 V. s1 u        if( rect && rect.PtInRect( point ) ): L, l8 w* M) b  K
        {
8 `( q- b5 m0 D* s& J& D7 _                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );6 Y' ?# z: o% w: k
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
0 J* |. _! U8 f. O4 ]                {3 S9 h% z4 I# \  {9 q8 U
                        if( m_pItemElem )
1 [7 Q+ N0 {7 X                        {% S$ d8 f; x8 c3 W
                                m_pItemElem = NULL;
, v0 O# ^* [- k* Z. C  B$ B, M+ m                        }0 `6 P; Q& P, {" t0 t
                        m_pItemElem = pItemElem;
; ]# s+ j' K6 k                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
/ V4 r. d( t% F2 {6 C                }else{  g. S. B. X3 E% C) m! P
                        SetForbid( TRUE );  t! r0 a% m- T1 e0 s# ~  b5 l" b
                }# E8 \. D$ t7 U; w: V, l/ G
        }else{
# W! ^  l) A+ }$ d                SetForbid( TRUE );
" y1 j+ N' Y" F- J8 I: ]% \) w7 A        }; _2 B  @6 o. x/ Q) H9 R
        return TRUE;, i5 q3 r% T' Y7 @5 E2 N4 m
}0 l, |, N, L' i+ h

$ P/ x( u7 L; C4 zBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )1 t9 ~* m" Y8 X! L
{" h; k( ^+ R& k  r( f0 h# X4 U
        switch( nID )7 Y! {# u, K3 L! m& ~; M+ i
        {. l$ a5 Z$ B" K2 F! \# S5 O' `
        case WIDC_BUTTON3:
  Q1 f3 r, @; X% p# S4 b7 @4 t+ H                {% P5 q6 y* D+ z8 E; L. A7 H
                        bStart = TRUE;% B! u* \  `* x9 k, J: r( M
                        break;
$ ~, X* z$ S( w8 I                }
* J# \1 {! F$ M1 H$ b        case WIDC_BUTTON4:
" X, B' j- \8 W8 k, m% x8 Y+ g# K% A                {. l+ M/ i* T" Q
                        bStart = FALSE;- g6 R) s' Q' c" X/ S
                        break;
6 v0 `" F/ A1 `! _( a8 ~                }
- r* V8 j: {  I. Z# f        }; W  V# p0 m" ]1 C: T* l
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
2 y- K) L0 I+ J- |( K# a}       
# ~1 E, q: U' Kvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
; ]0 A' x# |( V{( w% U9 \5 ~- o1 f0 n5 ~* h
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );0 r9 Y4 C8 _9 m, D: n" L
        if( bStart || !m_pItemElem )0 `6 T7 E8 a! C$ B5 _5 x
        {' @. B  s2 L# m1 w7 Z1 W
                pBtn->EnableWindow( FALSE );, ]9 @* W2 j6 V* w  Y0 w
        }else1 P- W/ q6 w( O5 o5 X* M: B4 L6 W
                pBtn->EnableWindow( TRUE );5 B& n5 N: _1 I1 z) B3 g* K
        if( m_pTexture )
1 S5 ^  B* j* y# g9 g0 g        {2 {2 v. t' C5 I
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
; _" \5 [1 R$ ^+ A$ f' w5 Y                if( wndCtrl && wndCtrl->rect )
3 t$ z; q" }; T$ x: L                {  K9 j1 {$ A0 W) i) D) p2 y; v
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
- b; U' ]2 R0 T. X, U# M, X                }0 W- F* V2 x, G
        }3 q1 T" V- H0 ?! F, W$ |
}/ a# R) i  w4 ]3 t  ]' p1 m

) [' t6 U& V+ p2 y( H) YBOOL CWndAutoFood:rocess()
5 D  F& \9 v) d& a' v{
5 ~! o5 f1 s, u5 K# ?' v  h4 o        if( bStart )
# Y+ \( q# t, ]( F* u        {
6 M2 i$ j9 }6 U$ J- N                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
/ K+ f$ Q2 A& f* V+ @9 F! {2 e! E                {
" n) E! H- H9 g2 _* U$ t                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )" z7 @0 A: X3 W+ t! E
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
4 P! m) s, D& K                }else{$ E  |0 E, @4 p
                        bStart = FALSE;3 p4 Q! U  `$ @' ~) @. O/ |
                        m_pItemElem = NULL;
; h* x+ D/ Y9 h  m, s8 C                }. g7 b1 o, T8 z# G% j  Y
        }
1 }$ e& G) P- Z: l' P        return TRUE;; E" b7 E9 @; Q' |0 I& u
}* J+ }. W0 F0 i
$ t0 E4 D5 G" U# F! S( e9 C5 D
登录视频废话:- S7 G/ S5 X9 X$ i
尾翼:
. T+ y$ X6 z: z. J( r$ c* Q; M6 ^0 }9 f8 [
代码:: x4 Z' z0 n$ ~& v- R

0 k- s# n, g& |" ^: e  m0 fvoid CWorld::SetLight( BOOL bLight )
; |9 \$ Z% B9 U' p* q+ gdurch
0 N1 Z# ~# {. s% A0 g7 }* |) i2 pCode:8 c; M8 D7 ]' ^* X5 M) e
void CWorld::SetLight( BOOL bLight )
9 Z: u& [( h% R6 j+ ^{
) c3 X9 d2 B& x( v7 o' O  k' N9 K        //ACE("SetLight %d \n", bLight);
/ d& n3 d2 a9 K$ A0 T       
1 P- D3 }6 v: a8 X, [1 G( y#ifndef  __WORLDSERVER
( N0 Q% Y) I5 [8 L6 Y) H        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
6 ]5 t' ?3 K8 B9 {3 O! z1 U  J        CLight* pLight = NULL;! U2 k0 h1 t, g: z
( J% t2 x: p5 B0 K0 o! x4 s
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );0 V9 z8 K# E# K% O8 X

/ _& n5 h; q! y' @        pLight = GetLight( "direction" );
' O! w; l# {8 [4 g2 M3 ]. O: A, D) [2 ?9 F
#if __VER >= 15 // __BS_CHANGING_ENVIR# l5 E6 w* m, U* J$ z0 J
        if( g_pPlayer ){
% }8 p# ~  T8 G5 `3 O! e( K                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );# \! I9 }" [& Q* n5 p' @
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!# X! `* t+ L# k8 m
                {
( W* \+ [7 G7 Y9 k                        if( pLight ); r9 p0 ?* n* F( D2 l! L' q
                        {/ q8 T# q# A& ^4 d4 ]8 ^  h0 q
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];- v3 J; X! ~7 _/ z
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];% D: i/ ?, t8 \1 o) b; Q! o5 n
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];* a! \; |" w2 P3 x. W' ]2 x" q: B" H

: K6 ~) m9 s* ?& A+ d, y                                pLight->Specular.r = 2.0f;
* V- u8 o0 N' G                                pLight->Specular.g = 2.0f;3 F( R# K2 a& m# e9 C9 w
                                pLight->Specular.b = 2.0f;
0 b# h, ^& C: P- M+ m       
9 i1 C; h; |) s$ F# _& _                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
; l3 s! u' H; K, i2 u5 i5 w& O                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
- f( x$ M8 k# n5 {$ O                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];/ U8 v. y" V$ V0 l
       
7 L  C. k) G) b/ ], q5 y                                HookUpdateLight( pLight );
) I, m/ ~: z! m/ }: Q, `8 a5 }  l' [
; i6 x4 o9 J5 B7 R1 M+ M( f' {2 q                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; p6 A) X) B" A; Q5 s/ W3 M$ g               
( c4 S6 P  u: o. r- E' a1 I1 p% h                                pLight->Diffuse.r *= 1.2f;: \$ K9 Q$ u" p! J% a
                                pLight->Diffuse.g *= 1.2f;
5 \' J; R3 Q; `; P                                pLight->Diffuse.b *= 1.2f;
+ A$ b+ U4 M6 b% w' \9 C
7 F( U0 T$ e3 L: ?8 q                                pLight->Ambient.r *= 0.8f;' g. e* {* F% N' @
                                pLight->Ambient.g *= 0.8f;$ ]0 h9 g3 J7 U3 L
                                pLight->Ambient.b *= 0.8f;) x) t& i( y+ d7 m% s
       
* |9 @: U0 o% d% o; S' ?3 W! w                                memcpy( &m_light, pLight, sizeof( m_light ) );# p* `  T6 S( Z* l" b* F5 g$ {
* @) v" a; Q- R/ e4 P. j
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 o6 [, l, E2 u" P) l* U' _; }9 {                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
- f. H0 m3 n2 z5 g$ u( c                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ N4 k( `. {4 s                                 pLight->Appear( m_pd3dDevice, TRUE );( [& x/ }* W2 p3 N. S
               
$ }  J) u4 B1 r- V( G                                DWORD dwR, dwG, dwB;
: E: v2 N3 u* Z1 u: j1 b                                dwR = (DWORD)( pLight->Ambient.r * 255 );
! a; O8 v- _6 S! I( y# W                                dwG = (DWORD)( pLight->Ambient.g * 255 );, W, J( P1 O9 M1 x
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
  a) [2 t6 Q8 h( a                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
* g/ g  E) J. E1 \7 d% r                        }
& D/ ^3 _9 Z1 A" K3 z: U/ ^                }
2 U: Q- @1 Z3 M) \6 ^# M% y- z        }  c: ?0 P7 B) h( @) `& i, T0 G
        else
4 {2 D3 Z5 n% W3 l4 F#endif
6 z( v- k3 K% H( G4 Z* y# y/ Q9 }% k5 M, C7 N
        if( m_bIsIndoor )
9 V- ~9 T8 V+ s) ^* e        {& i6 |- O. a$ x& }' N
                if( pLight )
$ G; U$ W" j: T4 A: Y5 t                {                  K$ ]% a2 Z! R8 u1 n( q
                        // à??μ oˉè*
$ N, F" H" }$ p2 |$ F, S                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
- \% k/ D, e* j3 s* G                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
# m: e) H1 B- g0 ~                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
6 q3 _& y# X  w6 b/ J  V: a- a. M( ~* z' m" ]
                        // oˉè* ??à?
: ~- O2 F7 ^: L6 J) ?                        pLight->Specular.r = 1.0f;' p( u% B7 [7 ~, f4 p' r9 E$ d
                        pLight->Specular.g = 1.0f;1 B) j* z/ T' K6 Q' w9 l4 Y6 X( O
                        pLight->Specular.b = 1.0f;
1 w% G, K4 @0 E- w; Z                        // àü?? oˉè* ; l* v' @* H2 P) Z
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
! a1 L& ], y3 M9 ]' j+ N+ z: K: f                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
2 b1 G+ D$ _: W  {3 D$ R                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;0 v+ v! q/ t- q: b

# {+ x4 Y& D( n7 I                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 J- L- M& p5 i( C: B, L3 Z; Y                        {
$ x) l4 ^3 G# L( r$ p                                pLight->Diffuse.r *= 0.6f;$ S' w; i, a8 F8 {- |: q9 b0 H, l: e: s
                                pLight->Diffuse.g *= 0.6f;
9 T1 }1 N5 D) n                                pLight->Diffuse.b *= 0.6f;5 H; ?5 B; G# E
                                pLight->Ambient.r *= 0.7f;4 Y% K5 V* [  R' j* {* K; k$ |$ p
                                pLight->Ambient.g *= 0.7f;( h5 l# S2 N$ V% b' |7 Z
                                pLight->Ambient.b *= 0.7f;
0 h0 P3 F4 u3 M; P. S. ^2 M                        }9 l& A6 Y" m& H! m: u
; I/ d8 n% A  n* Q
#if __VER >= 15 // __BS_CHANGING_ENVIR
  h4 @. e( D6 m+ H. [% ]                        if( g_pPlayer )
0 }. _  Y9 }- y% K                                HookUpdateLight( pLight );
) g2 C+ @, `/ r+ c$ V5 F#endif
& f& [/ p7 v; D1 a- V: v! i! H) V                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 m! r7 u9 p; H/ l* l& {" ~& \. j( \4 t
                        pLight->Diffuse.r  += 0.1f;
# h  h: W: V0 E0 m                        pLight->Diffuse.g  += 0.1f;5 R5 q3 a7 C) N6 A/ J# Y
                        pLight->Diffuse.b  += 0.1f;
$ p, Q- x5 Q( ~4 L6 t. w. Y+ l7 l                        // oˉè* ??à? 9 D% s! t2 J! S) Z* i. Y( u$ P# a
                        pLight->Specular.r = 2.0f;
; c5 M) N- c; f5 X  y  j& |+ H                        pLight->Specular.g = 2.0f;" B1 o. O. ?4 T" @2 i
                        pLight->Specular.b = 2.0f;
4 `( `% e; U8 c. F                        // á?oˉ 7 _+ ^- D! Y8 H. G; e
                        pLight->Ambient.r  *= 0.9f;, w: h4 o8 A2 j. d% e0 y
                        pLight->Ambient.g  *= 0.9f;0 t1 q& B9 U7 U) O
                        pLight->Ambient.b  *= 0.9f;. ?2 _2 S* B8 m0 c4 x

4 S! V3 M, _3 e8 D2 ~                        memcpy( &m_light, pLight, sizeof( m_light ) );
7 Z% t% v5 }1 d* y7 Z                        8 w  h% L% E' o' h. `3 C
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
7 W3 v  e8 c$ t9 n6 [  z                        pLight->Appear( m_pd3dDevice, TRUE );" c. ]2 @# l& a' F- {/ c
        ! S" I& e& F) u. I! `% M8 ]
                        DWORD dwR, dwG, dwB;5 F5 A  V8 q/ Q
                        dwR = (DWORD)( pLight->Ambient.r * 255 );8 ~( }7 P, P: t/ F  G$ k! l
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
+ T6 }* f: q# Q) P$ j3 e) W0 u  V- X. D                        dwB = (DWORD)( pLight->Ambient.b * 255 );
& D& P2 u3 |& z5 O( f; z3 U5 ~                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );$ O$ u) `3 g$ L% i; Q5 I
                }6 m+ f$ ^# S4 N1 ?. e
        }# B& W& E& h# c. c+ Y0 H3 z
        else! w# p: a& P8 E) ~& R2 Q
        {
6 k% m# s. q+ B& g+ W2 k( c                if( pLight )/ k- X% G; s! e! D
                {
- E( \3 G+ ?# o* X' B% E2 a                " D, {* |" K0 a0 D. t
                        int nHour = 8, nMin = 0;
% O2 G) T# G, _/ Z4 ?# {1 m: |        #ifdef __CLIENT# S: S; e( ?/ n# `8 u
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 2 n* h; |/ C; w! [
                        nHour = g_GameTimer.m_nHour;3 m# g' T* K1 r' C) M& v4 x
                        nMin  = g_GameTimer.m_nMin ;) _9 P2 e# p7 j  e0 {  G
        #else
! J/ S' ~: |5 x* \% B                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.2 e; N2 n  U' S; y8 p' `
                        if( m_nLightType == 1 )* Y! K5 Y# Z8 I! x' {/ b
                                nHour = m_nLightHour;
6 G. b: p+ i4 r* A/ e0 P        #endif4 b! R: L3 Z6 P8 I" G, k/ @
                        nHour--;. J# {1 v$ Q8 |/ x" ?
                        if( nHour < 0 ) nHour = 0;4 Y& T1 W( Y' G" h
                        if( nHour > 23 ) nHour = 23;
2 V1 l  K8 x4 Z5 T6 t$ w/ U, a4 g) m2 f: d. t4 p+ d: J9 a
                        //if( m_bFixedHour )
; O$ @1 `* I. O4 H                        //        nHour = m_nFixedHour, nMin = 0;3 s" @; P4 D& k) n
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
5 H* T" I) q" }! L                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];9 J* f2 F1 t% f: M& }
( Q: k+ H+ i: e  u3 o# m% ^- S
                        //m_lightColor = lightColorPrv;+ h# H+ g. e" B* P7 W! S
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;+ J# w- I/ S5 \. x" [
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
8 N9 L* G) ~$ o! D* R# u                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
4 S( p( U  M- N& R0 C. d6 Y                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
0 b9 L! h  y' H4 \" n                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
; c8 k  y6 \" U0 R                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;: Q: R  O/ ~3 v. P& S
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
& g* @+ r  s/ X# ^$ u8 D9 _: R! s- b& f+ e
                        // à??μ oˉè* . C3 l7 M3 ?. D3 s
                        pLight->Diffuse.r  = lightColorPrv.r1;  s$ b7 `0 _# a( O$ x" Q- V9 U3 O, `
                        pLight->Diffuse.g  = lightColorPrv.g1;$ W* l& I0 T; S) L& x. o7 l
                        pLight->Diffuse.b  = lightColorPrv.b1;
2 A* R& I" P8 G                        // oˉè* ??à? 4 T, W5 O% h' r
                        pLight->Specular.r = 1.0f;
  R" x+ s! `' ~- Y& ~; [                        pLight->Specular.g = 1.0f;4 Q$ G2 W( d- q# t3 V( d9 w: E
                        pLight->Specular.b = 1.0f;
+ W" e3 h5 n1 x" z                        // àü?? oˉè* # v8 B2 ~) E$ j4 Y/ E' S
                        pLight->Ambient.r  = lightColorPrv.r2;
! ^! m( c& x/ |2 D                        pLight->Ambient.g  = lightColorPrv.g2;
- f+ W8 A3 a8 k+ C2 {                        pLight->Ambient.b  = lightColorPrv.b2;1 E% f0 `) E4 i2 `+ h% x
9 f( X# {/ q/ s# Y: p# j6 p
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.- G3 }8 j4 e3 D; s
                        {
* J0 ]2 i- S- g' h# k  i+ Z                                pLight->Diffuse.r *= 0.6f;
( Y8 L) k9 p6 N' @% f2 b& ^1 Q                                pLight->Diffuse.g *= 0.6f;  f2 K' B/ O. P/ g2 a, `& T
                                pLight->Diffuse.b *= 0.6f;
0 h1 \8 t( C9 K1 Y                                pLight->Ambient.r *= 0.7f;' z( Q/ ^' V, {/ Q
                                pLight->Ambient.g *= 0.7f;" ?7 z( Q; S. C% T
                                pLight->Ambient.b *= 0.7f;
& V5 ^+ g8 U/ X0 k2 T                        }
/ ^# y- A, x+ ]* m                        # ?2 i! }" X1 e+ u
#if __VER >= 15 // __BS_CHANGING_ENVIR2 n7 A( E  p# W! U- y  K
                        if( g_pPlayer )
/ d: T- T) V8 z% I+ B: M                                HookUpdateLight( pLight );
& s$ c) m9 c9 }# H! g  H#endif. j6 H3 S7 J+ d  k
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
6 s$ F' o# j4 T$ s- R$ V* r' Q- q
& U9 |" `* m+ m1 |#ifdef __YENV! V# Y% e# w* Q! A! X5 O
                        pLight->Diffuse.r  *= 1.1f;5 M2 |- F! y8 {7 Z( ]& o
                        pLight->Diffuse.g  *= 1.1f;6 ?' M  S9 d5 L  i6 w  z9 D
                        pLight->Diffuse.b  *= 1.1f;. M3 Y0 \6 b& t9 ~: C. p
                        // oˉè* ??à? ; c  W, @8 A3 o+ |. B
                        pLight->Specular.r = 2.0f;
7 W4 V- v9 w5 ~! |* W& A. [                        pLight->Specular.g = 2.0f;
! J4 |1 V0 L( P5 ^2 y* w                        pLight->Specular.b = 2.0f;( B% _& W3 u$ X+ I) a
                        // á?oˉ ! _# n9 a  b. V. R( E0 x+ C- A
                        pLight->Ambient.r  *= 1.0f;
  k% D0 _9 R  p0 T6 x                        pLight->Ambient.g  *= 1.0f;
  W" C" {$ T2 R; b                        pLight->Ambient.b  *= 1.0f;
5 M$ D1 R, G9 A+ i5 U7 M) k5 N#else //__YENV: t' N* \) v# x2 e, }, p
                        pLight->Diffuse.r  *= 1.1f;8 o! M) {. z: z: P' ]" T8 L5 x; g
                        pLight->Diffuse.g  *= 1.1f;# J; B# ?% k1 w, I, h: [1 ]7 N  k
                        pLight->Diffuse.b  *= 1.1f;2 a3 k$ K! s' K# l. T- L& D
                        // oˉè* ??à?
9 B7 F1 A$ v; Q! X3 X                        pLight->Specular.r = 2.0f;
$ e  p% [9 ^- `# g                        pLight->Specular.g = 2.0f;
. F3 @- G' t. c4 i& e# J                        pLight->Specular.b = 2.0f;
7 ?" E& f0 ~  @) ~" V* n                        // á?oˉ 2 o$ l6 I; S9 [4 `$ p' z1 j/ {: e& _
                        pLight->Ambient.r  *= 0.9f;2 ^' e+ G& e5 W/ t% i+ j
                        pLight->Ambient.g  *= 0.9f;
# c! _. b# M) N" g/ A  m                        pLight->Ambient.b  *= 0.9f;# G1 R% i# z7 y1 _9 a
#endif //__YENV 0 m& |. m9 n* g: ?
                        7 t1 B. I: o5 @- w% {; i9 E8 m
                        memcpy( &m_light, pLight, sizeof( m_light ) );. f. a* @  ?4 Y/ v  u( F
                       
- W) ^6 N- ?/ {, A                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);& L% ]5 E; l. Y& k2 e9 [, a
                        D3DXMATRIX  matTemp;* X2 J9 W) W% ?3 _5 Z
                        static const float CONS_VAL = 3.1415926f / 180.f;
) V0 I- m% X1 Q* n9 P+ v% P! v1 ?9 u  x% a6 C+ {
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);; y0 o( a, y! |* I* k* X
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
' d, L0 d- s, v9 F# P                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); , c1 d& _  G- ]) M1 H% d; W
                        pLight->Appear( m_pd3dDevice, TRUE );" @) @3 [3 s$ R6 c% A

6 D2 ?7 w% [9 T3 P* I                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);# v% k/ D5 s; h7 y1 ]' e2 X: [
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
1 k+ B+ F+ v9 {                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ' [+ @  u1 O1 k0 L6 R
2 e2 F" L6 s9 E2 }9 r, @2 b
                        DWORD dwR, dwG, dwB;
7 ^$ O# {4 d, M, _% R( E                        dwR = (DWORD)( pLight->Ambient.r * 255 );
+ t$ H2 B1 p, W; S( o2 m: t                        dwG = (DWORD)( pLight->Ambient.g * 255 );! P' \! a4 Q+ i- R# Q& i; N8 O
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
+ {0 z1 |# ?- R' y0 E5 u# K5 U& F                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        6 w. `0 N: d- C, O+ K# _2 A2 z
                }/ E& V5 g+ U7 _2 W6 V6 a
        }
4 I+ s- v$ @, M3 s8 d9 |" v6 }+ c0 B
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );) @3 }( L! u2 P$ K% h( b9 p( w" Z
        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) );
$ O( t% K: S5 V        ::SetLight( bLight );6 g9 Q, Y( I& L/ h- u3 e2 X

. s% U8 K/ i  ], m, d9 w* M        // ±ao? ?D?í???ó á¤à?
( u3 D5 n- w. {) q7 A4 o        m_pd3dDevice->SetMaterial( &m_baseMaterial );
; k, ^( i( f4 t# [        8 a* k" q9 O/ G9 [+ Q* t7 }0 t
#endif // not WORLDSERVER) `& e2 l7 u% b6 ^# P6 v; m
}
1 \$ w& g0 W( w6 _并更换" t2 Q' W# [3 w+ _; @
Code:3 k# w$ h) `, [3 K' d1 ~& h
__FLYFF_INITPAGE_EXT
# u- N2 k* }; g; f1 ]) b( c6 H定义+ ]3 q- t" [  @5 t
( ^& E# ?  ^( B4 H$ r/ V" J" F
6 R& Q, ?" ]3 H( A
( D; ^$ ~- e. K* w
( v- u) \- I0 `. u4 h: g
现在终于删除我的狗屁加速...
% m) W% z- l& H3 W6 w+ m/ C
' M, q1 x+ d, m# K
; g# u5 I. b% `4 ^# P( F" U6 `  A8 _/ @* a% ]+ W' I





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