飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:9 x  P% w, @* D' ^% |8 U0 }
尾翼:3 g$ b1 |7 D* \. \: r7 F- k
6 u5 v) t4 n% y. U
代码:* n7 U5 x5 m* ]9 R4 G- H$ @
CWndAutoFood::CWndAutoFood()
, F8 _7 }& W& ^+ u# D7 h{
& h9 f4 H7 C# d5 n/ A- w4 b1 I- @: F        m_pItemElem = NULL;
& u% o; U- a9 ?        m_pTexture = NULL;' M& b* X7 v; o3 S
        bStart = FALSE;0 h4 o1 j( j9 J0 Y
}
7 ~, |. C" }: U, m0 b
7 p: H. P; ~6 ?; q) h) |* pCWndAutoFood::~CWndAutoFood()
, B+ ^5 _/ m0 T$ U/ v{
$ U- B/ C* |5 ~        AfxMessageBox( "AutoFood ist gestorben " );
  a/ j9 V; x6 ]6 m}
& w. v- y0 J( }/ U% c& B/ rBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )6 g# b$ W" T* U. M1 \5 N
{
9 v9 i8 M8 X* A- C2 w/ \8 E5 n        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );! L3 Y9 s- E" O/ X! G
}
5 F6 v0 u5 q$ p" L2 q/ n
# o' D1 l- `1 Z" UBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
4 ?' N4 u3 Z# h9 K: R) {8 f{
' @7 A* Q% `7 N        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );$ h/ ]9 T7 R* n4 z6 K( q' H* v5 A
        CRect rect = pWndCtrl->rect;
  m6 W  ?: d! y* d; u* _        if( rect && rect.PtInRect( point ) )1 H  H% I2 J' w& K/ [8 k
        {
1 u% ?7 ?: H$ E% e9 h0 U! d* X                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
  h' `# J6 O9 x8 y5 r- v8 h* y" e                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )+ g3 ?1 p6 t( ^" _
                {
) g& A: Y& p" [! Y                        if( m_pItemElem )% R% l2 j/ C" d; [, z
                        {
. O1 c( A  h6 u# m- q. f                                m_pItemElem = NULL;
6 [% S& i/ d6 W5 m+ h" k. v                        }0 z+ U# v1 \/ B
                        m_pItemElem = pItemElem;& p* O9 a8 w( v( i9 I5 o3 [- p5 f
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );7 ^9 V( s" W7 n% h
                }else{+ u! R& A6 a' z" h
                        SetForbid( TRUE );
4 _- ?% g; W6 m/ u* F                }6 }+ I1 U$ _9 x; \( c4 o
        }else{! N, [# @" s  r  @. O" d
                SetForbid( TRUE );  O! P0 j  [3 a8 t3 |2 d8 L
        }4 L  B2 T( W5 m
        return TRUE;; G; g9 J+ K9 I$ O" d' N
}
8 P$ v7 F& q; J# \0 _2 p- {# D4 M7 M! Q7 v2 I( C$ Y6 _
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
7 ^. W. G. t4 R& G8 I" l. Y{& c4 A6 U2 m- r) A% e7 P
        switch( nID )
+ \7 Y: f( y5 l( _: }* r        {. y' V0 t  N4 P" Z' G( A2 N# u
        case WIDC_BUTTON3:
' G/ K( w6 ]* `+ b% L+ M                {" a  s; N' x' O; g8 T$ W
                        bStart = TRUE;3 \  p+ Z' @: \( a$ y6 c; Y6 U
                        break;+ }- k  A1 F. k& b4 j0 R
                }* q  T6 U1 f! O4 g+ F9 u% ^
        case WIDC_BUTTON4:
6 e# A; K; V* e7 O, R. C                {; \8 {, g( Y/ D4 X) J, |
                        bStart = FALSE;& M1 u2 k- a' _! V9 O
                        break;2 C9 A( m) G5 m& s
                }
. p! n  Y' o0 [! L# E3 w        }* I; ]- ]) d* \* C7 Z: F
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
  t( a% N) _# k}       
: s( y0 A- o. [$ I+ Hvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
# j: F3 _0 D( a$ c{
( q) X2 d+ V6 h' ?; N        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
8 g0 O! v5 ?! _& x' g        if( bStart || !m_pItemElem )- y4 j1 O1 E" H" s# W
        {9 H: y. P3 c5 q% E# @* ^
                pBtn->EnableWindow( FALSE );6 p* n) d& Z, ^$ ~' Z: c! V7 E3 }+ M
        }else& U0 N# g+ M2 U" R% f! x- m
                pBtn->EnableWindow( TRUE );
  c' n) E: I( b% E) u        if( m_pTexture )
! R( N6 u3 t; C        {6 S  x" _5 X5 W
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );9 p. k) i: g& F( A! i
                if( wndCtrl && wndCtrl->rect )
' A* Y6 ^2 V7 Z1 Y6 p2 B4 b( q                {
" d2 m/ l! p, d' J% x3 N                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
  P) E" K' F9 @: k                }* k# o6 V9 P$ p7 M
        }% |" X6 b% a2 C3 Z  m2 f3 L
}
7 i2 P, n  L2 m/ ^9 @+ e+ s+ h& o, L0 I
BOOL CWndAutoFood:rocess()' L  O7 r0 l4 x; x, C
{
+ m# O$ [0 ~! f2 V- {# J+ _0 B! g        if( bStart )
/ c# I5 R2 e, L9 E) [; y        {9 ~: J  j. A8 v: n6 L, Y8 ^
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )4 o& z6 }% v7 K8 n" w3 x
                {  c, o" T4 y! G7 e% E, 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() )
- d5 m* l  v4 b2 i4 i9 ?  J                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
* g& A) K- H% o9 n3 J- ?1 ]7 S; p                }else{
  @, ?/ T3 }- V( m- a% L                        bStart = FALSE;4 }0 l* ~5 |; E3 _# k8 w( Y
                        m_pItemElem = NULL;" E+ ?& ^8 V  I6 v; p- w
                }
. o6 o  O5 F* D" V        }
4 ]/ F1 }2 c: t( O2 @$ Q+ d% @8 c        return TRUE;
; `8 s: j- v; `7 r" K0 C}* W8 G" T' b6 x  t* u% x$ U* |

- E9 T5 K4 V0 N0 u* s! A" r登录视频废话:
) h0 x' ^5 v  l" K1 W尾翼:
/ t; ~0 ]& [0 K  s6 b( s7 l
" ]) S7 y5 Y; V: j代码:& \( m+ p; o7 V% \( G7 f# u. t

4 R5 W' E; }2 R7 b0 [1 `void CWorld::SetLight( BOOL bLight )5 [: d& m9 @+ U& C
durch& v+ g9 L+ m: x; T! i# z
Code:
% n& |8 k4 S- H$ K0 ]  \' w. gvoid CWorld::SetLight( BOOL bLight )$ T& o# {7 K/ O/ O$ W
{. {% b2 O- `" `: H! F4 U
        //ACE("SetLight %d \n", bLight);
3 u' a' z3 x% |/ d+ E8 D  |1 x        ) [. l( v2 P4 h
#ifndef  __WORLDSERVER ; V+ X! m- Q2 @" y8 F* x8 t
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
! ?: Y0 j9 o0 A9 u9 H        CLight* pLight = NULL;: r$ C1 h: Q3 o" ?" u/ B

# N) O2 u7 G0 e' V        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );; W) M3 m3 W) p- ^* D
- _9 Q5 k; P4 D8 _. `0 T
        pLight = GetLight( "direction" );
6 U, I, o0 T( r9 W/ I
$ x; i% U1 E* r4 _9 o+ T+ j/ H#if __VER >= 15 // __BS_CHANGING_ENVIR1 s, l5 }  i" T/ U4 D3 `0 ^0 ~
        if( g_pPlayer ){" L. e5 y; M+ i2 C* W* [% G& q
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );- q9 p9 d9 F- z. j
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
* K% z& B, ?) i9 j, z                {: @% G5 v7 t: r9 g  u. L
                        if( pLight ). w% |- A( v8 g7 ^; e( _
                        {
' O5 ~, H9 P5 A' A0 Z* W                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
: K$ ~% E; d$ M6 m                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];8 d$ y# S- C; t' P- \2 M
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
/ z' [0 y* R' l, h# W" q! j7 X: h& B- I5 W
                                pLight->Specular.r = 2.0f;
: _' O6 p  S0 R: t                                pLight->Specular.g = 2.0f;- Y  L& x4 |4 [) n7 @
                                pLight->Specular.b = 2.0f;- y; C1 T2 J# \% B) {/ ?
       
1 E- M& l: W1 L) ]4 s- n! B! N                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
! D& N$ g9 c  H/ z! i/ x                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];5 I5 ~: ]4 t1 D+ b5 _+ E
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];) r, S* s- Y; ?9 ^' N0 q
       
  W1 S! }* e# P& W# V' a& m                                HookUpdateLight( pLight );
: C" u; o: e. v7 |2 U) b3 J$ Q  [% m* ^! c' {
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );$ T" s. j  X4 q* ]+ H. \
               
+ E  j3 F# h0 P  T9 V: m% _4 o/ w                                pLight->Diffuse.r *= 1.2f;
! V- Z" r( r2 t2 t% j                                pLight->Diffuse.g *= 1.2f;
8 q1 i* z) m% j) b                                pLight->Diffuse.b *= 1.2f;) I+ w. s9 v. L  P
- J' F6 e; M5 i) g& P) c
                                pLight->Ambient.r *= 0.8f;& }" l  @$ \1 b+ Z4 z8 ^
                                pLight->Ambient.g *= 0.8f;
# }+ d7 z2 ^* w! `! ~3 R                                pLight->Ambient.b *= 0.8f;3 P7 Q6 {" W/ Z0 e( j
       
+ b. X! o% a) `8 Y1 d2 V# }: ?                                memcpy( &m_light, pLight, sizeof( m_light ) );; S$ g' M& J! J' G# z  F

+ i1 S1 c  U6 Q1 o                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);8 U# g% e/ ]$ a3 U- S1 N1 R
                                D3DXVec3Normalize(&(vecSun),&(vecSun));# ]. o' k6 p: k. m; [
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ! ?' v& I) e- [1 o  o/ Z
                                pLight->Appear( m_pd3dDevice, TRUE );; d5 W/ C2 J- c
                  v+ Q0 n$ {' e$ g7 a/ R
                                DWORD dwR, dwG, dwB;. d3 t7 j! {, z' B9 n. h
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
+ h( O) k( }, t+ l, ]                                dwG = (DWORD)( pLight->Ambient.g * 255 );
! w1 ~8 h" p7 g1 ^6 I$ S                                dwB = (DWORD)( pLight->Ambient.b * 255 );) H+ @: Z5 W9 ~; n, q' c: H- u
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );6 B8 y5 s! q5 P: k- x" w" y
                        }/ P) }2 g* A$ V: f1 C( q
                }& J" c( X$ f5 L  C
        }5 M9 j' B& M: O4 B2 V8 j3 ?, j' ~! p
        else
6 ^, V! p6 e3 B#endif
; A, r' u5 c# ]% k
3 K5 X! q2 \( Y* h6 ]0 M        if( m_bIsIndoor )
6 G2 z! N: ^$ [6 U/ M        {
* b) y/ A0 W( i  x                if( pLight )1 `" R( E6 ~2 g
                {                - C& U: f+ V+ Z) X3 z: V5 X9 S
                        // à??μ oˉè* 8 j( \; m  E; ]2 V; w2 i
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;! O( M' l, [2 K9 O
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
; B5 Q0 G, g) `7 z, c$ m                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;6 @/ Y; B/ b% i, G8 D' t* }

" G- z% k! R6 F& y& u                        // oˉè* ??à?
3 D8 U2 ?' M6 r) j: b. `                        pLight->Specular.r = 1.0f;( p& R7 E) ~! p8 T- t. W( n2 k
                        pLight->Specular.g = 1.0f;
  K  P, f, R% z2 c! O                        pLight->Specular.b = 1.0f;
, @* M7 u. @, g7 h3 C/ b: p3 f                        // àü?? oˉè*
" m- F' \& Q& u: |8 a- W                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
& f5 ^7 H/ V" b9 X                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;- X# d/ C6 w5 ]
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
9 ~. j( L6 t4 d3 h/ k  I; E" v* p% Y8 ]4 u
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.2 e4 d( m; i5 j1 y) ?3 W
                        {' W, w. h! F; e, w0 F
                                pLight->Diffuse.r *= 0.6f;9 r# t9 R; z0 ~- }6 E
                                pLight->Diffuse.g *= 0.6f;
# a5 I0 k% E6 S( e' o' R2 F4 B9 D                                pLight->Diffuse.b *= 0.6f;
, i' R5 l! e" Q8 e) d. z                                pLight->Ambient.r *= 0.7f;
/ e# f5 C6 N8 I                                pLight->Ambient.g *= 0.7f;
8 \, e) ^& ^9 w$ d                                pLight->Ambient.b *= 0.7f;; F1 ?3 C4 U' j' ^' S( u0 {
                        }# o; j0 v( L/ M6 \2 O( s2 h/ P
2 c" h2 J" \  o9 c4 I1 T
#if __VER >= 15 // __BS_CHANGING_ENVIR/ d* @" p3 D0 s  m" O, F4 p
                        if( g_pPlayer )
$ y+ u5 ]' M& D" |6 ?% e3 W- q                                HookUpdateLight( pLight );& v* C' q2 J, r7 n. X1 S
#endif( w, L3 m- _( z! S3 K% k" l
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 {" n2 E6 p8 z8 ]: O
3 F, {8 G# H& V" E5 L                        pLight->Diffuse.r  += 0.1f;$ ~0 S: O+ w; M8 _( M
                        pLight->Diffuse.g  += 0.1f;
6 [! k2 R4 W2 a2 R6 K9 F                        pLight->Diffuse.b  += 0.1f;
2 Y* T3 H8 N' U* L' l                        // oˉè* ??à? . r  R4 K5 [9 d, a* u3 i. A: J) K
                        pLight->Specular.r = 2.0f;
; r& v# ]% \) d: h                        pLight->Specular.g = 2.0f;
. x# i- j$ d) g1 T$ M/ c% T                        pLight->Specular.b = 2.0f;
7 `( c: w4 \% ~1 o" H                        // á?oˉ
1 ~7 \/ o0 F: f7 D7 _8 m6 Q                        pLight->Ambient.r  *= 0.9f;
$ ?7 D8 q' [# t9 ?+ I                        pLight->Ambient.g  *= 0.9f;
# Q$ V6 u* J, ~# x% w- C" h                        pLight->Ambient.b  *= 0.9f;: `: `+ O" e5 \& S& l6 @
5 C9 `! n- @( b) n
                        memcpy( &m_light, pLight, sizeof( m_light ) );
% p+ O5 x5 r& ^+ ]& k4 O                       
; q+ \+ X4 L( J. w  s                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
1 Y) k; Z1 s, B2 N) z# l; Q, B                        pLight->Appear( m_pd3dDevice, TRUE );6 X8 B1 _& X0 `1 h7 `# ]  V
       
$ V* t. t& b9 F9 j" X                        DWORD dwR, dwG, dwB;
( P- _0 b0 N2 Y- u) m3 ^0 Y7 s1 b                        dwR = (DWORD)( pLight->Ambient.r * 255 );* r0 }* p4 [0 N+ p' v9 T4 k4 F  g
                        dwG = (DWORD)( pLight->Ambient.g * 255 );" {6 A: _6 @7 z+ e" a( G2 h+ p
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
* H$ I3 ]2 e9 Z8 T                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );/ I( f+ E( i; _3 _
                }% D# p0 T' T8 m% `& u! @( q8 U
        }
6 ?. C" S1 w  r1 O        else/ Z8 n8 P9 e7 D# [6 u
        {$ |. G7 ], N' y
                if( pLight )% h3 b. m. g/ i* \
                {
+ r1 H/ H) v& v$ J               
) B6 u& f. N: J7 @                        int nHour = 8, nMin = 0;( m5 }" F" F4 t& q5 ^9 t) |
        #ifdef __CLIENT
  C$ ]6 Q( `7 V) f  T3 [                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. % E- Q- P. z" H+ w+ [9 r4 J
                        nHour = g_GameTimer.m_nHour;& }7 `6 h+ ?) B+ x  N6 x
                        nMin  = g_GameTimer.m_nMin ;
7 Z+ p6 \0 E9 \        #else: W# o. o; G, F3 E- J0 U
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
$ V7 C8 i* v5 Z4 Q2 s( R, A                        if( m_nLightType == 1 )) M% a% n5 i/ W
                                nHour = m_nLightHour;' |# N  ~. Z+ R9 F% x
        #endif
+ R5 r3 T+ {0 N! v) R                        nHour--;
  B8 q  X( k: u                        if( nHour < 0 ) nHour = 0;
1 M8 m  g. ?% B1 R: T1 a7 C9 H; B" F                        if( nHour > 23 ) nHour = 23;
. @' c  p% C$ a# K4 n; z7 \8 E, \3 m$ k3 ?0 Z. q9 T
                        //if( m_bFixedHour ): A; g8 v( w' T. N' M
                        //        nHour = m_nFixedHour, nMin = 0;: _9 N0 n+ ^6 S$ ~- l
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];0 H5 b, {, R% {
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
9 U: C! B9 `& j  R) g: z- H& H
- U$ p- h  b9 g( J& V6 {. e/ K- l3 N                        //m_lightColor = lightColorPrv;
0 _2 m; X* G* g                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;4 a# [3 Y- d1 k' U3 u3 Q! a
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;1 K  v2 Q' D! F" m" ]7 d  T
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
3 Z) g$ L3 R# p0 i3 q# A) W" H/ E                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;! G  i, y$ y2 Z3 R" [( @/ J1 L' U
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;% N. o8 `, o5 S
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
3 I0 F0 V  B6 X0 G# q  k( O                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)) H9 B( }2 a+ X. {6 a* Y1 c4 T
3 U( s* j( d- Q9 g' x2 e- c
                        // à??μ oˉè* $ [  j( o1 z' r' B" t3 M" r: L" E; q
                        pLight->Diffuse.r  = lightColorPrv.r1;
! t4 y/ }9 g  Z- K; U                        pLight->Diffuse.g  = lightColorPrv.g1;6 o1 u! \( }0 W# y( {
                        pLight->Diffuse.b  = lightColorPrv.b1;7 h" q3 ]0 N6 G; O; y# V
                        // oˉè* ??à?
& t& S, W' A9 l* n- C  W& h                        pLight->Specular.r = 1.0f;
. r9 u$ n* [% j4 a4 a5 S                        pLight->Specular.g = 1.0f;
. w  `2 W2 q% R; _1 m/ k) C0 F, w. e, X                        pLight->Specular.b = 1.0f;
6 g4 E! j( A$ ~$ x9 J1 x                        // àü?? oˉè*
5 I' w% V3 A5 G+ y                        pLight->Ambient.r  = lightColorPrv.r2;
' b- c7 e$ @& A5 W" B                        pLight->Ambient.g  = lightColorPrv.g2;7 P9 a  A' E4 i
                        pLight->Ambient.b  = lightColorPrv.b2;
: D5 \; w0 y9 M; i
- M, }; ^4 x. |9 b9 W                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??., _! J* l" |+ b8 [1 i
                        {# z+ F! K2 M. G. Y8 b
                                pLight->Diffuse.r *= 0.6f;
. w) n9 C0 \) J9 m                                pLight->Diffuse.g *= 0.6f;
. \+ t! W4 C: E( z                                pLight->Diffuse.b *= 0.6f;
9 L7 Q- |" k' o8 _8 l8 g4 C# r+ p2 ^                                pLight->Ambient.r *= 0.7f;6 ~3 s  d  N  t
                                pLight->Ambient.g *= 0.7f;
: C( t* v7 w; s% I- T' x1 S! X) q                                pLight->Ambient.b *= 0.7f;1 d- c& n& h. q: a
                        }/ a  Q' ^7 r' I1 t$ e
                        6 u+ q# i9 [- h! d( x. d0 R
#if __VER >= 15 // __BS_CHANGING_ENVIR/ D2 X* h5 G5 _$ _3 z& w( V! {
                        if( g_pPlayer )9 u) \: `! \# I* N  ~2 S) c
                                HookUpdateLight( pLight );
+ n3 J6 U* B" p, X+ B: {#endif$ c, k, ~4 i* q: v$ p1 N5 s
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );* [! M1 E' `3 q. }% ^

; a" [: P3 t/ `" `6 _# l4 v#ifdef __YENV
3 b. Y# M+ j# F" [* ]: G                        pLight->Diffuse.r  *= 1.1f;$ Z/ H2 e: b+ B! S3 M9 {
                        pLight->Diffuse.g  *= 1.1f;
  U. p+ k* Z8 F0 w& t# ~                        pLight->Diffuse.b  *= 1.1f;
9 O, s9 }$ m# A0 I9 T7 C% `: v                        // oˉè* ??à?
, K0 d2 Y  H: \6 w4 t                        pLight->Specular.r = 2.0f;' T* i, f: b9 o' {
                        pLight->Specular.g = 2.0f;
3 s/ n7 E. K4 d                        pLight->Specular.b = 2.0f;; ^, z- y; B# D- |/ b6 J4 r; V
                        // á?oˉ 6 @" `' V$ l- ]& b0 M
                        pLight->Ambient.r  *= 1.0f;
9 H# v; e& ]& m# H) R                        pLight->Ambient.g  *= 1.0f;
# E/ v: {& |2 U5 F$ ]( M; V7 N2 z                        pLight->Ambient.b  *= 1.0f;4 |- C, |3 t) o# M. d* M8 o
#else //__YENV" k% t# E: {* z5 K2 N6 I" ?
                        pLight->Diffuse.r  *= 1.1f;
  F" _2 E1 ~" J& S* ?                        pLight->Diffuse.g  *= 1.1f;$ S9 i4 E' }# k& i
                        pLight->Diffuse.b  *= 1.1f;9 T' g+ {/ H; }' Z' W
                        // oˉè* ??à?
2 s  R" M/ U; g                        pLight->Specular.r = 2.0f;
4 `' h# N( e9 [2 y: Q4 P$ ]0 M                        pLight->Specular.g = 2.0f;
% K( w' U/ T0 d* I- v                        pLight->Specular.b = 2.0f;7 h* w* V; x4 G8 r: j
                        // á?oˉ
; y0 i; C( p9 M! g* r  j! ~# E                        pLight->Ambient.r  *= 0.9f;! q1 }: }$ k$ t2 {
                        pLight->Ambient.g  *= 0.9f;) k) ^2 u" l$ G" [& l, k6 v& X
                        pLight->Ambient.b  *= 0.9f;! R- `* P7 X8 k, O; n6 f" a
#endif //__YENV $ r# q3 j* ^  ]7 K4 t
                        1 ^% d) D9 x3 l& v0 A* n
                        memcpy( &m_light, pLight, sizeof( m_light ) );
: `7 f7 @8 s- O2 z- }                        . |0 O0 ~- y9 ~8 H- A  o  c
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);) e0 m. O7 u0 w+ |3 A
                        D3DXMATRIX  matTemp;
' r  \3 n. }, A                        static const float CONS_VAL = 3.1415926f / 180.f;
: l: V' ?2 X' z& \! i& \3 p' _4 o) D! _7 A1 I) X8 G
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);7 x+ q& u# b" y) R
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
  n- o# _$ K) f! J                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
, Q/ i: w. k# L3 G3 A                        pLight->Appear( m_pd3dDevice, TRUE );
" u2 v& ]! _4 \; r$ c. G; t8 ^& J8 _
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);( F+ s8 d2 j; x
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
, m, b8 U/ p2 A6 l6 e: v, Y9 v, i                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 M* P1 o: l6 C* J7 w6 w
, I/ ]6 _- p9 P7 P" a  z* A, D9 g6 u                        DWORD dwR, dwG, dwB;1 u7 c. T7 h1 Y% Q( n
                        dwR = (DWORD)( pLight->Ambient.r * 255 );1 ^3 a5 Q, g% v$ k
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
1 W4 W: ~. y" R6 z                        dwB = (DWORD)( pLight->Ambient.b * 255 );
% f) Q0 b' n3 o" m5 ^                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        / |8 [# }5 l3 _. G
                }
9 c$ e7 k( X% S0 H- c2 N        }
! i- X" f3 t$ C# r& K9 z2 I& m! z% v6 l
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );# ^$ {6 A8 V  y
        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) );
5 t7 ~) `: Z* ~* }        ::SetLight( bLight );. ^& F( u9 b* N% ~

' O  O1 _' R' t. x8 Z9 I9 W8 [1 E( P        // ±ao? ?D?í???ó á¤à? , F3 ?) y. y3 I
        m_pd3dDevice->SetMaterial( &m_baseMaterial );+ i& N; E4 n  v! W: [1 J& |+ D
       
4 d+ E4 p5 M2 h2 ]) ?5 C#endif // not WORLDSERVER; u* U! C% c; t: ]- j
}" h$ e7 T9 M5 A0 Z, a4 Z+ ?
并更换( N) h% x8 M  Z8 C
Code:* Z# t5 {* f* i9 D" M5 d
__FLYFF_INITPAGE_EXT# a& i, |! l1 G- Y% J
定义& _# D, Q" m& R4 T7 E8 D& V
, n" [- b4 x  b5 i1 L

5 w# l  L" m4 P8 t  W
3 R2 K1 ~0 N) b/ }
1 a: g! j3 E2 b$ h6 x现在终于删除我的狗屁加速...5 \* q2 d5 Q  v" W8 A

) ~% T  g8 |7 _1 B. r6 p
4 B7 s6 ~0 @5 p4 Q5 r1 h9 N" M2 Y; a+ z





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