飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
8 S0 W7 f! L8 ^( c0 w. k& ^- \+ z; f尾翼:
2 z/ P/ @6 W7 r* n" ~
5 Y! {$ O" q# L+ L  g" x$ t% g8 u代码:
$ a2 N6 a% D; t# h- @% q4 x. d  p' ~CWndAutoFood::CWndAutoFood()% R. ?% }" I( ^
{  p: n* }  \4 [0 a
        m_pItemElem = NULL;
, }6 Y+ R( H3 j- K9 u        m_pTexture = NULL;
! U' p+ \& y% d; S1 c        bStart = FALSE;
& B- T& K$ b2 y. l+ o) I}
) J, T% L3 ~7 R( g4 s0 r
) _0 N9 e* z+ C: U" q0 t: ZCWndAutoFood::~CWndAutoFood()0 p9 [' E- i8 p. W% J0 |3 }# A  p
{; P, @& @' A' c  l$ Z! V- Z! E
        AfxMessageBox( "AutoFood ist gestorben " );
8 h- _& V& |# Q! r' l/ X, F- [}
/ L% D- v7 t: j8 {9 yBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )1 S8 N) Y3 W7 M
{
& b) {( f: u/ x1 A: N" n8 Z        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
/ W7 z% d' S3 }" h6 l. y}  T3 d& S- O. L% z- j) m
( n5 \% O' M. d4 M8 i
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
% }- B" w) M9 @6 c! g" `0 I{4 Z' d/ Y, P: w0 h/ X
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );! f+ h4 k# o$ F" y( \: ^* |
        CRect rect = pWndCtrl->rect;: F4 n& S) p: b* y
        if( rect && rect.PtInRect( point ) )
2 [/ I. M: b# Q! ~! v: h4 P/ A        {
; x# [% B& L! R+ ?* k2 E) N                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );% V9 h# n1 P' O/ h( r6 n2 }
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
; B# |! |  V1 D                {
7 `' A8 J# Q# f1 Y- n                        if( m_pItemElem )
! w3 G' _- G: a! A4 `1 S& Q                        {3 ^1 q4 Q- M- r9 K4 e$ u
                                m_pItemElem = NULL;% x0 {# [2 {% c; p4 N3 A( l5 }
                        }
' e. H- a" \( |, u7 h% p. Y3 H                        m_pItemElem = pItemElem;
5 @, U' ~. i* l2 d% j! H) d! [1 g+ |                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
3 r, O/ k8 E: [6 z# k5 {! J" I: ]# i: G                }else{; h; T# M# o9 p7 _% S
                        SetForbid( TRUE );
. W0 g2 t7 V+ E8 F) J                }
* z: a) V" B- i; P4 Z        }else{
) C& ?3 u. t1 O$ ~$ F+ Q                SetForbid( TRUE );# ^$ B6 D4 i5 {' v7 q& i7 y  S6 h
        }
% y/ O9 Y/ m7 t: c3 I* e; y        return TRUE;8 R  z5 m9 @2 g% V
}
6 \5 b- [4 i( S8 t6 U% m" E0 \6 z9 n, F0 v5 o0 E$ L
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )  r& r* I9 p* p# B2 v
{
& v, f6 n$ k* n- c! a/ Y8 {        switch( nID )9 J2 X. }+ t( z0 G1 k8 F* F
        {
' S& ?, O* @9 q  n$ q6 P        case WIDC_BUTTON3:
  C; S# }/ @0 x# h/ w7 l                {
! [* B1 V+ O' ]. S  z% Z2 e7 T. }, a                        bStart = TRUE;
5 ?; v$ ?) O- C/ i* V                        break;2 C. R# \: \' Y
                }
) c) q8 }' @1 t' M. k        case WIDC_BUTTON4:
7 y9 y- v) Y5 ^% S2 N                {
$ u4 |0 q5 N& f2 x( ^/ ~) w                        bStart = FALSE;8 D4 c% B( d, E; v8 d) P
                        break;
! Z+ C- H) @& ]8 o6 m3 X/ u+ [/ r                }2 w# x, G$ n* N9 f+ X
        }
6 m7 e7 e) x8 A- V3 j" N        return CWndNeuz::OnChildNotify( message, nID, pLResult );4 C( D2 e9 K# `, p
}       
5 j# N' F) g2 k" f( O# n' E# dvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
3 s1 P+ W+ q& v/ L1 n5 g{) S+ h6 d: }" Q* M; m" c2 x* @% a8 i5 V
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
) g( {$ q4 [  z; b        if( bStart || !m_pItemElem )& `9 ]1 C# z+ z) M' t
        {
4 _# M1 z& n3 V; r! c* E                pBtn->EnableWindow( FALSE );2 @1 Q1 V. O. ~. |  Y3 n! U
        }else$ ]& B5 p* [# g& O
                pBtn->EnableWindow( TRUE );
/ q; s6 W8 ?6 k* \0 m        if( m_pTexture )3 C# n6 ^! h1 d
        {( z  Y( z' M) ]
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' G; Y* v- @0 h+ o7 N+ A                if( wndCtrl && wndCtrl->rect )
- T8 r' E! I1 L) V& H4 k                {1 ]6 ^& S3 J  S( W: X1 E
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );) F; H; O% J) ]; c0 a7 K5 ]* ^1 y
                }$ ^5 A* Q5 `" _1 {4 S3 z9 L
        }) w1 O# D+ u1 k; M9 _
}; V5 r& `8 N! N: Y1 ~# l, U; h0 F, v

- z! ~: M2 o) N& ]* m' |6 O& bBOOL CWndAutoFood:rocess()$ f5 Z8 N5 w$ R/ A4 U9 u9 E; M' V
{
4 H# O9 N! f# y+ G        if( bStart )/ a8 r4 T2 @, j! |
        {
1 ~8 e$ V6 t& U                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
6 V5 v$ {( t; |/ b0 H) z* y                {
% A' Z* H4 r' }5 k9 p4 R                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
% S. G9 R. i# x9 p1 Z: T: v                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );( f0 s% l% D% X+ _8 }% e# E
                }else{
* ~6 B0 Y3 X9 l& q/ Z                        bStart = FALSE;# @: `" C0 A, I1 f
                        m_pItemElem = NULL;
8 g) j& _& B8 ~9 N3 _4 }                }
/ i1 L/ m; L7 b( t3 m6 D        }
4 k% G9 J8 M0 Q1 M% M. u        return TRUE;
9 M* j- u" ^  o8 c}
& V% z; y$ o/ H  X/ u8 a& ]% I. @  J$ Z9 O  g
登录视频废话:
3 w$ D8 f6 x" S3 t9 o  [2 _. ?尾翼:
3 J* U. i  E; t* R3 b$ K
( |1 z( v6 J- k" Z代码:+ f$ N, O+ W* I9 P# J/ _% U" u& J; f) l9 r
/ ^: d5 o# m& m& e# H- Y
void CWorld::SetLight( BOOL bLight )' U! \% S0 |1 I) A7 u8 j
durch" F; B' r! N" g# m' ?+ E" ?$ \. ^# w
Code:: ^- a. y! R/ e7 k
void CWorld::SetLight( BOOL bLight )
$ `* L" d  G: x' b{2 o5 {. L9 b6 E! D* D
        //ACE("SetLight %d \n", bLight);# c( a/ C) s% I2 k' U; @
        4 X" r0 G5 a2 T# T! J7 R
#ifndef  __WORLDSERVER   |& K  W1 |8 C7 d
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
" ^- U1 o" L' X6 R8 c        CLight* pLight = NULL;9 r* x& a. x/ q- `. w7 N* H. E, q
1 f. g' l" X5 g+ G
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );  i) B, N. v2 w( c& o1 D) p$ m0 J

% D- ^/ N1 p3 Q3 X$ [        pLight = GetLight( "direction" );
  H' p* {+ O: O  g2 T% i3 c
1 Z7 O, R' A6 I) [4 K( g/ k) A#if __VER >= 15 // __BS_CHANGING_ENVIR. X- ?/ J( i; t1 `
        if( g_pPlayer ){
  c! N5 O- ~! x4 P! I                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
1 ]* Z  B6 e# {* ^5 `                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!8 C3 u( `' b  Z  }' Z
                {
! w! V. e+ [6 f( y' d+ a                        if( pLight )
: I  T5 Q/ L1 B: N; _2 |5 s+ ?                        {, q4 H& N5 D: j: I: ^! X
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
3 b, i: o. L" e) @                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
* B; H) l, W* j                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
) j9 T% V' R" x% j! A* }, m0 \0 Y
                                pLight->Specular.r = 2.0f;
1 I5 I3 i9 H* s! S1 @2 E/ J5 j                                pLight->Specular.g = 2.0f;" b0 A5 _3 B' y) s6 [0 n
                                pLight->Specular.b = 2.0f;
# o: g5 D8 y' N6 j* \       
" ?6 \* h" F& j/ f                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
$ g& Z& n9 d+ @# U% [$ ~8 v                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
: I4 o1 I, [2 h, e+ L                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];. n5 O1 _2 p) W% x, {
        2 r- Z" _5 b- B& Z( c
                                HookUpdateLight( pLight );
, l  g3 @  U2 l; R& z9 I/ _$ L7 p' j8 O) t2 O
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );% K0 o- O7 a* Z2 g8 B
                + U) Y: x% [, q
                                pLight->Diffuse.r *= 1.2f;8 v% T/ F% ~5 F, K2 X# m
                                pLight->Diffuse.g *= 1.2f;8 Z+ o( Z- \! R# r! ~0 {
                                pLight->Diffuse.b *= 1.2f;% F1 C' c  [9 A- y
" b$ T5 s" R9 i1 i6 S% _& j+ A: Y
                                pLight->Ambient.r *= 0.8f;
( N, o2 o" U1 I  \                                pLight->Ambient.g *= 0.8f;
( M3 C) b9 C+ @/ `5 }# \0 x5 t                                pLight->Ambient.b *= 0.8f;
8 a6 T- E3 Q) V' |& g; z+ c6 F! g       
) ~; c! V1 z  }3 ?                                memcpy( &m_light, pLight, sizeof( m_light ) );
" A- Y5 x0 e; i7 N
5 x, i7 l3 q$ z4 T7 \/ a; z                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ s6 t. Q5 ?5 a9 P! d1 Y9 |                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
+ h+ {1 J* G$ J8 B7 n) A( K1 s                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ; S7 n' _+ `# m0 r7 W% Y  w
                                pLight->Appear( m_pd3dDevice, TRUE );
! m. ^+ d) w5 I/ s                + Q- P) H( ]8 d% W
                                DWORD dwR, dwG, dwB;
7 o5 Y8 T' g- m* r                                dwR = (DWORD)( pLight->Ambient.r * 255 );
  p) l. k& ~! A# t                                dwG = (DWORD)( pLight->Ambient.g * 255 );
8 N: \  X5 _- x' d, [, y                                dwB = (DWORD)( pLight->Ambient.b * 255 );" p; h1 I; F% v. y9 P
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 O7 A1 g# u" T  r0 y# K) j$ s                        }3 g4 ~; |; O! r9 @8 J
                }
3 _9 y6 P- s1 y        }
  z; \% E$ [1 \! A& z& ~& y6 u7 @: `        else1 f  [7 b. ]9 Z. _/ ~
#endif
1 p2 E+ h; b1 b1 e6 S$ B4 W) P' H% a6 l  x6 e
        if( m_bIsIndoor )
' R$ {% u5 U: H$ n) r" e        {
3 S% u4 T- v/ J9 z7 e                if( pLight )
5 w' P, t% b( Q8 w+ d3 H0 a0 L- j# k                {               
3 O4 t9 m8 Y# X8 O7 v                        // à??μ oˉè*
* r5 b& Y: D8 I2 }8 S3 {6 }                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;/ T. o$ W: L. J8 }  E) }9 Z
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;9 U+ M5 L7 D9 I
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;. u$ M2 z2 f! w: q  L4 X& U  M
6 D9 S' O) m, t+ C) a" a
                        // oˉè* ??à? ; F; Q& x% P5 n/ z4 f$ L; D
                        pLight->Specular.r = 1.0f;
9 Y- q) P# v  h: N! `8 W7 R                        pLight->Specular.g = 1.0f;
" t; z- N/ j. \. M) V                        pLight->Specular.b = 1.0f;
5 V& N+ @" O" I                        // àü?? oˉè*   ^# G7 X4 k, ]8 X; W
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
- \3 C- P" f$ h+ q                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
0 U* U) n5 N4 |) I' C' e3 G0 K9 ?                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;" s& v" X  n# N5 w5 ?
2 i& |( n2 ~+ v# A+ }7 f* Z. o
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
" W( @3 b5 P0 B+ j+ q                        {! K+ Z- P# {" h) l
                                pLight->Diffuse.r *= 0.6f;, M9 H. Z% _9 B
                                pLight->Diffuse.g *= 0.6f;
6 F: N. ]! P7 V                                pLight->Diffuse.b *= 0.6f;, R$ ^5 M8 r6 G& U( A3 L2 G
                                pLight->Ambient.r *= 0.7f;" D6 b) I) N9 B
                                pLight->Ambient.g *= 0.7f;. H) O6 S( ?& j% Z( s0 A" Q" f
                                pLight->Ambient.b *= 0.7f;* }9 N- W0 X5 b) X) ]8 A) _4 _* O
                        }" E0 d  d; N& ?& o; {9 P

7 c/ e( z! @) G  F#if __VER >= 15 // __BS_CHANGING_ENVIR
7 ]( f- K! {' U9 {                        if( g_pPlayer )+ t, h4 ^& ]7 F7 ~
                                HookUpdateLight( pLight );+ r! r9 X) a  t$ H& @; [3 X; ^* @
#endif
4 V  V- P8 _6 }, w6 r: |                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );8 ?0 C3 z+ ?& y

( c1 L- O8 Z$ @8 J- ~                        pLight->Diffuse.r  += 0.1f;/ B  S' O5 V8 d2 B
                        pLight->Diffuse.g  += 0.1f;3 b$ Z6 ]: H  w* E
                        pLight->Diffuse.b  += 0.1f;
7 k* i# j' ~& I3 P! E                        // oˉè* ??à? 3 m5 c, p7 h0 S  t% \
                        pLight->Specular.r = 2.0f;" M* a: H: ]9 H! G1 C# `. r3 o9 a4 G
                        pLight->Specular.g = 2.0f;7 U* e2 o2 B0 ?' ~
                        pLight->Specular.b = 2.0f;+ _* G7 s) R' }
                        // á?oˉ
7 ^( J- o7 Q9 q$ j" S- G: n9 d                        pLight->Ambient.r  *= 0.9f;! b8 p2 z! ?3 B0 t) b. V3 n( b5 @  s9 O
                        pLight->Ambient.g  *= 0.9f;
' L; K5 ^* n, G* u3 z                        pLight->Ambient.b  *= 0.9f;
1 _, a# P* }* X5 \( K4 X. b  ?5 H2 x6 g3 Y  Z7 Y- q5 W5 s
                        memcpy( &m_light, pLight, sizeof( m_light ) );
, ^- Y0 s+ {' F. l                        ( h( M* H7 C& D# P9 l
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
" O8 D3 H$ j4 R2 g% O9 I& h) R                        pLight->Appear( m_pd3dDevice, TRUE );+ n1 v4 W/ X  y4 l
        ; t5 b' w" L' L  R
                        DWORD dwR, dwG, dwB;
8 |/ Q' d. H' K) I( p                        dwR = (DWORD)( pLight->Ambient.r * 255 );$ v0 t7 L) o- @  J
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
- `9 d; B. l/ C, h/ ^                        dwB = (DWORD)( pLight->Ambient.b * 255 );
/ P- c! `, A" C8 K8 g                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );5 }( y# D7 e/ X- o$ E# d4 ?
                }- y: T, D  d3 g# n
        }! u: ?, m6 l$ u+ g% c0 {5 y3 y# F
        else
3 h6 |" m& h; y0 o        {
' v- I* I1 s5 N8 |! S# ]1 Z                if( pLight )
  M2 `/ L/ ]* R* [                {
1 p- J1 ^! t& l) {% }+ O0 H0 t               
- F% e2 G( m; e# S2 s                        int nHour = 8, nMin = 0;
5 L# M/ i  |9 T) S        #ifdef __CLIENT1 d( P. d0 J# v+ T1 W1 v
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
* J: p6 I" ~3 `                        nHour = g_GameTimer.m_nHour;% P2 D2 H5 _! d2 z: ?4 Y9 b2 q
                        nMin  = g_GameTimer.m_nMin ;
, l* O. d" O" e, y        #else
/ S( h9 A1 W3 L- W  \7 Q" c7 p                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù./ g4 c: l9 A: }1 F$ i: [
                        if( m_nLightType == 1 )% Y5 w: P4 Q+ r
                                nHour = m_nLightHour;6 R  {1 d% C& }5 z
        #endif4 s9 i5 D* O3 M: L+ H* W
                        nHour--;
6 X7 B$ Y0 m. f) \8 m8 V                        if( nHour < 0 ) nHour = 0;
1 A' j) U) \0 @$ |4 z1 K                        if( nHour > 23 ) nHour = 23;
; N# y' C% k! N( }$ _5 o) N" `7 P9 V; W  \5 G3 r
                        //if( m_bFixedHour ); k4 W6 P* t7 }$ A$ E
                        //        nHour = m_nFixedHour, nMin = 0;
, g( J" I: \7 f; U2 G0 J                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
* y2 \1 P/ K# \                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
+ m& i' C% R! P9 y" A4 v
+ o0 s7 T/ h) ?7 k                        //m_lightColor = lightColorPrv;
; Q$ \1 @% g7 e& J! R                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;7 L" a% t) K: ]1 b- ]
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
$ W: _) ?. E5 f9 K                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% F5 Z8 n% c6 `4 O. A. E                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;+ V8 g' T8 }- `3 \
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;* {1 |( K" ?9 Q* V
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
1 E" G4 s4 U" o                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)0 y1 |) r' {. C

' G8 N* _" E1 [( W/ p% C5 C8 c. x                        // à??μ oˉè* - B8 Z: I# h( i( W' ?- y5 }/ [
                        pLight->Diffuse.r  = lightColorPrv.r1;0 R9 K7 F2 c9 Q# _& h
                        pLight->Diffuse.g  = lightColorPrv.g1;4 G! ?/ e1 ?0 s0 s' j  _9 x, s& s$ H
                        pLight->Diffuse.b  = lightColorPrv.b1;
5 e& m8 L# C% J' ^( k8 t/ s                        // oˉè* ??à? : P  |. k4 @! v
                        pLight->Specular.r = 1.0f;5 i% Z7 s  ]1 B5 P/ ~
                        pLight->Specular.g = 1.0f;
+ I( U' F. F. g1 I, f9 [                        pLight->Specular.b = 1.0f;5 i: ^, J) A4 E
                        // àü?? oˉè* 5 ^, k# ~0 l6 p* ^  s
                        pLight->Ambient.r  = lightColorPrv.r2;
$ Q. p4 e- s/ \; n6 E                        pLight->Ambient.g  = lightColorPrv.g2;
- l9 o7 N3 p2 z+ B0 C4 K                        pLight->Ambient.b  = lightColorPrv.b2;- s) s& l$ F5 m- h  L

7 o& o3 M% b0 X; y. A. o                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 Z! p0 I0 f0 m- I                        {
1 ]- \, B+ q6 b: a) V: s6 a                                pLight->Diffuse.r *= 0.6f;
  F" g5 [5 j% ^: }) T  A                                pLight->Diffuse.g *= 0.6f;9 w; V4 `/ }! c
                                pLight->Diffuse.b *= 0.6f;! L$ W: E" b* P; r- w6 d4 \+ ^
                                pLight->Ambient.r *= 0.7f;7 b7 f# y* f2 d' N5 Q% ]4 q/ A* A
                                pLight->Ambient.g *= 0.7f;
, K% U" D0 y2 R4 x* K3 _                                pLight->Ambient.b *= 0.7f;
8 c- n: _/ j- ~9 k& E0 t& D                        }$ [- `9 K( [+ ^2 \6 b. e9 K, Q
                       
0 s8 m, a4 z+ o7 @8 C* V. D! G#if __VER >= 15 // __BS_CHANGING_ENVIR4 R6 x0 j: t/ B0 v- Y9 \
                        if( g_pPlayer )
) F! H1 B4 `* D0 L7 S- t                                HookUpdateLight( pLight ); : w! f1 I/ r  b+ a
#endif5 G9 s. b( ?$ _; V
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. j; b- @6 L; _, |: G! s# H7 F2 s# U( T  R
#ifdef __YENV% x& K' }; ~( w1 {9 J9 P; k6 X
                        pLight->Diffuse.r  *= 1.1f;5 b) B; B) M5 l( J* C. h! U
                        pLight->Diffuse.g  *= 1.1f;( O7 ?6 Q8 y+ d' Q( Z: O
                        pLight->Diffuse.b  *= 1.1f;
+ Y" a& _5 R+ b5 o# p                        // oˉè* ??à?
& _( p6 G! z0 ~) g# z+ p* M3 q                        pLight->Specular.r = 2.0f;: i3 y9 _0 T" f
                        pLight->Specular.g = 2.0f;
8 x; F& u9 H+ l# b, t7 v                        pLight->Specular.b = 2.0f;8 R9 p1 v# X2 B& O" D! W  X
                        // á?oˉ
* @' V  w4 t3 x9 s( z- D                        pLight->Ambient.r  *= 1.0f;4 H& J; I1 L; T+ s% [8 w9 x
                        pLight->Ambient.g  *= 1.0f;
! c# z4 k0 o, L/ ^" H8 u( l8 i' B                        pLight->Ambient.b  *= 1.0f;
" W" n8 ?! w: {$ @2 t. @- E#else //__YENV( f0 x+ X4 D# ]5 C) X0 U  i
                        pLight->Diffuse.r  *= 1.1f;9 W( @3 W: m. u# Y9 L1 o
                        pLight->Diffuse.g  *= 1.1f;+ [  a: R! f" \9 x+ w
                        pLight->Diffuse.b  *= 1.1f;/ ^  _" Q* r" k9 X, T/ k: X
                        // oˉè* ??à?
6 h- Z. c8 T7 G& O" O3 u                        pLight->Specular.r = 2.0f;
. y8 _+ o4 ?7 U3 R                        pLight->Specular.g = 2.0f;
. c# h' H' F1 P( \                        pLight->Specular.b = 2.0f;
+ @# J8 T2 Q: s+ o1 T                        // á?oˉ
6 ]% }% U' X2 ?! a                        pLight->Ambient.r  *= 0.9f;  a9 P0 i# J- k" @
                        pLight->Ambient.g  *= 0.9f;
% l& D7 @' O* S                        pLight->Ambient.b  *= 0.9f;0 z  ~1 m# ~4 W$ F# G( b2 ~
#endif //__YENV 8 [& D1 A4 l/ U2 G: b* H
                        8 v4 j+ E% D4 p/ a& g: [5 P
                        memcpy( &m_light, pLight, sizeof( m_light ) );  P& ]# O& E" _4 I# ?( x
                       
( v* r3 Z# b% _- }$ k4 B                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
/ c. a# A2 s8 s5 w1 k4 @                        D3DXMATRIX  matTemp;
+ _4 Y  ]. M0 }. z& r7 A& X" z                        static const float CONS_VAL = 3.1415926f / 180.f;4 H; a, J; M6 N, U/ A; C

# P$ ?/ g9 }! i1 o                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);/ C& I& n7 @* g1 K3 W2 c
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);" j# ~5 N* u! j/ r  G" L4 i4 s
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
3 O. d, j" s( ~0 O* \! `+ m; @/ [                        pLight->Appear( m_pd3dDevice, TRUE );
4 _( Q3 p/ L6 c4 \. H0 s
5 s% d1 _+ c: y. K* W8 ~5 V                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; z$ B6 X  N; o- D                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));+ T0 O9 W0 u  }
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
' F0 a# r0 Y" b! Y
" K+ S; C9 Y# d9 I. S) d5 [                        DWORD dwR, dwG, dwB;
: T2 E9 D# Z( M; [                        dwR = (DWORD)( pLight->Ambient.r * 255 );8 F8 A! N9 Y. d6 W, E1 c; m8 b( y
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
- j7 H) _: @8 i8 R+ Q2 T                        dwB = (DWORD)( pLight->Ambient.b * 255 );" Q  ]! R# J# I" W4 ?
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        - [3 X& q- m" z. D* l
                }/ I* c( v( t+ @
        }
/ T; \$ Z$ B- K; i; i, i$ e0 h% I& R
2 }4 H( P1 U+ e$ E2 s6 U1 A        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );' w4 F) b4 [, H* D. a  s
        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) );. u6 H+ d- }. b8 Y; q' o. @
        ::SetLight( bLight );
. h: H: T6 I7 r, J- d8 E/ T5 w7 R/ h+ V* a! h) {
        // ±ao? ?D?í???ó á¤à?
; G) @6 g: A+ ^        m_pd3dDevice->SetMaterial( &m_baseMaterial );
4 j1 }6 L* e7 s8 S. B       
8 ^7 n1 D9 j6 I* a4 @#endif // not WORLDSERVER9 M. k5 Q, ?  E/ ~5 R5 l* k% M7 L
}. w$ ^; n2 U3 x" J( U
并更换
8 }) N+ j% c! ]Code:
% C- r+ H4 ?+ e3 n__FLYFF_INITPAGE_EXT/ W1 z  ]! U* q4 ?* V3 k
定义( p9 B" A1 s  n1 `. q* G
9 x4 b* ]8 ~; T! X  f( E
/ m7 n7 z  b" N) p' ^
* G$ w) t  _. {2 o6 _
& m# G& `% s, Y% [2 V
现在终于删除我的狗屁加速...5 j0 _9 l, Q! N, w- W
" k# e: n. V4 {! v. A* X
; E' ~1 {- k+ C7 w* s& L. a

* O$ N; g2 D) L- W7 H. k) G% A




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