飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
& G3 b' f5 S& Y尾翼:
; t" V1 R  ?) [8 Z
/ u1 ?( K  g/ N4 F! b2 `) Y代码:
; T( G* K+ g, S6 U3 v- ECWndAutoFood::CWndAutoFood()# H4 z# o; ~8 T
{
) I0 K& U3 \+ K. I( d        m_pItemElem = NULL;
1 [. x2 f8 E0 o0 o% g        m_pTexture = NULL;
: T$ v0 K/ V" e8 X" O/ F# I        bStart = FALSE;
& j) n  {5 M; u% c& C; Q4 y}" o3 \- Q! l  Z0 G0 s
2 |: E- r7 ]( ^: ]9 p* ]
CWndAutoFood::~CWndAutoFood()
& g6 U7 z$ D8 `9 X" _0 M  r7 n{* N4 Y# `, D& L1 t
        AfxMessageBox( "AutoFood ist gestorben " );
8 `; ^6 V$ E/ B6 H" r6 J+ ]3 x}
# \5 ^, L- `4 m9 }! ~$ hBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType ). R6 N) {* D; t
{% [! z2 r* ?/ k! m4 X
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
( j& a9 @$ A( e) j) [- t. x6 ]}$ ~9 [5 C  c) Y6 _
1 o* }8 Q" d5 X" `
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )- t: P  G8 ~' [) [& v# h
{
7 v) Z( E* h# C# K; P        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
7 F2 j0 B1 @# d. N% u8 e$ c        CRect rect = pWndCtrl->rect;
' z, b" D5 X$ e- q4 s3 \/ y        if( rect && rect.PtInRect( point ) )
. C% ?3 e4 r- ]  B( X        {, [0 S- s/ ^3 c
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );3 O2 c- i! u& i$ ?" x( J( R
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
% _9 K& ^' W6 f                {# s5 P& E; r- t4 H
                        if( m_pItemElem )' {% O- L0 ]+ O0 o- g
                        {
6 c/ u# g1 D; q/ C* {  b6 `- t/ q                                m_pItemElem = NULL;
; N: Q+ f# d- p4 G2 T( a                        }+ K/ H( U$ L* h: E2 j/ r
                        m_pItemElem = pItemElem;+ N( }$ F( K: H  H( B) E; M- v
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );% Q( z. J- I8 p
                }else{) c# Z/ C8 n3 m" O- H
                        SetForbid( TRUE );
- f' t. w3 I0 s& N  `                }) Y2 j  {' z% I( g1 k5 y7 a4 Q7 c
        }else{  N" B. `/ m# C0 x" ~
                SetForbid( TRUE );
+ T" }2 ~( ^3 w, O9 D        }
$ p$ t. K& \( {3 V" G        return TRUE;
; Q  T( b1 l0 X/ i}
( @/ R# H6 b- e# K6 J3 T" b
, t8 V7 R  L( n0 _: |BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
) x7 t4 w- b3 I2 d{
5 Q$ L5 }1 w$ I2 o0 r        switch( nID )$ N: F) [6 l& U* E' y* A+ Z
        {' {. ]3 d( R8 A( q; N# m/ {3 n
        case WIDC_BUTTON3:9 |' w8 m% @0 G6 `7 j, V) [. i
                {2 D) \: t5 e4 ?; r# h" R
                        bStart = TRUE;
8 t" o0 l1 E+ j1 l' ]2 }- X6 `* d                        break;
: m2 y3 ~" a: v7 M# t                }
- v8 h. k0 z, g; V        case WIDC_BUTTON4:8 x( C0 P8 d8 m, r& `( M8 _* J
                {  u3 _* l- x+ ^4 t* |
                        bStart = FALSE;& i, `9 ]; \# s
                        break;
$ }! T5 \( P! m- z( g+ X                }
* r# M, r! @0 S# O5 c7 O        }2 {/ }1 J' ^6 g5 [* k! X0 A
        return CWndNeuz::OnChildNotify( message, nID, pLResult );' |/ e3 o9 ]* X1 W8 h: t
}        / R6 D7 g7 E1 Y' n) g( j' Y
void CWndAutoFood::OnDraw( C2DRender* p2DRender )  I0 ~% {$ ?3 e. N
{
: c0 D6 S7 f# J1 V2 X, d        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );" [* x. P" {; g; G
        if( bStart || !m_pItemElem )
+ |2 D& i4 }) u. O        {2 h: r  e8 o/ M# }: M& \0 D
                pBtn->EnableWindow( FALSE );
* {  d* u+ K+ H        }else
3 e, f* h9 M% I- _( V: F                pBtn->EnableWindow( TRUE );. b1 r+ J$ z2 w: q4 u9 e' w1 Y
        if( m_pTexture )
# y7 T, L8 l* a. C/ n        {
+ N6 @$ f" E6 v                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
) X+ Z$ @( R, F0 }% ^5 T  A                if( wndCtrl && wndCtrl->rect )" A5 q! L5 Q) `
                {% f* v! S5 }0 s' v1 l; {
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
  G5 f' a0 N0 t2 i6 {                }
% ^4 ]- A1 m9 b8 M        }# s5 z5 K2 ~# _2 q6 C
}
7 n: Z4 L: y2 \( x/ F  C/ l1 k0 V; s0 d: l0 d0 [7 S8 u9 X2 N
BOOL CWndAutoFood:rocess()
( r$ P/ m% m8 Q& t) O& v1 T, A4 T0 J{
' G4 m* s* f: U        if( bStart )
  i# v$ v, x- ?/ [; L! `        {+ b% a; J) C+ ^4 l) f4 d1 w4 `4 r/ S
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )) m& i5 q7 f& K8 A  B& ~: }
                {& O! U- i( m$ x  r' M9 G
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() ); J/ D9 G. Z* N( n9 r: e
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );( N8 M9 X- ]1 c
                }else{0 U" q% Y9 V6 e/ Q4 @9 H
                        bStart = FALSE;5 P7 |7 B% G! X
                        m_pItemElem = NULL;& J( Q" S5 q' O: W/ G8 r" s
                }
1 B! z* k" r  W+ R1 d        }& |) E3 T3 H, f4 @5 h: o; h
        return TRUE;6 N0 Y; e  F% N. V7 u8 E1 F4 @& E# \
}! u  K' N% S. P4 r# k/ K
, g1 D, l' l. `( j" W% h
登录视频废话:. N  s+ y$ P$ F% s: [$ W
尾翼:
9 j  D; A) f- }
# |9 }; @, c. z# J7 c% z$ ?代码:: o1 [% e3 X% ^$ o' `& b3 |/ P

/ t' r- S5 M" z$ O/ g0 ]void CWorld::SetLight( BOOL bLight )
6 l9 ?  x. O2 v4 t! _0 w2 Tdurch9 t( |% k8 e% P7 n% I: \6 P
Code:. A! @/ j3 H+ v$ s2 P; z2 R3 j4 c
void CWorld::SetLight( BOOL bLight )4 @1 E* s8 ~& Z5 y6 n
{; S( W; w/ i4 t& s$ n  A
        //ACE("SetLight %d \n", bLight);
% J# k% d: g+ K+ @        ! R/ D! i& n5 {) ]5 i7 S
#ifndef  __WORLDSERVER
7 s2 E# `) W: b        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);( X1 U5 F: @1 g2 W7 S
        CLight* pLight = NULL;
/ s6 f% w6 M) K. c1 L% P" C( ?7 @, Z6 G3 M
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );) |" F, U9 B! f- t$ I$ e' u

; v7 Q/ T- w: z        pLight = GetLight( "direction" );
$ u9 V9 I: r( D: ^. R' m# k0 z8 w" e4 d9 O& S" p5 G
#if __VER >= 15 // __BS_CHANGING_ENVIR8 [1 H1 L1 n3 `3 i. [8 r4 \+ C
        if( g_pPlayer ){# P, c8 v2 U+ K! ?8 a
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
* n( v; c$ k& H                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!8 k6 p: ?  S4 ]3 W5 @9 l
                {
. E) R& Q# n6 t0 Y, |                        if( pLight )3 q2 N5 |! ]) _) e8 A7 X2 ~* f0 w
                        {
: k. f1 Y# y7 q* J, T* F9 p                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
8 c, v& r( z& Q" x! b; |' n                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
4 y! }" `% u! n% b- y% C& J+ P# P                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];8 J, p' K, z0 z4 j6 {
" k; e- Z0 x1 g- Z2 t. M
                                pLight->Specular.r = 2.0f;& W  o# y& H7 f+ h- {0 H
                                pLight->Specular.g = 2.0f;' ^! K; i2 k7 P( r; {& r( i+ g
                                pLight->Specular.b = 2.0f;8 A! e* ?2 s* I3 @1 q  ^5 l
        % ]# p1 q& C& g% D
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];6 x9 ]1 ]1 m8 I! R, D( {8 t
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
; _( _/ i, L0 G' P/ V" ]; _& W                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
" d$ x9 H5 T6 ?9 ^        $ m+ p% |! I' a1 Z
                                HookUpdateLight( pLight );
: F; N5 \, x. D% [. \* ?; s# e# v% S. @1 o7 {$ S
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );( e8 M2 R5 Q- E1 q5 o: t
               
0 ?3 ^  P3 P: `4 i8 O, S                                pLight->Diffuse.r *= 1.2f;) x: m9 R; F/ h/ v- l* V8 \8 [
                                pLight->Diffuse.g *= 1.2f;
" K8 D  J0 E7 d) W; V& \0 u                                pLight->Diffuse.b *= 1.2f;
6 i, e- D" U5 P, c- ]$ \7 k& Z1 x+ P& B* K' v
                                pLight->Ambient.r *= 0.8f;
: X$ p: g6 ]5 i% T# {, j: f0 ^                                pLight->Ambient.g *= 0.8f;) }2 H6 m9 n- J5 ^: b8 N% o  p  {
                                pLight->Ambient.b *= 0.8f;$ ?0 |5 C1 a$ e7 o  Q
       
, h# t$ n5 V/ V& `                                memcpy( &m_light, pLight, sizeof( m_light ) );
. ~' ~9 O& S4 C% Q
7 Z( H$ w+ J3 m% M1 c& w# }                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
7 ^5 F, d3 D. c4 M" g7 u. [0 q* G                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
3 n8 m- R: j6 }% i% u                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
- d- z7 H/ m/ }                                 pLight->Appear( m_pd3dDevice, TRUE );
% o( c) }% O, ~6 p               
% F2 j1 h) ~' c                                DWORD dwR, dwG, dwB;7 l# ]8 p1 V! t. [/ U
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
! t* z$ K) ?; C# g                                dwG = (DWORD)( pLight->Ambient.g * 255 );
/ Q# m7 A3 j; |* L) l' g; c7 _/ \7 L  G                                dwB = (DWORD)( pLight->Ambient.b * 255 );
6 L8 r6 g0 F  k0 Y# R' v6 L                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) g1 a* [4 [* D. M9 V" K0 `                        }  F$ v, N( Q, T" `
                }
' S; u, ?! C( H( ]        }6 w1 f0 S. W6 k6 S' `- v. H3 t
        else5 {3 f& ?. m: V3 _0 y' N+ G
#endif 3 v% O5 ~9 l5 r9 M- z8 k1 B% v

; J4 I& s, j2 J+ Z( n7 _        if( m_bIsIndoor )
, U# W! g; u& q( `6 }        {
8 q! D- a# E! \3 j7 K# Z                if( pLight )2 e+ u' E4 o- {; r9 n/ d7 |
                {                0 U2 k7 @1 ]# Z
                        // à??μ oˉè* 4 A( `: F' l4 j& l. r) L
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
' h. e1 a. m) a) b                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;7 m" Z/ @. M6 g5 `; ?) ^
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
* z' l3 q2 _! F, `. C& x1 U0 V) @! M2 U
                        // oˉè* ??à?
6 x( v) V' }# t+ O7 W' P                        pLight->Specular.r = 1.0f;6 m& l3 [% ~, w/ E& V/ @8 ]+ x
                        pLight->Specular.g = 1.0f;! p% c8 v6 r& x9 Q' L
                        pLight->Specular.b = 1.0f;
: N5 u! n* u+ K7 @                        // àü?? oˉè* 0 c4 c0 ]( A1 k- Z: _' X
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
$ c. _! D& ~, ?9 M5 @; R* N                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;8 e; w4 V& p( W4 s9 B5 a4 {
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;/ V" x. J( D4 a" x4 `" y* D" `

& z+ n4 p6 H* g% p3 ?1 O' {, p6 q                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??., \6 u( k1 V/ I$ x: f/ V8 y2 L
                        {
5 l- |; J6 R8 y% t. \+ k3 _3 d' V                                pLight->Diffuse.r *= 0.6f;
5 F( q/ J+ C/ G: ?& @9 ]5 W, D1 O                                pLight->Diffuse.g *= 0.6f;
+ K. ?' ~/ z$ z" l1 T& [                                pLight->Diffuse.b *= 0.6f;
2 P: T% b! O. n' F& b                                pLight->Ambient.r *= 0.7f;5 E) g( p; K5 v' P$ p3 m. J
                                pLight->Ambient.g *= 0.7f;
  a# \  _) _2 E" h+ t" e                                pLight->Ambient.b *= 0.7f;9 z& z( a4 B! p& w
                        }  E  c% |- G4 r4 k
9 I# m& L# F9 \9 q& \
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 `5 r4 H" i2 Z. `. E6 F                        if( g_pPlayer )  Y' @5 ~) G1 ^+ E. [  M4 m' e
                                HookUpdateLight( pLight );3 u/ m# H. g3 @! n+ d2 E/ m8 m
#endif1 ~- t. l& v8 o, H# W% _
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# ]/ y1 d1 F! H; Y- p( o4 _9 ]
8 R% M8 p7 ]8 z& D8 \                        pLight->Diffuse.r  += 0.1f;
: q$ s% V8 {/ v! x. S0 }                        pLight->Diffuse.g  += 0.1f;: w/ @, q9 i) V$ Z( N2 K
                        pLight->Diffuse.b  += 0.1f;0 W3 [9 @  X2 f3 W7 T0 ?& o
                        // oˉè* ??à?
; J7 w3 ?! N8 A, \* o                        pLight->Specular.r = 2.0f;
( l: ~/ q" ]' ^& G" x$ H                        pLight->Specular.g = 2.0f;) M& X) e- B; u* _
                        pLight->Specular.b = 2.0f;
# E  U  s/ @7 @                        // á?oˉ
" T/ Q. h8 L2 e6 l0 _3 h! r, c                        pLight->Ambient.r  *= 0.9f;8 g+ i4 [0 J# Q
                        pLight->Ambient.g  *= 0.9f;' k, d' F% m+ v0 |; V" E
                        pLight->Ambient.b  *= 0.9f;1 p3 i( K( x! J. X1 Q
1 P4 k; s2 y' V" w# G" e; B& D: j' t
                        memcpy( &m_light, pLight, sizeof( m_light ) );8 Y* ]' `+ k/ V/ w/ O, {
                        / A! [" \) E6 x8 K+ j& t( m) d' u
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );" D0 H+ O' O. o' k+ j) r
                        pLight->Appear( m_pd3dDevice, TRUE );2 l$ K* g) B; A, [$ ~0 P
       
% a, Q2 U7 R$ e9 Z1 \6 f, y8 P                        DWORD dwR, dwG, dwB;
  p; D$ Q* f0 y2 G% q                        dwR = (DWORD)( pLight->Ambient.r * 255 );1 e" Y3 V: K& o2 f
                        dwG = (DWORD)( pLight->Ambient.g * 255 );8 ^) ]) }0 ~- D! C1 T
                        dwB = (DWORD)( pLight->Ambient.b * 255 );, P9 {' Y7 @5 X* s/ I$ n: `
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
3 H0 Z& c' H0 C% g                }: I( P" L  ]$ R
        }
: X4 [$ |4 }1 r        else
4 [( R$ m- K; V8 e        {
/ H8 \9 q7 N: I! i/ R3 B                if( pLight )
# H3 Z7 {; W% E5 K                {! s  }: ^8 M; P: ~7 I; l
               
" j$ B2 l* M6 q& k; R9 d                        int nHour = 8, nMin = 0;; {: }; k- g  t7 t- D  f" l2 E
        #ifdef __CLIENT
5 t1 T0 u2 w3 w* w2 Q3 \                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
$ e, n0 ?6 H: I; N3 r* ^& g                        nHour = g_GameTimer.m_nHour;+ q- B2 x; o  w8 T4 a
                        nMin  = g_GameTimer.m_nMin ;+ _# a, ?3 v# V+ a+ x3 T1 I9 X
        #else8 R" R$ i6 E9 P+ v& N% ?
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.6 ~# y! h6 d0 ]5 [
                        if( m_nLightType == 1 )
" h4 v- }  c% @: b9 i& V! c                                nHour = m_nLightHour;
* S/ J2 J% B/ @: d1 {        #endif4 J. R6 t2 F% f& h4 B
                        nHour--;
/ \8 t/ Z9 {4 j. Y0 v                        if( nHour < 0 ) nHour = 0;: p  S% p, S" c5 ^
                        if( nHour > 23 ) nHour = 23;
3 l- k8 ]/ n! \3 E4 p8 s5 F
# }$ ?! h' ]8 d5 c3 P, G6 h                        //if( m_bFixedHour ): }/ B: d! R; A" b$ `5 G
                        //        nHour = m_nFixedHour, nMin = 0;, ]$ {' v: i1 L1 e" u
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];' P1 v8 T" B  ^% ]: S- h
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
) h! Y; _# b# K+ K4 X4 k* d, J$ [$ u5 N8 W6 H
                        //m_lightColor = lightColorPrv;' E4 A$ z# w8 I2 Y- J, w
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;' K3 Y/ v$ @2 p, f$ o7 V
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
; x, b2 X9 q. k$ }                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;+ t9 Y3 I# L6 y% ~
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
+ Z% Y! O8 f% g+ z" q9 X. F& p* T                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;( ]9 d* w8 N. j% z+ X
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;+ b) e$ j8 @5 f3 b% w5 z# V
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
0 u% T1 H( |/ \9 ~: O
( C& b9 }: K6 A% l  b7 c* V                        // à??μ oˉè*
9 @( N: k/ v4 P; s1 ^$ v) B                        pLight->Diffuse.r  = lightColorPrv.r1;( \* o2 B& q0 x$ b) U
                        pLight->Diffuse.g  = lightColorPrv.g1;" P/ s! N$ P; b' c7 B" R: D4 |
                        pLight->Diffuse.b  = lightColorPrv.b1;
3 u. e; S# P5 f$ ~                        // oˉè* ??à? ( d  H! {0 }8 E- F; U4 }1 c
                        pLight->Specular.r = 1.0f;
7 Y! C! v( F$ _+ r7 _4 m, w, A# n                        pLight->Specular.g = 1.0f;
$ E: l4 G: \1 P6 N1 c6 n8 P                        pLight->Specular.b = 1.0f;
9 h8 U% |4 ?& J4 f7 ~                        // àü?? oˉè*
4 |9 c$ B- i6 s" ]6 E5 N, K                        pLight->Ambient.r  = lightColorPrv.r2;
3 r* D5 v$ W& z( b                        pLight->Ambient.g  = lightColorPrv.g2;0 |( L7 f8 k1 R) ]; y
                        pLight->Ambient.b  = lightColorPrv.b2;
3 G( a( }2 z' U2 _7 C% u7 M. o: u, F* }" U" M7 K
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
0 Q: q) n- b+ ?: K* N$ L" @                        {* \+ w7 {: N* Z
                                pLight->Diffuse.r *= 0.6f;) X4 U9 K6 ?4 Y; \+ U1 G4 l4 Q% ?- ^
                                pLight->Diffuse.g *= 0.6f;
" R+ L; f8 ^7 o, ~+ j, c2 \( t                                pLight->Diffuse.b *= 0.6f;$ T5 w5 I: Y2 ~9 _0 W1 a$ C$ @5 w/ @
                                pLight->Ambient.r *= 0.7f;" Y3 [0 V; T& ~  L
                                pLight->Ambient.g *= 0.7f;  M/ V9 P2 r  C0 F7 B! ]5 F( Q) D5 p  P
                                pLight->Ambient.b *= 0.7f;+ W& j  L/ t' @2 t# M$ ~
                        }
# X1 P0 \/ [. I& `: j                       
  U4 \8 B, d8 A; M6 E6 s" G5 ?+ k#if __VER >= 15 // __BS_CHANGING_ENVIR4 P; {4 o- U- H
                        if( g_pPlayer )
- b, A/ c, p% m                                HookUpdateLight( pLight );
# I% Y0 B# G% f* B. t#endif
# q8 Q  d' a: ]  l# R4 I& R                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );/ ^* s& k; e6 o  ~  O

. b' `5 N; \/ y! v#ifdef __YENV
. l" l3 |5 W* h) y8 u! o7 l5 b7 C; N                        pLight->Diffuse.r  *= 1.1f;5 l( d6 i: L1 l7 A$ z
                        pLight->Diffuse.g  *= 1.1f;' F. K9 |  x3 t8 n2 c
                        pLight->Diffuse.b  *= 1.1f;
: \* l3 p9 V* C( _                        // oˉè* ??à?
2 T% e3 L! e5 b' b                        pLight->Specular.r = 2.0f;% r) {+ S9 r8 q6 ~8 H
                        pLight->Specular.g = 2.0f;, j* A" f4 k& G
                        pLight->Specular.b = 2.0f;
4 X  o% E0 W2 p' f$ k! s% {* M                        // á?oˉ 9 W7 Q, S2 R" D7 h3 `6 I
                        pLight->Ambient.r  *= 1.0f;
; A, J( M0 u% L! h                        pLight->Ambient.g  *= 1.0f;+ h3 B2 J3 O: i
                        pLight->Ambient.b  *= 1.0f;- M- x) F: ?! w$ M* W3 M
#else //__YENV
* c' s6 ^8 T( i% F9 P( V6 Q' q$ M                        pLight->Diffuse.r  *= 1.1f;
; I. O3 u" Q8 z! O3 M/ _                        pLight->Diffuse.g  *= 1.1f;+ I7 d7 Y0 k* j1 [/ T
                        pLight->Diffuse.b  *= 1.1f;
/ g" g8 Q/ E6 j6 l4 r0 Z9 y* b- T                        // oˉè* ??à?
: c9 P4 T1 F  d# ]                        pLight->Specular.r = 2.0f;
) ]) V5 L( d3 J$ Y; O: s                        pLight->Specular.g = 2.0f;$ g' {9 c+ G6 R/ [4 r. p: N% d
                        pLight->Specular.b = 2.0f;: w+ ~* o* V$ z# b5 k5 h9 X
                        // á?oˉ
7 s' s: p3 }, x8 s& r                        pLight->Ambient.r  *= 0.9f;
- E( \' h; k2 o$ p                        pLight->Ambient.g  *= 0.9f;
  g& b, N: s6 Y: V$ C                        pLight->Ambient.b  *= 0.9f;* t  q! m" I, t* b7 m8 M0 z0 q
#endif //__YENV - {3 ~0 {1 o: F! |" F
                        ( |! c9 J# O) L. g+ J5 I7 e0 A% C. q
                        memcpy( &m_light, pLight, sizeof( m_light ) );
% @# l. g. v( }/ y+ y+ g                        / u' J8 d: B5 Z: n$ B4 U0 u
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
& \, a+ _* ~% F  T7 ^+ z                        D3DXMATRIX  matTemp;
4 B3 V, O; I/ j$ d& Q2 U                        static const float CONS_VAL = 3.1415926f / 180.f;2 P" k9 k) Z4 m! o9 r; o

) |; e. d/ e. Q3 v                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);( p4 f# Y9 V+ _5 J; G4 P
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
6 H, }$ e' j2 f9 X* M: r                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
5 ?3 V. \5 _# r  [, l) O% h                        pLight->Appear( m_pd3dDevice, TRUE );
' O2 i& n8 j; I9 ?! p
$ j# s4 y! x1 O: d                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);4 i1 M# @  u, K. Z- K6 d' |0 U
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));4 f% F' R' ?& v4 h7 ]  n$ m, h7 j
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ! C% J1 W/ i1 w# Y' @* _- }- V

+ E1 t! `5 {% i$ x; |3 w                        DWORD dwR, dwG, dwB;
! V8 J- C. U9 t; n                        dwR = (DWORD)( pLight->Ambient.r * 255 );# @4 ?5 n( h; v4 A& j/ t$ c) [- I
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
9 {1 H; f& D, B2 W- w                        dwB = (DWORD)( pLight->Ambient.b * 255 );
8 O! A9 x- a+ ]0 ]+ W                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
+ o2 w7 }% a( _+ \& }% k# g$ e1 T                }4 k5 I; `  G5 j' A1 @  @
        }
. B9 A/ t. ~; ^' H0 V2 L% _
* _2 K( \( ?9 H) `8 _% `4 u7 _        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );  R- M8 `/ P/ W: r' K" b9 k) L
        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 R7 W7 |% F0 N$ F$ k
        ::SetLight( bLight );
/ t, n$ y: j, @( P8 {* V* m/ z- r% ]5 l' ^
        // ±ao? ?D?í???ó á¤à? + L4 v8 E$ T5 M- _# ~, v; \% m
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
0 j$ g- W) N0 P6 c8 C/ \        ! F: G- [- |/ f$ W' z0 D; T
#endif // not WORLDSERVER
2 h6 o: `& s; S" n- r}
7 F& G' b8 P: C9 D& ?; E并更换5 C, y8 t" R2 [4 i
Code:
) p) `8 \, V3 X1 M# Y: K, y" r__FLYFF_INITPAGE_EXT
6 V: y% `/ E# T6 z0 G3 s定义
6 j; ?& i  k5 l0 ?2 k  ?
+ }9 g. y. f* i3 L" A9 B  N6 J, [+ c3 d4 c' {- C6 P
/ D" w, `( b. R- H

6 V6 I6 \: e7 }. G现在终于删除我的狗屁加速...
: h1 |6 u: w3 ~. V' P0 D
6 x3 D2 u- R) ]0 ]9 `/ n( f: ]5 @) Z1 o% E
$ [) ^4 ?& a0 Q" D9 k! s  t





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