飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
8 A* ^/ C# o2 W; c/ O2 O尾翼:# g' |7 F+ z9 w5 O2 r  A/ \9 e
  _1 N: `* b$ H* F
代码:
/ o, o, f9 d1 i7 k, _CWndAutoFood::CWndAutoFood()+ A& g6 ?, v* K4 t9 Z
{
) e% b/ s. R/ Z9 @        m_pItemElem = NULL;. f/ L4 c9 k- R2 J3 Z5 s) j
        m_pTexture = NULL;6 g0 U% v* p3 E5 X
        bStart = FALSE;
  I5 ^4 o7 `1 Q( o7 p3 S9 d}
5 I7 p. ~3 U" x) b
0 s/ E/ J! J9 R7 U, R* TCWndAutoFood::~CWndAutoFood()
( t  }- G  u! `& B7 K: Z/ G{
: }4 k% ^# D$ ^: y/ p        AfxMessageBox( "AutoFood ist gestorben " );
: s1 U" @  D8 i9 y/ |( f4 f}
8 m  w1 `' H/ `/ v0 RBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
8 `% P) q5 @2 [7 ~+ y$ o{
) {) N9 N3 }' {        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
$ r9 s& Z) J  C. j9 Q6 E$ B}* w$ m5 Y& F% G) J

. g% u+ ~. l6 x" ]  ?% S& WBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )' G; e% Q$ Q/ h
{
* t% U' R8 ~7 a1 Y+ G) n9 L: i        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );3 _( \) o6 q2 Z/ R% }! P- P# m5 a1 a, |
        CRect rect = pWndCtrl->rect;0 z( N7 A5 b7 M
        if( rect && rect.PtInRect( point ) )
5 {/ F9 v) m% e& c7 s7 c( \0 n  J        {
! a7 q/ q& n. U                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );/ |; F% [0 f+ l- J
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )5 q/ E3 E4 a3 s- ~8 V9 [6 c/ ?
                {
! R. q% V4 o3 k1 }                        if( m_pItemElem )
% \$ x# L2 z9 a9 g( x                        {
+ ?, q' n  R, y% W2 r                                m_pItemElem = NULL;
. g) R8 S* p% l7 {                        }5 u5 m9 A, ~" L! j
                        m_pItemElem = pItemElem;) a; G9 o* O& W
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
; K$ y  t  {3 v  z                }else{) E% b4 I2 p0 B& m# D
                        SetForbid( TRUE );8 o% [! c9 }" H( t3 e- ^
                }
3 E0 S" w. l( I+ h9 I% l        }else{
& [" b( H- f  r: y3 D6 h7 _                SetForbid( TRUE );+ u/ t- q' F3 a2 u
        }1 a$ X  _& M9 Z5 Q+ y& h' ^
        return TRUE;7 e% f5 W9 {( ~# G: f
}! W7 Q6 v( V+ Y
4 Z. C9 d- p0 ?! D
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
/ [+ X5 x# f1 _8 p  [. w/ V3 j{+ Q$ S: I" X* ^. Y
        switch( nID )
! A* C" ]0 o0 ^  s  u/ O        {) ^+ h1 D! F/ V! ^5 ]/ ^4 }
        case WIDC_BUTTON3:- W" S3 e+ B, T* |
                {# f6 s  q5 \% W; _  o+ O3 C+ ~
                        bStart = TRUE;
+ Y4 E6 s, Z8 Q% y                        break;
% S; g! W/ `- r) K- m0 g- E                }
! g9 k- u, U- g, O' i- _1 n        case WIDC_BUTTON4:5 D. ~5 Z' ~. Q# P1 l" [9 L/ t  {
                {+ @, M4 S( _& {& u/ @2 c
                        bStart = FALSE;7 `7 _5 Y1 l* r+ F! ^
                        break;
# G7 X) ?4 o8 J  v                }) l5 ^- m& H$ \+ a1 F2 R4 t
        }
! j2 ?$ ]% s. i9 n( {, c        return CWndNeuz::OnChildNotify( message, nID, pLResult );
) ]) B' @5 R$ i/ y}       
+ v2 g* n+ }( a- P; g( P/ {void CWndAutoFood::OnDraw( C2DRender* p2DRender )
. k" j1 w8 z, |{
$ ~1 W4 @  m7 H/ n9 R. i  D        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
: r- i9 R( A+ ~0 c5 ?        if( bStart || !m_pItemElem )+ z1 V$ @2 s  L% T8 E9 N6 ^
        {
- G' }% ?& ]  _& m                pBtn->EnableWindow( FALSE );* @3 E; c! }# f+ ^; n/ @# ]
        }else9 @5 t! s- X& C- h3 e5 {
                pBtn->EnableWindow( TRUE );
# `* r$ D0 |$ t/ U& k7 y        if( m_pTexture )' m- g2 W$ {8 v/ G
        {. `! X) o) w# T6 W" }
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );1 v" K) @0 ~/ @9 [
                if( wndCtrl && wndCtrl->rect )
# A0 R4 {2 H; v- j/ [- q                {
5 R8 r4 Y4 i/ `2 i9 l4 N' t                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );% i  T7 I" Z0 p  E# s% Q/ J
                }: I! v  S  F4 x
        }
% ^6 K8 A3 k: Q6 E4 t- z" ]1 x}" i7 |) v+ `5 Q4 _- B  m/ w0 T
  k8 v6 m8 S* U4 w0 o+ A
BOOL CWndAutoFood:rocess()) J+ ~: |) d! w4 J# ^' \
{& p5 d. C" B9 K0 v4 z
        if( bStart )
( B- `7 N7 d; L        {
8 k+ y2 p% D& f                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )* a2 V; q( {- s! m9 j
                {( t" F9 m# D+ Y+ r& m
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )8 ~- B# o5 I/ l8 ^2 P1 V
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );& n+ ?) H6 l8 W& s. W; ]5 ]3 r, n
                }else{
# @0 S/ a4 Y( C1 o. Z                        bStart = FALSE;* H# y0 w: s2 |1 K% L, f! v
                        m_pItemElem = NULL;( q, P/ H0 f4 Y. g1 `0 ]
                }
: C3 r9 _/ O9 q: C# s5 h) R+ [- A        }2 Y/ c; D7 x( r) M
        return TRUE;0 t9 d; d+ H/ x: S% a
}
# I8 q* G6 E: u, P6 y% U& U3 i& u8 v) k6 w* o" W$ c  c
登录视频废话:
7 _5 ^" `' S/ I  Q9 B' q尾翼:/ z2 a3 [0 \3 v# S$ \
: L2 B7 Q$ U+ d( D- ?( N
代码:
4 R$ f* H8 ^; H; t$ C3 U
% a+ A+ G, l  g  I/ bvoid CWorld::SetLight( BOOL bLight )5 a7 z4 v$ Q& g/ U4 h  S
durch
' f+ O1 m* N' C9 H! r' `5 kCode:) Z& s4 P9 G) p# o) o9 a) `5 C+ S
void CWorld::SetLight( BOOL bLight )
( F, R% x& O1 `$ I& E5 l5 n" M* \, }{$ Q' j0 O* F4 q+ O; g/ w" z- m9 n
        //ACE("SetLight %d \n", bLight);
* B( u( G* n: t4 Z6 Y; I       
: ?! G3 O+ Z  P" m#ifndef  __WORLDSERVER + |3 B0 H3 [, x8 Z
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);6 j9 L5 H+ Q4 P' v( a9 ^7 R0 K
        CLight* pLight = NULL;7 l5 q- L9 p- J' V

, \( o4 W' c1 ]7 g6 d+ p        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );: v: x" d; G& u/ w9 K

6 j2 t: z, ]9 q% o        pLight = GetLight( "direction" );
: ~  J% A% ~% `0 @  [9 ^% T, l2 `' `! G4 _
#if __VER >= 15 // __BS_CHANGING_ENVIR
' }/ ?) Z$ z6 d5 F% g4 J. X' {4 k        if( g_pPlayer ){
' ]2 h/ ^: m. p# i, I" e9 k( q) f                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );. _0 Z+ K/ w. U  ?0 u1 l4 e, ^' o
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
/ V. I1 U2 W0 M                {! k0 \0 i5 ~- f; k! {# c# j
                        if( pLight )
: g( Y( j* ^5 E2 ~3 K. V7 g$ h                        {+ A; V% T4 w8 g
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];4 e) |2 f6 D6 s, y) p  B
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];+ X' M6 v9 D  M% G! x
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];! z$ ^8 C7 k( O# K9 r, M* i0 s

, n: S$ Q  k3 M: ~' |0 u- `                                pLight->Specular.r = 2.0f;0 @4 L: p) e) s$ q. M
                                pLight->Specular.g = 2.0f;3 {8 T* Y) m, r
                                pLight->Specular.b = 2.0f;
8 N  b6 y% s* g8 q" N" m       
/ H8 v% l6 ^! N6 }7 A; h7 X7 N                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
, A/ F6 a  I! r4 }# e* ~5 R                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];# X) R3 L. b  w
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
2 o$ T7 F7 t( a9 D$ B        5 v* R( I$ h" c$ v8 v& E6 T& H
                                HookUpdateLight( pLight );
& Z6 m8 S+ H/ b+ }- A! p
- ]% q$ i8 s/ r+ ^, |                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );; m& t" B) m2 F1 `- ]
                " @" n  a; u6 Y0 ]1 o/ L/ c
                                pLight->Diffuse.r *= 1.2f;- Q0 Q0 j9 V* |& G2 O* e- ?
                                pLight->Diffuse.g *= 1.2f;
8 m; K" n( h/ L* W6 k: E5 L                                pLight->Diffuse.b *= 1.2f;' I5 e4 I$ `% E( q1 `% x2 p
. g% `* m; |* [% I
                                pLight->Ambient.r *= 0.8f;
5 j% u! C  L$ E0 c; u' V                                pLight->Ambient.g *= 0.8f;
# Y$ I7 }+ Q  r' Q  ^1 U" b' F                                pLight->Ambient.b *= 0.8f;- s# y% [2 s9 y+ V( ]; u$ }* e
       
3 d( [( l# D5 P+ ?" E                                memcpy( &m_light, pLight, sizeof( m_light ) );% n# e4 s) W% n$ x  i9 @

4 y7 \$ O5 ^" p                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
" L6 D. \9 g5 q( K5 q                                 D3DXVec3Normalize(&(vecSun),&(vecSun));) z/ r. g& F$ ^  ~- E8 A
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. ^) ~( g- v9 |                                 pLight->Appear( m_pd3dDevice, TRUE );5 B5 E1 H3 h5 D! B; D3 p9 K/ n
                4 c% }. z1 J' y/ n3 l6 R2 m
                                DWORD dwR, dwG, dwB;
0 e: V7 f  F' @                                dwR = (DWORD)( pLight->Ambient.r * 255 );
' j. H  m! s- A+ Y1 J                                dwG = (DWORD)( pLight->Ambient.g * 255 );+ L* S0 |/ ^( J
                                dwB = (DWORD)( pLight->Ambient.b * 255 );& M5 N' A. V0 |  R' T  h
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );, K) n; M3 @+ |7 g! G7 R
                        }
+ v( x" x1 g4 n+ a" [- ?, _6 l                }+ i8 n/ \( s$ t" C
        }& Z5 F1 H2 ~) G8 ^
        else
' M/ u/ A' p- s#endif
6 w4 ?+ f, x/ W1 i7 m& S& A' {
" k7 ?3 |( w  S3 h0 W% P6 ~6 d        if( m_bIsIndoor )! }; N. T+ o1 {; R3 `' ~9 [1 ?
        {
4 k" N# ~% D) J- i7 w! S                if( pLight )
! ?$ c: p& r& x+ k                {               
1 o+ g- i3 v; x/ E/ y8 w( P                        // à??μ oˉè* . L/ M9 E' P8 O" w) d
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
9 L3 I2 _* c7 ^- H3 n& h' O  N                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;5 o* N2 B( M& ?& n9 r9 k
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
# v' h5 e, @9 ~2 Y, ]0 ?+ X& _! G5 Z2 I) s/ g% x' h* S
                        // oˉè* ??à?
0 L7 X: P" |0 q; D                        pLight->Specular.r = 1.0f;. v# `! f- K1 I0 H
                        pLight->Specular.g = 1.0f;, Q/ d) v2 n& ]1 c- w
                        pLight->Specular.b = 1.0f;
- Y3 [% y) U4 h2 l                        // àü?? oˉè* : a7 E. B: S/ _" m0 l
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;" ^9 ~+ ~0 A4 X2 g5 _
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
( P9 _$ R7 X' m: U6 g  b- v                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;; z& D! Q" O/ ~/ N4 a

: d% H/ F* _- f2 O7 w                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
6 ]2 M; e5 F; E9 z: S1 U1 Z! Q                        {
5 _3 l) H. x; q, N                                pLight->Diffuse.r *= 0.6f;
3 _" V  W- C* i. s/ ^: h' ]5 Y                                pLight->Diffuse.g *= 0.6f;6 f+ T! d$ n! v, u: E
                                pLight->Diffuse.b *= 0.6f;
$ v! M' ^% |7 j) m- f2 p! S                                pLight->Ambient.r *= 0.7f;
$ {) T' @) v# U# ]2 ]' Z- P: m5 F                                pLight->Ambient.g *= 0.7f;1 N! Y8 K4 U) J/ Y- l) t: E
                                pLight->Ambient.b *= 0.7f;/ c1 t9 o) \7 ?6 A, h5 @, w7 k0 |
                        }
$ `! I/ o) ?: b
9 X. J6 o; e4 U- i. R# T#if __VER >= 15 // __BS_CHANGING_ENVIR
5 Q$ m& D4 ^$ T! [7 Q                        if( g_pPlayer )
7 C: ]- f, S% |                                HookUpdateLight( pLight );1 i! Q4 T. J0 v+ Y, |: S0 `: a
#endif" j& X( [8 z! L
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );2 a, i3 m: N6 t- ?4 e/ v
/ m0 U6 s" \  k4 r) O9 x+ [
                        pLight->Diffuse.r  += 0.1f;1 t7 B7 S; A. Y( h8 e% J7 w2 ^
                        pLight->Diffuse.g  += 0.1f;
- z( ]7 S8 E; d, ^  H+ ^' C                        pLight->Diffuse.b  += 0.1f;+ F; f: o* X" K, e' i
                        // oˉè* ??à?
* c  ?" }8 m3 [3 M5 |! V                        pLight->Specular.r = 2.0f;. h0 S( y( C, F1 @* f. F) X/ J
                        pLight->Specular.g = 2.0f;7 e9 y$ j* l! i1 m" @/ Y
                        pLight->Specular.b = 2.0f;- z! S; _9 O& K; `3 u8 X
                        // á?oˉ
) S0 e* W) ?! ^2 k6 A                        pLight->Ambient.r  *= 0.9f;
) c5 ?8 w8 v  B' d8 P                        pLight->Ambient.g  *= 0.9f;! O! P7 I8 F- i- L: G
                        pLight->Ambient.b  *= 0.9f;/ Y% R: N% N: z! g' f& T% `

6 D% K) k  d  X+ [& J( g                        memcpy( &m_light, pLight, sizeof( m_light ) );
2 S0 @6 z, |4 v# l+ j3 E                       
& V0 `: H. z& p                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );7 A8 e1 r9 k  S/ e7 l
                        pLight->Appear( m_pd3dDevice, TRUE );. J1 D" N. h8 e+ Y" j) h) T3 d
       
: g; g) l7 a) h7 F8 j7 L                        DWORD dwR, dwG, dwB;% G" q$ _8 G/ g
                        dwR = (DWORD)( pLight->Ambient.r * 255 );# |" K# K' S; y7 q
                        dwG = (DWORD)( pLight->Ambient.g * 255 );5 }9 |" d. _) H) l" k2 d5 H
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
7 ]6 `$ W& i6 G, }9 K/ Z                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );2 F2 ]8 `+ w4 w- l
                }( r& J7 h: `7 Q9 y
        }7 o7 ?4 g0 k2 E: Y
        else6 u# m4 W1 F4 S, T  h! c9 f
        {/ `# n* ^; x7 w. L" a# c
                if( pLight )! `$ B# ?: l  Q- L' M# D
                {
, i  Z$ W( S" M) D' x               
; P# K4 H2 N# O' f2 p( R                        int nHour = 8, nMin = 0;" _$ p; h; F+ M- V: D' {5 E( g
        #ifdef __CLIENT. J3 Q4 j9 Z) v% ^# F* W( I
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. , M. t5 b! [% x1 c8 \
                        nHour = g_GameTimer.m_nHour;) y8 Q- @* n$ M2 t5 i- V
                        nMin  = g_GameTimer.m_nMin ;
3 J) P) ~1 _) q  s6 n) o7 a9 z        #else
& i9 I7 @1 q- u, ^7 Q                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.3 {7 {3 W6 q; P  v4 A0 y4 v! h3 l
                        if( m_nLightType == 1 )
2 E& j1 g/ a7 f8 w* e" g: e2 q+ F; t. H                                nHour = m_nLightHour;
" Y! v) M" N( D! |/ v        #endif
; J7 {  ?$ d' \                        nHour--;5 R1 M1 J. ^7 X* H# A
                        if( nHour < 0 ) nHour = 0;  V1 P% ]; |% r
                        if( nHour > 23 ) nHour = 23;+ x2 ?9 ~7 p% a" m* F5 T
# W  d' @! `" x1 V4 e. f
                        //if( m_bFixedHour )4 R0 J" l; a0 K& i
                        //        nHour = m_nFixedHour, nMin = 0;
8 g* B! k1 b5 {: J3 Y3 f. U                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];# H# T' n, H$ p1 c. B. A0 f$ I
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
, ~. f9 U' p8 j( J5 A; n
9 _+ ]$ k' i3 ^  \                        //m_lightColor = lightColorPrv;
  ?5 w/ T4 k  d# ~                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;6 r" \# J9 q* U( f/ E  m+ K
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
. ]3 y: w$ i; m1 F: B                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;% n: b8 b" y* q1 }. z6 t
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;2 c8 Z" @/ ~- S2 q: G6 ?
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;" n& N9 P' R7 a) v3 i4 H/ ~+ g+ }
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
- J0 z. ?& b/ {' d7 f, o                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
& w) H* T+ Z3 y: l/ Z: S+ ~7 E. ?" W7 o3 Y  S) p. j
                        // à??μ oˉè* 0 \( @: z6 R7 l: X9 l
                        pLight->Diffuse.r  = lightColorPrv.r1;
+ y* b  b- l9 o2 G" Z                        pLight->Diffuse.g  = lightColorPrv.g1;' @7 c' u% i! \$ I9 {
                        pLight->Diffuse.b  = lightColorPrv.b1;
' r9 T% e# K! [  i! a                        // oˉè* ??à?   m0 L/ x4 z: l/ h
                        pLight->Specular.r = 1.0f;
- T  R5 }* R7 Y# w4 d                        pLight->Specular.g = 1.0f;& |0 w9 n) ?0 J, K  j! U
                        pLight->Specular.b = 1.0f;
3 J6 Q& s, C- l% e                        // àü?? oˉè* 8 k& Y1 Z  M9 ]
                        pLight->Ambient.r  = lightColorPrv.r2;, b6 \5 v" j( v( \' z! P8 e, G+ a! P
                        pLight->Ambient.g  = lightColorPrv.g2;: d8 H1 A9 r( o% l; v2 g
                        pLight->Ambient.b  = lightColorPrv.b2;8 N1 `% A% E. X% L3 O: D5 g

' y( R# m3 F% `/ W! f                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.9 p4 n( m: Q1 F& _; C5 f' ~
                        {5 u# j0 P! W% K9 H
                                pLight->Diffuse.r *= 0.6f;5 [% a. d" M5 |$ D; E: _
                                pLight->Diffuse.g *= 0.6f;" w- [; A# V# _" A5 ~0 z8 v  v+ ?5 J
                                pLight->Diffuse.b *= 0.6f;
6 D6 q8 k4 Y7 Y0 j                                pLight->Ambient.r *= 0.7f;
; ~5 W! c4 M2 W: ?4 `1 g9 N6 P/ G                                pLight->Ambient.g *= 0.7f;. q/ c) }4 G  Q! R0 d2 p
                                pLight->Ambient.b *= 0.7f;
. L" w! O( V" u' O' |                        }  u  S/ u! b% ]4 A! K9 a
                        , Z8 I' P! g* y" s2 {; k5 ?6 X% T/ M
#if __VER >= 15 // __BS_CHANGING_ENVIR" m8 h4 Z  t/ [/ D/ e+ v
                        if( g_pPlayer )
8 k% O0 K% L7 |: ]& e                                HookUpdateLight( pLight ); 0 X6 E& X, w6 K9 Z5 ?- x" Q3 C: M
#endif: C$ \, k* C: s6 i2 m& A
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );; H  _6 ~2 \& q5 Q' }: V: V* I
1 j/ _! E% w  e4 n! N
#ifdef __YENV
6 r6 b% U7 W" K  A2 ^) {                        pLight->Diffuse.r  *= 1.1f;
: }: i2 ?, K6 \! L                        pLight->Diffuse.g  *= 1.1f;
! S1 P& [5 i2 _6 n; N; m3 @8 b1 n5 f                        pLight->Diffuse.b  *= 1.1f;
3 h+ I$ ]$ ?' K: H                        // oˉè* ??à?
/ q) B- V$ i* d1 B/ X& q                        pLight->Specular.r = 2.0f;1 o- E1 W* J+ v) H3 g; Z+ K  [$ P
                        pLight->Specular.g = 2.0f;9 l0 `( |9 H9 D9 I1 d, d& v! s
                        pLight->Specular.b = 2.0f;
; ?$ @* g1 @. ^6 f                        // á?oˉ
- z& ~! a# b% f# c( T                        pLight->Ambient.r  *= 1.0f;
! N1 Z2 z: K" |- d/ i6 A4 I; b/ U                        pLight->Ambient.g  *= 1.0f;
8 K2 \: F4 J  ~+ k( m3 c                        pLight->Ambient.b  *= 1.0f;7 B' Q' Z6 ~& j- q: L+ W8 x
#else //__YENV) g6 ?! r6 x5 d
                        pLight->Diffuse.r  *= 1.1f;
( v2 Q2 l, ^# W8 ]) Z                        pLight->Diffuse.g  *= 1.1f;
& A4 W- p0 S) u6 w                        pLight->Diffuse.b  *= 1.1f;( L% T/ q# x9 _- h( O% L4 h
                        // oˉè* ??à?
+ a$ B2 j" R; h; U+ d                        pLight->Specular.r = 2.0f;
) `3 z( w8 r. e. ~                        pLight->Specular.g = 2.0f;+ U) W7 e% q, D; j
                        pLight->Specular.b = 2.0f;
' o' t& a# C7 [* k- o$ k. g+ j                        // á?oˉ
  b) Q/ \( g! @  V% s6 P, L                        pLight->Ambient.r  *= 0.9f;
( n# f+ W( W" i/ L8 k8 T                        pLight->Ambient.g  *= 0.9f;2 e# f+ Z% T) F/ g1 g( {9 @
                        pLight->Ambient.b  *= 0.9f;8 T2 }$ Y5 d, Y
#endif //__YENV
; c. {8 c* ~1 x: s3 x1 v) ]% k                       
2 ^  B/ P8 c1 r$ c+ R; k                        memcpy( &m_light, pLight, sizeof( m_light ) );
, w3 J  v2 i- H9 W                       
  f8 a5 W9 _% G$ T                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
" T( Z/ q3 A) A% b8 w! N1 C. K& K                        D3DXMATRIX  matTemp;) y, y6 ^8 K) {  \' m* \% ]3 d
                        static const float CONS_VAL = 3.1415926f / 180.f;- z7 L3 t8 h: a* {+ p

  H) I0 u4 B2 t  g; g5 X- d                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);1 P$ u: ?6 R" J
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);! A3 M9 p( K- b  m' p# t% s7 p  m
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 1 |" J* U4 B: O; W
                        pLight->Appear( m_pd3dDevice, TRUE );9 J, f: Y4 M& W% F" {( u/ T9 \% q& _
: o8 Q" \6 _+ S: Q2 H" O5 E* u! A
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 M. Z& @( _: s/ d  `8 p                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
  w: w1 {2 X# O1 H7 ]% v: m3 F' J6 h                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
- V# p1 P) B5 \0 y$ @' p3 m
, ]; L, _- I, |+ o& h) r! H" @& f                        DWORD dwR, dwG, dwB;2 |9 d' p7 S9 ]5 D+ C; c
                        dwR = (DWORD)( pLight->Ambient.r * 255 );* R$ o& X1 o" R$ T( O1 \1 s* x
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
9 x- n; R, l0 [2 j& y  I                        dwB = (DWORD)( pLight->Ambient.b * 255 );& u/ E! @, I" |* p
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        9 W4 Y/ C5 G9 @' H# m
                }
4 }$ \8 _& }+ d/ P" N, h, h5 n7 ?8 \# @        }
( @/ [! A& |. V# w7 a3 h- i( Y$ H" \$ _: P- F4 w- A5 P, ?. c
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );& Y2 @/ H) l3 w& @
        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) );
" L" p$ Z) \7 q! Z        ::SetLight( bLight );
1 `: `6 m. Q1 r+ e4 J% @: }, m4 k. h
        // ±ao? ?D?í???ó á¤à? 9 M; J4 X8 f* J1 {; n
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
+ q" L! l: x: n2 B        7 P; B& T: H; m' R( g, w& x
#endif // not WORLDSERVER% L$ F, }* ?, `( K) \
}
7 K6 f6 t4 h# \# y并更换
$ v' Q# g% q- ]( L- D* j1 ]Code:
. T6 o3 d# e1 ?2 `0 h__FLYFF_INITPAGE_EXT
5 M. U9 t- e6 R8 E, f7 E定义6 ~  [0 b9 \/ t: J/ A: T& M. u

( d" Q) ^7 C9 C* I3 J) }2 o; @$ ^. Y$ F9 E% U% y* g- x
& W- h- _9 |, r+ g" v) E- \
; }5 Z3 C' K( A) t2 O. Q7 x2 O
现在终于删除我的狗屁加速...
/ |( d/ a& V' g7 d1 e7 A$ x  }6 V# U, y- G

3 d+ D# o, ~6 n' y
6 g9 e: F0 d& T




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