飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:. ]: @8 H" o: l& m+ ~
尾翼:
3 s4 g! Z3 d+ J0 S8 ]* R
( P. O" i% I+ N代码:
+ O7 _* ^- @/ A' lCWndAutoFood::CWndAutoFood()9 z5 Y% J+ T8 j  z$ H8 a
{
! o. W1 q3 B  n' U- {  R& t1 l        m_pItemElem = NULL;
5 H' t& O3 B; I& Y8 ?- a; c" J        m_pTexture = NULL;
  V( S1 v; m8 @) y2 @        bStart = FALSE;
1 ?2 I( b; p+ \) |9 f1 ?* A}
. }5 y/ C7 E2 z8 V- {7 U$ P0 I4 ]3 d. F# i% H
CWndAutoFood::~CWndAutoFood()
' {" _( c) r% p  f0 I5 y. k1 f{
. I* p4 @* o/ k) B        AfxMessageBox( "AutoFood ist gestorben " );
( L2 ?) f6 n. ~7 q0 H  ~) c" M}& U3 n8 x+ A! W1 H2 t; V- k
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )# R  Z0 I: V4 N- a( q
{/ y- I$ x( s0 x! p" U( @
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
6 y/ {9 H4 ^# Y% Z}! y* e4 a0 Q% e- R" T6 W# ?1 B% m2 z
4 p5 G% f/ `! s- t! Y
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point ). j4 N2 @3 Y2 a4 g+ w- r9 W
{
  u; k+ a1 Z, Q" F- _3 J" D, I        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );, q1 U/ C& t- N/ g+ G
        CRect rect = pWndCtrl->rect;3 V& _. a3 R/ h$ O6 ]* s
        if( rect && rect.PtInRect( point ) )
; A+ X) y8 X6 W, g8 _7 n& p        {' I2 a# V. c0 r) A
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );  M. n9 u& ]( K  y* ?+ P* y, U
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 k$ ?# R7 U# \7 U4 m2 P                {; ]+ v0 N; h" B
                        if( m_pItemElem )) Q3 P6 a8 ^4 @+ M0 m
                        {
! m% ~9 `# G8 H" _                                m_pItemElem = NULL;6 \' X2 d0 m8 h; ?9 g
                        }
) V9 B$ U9 f" @# n0 t: x                        m_pItemElem = pItemElem;
! b/ O- [; T2 A- f( U6 h                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );  G3 s$ O; m, p/ b
                }else{
9 b" @) n  l, G& L                        SetForbid( TRUE );
3 n& k) N: [1 ], _9 w                }. h$ U' i  P. P9 g% ~2 J& x4 x3 E: ?
        }else{( K3 w; S! _/ D# U5 K
                SetForbid( TRUE );& j5 O0 [% ~$ G: R' ?" Y' E; B
        }
) ?9 e6 `6 E8 N1 B! f, [        return TRUE;
$ z) W2 N( }. k9 ]9 d+ n}* E5 |4 D# _* o4 e0 u$ R

- }& I, ?8 v* z& F) s- LBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
5 [9 v# F3 Z% ]/ @* \% O; d! x{
5 c+ k8 D8 W8 r" s        switch( nID )
! n! }+ J3 B( ^; ^        {
4 Y& Y- t8 v' q) f& \        case WIDC_BUTTON3:
% C- h8 p; _3 [( E0 ?                {6 n/ i- a" m$ g& p5 \# v
                        bStart = TRUE;
" z' `1 v+ V( P; \& z6 I                        break;
, i/ M0 D8 v$ `: [. b: W2 k1 T                }
. y/ |" \, l5 u7 \7 z- P# r/ `1 ?        case WIDC_BUTTON4:3 a4 `. S3 ?9 F$ g3 A7 \9 O
                {
& @! t4 e7 w% C% }6 Z                        bStart = FALSE;4 x  X5 K( {( _5 u% n/ O7 q, i
                        break;
0 d  E7 k" h4 |5 y0 c; A- ]                }
/ Y- P4 D, r8 w8 [7 g        }- j) Q  N. z4 v* K. P. p' ?
        return CWndNeuz::OnChildNotify( message, nID, pLResult );2 z5 n, ~. X3 \/ c& U" l( o, p$ O! d
}        + @/ X' ]6 u2 o9 L8 m/ E
void CWndAutoFood::OnDraw( C2DRender* p2DRender )/ d6 C# w) O, m. x0 d
{( i- M$ `7 j) d9 ^1 R1 U
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
4 Q" Y- T2 ~3 W: b. w( b        if( bStart || !m_pItemElem )+ q, f* z7 V5 S/ Q
        {
! H5 D( r' ]% D+ Y( M                pBtn->EnableWindow( FALSE );& P% v# D* {0 S; w2 _
        }else
  m) C9 q& e# i                pBtn->EnableWindow( TRUE );
6 K0 Q: k' X3 |% V) [        if( m_pTexture )5 L9 ~5 \5 @4 r( o- z- D
        {4 k' E, G! `- v6 B; V7 W
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );3 I: v6 w$ s( `7 q$ L
                if( wndCtrl && wndCtrl->rect )
. n  t, Q: _0 _9 Q+ j                {
3 L0 F; X- E$ T5 b6 f/ m# [- }7 p                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );/ \+ d% J& H0 r5 r9 o( T
                }
  y; R+ X9 y5 o* i        }
/ _9 `( V% ]# V1 k7 H/ a}
: {4 \1 J! u# `; g5 j4 p4 H& ^' r3 o2 @8 t$ D! ~; g
BOOL CWndAutoFood:rocess()
6 C7 g" S% o' j" S- c6 \{
  L( ~: S0 A' ^        if( bStart )
, r4 c3 Y  P; j# i, l        {
) l! U% M- D" `( D! _                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
  _5 E6 J" @: p. ^3 E8 [                {
$ g' t0 S" c( Q! |0 s5 h! `' k; }                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
* L/ l+ `3 l( S( K5 @                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
+ y+ E2 t8 {* |3 e5 O; ^# B                }else{
5 T8 w9 P0 I( i+ \1 a                        bStart = FALSE;
6 m. c) _7 x0 p! ?) r                        m_pItemElem = NULL;( ]/ D* T% q& H9 l
                }( D" N/ a* J# g3 H$ C" _
        }
% B+ {5 ?4 k& n6 r1 }6 ^  A        return TRUE;
8 X! h+ C% ~! Y# P, p" w) O}
& S! K4 |4 T5 O1 U9 o
) {* ?+ Q& E4 G& i! r7 W% c8 h登录视频废话:! p" ?3 H& y: E$ C  [; z4 q: B: ~
尾翼:
- E9 I" Y5 v. @7 g0 \- r; C" T9 X& {# P4 e$ U
代码:6 p2 A6 j; L3 f. F. }
( w4 w' ^$ U2 A/ ^! U1 V6 z+ S
void CWorld::SetLight( BOOL bLight )
: o" `% j( T) E; f& B* kdurch* h  @& T7 G3 ^" u# g" q9 a+ e
Code:
# u/ q5 U( S4 z0 N/ F, e6 n2 ~void CWorld::SetLight( BOOL bLight )
# F% V4 S6 Z1 P1 q8 ^  m{
" R/ g: o' w) `& \        //ACE("SetLight %d \n", bLight);
( j4 \% A  h% f        - E- O; t+ v3 _6 s& N
#ifndef  __WORLDSERVER
, J+ z$ m& Q* o  h6 O$ I        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);  V9 I7 c+ \& ~. G" N4 `
        CLight* pLight = NULL;7 l- i3 N$ N. y0 ?# I( N0 A
; o2 ?! a! o( ?) h2 y
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );# O0 ^' b3 r9 R9 t2 m* \, I

; w$ Y5 K. `% ~0 [        pLight = GetLight( "direction" );* s( u: b* r7 @# S( _
: l' P+ d6 J+ S1 c2 d5 B
#if __VER >= 15 // __BS_CHANGING_ENVIR$ r4 n  m5 c- V; J2 w5 E
        if( g_pPlayer ){
  B& \% d" ]! k3 b9 \                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );6 y9 |. t3 q! n/ O' D. N
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!/ A) {3 A0 W" S1 h
                {
- h- T: e3 F5 I( N                        if( pLight )" t$ j& i; u% I; p+ E# s# c
                        {6 q. ^: N- Y9 z2 _$ w: b, Y
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];/ b0 Z0 z5 i- A( J$ f! Z
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
/ N. w6 J  G4 ~. I; t                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];: a/ s' t. `- N( H# E

; [& y# S8 g$ q/ ?; B1 B; ^0 I                                pLight->Specular.r = 2.0f;
( ?" |( A( b" w: I( M2 R5 y0 W                                pLight->Specular.g = 2.0f;
$ U1 }& o3 h8 O3 h, w  O                                pLight->Specular.b = 2.0f;' o0 I& B: Q- V, }) f) L/ e
       
% y* F8 K- ~" x                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];- C( k, {" R( F: P
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
: l' X3 a8 B5 ~, k0 |1 f4 ~' }$ ?2 f                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
/ ~# n4 @/ F* S        5 {  T# d3 u) t* R' i
                                HookUpdateLight( pLight ); * q4 e7 I. u! J$ t/ Y; Y- }

/ J  A$ ^4 [6 ^3 J3 S* K                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# f3 L, v; i. `7 X; \6 [* J1 J                - T3 N) n& o4 v/ `, p  F
                                pLight->Diffuse.r *= 1.2f;
- g$ K8 _8 t9 Q2 O% g                                pLight->Diffuse.g *= 1.2f;
9 Z# r2 v  k$ ^  C7 j  t& `                                pLight->Diffuse.b *= 1.2f;
- [* ^4 ?9 y' s
8 W- ?% `- H1 J: M1 O                                pLight->Ambient.r *= 0.8f;
) ?- b% I! U( F' {, r                                pLight->Ambient.g *= 0.8f;0 W% H  D: _& C$ ^2 [" I
                                pLight->Ambient.b *= 0.8f;
! I3 N( I: i1 T/ K8 L        : \; p" ?2 Q3 C' _2 _
                                memcpy( &m_light, pLight, sizeof( m_light ) );
. T8 B3 U9 p7 V7 f: e7 |! R9 T2 z: V; Z( t( _/ k6 ?
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);- d, }7 m4 z+ w2 k, S9 u
                                D3DXVec3Normalize(&(vecSun),&(vecSun));3 L/ i/ H3 |/ v" n9 ?
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
" D3 B9 E, \) P: q                                 pLight->Appear( m_pd3dDevice, TRUE );
, A2 K% Q) H% i( x- J1 G7 b$ z, |$ h               
% m3 K: s% i. c" J1 {) I% K                                DWORD dwR, dwG, dwB;
- [* u8 N: I2 G" h5 `+ o% P                                dwR = (DWORD)( pLight->Ambient.r * 255 );" }0 M# ]7 @7 n' N+ r9 n+ w
                                dwG = (DWORD)( pLight->Ambient.g * 255 );
7 I3 m, F  W9 I: x' ~3 H' @+ n; y                                dwB = (DWORD)( pLight->Ambient.b * 255 );- Y$ B  k% P0 T# y
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );0 G7 S3 t1 `9 F7 l$ R1 L& u
                        }
  c; h* R: G4 W( }# f                }. Z+ U% |% @/ W, \. t
        }
  u8 H( q; @# e4 e        else1 h% E* D! q7 |
#endif
% {) A# ?% u) h: @0 M- J0 e/ V5 E
        if( m_bIsIndoor )' W  G" f0 S4 a# Q
        {
' h7 K! h1 _! |9 _( ^                if( pLight )+ N9 z! f, i/ F* m8 {1 k+ q
                {               
* k* _& _/ g# \3 N! c' D  J                        // à??μ oˉè*
5 ]7 k% \, b9 O                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
; T: I2 E6 F( }) C" D                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;* H* V" I( F, s1 I" V1 ~1 [- n
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
. F( t, f  P  G/ K$ d0 P
9 L+ }4 S) P- p6 }+ G6 z( k7 \                        // oˉè* ??à?
" o2 S- r3 B; Y7 j# U                        pLight->Specular.r = 1.0f;
- r: \" N2 N4 C4 p* c                        pLight->Specular.g = 1.0f;/ P' Z3 I2 C/ t6 E
                        pLight->Specular.b = 1.0f;1 ~" T( d' s0 @* H3 C
                        // àü?? oˉè*
- r( f# c8 G/ L: F8 o# v                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
9 A7 ^+ ^, J7 P4 c3 f                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
# N& f9 Y7 \$ O$ U                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
- z5 E3 @3 I$ @+ V( x2 [4 F7 l
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
( Y& u# X! x* J, Z! g                        {9 {. _1 f, f2 H6 p/ ?
                                pLight->Diffuse.r *= 0.6f;
8 j2 Z& X& ~7 Q9 Q! W% z# x                                pLight->Diffuse.g *= 0.6f;3 }% c# v0 ]2 Z
                                pLight->Diffuse.b *= 0.6f;
; `* L& J- q1 v0 F) [  o' w4 H* w                                pLight->Ambient.r *= 0.7f;. w8 J7 D0 ~: m7 d
                                pLight->Ambient.g *= 0.7f;# Q+ N1 ^1 N' M  E$ F
                                pLight->Ambient.b *= 0.7f;% n6 t1 d6 a, c
                        }
' ^; s! e% r2 A0 w) ~5 ^+ m' U) E) d1 p
#if __VER >= 15 // __BS_CHANGING_ENVIR
8 d3 S5 O5 D/ n2 q                        if( g_pPlayer )
/ ~3 F# `1 y, w2 x9 @& |0 P                                HookUpdateLight( pLight );
. g6 D( k& ^+ z- Z* A#endif6 I8 [! I4 N3 j6 w3 f( N
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; k( ~) Q! s+ v7 Y: r
& B1 F8 c1 z% Y0 d1 Z9 Y                        pLight->Diffuse.r  += 0.1f;
' J4 W3 O. g3 y0 E; r) \0 _                        pLight->Diffuse.g  += 0.1f;1 n) D% ^6 a" N6 p
                        pLight->Diffuse.b  += 0.1f;
% X0 ^  r( b/ Q- G$ w1 D$ h8 @                        // oˉè* ??à?
# x  }: @+ e! ~1 z0 ?6 [: [                        pLight->Specular.r = 2.0f;
# p8 l) s# [; m9 k( p6 S$ M                        pLight->Specular.g = 2.0f;8 h  {7 [+ `, `# A1 \+ F
                        pLight->Specular.b = 2.0f;
9 ~8 i$ i# U8 M1 L# h0 i                        // á?oˉ
2 G7 U5 b2 e: A* A6 j0 E  F8 @# x                        pLight->Ambient.r  *= 0.9f;
  T8 R9 q8 e/ m. M0 N$ R                        pLight->Ambient.g  *= 0.9f;# d4 \$ K! @& k7 f* w7 a
                        pLight->Ambient.b  *= 0.9f;
4 v: C0 Y% o# `; m1 i+ o& E2 q) R7 @4 R3 f
                        memcpy( &m_light, pLight, sizeof( m_light ) );
8 {8 y" }4 Q$ }  `+ p) \, Z( D                       
' ~7 n! k' T* G( T5 d, J, Y                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );  _* b/ k4 e1 I3 Y8 R
                        pLight->Appear( m_pd3dDevice, TRUE );
- D7 U: O  \" f1 ?* C' L        + c$ C- p# S1 T. w9 `; G
                        DWORD dwR, dwG, dwB;
7 o5 Z3 I" w( M) p; N                        dwR = (DWORD)( pLight->Ambient.r * 255 );
  t) z+ e7 H. b                        dwG = (DWORD)( pLight->Ambient.g * 255 );2 z! Y* K1 U' G
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
2 \" ^/ v2 t1 b/ B# D' l8 Z                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );0 C2 l$ X7 t3 I* A( j
                }( I4 i) c8 m6 o$ j
        }
6 K; q  R7 p0 E) `        else4 _( M  _! r$ w% \; C+ [
        {3 L$ H1 ?4 P' x& ?5 r" N; }$ V/ r& J
                if( pLight ): W' a3 M; s  [& z5 z, M% l
                {0 }; }8 t8 r: a6 A% R" }
                : H; d2 E6 F4 Y. B! K# h' G, d
                        int nHour = 8, nMin = 0;
/ E! D+ q1 m+ b1 j1 ]        #ifdef __CLIENT7 C# O2 i2 S, a' a
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. + R( D. j/ ]2 O0 B. }' w
                        nHour = g_GameTimer.m_nHour;  G9 y, Z  P4 \, y' H$ x) k
                        nMin  = g_GameTimer.m_nMin ;! Z: Z, H0 }( H* Q% v) n8 S. a
        #else
  m. ^8 K, T$ }; b9 f                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
' V5 u+ M0 g" B" I; a* {# M# J/ W                        if( m_nLightType == 1 )5 L! t6 F4 S" f4 j
                                nHour = m_nLightHour;
+ q* f$ D. i* L% b! o2 p" b        #endif
, e# H, M7 K, R1 D0 U6 G6 x$ n                        nHour--;
, h, [6 J  X: `7 F                        if( nHour < 0 ) nHour = 0;
9 |2 n$ M( P  A& E. T  T7 l9 r2 o                        if( nHour > 23 ) nHour = 23;& s: o; j# ~1 }. R6 B8 J

7 c/ p! M& I+ r: Y- `                        //if( m_bFixedHour )# S* \% b8 g; o1 F% U
                        //        nHour = m_nFixedHour, nMin = 0;6 V" \6 G" ?8 j& z, |: P  O* ^0 h' w
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];) Y4 |/ e2 J& ?! X: Q
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
( o" |" j* o: J; x7 t8 Q; a  T! w2 }0 b0 F9 z5 S
                        //m_lightColor = lightColorPrv;+ _% {: K5 p; I
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;* z; _2 G* b( f* q; M
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
  Y. n7 w' c5 e                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;( }% ?( D1 A# }# ]! Z
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;$ P; u7 J: Z: [! {4 C( `3 p
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;1 k+ Q5 ^8 i+ n( w6 y
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
3 `: u& @& y/ u  I- ]1 [                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
# w# A! x( }# }8 w' I! t$ Y$ k, e1 l/ a# ^! N7 A
                        // à??μ oˉè* & J+ h* o5 Z: Z9 g) a' \: w
                        pLight->Diffuse.r  = lightColorPrv.r1;
* W! l: j0 q& a( C/ }+ f6 m1 S3 i                        pLight->Diffuse.g  = lightColorPrv.g1;) o  o. \3 d! p8 ]# T/ |' I
                        pLight->Diffuse.b  = lightColorPrv.b1;+ ^* x3 L% |9 \/ S  ?
                        // oˉè* ??à?
3 U1 b' c1 ]4 _% }$ J                        pLight->Specular.r = 1.0f;
# |; }1 c3 f( l& ~                        pLight->Specular.g = 1.0f;
+ U& Y6 v2 v3 Z0 b" R1 ^8 [                        pLight->Specular.b = 1.0f;
- q1 M7 R5 q+ Y                        // àü?? oˉè*
# V* y2 o* Q" S8 p) {$ L0 h                        pLight->Ambient.r  = lightColorPrv.r2;+ F1 V+ P1 c3 C; _2 b/ V8 i7 S
                        pLight->Ambient.g  = lightColorPrv.g2;) ^& J# l  y4 i. a
                        pLight->Ambient.b  = lightColorPrv.b2;% k1 Y2 J; x: ^1 K

+ M! j' X. m, e0 T# f7 T' i% u                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.4 R% ?5 q# s9 e; C2 B
                        {
; _. `/ ~: I2 r! s                                pLight->Diffuse.r *= 0.6f;
: a: ]. Z3 S! a                                pLight->Diffuse.g *= 0.6f;
8 ~( i. }4 G3 w) ]) C                                pLight->Diffuse.b *= 0.6f;
! |9 }' _$ D- F. T& C% ^7 i1 Q                                pLight->Ambient.r *= 0.7f;) \% E0 p: l3 r; A. f
                                pLight->Ambient.g *= 0.7f;( ^6 W) _% G6 Z+ |) Q$ b
                                pLight->Ambient.b *= 0.7f;; [! S* a1 k* P" i  S
                        }
6 D8 J% S- v, x& y, _                          a% K; I6 Q" [' Y& O) g
#if __VER >= 15 // __BS_CHANGING_ENVIR* `% a8 a; l2 k8 o6 {
                        if( g_pPlayer )
/ n  T: u: f/ Y9 ]! I6 w+ n                                HookUpdateLight( pLight );
9 O4 j9 Y0 e2 V# M3 k! \- e5 Y#endif
0 H" t9 h3 T" _( M                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );. T: V& \$ t# c+ q1 N( N
8 ?( m2 E4 ^. d! J6 f
#ifdef __YENV+ n) g, D0 f2 T) H
                        pLight->Diffuse.r  *= 1.1f;
0 @# {, ?4 X! S: G. v/ ]                        pLight->Diffuse.g  *= 1.1f;8 U; Y2 P( B; V) H& x. |- z" B# D
                        pLight->Diffuse.b  *= 1.1f;+ E$ |+ F& l. i' [, I
                        // oˉè* ??à? 6 K: l$ U1 N, |* f
                        pLight->Specular.r = 2.0f;8 V$ l  O# E! n- e' `4 \
                        pLight->Specular.g = 2.0f;
2 q& b  L( I1 m2 X& ~                        pLight->Specular.b = 2.0f;4 D" F. {  {0 \9 o1 F
                        // á?oˉ
5 ?4 P; v6 D$ \" i                        pLight->Ambient.r  *= 1.0f;
* S+ t- L1 i/ C0 j                        pLight->Ambient.g  *= 1.0f;3 s3 U2 k& `3 M1 S" Q& |
                        pLight->Ambient.b  *= 1.0f;
, U! ?; X) u; H6 t) }5 R2 u4 x#else //__YENV9 s+ v9 ~1 X6 g) n8 ]& P
                        pLight->Diffuse.r  *= 1.1f;  ~: D& v; _. E# B5 K" |
                        pLight->Diffuse.g  *= 1.1f;; k; x  v/ T$ P5 V8 y' f
                        pLight->Diffuse.b  *= 1.1f;* t5 `  D! T) A# b8 a
                        // oˉè* ??à? 2 F) l# z9 z! x8 E* c: m
                        pLight->Specular.r = 2.0f;
+ H8 R% M4 w$ v! ?3 H# Y" H                        pLight->Specular.g = 2.0f;
9 {" d$ n5 }  s  F0 q  ?( Z+ a                        pLight->Specular.b = 2.0f;
. p7 b& z0 ], K" ]- Z                        // á?oˉ 3 Y* h! |2 e5 Y+ D( [
                        pLight->Ambient.r  *= 0.9f;, Y4 f' h& F0 q5 W4 W1 M/ Y/ ~/ ^
                        pLight->Ambient.g  *= 0.9f;
% G& E- ~% n# O/ N                        pLight->Ambient.b  *= 0.9f;
" `- l& {! t9 ]#endif //__YENV , f- ~7 a, z- n, P: m
                          G6 @0 ]$ ?; o" V9 t
                        memcpy( &m_light, pLight, sizeof( m_light ) );! ~/ b, E' L" Q4 L
                        - \& ?' S5 [. k7 h1 g
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
7 D" X1 H1 W1 ~: |; A5 W3 O' H                        D3DXMATRIX  matTemp;, X# R6 n! C# W9 w& N7 ]
                        static const float CONS_VAL = 3.1415926f / 180.f;
( e% \+ t6 R, x7 v
, C; N2 N9 ]: z; K3 @- Y                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
9 D$ B# u$ ?8 x' T9 ~                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);9 d: h$ A# S6 ~
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
4 n1 O/ |; ?' l. T9 F                        pLight->Appear( m_pd3dDevice, TRUE );
4 q0 q6 k2 T; f8 q4 o
- E6 E7 U- Y1 o, g                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);7 U6 p# ]( a2 i* w' y) u) }6 r0 H& o
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
  F  e# ^2 O" ~" e# ?8 L                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); # g7 H$ j; _7 w& O7 y
: B: j7 R: Z1 w* D3 |- ]
                        DWORD dwR, dwG, dwB;7 n9 r, {( z4 W
                        dwR = (DWORD)( pLight->Ambient.r * 255 );1 X) Q- T2 V! w: T1 k7 L
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
9 s2 i, t7 h" d& l. r2 e                        dwB = (DWORD)( pLight->Ambient.b * 255 );$ E$ [8 y6 M. P  L: v" W- ~
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
7 o/ Z0 [" Z3 }, Y9 s4 C! f1 d                }; [% I9 A/ m6 O, ?, F! K$ K- ?3 e
        }
# N4 P; w, ?& `4 c# v. Z6 K  j. l9 d  N$ @! C
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );1 m9 H% @  S+ R- c+ A! a( ?# J
        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) );
0 {$ x: S  r4 u+ i$ U' y        ::SetLight( bLight );& R/ ^: B; k, j) K7 M8 i+ R
1 a& n- g( F# S; J, u$ ^% `
        // ±ao? ?D?í???ó á¤à?
1 X% F3 ]% I$ K  v        m_pd3dDevice->SetMaterial( &m_baseMaterial );
$ O5 [4 T. g! c% B8 _8 ^% V& x        / M7 g- A- _- c4 O  M
#endif // not WORLDSERVER
3 U: Y4 q+ N# j}
3 s: K$ C* A/ d/ U( O并更换
# J) m. Q5 [; W9 r3 D" P$ F6 U: WCode:
# [3 |/ K7 r7 o* m% i- ^) p3 |__FLYFF_INITPAGE_EXT1 t8 q6 F+ G$ Z- s6 n7 d2 P
定义3 P  Z: e: ~3 s& n

; z9 d7 `3 i5 x9 J$ Z% X+ ?- m4 S# B& `; G; q9 I! q( H" j8 p* h* i

0 @0 P5 p2 \" p
0 b+ v. @0 G, _) N* X1 ^2 u现在终于删除我的狗屁加速...5 o. A4 T; A& F3 i% |" C7 A# N  S
. m5 L! S/ k$ K/ n* U

) E! Z! Y2 U& E4 ?# O- W4 H! F; d8 }' O/ D6 C% O4 }





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