飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
; I1 Y4 e" a! {1 R2 S4 S# t" }尾翼:: V- ]3 y4 s8 g4 k: f1 j' t

1 s1 m# H& k4 `. P代码:5 J/ n4 i, U* w0 f3 W
CWndAutoFood::CWndAutoFood()
4 }1 v# n# N' O+ f: _9 |{
0 P( f1 w$ Q( N( i, \& X1 I" R        m_pItemElem = NULL;) O- F. o4 N" i# L9 k
        m_pTexture = NULL;
7 Z; n3 S% b9 {' ?5 r        bStart = FALSE;
5 [) f% e+ o4 T0 y5 ^/ m. b}& N5 X( A8 y. J' R( O# M" O' D
& L) p' v. `5 |/ T& {- S
CWndAutoFood::~CWndAutoFood()
3 N, w8 T! z( d% d{
  B- D, b$ z. v        AfxMessageBox( "AutoFood ist gestorben " );
5 x, z4 I6 _$ S7 h# Y}: J; M& h8 e+ R! X4 p
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )* W7 f% E' f" @6 k1 ]# e
{) z! t. W2 B6 K! Y8 k
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
9 {! C8 f1 l3 Z7 s; _}
9 S  n; `: R2 C* l( ~2 E' q$ P/ k4 U8 D7 S+ H
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point ), `/ y; G! N: f5 {
{. t. f, e$ m) D* z& x
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );" b. \* b6 J, w. J
        CRect rect = pWndCtrl->rect;
- m; P5 |, }' w' I        if( rect && rect.PtInRect( point ) )
3 l5 J7 n1 |& i& `( K! H/ C) B) F        {5 s# j1 S4 V  x; s/ U- M5 s8 V
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );6 G' k! M! m# K5 ^
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )6 c2 l6 A  X: U
                {4 ~3 x* o7 f8 `0 T! D' Z& R7 a9 C
                        if( m_pItemElem )
# O2 e% O0 s4 L7 F9 ?                        {
$ D" }# K  j* W0 h0 n                                m_pItemElem = NULL;! [0 ^# ]  M" y( T: b' x
                        }3 e" f0 D0 Q. |! ^7 V5 A
                        m_pItemElem = pItemElem;
. c, L; L6 X* U) ]4 m                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );% W4 V( m. }/ Y* z
                }else{" f0 ?3 }# A) q/ g7 x% B
                        SetForbid( TRUE );& v4 v3 a' V/ j7 l1 g
                }
+ g# M" q. v' w: g1 z( K8 P  b        }else{
% e- `- s# I, g3 I; X                SetForbid( TRUE );1 ^# y& z( W- p& q4 L0 z
        }
; B. u' D) A6 F/ W5 S        return TRUE;1 l- x& L6 j7 l( \4 r5 H
}0 Q6 ?, T4 ]+ M

# _  Q/ s' V7 lBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
- q% ?5 g) @' G3 K5 e* F! e# i{: A* `0 h0 v- l- P6 i* v$ p
        switch( nID )
) V5 I; `$ ~) S  `- `: {( X        {9 Q& W& i$ ^4 B0 |* W4 v
        case WIDC_BUTTON3:
5 r: H9 |  [; J9 m' u8 d- u2 I                {# q+ h; g4 n6 N4 \5 e$ K' J
                        bStart = TRUE;0 O- a9 H2 a; h- w* L. O4 e0 X
                        break;
9 z  E) F% ]) ^% {                }: ~8 U& w. m( {* _
        case WIDC_BUTTON4:# w: l, w9 {8 E* Z, ]" q( Y
                {
! N/ A, A2 a4 d0 {/ I- d* M                        bStart = FALSE;! l0 x4 V- q; U2 F) }1 U
                        break;
1 {% j% d+ W4 p/ W- H                }& ]% m% ~( j, x, x' U; A* n) U' ~
        }9 Z6 A# M' w% a9 X
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
4 \% S: n; x% ]. r}       
  N& p4 c) K6 w. e. Avoid CWndAutoFood::OnDraw( C2DRender* p2DRender )- `' [- `  n, s7 ]
{9 f7 A, ?6 b4 S1 t
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
) `5 K6 E6 v5 b4 _7 g        if( bStart || !m_pItemElem )8 u) f" I! H5 z2 w) g
        {: S! c3 e! \. ~
                pBtn->EnableWindow( FALSE );
  @7 X) A- j, J8 C  v1 N; T. V        }else& ?- O. g9 \2 J9 K2 g0 `
                pBtn->EnableWindow( TRUE );( T  k% F. y0 z4 P) F
        if( m_pTexture )
4 O6 a+ J- [" ?8 {7 n0 q- g$ d% W        {, K5 I6 o: d! Z* x) W# I0 u
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );! w2 ]# S2 ?2 x6 x& @' `9 w
                if( wndCtrl && wndCtrl->rect )0 E( C: r& \0 ]4 V4 ]; |
                {5 k% R& s, m( d" g0 [- x
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
% W( a/ S' m; x. c, z9 p. L4 r2 q                }
2 g+ _, V5 a& U) X, ~' J        }! G( ?3 [3 Q! ?
}
! g% s; N, L5 w5 j! F! t! y6 g2 ~1 A$ q; o7 U8 F1 r
BOOL CWndAutoFood:rocess()% d& J2 {% P, R+ d' S/ y9 W. a+ ^
{
2 ]$ y0 Q& z, g        if( bStart )
! a+ J8 B6 B6 e" F0 P        {; h$ j5 ^5 R- Z4 N
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
, H& a0 m+ v) M5 ~                {" J- ]  E6 L; {
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )  `, E& |8 S; B4 l: T- u  k
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );$ D$ D( O! y1 ^: W+ F; O
                }else{% v1 h1 B3 k* V* n7 T
                        bStart = FALSE;& V5 H9 c8 Z$ {$ c2 Z4 g
                        m_pItemElem = NULL;
' v' d1 {& ?  H# P8 t                }
* P1 N. M/ |/ V1 i        }
, A2 s2 T3 W4 I        return TRUE;
$ e3 b+ c5 v5 Y! S6 C5 C}
3 |0 N$ F+ G+ @/ T6 g5 I; o( V7 I  J4 n3 g4 O# @: q
登录视频废话:
" [5 g  W( k* I, {% I( t9 a尾翼:" f7 c: S5 o8 ]0 n# W. ]' K9 Q

, `. g8 E: \/ ?代码:
9 p& B" E0 |; T1 Q: f! H: P
$ l; ?6 X; s4 yvoid CWorld::SetLight( BOOL bLight )0 l- o5 W  n: z; i) C6 C
durch
7 a5 C2 U7 L6 S6 m0 TCode:
  b4 ^4 R0 q7 d' J/ j3 Zvoid CWorld::SetLight( BOOL bLight )7 J) V$ B' H; S# h% b9 Y
{
6 \9 r  U8 W4 m  U9 f7 I        //ACE("SetLight %d \n", bLight);
' b; h" J5 U( k$ }; u' m       
& c* Q' o8 }! E! v: r#ifndef  __WORLDSERVER
% K6 q1 A' q1 E+ f        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
8 A* g- s8 E. _( S& |2 H$ G2 S1 w        CLight* pLight = NULL;' B8 ?. f6 ~0 @5 y6 x# L' ]
, o- ?' C$ k/ t; I$ Q3 C6 A
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
0 I) }9 G' I/ [" w9 U. \2 N( Y. ]( p6 k& @
        pLight = GetLight( "direction" );
3 }( R$ M8 _. i' q& e3 d9 [, i" G4 I% h  v7 b
#if __VER >= 15 // __BS_CHANGING_ENVIR2 b6 c$ W4 p! ?% k2 k
        if( g_pPlayer ){
6 L: }% E+ ]0 g; P% J* X% F                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );% Z3 A, Y: E  X0 z+ U
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
& j$ L2 O5 A( u9 C7 M; k1 T% Z- f                {- v% b1 ?5 e5 \8 e$ }
                        if( pLight )5 {* K" M! u  j
                        {
. o6 l# G; {  d                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];3 R/ A6 n0 `' L8 ?7 W' z6 n
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];' ^6 J" g3 e$ F0 L& h
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];% Y# ^: ~9 E1 y0 R1 n

2 W  G: A' U& u9 ?& d* V                                pLight->Specular.r = 2.0f;/ T$ ]; R9 O! [1 a
                                pLight->Specular.g = 2.0f;- N7 y& a* n& C+ f1 g8 B6 l
                                pLight->Specular.b = 2.0f;% O3 ?& d' A( n1 r- F
        9 t  }- v7 S: h6 s0 w  ]# j
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];, D1 h6 A; R& L4 |( I+ [; Q" n9 g
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];  ?! b/ ]! d/ X4 Q" {
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
( B+ b# }9 ]- r+ I# N# B        2 [& Q9 i& c5 ^# {$ N6 T$ _, y
                                HookUpdateLight( pLight );
) }1 y, U* c. J# D% ~3 r
3 S; z& S2 ~. n" D                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 z. G5 U) u1 j                " D% P4 s6 R$ P. _* i: N  r
                                pLight->Diffuse.r *= 1.2f;
+ l* B: m; L+ Y! K, s0 [6 E, k' n6 b                                pLight->Diffuse.g *= 1.2f;. v5 V; u/ I( G; h( _
                                pLight->Diffuse.b *= 1.2f;
' n7 F3 M- N. W# I* U9 G: S' u: x2 M: t( n+ [) }
                                pLight->Ambient.r *= 0.8f;
1 E) }# o+ U7 n) e( y$ H$ y1 Z                                pLight->Ambient.g *= 0.8f;" q3 B, `& f5 g  k" J, i) O% d
                                pLight->Ambient.b *= 0.8f;! ?" Z4 T/ l" b. r7 A4 \* `2 Y& C* o) i
        + b' [2 O3 s5 Q) ^2 J
                                memcpy( &m_light, pLight, sizeof( m_light ) );7 W5 u0 r% ^. X7 u5 i' H

% e+ H/ e7 n. M                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
& s, F) f  v  [( v0 h1 J+ t                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
& r! y% V2 R; L( |+ N/ n                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
% [( m  `! w% t( w( p0 Q9 \                                 pLight->Appear( m_pd3dDevice, TRUE );5 n" Q3 p# g" u) |) ]. o2 h
               
' j! D9 w! X# Q% O3 Q                                DWORD dwR, dwG, dwB;0 f* C4 ~% d% {4 g$ v/ D! X& ?, ]' `' d
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
) q7 P$ V* a1 Q0 b) c( T$ }                                dwG = (DWORD)( pLight->Ambient.g * 255 );# i1 R6 G1 m: t, v# ]: S- M1 M
                                dwB = (DWORD)( pLight->Ambient.b * 255 );7 k4 {! [+ ?* F; l( f
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );, \. @* H5 ~7 d% k  C
                        }
/ {/ ]8 c& Z( g  O                }; l3 Y+ s( u5 u
        }
+ p9 L" a9 s$ w) w& Y" H        else
: ]1 w# r8 P9 ]# N  e#endif
! k4 e' r* s( ]/ ~0 y2 t" E" w+ n2 a: p+ Z
        if( m_bIsIndoor )
* u$ e$ f# S* F" Y; B1 u3 a5 C        {
: f8 U" ^' N7 i# q0 L0 [3 M+ L& _4 D                if( pLight )
( r! N8 v2 \( F& e6 P                {                0 ]$ ^8 F8 U$ L, X
                        // à??μ oˉè*
9 J. j# q4 m( E4 ?1 g0 C# _                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;- k" x, w1 C0 x- S2 R6 ?( e( M
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
' t  m7 k2 C) O* s( a/ I                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;5 v  W* M6 {4 H! k
0 ~! M1 V- [% D" A: o
                        // oˉè* ??à? 3 U* v+ B+ `# t+ c7 S7 O
                        pLight->Specular.r = 1.0f;: y( K9 n  A/ {8 m' U  h  s: l' _
                        pLight->Specular.g = 1.0f;
+ }* T9 K( g& P4 F5 m                        pLight->Specular.b = 1.0f;8 c3 O! j3 Q8 w& ~3 n
                        // àü?? oˉè* 4 m1 x3 W" R3 v+ S4 y, t
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
0 [( g. w" U7 I" E! o  i3 c                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
# E; c! L) m3 ^* J) G# \                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;* U9 ?; a+ S& b/ }1 y( i

8 y3 p3 G4 q) X* P6 i2 K: V                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
0 d% c1 Q4 Z$ K6 H, E) Z; O: H                        {
) X6 ]& D& g+ D( G                                pLight->Diffuse.r *= 0.6f;, k4 M' O" n  p0 f2 f& ~
                                pLight->Diffuse.g *= 0.6f;
2 w; W# N5 i, I- t" Q4 p5 y                                pLight->Diffuse.b *= 0.6f;3 B6 C  y. ~0 c. i# p& o9 A8 C7 G
                                pLight->Ambient.r *= 0.7f;7 D/ j0 {! q0 o- B$ r+ J
                                pLight->Ambient.g *= 0.7f;) n. `$ m+ _0 J; g
                                pLight->Ambient.b *= 0.7f;
% \2 d6 i% h; Z                        }
9 C8 Y, N: ^6 i' E+ D
" l  Q/ a- k' H; O4 F1 s- B#if __VER >= 15 // __BS_CHANGING_ENVIR
/ i8 Y. A+ O' p- Q- O9 ~                        if( g_pPlayer )
9 w% v' N$ T9 S! `8 Q& k# x                                HookUpdateLight( pLight );
3 \( ]6 F& T( v1 ?* q- @8 Q8 e#endif
' P- E0 V% `3 h. f( U                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; o! Z' Z8 s1 D1 R: q9 x
9 M# K& x1 a! b2 T6 Y, `  m7 ?/ M                        pLight->Diffuse.r  += 0.1f;" W& M: ^: B, {5 B! k
                        pLight->Diffuse.g  += 0.1f;/ b, r1 M9 T0 R6 p/ y5 e" M/ J
                        pLight->Diffuse.b  += 0.1f;( K; G) ^& p- V# C
                        // oˉè* ??à?
8 K6 m/ [, l! v3 W2 O) T                        pLight->Specular.r = 2.0f;, f& P# R) t8 U9 @) S+ a7 {$ o
                        pLight->Specular.g = 2.0f;) `; {3 J5 N) F! y
                        pLight->Specular.b = 2.0f;+ ]( H7 \, v0 ?$ x+ r2 o
                        // á?oˉ - h! C3 d9 z5 O3 U# E5 U
                        pLight->Ambient.r  *= 0.9f;, }) E9 F+ f$ `% e6 E* s
                        pLight->Ambient.g  *= 0.9f;1 m0 ^+ v0 b. U6 C
                        pLight->Ambient.b  *= 0.9f;
% c* L8 A/ o2 u% [' S9 I0 t4 ?# z+ H; h! G6 J& J
                        memcpy( &m_light, pLight, sizeof( m_light ) );# S: W' u! q+ \/ q0 M2 I. ?' {
                        4 g' U& F' G3 {& a' \/ W$ r
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );0 f$ k8 J; o1 X1 f; @4 i8 h8 g
                        pLight->Appear( m_pd3dDevice, TRUE );
+ p6 D9 l3 K# ^' [        $ v% T7 o$ ?8 Z& [- j' k
                        DWORD dwR, dwG, dwB;' m2 f; w$ Y* n
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
6 [: h  z. R6 l$ C$ ^  l                        dwG = (DWORD)( pLight->Ambient.g * 255 );9 ?+ p7 R: V* o& L, A2 ?2 z  b
                        dwB = (DWORD)( pLight->Ambient.b * 255 );' k# l. b9 c3 L3 U5 Q
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
6 a9 |, P- p" s                }' A2 q3 c, o+ T9 e6 a4 T
        }  M% L. ~, K% o
        else
& E9 B. N9 A; h2 N        {
( e( @8 {, W% J2 O- y                if( pLight )
  k* m7 l9 H0 x/ L/ Y( V                {/ A  \8 E& Z& A8 S+ t  j$ i6 }6 ~
                2 [3 k4 `2 \0 [- w$ _
                        int nHour = 8, nMin = 0;
, ~8 p0 D2 n, _6 H: Q, M/ S" \        #ifdef __CLIENT$ o: g0 j5 e* ~! U- \0 A& ~
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
6 K% L, f! p% u5 K                        nHour = g_GameTimer.m_nHour;
2 \- }: c! C" t" E# \) ?: C                        nMin  = g_GameTimer.m_nMin ;6 _4 K- D' W' h* S+ F1 P8 z( p
        #else
. f/ L% q2 Q- y                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
. Z8 Y) E; C3 e$ j' B                        if( m_nLightType == 1 )9 }# {- H2 P3 Q$ K9 H
                                nHour = m_nLightHour;) o2 @% i  C( y7 s0 i( \/ G- t7 r
        #endif  @4 R) T0 m& S1 |3 K
                        nHour--;  d" Q% C6 x0 K6 E/ ?1 `
                        if( nHour < 0 ) nHour = 0;  ^) \1 F9 W! _( B# l6 J# k
                        if( nHour > 23 ) nHour = 23;
9 y) I) k$ s( Y% A4 K* J- d5 h
7 j. F  J1 Y% k) T; F                        //if( m_bFixedHour )
* h  R- P  _+ c5 y2 T                        //        nHour = m_nFixedHour, nMin = 0;
; }3 |7 l# x3 g, K8 h                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
4 U7 K7 E5 p# w4 g, h- x                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];) u1 f1 y+ @6 F; W: ^- Z
! C, A7 s6 `: ^) \9 [' D5 \- I
                        //m_lightColor = lightColorPrv;2 t# P% W0 @3 j. I; G5 W& g$ |6 }
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
* K3 |- x, b+ U4 J: V                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;) y3 l7 Q. P) J; t$ c1 y, \3 L( i4 Q
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;- r$ v% n) m6 ]# N$ y
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
3 ?& z$ X) o: Y$ V                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;8 H6 q5 N) V! e  e* ]7 h
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;" R3 O; ]8 L0 `' A( n) K* G
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)7 X5 w$ v9 H$ N1 i

+ n) n  x; G: ]2 h                        // à??μ oˉè* 6 o$ R; I) b' m* K+ p9 ]2 z
                        pLight->Diffuse.r  = lightColorPrv.r1;" k& \/ s* i( ^9 A; q2 c8 B* l$ K) B& S
                        pLight->Diffuse.g  = lightColorPrv.g1;
0 ~! k# e( t& u                        pLight->Diffuse.b  = lightColorPrv.b1;9 k# e4 [6 g+ E8 \' s) G7 w0 `" d
                        // oˉè* ??à? 3 g4 F; r& J9 L  f# v$ w
                        pLight->Specular.r = 1.0f;
2 p) ?& h7 [2 b$ R7 n- }                        pLight->Specular.g = 1.0f;( }) l+ z' n1 ]
                        pLight->Specular.b = 1.0f;
8 d4 h, J/ Q3 ~, u3 N7 |3 y& N                        // àü?? oˉè* 5 h0 g8 ^$ {: F" M3 n- G' K
                        pLight->Ambient.r  = lightColorPrv.r2;( a7 ]! o% L* o! X: Z, W
                        pLight->Ambient.g  = lightColorPrv.g2;1 A* e. w; k) J/ x) Z& o( V. v
                        pLight->Ambient.b  = lightColorPrv.b2;8 B% ~7 ^8 m* [5 p8 y
# }! f8 z% [9 o1 F0 i
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.1 a8 }! i+ M; R. z& N" I4 H
                        {6 K6 j  B9 N5 j# K' e
                                pLight->Diffuse.r *= 0.6f;' p) j& ]$ H# p' K& P
                                pLight->Diffuse.g *= 0.6f;
$ T, r% N, `% r7 {1 Z/ ?                                pLight->Diffuse.b *= 0.6f;, i' ]9 O% j: ?/ h  j# d
                                pLight->Ambient.r *= 0.7f;
0 x( h8 N2 R0 I                                pLight->Ambient.g *= 0.7f;" P# U  {0 ~) c" B5 s
                                pLight->Ambient.b *= 0.7f;5 n( J: f& N7 O, e7 ]# X+ v% C4 B
                        }. H' G) f5 ]. q, S6 _: D1 |0 g
                       
" ]! c: L6 Y9 v4 w#if __VER >= 15 // __BS_CHANGING_ENVIR" o4 n; n0 {' F
                        if( g_pPlayer )2 c6 z) r/ v7 M4 M5 Y
                                HookUpdateLight( pLight ); 9 N+ T% l; s8 e4 ]& F
#endif
: x7 m" I7 a; U" j6 ^                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 y$ U+ D9 n! t1 m! m; u/ }' u6 s
$ D0 A+ [( F! h3 {7 q% ?#ifdef __YENV
6 c5 K# W. L) M/ J                        pLight->Diffuse.r  *= 1.1f;; V$ h6 c$ A3 s0 W" x
                        pLight->Diffuse.g  *= 1.1f;$ `3 d0 L& S' K, \3 H1 J0 p
                        pLight->Diffuse.b  *= 1.1f;
+ b/ _8 i6 {) E# ]8 x                        // oˉè* ??à?
. {0 y8 h; u5 t' ^' P; L6 d                        pLight->Specular.r = 2.0f;) B9 A4 w. X* H" [' |/ ~
                        pLight->Specular.g = 2.0f;
9 m3 B# B9 W9 Q6 ?/ O                        pLight->Specular.b = 2.0f;* A# ~! N( L. z
                        // á?oˉ 9 w1 H5 ?6 b( I$ s8 c
                        pLight->Ambient.r  *= 1.0f;! ^: q: s8 B' x
                        pLight->Ambient.g  *= 1.0f;- T# q9 ?: b" A+ N0 o
                        pLight->Ambient.b  *= 1.0f;4 R* u% |- g" `& \
#else //__YENV
: F4 S/ a1 s& W                        pLight->Diffuse.r  *= 1.1f;& [/ S! [9 c( G) f% }
                        pLight->Diffuse.g  *= 1.1f;
1 }9 ]& @1 O+ D                        pLight->Diffuse.b  *= 1.1f;8 d5 G& M) V; j8 K# `) O8 F
                        // oˉè* ??à? # B0 f/ S# S/ c0 A: Z' I9 e+ M
                        pLight->Specular.r = 2.0f;: ]* b% ~( J. e. [4 f& e- u% t( f
                        pLight->Specular.g = 2.0f;
. H# m: u9 O1 ?7 z                        pLight->Specular.b = 2.0f;# n# W6 E( N6 a" v7 |% N6 z1 ?4 ~- b
                        // á?oˉ
% \, F- l( v( a, d" y3 A) S9 U$ `                        pLight->Ambient.r  *= 0.9f;0 Y. {* f% ]1 w. F. M5 ~
                        pLight->Ambient.g  *= 0.9f;4 `1 J4 G( W5 e. i
                        pLight->Ambient.b  *= 0.9f;
9 n7 d  u5 Z+ M+ c9 u5 m3 O8 i+ u* p#endif //__YENV
  L4 K9 H7 J$ `* Q3 }                       
6 S0 q+ d# C1 \* t                        memcpy( &m_light, pLight, sizeof( m_light ) );* r5 @; }: j1 f2 w2 s
                        6 z' E9 T3 P" T) W( ^
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
8 g  M7 n6 M( ?7 I' Q                        D3DXMATRIX  matTemp;
+ o$ E" r* i( A$ A8 s' D                        static const float CONS_VAL = 3.1415926f / 180.f;
' d" S# B. H+ m7 F2 O" n( @" T# U" o+ z, H7 N# F
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);6 \5 d1 q) v: `8 A
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);, T$ z0 x, k8 y
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
& s9 \8 V0 I6 x  ]0 x; ~                        pLight->Appear( m_pd3dDevice, TRUE );! S- z& O, H3 R/ F6 G

6 o3 T( x" S% g. C                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);* `' p4 b  |7 l# r0 c9 x
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
" A+ ~# h1 x  X; L7 |0 |                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, |- u" G+ I* \4 g2 ~4 e' A1 H9 F9 n; j
: u, |6 d4 `* k6 `' `* ?7 y                        DWORD dwR, dwG, dwB;! r( [: E  o$ U& N/ F6 M5 r: l' i4 U
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
- m+ Z6 G' }1 l7 N                        dwG = (DWORD)( pLight->Ambient.g * 255 );
4 e! g* O0 L# s. h                        dwB = (DWORD)( pLight->Ambient.b * 255 );
! o; H5 A0 C# ~" G                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
$ u6 v- P3 i" R* k% e                }
" V" s) _+ \. M8 l1 h        }
. w* M; d4 c: x2 E4 F- t# X: k& T! M% y5 y. u% P
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );6 N7 ?8 f( e$ L3 \3 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) );7 y4 d% Z4 P# Q3 i- [3 L% y/ I
        ::SetLight( bLight );
, W' e% e7 f3 J6 h+ C, l8 _& P! \& o* X4 `+ N! N6 d: b4 w# q$ n
        // ±ao? ?D?í???ó á¤à?
; E6 U( M% ^# t" ]+ d1 X, y        m_pd3dDevice->SetMaterial( &m_baseMaterial );
+ }7 U: f% ]2 S6 e: u5 v        - ^4 p/ V7 E( K* T- @- F0 k
#endif // not WORLDSERVER% N, P! M, I1 x( d
}
; i- v% D# A. R0 a5 T  S并更换
! S0 I: K; R! U6 V# c6 XCode:
$ y. P  d: B* f5 w6 I# S5 x, }8 R__FLYFF_INITPAGE_EXT
0 g$ J: k2 f4 l, `: v定义. l# l% R+ S' w  {+ W. c
/ R/ r6 M" s3 j- w
  p4 L8 f3 N% @0 ?; m

6 }9 l, @2 r3 h: I% @  c+ I+ d& j6 k
现在终于删除我的狗屁加速...0 a, o! ]6 W# b
+ n9 u5 A; T% G# B" A
" }, l" n* m' R% F  A+ X/ U
3 {  S" N6 A$ B* Y& B5 F' `





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