飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:8 E$ k" p9 T# ?! m0 z
尾翼:, U) @, p5 F" D7 D: U

$ g  T8 u7 `/ b. E, [# C& U0 F代码:' c, D& h$ f1 j% ^7 a$ K' t
CWndAutoFood::CWndAutoFood()
9 K4 U2 Q# Q6 T{
+ x( Z( i) N+ d4 e- i2 ~7 F4 q        m_pItemElem = NULL;# R1 R/ o& P* l3 o8 U7 y
        m_pTexture = NULL;6 p2 e, u+ {( ]0 ~8 Z
        bStart = FALSE;
/ R8 a( }: D& f+ c4 S}' v9 p& q& d; T; R
' f6 p! q; U3 Y# B* G. i# b
CWndAutoFood::~CWndAutoFood()& q1 ?5 V# Y0 l& l6 j0 e* B
{
2 [% h% C. h0 ^: D8 M) p9 o5 l& o        AfxMessageBox( "AutoFood ist gestorben " );
# h# j6 [# {4 D+ B7 |8 y}8 M" }/ p, y/ |2 K) Y/ H: ?
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
, P* A7 P( x7 ~) D/ g+ i$ q$ ^{
1 H5 m, J+ E7 }" A        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );* ?2 J# h  O7 e; B; R
}
8 r( C7 ^- v+ ^! [/ ^1 Q! x4 ~  j; ]% ^/ X+ s
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )0 S. d7 |, y3 q' H7 i' s3 R
{
9 y# k3 H! E# X. j6 }  M: x$ Y        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
! G- v" o1 b. ]. ?6 M! Q; ~- n        CRect rect = pWndCtrl->rect;
: m$ |4 l+ Z5 ]$ l5 I* m7 `        if( rect && rect.PtInRect( point ) ). u0 y: M1 Y: N5 E  k
        {
* A/ p" c  l6 O- a: ?                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );5 F+ U) j9 P! c2 d9 G5 C7 B
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD ): o) s8 F5 m; k% A/ f, j6 g( s
                {* o4 q4 E+ g- {( c. E2 A1 ]$ p
                        if( m_pItemElem )) w4 g- U$ _; g6 U: `
                        {
2 Z. I& f; b3 F. G  [7 |3 H                                m_pItemElem = NULL;7 |  a- U4 z5 R
                        }4 o5 j+ z1 Q2 E  [) ^+ Q
                        m_pItemElem = pItemElem;6 z. E# A( [. A1 `4 M9 a& v: r
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
/ P0 E4 r" O; |& d1 ]$ a                }else{
" t# P- W* f$ G7 s- Q. `, v' {                        SetForbid( TRUE );
4 n! y; n! Z' A3 B- ?                }
  p: p! ~3 p# {6 f        }else{/ b* ?! u, k2 v9 g5 H1 {$ B
                SetForbid( TRUE );
' U& D  Q; @- Q        }
- r2 U: r% M& H' j0 @        return TRUE;
( j" Y; G7 D$ y* N- q" q}- B+ E2 K& Z9 X2 i7 T8 x6 ]2 v
. M0 P! k& v) t, B$ {3 C3 Z1 D: ^
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )4 d$ U0 }1 C+ N( F/ n% V& X
{. U9 M& Y5 b% W+ W% Y) j0 j- ?4 K: m" F
        switch( nID )
1 {$ I( n) q& K+ x5 n        {" \  R' y1 U7 Q; L! r
        case WIDC_BUTTON3:
8 ?2 J$ @* y2 J, T                {
" G7 ?+ f7 |' K" s& B9 y                        bStart = TRUE;
, C, n) N1 k( X$ v' e/ j                        break;, \2 H: P4 ?- S! z% M
                }; a+ i6 ~$ v  }( H1 i0 C5 v; Q. o4 v
        case WIDC_BUTTON4:
9 E, P( A+ ~1 l% ^; _                {" t! I% N5 t" {* M+ `- g
                        bStart = FALSE;
( n7 T0 _8 {7 @6 m                        break;5 ~* a& _4 m# ~9 Q9 `% y
                }# @0 j& V6 p/ T5 V
        }
( E2 {! k! X2 {8 D& N" i3 D" c        return CWndNeuz::OnChildNotify( message, nID, pLResult );
! S% c0 Z- a+ f' `# D/ u}       
/ X' h. n3 K0 q* M8 Uvoid CWndAutoFood::OnDraw( C2DRender* p2DRender ). p) [/ _9 o2 p* [
{! [( b& K  b" _* s' i
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
8 {. r) }) P) h3 j  I: I* j. _        if( bStart || !m_pItemElem )
/ J7 z& Y' S7 K" K  z        {
9 v# T* |* ?0 l                pBtn->EnableWindow( FALSE );  F6 {& X) Y9 w7 n  I1 Z8 B! q, T( ?2 j
        }else
: `2 a# t$ W2 l7 x+ O! N* E                pBtn->EnableWindow( TRUE );
6 ?: O- m8 K  o4 u        if( m_pTexture )5 \1 o2 N+ z! X5 Z8 i0 c
        {
; _. f/ U$ `, K1 g                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 Y/ E3 B5 R3 n                if( wndCtrl && wndCtrl->rect )( j6 c, _4 a, E6 c$ z, `- b
                {7 i4 s- m& E/ [" A! F! K
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );. O+ m- i+ q/ k9 @1 C
                }1 c& s$ z5 e3 R- Y, _  m3 `
        }
9 I# U2 S% V( V( {' H! }# G, |}
9 p5 E% N7 h& j9 \1 o9 t: n/ P( S4 K1 _' q+ f. \8 R8 T% q% u3 S9 O
BOOL CWndAutoFood:rocess()
3 f! z" Z( `7 l$ G{. u4 [" [% Q! y2 U8 i* r
        if( bStart )+ o  R5 S* e4 E( B6 R8 ]  ?2 a: u! P' E
        {/ I1 e* B" o9 C* `2 f6 ^
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
- R& q9 ?% ?, p) @2 D3 [' m7 Q                {
. t4 Z" [5 D# z, ]4 a' K# ~: e. t                        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 |# D/ K& v4 m% y8 O! G
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
( |3 a1 g4 K) S8 M& q5 C. O                }else{$ L6 i/ d$ J: Z! K
                        bStart = FALSE;
2 x- Q, \. F# H, E6 I                        m_pItemElem = NULL;
' s( m  {- H9 F                }  Z8 \0 T9 F7 v, W1 D; f& M
        }
! V3 Q+ Q1 b, z* x+ M9 \% N        return TRUE;. [! C0 Q/ t8 e* a5 q' h" l* k
}. f: |/ o& A# x& D% x

( B! s" Z( r2 C: `; V7 [登录视频废话:; D/ ^$ }& h# A9 }4 y5 j
尾翼:9 x/ I6 w$ R) o0 S: _/ }

+ V) D# Y9 e3 H& h; V! g代码:
: s1 P6 }! C3 j5 h! v) o' l/ X/ q! }, ]# V! E( k; `* b
void CWorld::SetLight( BOOL bLight )
# q: {& b& [- Z; _  m: cdurch2 C* N: i% z3 v: f2 c
Code:. g8 w. p" s2 f+ k/ F* G; U/ S
void CWorld::SetLight( BOOL bLight )6 K% p) l/ d, I* \
{) O2 |! b# s+ ]8 Y
        //ACE("SetLight %d \n", bLight);3 Q9 ^1 q1 L/ s! \, n+ H4 O
        ; z: B' o) r' y; V; p5 M
#ifndef  __WORLDSERVER 2 [7 Z/ L" T, {8 H
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);3 ]4 Y& _, u9 o3 E5 u
        CLight* pLight = NULL;
9 M& V1 Q' O9 @( z9 j  c2 r" e9 Q3 Y& n' q2 t/ F& j
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
( q+ @2 ~! _( ^$ h. l4 V6 a. `* r4 S6 ?1 Y! I. J5 S' c/ _
        pLight = GetLight( "direction" );- p0 A# m1 c9 `, S" e1 e" d5 E

. ?4 h% G( S% Z+ q#if __VER >= 15 // __BS_CHANGING_ENVIR
+ A' S/ d2 h7 a        if( g_pPlayer ){% [- {9 u+ x5 x, u% v
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
0 _" a7 b' m' z6 @$ R0 `                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
/ Z1 W0 Y7 A0 M2 E, D% i2 _) X$ q                {
" G/ \- g! E$ j                        if( pLight )7 d3 E& B3 ?9 c8 B* ^& ~8 {
                        {- i9 N# d/ W/ r5 |0 q
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
3 N3 h' ~- F7 `- A6 s                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];5 Y/ f% A4 s2 g$ c& {, M
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
8 o1 M" P, G0 Q# i" [+ W' C' ~! I6 m- N! y: z' q
                                pLight->Specular.r = 2.0f;
5 c+ l4 g+ S. L  R  Q5 t8 z                                pLight->Specular.g = 2.0f;: D+ W' e* e$ j$ g' n! v
                                pLight->Specular.b = 2.0f;
+ k7 O0 O' y  q       
) D* p2 |# [3 X; d: u5 ]                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];/ |+ x, z" S4 O. N$ Y
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
7 g5 F1 w. E2 m2 r0 F5 p% w                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
3 R6 v" S, X5 A) g& {" U- a2 y       
& G2 y( t. n6 b                                HookUpdateLight( pLight ); 5 \; Z, B- `5 J) J" q

: {' Q8 b0 {! P2 M. t                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
  i7 K1 G+ Y8 t$ f               
) O; |9 @7 S2 H! Y5 P4 U                                pLight->Diffuse.r *= 1.2f;$ e$ x$ t& _6 s6 U! _4 @2 P4 A% q
                                pLight->Diffuse.g *= 1.2f;  o9 z) y0 f! k
                                pLight->Diffuse.b *= 1.2f;1 B; t; J( i& f) c0 _

( k, t( P% v: Z% K4 j: T                                pLight->Ambient.r *= 0.8f;
& t& i4 ?% Q! P! D8 V: w! n                                pLight->Ambient.g *= 0.8f;( J0 C5 y6 R8 {# b
                                pLight->Ambient.b *= 0.8f;0 l4 h4 A- m9 ~$ @- s9 y& L
       
) I# g* n% |" V$ \                                memcpy( &m_light, pLight, sizeof( m_light ) );2 ]4 s' C/ Z, ~5 H) h
- d: _( s) y% p  Q& Q5 g  u2 O
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);8 c: P3 D: C7 N) d
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
2 l& E1 R- i9 p# n& B& a( v* J                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
$ P9 S+ G# e# x; f" ?  @$ e2 d                                 pLight->Appear( m_pd3dDevice, TRUE );+ j7 X0 c/ o! p% c5 n8 G7 z
               
4 ?) k$ x" P7 l# R+ i( ~3 g5 M                                DWORD dwR, dwG, dwB;
1 T, u' T& H, D* M& V                                dwR = (DWORD)( pLight->Ambient.r * 255 );
3 c. k: \: U, N/ l# W                                dwG = (DWORD)( pLight->Ambient.g * 255 );: A# p, v" Z! h2 U$ {# U- Q% A0 b
                                dwB = (DWORD)( pLight->Ambient.b * 255 );2 c' Y( N' _) w( b% R1 Y
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );8 E2 d/ z9 J; U% _( L
                        }
! ?; I4 W3 J, o' R                }
/ U% J2 r) h+ g4 R% h        }
% H  ]: i5 M" y+ `2 \4 c; E        else, e7 L4 u" I# M* h( ~, ~1 V' E
#endif
( c8 M5 \8 h- H' n& k0 W7 h2 H6 ^
/ q& @$ k0 y' L/ t- P' c        if( m_bIsIndoor )
4 \+ `# M9 d" S; f        {- @( q/ k2 w* _7 M
                if( pLight )0 |5 \0 e. x( \& k( a
                {               
" ?; j' q1 E4 h. \+ I                        // à??μ oˉè*
2 [9 i% x, F# {) ^                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;' Y. v& q7 A0 ^: ~4 m
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
7 K9 ^$ T* _( C3 I  S% |& U                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;; \, V$ r3 K6 Z* k

" U& k8 I9 r2 v1 m+ X: z1 V4 Z                        // oˉè* ??à?
, \) P  D7 t' z* G% Y                        pLight->Specular.r = 1.0f;, r& F3 P3 f0 e2 P
                        pLight->Specular.g = 1.0f;9 P( M# e6 t! p: @
                        pLight->Specular.b = 1.0f;# V7 v8 i: x2 A
                        // àü?? oˉè*
) u+ `3 A4 e$ g                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
/ r' l" k" G3 L1 b& W/ S                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
& C) k4 Z6 Z) J; h1 \- }                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;/ P( ^- j  K6 `& }; A# y' B( r
$ w1 Y: z7 Y% ^: @
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.3 s" P# x7 S) i3 @2 |! m
                        {
0 D% O2 i/ S1 X, q- Z                                pLight->Diffuse.r *= 0.6f;
! c& U6 y/ @! ^( e, L+ q0 w                                pLight->Diffuse.g *= 0.6f;
5 M' c& B; ]! I! v1 q  l% i! P  b9 W                                pLight->Diffuse.b *= 0.6f;
- E3 n; @4 P% _) j6 M: o& w) V1 \                                pLight->Ambient.r *= 0.7f;
" e8 p7 R3 k2 H  C/ N                                pLight->Ambient.g *= 0.7f;
; I, [0 L+ p0 O: I                                pLight->Ambient.b *= 0.7f;
* G. R# e0 n% h6 o  ^( n/ x7 q) I                        }& N. ~0 j$ B" c, C
  ^  a; t  ~; q7 |% {2 l( M! O+ z
#if __VER >= 15 // __BS_CHANGING_ENVIR
" K6 F1 O1 `% X2 g1 y- v( ]# n# ?/ u                        if( g_pPlayer )9 D, }) G4 y( h; M% B; @
                                HookUpdateLight( pLight );
% m2 g6 a$ p( m8 W. B. x#endif
4 u+ m$ M( r& b( x8 Z5 [                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );# l7 c  n, y6 F5 p

5 ^/ ~# H0 T+ j) j1 z6 H. h/ }                        pLight->Diffuse.r  += 0.1f;
' P7 E/ W! n! a2 w: g  L# {9 P                        pLight->Diffuse.g  += 0.1f;: h# L2 T; I3 T5 ^" B& M
                        pLight->Diffuse.b  += 0.1f;0 I8 M$ X5 g. J" b& q5 N, X" s
                        // oˉè* ??à? 8 g9 Y' ~  w% a  M& d$ P
                        pLight->Specular.r = 2.0f;
: |' t6 ?& o" J                        pLight->Specular.g = 2.0f;+ a( Q9 D8 w2 D9 L  U/ \
                        pLight->Specular.b = 2.0f;
5 f1 p( A. N- M. L) g                        // á?oˉ ; `/ i& C- U5 g% h) X5 D
                        pLight->Ambient.r  *= 0.9f;
, V$ d$ ^- v/ E: R: ]+ N( G: c, E- @                        pLight->Ambient.g  *= 0.9f;- L2 q6 f1 B, K
                        pLight->Ambient.b  *= 0.9f;& v" E3 Y2 z. @. Z
8 v" ?% ~* u. C9 M7 t3 ?
                        memcpy( &m_light, pLight, sizeof( m_light ) );) B- E0 ]9 y. P& U* C2 C
                       
) R' Y6 W2 S4 |$ \; T# d                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
7 E7 w& g  V7 Z  _                        pLight->Appear( m_pd3dDevice, TRUE );
. r& m, m  A+ }        2 b3 H0 {! Q5 E6 N$ {
                        DWORD dwR, dwG, dwB;
/ C0 ?) B' `3 ?5 X                        dwR = (DWORD)( pLight->Ambient.r * 255 );
- I" B* G8 [" _3 \! Q# v& _                        dwG = (DWORD)( pLight->Ambient.g * 255 );
& |/ Y* N0 j  a8 ^3 u7 N  E                        dwB = (DWORD)( pLight->Ambient.b * 255 );1 [/ n8 E7 s1 l7 ~: b5 _9 Q5 Q
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );6 L, W7 V0 z) t) }2 R" \1 v8 `
                }- X8 ~  R  U  d2 w0 F
        }/ S4 \$ Y( r. o
        else9 U% |+ ~; S) C2 g1 [) t- x
        {
  n6 @* ~5 b: N) G/ ?  [! \                if( pLight )
9 l9 L. w7 e' R  T                {- w3 z3 [" w: X; o! n: j, z
               
8 c3 k4 m& |! s& U% N                        int nHour = 8, nMin = 0;3 r0 i0 T/ V5 g8 e4 _1 k- ^+ x  B
        #ifdef __CLIENT8 R( [- K  m) F, r
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
3 V( n1 C! e( f                        nHour = g_GameTimer.m_nHour;
. O8 T, d/ w' G( T4 a# U                        nMin  = g_GameTimer.m_nMin ;
3 b1 n3 Z$ p2 f/ r) }! J- l2 q        #else
4 L* a( \: k1 i3 q2 w& b                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.1 P) q$ x5 z( i6 l* G
                        if( m_nLightType == 1 )
, T8 J! a+ q; y. V7 l0 [  G                                nHour = m_nLightHour;
2 P, w4 v# K& r$ \8 t! s! i3 R: D        #endif
( A+ D" w7 O/ e! B# P" x4 f                        nHour--;
: b: f4 E2 U2 \( c. L                        if( nHour < 0 ) nHour = 0;
7 S% H' C) n6 }( n                        if( nHour > 23 ) nHour = 23;; a, m! g2 K, w

* W" |* h; P, \' b. O$ r                        //if( m_bFixedHour )
. g) g& p& @8 B) i2 E# Q8 }; [                        //        nHour = m_nFixedHour, nMin = 0;
0 s/ f" H! ~0 q% {/ @( x2 R- G  ?                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
' b: B" X2 p4 O$ q7 b( m% I                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
% U4 d5 \+ z- O
3 ~5 J8 L  ?! _# u" V6 c9 f                        //m_lightColor = lightColorPrv;1 t: v6 m% I" a
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;7 o, S5 F5 j( X
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;9 o8 x+ ^: p6 E- _# \& x) f
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
; b' p7 L$ G4 z                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;1 P2 Z! h! e" |' A7 T3 S
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;4 C* v7 d$ g9 R1 A! C8 c
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;. ?) ?0 Z/ Y" G( {2 o
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)# T3 H0 k, d( C" G$ H% e

% Z; A+ j5 z" L  l( M$ i0 ]                        // à??μ oˉè*
1 e& x  L/ T3 n% k% `7 E                        pLight->Diffuse.r  = lightColorPrv.r1;5 u+ z' C! F5 `( p0 H6 X
                        pLight->Diffuse.g  = lightColorPrv.g1;( I1 m' ?( R5 D
                        pLight->Diffuse.b  = lightColorPrv.b1;. |3 w( H4 w3 Z& ]# r
                        // oˉè* ??à?
) r( Q; X. W7 V) W' C8 p                        pLight->Specular.r = 1.0f;7 F6 Z+ V9 M) _7 j
                        pLight->Specular.g = 1.0f;% `( C8 O$ X5 {" R4 D
                        pLight->Specular.b = 1.0f;
, @9 e4 X# H/ g* Y. w5 A8 J                        // àü?? oˉè* 8 t6 }: H: F; Y/ e, w. P8 U( Q: d
                        pLight->Ambient.r  = lightColorPrv.r2;
; V* f* u6 ?: j                        pLight->Ambient.g  = lightColorPrv.g2;
* g% _% r- Y6 j* X) [( |2 K+ o                        pLight->Ambient.b  = lightColorPrv.b2;( t0 z, o; _; Y1 M- B
' ^( [% c: k; o, J6 A9 N; n
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??., X# }% V) p6 g
                        {( F5 a  J" ?8 H
                                pLight->Diffuse.r *= 0.6f;
$ t' U) i' q( s: O: C! \4 j% \                                pLight->Diffuse.g *= 0.6f;8 o3 d; d7 y: A- U
                                pLight->Diffuse.b *= 0.6f;; Q$ Q$ f' r' Q8 ]0 M
                                pLight->Ambient.r *= 0.7f;
! |+ ]+ J7 o% T! ]* j+ q- y3 Z                                pLight->Ambient.g *= 0.7f;
. b* T, w7 H' c, r                                pLight->Ambient.b *= 0.7f;
( p  h9 i5 q, v5 P$ n9 V                        }2 Y$ K6 ^$ J$ I1 ]& G
                       
8 g5 o7 P  s' T1 a#if __VER >= 15 // __BS_CHANGING_ENVIR
; I9 O# I5 a& i# R                        if( g_pPlayer )5 o% F5 I# E2 Z$ b! o4 ?  w
                                HookUpdateLight( pLight );
5 c+ G/ L4 c4 ^#endif& a( D8 q: h$ o# R
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
( C8 q  {. F7 b$ ]# a
7 w5 a# E, K- C# S3 u- L/ {" Y#ifdef __YENV
, s" {/ W; a( y3 N$ c                        pLight->Diffuse.r  *= 1.1f;
! ?  s0 b* E9 R% R. ]                        pLight->Diffuse.g  *= 1.1f;
  V- `8 P" x" P. @1 q                        pLight->Diffuse.b  *= 1.1f;
2 K# ]9 @# N# ]8 i                        // oˉè* ??à? ! [6 r2 L0 t1 ]5 e+ e- d3 u
                        pLight->Specular.r = 2.0f;& M7 d1 D5 G: Q9 R: D& Z
                        pLight->Specular.g = 2.0f;8 n; d: a$ `7 F: a1 l5 S
                        pLight->Specular.b = 2.0f;( C; X8 c! ^( M, ]
                        // á?oˉ
# `8 y. z8 M0 ]6 b% w9 n; B3 z( z* f                        pLight->Ambient.r  *= 1.0f;
6 Q" u; R8 J5 {; d; b                        pLight->Ambient.g  *= 1.0f;
) e  {% S2 r& q4 c4 n                        pLight->Ambient.b  *= 1.0f;
' H. \$ L9 @: o2 T/ U! s, K4 T# k. M#else //__YENV
$ a! P9 l  o2 ^2 w& a/ B                        pLight->Diffuse.r  *= 1.1f;
: o9 \8 v0 Q  A                        pLight->Diffuse.g  *= 1.1f;, H2 G& v5 i0 V" n0 Q
                        pLight->Diffuse.b  *= 1.1f;
2 o- i2 [% Z/ x8 e' c7 G6 S                        // oˉè* ??à? 3 c! R* y* m) z
                        pLight->Specular.r = 2.0f;
. I  q9 ]0 N5 P; H! M                        pLight->Specular.g = 2.0f;  J' r- B3 g# Z; A: H1 ]. E, u
                        pLight->Specular.b = 2.0f;& J, u% g0 f% N% c5 X3 l
                        // á?oˉ 4 p/ |& G  Z& f" m# V
                        pLight->Ambient.r  *= 0.9f;
8 n3 w) ~/ N4 \) m  Z9 N1 ?5 G                        pLight->Ambient.g  *= 0.9f;
. X) E+ c6 U) s+ ^4 `                        pLight->Ambient.b  *= 0.9f;
( P0 j1 Z# o- t3 Z  H7 h& A#endif //__YENV
8 A* A2 e  n' J1 B6 ~; ], D: F                       
: }- [; s& C( U4 x2 T. y                        memcpy( &m_light, pLight, sizeof( m_light ) );. |* p4 `8 \) Z
                        0 Y# k" H5 _# _/ T/ T: B
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
& H. V5 r6 R& v: g1 k. J                        D3DXMATRIX  matTemp;1 l6 l5 N+ [9 R8 D( q
                        static const float CONS_VAL = 3.1415926f / 180.f;
" U. m! a8 q- r, _+ P
, A" P0 i! p2 v! Z3 J                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);& q/ q- `* j  |- X
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);8 }& B$ y4 g- t: B- n4 X% \, X
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); % T' l# L" U& Z+ {* o7 S) A
                        pLight->Appear( m_pd3dDevice, TRUE );
! y3 x" N7 D6 [$ l7 C
7 o6 ^. J" [- l0 E/ J% u                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
' B+ r& ]2 z/ y% j5 ^  d* \                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
- J2 w7 j- C" O' d' P                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ x: X3 W3 e* U) z
, Z  w. K! a! `6 E, c# ^" a                        DWORD dwR, dwG, dwB;
+ l# S/ ^4 _7 T4 E9 ?                        dwR = (DWORD)( pLight->Ambient.r * 255 );
0 Y6 s6 x( L+ K3 l3 Y  \                        dwG = (DWORD)( pLight->Ambient.g * 255 );7 m8 D3 L" E  g5 y# N
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
7 x7 N! m1 Y$ t9 @+ N3 Q) s                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
2 X4 E7 a2 u) d+ _5 }( K2 v                }
2 ~1 s+ v8 g; n$ r* N+ G: \. b' ?        }
" Y9 O; B) S* D9 M2 o$ L" I" c
! ?2 v! ^$ |) K$ u) k; [7 z        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );& d/ Y# s" e0 R6 s1 k
        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) );
- O1 ]  M! x) W# Q& \4 I0 ?. a( `; k. A        ::SetLight( bLight );+ |/ |; x0 c, O$ Z% e# n
4 f5 j3 V/ r3 B; v
        // ±ao? ?D?í???ó á¤à?
7 V" K! t3 F$ Y; s        m_pd3dDevice->SetMaterial( &m_baseMaterial );6 \2 }) X( t4 n; R& w- s* h# Z
       
4 O- r3 Q# o; @9 Z4 b#endif // not WORLDSERVER8 j9 z& K% E. J3 A$ F) @0 e7 \
}& M9 I; t0 f7 p5 m
并更换
* y" r5 [0 ~7 v# ]' rCode:$ i! L* e& p8 j$ Q- U0 U1 z
__FLYFF_INITPAGE_EXT
! f$ y6 ^5 j# D' U% V2 m. v/ y" }) e定义
7 B9 M) T- f! y* D! y# `5 B6 ]9 [9 W$ `2 s

. K: y# k4 ~4 K4 g' X: o' M
4 W/ Q) }: @+ F: h1 x5 v' ^' ^- ~* W9 c
现在终于删除我的狗屁加速...
, @: i, N: C0 U, M  G. [% z- a. }& m/ I  X
% ^+ F5 }7 Q" A9 u& C

5 z. Q1 }+ W* Q




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