飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:: ^3 f0 y- h: `3 r
尾翼:5 i) l( g# K' o# ?" G" ~

  H5 K: E+ E- i2 h& N9 T$ g( p# R代码:
2 o8 K. ~4 b1 U) Q& n0 XCWndAutoFood::CWndAutoFood()7 d4 t  u' L6 C& B7 w
{
$ w1 ?0 N5 p9 O        m_pItemElem = NULL;
3 T/ ^6 Z/ n6 t$ I( J5 t9 @        m_pTexture = NULL;
7 O- W6 ?# J/ y$ B6 D        bStart = FALSE;9 P7 f5 k0 v' _. t: Q
}
1 f1 X+ d- v8 X+ _7 H# X- m
( K5 ^7 ]) Q! b: z4 h4 k8 K3 MCWndAutoFood::~CWndAutoFood()
# y$ @) T4 \! [, n) e7 v' [{5 d/ O) F' a  w
        AfxMessageBox( "AutoFood ist gestorben " );. a4 a# O- e  ?# B4 |# j
}
- n1 j& ?; p4 P+ MBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )  c  R- Y% C6 l. I' v* w
{1 W: s: G+ z. z' n
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
2 l) F# I1 |( k; i}
( {* S( z6 [7 t' v- F  C8 _2 ]1 e% U: H! \8 J. C
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
/ s4 F( y6 U( M  P{7 Y  B: h; M7 T8 R2 P
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );) `% N0 ~/ X# Y( F8 Z- B" f  x
        CRect rect = pWndCtrl->rect;
+ I1 {/ {0 X! v/ w% F: x        if( rect && rect.PtInRect( point ) )
) k$ l1 d4 o3 ^4 s7 p: K* s        {
- \: F4 D- Y5 `% S/ H: }/ z                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
- u8 `( |1 S, M, d& A* K6 h, A( w8 ^: x                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ u. `' b' ?6 P9 S5 g0 G                {
5 p* @7 b4 t& I                        if( m_pItemElem )
; Z8 ?7 M  f9 t' J) W' P8 u                        {
, `: D9 M, s8 l( u( c                                m_pItemElem = NULL;& Q0 Y/ M* }# ]* _& d
                        }) i! o: o. E. i5 O
                        m_pItemElem = pItemElem;
" F6 \0 z" N9 O0 X                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
" f' E$ U- k  a  ~0 j                }else{$ p% j, ^$ B) o  w3 a
                        SetForbid( TRUE );
6 ]; Y2 s2 J0 W. x0 ?8 f2 x  u/ Z                }
# z8 C* j0 ]3 d6 J; Q9 q        }else{
1 O8 e4 X: q. i8 E! i4 s                SetForbid( TRUE );. G! n6 ]' O* r& {+ {
        }3 E6 z  N) x( {
        return TRUE;9 m  C0 P, M# B" j  H
}
4 P- T# W7 y4 V3 Y  ?% F
$ y4 E+ j' T1 U2 m* iBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
$ ^$ C8 o9 d/ }* `) o/ o4 |{. a6 Q' |6 {1 o9 \
        switch( nID )
& E7 k% Z  k$ F3 F0 D; `1 ~$ f        {
5 b1 I3 e+ q' Q5 }        case WIDC_BUTTON3:
1 |( p% w) g- p                {
, m! d  M) J( }; Q( g                        bStart = TRUE;2 M4 k& O, T! S' b4 p, \' ~
                        break;+ w3 k6 G8 f: [' M4 z, {3 M! a
                }
8 I' {9 P8 `5 m/ w% u$ s# D7 T  \        case WIDC_BUTTON4:* U7 P. R# G+ ~: ?9 Y
                {
, U, q8 F5 w$ h0 ~6 p; G! L4 s( Z                        bStart = FALSE;
! J( D$ }) U+ F- m                        break;. s; Z/ F  m6 t$ B! B
                }) j( N, }% |# Z, c
        }: A% E" u2 r  \$ k9 D
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
: A! ~  v- K3 @; v}        1 d5 s# X7 c2 q5 T( G. A# _
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
; C$ E. K0 M, K6 r1 o& B& h  w{& j) {1 L" w6 q3 f, z) x
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );$ p5 G2 O5 h  }/ T& X/ F
        if( bStart || !m_pItemElem )
! H. j7 R, |' N        {
# F& G5 R- Z1 A+ i7 ~& L                pBtn->EnableWindow( FALSE );
: r; J4 c! V2 ^6 b9 Y5 @4 i6 M- v        }else
) C/ E+ d8 ?+ a8 C9 m' I                pBtn->EnableWindow( TRUE );
, N: o+ m+ N* E% Y: I" |        if( m_pTexture )6 }5 [' A" y1 ]) }
        {* N4 Q& l: j4 p  {+ G5 D0 ?$ t$ z
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );2 v8 L" Y- e7 Y5 i% I; d; [
                if( wndCtrl && wndCtrl->rect )
& m4 R, i: N1 w                {
& |: ^8 X' S! F9 i  B5 e                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );# e7 K( Q; k/ ]  e
                }
2 N; r) G9 r2 M        }
8 l$ e% X8 S0 y) w}
* m7 H- w* @' E5 b" A8 s$ ?8 b9 H: o6 T: L
BOOL CWndAutoFood:rocess()1 I5 x4 {; S1 @# G6 C
{0 w, {0 G' n8 `4 T' i2 d% e( ~- K
        if( bStart )
/ `  |8 z9 A7 H! g( _        {
3 M+ w* e  X- ?% n                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )5 t1 }& t$ {6 k$ x7 P# p
                {; ^$ z% d. h; @
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() ); h  d6 D6 A1 K8 ]% L' x, B
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
' ?  I: s! I8 j: s                }else{
( a2 O9 V" W- a6 H$ u                        bStart = FALSE;
1 R( ~4 Y' e0 G) a; m1 d, a, l                        m_pItemElem = NULL;, a  F( X% t7 _7 \7 q4 j2 w
                }
- V* e9 w' K7 T6 x, b        }
( O% y+ s5 X9 b; b/ k( ^$ {        return TRUE;* Y: o, O: Q7 E; _$ P$ Q' r2 `
}
, Y0 ~4 e5 a6 I3 t- s+ `3 D) b( g3 Q7 v' c9 A& F
登录视频废话:: h" e8 X7 v3 S2 b% ]: S. V
尾翼:
7 X; I) U' L, }3 t8 n  E/ d* V
. j) K0 a" N$ Z" ]* M代码:* V8 E1 B8 Q0 _2 J# ?% K9 T% k9 C

+ p; g- ~+ I. l. svoid CWorld::SetLight( BOOL bLight )0 Z6 S/ B% M" ~7 F8 |
durch3 @2 o. @/ M# `4 i( c5 _
Code:6 U* ~  K7 m! p" K$ S
void CWorld::SetLight( BOOL bLight )
! B, K8 w3 \" u% M( a7 o{1 C6 L4 m3 S+ `, j" h, U- o7 l
        //ACE("SetLight %d \n", bLight);
! Q0 T+ l0 X. K& E       
4 L4 f$ U: U6 k' t: O+ o6 `! i#ifndef  __WORLDSERVER # r% A7 q7 l3 I- @& S5 X
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);8 V0 ~$ T" H, ?& o
        CLight* pLight = NULL;  u1 f  V% w. k' P$ N0 x) `

! x. F8 E7 L  U9 w        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );% R/ p1 O5 y* ~; a

/ R+ |  l4 p, E, t: g3 C        pLight = GetLight( "direction" );. y- `' B9 b  e. Q* m
& [  _* K; Y0 c9 b
#if __VER >= 15 // __BS_CHANGING_ENVIR
" q$ C9 G: Z/ Q. B4 v, I        if( g_pPlayer ){  f7 I& \) X( g0 d5 J/ d# T! U
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
; H" O/ v$ u" s8 d                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!  ^3 }  V  ^% |% z* s# V0 p/ G: ?
                {
/ F8 O, y  v9 P1 z$ l0 ^                        if( pLight )
& k5 Z$ ~: t: {                        {8 H& K! i6 L7 W& k0 m6 g" v
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];9 I/ I* A; s+ u! ~( ^
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
" x+ L/ U) w  ]0 H/ r                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
2 B( D( T' m) B0 J# L
' |  a$ F( |, Z. C2 T, F                                pLight->Specular.r = 2.0f;
4 F3 T0 z& O4 L/ e6 I- c$ v                                pLight->Specular.g = 2.0f;  p1 h: M# f) n3 @
                                pLight->Specular.b = 2.0f;  P. B6 O- l8 b& d) S: {( p* G
       
+ M6 h* F  G$ i5 V+ ]                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];" m; d( {/ F' ^3 |7 W# G
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];! Y! v2 i0 u0 f; E. N5 C; i
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];7 k8 \$ K4 @2 U2 m: Y
       
: o, c: ?( \8 W# v  m( x                                HookUpdateLight( pLight ); # H0 A; M$ X% J* t
, E( O3 e. ~2 C5 }0 U& k) T
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );: X0 l  T" L* Q- c8 ], _7 R* B
                ) ^  B5 T8 `! @# d8 t: G8 Q: {
                                pLight->Diffuse.r *= 1.2f;0 v& F( F7 l4 g
                                pLight->Diffuse.g *= 1.2f;
' K# T( ~5 p) z+ X9 l! A                                pLight->Diffuse.b *= 1.2f;- B! c' U# G# i- y. h$ G# I
1 o+ L( |. M" A$ H
                                pLight->Ambient.r *= 0.8f;' |7 |) }+ A. K+ A2 z+ i
                                pLight->Ambient.g *= 0.8f;
4 h' I8 Q9 g9 S+ ?; o1 `4 P                                pLight->Ambient.b *= 0.8f;
& y7 U- Q% _* R9 j, v$ J        9 X& C: D4 Z. W" g9 ~; \
                                memcpy( &m_light, pLight, sizeof( m_light ) );
" ?! Y4 ~+ k& q: ^$ m3 ^2 b# K9 `
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 Y- q% S" r  {, ]                                 D3DXVec3Normalize(&(vecSun),&(vecSun));" {/ K/ X/ S; V' y1 J  U  Q7 J
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 I% K! a+ j( I; Y/ X                                 pLight->Appear( m_pd3dDevice, TRUE );$ W+ i& m3 J) p; m
                3 f& e3 Z% E, H4 A' {" z' i( C
                                DWORD dwR, dwG, dwB;
# a) Y, w/ }2 @                                dwR = (DWORD)( pLight->Ambient.r * 255 );" R4 @2 H. a- C2 q& B* Q+ ^& Z
                                dwG = (DWORD)( pLight->Ambient.g * 255 );) N8 X: Y9 `6 _" D( u
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
. Z$ M9 }4 ]* P) p                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );& B- I% k- ^' l9 N4 {9 n8 b
                        }
& }' C3 e, i2 u                }
1 A" q0 F# z/ q" v9 N9 K! r  C+ h0 X        }
3 j& K3 d" n  I5 \/ D2 d, ]0 \        else! Q' b- f9 b: @* X4 D
#endif * s5 K% K/ E! z& m$ B

) i5 q' `+ m3 `0 j  s9 ~3 b& P        if( m_bIsIndoor )" n, L7 }( w! R' b. z
        {
  b# [* A6 n) i! C6 g4 X9 b                if( pLight )
& ^! q7 F/ H) E. ~* z                {                0 A3 |* t$ O6 P8 X* y0 Q- v
                        // à??μ oˉè*
7 a  l& I" }* H# B) h                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;; i; Z; B1 c: B. G1 W) ^' ]0 G, A2 d+ Z
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
3 {2 `# `5 _1 m) j. L  X( j                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;, g: i2 O' z, K& j8 S' i3 |

7 ^0 u# d$ d7 B2 ?                        // oˉè* ??à? 5 Y# V$ V3 u& f! U4 H2 C6 i0 H
                        pLight->Specular.r = 1.0f;" U8 ^2 D) P& }5 \+ a5 O
                        pLight->Specular.g = 1.0f;
/ ^* I! s' n: F, n, ^                        pLight->Specular.b = 1.0f;
! ]. X: n- g  l2 \1 p                        // àü?? oˉè* # J3 Y* ?, i: l( U. Y& d6 c
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;: P7 @7 s! E  [- L& o) j1 [
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
7 ?+ V* `5 C# U                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
1 _1 v/ G: X. }" W0 O
/ i% q5 k( N  N: G+ w                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.0 Q3 c  N9 l  G5 O/ R$ w  m9 e
                        {
9 _2 q2 O) c8 [8 ~7 T+ m                                pLight->Diffuse.r *= 0.6f;7 U2 F+ d* Y% G  @5 P* G" m# W
                                pLight->Diffuse.g *= 0.6f;
: m8 H( o+ V' u                                pLight->Diffuse.b *= 0.6f;, `: \4 H# T: I2 F( o) ~5 A
                                pLight->Ambient.r *= 0.7f;
9 |) L7 e4 r1 w% ]8 P0 v0 V- D                                pLight->Ambient.g *= 0.7f;
: Z; b8 s9 ?0 ?                                pLight->Ambient.b *= 0.7f;
% Z* F/ c! K- Z! V. R+ j                        }
3 `6 H0 w2 W. R. }; R$ A0 N& c* J" x5 k' M6 \9 b1 }
#if __VER >= 15 // __BS_CHANGING_ENVIR
' A; Q9 j3 q+ R- \: V                        if( g_pPlayer )
/ G5 |* r* O9 J0 |0 H                                HookUpdateLight( pLight );
9 \0 f4 f' d( b' H, C4 o9 `1 {! j2 ?#endif
, ~. `. j5 a0 D& D/ r6 x                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) ^/ v2 d6 O0 `" ^4 z3 {% ]
9 d# B+ Z6 U+ ]6 |( A                        pLight->Diffuse.r  += 0.1f;1 k. ]) F- d! `: x" n! m3 W
                        pLight->Diffuse.g  += 0.1f;
! j, p4 Q0 i1 \, }$ g, l3 D                        pLight->Diffuse.b  += 0.1f;
7 o% Z6 `# j$ ~                        // oˉè* ??à?
  J% s' b( R* N+ s: {! r7 r) c0 S                        pLight->Specular.r = 2.0f;0 n: {( _* M  C2 f' w" v& ]  `$ i
                        pLight->Specular.g = 2.0f;+ e+ b8 y# Q9 r
                        pLight->Specular.b = 2.0f;
6 ~9 }* |& ^5 L. ]                        // á?oˉ 4 S' Y  v- s% }' ^( ^
                        pLight->Ambient.r  *= 0.9f;; M3 q$ g4 |# v! J
                        pLight->Ambient.g  *= 0.9f;; ?2 o$ d! q3 n' V6 ^* M! f
                        pLight->Ambient.b  *= 0.9f;( }. a" Y3 o! Z2 ?. X! O

% Z( \4 _0 e- a3 _5 }( L2 }                        memcpy( &m_light, pLight, sizeof( m_light ) );1 @& i. o" C& k; V; B& M/ G: k
                       
% e2 |. B$ {/ {) u' _; d                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
: R4 k# j) r" B! [0 V                        pLight->Appear( m_pd3dDevice, TRUE );
9 U' h0 O" j' D1 {       
  g7 N( [0 m, d1 L3 J                        DWORD dwR, dwG, dwB;2 Q0 |2 ]% n6 x0 d3 y! u
                        dwR = (DWORD)( pLight->Ambient.r * 255 );/ E7 V; p/ A( Y; t0 p2 ]  P
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
: }7 }, V1 A+ Y! J* g* f, X                        dwB = (DWORD)( pLight->Ambient.b * 255 );
' r4 h( r& G" _$ T1 `0 M                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );0 T' n# r% ~! e8 i/ m% `
                }# r, J. Z( D. z# X% Y
        }
' m1 N; V0 f: s2 Y        else
5 D# D" f4 K* L! U: O$ b        {
" Z" c6 [1 p3 P# m2 X- z9 F/ o                if( pLight )! Q( @2 T: X" m# S
                {
& C4 U. Q+ ^$ L1 x               
* d' j, x1 A8 [                        int nHour = 8, nMin = 0;
+ F) k0 d5 I, k2 ^2 O# h6 f0 A        #ifdef __CLIENT
  O1 ~1 r" G1 g+ c6 g                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
) }  d5 n8 n' }( d$ @) |5 M                        nHour = g_GameTimer.m_nHour;3 u% h6 f3 Z, f4 T  D
                        nMin  = g_GameTimer.m_nMin ;4 O0 x. W: a5 I
        #else# P( O* Q& [& m% Q' k! V
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
: T9 `3 |* c% b3 s6 \3 Q                        if( m_nLightType == 1 )$ t5 c" F  k9 a! H. Q( u% L
                                nHour = m_nLightHour;+ {7 G  N3 G4 Q, ~: B) m
        #endif- F0 o+ I7 }# f; w) n* v, \3 B6 N
                        nHour--;
  k; Y6 l  u3 z7 C" J: i/ U- N" t: _                        if( nHour < 0 ) nHour = 0;1 |7 z7 V- E4 T$ Z
                        if( nHour > 23 ) nHour = 23;* Z* a( U' b) [5 O: @0 i: H
( h7 _! U! u! a& \) @" B, y* M
                        //if( m_bFixedHour )
  z1 l4 G  m8 ^0 M                        //        nHour = m_nFixedHour, nMin = 0;. d+ {- \0 e. W- [  P
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
* q, M9 |3 E  M4 _, G. X* Z' F                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];+ _: M8 `- {0 B
% ~, ?, T& o8 m. ~! X' _9 m7 e) B+ C
                        //m_lightColor = lightColorPrv;$ K# ?1 C( A' K* a- \2 T
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;% x3 X1 }2 B* ?7 g
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
: r% u5 z6 ]/ O: K                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;+ o6 f  Q# G. C2 Z/ |' M
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
$ Q) N& @. l: P4 I6 V                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;! h0 Z/ p3 g" o  l+ A# W. ?
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;; p. e5 G9 g3 \$ O$ ]( V* u/ A
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
2 a2 T( o! R; g! P0 y' r9 V" Q! D" O! o+ e
                        // à??μ oˉè*
1 y, h8 N2 R8 E7 h$ |                        pLight->Diffuse.r  = lightColorPrv.r1;0 r' H, ?+ X) a1 B$ p1 d
                        pLight->Diffuse.g  = lightColorPrv.g1;
+ I7 l- F! I) R6 C* X( ^                        pLight->Diffuse.b  = lightColorPrv.b1;
: J( f! m1 @  q, P& j" A                        // oˉè* ??à? 3 y( s& G' g2 A
                        pLight->Specular.r = 1.0f;
( H! C& a. C: X4 x' G                        pLight->Specular.g = 1.0f;  Q4 ?- H+ j2 O( s* C- z
                        pLight->Specular.b = 1.0f;% L. W' _. ^- e
                        // àü?? oˉè*
0 Q6 L5 k( K9 D5 Z                        pLight->Ambient.r  = lightColorPrv.r2;
& e6 _5 p: ]1 d0 ^3 D* S- @                        pLight->Ambient.g  = lightColorPrv.g2;
5 _7 J5 Q. _; ^: o" d                        pLight->Ambient.b  = lightColorPrv.b2;% B( \! n$ p9 c, {/ l
# I9 I# L. T5 U6 i
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.' B) {5 h0 _! Y- s' j/ E
                        {4 L/ n& k! \4 `, L; ]9 d
                                pLight->Diffuse.r *= 0.6f;6 D2 j5 {$ R" x: g
                                pLight->Diffuse.g *= 0.6f;- x; a7 j: V5 y- y8 n
                                pLight->Diffuse.b *= 0.6f;
8 X' b. \. \4 s1 ]* x5 X                                pLight->Ambient.r *= 0.7f;
5 u5 S- f2 p5 h                                pLight->Ambient.g *= 0.7f;8 e. N2 a+ W$ K
                                pLight->Ambient.b *= 0.7f;
& {( J  c  M1 {                        }
$ w0 H! t$ x  ]                        ! ?7 u' m* X( G; B$ Q
#if __VER >= 15 // __BS_CHANGING_ENVIR
; M5 Q% j2 \& Z: n8 x                        if( g_pPlayer )
" g0 y/ s; q, ?* ?                                HookUpdateLight( pLight );
& s- k# ~) K$ i1 c#endif0 e- Y. M/ g4 R" B  l
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );6 F3 K( v. P3 \% U7 K1 f
4 t" e# c- d; n9 B5 L
#ifdef __YENV
, R2 E0 w! X1 p6 @4 o' j                        pLight->Diffuse.r  *= 1.1f;
3 m5 n5 f2 Z3 C6 Z3 t: O0 g2 }4 m                        pLight->Diffuse.g  *= 1.1f;
( P- z+ y  z+ q  L                        pLight->Diffuse.b  *= 1.1f;$ b9 @2 [( t( i7 t
                        // oˉè* ??à? $ _: z0 b2 P. R# x7 g$ g% ]  B
                        pLight->Specular.r = 2.0f;
* h# f  G  v- F; l; ^; ~' U' N9 x                        pLight->Specular.g = 2.0f;1 X6 E: E/ w1 h" M9 `" k4 g7 }( D
                        pLight->Specular.b = 2.0f;
4 ]) S' n9 C& d3 A; X7 ^5 m                        // á?oˉ , c% {5 Z: U$ S
                        pLight->Ambient.r  *= 1.0f;+ I% a+ b2 }$ }  s: q! Y
                        pLight->Ambient.g  *= 1.0f;
# y1 E9 J* b7 r$ i9 }/ {! D                        pLight->Ambient.b  *= 1.0f;
- z" o: ?4 N" P#else //__YENV
! _- y3 r1 F- D+ v& ]) P                        pLight->Diffuse.r  *= 1.1f;) H( C6 C3 P2 h4 b. g
                        pLight->Diffuse.g  *= 1.1f;* k. {, ?6 b: ~. x, V
                        pLight->Diffuse.b  *= 1.1f;, {$ l- ]7 D, W
                        // oˉè* ??à? , H; Q4 o% K; G$ D$ R
                        pLight->Specular.r = 2.0f;
% @+ L+ o8 D& I3 ]$ s1 w5 V                        pLight->Specular.g = 2.0f;
3 \( J, J) m/ [8 i& ?                        pLight->Specular.b = 2.0f;
- Z4 l1 U2 ~% D/ g& I& w) c- G7 E                        // á?oˉ
1 w9 y, Y; A! g+ @                        pLight->Ambient.r  *= 0.9f;% C8 u: ]2 P5 m% [9 ^. @3 }; o
                        pLight->Ambient.g  *= 0.9f;& p! x- S- E# i
                        pLight->Ambient.b  *= 0.9f;
3 }' z) {+ F* V- E3 C#endif //__YENV
+ O) d# ~, p- @$ x2 Y                       
) N: v+ O& E, [4 y9 Y. g/ I' Y% P                        memcpy( &m_light, pLight, sizeof( m_light ) );; @! s* {0 j9 V4 n0 d
                       
: x4 u5 c, {) o, b                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
$ w/ G6 Y3 v! z' D2 n9 u                        D3DXMATRIX  matTemp;7 R4 B8 ^2 N0 P* }! J5 B! T! {0 q
                        static const float CONS_VAL = 3.1415926f / 180.f;1 {/ r, q' a+ y7 l" }
  p! J. `$ H& Q; P  L
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
* v0 V4 j& _; A8 c                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
+ G% Q0 i* f" ?8 `4 N$ s                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
3 c1 ~6 v) n9 E                        pLight->Appear( m_pd3dDevice, TRUE );2 x+ M! ~$ L" O) Y

* H- ]4 x# N. _                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);, w+ n/ p  S7 E0 x8 F0 I' H+ p
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));; \. n: e5 S& _1 x+ |, H4 L
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); : d7 C- }9 b: y( X
7 f# d0 G1 R1 Z
                        DWORD dwR, dwG, dwB;
. v2 f/ a- E- {6 Q                        dwR = (DWORD)( pLight->Ambient.r * 255 );
& ]4 V+ b8 Z; R" \) D                        dwG = (DWORD)( pLight->Ambient.g * 255 );
( }- `" S2 t3 I, ~                        dwB = (DWORD)( pLight->Ambient.b * 255 );$ e3 [2 A& O; ^% r, F
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
0 \  Y2 R2 j* u2 Z* I3 Z' F7 k* N                }- X4 C9 Q( W# g! g  \
        }$ J9 P8 d" V9 J  k
: I9 N6 C9 y9 k6 t& t
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
9 h' E3 L2 N/ O( Z2 m        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) );
- R( V) D: W7 b0 y4 Q9 z        ::SetLight( bLight );
1 u! s) Y) L8 E( y; Z$ r$ t! Q. M
! J" J# W" n+ L" X. m0 P        // ±ao? ?D?í???ó á¤à? + N6 V: Z/ Z6 x: p2 P
        m_pd3dDevice->SetMaterial( &m_baseMaterial );/ c  y( W7 ?" s6 n1 l; ~( n5 V
        . \  G" Q. a1 ?9 d$ d  B0 @( w
#endif // not WORLDSERVER
4 R, f9 _, @4 p, t}
7 }6 u) d+ f) |( O并更换6 I$ S; |* e; D- Q4 F& F7 A7 }6 Z
Code:
+ n- b8 x# c5 F" R__FLYFF_INITPAGE_EXT
3 v* V6 Q5 p, Q# ~2 x1 M- Z定义
; J2 U, M; a/ s  t1 G6 Q
; p% X1 L- D2 r; ^( [1 Z9 [4 A5 T5 p4 F' e! V8 a+ C3 N

1 o# N6 w% ^1 O4 @/ C! _5 N
$ Z/ s- {  N/ A3 A/ c现在终于删除我的狗屁加速...
% x9 T7 l; h3 ~  ^! D' c8 k# ?4 F, r$ S' j# Z

/ R9 A6 G0 _' Q- [4 e; J6 ~
1 @1 S- k5 Q" {% j' ^0 y% f2 P




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