飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:) h5 b* A1 p) v  P. F% f
尾翼:
9 \1 }( c) b! G1 f3 Q- A3 B: w! F
代码:
6 }8 W  Z/ G0 Z' \3 NCWndAutoFood::CWndAutoFood()
% Z3 U5 V/ C" W. ~/ P0 O& g{
) H! d8 l2 k6 C" h) D8 f7 K        m_pItemElem = NULL;# @/ F7 t, N1 ?9 `- X4 k+ X
        m_pTexture = NULL;
) c" r5 o* B$ M/ A        bStart = FALSE;
# L' k8 B* y$ m3 W1 ^# `}
- k3 j  K" S' E( w5 v7 r' J
+ m' O& v. k& X9 C2 wCWndAutoFood::~CWndAutoFood()6 t& ?! L- k2 I* L2 C! p
{
1 E6 @9 y6 M5 ^: k# k        AfxMessageBox( "AutoFood ist gestorben " );
  _; r! y2 W% b  r# n. Q}
6 K% R9 ~$ Q  VBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
  f* U+ j/ J1 \# ]" I* X{: W- E( V* w# Y- I# Q
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
8 x7 c& _. [. C6 R4 R" c# r+ k2 I}7 @" n3 G4 u4 L! a- I& |% U& z& ]
, v; ?; ^/ U6 I! Y% t
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )$ n, {5 I+ X8 J5 m+ {5 I4 u
{
6 A7 r' I0 h; G  x7 C        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );* j$ s; m6 S$ Z3 ?- O! Y
        CRect rect = pWndCtrl->rect;
1 X* N4 F: z8 T  f        if( rect && rect.PtInRect( point ) )8 v- t; t7 `# m# k+ w
        {
4 h0 J: q9 `9 k                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );& A3 \  C: Y9 s2 f; ^0 M/ K
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
! F% c3 M* S  P( r; @1 E1 R                {
: }7 [5 k* x* ?                        if( m_pItemElem )2 ]) @& b5 q8 ^; o% j2 }/ k
                        {
. k0 B2 r& g- h" e+ p$ ^! @% Z                                m_pItemElem = NULL;
2 F) F9 m1 |' \$ s1 A! W) m3 b- w; q                        }
- }1 y1 P$ n8 t2 I                        m_pItemElem = pItemElem;, z  j0 m5 ?2 @+ q- @0 l% L$ |
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );5 ]% a; H) T" T& _/ C3 ]. y  }
                }else{* c) O; {; J  Q3 i0 ~" i3 p
                        SetForbid( TRUE );1 b! q5 S* y: p! ]% W
                }8 p2 B1 s5 Y9 J
        }else{
+ i5 }4 \' A2 c4 J' Z                SetForbid( TRUE );
- [3 R# N2 v, e, ^        }
& }# w* b5 ^5 Q5 j6 Q        return TRUE;
# F' }1 }& F6 o}: }3 K) Y+ M* B; ?9 d" D

* u2 _+ t; W* MBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
$ P6 W! ]) |1 Q7 H6 j{4 l. d$ U4 B% v
        switch( nID )
" A; i$ S" v0 J3 E5 ]        {( y4 n' [. ~& j3 D* A& W
        case WIDC_BUTTON3:
" ~* ?$ G) Q' @" R! y                {) i5 N5 Q7 v' i% N1 C% Q7 V
                        bStart = TRUE;
7 n& J1 h- z0 c/ U                        break;% m" o8 \; k  }4 v2 {
                }5 M) P* a4 b; C- }
        case WIDC_BUTTON4:
9 j2 t) _" D: |) O' l  H3 t                {
# q" W, y; w  x6 K" W$ t                        bStart = FALSE;
9 k  K' m; V' a0 b: y' u2 l2 ^                        break;4 j4 |- H' X  o8 l; d
                }2 I# T+ M0 T  r- l0 e# }+ _
        }5 }1 J( u( _1 {7 ]2 G, g
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
8 _# Y9 U0 n1 \}        . G. {8 U* c7 v' N/ _3 f# Z- c- Q6 k
void CWndAutoFood::OnDraw( C2DRender* p2DRender )' F+ h9 K- a. p% X2 B5 T' H
{
9 ]! S; u0 A/ F8 X8 N        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );+ t* ^* W6 z" [1 V
        if( bStart || !m_pItemElem )
* a9 Q* k! w# v, i/ s        {& h' K  s) U& I1 b- G, W3 M2 J' k
                pBtn->EnableWindow( FALSE );7 x* B3 C7 Y) i; \3 j; d* \$ _8 P
        }else
9 E5 t2 g" C$ e6 h, c) l* E                pBtn->EnableWindow( TRUE );
! s9 G6 Y$ P" M" J0 B        if( m_pTexture )4 R: [; K: x) C& H# H
        {" @3 e; O7 ?. E5 i( u) u0 E6 x
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );) D# ?/ H$ B0 p4 I" b
                if( wndCtrl && wndCtrl->rect )  t3 J# C8 S) w8 J* G
                {0 D; ~& v4 |! i8 `
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );/ k7 b  [- L% t( Y3 w
                }
/ |3 D% N6 t0 _, V7 B: P! D        }1 |/ D, m% G9 u; g
}+ L5 G5 l" ]6 R+ w
0 z: q/ u- V5 S+ @- R6 J5 R
BOOL CWndAutoFood:rocess(): z# h2 ]& K) G, }% M4 d, N
{
! j& O% m1 P# r0 U& j7 H. W        if( bStart )
1 C# ^  m) R; U1 ^( a! v        {
# ?* C- L- v6 Z# i6 N, W                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )# O. j  U/ g. r% S" I* U7 L6 d
                {
, w6 {" {  @- s3 F: N$ u+ }" u  E. b                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )& n8 g1 X# D# x8 Y7 @
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
# d$ v9 B  l% n' Y& r$ O0 K1 s3 X                }else{
/ f1 D' i0 L4 p3 @- J                        bStart = FALSE;
" N* r  c# l' z% ^1 a                        m_pItemElem = NULL;# c& Y6 n  L5 |% |0 {
                }. z* Y6 h: a/ V8 y8 S( X3 J0 g5 f: Y
        }" E# U. g0 h, U% k9 e
        return TRUE;
/ R: J! q% b, Q  _* n: K" G7 w% {8 n}3 g( A7 x" ?8 V) Y

9 O1 |  X! V9 u2 Q/ v/ J) n登录视频废话:# Q, W. `( z7 L
尾翼:# Z7 O! K/ R4 u" E
& X( E  b7 v# `0 r% w. Q, A& ]
代码:5 b4 D  g9 E2 H# [+ ]% B# G9 b
# w. a. y7 a, P) {, O# O
void CWorld::SetLight( BOOL bLight )  K* m+ @8 W. s! c
durch( _; H$ Z0 I$ u5 p; ?1 L( ^3 |% p% O. ?
Code:$ T! g4 _& S3 p
void CWorld::SetLight( BOOL bLight )& k& \7 h- G5 h+ ?5 v: L& i
{
7 B1 e' @, ~9 F        //ACE("SetLight %d \n", bLight);
. j% R; g5 v: D. q; }1 w6 W        # t3 [0 x4 {1 p( d) W4 E' e. ?
#ifndef  __WORLDSERVER 1 G  o/ T( f6 O& [' X6 Z8 p
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);. x1 k. x9 w" m/ ~; \5 e. x; O
        CLight* pLight = NULL;
9 C% M) @; J0 z, K) ^3 y  e  |- h9 ~+ F, j, p% e, u
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );3 Z: _0 a9 ?! r& l
" F/ l* Q- E% Q, l9 e) G) C6 Y
        pLight = GetLight( "direction" );7 ?! c5 f' p, E8 m8 K0 e

! ~% V$ k; L4 |' u! c#if __VER >= 15 // __BS_CHANGING_ENVIR# G4 {" j% H3 a  H+ w6 f2 o3 U
        if( g_pPlayer ){, A' Q/ ]; O( {0 X
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
% J/ `8 R9 V! Q0 \  W                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
! V3 m$ E$ [! {. l; L                {
: m9 F& O- H% ^1 X                        if( pLight ), \- _) x8 e! m- `0 _$ N: x! o6 ]
                        {
; \1 u  _- {  Y                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
7 Z3 k/ j7 }( K( h                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
. D3 S: X7 Q" K% X* o3 M4 S                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
) C7 m- t  T$ B$ S7 y2 ?6 f3 @; U+ D+ y/ U
                                pLight->Specular.r = 2.0f;3 Z& K# |( U+ u) K8 W
                                pLight->Specular.g = 2.0f;% B7 u( B$ h$ e% e& g9 |! Z* ^: f
                                pLight->Specular.b = 2.0f;" S& d, O+ I8 I& a
        / M9 u0 x# U- Q
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];, {0 O$ w* `) ~8 D
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
/ @4 D# m8 s" Z, d7 h# f1 S                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
8 P$ r6 W5 O/ ]1 L       
, P$ K% Y9 z" V+ L3 {                                HookUpdateLight( pLight );
. O1 C0 O$ v+ k
% U7 u( k' c0 k                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& L$ D. B& y  p; h2 \1 w* i0 ~. P                ) i3 ]2 g4 ^2 T% ?
                                pLight->Diffuse.r *= 1.2f;/ g( w% r2 a7 ?  _1 {7 b# T' Z: x" I, r! [
                                pLight->Diffuse.g *= 1.2f;% U0 c2 D( N8 R# I* k0 V# {
                                pLight->Diffuse.b *= 1.2f;1 g+ E  z; g& o5 _( o& x2 j5 S6 L

6 ?9 X- A. y6 T6 P2 X+ V                                pLight->Ambient.r *= 0.8f;' @7 [' K* F( ]: {  k- a
                                pLight->Ambient.g *= 0.8f;2 V' r( i7 _. S* m- J( O9 V# d
                                pLight->Ambient.b *= 0.8f;1 P( P- `6 {1 v1 b! S
       
* e2 _4 V8 A, g: q& r5 Y  ~                                memcpy( &m_light, pLight, sizeof( m_light ) );
' C0 k5 o. a6 p/ ]
0 w; I( j2 {9 {1 w5 J. _. \                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
! }+ u% D, _$ Y  Z( u                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
6 f' r! d# z& d6 @                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 n8 l# m9 d: Y: A/ C0 h. g3 f                                 pLight->Appear( m_pd3dDevice, TRUE );
& t# d. U+ c2 b" P1 a               
( B9 T, j8 R2 `! \0 Y5 p                                DWORD dwR, dwG, dwB;( z0 h5 ]4 t! a! J. i7 X( p
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
6 }. k: X: Z# n- m                                dwG = (DWORD)( pLight->Ambient.g * 255 );
) l8 _* K) M8 P' L) h* h3 ^                                dwB = (DWORD)( pLight->Ambient.b * 255 );
# U2 ~8 ?* \: |, |2 k2 G0 }; B                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ U, M% b  @5 j5 `$ Y8 t; A- h                        }
% w$ f7 x$ Z/ S9 o/ @                }
$ j" I# o9 S0 w  K: W9 w        }
/ W4 t2 |8 P. S. M, m8 `0 s        else5 ^: }0 i6 v6 T( A
#endif
" A( m( V, Q2 p6 d% @4 Z! u8 ^; G( p4 l3 {; t$ Z" [& L' I" ~; ~6 C
        if( m_bIsIndoor )- U5 P# @: `  V2 K& Q3 ?9 V& a5 e
        {
1 [) N9 Z4 Q* F$ Z, |3 e                if( pLight )5 A5 C8 o- d% y6 [8 }
                {                4 J+ d, U2 j7 Y+ m
                        // à??μ oˉè*
4 O1 `. A1 J! g( W' m8 b8 e$ I4 g8 j% s                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
; _  O2 i4 H4 E1 [3 `  K2 J4 ^8 Z# {                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
; a2 _. Q& t& I. f4 j                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
8 d  m7 B1 A1 R. I5 A
* r/ m- ~  y, X6 T                        // oˉè* ??à? ' w9 F  w3 g0 J5 R7 H) U
                        pLight->Specular.r = 1.0f;6 n- c# n# X3 t& u$ K% v' l  v& T
                        pLight->Specular.g = 1.0f;
) G' X) d% d# W. [                        pLight->Specular.b = 1.0f;
' y5 X0 L( k7 W! G0 \# P                        // àü?? oˉè*
; j- O! U0 q6 R2 x! m0 N: O                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
7 T; J' R0 |6 Q                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
4 R. h: Y" n. J! X" w9 Q                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;" Y9 b. l7 T6 g, n! ~# P. D1 ^

. ?" c2 p, y! T1 T" x                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
$ F5 T# k7 C: t5 F& ?5 v                        {& v9 d& ]# o" J* ?1 l
                                pLight->Diffuse.r *= 0.6f;
+ \* m) E% a! M$ N1 h                                pLight->Diffuse.g *= 0.6f;5 B/ K% N( v4 @0 s1 d
                                pLight->Diffuse.b *= 0.6f;
4 [, L* ?& W9 h* x0 e                                pLight->Ambient.r *= 0.7f;$ y- I0 J: i0 ]1 f4 P4 o
                                pLight->Ambient.g *= 0.7f;
, ]: P0 c/ X+ n. r9 O4 ?8 }4 q                                pLight->Ambient.b *= 0.7f;  Z# E# i, Y- E% T  G& e, F
                        }" j! q4 d( h7 \) o8 }
/ i# D2 E$ ~+ _* C6 x& l
#if __VER >= 15 // __BS_CHANGING_ENVIR
6 @' b. ]5 B  E7 @8 l; p" s                        if( g_pPlayer )- F: g- B' c% E% g5 D( t1 W
                                HookUpdateLight( pLight );
# a2 J7 [9 w4 A. I#endif% F* ~$ k4 U  @9 @  m
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 H: R# Z% G( G; S- \" C% ^. |7 C) w" T$ }
                        pLight->Diffuse.r  += 0.1f;
2 p8 ^" g* z" b! v# E# P" ^  K                        pLight->Diffuse.g  += 0.1f;1 }4 H6 ^' K$ J0 j( T/ b
                        pLight->Diffuse.b  += 0.1f;1 T" Y- ]6 x1 z8 a+ r/ v
                        // oˉè* ??à?
' W) H, Y" }7 y3 h7 }$ i% n                        pLight->Specular.r = 2.0f;
8 x, G$ x, i0 k, q! x) w- [                        pLight->Specular.g = 2.0f;
* o( j( q/ |5 v1 }" {0 x: A                        pLight->Specular.b = 2.0f;
; u% C! R- t7 j3 p" \$ a                        // á?oˉ ) o6 A5 I2 d) \5 n8 x% V! ?" J2 ~
                        pLight->Ambient.r  *= 0.9f;
1 k3 |# s& J! D  Z6 Q9 [                        pLight->Ambient.g  *= 0.9f;
( {* M/ e3 N/ t                        pLight->Ambient.b  *= 0.9f;
( ?, D" ]5 s9 Z/ f3 P# l9 c$ Z5 w2 [' I( A$ X
                        memcpy( &m_light, pLight, sizeof( m_light ) );
$ Z$ q5 p3 A* ]. W' b                        + ]+ H3 V# U1 I) ?+ I+ |+ f
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
- O) g7 L6 ]2 U, C/ S8 C                        pLight->Appear( m_pd3dDevice, TRUE );
) A. C) n3 [( B" _- s1 `        : b7 d5 ~% |1 g9 L; y
                        DWORD dwR, dwG, dwB;3 W% i" a4 X7 c0 G( e9 h% w
                        dwR = (DWORD)( pLight->Ambient.r * 255 );. w" y* s* o7 Y8 t! a; R# m
                        dwG = (DWORD)( pLight->Ambient.g * 255 );" |# ]  g. z7 d8 p
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
3 v  Y- n1 j0 ~0 u/ D1 L/ Q                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );6 r7 J  U( H* W0 Y# i6 t
                }6 R& f( _, t% s- l& O3 d7 W
        }1 d) K0 u9 q; y+ V% f8 t( c, [3 ]
        else
3 T6 r& a1 x( x3 U4 b        {
" s) p0 K3 n; `1 w/ Q9 F8 o                if( pLight )% i+ W# E9 b& s( W9 N/ r
                {5 b, N9 h0 V& A0 ~3 s! y3 T9 M2 J
               
' n8 \! O+ r: m0 D$ x' l& R" K                        int nHour = 8, nMin = 0;
! Q6 J" k/ K" M& q( |# p        #ifdef __CLIENT
! }- M( q5 j2 d! C                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
) v: d" ~) S+ t/ x                        nHour = g_GameTimer.m_nHour;9 V" F& F  ]+ [$ ^0 ]# k
                        nMin  = g_GameTimer.m_nMin ;
: d: [9 {9 g6 C/ o        #else
% E: M4 X. ~% y                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.# C' Y% d$ ~  w
                        if( m_nLightType == 1 )
9 [* _" M8 X9 \1 @! J- q+ n" y                                nHour = m_nLightHour;! R: f6 T  \1 ^! Z
        #endif
4 N! \# F! D0 V9 W% H% Y9 H) A                        nHour--;; \8 N. p" z3 ^2 d
                        if( nHour < 0 ) nHour = 0;: d4 ?1 O4 F0 D
                        if( nHour > 23 ) nHour = 23;( A& x4 J, B( O& v/ d2 {) L

# r! `+ H$ X4 g* ^  Y% c                        //if( m_bFixedHour )
; P. p+ t; F3 P3 F                        //        nHour = m_nFixedHour, nMin = 0;" W6 e. y* x1 C
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
% v2 p; ?; w( w/ f: t7 X- i                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
3 E; H) a  a9 |3 e2 \
6 |) W- A$ B1 I1 s, b6 Y: {1 T                        //m_lightColor = lightColorPrv;+ M% Z6 G6 r8 }' A1 p' {2 I
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
! S+ e1 @8 J  M  u7 @" n, y                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;7 `: w0 h5 s. w5 _
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
* B5 C: J, j3 a3 U/ _                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;" R1 M/ s' H5 E  s$ E
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;% Z( p# [* i/ ]
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
; ]) E( g( J2 r( z* P9 u* p" D                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
6 o6 l3 _, u3 r4 ]& f. }* G
% p% C4 N. r, z. `8 l                        // à??μ oˉè*
& N2 s$ E9 ^, {6 x% B                        pLight->Diffuse.r  = lightColorPrv.r1;
* X3 x8 J$ b9 g) E                        pLight->Diffuse.g  = lightColorPrv.g1;
- [6 X$ S! b: b, S' T                        pLight->Diffuse.b  = lightColorPrv.b1;4 J" I0 E: x2 i
                        // oˉè* ??à? 1 V- r1 Y8 k1 q( R1 X; l
                        pLight->Specular.r = 1.0f;6 {! J" k) ?' M- A0 O0 p
                        pLight->Specular.g = 1.0f;6 `$ I% {* h1 ~2 i: M& U0 ?
                        pLight->Specular.b = 1.0f;
, L( k. f2 Q) b4 L7 E# c1 H                        // àü?? oˉè* ; \% b0 A3 D! {  ~+ P: F1 A
                        pLight->Ambient.r  = lightColorPrv.r2;/ j5 `) }3 t& p
                        pLight->Ambient.g  = lightColorPrv.g2;
0 u$ m: n3 T' ~' f' T' |                        pLight->Ambient.b  = lightColorPrv.b2;0 f- _# I5 D- s# `: T% [+ z2 d

. }7 w2 Z+ V# E: Y' E; ^& ^                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
& a# h# d# w( C                        {
# g" q0 \! V1 X5 w9 X                                pLight->Diffuse.r *= 0.6f;
6 v# {4 L* z. w- B7 B/ j& X8 ]                                pLight->Diffuse.g *= 0.6f;
' o. d$ }5 s3 C0 ]  g3 s1 s- h                                pLight->Diffuse.b *= 0.6f;
% c- f7 h/ }# ^# r  x( R                                pLight->Ambient.r *= 0.7f;4 B4 `$ t* a# n4 B4 `& x8 L! b4 Q
                                pLight->Ambient.g *= 0.7f;* `# j0 b) T! X/ u
                                pLight->Ambient.b *= 0.7f;8 _2 x* b; W$ @2 |* _% e. Z
                        }
( [' o4 t; e6 |+ J: \$ m/ w                        : b: P% b% W1 i: B3 ^9 @
#if __VER >= 15 // __BS_CHANGING_ENVIR' b+ l" d" d* `' m, Q, K! l) G
                        if( g_pPlayer )
9 H4 R2 B2 h$ r7 |6 j& U2 h! S                                HookUpdateLight( pLight );
* l" m4 p* Z! C) `# _7 k, a#endif! Z- h1 M# _; y8 m! b% p
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );& i2 ]  C4 K* m% W, ?) o8 {6 |

; C3 x* |7 L/ b, O#ifdef __YENV
/ U' W, h; n! m" P- c3 ~* R( Z2 j8 y6 J                        pLight->Diffuse.r  *= 1.1f;& h' s  r; C4 L& d
                        pLight->Diffuse.g  *= 1.1f;
" S! {' Q; [. {& i- Y& r/ F                        pLight->Diffuse.b  *= 1.1f;1 O& v. B5 z( E* R$ e
                        // oˉè* ??à? ( y; N' w+ A) `
                        pLight->Specular.r = 2.0f;6 [; s; O* \. L& x/ S; w
                        pLight->Specular.g = 2.0f;
6 J$ k; r; ]8 {                        pLight->Specular.b = 2.0f;' \' S) p% r3 @& ]
                        // á?oˉ
* j% G( }9 U" M& e6 U                        pLight->Ambient.r  *= 1.0f;
" a4 y% y' F+ L* x0 N                        pLight->Ambient.g  *= 1.0f;+ V8 g( m: [- P6 _
                        pLight->Ambient.b  *= 1.0f;
8 ?! ]. g. Z- h: j#else //__YENV, s: U8 v) ?1 C0 u3 B4 W
                        pLight->Diffuse.r  *= 1.1f;; k% c- a- I1 w' b) M# I
                        pLight->Diffuse.g  *= 1.1f;$ |1 m7 v% u- K9 Q' e+ ?4 k
                        pLight->Diffuse.b  *= 1.1f;
  P  [+ E* J: G+ I6 W                        // oˉè* ??à? 7 U/ j( U3 z/ }/ O
                        pLight->Specular.r = 2.0f;* ~% K6 e) l, U& B, F# v) S
                        pLight->Specular.g = 2.0f;
! [1 Z' f% v& X% _! M                        pLight->Specular.b = 2.0f;
4 a0 {4 q; c9 _% {! P! s  s: P                        // á?oˉ
9 A; R4 b, b/ F9 V                        pLight->Ambient.r  *= 0.9f;5 o& f2 |7 Q+ t; w: u/ A$ t* K, ~
                        pLight->Ambient.g  *= 0.9f;) k0 b; D/ \4 ]3 B/ d
                        pLight->Ambient.b  *= 0.9f;
2 ~5 N" d+ h5 b+ ^% e& D  W#endif //__YENV
5 }  a2 |# b/ ]! F( J4 q2 Y) f                       
1 c5 M2 n( m5 s/ Z/ P, ~4 D- L                        memcpy( &m_light, pLight, sizeof( m_light ) );
. X  {7 v/ y( |% n1 b1 l; I                       
; H- o7 ~" I$ I+ U5 V7 Y$ H                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);1 x; C+ x; J; _- v
                        D3DXMATRIX  matTemp;: i2 f5 O, G# d$ x2 M8 ?8 D: Y: M
                        static const float CONS_VAL = 3.1415926f / 180.f;3 A8 s+ |' d8 S, \
2 ?: k2 R; @; I4 x- H
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
7 C: d$ k- j+ F# X  f3 u4 M                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);* D. g+ o6 T" @) r3 _
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
3 c% }- @- c" \; r                        pLight->Appear( m_pd3dDevice, TRUE );* Q& O2 \7 @" I
! }# d+ p6 k3 r( [) U& \9 H
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
& C& Y; r, w2 R# L1 E                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
$ o. E! e5 h) O* f3 u2 L/ x                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 \( k& X# L% \4 P' e% G
5 g) ~2 d1 A! _& J8 F$ w( R                        DWORD dwR, dwG, dwB;
# V' \2 F1 h2 h                        dwR = (DWORD)( pLight->Ambient.r * 255 );
, g! F" A& D% ^0 l8 W7 C! t                        dwG = (DWORD)( pLight->Ambient.g * 255 );1 N- I: J/ U1 v( o5 A2 l) q; g
                        dwB = (DWORD)( pLight->Ambient.b * 255 );$ p5 r, V5 H1 _4 ]% n) R+ o  }
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
' E1 C* @1 p- \/ _                }* p5 l: p5 S: N8 e. ^
        }
8 a* k3 ~# G% J8 c( q  d. {
+ |& P* p5 D" ]7 j        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );" E( n0 v) f' K* P9 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) );! u) P  q; \3 A. y8 T; F$ b
        ::SetLight( bLight );; v+ p0 p5 O; X' u( o2 x
3 |, Q- I( c8 h
        // ±ao? ?D?í???ó á¤à? , r4 m( l: e( I/ G5 g
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
9 B! A+ N: Q4 \0 {, x  A2 L        + Q$ }# ?' n! [" ~
#endif // not WORLDSERVER' _& P( l$ J% {
}* c5 I3 A( i, r$ ?
并更换
2 \, Z" Z/ l/ P# ECode:$ Q! w% |5 b2 y9 j4 p" v
__FLYFF_INITPAGE_EXT
8 u' D2 c+ t4 a定义4 ^' W" ]; E4 x" g2 {0 O( [4 Z

" Z5 K; h: C  h/ P
% S; R2 r+ ^4 M# I* u1 r% Z/ z  C: ?

2 `" B8 Q* S: z3 C" H现在终于删除我的狗屁加速...1 ]3 H( {6 ]# e: X
0 j7 c# S9 D% s8 j# f9 V8 n

- H/ @) H3 i3 i1 M
( P* [, }  }1 ?8 H3 n* y% a0 [1 g# j9 H




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