飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:: `' F; z2 N4 f& L! y- v
尾翼:7 v' X& l' t) p2 A9 ]+ E1 q' G
* _5 |; u: M- @5 N- e& H
代码:' V  }  Z; w  ^! [. g
CWndAutoFood::CWndAutoFood()+ z* a; m2 b$ P" n( d9 R* m
{
* Y  V; `) N  T! t8 @% P  }- D        m_pItemElem = NULL;
' l$ u1 C: o6 K% ]        m_pTexture = NULL;% r( r. a0 k  R/ p
        bStart = FALSE;
: T' }* C) P& k9 w}# M* n; `+ M! v3 @

  e- O4 q4 M; n! O' S9 K' }7 _* k; P6 nCWndAutoFood::~CWndAutoFood()
, O0 x3 V& R8 _{
8 S" W) f0 ^5 O1 |0 R3 Q: `        AfxMessageBox( "AutoFood ist gestorben " );
4 B. @1 X: N: V2 f4 E- Q+ z}
7 N4 P6 e5 f' D5 [+ }; x) iBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
* b. r& f6 Z- f7 ^{
( @4 }3 U; F4 c# o6 ]        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
6 `# H$ o# f; J9 Y/ s- ?}
% a* J% q( j' b* v  [$ W4 W2 _& V# O9 Z2 }( X
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )8 c5 I9 P2 _* ^$ A0 v7 l3 S
{
& r7 S1 W$ [$ ?3 P# j; ~        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
: M7 a  x! l, d  l7 p- f8 A3 T        CRect rect = pWndCtrl->rect;! c/ V7 Q3 y* d$ }  q) m8 r
        if( rect && rect.PtInRect( point ) )$ o& k0 Z( o  f0 q
        {# ~5 Z8 u! F( _% }
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );9 v& V, U* R, D9 C' \5 X- C3 F9 d  W
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )$ G8 C' ?7 a. A0 T
                {4 }6 V5 d1 \, e% C
                        if( m_pItemElem )& Z2 N. a* P' d/ x9 w4 z: Z
                        {( y4 J' `: M& ?. a+ B
                                m_pItemElem = NULL;
& S7 b7 K* w/ L/ a& |                        }
/ Q& [: i0 t7 m) h/ g, ^                        m_pItemElem = pItemElem;
; m! R6 i) M7 V0 g  h3 Z8 u                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );0 m' r% p1 h8 f4 J9 y: r4 X" q
                }else{0 V9 M1 X: z& P
                        SetForbid( TRUE );
% h6 c# L2 V# U$ f! S0 z8 Z: A                }0 G' I* p5 Q2 `6 B1 y
        }else{
$ }: N6 [( Z; x  o; k* L                SetForbid( TRUE );
3 B+ s/ G0 q8 ]0 f        }
8 b( _2 k$ K, b0 D# a        return TRUE;
$ ?5 p9 F5 X7 m4 v* N; B}1 R- m- p: L+ ^* W) v, e! j

# \) o' I& R/ o; h2 G/ t: Q) vBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
; e2 V3 h1 q# q, t2 l{" x) D2 w0 R6 i3 r0 ^
        switch( nID )& _$ ]* k) t$ a0 Y- J+ u8 C
        {; d$ o7 D4 P9 w' a6 b/ e( Y2 p
        case WIDC_BUTTON3:
- \! F5 n/ _  Y                {7 j0 l7 O8 s4 l4 t
                        bStart = TRUE;" W2 e4 z3 N' Z
                        break;
. k8 Q6 w' R! F4 b                }4 p6 D' ?3 u1 h0 o, t
        case WIDC_BUTTON4:: n! u$ O- F3 y  A7 I6 d2 w
                {
, Q& {4 R  V# z                        bStart = FALSE;
7 p) U  ?* h: n8 O! g                        break;" |5 N& b# t4 z4 M5 n5 a* F; n( k
                }* N% b) V/ Q5 E
        }+ j3 [* ]. p5 P! L1 K. c
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
1 ?. I! P9 [, h' {7 E6 b* o}        ! i. `1 g  l& r6 D$ A" `; v: \
void CWndAutoFood::OnDraw( C2DRender* p2DRender )2 \  {* r! ]+ D* ?3 D, w
{
4 K0 f5 A! Z2 F/ b) E& K6 v        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
* V/ {5 I9 t6 \4 c        if( bStart || !m_pItemElem )* J$ @( b- y; p* J% f$ v" e0 e- k
        {  O+ u, @) s& z- P% Z+ Z
                pBtn->EnableWindow( FALSE );: g; N1 y' d: E7 ~! ]4 g( R9 `3 i% U
        }else0 C9 c& e2 `# t+ a2 ]& ~0 S
                pBtn->EnableWindow( TRUE );6 f% r3 z  B) Y% W6 O
        if( m_pTexture )4 Q. c! g. B7 f# P2 J& w6 I+ W8 E
        {, u8 `7 F, V. q* [
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );+ U7 l  {5 j( x
                if( wndCtrl && wndCtrl->rect )% C  n8 y3 D7 K7 D. A& F6 Q0 {
                {( m5 c: r4 y  U' I) e
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
$ B# }$ ], j  y5 i7 _' U" S3 C( k                }
' A# b0 X7 z' n( N        }+ d% Z9 y( C6 M& }+ }1 a; I
}4 L4 h& Z1 j, w; a* r6 `
6 N7 m6 c( J- p* y
BOOL CWndAutoFood:rocess()( e" X; h. }6 Y1 z8 u# m. w- ~* `
{
/ E5 M% C+ K% f" y) s( V        if( bStart )
9 R, {( J  [( t9 G* d- D( Z        {6 P0 Z  R) y% T* z
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
( @' d  x: E3 `  I2 b9 b                {
$ e" F% }- U1 C0 h" q6 S: o& Z                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
& N+ y' }* W  d0 I# ]; z  ^3 a                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
8 ~7 M/ u, P, U/ Q* n$ D                }else{1 A  T" k& I) Z$ g1 }
                        bStart = FALSE;! i( G: U7 K2 E' {) X3 S
                        m_pItemElem = NULL;& a. A" O1 f+ f4 S
                }
7 @9 H9 W' g0 c        }0 f: I+ A7 N1 F5 z2 [
        return TRUE;* h8 }+ V5 K. ?7 r( \2 @6 a
}( h* d7 d5 }1 K% l2 O) H2 y" g

; C7 U' J: r5 d, ^登录视频废话:. k/ k* R/ C  }0 @9 K% b9 p6 n) w
尾翼:
+ U2 @% O  J9 Q9 j' \" W- D) P5 \) V# r& a" C
代码:- u  d! p! E3 v! ~1 v% p" ]2 {7 k
' _3 F$ I4 f) Y  `
void CWorld::SetLight( BOOL bLight )
& R( t' U) [$ f: t4 hdurch
$ ?. r, ~! A0 F6 _Code:1 _8 m3 ?  r- _7 D
void CWorld::SetLight( BOOL bLight )
4 S7 q4 m% _! h5 p! k{1 O. S3 n$ [/ D. }$ Q" J8 ?
        //ACE("SetLight %d \n", bLight);
. U/ v9 X% t! l/ W1 c! v        7 @5 H: t. H0 {' O6 C
#ifndef  __WORLDSERVER
: T& j: b4 n) [' {7 Q! A8 a/ O8 k        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);# a$ ?- K. T& D
        CLight* pLight = NULL;% Z2 _/ P6 M' f, u4 Z! v. T

& \7 i" Y1 X& O* k9 A& }        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );6 N+ i3 a5 s, U
/ y; T/ K8 I- O! o) N# H
        pLight = GetLight( "direction" );
" X% L5 `! J( X. _4 N
+ t- R( K" [' F% R#if __VER >= 15 // __BS_CHANGING_ENVIR! i, t/ w& x. F& {3 q: _
        if( g_pPlayer ){
0 n+ k( c( y, t8 _! b6 s6 @                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
9 `5 l- a  s1 p5 Q, Y9 \1 r. H                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
% ^# ]3 \& t8 g" m# V                {) E+ `; Y9 w1 D' A5 w) g
                        if( pLight )( F6 d( K; J! {4 w, V0 }
                        {. A# ~* ^. g+ J0 c6 X
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
, V+ c3 g4 X% K6 H" K/ w7 o                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];* M% k1 W+ i0 H+ b
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
- D3 j8 u% M5 z7 f6 c* d. m
. q3 o/ w9 Z4 i+ D& \                                pLight->Specular.r = 2.0f;) V, g/ d8 U' `6 N. G; d
                                pLight->Specular.g = 2.0f;  p+ V8 S, S$ J8 G0 z- a! T: f( r+ d/ J
                                pLight->Specular.b = 2.0f;, d% b" K$ y( @. h! f
       
' [0 p# {# ~8 n% L                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
) v0 T$ Y4 O' S: @5 J* P7 p! p                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
" M! i+ ?. r1 f. q% @                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 \  c- p6 {# f3 ?2 k6 `& @        . q) ]+ V* P4 k6 G
                                HookUpdateLight( pLight );
# o' R6 q4 v4 k( Z, n
9 j* @4 S0 \: F+ A; J0 J; L                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );# B* R7 u1 g1 J. U4 W# x
                * `  f7 U" f7 }5 Y6 U$ y7 ?
                                pLight->Diffuse.r *= 1.2f;
4 U8 `4 @+ D: q& h                                pLight->Diffuse.g *= 1.2f;$ @8 q5 y# S# i/ H
                                pLight->Diffuse.b *= 1.2f;! ~: W1 C: k+ x- M

0 j& M3 S5 ~) P6 Z1 ?, d                                pLight->Ambient.r *= 0.8f;
1 c5 w, c2 |5 `+ L5 s7 U. c' G                                pLight->Ambient.g *= 0.8f;
; L0 O( z7 P, R$ m6 n                                pLight->Ambient.b *= 0.8f;! Z! f" W8 {8 U8 ]6 x3 C
        " M8 B" o2 |9 B4 g
                                memcpy( &m_light, pLight, sizeof( m_light ) );5 K3 ~; y" \! f) D8 ?$ I
! S- T% N4 ?8 b1 s& ^- x; d
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);) T. E9 I7 \+ p. E  a" z6 n7 q/ o
                                D3DXVec3Normalize(&(vecSun),&(vecSun));* ?# q. U0 `; N+ S4 ?
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
4 m: o9 L; O2 Q" E5 a0 K( r                                 pLight->Appear( m_pd3dDevice, TRUE );
) O* S1 `; U+ U  g  j               
) h9 }. b" E& n1 ]! @3 F                                DWORD dwR, dwG, dwB;) z! T# }1 H: X: V3 ]
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
, E7 o% K& i7 i. M, K7 r                                dwG = (DWORD)( pLight->Ambient.g * 255 );% Q( M1 H* Q3 w. m
                                dwB = (DWORD)( pLight->Ambient.b * 255 );3 R4 V9 O) D9 W7 J3 C
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
& G$ Y5 S  W, _1 V                        }, U4 P, K+ J' ?
                }
/ q/ g& W/ r  Y' Q& u        }9 b& j- q. x  h) O4 n+ k. z" T
        else
2 O0 S7 ?5 ?; Q#endif 6 p" q; f. v% v
8 ?# h. ?; {8 M" f
        if( m_bIsIndoor )
6 V( O* f( l& z" I1 [+ m        {
) h5 H4 a. T4 b& s8 h+ u. h: B                if( pLight )" A/ ]' U6 L' S. ]. A+ k
                {               
3 t6 S: ~) j8 b/ h                        // à??μ oˉè*
. o, y* ?& N7 V# f                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;# X' t+ N! ~; w9 y5 }- u! R
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
8 F3 Z& P0 `% M: S1 T                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;/ y5 `4 m! T; G+ C! r% i# D# x

* w3 c* g/ [% G' ]4 J                        // oˉè* ??à?
2 F" S. C) _. G  `                        pLight->Specular.r = 1.0f;
5 S4 m5 _# B! f  O% g                        pLight->Specular.g = 1.0f;% H0 P$ ?# A- f, n" p
                        pLight->Specular.b = 1.0f;
" D/ J8 ~2 x, U% d, c; M' w                        // àü?? oˉè*   r3 V4 ~$ @" h% S5 }
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;9 L) X, J7 W0 c4 O2 P
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;! g- K, s9 x9 X
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;/ h1 i; ^) n2 c  U: o& `* ^7 Y8 k

5 d- y" c: ?) E+ s7 ~                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
8 G! u3 M4 k: T  e$ P2 x! z                        {5 d/ w' _/ V2 d8 o
                                pLight->Diffuse.r *= 0.6f;
' F  B( X% x3 V5 j                                pLight->Diffuse.g *= 0.6f;
/ E( ]! u3 K5 T                                pLight->Diffuse.b *= 0.6f;( \+ p, t/ R4 \- C; {1 L2 Q7 i: X
                                pLight->Ambient.r *= 0.7f;" g3 ]- k% ^! K' N
                                pLight->Ambient.g *= 0.7f;
1 e+ Y2 z8 \3 C, ]! |                                pLight->Ambient.b *= 0.7f;* a5 w" c8 l5 S! O9 m: Z) [% }
                        }
6 }/ i5 Y6 d/ C2 M% {/ o2 G# X" \+ O
#if __VER >= 15 // __BS_CHANGING_ENVIR
; f  w) p5 G  t+ T0 o' \* X# U  l) T                        if( g_pPlayer )
- _# e/ H, V6 H. g5 J6 ?, l( c# w& S/ c4 e                                HookUpdateLight( pLight );
6 y. L: n9 X5 t#endif" k& [3 [% N' B$ ]% O5 h& Y8 \' T. D
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );7 W4 [* w- Q5 `2 ?! k+ A0 v  I! e  u
. q6 A5 u) b  A' M6 E/ ?
                        pLight->Diffuse.r  += 0.1f;
, \: a' [4 C; m6 m                        pLight->Diffuse.g  += 0.1f;& K* J8 W0 T6 I
                        pLight->Diffuse.b  += 0.1f;+ N. C& Z* F6 `& o
                        // oˉè* ??à? , z3 @/ A) Z8 _- o( A& H( \) m
                        pLight->Specular.r = 2.0f;2 `2 o' B9 y7 J3 f% a
                        pLight->Specular.g = 2.0f;
# c" V; N- x# \! x& b- i3 G                        pLight->Specular.b = 2.0f;+ |0 l/ r$ c5 [! G$ \) \, u& V
                        // á?oˉ
  }2 m3 }9 i& z1 p. v# H7 B                        pLight->Ambient.r  *= 0.9f;
; B  ?- n, K& @! N/ H" w* P! J, o1 y                        pLight->Ambient.g  *= 0.9f;& y* N  w- N% k6 {) m5 k. s/ u
                        pLight->Ambient.b  *= 0.9f;) m/ Q4 W2 R+ R

' p# J, {0 P# q, o0 l& N                        memcpy( &m_light, pLight, sizeof( m_light ) );7 M( p( N9 N9 I# A7 o5 `
                       
; w+ R/ {1 }9 X: j                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );) z1 Y+ }- l0 ?- R2 D0 X- ?
                        pLight->Appear( m_pd3dDevice, TRUE );' h/ h* N/ {7 ?5 H' w
        $ V- |( h. E3 R. V
                        DWORD dwR, dwG, dwB;. R; g3 _1 {. ]2 m
                        dwR = (DWORD)( pLight->Ambient.r * 255 );8 O2 c) g3 w8 I* w- [
                        dwG = (DWORD)( pLight->Ambient.g * 255 );: x. E. z. R/ U
                        dwB = (DWORD)( pLight->Ambient.b * 255 );$ ~6 \' T+ h4 q
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );6 q# P; k8 s( c% r6 ]
                }6 X" a2 I5 z  x# l- |& U2 C
        }9 z% _7 V* J, D
        else
4 \/ g; K4 {( X0 {. n# E9 o5 {        {7 Z4 t" N  K( \0 K* `0 b
                if( pLight )0 T! @1 Q- j" I7 K: T$ G# a
                {
& ]/ T" D( C: C. v               
8 }; V- z. C0 V' g- P) A                        int nHour = 8, nMin = 0;/ D  c. {. q! q. T9 h
        #ifdef __CLIENT
: p6 L- y3 p& L8 Y& y) X                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. ! ?! _' t; V8 T' C/ p& s
                        nHour = g_GameTimer.m_nHour;
7 n  |4 q4 w2 ~7 @: O# Z                        nMin  = g_GameTimer.m_nMin ;
; |2 T6 U! u+ x        #else$ [7 F" H9 Q8 ]9 g4 a2 T! @4 j+ H
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
% K8 H0 @) O8 L; @; V7 m, V                        if( m_nLightType == 1 )
, \; m0 z  Q% t: H: \1 k- i6 E# R3 J4 F                                nHour = m_nLightHour;6 L* W  W. t$ t
        #endif: }- Z: f: e& [* [* E
                        nHour--;
, F6 B; v3 a- x7 b, p! ]                        if( nHour < 0 ) nHour = 0;6 `5 Q) C& H% h* ^: C7 z5 W
                        if( nHour > 23 ) nHour = 23;
: e1 u  b1 u: u& X  N9 K9 Q' S8 h! [) D8 O( h
                        //if( m_bFixedHour )
9 p: U5 x( i' [' ~" d2 R( Q- e% L                        //        nHour = m_nFixedHour, nMin = 0;! n6 {% u# f+ {
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];8 d& r8 Q& d: R& t( n
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];. N+ k3 V! p  F5 x' Z9 |- u* y
, u/ g8 f- ^5 S& E" z  s
                        //m_lightColor = lightColorPrv;
! E0 R9 M  F6 Q( J8 g                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;; R+ w; y, h% ~0 Y. W" I3 P% f
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;6 ^* y; K; ?, ~( K
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;2 c$ V4 y( L. N
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;' U, j1 {* d0 N% p: @  |, V
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;/ B7 {: a6 \  b5 o' j5 Z+ H& u/ L
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
  p% L# U8 }8 Q0 F                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
% ]/ A4 W  ]2 Q* C7 _9 h% X2 y: m
                        // à??μ oˉè*
' s: h* {6 r" x2 B5 F                        pLight->Diffuse.r  = lightColorPrv.r1;+ }4 z! R7 y% V' o) E. c$ `" F7 C3 b1 A: j
                        pLight->Diffuse.g  = lightColorPrv.g1;/ x& K: |7 s( J" S! s
                        pLight->Diffuse.b  = lightColorPrv.b1;, V) m* s& ?& |# [0 q+ ^9 s2 C& e
                        // oˉè* ??à? : }* L; Y, w- K; @9 H7 h2 P
                        pLight->Specular.r = 1.0f;1 r) A* }3 W; t/ ~
                        pLight->Specular.g = 1.0f;
" F# `4 Y; r. w* J8 l6 a                        pLight->Specular.b = 1.0f;- {' i+ i0 {" N! d" m% S. E5 G
                        // àü?? oˉè* + G( T; n( h4 T6 k6 B1 A. g3 k
                        pLight->Ambient.r  = lightColorPrv.r2;
3 Z& [8 B( Q# O6 g: n8 b; @# {: e                        pLight->Ambient.g  = lightColorPrv.g2;% q( A: F6 x$ G! u# Y
                        pLight->Ambient.b  = lightColorPrv.b2;
+ F/ ]) W- l' z) e! ?5 j/ b& N+ E8 l: V: b! x7 j
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
& x9 _+ B  N/ O                        {3 s1 p" v+ h/ T, c7 R
                                pLight->Diffuse.r *= 0.6f;
# u* R9 [; O2 U% T* L$ ^$ h                                pLight->Diffuse.g *= 0.6f;/ z7 W5 X6 Q5 u% }
                                pLight->Diffuse.b *= 0.6f;
0 ~/ L% x6 ^0 P. S3 P, C3 C                                pLight->Ambient.r *= 0.7f;
; g' {( V" U1 T6 W* P                                pLight->Ambient.g *= 0.7f;- W+ l. I2 s# J3 o4 j
                                pLight->Ambient.b *= 0.7f;
& s3 G( Z- V! m+ ]' p( z; [                        }
- x: _" p* E2 m: L# m                       
9 N! ?' ]$ [6 s# w#if __VER >= 15 // __BS_CHANGING_ENVIR
% {7 |* n/ ]: [2 B( w) p+ Q0 p9 F                        if( g_pPlayer )0 y& w5 f( S; Q8 _; {
                                HookUpdateLight( pLight ); * O9 G; }4 h+ z3 ~& q
#endif2 e6 ]: b/ `% N' U9 [' D7 u$ z' v
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 h3 n% H  p  _$ B  e6 E/ v$ ^
7 z2 V7 W. i) E+ J6 |; W# R1 ]4 @5 G#ifdef __YENV+ q: g& h3 f, G7 Y8 V7 j" e$ O" W
                        pLight->Diffuse.r  *= 1.1f;
9 D  x: E3 y9 F  B( C! d. C                        pLight->Diffuse.g  *= 1.1f;
3 M" X( e; m- ^8 a                        pLight->Diffuse.b  *= 1.1f;/ u( }3 @" G8 U2 `- G$ u% H
                        // oˉè* ??à? 9 [  b' R6 Z& R! N' ^
                        pLight->Specular.r = 2.0f;
; q0 m- @  [5 F1 f' I6 X                        pLight->Specular.g = 2.0f;4 l# q3 B! u. s& ~5 W1 L, g/ b
                        pLight->Specular.b = 2.0f;
& F0 ~0 X7 Z8 K) |. F                        // á?oˉ
. W: D5 M8 h1 z                        pLight->Ambient.r  *= 1.0f;5 |4 x! c. U" J9 x) @# f7 K7 N
                        pLight->Ambient.g  *= 1.0f;  d" |& @. }9 |* E0 ?$ ?
                        pLight->Ambient.b  *= 1.0f;
& q$ t0 }2 E4 F% s% c#else //__YENV
  q1 D# v8 J  J8 y% L7 Y/ u4 u                        pLight->Diffuse.r  *= 1.1f;
4 x6 w2 n& }$ p& l! k                        pLight->Diffuse.g  *= 1.1f;) j1 \3 M, Q9 W+ w& @) Y4 R6 T2 C
                        pLight->Diffuse.b  *= 1.1f;
. x, F7 Z* l2 m7 r4 W% ^                        // oˉè* ??à?
& @: ~/ Q6 q) c0 Z                        pLight->Specular.r = 2.0f;
  C7 q# v$ U: w8 P: Q3 m                        pLight->Specular.g = 2.0f;
) P, y5 H; o: D5 u                        pLight->Specular.b = 2.0f;
7 C) S' B+ m8 g                        // á?oˉ
# v4 t/ ?# ]1 y8 `& E* }/ ^2 Z                        pLight->Ambient.r  *= 0.9f;
$ A& h) X2 [# E* ^  |  t" `! v                        pLight->Ambient.g  *= 0.9f;* F' j' X. G3 e5 |
                        pLight->Ambient.b  *= 0.9f;
# k" g7 w# L! m' d: V9 w#endif //__YENV
( W+ ?! B: @2 Z5 T8 ~$ @" g/ g                        - H1 c" Z# K7 ]  d9 ^
                        memcpy( &m_light, pLight, sizeof( m_light ) );3 r. `3 ?9 H/ ?& H
                       
7 w7 |; X2 p1 c2 b; e7 U                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);% I! r( s: W& J, S  w( F9 q
                        D3DXMATRIX  matTemp;9 l, ]# y. G1 Q% L: v
                        static const float CONS_VAL = 3.1415926f / 180.f;
/ y% X0 J" N! y0 q( a
+ Y0 D7 M  U8 i. e1 R1 r. z: k                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
* J9 m( R9 n2 z) z8 b                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
4 s  A5 c8 z  e, v6 r# x  R                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
8 i& S: A2 p0 v0 Q# @" `                        pLight->Appear( m_pd3dDevice, TRUE );  l, `( M9 h8 O: n( c

2 @8 u% ]' _4 l. ^9 k5 x7 [) G                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);9 s3 ^4 b6 ]! J/ G7 m$ {3 S  p$ V
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));3 A- f$ m: e' B- L, y( C; h' c
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 5 W3 z9 [$ c9 S; o1 W- X# ^

& e. v/ w9 v4 d  P7 Y" o5 s) w* ~                        DWORD dwR, dwG, dwB;
- M( G; b2 f7 _. d                        dwR = (DWORD)( pLight->Ambient.r * 255 );
+ e0 T$ \8 W1 d8 \5 o& r                        dwG = (DWORD)( pLight->Ambient.g * 255 );7 b  B( i1 o( M( k6 [0 o
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
+ n6 B  ^1 ?4 @9 |  W                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        6 g: j, e4 G" f3 j- n
                }
: q* p3 g& O1 H5 K: u- n1 h        }" k3 v: v! H! J- o

/ V, \* {" r$ @" z8 s2 B        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
, C" r9 {' o) Z- s. K        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) );1 P! L" K  b1 D8 E  q
        ::SetLight( bLight );
2 }' l3 z, N. m: @6 ]
; {$ K/ U% `& c/ n1 y$ m        // ±ao? ?D?í???ó á¤à? 6 J/ W* x, _2 P. Z! r' x$ m$ F+ }
        m_pd3dDevice->SetMaterial( &m_baseMaterial );0 e1 e8 U* Y) j; t$ n  p& l- q+ ?- E+ _
       
( I5 a& ?' Q$ ?& M$ e" m#endif // not WORLDSERVER+ W% x( D* K3 R2 d, H7 S/ k! X
}% [6 q, `3 x. s$ ?; D' S. F. `
并更换1 ^) w- e0 E3 s! ~$ N
Code:- |+ F! V4 F/ ]
__FLYFF_INITPAGE_EXT' _$ B% l% \7 ]- C9 o
定义% j' Y5 L) d7 ]" R; I
5 z/ `* ^/ _; Z7 N1 @
! _! }" @2 h5 }1 \, e3 `" q* d
% }9 p* x  J2 t- Q5 }6 z

; s; {8 R3 z- I6 w  X3 [' _9 b现在终于删除我的狗屁加速...
3 }4 t2 _# {. ]
6 V% O+ J( [2 C4 C8 Q/ t( n3 X; g: w! t; A4 ~

: {% y0 O' v. C4 o4 e! B




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