飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:; H* X7 b' b# n3 w
尾翼:* Z% [$ u9 l8 q$ W
! K4 @, c. ~& F
代码:
! Z: M! h8 \. A: n  _; }CWndAutoFood::CWndAutoFood()
! \, ?$ \/ @6 {{
: B5 M6 m5 h% C/ n        m_pItemElem = NULL;9 w0 A% B1 N. v+ z3 }" t
        m_pTexture = NULL;
* ]  T3 q" i$ C        bStart = FALSE;7 T- E/ r& U0 H2 n4 y( p& d  N7 Z
}3 e( H# z( o4 R  k9 F1 }9 h* A

2 u1 U# S# \3 f: {* c6 HCWndAutoFood::~CWndAutoFood()6 A4 K( D: B1 X- c( _4 I
{
9 U1 @7 l1 {! t/ i/ f% O: W, I5 Y2 P        AfxMessageBox( "AutoFood ist gestorben " );. ?* q$ N4 ?3 o& U) b
}
4 F2 O- Z; q5 N5 i, [) c4 wBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )7 H% R4 m" ?2 |; g- s" B& ]( r7 k
{$ H" r# ~# e1 i1 U7 [2 h* F8 e: V
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );# B, o# Q+ Y7 g! L7 N
}
3 Z) H, k( O) Y- w9 ~: B' `" e% P# Z# l$ c% F3 ]* D& w
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
% j$ j8 I; p& h, U{
- u# v* R/ g* c8 S) C& w        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );+ y3 P  M( i, \. x
        CRect rect = pWndCtrl->rect;4 ]& `6 }7 f! {0 s
        if( rect && rect.PtInRect( point ) )
( Q  L8 B( D% h7 p( v        {
; R9 n8 Q& m1 A* Z( ^' X! ~                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );! F% @" a! |, u$ _+ Y% P4 [$ J
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )" Y5 v/ e( \' D4 k! h6 \; J
                {. s* }0 c6 I# U+ L1 k
                        if( m_pItemElem )
4 s5 x4 j, v! H/ L" |                        {
+ v: E; R. t4 @5 e) [                                m_pItemElem = NULL;5 T# p8 l0 s7 F1 C- `  D% Z8 B
                        }
& y+ T' r1 V+ z+ n& a  ?                        m_pItemElem = pItemElem;
* A9 Q1 B7 g2 n, D4 z! K! v5 A  u  ^                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );: X- N9 k' t; R9 |/ _
                }else{
! {# H  ~/ d4 t% P* d% C! C" a                        SetForbid( TRUE );
4 P, H8 L/ i1 C7 [* k+ o; n. M- ?5 ^                }. `$ d$ ]  X: V* K2 ~0 g3 G8 Y4 {
        }else{
) a( q5 C; S) }' q) ]                SetForbid( TRUE );/ I: h2 S6 P  z
        }
* A: A0 j# T% o        return TRUE;1 G- i; x! d* O& z* G$ y7 F/ D
}
% Y7 x6 |' s5 g4 Z) \4 Q5 s, w0 h
% l& u- B- ^$ m' v! vBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
5 J& g. H& f2 C* o{* L$ A" f$ F- Z: ?+ N
        switch( nID )6 [: R! u' `! X, u  x
        {. y1 d, S6 {( s  x* L2 N' @* Z
        case WIDC_BUTTON3:* @, j8 q4 M& S+ a
                {
  a3 y0 e  A, J& o5 U1 f( v- l                        bStart = TRUE;
0 G7 Q3 |/ l# W' b) y" y- t, L                        break;) L( B, g  C) ~$ S2 v
                }+ Q' `/ T7 N$ z9 l
        case WIDC_BUTTON4:
2 M- k) ]1 V0 g0 W& T                {, J# X# ^+ y5 p
                        bStart = FALSE;$ j/ x4 t; o1 M6 V
                        break;/ J* M2 @' e! C( k
                }; T0 L$ Y9 }. S# d% N+ V! w. g
        }
! z+ v0 C$ \$ e) H        return CWndNeuz::OnChildNotify( message, nID, pLResult );
) L% S+ }- \1 Z- z" ~3 _5 Z; `9 Q}        5 }4 g- }1 [$ m$ [2 |" A2 {& O
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
3 G% M8 O) B1 p5 \- ~4 r{
! w' [2 k; g8 T) L        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
, l( ?( L8 v, }        if( bStart || !m_pItemElem ), c4 e' B1 t1 W/ Z
        {7 g0 c3 \3 O1 y* x8 |
                pBtn->EnableWindow( FALSE );
/ e9 q1 {" Z. ^2 h9 g6 W        }else* K- L; ]2 r+ G$ U) [/ _! W
                pBtn->EnableWindow( TRUE );% ~) {* n( i% A2 S
        if( m_pTexture )
  F; s# |" M3 [/ f+ u% O2 t        {6 b! _9 Y3 A% N
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! p/ S8 [* E6 I" X* d& M                if( wndCtrl && wndCtrl->rect )  k' W3 o; D/ z7 n$ c
                {( t2 F: [1 `. u, _( ~
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );, ?% `. r% n* L3 M* f, j
                }) C3 w# a; ?( e
        }
4 P% ^4 ?: J* Z+ N% h, A}
7 q" G- q9 h" c  M( s# x* Q$ x: j/ i" {
BOOL CWndAutoFood:rocess()
* R8 j9 s- |/ z7 [8 o& O" P{  I$ g4 [0 [, l* w4 ?2 K
        if( bStart )  R" l+ ^3 T' ~9 g* ^
        {, ^4 z: V0 ^) L# k+ K! S
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )( w4 C$ ^: w+ ]' {$ i. m9 u
                {
2 B1 i. k% U3 k  t1 S: i. n5 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() )9 g/ `% G/ ^/ }' l
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
8 J3 }3 E& U3 V                }else{' }# T- _! ?8 n0 G/ g' q/ K6 Y
                        bStart = FALSE;9 ]+ W6 ?2 ~( q  E3 q/ h
                        m_pItemElem = NULL;& _$ K$ P( z. F" R& \; W
                }
. U1 ~" |4 v5 M  x; u' C        }
( n7 k8 w' F) K4 P$ o# a        return TRUE;
) X# [9 T5 G" ~& q# ^}
3 O6 b7 }" Y' E& N- C  K2 N  a) u4 _; z/ F. ]6 r$ F
登录视频废话:
/ g/ M" ^/ L, @% B! v3 U尾翼:
' w. `6 P3 [9 ^( O! P) P+ A8 A5 H! D
* L+ x, c+ m6 V代码:
6 U  K$ x' l! L  e5 Y8 t  N7 G1 O
  U6 a. V! @$ V6 P8 Vvoid CWorld::SetLight( BOOL bLight )( V, [/ A. s  v/ c$ l- t; Y
durch) I& l0 L, t0 Y, Y
Code:" B$ r" k/ F5 U2 }
void CWorld::SetLight( BOOL bLight )  B" e9 I  t5 O" s( G1 _3 d
{9 N% z6 N) u+ i2 Z7 u
        //ACE("SetLight %d \n", bLight);
5 t' v+ k1 d5 i/ t9 d        2 N2 F7 B5 y8 W/ R0 w/ i
#ifndef  __WORLDSERVER 9 o) Q/ O9 o; T. M6 L6 o
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
& t: k+ C( j8 {' P& A6 t$ j7 k. {        CLight* pLight = NULL;2 b: v8 ^5 b5 z0 R. v

* w2 Q! g$ _6 E& b, M) |( @9 a        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );2 H  Y' H! q" G( H' [6 R6 m
; j% H0 g$ ~6 P0 d
        pLight = GetLight( "direction" );
8 ^7 J% @2 v" b5 N7 u2 k; f# D/ X( Z
4 Q0 e; m5 i9 {! @9 N( p#if __VER >= 15 // __BS_CHANGING_ENVIR0 ^' J# p# `. e9 ?5 ]
        if( g_pPlayer ){
8 B, X3 ~) z1 a1 ^& S1 z                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
0 {1 w  ~3 L/ m1 c* j4 q                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
+ B. e! {( V+ p, f* k& ^                {5 J" _9 J  D) X, b/ V' x
                        if( pLight )
; t8 l; R4 [' c4 ?                        {, o0 {5 O% ~7 n
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];8 R" n5 H' o7 }5 v  ^, D
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];- ^, {; d4 N& _0 y4 A
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
5 a3 }- r3 h: o$ Y' U9 s. {* l& U$ i, E# t8 G
                                pLight->Specular.r = 2.0f;$ K8 j. V+ N, l; }9 o5 A. `- ]
                                pLight->Specular.g = 2.0f;
5 L3 u, p% ^5 G                                pLight->Specular.b = 2.0f;
5 Y  J$ @# |' H       
6 @; i; h( k& ^5 o- g  @3 v. Z4 _                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];3 ]$ @& x6 ]  e  w: Q
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];5 p9 E# @' x  l' u
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
# l3 N' C0 `% n5 Y2 I0 P. [       
1 U5 t$ \; l) B2 L- p9 O* G                                HookUpdateLight( pLight );
* r% J2 k! ^4 _$ m- G  m
/ z: ?+ l, ~4 N$ E# s3 d& }                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 f/ z5 W! h2 b6 d8 Z                " Z" m0 v) Y% e- {' ]2 z9 _; {6 b
                                pLight->Diffuse.r *= 1.2f;8 R- t# V. q7 b1 I+ e. l* z
                                pLight->Diffuse.g *= 1.2f;9 [) z1 C( T( l& Y
                                pLight->Diffuse.b *= 1.2f;
' g% o  u8 Q2 U  Z8 X
' L5 Q! {$ }0 f8 |2 b                                pLight->Ambient.r *= 0.8f;
' H; N4 |! a! _# Z- {' |4 V* C                                pLight->Ambient.g *= 0.8f;4 J7 `  B; ?* F
                                pLight->Ambient.b *= 0.8f;
1 ~+ I: ]2 H3 @# f( `2 l       
2 _5 d- {/ b% D! R                                memcpy( &m_light, pLight, sizeof( m_light ) );4 @3 O1 Y  O; Y$ x3 \4 h, w
0 |, h4 |! ?" W
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);6 R' M/ x( C' _0 U2 b
                                D3DXVec3Normalize(&(vecSun),&(vecSun));* P: J6 n5 v0 S2 [( g9 P; v6 R4 x) m
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
3 }% c* i% q: P3 R( a                                 pLight->Appear( m_pd3dDevice, TRUE );
2 z2 F* I7 _0 e# O/ q                + h1 `8 d6 {; I# o4 Q
                                DWORD dwR, dwG, dwB;' ?- }: J4 n  [6 e7 {3 h
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
% b$ p2 G* f' {: v( }  G                                dwG = (DWORD)( pLight->Ambient.g * 255 );
# ^$ e; B' Q# Q: k: v" k- `, @1 Q2 D' q                                dwB = (DWORD)( pLight->Ambient.b * 255 );* F6 F; ?, e* f/ Z  a
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );; K' P8 H% X3 b- H! d* F
                        }7 c( ]% E$ |% \4 b9 Y- A
                }. w" c/ C( L" J+ u
        }; c3 O* A7 b: H: ?% l
        else
% I: c% y! \. g+ \2 }9 n& s#endif # O5 x1 c  l/ p5 y

2 K! O& v7 _& M8 z6 Y# U) y9 B        if( m_bIsIndoor )
$ l, ?5 U& D6 }8 M        {
% m+ h0 O, y: H1 W                if( pLight )+ M) d  B$ g9 ?) W0 w
                {                ( v, ^5 O1 ?/ U
                        // à??μ oˉè*
! w' P: w# p! [" p$ N" s                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
3 ^+ {1 h8 x9 G8 K! V                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
* w" l3 s+ j$ Z; o& Z( O                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;" u9 b' B& L' y. ]
, U1 N! c5 t: }$ O+ P# D) W
                        // oˉè* ??à?
* h( Q/ o  {1 s. f5 j% j) m% \                        pLight->Specular.r = 1.0f;
  ?' Z5 t- f0 N7 p                        pLight->Specular.g = 1.0f;/ |5 E" }2 A% J' c
                        pLight->Specular.b = 1.0f;0 y6 R& @7 r  g; j8 m1 K2 c8 A
                        // àü?? oˉè* * |& n- @* v- w" x: _7 a, s( |
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;" O/ o3 h0 T( @9 Z; L% R4 j& p
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
5 C6 E% B$ [+ ~) n                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;' h2 t9 r  `( f/ ]

6 H) R* o( N& s                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! q' C6 L& I/ W                        {
" ^4 E# @, S; l# T                                pLight->Diffuse.r *= 0.6f;
# q" G5 \# v% [* X( h9 P  m                                pLight->Diffuse.g *= 0.6f;
& g3 @* y( B& P* D                                pLight->Diffuse.b *= 0.6f;# g" y$ [" \* t. F
                                pLight->Ambient.r *= 0.7f;. B/ C3 }! k4 U# e1 ~/ W8 r
                                pLight->Ambient.g *= 0.7f;% G: m. @+ y& G+ }
                                pLight->Ambient.b *= 0.7f;, `% `  B. p4 b6 L' P
                        }
4 V* c; [' T: X/ t2 k: F6 W% l! k
: }6 e% a& }6 Z# G3 h#if __VER >= 15 // __BS_CHANGING_ENVIR
( X% k+ ~1 C, |, p                        if( g_pPlayer )" |' f& J6 m5 Y
                                HookUpdateLight( pLight );% p" D% y) U' D7 D+ e+ E0 z
#endif
- ^5 a* ?+ U8 G( Y: T                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );* h0 d: N6 h3 k# R% E

: i. A8 r) A6 B7 L                        pLight->Diffuse.r  += 0.1f;
1 c5 k" G( a+ t3 m4 `                        pLight->Diffuse.g  += 0.1f;4 ~# k8 S$ n4 s
                        pLight->Diffuse.b  += 0.1f;
1 I/ [: i/ s) k                        // oˉè* ??à? # h" s/ ^/ _5 _' U' h1 N
                        pLight->Specular.r = 2.0f;4 A5 Y/ P9 Y! ]& A# c. n* o( E3 F
                        pLight->Specular.g = 2.0f;4 |" i. Y4 ~7 d
                        pLight->Specular.b = 2.0f;
* r/ I8 G' V1 \$ |* l% V/ b( X                        // á?oˉ
' c2 G7 x1 ]2 _& [* ?. k+ {                        pLight->Ambient.r  *= 0.9f;$ R& D7 ?$ Q  r" z  m4 U8 m
                        pLight->Ambient.g  *= 0.9f;' z" {' R9 c- Z
                        pLight->Ambient.b  *= 0.9f;
. l/ ]0 m( i- B! U2 q, @& O
7 P3 M, o) g3 [1 _. C3 g6 b                        memcpy( &m_light, pLight, sizeof( m_light ) );- s% _: G$ C% u
                       
$ {0 A2 k, f( c# r7 K                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
% z- r. b4 f5 j9 t# L0 D9 l4 X7 r                        pLight->Appear( m_pd3dDevice, TRUE );
2 ]1 c: [$ r9 |0 j' r, ]        ; \- i) ~3 A2 W) c
                        DWORD dwR, dwG, dwB;
" Y! _4 u% S) w+ q                        dwR = (DWORD)( pLight->Ambient.r * 255 );
) }6 p& s  p3 O0 ~                        dwG = (DWORD)( pLight->Ambient.g * 255 );$ g4 q5 Y' f  q( ]$ a3 d6 G6 o
                        dwB = (DWORD)( pLight->Ambient.b * 255 );5 o: E1 \4 t+ e" @
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ O- b- `, f: S# B0 d4 b+ i                }
. }% O  W) L' w1 d% X0 X" M; _        }) ~1 a) |9 y5 S) x5 z" I. L0 B
        else4 D/ }9 A0 u( s% m3 a+ s
        {, B2 }3 Q1 }  k7 E3 w+ N
                if( pLight )5 S* v3 m8 s) d5 U$ c4 I
                {
: s1 l4 @: z, R- [- S: j$ U2 S                3 B! ~$ u. x1 @( E+ ~& M
                        int nHour = 8, nMin = 0;9 o- e  P% y0 @4 y, e0 O) u
        #ifdef __CLIENT, M: n( F& d# R+ U* S* w
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. ' T' @/ v7 T; F. G4 F
                        nHour = g_GameTimer.m_nHour;
& V: D# \9 Z4 [: Q" f                        nMin  = g_GameTimer.m_nMin ;
  Z, d5 L2 c- L  C2 B; b7 \        #else
4 P; J/ t+ z5 U5 ~  g* c. R                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.  G8 g' t- T0 S% C' N
                        if( m_nLightType == 1 )
/ J# h6 O  L8 x4 ^, H                                nHour = m_nLightHour;
3 m. t! f' m4 b- n( V0 x9 C        #endif; ?2 t1 O& B4 _. p) B$ h# t; m- I
                        nHour--;
5 Z1 f% ~( L5 E7 k                        if( nHour < 0 ) nHour = 0;' J, y* F: N; Q: C% N( {
                        if( nHour > 23 ) nHour = 23;6 a! {/ Y4 R' O+ P3 `1 D& K8 H# @$ n
* [2 e! J! I& V, T$ H/ s( b0 u
                        //if( m_bFixedHour )  }) ]; w) C9 Z7 k' y4 |
                        //        nHour = m_nFixedHour, nMin = 0;, f) J, w# O) i4 @" v) g& o5 p
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];. b" E: d" O7 a. @$ E6 y+ r' o
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
5 l+ c% P, `. q8 w6 x+ a
- n2 R2 v( v3 @                        //m_lightColor = lightColorPrv;
! ~( I' \7 q. @/ J7 n9 G8 N                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
, e/ w& Q7 U% X2 p* f) }                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
4 _+ ~1 p2 n2 ~! U# F                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
# O1 \) {$ M$ ]2 y) Y                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;9 f; |( L6 a) s% s- ~1 l! @
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;3 `9 m: _8 x8 ?9 z) S+ x
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;" c4 R$ c5 h8 J4 l) ]" s4 X$ k: `
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
1 k3 j8 V6 Y. z2 Y' s' |# c  d- O/ t# l5 f6 Y
                        // à??μ oˉè* 3 z4 ?7 k/ @% L9 }! H' n
                        pLight->Diffuse.r  = lightColorPrv.r1;  D) U, c2 L) i
                        pLight->Diffuse.g  = lightColorPrv.g1;
4 o! l( V. N7 r% L% w1 x( t                        pLight->Diffuse.b  = lightColorPrv.b1;0 R) w4 Z( L* ~: X) ]* w3 r
                        // oˉè* ??à?
) l  i* R7 s" v6 _! ]                        pLight->Specular.r = 1.0f;
* `& _2 j' J" D! @5 y% C6 @7 |                        pLight->Specular.g = 1.0f;* @2 S  y1 ]1 P$ P; U/ m, y3 {
                        pLight->Specular.b = 1.0f;
: u/ m- ~% O& p3 ]# I- l* G, O" |  U                        // àü?? oˉè*
* B; D- j# w$ h1 p2 g/ L& }/ D3 I; l" F                        pLight->Ambient.r  = lightColorPrv.r2;9 N  o+ \( `, L$ }( z) h
                        pLight->Ambient.g  = lightColorPrv.g2;
. r' a% J- K9 M+ n                        pLight->Ambient.b  = lightColorPrv.b2;7 q* ]; z% P: Z- d0 Z) c
  l8 c4 r) @9 f( E$ R9 ], M" b# |
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??., a& G* ~+ p! c4 _2 E
                        {' |7 @. ]( B' n- Q& ~" V9 ^# u
                                pLight->Diffuse.r *= 0.6f;
! D9 s& U3 p) x5 r5 G+ X1 C& ]+ X                                pLight->Diffuse.g *= 0.6f;5 D, v) R& q5 \3 k: C
                                pLight->Diffuse.b *= 0.6f;  F8 c3 q5 @6 M; _! W
                                pLight->Ambient.r *= 0.7f;
; X( |$ S/ E0 t& ~! t4 W                                pLight->Ambient.g *= 0.7f;" a% e$ F+ a/ d; e
                                pLight->Ambient.b *= 0.7f;
1 A/ v) Y% }0 }- }, l! |* F                        }/ K9 O0 @, X% @9 ]" c* u
                        : S8 f! V7 S( K
#if __VER >= 15 // __BS_CHANGING_ENVIR
, h9 {5 ]: G) U- V                        if( g_pPlayer )3 R& l/ i3 ~* a: n* T3 u& S
                                HookUpdateLight( pLight );
1 X% t5 g" U! }, r! [) e#endif7 M5 Q$ y. v. E- A$ r& U
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );; i2 O. M$ i+ N  Y3 t; G0 R

& p5 [+ r( n1 O5 B) r- t+ T0 c1 v#ifdef __YENV
8 O6 f5 b- w4 m& w, l4 p                        pLight->Diffuse.r  *= 1.1f;, u7 _4 C7 k. t1 g/ Y3 z
                        pLight->Diffuse.g  *= 1.1f;
0 m9 I( A4 Q9 }4 U                        pLight->Diffuse.b  *= 1.1f;
% ?. g. p# a0 B1 v. R0 {% [                        // oˉè* ??à?
5 w4 l. x, I7 C7 I( L( C1 F8 [                        pLight->Specular.r = 2.0f;5 m# o% x  C# T& ~  Q- R3 A
                        pLight->Specular.g = 2.0f;" f& j. i8 g. `" i* f& _6 X# h
                        pLight->Specular.b = 2.0f;3 _( U5 ~' Q6 s  c' M
                        // á?oˉ + t+ v' A, z. Z5 [
                        pLight->Ambient.r  *= 1.0f;2 ]1 `/ D  ~. V( ~0 S
                        pLight->Ambient.g  *= 1.0f;
7 G2 I6 k* r$ \  Q. b                        pLight->Ambient.b  *= 1.0f;
( R8 w1 |1 R% M+ d#else //__YENV
; K2 q! ]! |, u5 X+ W                        pLight->Diffuse.r  *= 1.1f;) w+ @( [2 K7 T/ t2 x$ i. P3 H
                        pLight->Diffuse.g  *= 1.1f;
' K7 D. P  r2 o                        pLight->Diffuse.b  *= 1.1f;( n9 w. _* C  q8 @
                        // oˉè* ??à?
0 |1 l$ W) ?( B  |9 X5 u) J# L                        pLight->Specular.r = 2.0f;
  o# ^5 z+ W: d' b                        pLight->Specular.g = 2.0f;" F( W8 S, H0 e4 x  |. |
                        pLight->Specular.b = 2.0f;
0 p2 ^" N. C9 @  P                        // á?oˉ : d7 M/ z  F9 i) J% M$ S3 H9 `
                        pLight->Ambient.r  *= 0.9f;
) F4 I& @; o0 Z" z                        pLight->Ambient.g  *= 0.9f;7 r5 S; O  G0 Q4 k+ M
                        pLight->Ambient.b  *= 0.9f;1 j6 I* ~6 w7 V- G) x2 S( t
#endif //__YENV
- _- m6 y6 E  k8 O/ l                        2 |2 F' A% z8 R
                        memcpy( &m_light, pLight, sizeof( m_light ) );3 c# ^+ w# {6 r# V0 d$ p, Y
                       
* N: _7 j) H( Q, q! }3 H0 ?                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);1 s& g7 E: n) v: r" \
                        D3DXMATRIX  matTemp;
& y* [0 ^, B+ Q" ^                        static const float CONS_VAL = 3.1415926f / 180.f;
9 k- O2 R" j" |8 ^
# s3 a! w( B6 W                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
; F# e$ ?, A/ _6 Y# B4 j                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);' d( A3 l! U4 V
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
7 f; M" H9 F% X                        pLight->Appear( m_pd3dDevice, TRUE );
7 J" t. S# N4 q0 n; I9 j: ~( P* O5 X6 Q& m* v: ]
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
/ P, [& w* v/ S5 M# W: @( [! \, D                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));1 S- V& a3 `  ~
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 0 U! [  k0 s5 T9 ^  A& S3 T) X
* X0 U7 N  Q0 V- i/ F$ E- z
                        DWORD dwR, dwG, dwB;) y4 C5 I: @2 Z. G6 C/ @
                        dwR = (DWORD)( pLight->Ambient.r * 255 );  V) M! x1 O4 ]. X, @( p6 G
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
: X% }4 V2 B) X+ A8 H4 k                        dwB = (DWORD)( pLight->Ambient.b * 255 );& ?. l, U5 \! J4 f$ Y: @
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        & Z) E# J  C% t6 e1 s( {
                }! Q$ a. v) t  B6 ?, F. K  ~
        }5 w. T6 v& Y0 P
9 v  T5 H* x3 i, @
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
% R1 }7 l) \' i7 M# p" x6 z9 _7 `        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 P, q: G! V8 [) W( A+ Y. h        ::SetLight( bLight );
' U+ Y+ R3 I8 X. O% j# U
5 c: f3 K" ?7 X* r! p        // ±ao? ?D?í???ó á¤à?
) h- ~  D. `4 p$ o        m_pd3dDevice->SetMaterial( &m_baseMaterial );6 H+ B% E1 ?) w0 n9 S% R! x
        ! V$ e; K* o8 L- j, [% `5 A
#endif // not WORLDSERVER8 i( t. P0 f7 X/ U/ [7 ^& R
}
) z, b8 d4 V" Y9 {/ e: O* [1 r2 ]并更换
2 k0 L! ^& R( E/ {& z; l* sCode:, ^5 C* p$ o! n7 m
__FLYFF_INITPAGE_EXT
4 u3 H% i1 g+ }+ o' T定义
: J+ P" }+ M7 f2 u1 q; m: Z# ~: }, y

" P; N) _) _/ }! y
: A/ D3 r' K8 }" B3 `) h, }& @$ K1 d8 g1 l6 w0 g
现在终于删除我的狗屁加速...
% b' ?+ v1 l. w, N" P* s
$ r; V- E7 K, i: d; u& C7 }8 S
& c7 C' d, R! c1 O
& H" j; O5 b3 S1 H' ^# c




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