飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
- f+ d+ G1 o, d5 h( V9 @尾翼:9 Y$ e5 i& u  V$ h# [. {* j8 S9 T$ s

- ]  U% w& a8 D/ R% o, U代码:: Z' c" f% z* a7 j! K5 h
CWndAutoFood::CWndAutoFood()
2 `0 o8 Q4 C9 e6 i7 w{
: f: N0 r  `% M. [  }& P        m_pItemElem = NULL;
& Z( ~2 p: C1 H- }1 }        m_pTexture = NULL;
1 Y4 J# {4 O/ T7 J        bStart = FALSE;8 e# f/ d3 W" f  P+ j4 z' H9 K: I) I# c8 H
}9 B0 W% Z7 p( a! }
' U4 f% L; t* L2 Z1 f/ G& ?+ \
CWndAutoFood::~CWndAutoFood()
* Q7 g0 U) n1 K9 \{
! M+ e' k# ~8 O: f        AfxMessageBox( "AutoFood ist gestorben " );
! C2 c( V/ C* f5 [+ `}
& e7 l  C! Z+ E8 `6 T4 cBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )) U8 |! F) q+ v3 W( J5 J" {) P
{5 l; B0 y4 c' ?. a! Q* n
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
- d" x1 O' H) V. X" \}8 M) |8 l* Y1 ?. P1 R& o9 K
7 G0 z/ v& A5 w" m2 k$ r
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )# G3 F6 q9 T! ^) y
{' K( D' p7 R0 t# Y2 [. V$ y& R
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );0 O% ]5 B/ Q0 Z# J0 Y  ]
        CRect rect = pWndCtrl->rect;
" q& E2 R2 }( _5 n        if( rect && rect.PtInRect( point ) )
7 }  L4 X9 F  S+ ?, l/ c7 T        {9 o) ], u: g& B1 a
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );8 g" y6 i$ B6 v/ I; m" i% D
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
5 O0 c/ S2 l* K( V; Q2 w                {
7 E) y8 _  B" y) U/ k" }                        if( m_pItemElem )4 v4 {" }4 p7 ~2 U/ \2 t
                        {4 s8 ], N2 a% c" F5 l6 ]6 o: y
                                m_pItemElem = NULL;$ c2 N) R5 t" k- r
                        }1 R8 C7 \1 g, L
                        m_pItemElem = pItemElem;
+ ?- u" J$ G% V9 L                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
9 E& t9 Y) p2 d: U3 n3 H& N) M                }else{
) s, r$ j1 e6 R. i$ V: r                        SetForbid( TRUE );7 f, d# T5 F, H4 T9 I# u9 a
                }. Y* @  d; _$ q; ?$ x6 H' W2 Z9 i  V
        }else{. j& H- K0 v% R; [$ I  Z0 b5 e
                SetForbid( TRUE );
' j  u3 u" F2 Y" O        }
% U) I. t& g2 F  n+ ^        return TRUE;
. d' d7 o1 [4 a" G/ F" Z}- Y4 X8 L, ]1 k4 H

6 [+ B+ S# M- D7 R- MBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )% [$ p- z( d0 E+ Y2 W# T7 O( j& ^
{
8 h& s4 D& I: {8 f! W        switch( nID )
0 ~  d! ?" V: {1 @& \. [% D; A' w+ X        {8 U3 i+ U# _6 T  f4 h# p
        case WIDC_BUTTON3:) r7 i; u6 O1 p
                {
3 k7 ]3 C7 R1 [, b1 @                        bStart = TRUE;1 z( e8 y! F8 c# J( l, W9 I
                        break;
9 ?2 M% L+ _/ c4 I                }
- N8 a4 o7 ]2 T& n: t        case WIDC_BUTTON4:' `) l4 R+ a' B* b3 `
                {
& n. |6 F5 J  I0 H; @( \/ w                        bStart = FALSE;. r, n8 l. Z6 |7 s. j
                        break;, Y& N! l$ R2 U
                }" d. }) k8 N/ \$ f
        }+ l/ g  ^- {, U- [5 k/ j! }! t* X
        return CWndNeuz::OnChildNotify( message, nID, pLResult );+ b7 Z4 f0 ^9 X$ Z0 d2 u
}        ; e! x5 a2 u# J" j" u: f$ X
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
  K) y9 M+ h* |$ S{
! W0 t  }# {. `, T  e4 J# p* N- R. ?        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
9 o4 \2 K2 ~9 j) Y* e        if( bStart || !m_pItemElem ): F% r1 k+ A$ u, Z/ r3 c( `
        {6 _% p8 X' d4 G2 y: M) j/ q
                pBtn->EnableWindow( FALSE );1 \9 n+ S% \2 T  s  k
        }else
7 p& Y# ~  P# R2 n                pBtn->EnableWindow( TRUE );1 F' N- o& e# M4 R' O; r# Z" e& K
        if( m_pTexture )
# v7 f# Z$ T+ V) C( V: {9 I        {
2 C4 N3 x) e9 ^                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );) a" W! ^! a; [, @
                if( wndCtrl && wndCtrl->rect )& E; J' ]) M6 V
                {) G  f% J& j0 |' w. Z* R' B
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );# S( U% S2 K/ v* g2 Y. }" k
                }
$ y, D5 [& a; M( ^' z( I% t0 [        }
9 W2 a: [* _) O5 e9 i& L}
9 [6 T" l0 A0 }9 S" X) i8 r' Z# g/ h9 n( n
BOOL CWndAutoFood:rocess(). P& k5 i5 G8 \
{6 h# ]6 u) K9 S4 y; k3 P# u7 q
        if( bStart )1 N; f- i5 m% W1 j0 {
        {
( ~8 G4 [/ t" x: C4 w  \! F" |                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
4 Z/ u9 C( H- |9 c: q# G                {
- A7 }) e0 X9 G, A/ `+ c                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )3 e+ s# Y, I; d7 h
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
. o1 T$ L+ h4 j2 J- _9 g* S: s                }else{+ K% \) `* D; ]! ^0 e9 t4 x
                        bStart = FALSE;
1 V$ g0 V3 p! V5 N1 H( T/ H6 x8 ?- o  e7 K                        m_pItemElem = NULL;
: s$ Y( h( g8 S( @                }
6 T. Y! B& u3 X& m        }; \! h  L. d8 |
        return TRUE;7 A6 K! i+ R1 G9 ~5 n" q
}4 d! V& f9 b* t/ i- c
. U, f$ V% f  `$ J( H
登录视频废话:8 f) \, W# N% B0 v0 ]% q0 h+ S
尾翼:
+ f. X, q$ w  t# ~  f" Z* u: M4 X! s: \+ ~) |% w  v4 M3 J$ X
代码:
% T; p( a# c0 u1 F; }/ z# x
# ?0 Y5 h5 \  E  o2 ^8 @4 svoid CWorld::SetLight( BOOL bLight )
& V- @! ~( G0 ~, f2 ddurch
9 ?( `6 U3 Z) s( \0 U3 K2 \- @1 NCode:
, P1 M1 O3 Z$ M, G5 ~( X4 Rvoid CWorld::SetLight( BOOL bLight )
5 P& n$ D* U! L7 G( t8 z- `. Y: w' d+ K{* v: A+ w2 g: y0 O/ J: F
        //ACE("SetLight %d \n", bLight);8 P$ \3 f; h- _* T. Y/ a
        & I% Y- x' Y* v  G! u5 M
#ifndef  __WORLDSERVER
# J. d) v9 c% N: [4 J" g& k- p        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);: A/ ]" A9 e0 o5 p$ B) T( N
        CLight* pLight = NULL;
& f9 P8 H; t4 g4 t6 R5 X2 c) U7 s7 W& n
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );9 b/ K# R9 @/ ^7 m; B7 Z' ]

* J0 s# @* }  S$ t. Y& p! B        pLight = GetLight( "direction" );
( F: ]9 S- x# Q
  K3 X7 w% d( j% v1 q$ ^9 s#if __VER >= 15 // __BS_CHANGING_ENVIR+ a& V6 J7 J, m
        if( g_pPlayer ){" z: `- F3 c# O( D. a* K
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );. T: z2 }  C! K; v8 E5 M; g# x! z
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!) @+ x* U/ \5 c
                {6 D" D" M3 |, t. D: h# T
                        if( pLight )* o# Y( m& B+ d; s: h% v
                        {
1 n; y$ N, c+ _% w                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
* h: A, n. ^! c                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
; B+ G* r( k3 e" l) T                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];* U& G% W  g# ~. \5 j& a' @9 r" A
' {; O' w1 B5 m: C1 Y; q
                                pLight->Specular.r = 2.0f;
% c# C2 a4 J5 K% J# Q1 |                                pLight->Specular.g = 2.0f;
/ @! v* J& Z" w                                pLight->Specular.b = 2.0f;5 A' N" T$ _- |& D5 l
       
% @- u6 j4 x; m- X2 D, C6 D                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];# d, I# I% b4 M5 k; U
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];$ \- X2 \" B9 g0 w8 ~
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
2 E+ }% G+ ^* U# @: V6 s       
& \6 F* B6 Z) L8 c2 M                                HookUpdateLight( pLight ); 5 r- {6 V1 S! f- N9 V6 z: M/ q

( S$ _5 r- h9 f+ F  i3 B% i                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );; N; Y7 {! J6 y: n9 M5 @$ P6 n
               
0 f- M5 |- M2 p, c* X$ i6 H4 c                                pLight->Diffuse.r *= 1.2f;: u, P# n$ W% a2 G' H
                                pLight->Diffuse.g *= 1.2f;
% \6 c# }0 {, N: B& i0 A: B. l% {                                pLight->Diffuse.b *= 1.2f;
% ?1 Y% F3 j* s4 j  e9 t0 j+ d1 e! p) w  V+ s4 ?& t# X6 K% H2 G6 q
                                pLight->Ambient.r *= 0.8f;5 J! i' t9 W! h9 ^4 @
                                pLight->Ambient.g *= 0.8f;" f; C" ~% ?! h1 `$ v
                                pLight->Ambient.b *= 0.8f;
, e6 q$ r! H4 N6 o$ f/ Q        0 l6 f! p+ E6 h1 u$ i2 s3 Q
                                memcpy( &m_light, pLight, sizeof( m_light ) );
4 j3 P2 R5 l0 r  j& z; p0 M+ u8 f$ Z- R# D! b) \0 C
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
; B* C. }& b8 X/ g- u                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
; \% X% L* [0 i1 }6 o& l1 Q5 v' m2 A                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
: z1 i/ F$ [/ C' g' w2 ?+ `/ ?                                 pLight->Appear( m_pd3dDevice, TRUE );1 e3 C" O/ w1 N1 s7 t) [1 X
               
6 v: ]& F. M% g3 M7 x) r                                DWORD dwR, dwG, dwB;/ O8 m6 _8 o& e
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
9 i2 z' Z  H( A2 o6 m: j: U                                dwG = (DWORD)( pLight->Ambient.g * 255 );# X9 {' R; m1 ~% q/ v
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
8 ~+ `! \0 S+ v* q: E/ g                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
! ~3 t% g% q, i" i% N                        }
/ W5 N! L5 C$ {; _                }  N( K! h) i- L  r+ {' A
        }& o! H4 I" k1 u7 ]% z5 h& g/ Q
        else
  _3 X9 z5 a: k- B) ~/ F5 \! V#endif
& \1 P, X& Z3 D. ^; F, [  J% q8 L( O0 T9 N$ p& T; M% u
        if( m_bIsIndoor )
+ `( q; L# e& ^        {; @/ t4 U6 j, D- n, e# C
                if( pLight )
* r1 w5 x0 T" E2 Y& i$ W                {                % T) P3 P0 N/ s* ?4 w/ `2 t; l* u
                        // à??μ oˉè*
# G# G* ]- y! a/ M. A7 }( i                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;0 O/ g9 {* f7 F7 N
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
% k$ m1 Q$ u3 H0 h. u& N: }                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
: s5 X2 ]$ b1 x( V# E" Z
" X$ \! C+ T" z) o5 h1 u) X5 ~                        // oˉè* ??à? 8 V9 Z# R) ]! W0 W' f
                        pLight->Specular.r = 1.0f;4 B( N- y+ ?* q3 \- l
                        pLight->Specular.g = 1.0f;  r7 T$ \9 e4 a' n7 q/ V7 W
                        pLight->Specular.b = 1.0f;# k9 A  A) t; P" L$ Z) b* w1 Q  w
                        // àü?? oˉè* 3 T8 G7 `0 D# r- t" o2 o
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
& i% @4 U- C, ?6 j% M                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;& |, Y1 b- k2 U
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
9 k/ Y1 s: T0 ]
* c7 m. Z# [* M$ w  d. [" Y. ^                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
$ ?5 G. i% U. {  C8 u, `+ Z- }                        {" }  i7 C$ M% Q( q" C, {5 e
                                pLight->Diffuse.r *= 0.6f;
2 {+ U* F  `# T% H, A                                pLight->Diffuse.g *= 0.6f;% W- z( n* D9 {- ~) B3 @
                                pLight->Diffuse.b *= 0.6f;; X- }  o, F: {* @7 z% v' Y3 D$ v. y! p
                                pLight->Ambient.r *= 0.7f;
( U& J) V+ j1 B9 }& s                                pLight->Ambient.g *= 0.7f;
7 w" M  y5 f$ E/ K1 ~% X! Z9 f- Q8 Z' H                                pLight->Ambient.b *= 0.7f;
4 s- z9 A7 S0 w9 h' o! ~                        }$ Y6 @  B% X7 Z7 u& g

0 A4 L& s# E! x#if __VER >= 15 // __BS_CHANGING_ENVIR
' P0 L" j! a3 O$ u' t9 k                        if( g_pPlayer )
4 h( b) e# f/ P1 |. V5 Q$ k1 p                                HookUpdateLight( pLight );
6 t6 r# D0 O% l#endif8 }  I$ J1 u5 Z( w/ V/ q
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );2 {0 h2 C" t( }" W

2 a; n8 M) F7 Q" |* k$ S: L                        pLight->Diffuse.r  += 0.1f;9 b# @/ N: F  X7 {( z8 i
                        pLight->Diffuse.g  += 0.1f;& V) n  g$ k. S
                        pLight->Diffuse.b  += 0.1f;
' |  a) u( J0 d5 p) W3 w                        // oˉè* ??à?
8 `( e: ?4 q6 F3 m3 `( k: b! w, r                        pLight->Specular.r = 2.0f;
) [' d0 J7 Z& ]5 [& i! ]4 B/ P                        pLight->Specular.g = 2.0f;
) Q- T( Q4 X( F# v, z                        pLight->Specular.b = 2.0f;
6 {$ M" ~. Q4 B! Q                        // á?oˉ 2 }: \0 W: x0 w! V' y" e* F3 l
                        pLight->Ambient.r  *= 0.9f;
& [5 ~) S1 ]3 X3 r                        pLight->Ambient.g  *= 0.9f;
6 W: \  ?" f- W8 W                        pLight->Ambient.b  *= 0.9f;
  {3 r" [& [- \# z0 g! @
$ b( G) ?2 ]2 ]. i( S                        memcpy( &m_light, pLight, sizeof( m_light ) );4 U2 _5 c) v$ f/ j  [, p5 {
                        - ^8 H4 Q* z9 B) f3 ^9 g! Q* U
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );; {' M3 ?4 N" l& \8 e9 e! e% p
                        pLight->Appear( m_pd3dDevice, TRUE );
  B* B4 y  f2 M7 y2 a2 W3 R" _       
* A# x: o# r5 |3 F' i- b( u1 i7 I                        DWORD dwR, dwG, dwB;1 `/ e; p% p: }( `% a5 Z1 g; K* T
                        dwR = (DWORD)( pLight->Ambient.r * 255 );. Z: }5 J% E  l. N/ M# T  \( a3 t
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
5 j- l5 ?6 C9 j: d                        dwB = (DWORD)( pLight->Ambient.b * 255 );
7 F$ [7 ]& m: T. @( v& E% _& q& j! _                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );1 b4 G1 \. _- |, G% ~# Z2 l* n
                }* U. d! g/ c; U
        }& @( V0 h+ _, Y# v2 f7 E
        else. a* d0 }: c5 t
        {
" |+ \* R7 M+ q2 {/ Y                if( pLight ); P2 n3 F7 Q+ k9 a* k" W1 p# B
                {  M' c* C6 S9 `9 _' u9 h7 _) n
               
) b$ I% y/ y" s                        int nHour = 8, nMin = 0;
5 Z1 i0 l/ L% l) |4 ~2 W" n5 B4 N        #ifdef __CLIENT
( l4 ^! E" N9 ^6 ]. C, i                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
- w! d8 f: f0 p% `8 ?8 I                        nHour = g_GameTimer.m_nHour;
7 F( D3 _7 u1 R6 i0 u/ s  P4 r                        nMin  = g_GameTimer.m_nMin ;: Z* o2 U4 y9 C2 m
        #else
3 b" F8 I6 Y/ k6 w                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
8 d# h$ D/ F' d. j9 U: s: i                        if( m_nLightType == 1 )
4 I7 G& h8 G; F* ~/ I: E8 [% [                                nHour = m_nLightHour;* a3 i8 o; X8 A6 p2 E( J
        #endif
8 |8 M& ~" w, g' n1 H5 i1 _" U% O                        nHour--;* |* ]* X: ~9 ?  L
                        if( nHour < 0 ) nHour = 0;
. Y8 W2 G# O7 T+ W5 d; K0 j                        if( nHour > 23 ) nHour = 23;
. t$ M4 U. P; h2 n4 G
8 G# w8 P6 {- p( D                        //if( m_bFixedHour ); R4 h# V8 f/ w: G
                        //        nHour = m_nFixedHour, nMin = 0;% j3 W6 T4 ^: i% Y) P
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
8 {# [4 F' L, O! ~0 O  k                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
( w# O) S3 w# l0 H8 d; l( v* ?
# p# K2 L" I6 i+ ]- I0 t2 J- ~                        //m_lightColor = lightColorPrv;
3 G/ e/ M: R( V; G. {+ W                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
3 ^+ S+ f8 ?( K! t" I. o                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
+ ^2 V4 G& D+ P& w3 _7 y7 t                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
' A% b; K1 j/ ?( O' f7 L                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;: i' u! {- {- o( ?* l% C; r$ C. z
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
/ @+ n  M; q7 c$ [! u+ C9 D                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
& l* `9 i& ?# C* e/ u3 ]                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol), |6 d! `  Q" z2 l
& F# {4 n+ F( e+ m$ r, u" V
                        // à??μ oˉè*
) Z, s2 e) V, E* Z" h4 v                        pLight->Diffuse.r  = lightColorPrv.r1;
+ t  Y, I! G5 |$ @7 e                        pLight->Diffuse.g  = lightColorPrv.g1;
+ ^1 M* u2 a$ b7 O                        pLight->Diffuse.b  = lightColorPrv.b1;
$ ]' _' N) U3 H8 J$ S8 w$ s                        // oˉè* ??à? , g# {$ ?  A6 A- q* g2 B6 ~. s
                        pLight->Specular.r = 1.0f;
; F! o+ L* f5 I- }, [                        pLight->Specular.g = 1.0f;: N- U# A0 u6 G2 _( t  l; L* R
                        pLight->Specular.b = 1.0f;4 L* e. F2 K- U6 p+ U. Y
                        // àü?? oˉè*
% c8 [; c. G4 n  q0 J                        pLight->Ambient.r  = lightColorPrv.r2;
+ G+ n6 W! U( O; Y) y( p8 }# w                        pLight->Ambient.g  = lightColorPrv.g2;
' B8 |8 v( V' o* v1 ^: j5 w5 z3 o                        pLight->Ambient.b  = lightColorPrv.b2;
# R$ E- h2 G* c! x* V2 a
3 `6 {0 G8 S' j0 n, Z# @, a7 A1 @                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
' [+ q5 m- I5 M7 t' ]  d5 }                        {5 O1 w6 V4 h, W0 G* ^3 `" w
                                pLight->Diffuse.r *= 0.6f;
. y% x! O1 y( q& ^3 Q1 m6 d                                pLight->Diffuse.g *= 0.6f;0 L" V* Q/ U/ M) n0 P8 O
                                pLight->Diffuse.b *= 0.6f;
$ V, x7 r4 J$ n7 v! G4 @: i                                pLight->Ambient.r *= 0.7f;
8 ]$ I( _3 d/ v                                pLight->Ambient.g *= 0.7f;( a4 y4 g8 ~' V9 K% q5 _! C
                                pLight->Ambient.b *= 0.7f;
7 J1 b. }9 D' l                        }
2 n; i  v+ K2 y5 Q2 Z3 P" q" [: P' ^                       
9 c* z& @9 C" a" Z3 r7 Z#if __VER >= 15 // __BS_CHANGING_ENVIR# {0 [' l% Q# o  a: m0 P
                        if( g_pPlayer )
5 E- k) X' c+ W) M) u) J6 ?                                HookUpdateLight( pLight );
" D' }3 W3 j0 b/ W& w4 l5 i# `#endif
' q& }+ E9 O7 d2 x                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );$ b8 ]; L; _- S1 ?1 W
5 v6 ?, g5 |3 z! g# }
#ifdef __YENV8 X* D. s* N, n* f: M
                        pLight->Diffuse.r  *= 1.1f;* \9 R5 Q8 l/ a* d' N) n2 P& b2 X
                        pLight->Diffuse.g  *= 1.1f;
" b' ^5 a2 e0 f' O) J6 a( U                        pLight->Diffuse.b  *= 1.1f;0 c0 M( ], C8 a5 f% r8 Z
                        // oˉè* ??à? 9 u+ E: a6 p4 f2 n' a3 e. n- B
                        pLight->Specular.r = 2.0f;! I/ o- j! C! S9 U$ y6 J$ n
                        pLight->Specular.g = 2.0f;
' S; X, y) A/ B. ~+ K8 Q8 e  n+ a' n                        pLight->Specular.b = 2.0f;
3 f) `' X8 \5 [# L9 M                        // á?oˉ
2 S6 c9 b4 `8 z% v                        pLight->Ambient.r  *= 1.0f;/ v  B& q. n# L/ ]. H7 r8 q
                        pLight->Ambient.g  *= 1.0f;; k- r/ g) @! F* |3 b
                        pLight->Ambient.b  *= 1.0f;$ V# a3 T8 S+ ^! O
#else //__YENV
& R8 }5 P0 R3 s: h6 {4 H                        pLight->Diffuse.r  *= 1.1f;
+ f" f, r2 Y1 U. F: V3 O4 t9 D                        pLight->Diffuse.g  *= 1.1f;
. s+ k0 D% m0 U* k0 N# m                        pLight->Diffuse.b  *= 1.1f;- @! x' p: M5 Y5 e
                        // oˉè* ??à?
5 z* C/ G: _+ m                        pLight->Specular.r = 2.0f;- ^# X; k# k+ U
                        pLight->Specular.g = 2.0f;9 H2 T" R/ t6 `- m+ F2 n* K
                        pLight->Specular.b = 2.0f;3 z# l8 ]; i+ ?
                        // á?oˉ 7 @6 S, ^1 h7 w3 Q, v
                        pLight->Ambient.r  *= 0.9f;
3 [8 T( F( ~3 @/ z! |0 |9 z                        pLight->Ambient.g  *= 0.9f;$ ^- G9 e  _$ |% j  Z& [
                        pLight->Ambient.b  *= 0.9f;3 j6 I0 j. X9 m8 z; l
#endif //__YENV ; ?( v9 o1 i, H3 P4 O& c5 A" B, {
                        + j- ~% [: I5 @- E: v
                        memcpy( &m_light, pLight, sizeof( m_light ) );4 Y  n" ?) o' v- l1 \& \' y
                       
7 ]- t. H5 Z6 U8 a1 |9 K5 Y0 P, x                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
$ C2 j. G% _' a0 q                        D3DXMATRIX  matTemp;; `$ }; L' c* ~4 T! Z$ @
                        static const float CONS_VAL = 3.1415926f / 180.f;
/ Q4 F' J. i9 L3 \3 i
/ u/ f* x- U' K$ E                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
$ v; J% ^- d+ p# ?  j+ Y* k                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
: m7 g8 V+ h2 |! I+ I( r                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
2 k( F# @% v* l! J/ y, @: o                        pLight->Appear( m_pd3dDevice, TRUE );
& @) N# b7 m+ E, j6 e# g6 L! I# y6 w: Z
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);/ {9 Z8 e2 l2 R
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));  `$ F! N# R$ \' Y; t& j
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! s1 l) H6 z* m; J# }3 ~
( A2 b/ Q% A2 A. \5 Y: {% @- q' f/ A                        DWORD dwR, dwG, dwB;
! p8 v  ]0 E9 L0 _, o0 q                        dwR = (DWORD)( pLight->Ambient.r * 255 );
5 }( x6 o2 N+ d7 f                        dwG = (DWORD)( pLight->Ambient.g * 255 );
7 I4 E4 {% T2 I                        dwB = (DWORD)( pLight->Ambient.b * 255 );
/ y6 R' C: M# Y2 T) ^* D. X6 J" l                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
% z0 h3 Z% I+ h; w+ W! S3 m                }( d: ^. {  m7 S2 |. a3 C
        }
5 m* a0 j, t0 ~* t& g  S8 [
) d  I5 q3 W' z; `# ~        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );& K7 o& y" r5 p) j9 Q. M0 P8 u
        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) );
+ Y( ]6 J/ A+ t( T# F: V& f* E; E2 Q        ::SetLight( bLight );
9 M0 x; Y$ y# D' H2 P" g
' I& _8 H# m, d, k8 R        // ±ao? ?D?í???ó á¤à?
; o- Q, \0 ]1 L- ~        m_pd3dDevice->SetMaterial( &m_baseMaterial );
. }8 m; m/ H4 P# O  j3 H6 w8 x        6 S- {* a" K) v0 k' w0 N
#endif // not WORLDSERVER7 x7 I) o  e& Y1 t
}* E! i2 K0 q3 @; u6 _7 p& V5 c
并更换2 g4 u- N$ |# u4 d5 F) z
Code:
3 z( s8 R* I6 {__FLYFF_INITPAGE_EXT. B  S) M- a0 Z- G( C  U
定义
! J( d$ u& b9 |" h' d0 L( y, g' }" B9 Y( A3 U
2 h- J' s0 C* r( R
# Q4 ~& C9 U, J+ M, G. v' M
3 S. `" k1 X" z4 Z4 @* G
现在终于删除我的狗屁加速...
2 I# u& W& T9 d5 u, P+ v
( |6 T6 D$ o6 v4 j* M$ E0 P. j9 k7 @6 v0 e- i( J
4 b5 K6 Y$ I7 n1 {





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