飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:. F0 M; F9 R- a1 j  v
尾翼:
5 K- h6 a4 C* K8 g/ |1 Q' S5 ^! j9 k/ N* a" `1 X' R( \; N2 V' @7 z
代码:$ |! S! z7 |/ V0 o
CWndAutoFood::CWndAutoFood()' G! g4 {+ H+ D6 w5 B  x: L
{
4 [2 g! n& K+ t. ~* F" t3 \        m_pItemElem = NULL;' F% o. ^8 }% k7 c+ W) s+ J
        m_pTexture = NULL;
; |( i) v( |" i0 d  U        bStart = FALSE;+ c9 z: G/ h/ a) ~7 Y
}9 \3 _8 Z4 q/ ]8 F8 p8 z
1 h* h, N# G& q$ j+ b" r
CWndAutoFood::~CWndAutoFood()
* u) u0 }% L+ S! [- \5 [7 I3 l3 x{
' {5 ^* s6 J* i: ^9 g  {- L8 C        AfxMessageBox( "AutoFood ist gestorben " );
2 Y. b4 w! {! B! P+ C& y}3 y1 K5 M$ B7 w# [9 M- S8 g7 m; b
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
2 ~: b' N3 A! _; p0 U{3 ~% L3 G" _: b6 p1 n' S
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );* h! u- K6 e) n! N8 ~3 ]; W. l( R0 f
}5 P* @' T) g# |4 L# w/ q

4 q, R/ |. Q/ t3 DBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
2 j3 g# S& [* _7 O& U. [{" O) L$ {1 I* C8 J
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );6 y. [3 _2 ]" r! J
        CRect rect = pWndCtrl->rect;
. ]0 H& c1 O. v        if( rect && rect.PtInRect( point ) )
& ]% g$ l- S$ Q        {$ r: ?3 T+ ^; }# H
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
5 h1 ^# X' F6 l- O6 I4 C  y                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )) o0 `, o2 ], R. l8 L: ~$ a
                {- I+ K0 x3 J: @2 b4 ^
                        if( m_pItemElem )
. s6 s1 m& g5 V1 t                        {
" u5 J  f" U% ]+ [' K7 c                                m_pItemElem = NULL;8 @# ~: J- f- _
                        }
6 _1 S1 x0 N$ ?! V* Y                        m_pItemElem = pItemElem;
* |7 n0 k9 U0 p2 @+ Z* z                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
+ ~$ n% t$ [" c& @7 E( W2 Z& w; e" }                }else{$ n) e1 p9 O( a4 q
                        SetForbid( TRUE );
3 Z; B, }: C  j* T+ b* L+ W" A. A7 Q                }
  F8 t* C: C" v( Q, o        }else{
( j& C# R8 {8 ^  U                SetForbid( TRUE );
$ I; a8 q0 f6 V, `- S' f        }
5 o/ ^* s7 Z& `0 F! w9 z  ?        return TRUE;* f  K* g0 V  Q" T' I
}' ^. q+ u8 `% ^; x7 a
" }- j/ W, M5 m& q* y% h4 ~7 k- |* O
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )3 ~- R& O6 {6 C4 V. J3 r: K9 ?8 R
{
* d5 y: n9 H- p: |. z; t# w1 {        switch( nID )
0 ]1 p  e" u# O. c+ e8 {        {
4 W- P6 @- Q" s  p" ~* ?9 F- ]        case WIDC_BUTTON3:
9 f, y8 F" w' r0 s) u# i, D) Z                {
$ U  Y" g" F! G                        bStart = TRUE;( W3 M( D. P5 H
                        break;
! C& X2 \7 n4 ~$ M9 K1 F                }2 p) D0 H# s+ _7 c2 B/ u
        case WIDC_BUTTON4:3 z( G- `" h0 H8 w6 e* l5 P
                {
' @# B( S7 z% ]! E- j: F                        bStart = FALSE;
$ v, i6 C; `' n$ K                        break;
3 A( U2 p) k$ c0 B3 a                }
8 D2 q% O, a- j6 I        }" Q% h2 u* X' E1 O. T5 g0 W
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
0 B* Y, z/ d; V+ @1 p0 F( j1 c}       
: f+ b9 ~* a4 v% U( @void CWndAutoFood::OnDraw( C2DRender* p2DRender )9 P2 }8 N+ G. N7 o
{
7 z- a, `  t# ], X/ @( d7 @7 F! R        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
3 J* R9 n* J3 L; V- y! q" G        if( bStart || !m_pItemElem )
9 n3 c. U7 l  H4 P        {- Y- y7 S/ y' U; {( M* v  l% F$ ]
                pBtn->EnableWindow( FALSE );
+ H' Q. s4 j$ O& g6 H        }else6 o8 y/ |. \; T9 T; F6 h
                pBtn->EnableWindow( TRUE );* [7 e6 D' ~3 B: r4 O
        if( m_pTexture )( x$ k2 D0 I( m; g* Z
        {1 W6 O% M+ F+ `/ o
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
: B- J& y, K) O" {$ ^' E                if( wndCtrl && wndCtrl->rect ); t! ?, U# E, c- Z. a
                {
6 a/ |3 I! v0 U; }% i                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );1 g7 d6 ^( {1 W/ K* g
                }! K: T) W7 O; K2 V, Q
        }5 x% S2 S  e' f0 \/ }
}  f6 T  x. P  S, S- ?& w! o; A

/ H0 g$ B0 f) |2 T% ^4 V6 l! }$ FBOOL CWndAutoFood:rocess()/ `4 d4 l: Z5 I8 h
{
5 K' X! L- y6 M! |        if( bStart ). W+ w- ~" ^7 G& a
        {
$ D# e( g! ]! P7 q1 N  j2 b                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )) @3 ]8 _2 n1 o  A" t% k  Z
                {7 q, U& ?7 y) t& O- e* |
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
* S. U/ _- V1 b7 V2 f$ a2 H                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
! ]( I+ U' J; p; E. Q$ a' [7 j" ~                }else{( g7 F* ^( @+ H8 w% D8 e- p
                        bStart = FALSE;3 C+ b0 j6 L" T: M$ `. q
                        m_pItemElem = NULL;$ `* ^( ]8 A/ F8 M* C
                }1 V- H' C) |- ?7 s7 R/ S
        }
  J1 M; q* k" E4 }3 {5 b        return TRUE;
. r( l/ k& o& m, H2 ^}: {2 j1 A1 D& o, u# K8 w6 h1 ^2 h/ N

; {$ [; x- Z) K, e登录视频废话:
( n  J( O- O8 `5 H* }: N3 x0 s尾翼:
- G- A4 T" E7 k$ \/ S8 t8 v7 J! M, ]0 m3 L! L
代码:( _" v& x' {: s$ G9 H, t

3 V( p3 {; v- U! h+ nvoid CWorld::SetLight( BOOL bLight )
+ D( ~2 I; o, S% G/ M4 k6 gdurch! U# @# \7 R9 ?/ Q8 |
Code:  O$ X1 k2 c  }8 @* @
void CWorld::SetLight( BOOL bLight )
; H/ P. I; m: i$ Q0 ^* H. N, |{
+ ?8 y5 y- v4 \: [$ ?9 \' H        //ACE("SetLight %d \n", bLight);
# H; o' u6 K+ t- A5 I4 {       
# `+ l' |/ ^0 B  l3 m& o#ifndef  __WORLDSERVER : K& F1 c3 J7 _9 q' R1 U  u- u/ \
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
4 I4 J( Q- ?9 B3 I3 M4 R% u        CLight* pLight = NULL;
2 I4 K( W: @6 a  o! [% Y) [3 a8 [( M; d# m) q1 P/ w+ M
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );: O3 [) L0 L( W; z
; y# [: t; W4 M) ^) p) R/ g
        pLight = GetLight( "direction" );
* Z  W  {9 _5 B9 R, M- l& L0 C6 s7 U& }7 R
#if __VER >= 15 // __BS_CHANGING_ENVIR, v, ?* G  O7 T8 j* O
        if( g_pPlayer ){
7 V# b  c; E. f4 v                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );% v; n+ F; o) l4 p
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
: }) C  Q- Z$ ~3 v0 q  M                {
/ w* i  x" H1 y! p& B                        if( pLight )
' y# d  H8 {1 _- C                        {8 P, z! s6 [" l4 a
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];8 @7 n- t6 c# `1 M# m
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
! O+ S/ [$ r$ R# i% h' s                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
  T5 a8 s4 h7 v# ]6 L) C' p( z, E# P4 S! s; K
                                pLight->Specular.r = 2.0f;  m5 s* u7 @( K# r- A1 n+ Q: Y
                                pLight->Specular.g = 2.0f;+ d$ {. P: g% t. Z' e% M
                                pLight->Specular.b = 2.0f;
5 h8 X/ p, D+ e* N8 Q       
6 e; }2 ?8 L& P" v0 Z& F4 w                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];; F' f: e9 G8 U% @3 [7 C
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
1 S9 X7 Q( S9 l' a1 p3 }                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
+ Q9 l% M' T  q2 n& H3 l& u       
6 Y. D. w' k7 ^4 e! C                                HookUpdateLight( pLight ); ; U$ S/ j; o, l7 T0 M" m0 X
. y  n7 j7 w6 i6 [
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 z6 K6 f! g2 y( X& V               
. G! D, u* S! E                                pLight->Diffuse.r *= 1.2f;  c. S$ O& z" |  ]: v4 h
                                pLight->Diffuse.g *= 1.2f;8 h/ |; e3 u2 n$ P6 l; u- O9 [. Y  k: L9 y
                                pLight->Diffuse.b *= 1.2f;1 X- `* _! s, [1 R+ a' m6 z
. T- P  Y7 Q8 K
                                pLight->Ambient.r *= 0.8f;
  j9 b1 q% q6 S. \/ ]                                pLight->Ambient.g *= 0.8f;! K4 ~% H8 O+ b9 Q, J; c8 r
                                pLight->Ambient.b *= 0.8f;
$ f* D% R  b' l$ a. x       
" V: X4 n: z7 A& q! J3 L! k                                memcpy( &m_light, pLight, sizeof( m_light ) );
) A+ `) z! d/ X6 C0 Z2 B
' \" l+ D- o8 r6 S/ |% A/ s- u                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);3 }% m: W% y8 l) q) b- P$ R
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
/ [$ b' c2 B0 }5 R6 D                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
+ u9 i1 u% d! E( L+ ^                                 pLight->Appear( m_pd3dDevice, TRUE );
% U; z) }0 M. F# H( U8 }/ |               
0 S6 M* G5 |5 i/ x                                DWORD dwR, dwG, dwB;  i& R% K) N# X3 O2 U  z9 f( C4 A
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
2 s8 R6 ^: Z6 u- F                                dwG = (DWORD)( pLight->Ambient.g * 255 );
% P2 l; P5 Q  z5 ~- K                                dwB = (DWORD)( pLight->Ambient.b * 255 );
4 x7 Q! y2 B& _! |# z! p                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );8 v" M/ ]1 s3 ?& M' v, t+ ]: x
                        }0 a  V; `- O: I9 d: m  ?
                }8 B) C3 X5 }9 K8 r8 c5 W
        }" k, Y3 G4 r: |! S
        else/ x4 d. P( K- h3 H
#endif
. s' W: q! f& u+ n6 ]; R' p" K4 k8 O/ i; Z, z- C
        if( m_bIsIndoor )3 K; `  |" ]/ _7 \, ~# v. v
        {' R- e8 n0 G. F, P9 t+ s
                if( pLight )
0 K9 K0 \2 n; N                {                  Z" T) I9 C2 r; {# j
                        // à??μ oˉè*
% l8 C7 V2 y2 G% T: l2 O$ J' s                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;: @7 _7 X) a% ]/ Y# b9 D& c; d. j
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;1 I8 u) B8 @, G' j4 _
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;# l4 w8 D9 U% \$ `/ N0 ^4 G
- y/ S6 H: r" d2 B) W
                        // oˉè* ??à? / n3 g6 T# s0 e7 V/ ]
                        pLight->Specular.r = 1.0f;* }. [. Q, [) R  H9 k0 v4 u
                        pLight->Specular.g = 1.0f;
0 ?" L# }, N5 e7 f8 K                        pLight->Specular.b = 1.0f;/ D; s: R# h! U8 s0 Y: @# j/ ~% J2 W
                        // àü?? oˉè*
6 x4 C6 V! w4 c6 l, J                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
  o& S5 ^; H; a4 |# I6 z                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
0 ~. R- u2 V7 w7 a                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
! S) C8 X# F6 ?! X
4 s. E6 g% J4 L8 K! N. V9 G                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.8 }$ w5 d, l6 R
                        {7 _- W9 V% u8 D) R3 V( O7 l
                                pLight->Diffuse.r *= 0.6f;  @6 Q/ v0 v( B
                                pLight->Diffuse.g *= 0.6f;2 j/ g9 e/ w2 i+ D  V
                                pLight->Diffuse.b *= 0.6f;
! F' T8 x3 |. }# Y                                pLight->Ambient.r *= 0.7f;
, \  J. o8 ?* f) o0 [% w                                pLight->Ambient.g *= 0.7f;/ o: `4 r0 I! s" V% _) Z
                                pLight->Ambient.b *= 0.7f;
, {) d! m# D9 {                        }) g9 Z9 h! p; x) n% Q
3 w- e1 `7 _4 A! {5 _* }
#if __VER >= 15 // __BS_CHANGING_ENVIR
' E$ f$ y' M0 S) w2 e                        if( g_pPlayer )* O" F' b6 [; e
                                HookUpdateLight( pLight );
1 V4 x) d; ~; f! g4 Q3 U#endif
/ M  U* ~; {. e6 v0 A3 j& u                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 R$ r* K1 y* q- [& g/ x- y- ^3 p- [/ |) L: z
                        pLight->Diffuse.r  += 0.1f;. a9 E$ J1 b7 [9 O1 X! }
                        pLight->Diffuse.g  += 0.1f;' i# M- _- P' ^* \! f. X8 B
                        pLight->Diffuse.b  += 0.1f;
+ @. Z/ m5 j( i  X* v                        // oˉè* ??à? 7 Z0 A/ |- ^, o% u1 n
                        pLight->Specular.r = 2.0f;
0 E* Q& Z/ }; B/ T" t* c                        pLight->Specular.g = 2.0f;
$ _: x8 R. q, r9 g* r6 K                        pLight->Specular.b = 2.0f;/ e( T- b" ?6 e6 e
                        // á?oˉ
. q. p+ [' E" }                        pLight->Ambient.r  *= 0.9f;- {7 Y. c% }6 u  m
                        pLight->Ambient.g  *= 0.9f;$ }" B3 q' b$ N. D! M6 J% w) W# \
                        pLight->Ambient.b  *= 0.9f;
+ h4 p: y# A" I. K5 w4 O. ^+ v' E2 [, g" M+ ^9 l/ m$ w
                        memcpy( &m_light, pLight, sizeof( m_light ) );
; \& j* S8 j/ F( n7 l/ z                       
! {: `. m2 A. o+ D' f( w: |' P                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );; K1 j  v) P. Z- Z1 P! D8 w
                        pLight->Appear( m_pd3dDevice, TRUE );
: M* M/ l9 a( p! h        7 K: @" M! K) u  B& K3 R2 f
                        DWORD dwR, dwG, dwB;
$ f" a! \3 ~: R                        dwR = (DWORD)( pLight->Ambient.r * 255 );
) O* C# p5 e! C( L' Z                        dwG = (DWORD)( pLight->Ambient.g * 255 );
) a0 S9 T4 a* t/ @                        dwB = (DWORD)( pLight->Ambient.b * 255 );
2 K7 c' }- }8 t, a9 N0 C0 \                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
8 f. ?1 h) _8 C/ i; @! y                }/ Q; K& a' v8 O' [  R; N2 M
        }# a9 ^, Z* m5 `+ J4 t! ~0 s
        else
/ z6 m( H2 U3 |        {
; b6 `9 P1 [& y                if( pLight )
; i5 @4 o( R# S  l# X                {
$ Q9 D/ j4 K2 e% J               
2 O+ t) \0 b& y# Y* c                        int nHour = 8, nMin = 0;
. G4 ^8 U+ q3 N- p& m% t        #ifdef __CLIENT+ _' \+ k; Q* k8 I) }
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
1 O; o' {" `+ L  n) w& ?, x5 h                        nHour = g_GameTimer.m_nHour;
! C% Z8 t; ]9 z3 r: `! i$ S                        nMin  = g_GameTimer.m_nMin ;  o; u. s8 A$ ^! e- A' m7 ?% R' j
        #else8 u7 m9 d* ~2 Q6 E" H
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù." ?" v9 c$ a! I& v7 u/ L2 g* d
                        if( m_nLightType == 1 )6 b2 m8 s7 c9 Y- d& G
                                nHour = m_nLightHour;
$ K$ ?3 o1 A/ B, U        #endif  y7 K# |+ h6 b2 t' U$ @& q
                        nHour--;
* ~. x, z, @% U, j7 {. ~                        if( nHour < 0 ) nHour = 0;
9 y& {1 y' A3 G! D2 K1 V                        if( nHour > 23 ) nHour = 23;
- B' Y$ e- z+ K  e
; E5 I7 t$ m- D. ~9 v+ z& W                        //if( m_bFixedHour )1 [) ~: L" Z8 Q" F) P  p/ G0 ]% ]
                        //        nHour = m_nFixedHour, nMin = 0;
+ W1 C' M( Q9 v8 ~                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];: l6 E6 L: I& ^1 ^* w9 w
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];4 I/ V0 t* u1 \' q$ G! f

) m9 \% i$ L- g5 w                        //m_lightColor = lightColorPrv;
7 L3 [! J2 `- O' s  h                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;1 Z; A1 s- o. P; o) ]6 F( b# ]9 u% l
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
# d* u; h# [3 Q. x  w4 ~! W                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% j: k! K' W( H; m                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;! ]" w% F. e2 X% ?* v
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
$ L0 ?# z5 |4 J4 I/ Q: Q                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;. D5 z. r3 b% w+ l7 K; x
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
" R0 h- G. U( }; ]8 E, [0 I1 {! b- Q- w) \, f
                        // à??μ oˉè*
# V  F$ F; @% Z! v8 l                        pLight->Diffuse.r  = lightColorPrv.r1;
$ A! X7 r0 Y0 M3 h  U8 N2 ^4 j                        pLight->Diffuse.g  = lightColorPrv.g1;
8 N" W5 H* B1 b% Q+ m                        pLight->Diffuse.b  = lightColorPrv.b1;
! {. O' q4 k- J( d" C: [                        // oˉè* ??à? 9 \- p  l- X5 u# }
                        pLight->Specular.r = 1.0f;
% I2 y5 t, h) s4 ^7 k  M* f4 r8 ?                        pLight->Specular.g = 1.0f;
7 s' N" e& t' \                        pLight->Specular.b = 1.0f;9 t, q; p9 W: A* z4 b
                        // àü?? oˉè*
/ `( w' A1 C8 y1 k                        pLight->Ambient.r  = lightColorPrv.r2;0 s  A2 Y$ T! g2 I- H
                        pLight->Ambient.g  = lightColorPrv.g2;; ^! d0 A9 s) L5 w/ N1 Q* q
                        pLight->Ambient.b  = lightColorPrv.b2;& y0 V$ N& h7 X; x% a# V
% e) r4 W% |- R3 e$ ^. K/ |7 u1 Z5 T+ P
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 z7 n! e6 K$ W# l, Y                        {
( G: a# g0 h  u                                pLight->Diffuse.r *= 0.6f;  T- [. Q* _& T+ A
                                pLight->Diffuse.g *= 0.6f;+ m# y0 m: o. [2 G9 Y6 k
                                pLight->Diffuse.b *= 0.6f;( t3 l  o7 P, f2 O  G
                                pLight->Ambient.r *= 0.7f;' s+ B5 `7 ], J7 P. a- m
                                pLight->Ambient.g *= 0.7f;+ X- G: s5 d3 f7 ]- G1 M" r  [
                                pLight->Ambient.b *= 0.7f;
! S" s( \7 Z& p5 j. T' k                        }
# c1 W( G; b: ^! n9 @                       
: a+ w* ]6 N* W6 U/ U: ^#if __VER >= 15 // __BS_CHANGING_ENVIR
2 Q. Z* y$ I; O1 a0 v- M7 n/ A5 y                        if( g_pPlayer )) h. g1 P( r& a  N9 b
                                HookUpdateLight( pLight ); 0 G$ w( j+ n2 a+ ~* C0 z2 D' D3 R
#endif7 p' z. t. ~( @* M* ]
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
( J/ [1 A% p. ^. L3 Y  }! d+ I$ ~* C4 a8 Z0 ^* c4 F  B8 {* ~
#ifdef __YENV2 A1 g% Z4 W, ?
                        pLight->Diffuse.r  *= 1.1f;. d. ^: B9 X2 [* g: p* e
                        pLight->Diffuse.g  *= 1.1f;  L$ y9 @+ ~' z% r4 m
                        pLight->Diffuse.b  *= 1.1f;7 v: z' w4 W  O2 t
                        // oˉè* ??à?
$ p0 ?: H' t! c" u                        pLight->Specular.r = 2.0f;) R9 }7 ^9 W8 h$ ?
                        pLight->Specular.g = 2.0f;$ G0 H5 x, j, u% z5 W
                        pLight->Specular.b = 2.0f;$ Z# V: x1 w( r9 b  B! a; _# N
                        // á?oˉ
. A: ~7 C4 J9 \+ T                        pLight->Ambient.r  *= 1.0f;. Z# @  a0 i5 ]. w. ^) z: t9 n
                        pLight->Ambient.g  *= 1.0f;
3 _$ C/ p5 |& N9 a3 f                        pLight->Ambient.b  *= 1.0f;% ^  u% r, C# h1 _# n* p
#else //__YENV
6 ~1 h! Y+ f9 v1 k# J3 `% D                        pLight->Diffuse.r  *= 1.1f;5 i3 S0 ?- h# [
                        pLight->Diffuse.g  *= 1.1f;! g& V) G4 E; j4 i6 X0 X1 [
                        pLight->Diffuse.b  *= 1.1f;) V; l: X3 t5 W5 t8 f, M2 F
                        // oˉè* ??à?   A! k, s( r% B, W
                        pLight->Specular.r = 2.0f;
  j/ R  B5 \6 M- H" J7 |! q! Y                        pLight->Specular.g = 2.0f;; ~( q8 B0 Y3 ^
                        pLight->Specular.b = 2.0f;
8 T' C8 Y4 d, u$ W& ?                        // á?oˉ
. X) O( U1 R% G. e6 h+ U  E                        pLight->Ambient.r  *= 0.9f;+ ~: U& _7 d+ ?# A- X& o
                        pLight->Ambient.g  *= 0.9f;- ^6 G& B1 I( z; S
                        pLight->Ambient.b  *= 0.9f;4 P3 y* B  O( s  j2 L* w
#endif //__YENV
6 t& o9 J& |( l: M' r7 G                       
8 ]0 z9 g: Y4 z- f& s, ~; w" U                        memcpy( &m_light, pLight, sizeof( m_light ) );7 a4 p6 i5 x$ ?4 n* |. }- J
                       
8 M! w4 |3 K: U' m; m3 P                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);0 ]' |2 ]* S4 U3 A+ n; u
                        D3DXMATRIX  matTemp;
8 j: V4 [: u# c7 Q" X! X1 x: ^& w                        static const float CONS_VAL = 3.1415926f / 180.f;
4 g& V! w: B: P% ^0 X3 [, g( c) Z/ J9 b2 `! V- Y1 C
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
2 Y+ t& X. z1 p& H0 t                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);3 V4 T, N  ]2 b6 K0 O  l4 V5 r
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); $ a5 }' d/ a# l3 L6 g
                        pLight->Appear( m_pd3dDevice, TRUE );# @' ^! t: b; h

" Z. d- ^) Z* G, k' Z                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);" h9 H8 Q2 Y$ X
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));: k; v; }6 `+ B1 V
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! B+ j( n0 x1 E  o: ^. d6 d2 n2 d* w
                        DWORD dwR, dwG, dwB;( P' w, h+ r7 I, c7 C
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
0 \* A' P9 W0 T9 c( _6 ?4 b- z8 a7 n6 t                        dwG = (DWORD)( pLight->Ambient.g * 255 );
. l9 T- W9 d0 y% p3 f5 `/ f                        dwB = (DWORD)( pLight->Ambient.b * 255 );
" N3 @2 Y' L- M0 \                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
- y5 m" G; E" @$ b9 N, g                }+ l/ j" ^' k  L
        }
1 @* X. v/ W! h2 K" Q1 ?% r
/ }$ Y% |( M! F. K        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );! D+ ^1 d2 P2 Y, G0 x
        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) );
$ c# N5 h2 D' @+ K) s        ::SetLight( bLight );, L' G8 ?" C7 W3 E

7 p9 x) |' J; w/ D$ z+ n        // ±ao? ?D?í???ó á¤à?
( _3 f) W+ Q7 R4 g. m4 m2 d        m_pd3dDevice->SetMaterial( &m_baseMaterial );
1 t" O( s4 f8 c       
' s) e% P4 \  v7 o#endif // not WORLDSERVER) A; |4 u, T0 r4 N. I
}5 S: j5 @' l3 ]! O
并更换1 p* _, Y; t! h* q! Z6 n2 X
Code:
7 l' o2 g  A2 q$ c* [- t__FLYFF_INITPAGE_EXT% O; D3 Y$ H9 `
定义
4 j2 e3 m; d' |- |4 J* X8 A% d: m( V: F- u
! @6 X8 E+ n5 s& i

7 v. k- N; x7 l, q) h. r+ _
) d' n. p: N. f2 p6 A现在终于删除我的狗屁加速...
, o; e) n& Q9 N3 V* p4 t
  f: @- l9 c3 b2 ~, j1 C: m6 _8 k8 g2 h9 i* i

) O  j2 q- O! @. I




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