飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
0 I1 e+ l1 A! z  T& [7 Q( U* i0 r尾翼:/ k9 d/ Q# z" c0 _  @# w% ]

' u. C+ {6 J9 l- x% A: X7 e代码:
/ _& K# h/ O. t8 R$ V$ `CWndAutoFood::CWndAutoFood()& c9 k% X% C; ]2 \+ Z: Z
{
* p5 i1 ^( h$ d& |+ g        m_pItemElem = NULL;
) c! q/ o1 n7 h# _/ w% u7 z8 C, ?        m_pTexture = NULL;
3 G' F  C. k3 c4 V5 {, _3 \        bStart = FALSE;
7 g% e7 S$ t5 u' N% V}) ~& ?5 y' ^5 W0 d
! P& M8 e: J! J3 m8 B. a/ {+ g  R# E  K
CWndAutoFood::~CWndAutoFood()
' Q, X, L4 Q8 Q. [  V6 u{
0 T# |7 E+ f1 M# f        AfxMessageBox( "AutoFood ist gestorben " );
$ U# P; n" {: j1 V}
4 l, b) ?3 F8 X5 I, oBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
7 O1 Z6 k1 ?- ^{. \) ^- D& `7 n1 I# M  `6 g
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
2 N6 {. ~1 r% C4 P+ \$ I- j}- A% ^3 {" d6 N2 ^# H
, c8 f  I" |5 k8 C
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )/ Q7 {" d: d& z5 p* m
{, r* j9 C+ E4 P& J( h) V
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );: J( U5 L% o( O  I+ n) S  p
        CRect rect = pWndCtrl->rect;" l: t1 ]4 j' e
        if( rect && rect.PtInRect( point ) )
0 f( V. p( T1 [7 M, d. F        {- ~: K! i( v3 k5 h! E0 p; N/ p
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );6 _4 }+ Y, @5 Y+ e4 G
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
! K) S4 O" }( j                {
2 _7 w0 D+ l  P* A, T                        if( m_pItemElem )& [9 G2 z' h2 u
                        {# \/ N7 ^* a1 E$ r9 X9 e
                                m_pItemElem = NULL;$ B- e) U9 t2 D% P9 o3 r1 [- I
                        }0 ~+ f( \0 d3 i" P6 x; ^3 [
                        m_pItemElem = pItemElem;
5 t  n! F7 p3 Z* p( B" l8 C                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );* u5 m( N5 F2 y! e/ c9 [9 i# A! K3 c
                }else{  p+ K9 v: k1 g  O
                        SetForbid( TRUE );
/ D$ ]- P% u; ^/ N                }
  u! |1 L* c* H: \0 U        }else{! l+ d9 l# ]5 O2 m. h8 q  x) q
                SetForbid( TRUE );8 c8 z  i$ h; K6 t0 o- w
        }0 O* r0 I: \% n( ^5 E( |
        return TRUE;
, T1 G! v# ~& K2 o" e}
1 _8 J- D7 C' D. A% O- M# k7 L+ n9 S0 @2 p, }# P' f
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
3 |7 k  j0 F6 v4 y{
; u- n* z! ~2 o" ~0 D# o$ Q        switch( nID )
* U2 \- J, G% Y% t0 E# E        {* _4 H- P7 l( S( [
        case WIDC_BUTTON3:0 Q8 i0 R9 n( h* `  Q) l: \
                {4 ]; F4 r4 t- W  e
                        bStart = TRUE;, `6 T. t: H6 p1 Z
                        break;$ Z1 D/ i2 o3 m/ }
                }
7 y8 F% t% n# w# B        case WIDC_BUTTON4:$ M# m' t# \5 o' X
                {
' L; j- X$ e2 {4 _# T3 V; X, f                        bStart = FALSE;7 D3 ]* ]) h( l$ M* F/ B( `8 U
                        break;
5 j7 Z8 J9 ?) y( P" v. f- V                }
+ w. Z8 \5 }8 M8 @        }
' F! ^2 `! t# b& @# i        return CWndNeuz::OnChildNotify( message, nID, pLResult );
9 ~! f& z* g! i}        9 X3 @8 ?* g4 t1 u- c
void CWndAutoFood::OnDraw( C2DRender* p2DRender ); i7 S9 K. C% c2 ?
{
2 L% I, X9 y" Y6 U9 p        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
: l9 x, [' Z: \' s/ N        if( bStart || !m_pItemElem )# Q9 J7 K% A, L
        {7 |$ O$ |. s' a4 [% [6 z7 q
                pBtn->EnableWindow( FALSE );
( w) c0 @/ V: W+ b        }else
* i4 l$ C4 J! u8 U4 T                pBtn->EnableWindow( TRUE );
5 ^5 w7 B  j( Y* l5 v        if( m_pTexture )
6 C3 @! a/ T7 P        {
1 {- k  \2 j6 n0 F# x                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );+ d) L7 l) o! Z" a9 e
                if( wndCtrl && wndCtrl->rect )6 N. h! W5 M- s: H$ m- t3 W2 F
                {: K+ w; T8 ~7 D' U& f- y2 M2 m
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );$ w$ L+ i* [$ |9 R1 _; N( Z+ V: U
                }9 s9 w, x3 F$ R6 E3 |/ s& u! H
        }0 R% V/ M7 N, ~, X% e% [/ h4 `: S% ?6 r
}' l  \- R3 f- L

4 Y0 \8 m: K$ l- n) HBOOL CWndAutoFood:rocess()/ n( ?, I. Q0 N3 m, G% w* w  l( H" }: r
{
$ b" e) i2 j# b5 d( y        if( bStart )
6 y! B1 C  C3 L: X. C' ]+ s        {" p2 H) L% ]+ ^( s" D1 A
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )7 n+ Y" ]7 M$ o' R0 ?
                {) W+ l" L8 r2 ]. F1 ]3 n1 z
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
# e7 P$ O- R7 ^) W/ }5 }, d6 |                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
& N2 `) e& x1 O: O                }else{/ [( O3 V; I' `: @, r' Q
                        bStart = FALSE;
9 o2 V+ F( g. t& }8 K$ {( h$ V; R                        m_pItemElem = NULL;
, K5 c' G- R: e8 ^# _) D                }
4 X7 i3 r: y, N0 S+ X- ~8 m        }
5 m1 m# m- Q; i4 K# O* q- U        return TRUE;7 i7 Y0 B# t8 h0 u+ I3 ?
}
# n# m4 Y1 y; ]+ A1 G
$ g8 j0 z" @$ v1 H登录视频废话:: \9 T0 ~& [$ k8 g- [' u' E; ?
尾翼:
6 ^5 G9 t% ]+ y9 v. W9 z' L. {
代码:
3 j  A: }) b3 u* b/ A1 A# N" ?* A9 F  G6 l2 k) {) `, o. }. l8 F1 d" G) H
void CWorld::SetLight( BOOL bLight )1 w. u, D. T' E" X5 w0 L! @
durch7 G0 G5 ^7 d; ~1 J: b6 M9 W
Code:
4 Z) I- q$ \5 g  y! h9 P1 evoid CWorld::SetLight( BOOL bLight )6 ]8 R3 y$ k  c1 S8 Z
{6 Z/ E1 p1 Y: b$ f
        //ACE("SetLight %d \n", bLight);$ n, H- ?) z/ }+ i1 A
        ( Q( f3 S  E, R$ W/ @' y% q
#ifndef  __WORLDSERVER   h# A+ N0 i8 ^4 B9 F
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
6 T: S: ?5 ?. k- z) y+ y        CLight* pLight = NULL;
, W, B) [) Z9 _. ?! Y3 L. Z: c( e4 ^, _  p+ o" P
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );3 W  A, o% \4 g  n. x

3 Z$ g5 U/ B" C- U6 s1 m- _        pLight = GetLight( "direction" );  G% W4 _4 h8 X, J  _

/ Q1 F0 s( G( D4 R4 p#if __VER >= 15 // __BS_CHANGING_ENVIR: c2 Z$ t6 |# h
        if( g_pPlayer ){* E5 w$ r7 t9 _8 Z) M
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );( q. i5 p. }3 ]8 N- y; ^/ t% }
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!' |" |1 l' t0 ~, G7 x
                {
. R8 l* Q0 l2 m+ z                        if( pLight )
/ B" b" |4 b. n+ p# A5 n                        {
- ^: v; p9 ?  s& s6 w                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
6 r* B/ n( C5 Y; w                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];1 [' [8 |3 `, j# U4 C( ?
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];6 V$ v( x- \( Q

* n% `, n7 J5 G, O: y9 p( V                                pLight->Specular.r = 2.0f;
$ |; n- j4 C' t# g                                pLight->Specular.g = 2.0f;
1 o- S) @- m4 i$ d6 s* N                                pLight->Specular.b = 2.0f;
; I' x! g! Z, M# n2 u       
6 L" o. R/ {  b. }                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
$ B# Z+ M2 G4 ^9 z6 B                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];, ~7 T( Z. c7 w! \+ h
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
' [5 n+ o; f1 K8 q' m3 g( g        ! M" X) w. ?6 T" B
                                HookUpdateLight( pLight );
( {5 Y6 o4 U( r3 a8 j4 V. l( q* w$ o; E' W
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
9 K, w' v9 @" f. \" i                4 |+ Q  f& M* {8 G
                                pLight->Diffuse.r *= 1.2f;6 e  x6 d$ B' T7 G
                                pLight->Diffuse.g *= 1.2f;/ B  `0 a3 D# m2 p1 p- w. g' l
                                pLight->Diffuse.b *= 1.2f;- f/ K9 Q# r% K; b
% f9 |, ^! O& Z5 g2 C
                                pLight->Ambient.r *= 0.8f;
7 {. m1 |9 C& o# T6 o" _                                pLight->Ambient.g *= 0.8f;) m$ w" e; `3 k" W9 d* ^& X4 c/ {
                                pLight->Ambient.b *= 0.8f;
! e' d; F; ^) S! y2 Z, |        ! N( y( E6 h' f  X- L
                                memcpy( &m_light, pLight, sizeof( m_light ) );
1 l, W* m" x6 D. k2 f6 S$ t" v9 c( w# z) d' n6 L
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);9 T2 j7 l, i# A3 c/ I, Z
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
4 _, M5 f1 i2 o' L                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ f' C' O9 `2 V% D  D8 l                                 pLight->Appear( m_pd3dDevice, TRUE );: C1 F- m$ g* W; E; ~4 Q
               
2 e2 M0 n0 Q# T4 a& k                                DWORD dwR, dwG, dwB;* q5 Z  n- A, u0 I
                                dwR = (DWORD)( pLight->Ambient.r * 255 );" {& p3 T; ^* Q; |7 i* l: ]6 \0 E
                                dwG = (DWORD)( pLight->Ambient.g * 255 );& L. L! D5 a2 r' Z) u; A. J3 D- `
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
* T% C. B! I& G; B3 ^( ]                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) C3 v- w9 v  h; E                        }
" k# T  O0 r+ d1 @( m                }
+ R" h& p+ u) E& D        }
; _4 i9 J  ]/ k+ x& w8 }        else
( H+ z& R1 _6 K8 m#endif 9 y0 I9 Q, Y1 }, b4 @

8 p5 ]- J: J3 x1 t! f2 i4 S+ L" O        if( m_bIsIndoor )' w# K+ Q3 n- I
        {
. Y7 W4 P4 @! u$ q5 p                if( pLight )/ t6 A/ f4 p- a$ \+ Q; K2 o0 \
                {                1 {7 J" L7 M8 ~1 i
                        // à??μ oˉè*
/ B; Y! U6 X" U" q, }/ Y                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
0 w  w1 l8 m! v8 S                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
4 B+ X1 o: b6 `# v* C0 W                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
9 Q7 D' M/ J8 D$ H+ k/ m/ F7 {" q2 N, q3 ]
                        // oˉè* ??à?
0 k; o/ f+ d6 E; |* k# {% V                        pLight->Specular.r = 1.0f;
- h0 ^! T" e5 w* z! E5 T7 `                        pLight->Specular.g = 1.0f;0 J. {- G  R9 Q
                        pLight->Specular.b = 1.0f;: W- T, h6 O' u
                        // àü?? oˉè* 8 |8 `! G0 H/ }* U9 t( x
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;; x' A) Q) L; Q7 U
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;3 V. G! r% @$ b( Z+ ^) n8 q
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
3 k$ `; e8 L' o7 x
" m  m. u# p5 @& K9 V4 Z) [                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, d" W( d* a1 i' |7 K7 U8 z1 a                        {, O3 k; o/ p! H, X4 F; I
                                pLight->Diffuse.r *= 0.6f;: y7 `( u3 K8 U( K# m8 D9 U' T2 x: @
                                pLight->Diffuse.g *= 0.6f;
  a0 b3 i. {7 ]& y6 U! {1 U+ ]5 m0 _                                pLight->Diffuse.b *= 0.6f;
- ]! I" R& V3 m; w, X3 G5 a                                pLight->Ambient.r *= 0.7f;8 ]+ M6 r, v# p/ i/ i) _' g  ~
                                pLight->Ambient.g *= 0.7f;+ S8 e! d- W* @% n
                                pLight->Ambient.b *= 0.7f;! b* o  F: Q4 H% M5 s
                        }
9 I. P; a8 q+ R% i% n  C1 \& p8 Y4 b0 v
#if __VER >= 15 // __BS_CHANGING_ENVIR
, ~2 i# S7 {9 D/ P6 K                        if( g_pPlayer )( t5 M* ~0 r- Z* D1 v7 j$ L
                                HookUpdateLight( pLight );
0 r/ Z) a& o) E#endif# N; W0 H9 B$ c+ W) M" z# y) R* A
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );5 P7 |  S" u9 B! I
: p9 I8 i, f7 T/ i; a# P" |1 b
                        pLight->Diffuse.r  += 0.1f;; p. N* F* j, |) z2 b
                        pLight->Diffuse.g  += 0.1f;. n. l1 \$ ^' V
                        pLight->Diffuse.b  += 0.1f;
1 M4 E( S) c) E& {+ F9 X9 L  N                        // oˉè* ??à? 7 w- x, T7 v( X0 e  O: m' S, U
                        pLight->Specular.r = 2.0f;
( Z3 {1 t& ~8 A0 S6 P) c                        pLight->Specular.g = 2.0f;
( P9 ^! B/ D* A* m1 m" f6 }                        pLight->Specular.b = 2.0f;
& I, _0 ~. y1 C2 `, z/ d. |                        // á?oˉ - }: }# H* z& U2 R, I3 u  a2 a
                        pLight->Ambient.r  *= 0.9f;
! N! U1 R% [/ K* n% n6 G) G; I                        pLight->Ambient.g  *= 0.9f;/ I1 L, S5 V( W4 O  y
                        pLight->Ambient.b  *= 0.9f;1 w2 B3 ]! ~$ a( u9 P" b
; ?- A' P( S! L6 `/ p/ ]
                        memcpy( &m_light, pLight, sizeof( m_light ) );  ?& z0 d% ]7 |# p: j1 w
                       
; S/ l% M$ f: F; D% J9 T/ _* @+ U                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );$ Y0 ^: I6 P! p9 _- \% F9 O
                        pLight->Appear( m_pd3dDevice, TRUE );
+ t2 C5 v3 {. s; ^* ^* \$ p, ]       
/ R* y; v5 l1 v0 r0 c$ d/ d                        DWORD dwR, dwG, dwB;
( O4 i& S0 w: F7 T                        dwR = (DWORD)( pLight->Ambient.r * 255 );: B0 P) N. T+ `" [
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
) C1 J) E0 U7 C* L                        dwB = (DWORD)( pLight->Ambient.b * 255 );+ A9 `! N' p. L' ^% T% ?3 h3 e9 f
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
0 }0 w9 s$ L" g" p, z4 h" k                }$ Z# h' W9 ?! k" Z" w
        }5 I! Q! j* I' Q4 J: j; m  N
        else
1 Y$ u. u3 ~: L/ t; T  m& U4 ]        {; O9 |9 G+ t- A. {! i
                if( pLight )& `: f  @, ]* j9 y  @7 x
                {) e  L. e# E; f2 W9 P
               
' y9 Y# G" e+ ?3 e  Y                        int nHour = 8, nMin = 0;
2 h, h" E1 S3 @        #ifdef __CLIENT
* {2 N, I* u0 c                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 4 P* U2 o& |/ K; n! m2 l. k9 f6 z
                        nHour = g_GameTimer.m_nHour;! }8 D5 d& f/ t, H0 v& q
                        nMin  = g_GameTimer.m_nMin ;' {- `/ X% J$ X. H
        #else0 `/ f, b) ~7 P  |$ i/ Z$ j# S& o
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
4 X8 @# P( g# I! n3 N                        if( m_nLightType == 1 )
+ D* J" D1 s1 I5 `: b( W4 p                                nHour = m_nLightHour;: o1 C2 N* I% y3 s- O- h& i8 H
        #endif6 a* y$ U; f4 C$ V4 h! x+ J* d4 A1 x
                        nHour--;; F" R* r" d& H  ?+ O6 v  M, @
                        if( nHour < 0 ) nHour = 0;
9 W( p( x. o4 _5 v                        if( nHour > 23 ) nHour = 23;- ~. `2 P2 U! L0 B3 s( C8 [! ^
$ Z5 D9 Z2 C: y$ c; C% k1 t1 B
                        //if( m_bFixedHour )
7 I5 ^# |1 C# n, ~5 i4 d" @                        //        nHour = m_nFixedHour, nMin = 0;
8 \% K6 v$ w& C* D! ^1 W3 B                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];5 c% ~) F1 ^; x) ]1 H
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
4 G: f# W% @6 r6 [' |& \  P3 w# G2 [+ E; Z5 D- w
                        //m_lightColor = lightColorPrv;
* H9 q) S2 y1 n+ p4 `                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
- m& F. r7 `1 i                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
5 F+ k5 y$ {% m$ }/ A                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
( o: D( S- W- B4 ~8 @2 V: N; B0 @                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;2 V) A; ^  U+ ]/ e- z8 A
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;2 @. z* l7 f/ Y: v
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
4 o7 N2 a7 p0 j5 M1 r                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)/ }, ~0 \) |( i% u/ J

+ `/ K5 l# ]# K# Q1 H' ?2 R4 o                        // à??μ oˉè*
( R) k0 Z" D( l& {' `' v2 l# O                        pLight->Diffuse.r  = lightColorPrv.r1;
/ O# P* {+ L+ i6 u4 w$ g; a' b2 @' {                        pLight->Diffuse.g  = lightColorPrv.g1;
' z( Y' Y4 |& H                        pLight->Diffuse.b  = lightColorPrv.b1;
1 C$ Y! N! ~7 m- C, \6 k                        // oˉè* ??à? ' V" A5 I7 w: Q1 W* _
                        pLight->Specular.r = 1.0f;8 i" I+ I* U& @) m7 b
                        pLight->Specular.g = 1.0f;
# W1 O( ?4 p& X4 c& x9 h+ u* p" v. U                        pLight->Specular.b = 1.0f;  N2 c4 p& p6 S3 n0 b/ _
                        // àü?? oˉè*
3 {% j$ w# Q3 X* E' {$ }2 Y                        pLight->Ambient.r  = lightColorPrv.r2;6 d. p6 |$ C/ x+ S" \
                        pLight->Ambient.g  = lightColorPrv.g2;
* ?- l# O8 l  ?1 r1 D                        pLight->Ambient.b  = lightColorPrv.b2;# {$ \' s, u0 F2 m. \6 L

4 B+ x  G7 A; _) x! }                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.& ]* T+ c+ ?' P2 A9 J3 S
                        {* u1 R4 p" p! c& u' R7 W
                                pLight->Diffuse.r *= 0.6f;- X' T7 u" V+ K4 B5 G
                                pLight->Diffuse.g *= 0.6f;2 {  E7 ]. w* w* J
                                pLight->Diffuse.b *= 0.6f;
+ z4 _3 P; n8 q) M! S                                pLight->Ambient.r *= 0.7f;
8 o# N7 u$ V/ T! s& c- W+ u: W+ F                                pLight->Ambient.g *= 0.7f;, l7 W9 q0 p+ Q# E! _5 |" V
                                pLight->Ambient.b *= 0.7f;
/ d/ E! t$ I. L/ D2 F" V                        }1 c4 d7 Q) x* o9 s- B
                        # m. k2 A# D7 Q, t: L
#if __VER >= 15 // __BS_CHANGING_ENVIR
& ?; R4 A) n! C6 F0 e. z                        if( g_pPlayer )1 l, [2 @6 X* V: q5 g3 V
                                HookUpdateLight( pLight );
! R( f6 K( |  \# i" V5 ~$ p#endif3 T  T5 C( X3 d, j* I: k& s7 X
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );/ K4 ~: V4 Y$ r# W

. s) w3 v: D. M/ t, F) y+ I" \#ifdef __YENV, h0 i$ F; ?# W7 E
                        pLight->Diffuse.r  *= 1.1f;
% I6 C3 e4 p' d" a0 Z" S                        pLight->Diffuse.g  *= 1.1f;
8 z5 b# ^4 @5 {* U: T                        pLight->Diffuse.b  *= 1.1f;
! n2 |( t; h! }! B9 I& J                        // oˉè* ??à?
+ |( b% s+ N- z5 g" ]+ K2 M' N                        pLight->Specular.r = 2.0f;
' P6 i3 X+ d# I6 s* s                        pLight->Specular.g = 2.0f;
; ?, ]3 j% {/ b                        pLight->Specular.b = 2.0f;
/ i4 X# V' M2 B+ @# A7 s  I                        // á?oˉ ( l$ x9 _' _! q; A+ X! p
                        pLight->Ambient.r  *= 1.0f;
* \; R( a4 ?8 n; f2 @+ t                        pLight->Ambient.g  *= 1.0f;
5 U* {2 q2 b% P                        pLight->Ambient.b  *= 1.0f;+ }$ d* `3 q2 [; f
#else //__YENV* f4 |7 E. j9 T. Q
                        pLight->Diffuse.r  *= 1.1f;1 V, G) V) I! J5 D; ]3 l5 s
                        pLight->Diffuse.g  *= 1.1f;
# @$ }8 S+ x. m1 N+ j1 D4 Z1 \2 f                        pLight->Diffuse.b  *= 1.1f;
: L% c- Z5 @' w- f, O4 G                        // oˉè* ??à? 0 j0 @$ |! j" L- J  H6 P( {- q6 H
                        pLight->Specular.r = 2.0f;) a- m/ M$ x/ p& ~; h, \8 p4 X
                        pLight->Specular.g = 2.0f;
2 z8 U+ Y4 p+ e- C" |# u2 H$ M& S                        pLight->Specular.b = 2.0f;
2 V+ G1 p: K  L                        // á?oˉ
5 }' o4 }& C9 h1 \                        pLight->Ambient.r  *= 0.9f;: h+ z% h; E8 m# l% l* O
                        pLight->Ambient.g  *= 0.9f;
; o( z& F  K8 b9 r                        pLight->Ambient.b  *= 0.9f;' H5 [; Q  h( A0 g- }, N; b, ]7 w
#endif //__YENV
$ `0 r9 r7 E3 w6 C& k                        ; q# u* t6 K8 X. C1 f
                        memcpy( &m_light, pLight, sizeof( m_light ) );; N4 y* p6 d/ b  K' C0 W1 ~6 j
                        ) a$ J, P: V; A: z' t
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);/ F9 Z; w; L! f9 m' @: K" j7 p
                        D3DXMATRIX  matTemp;
6 R& F) z7 j# H                        static const float CONS_VAL = 3.1415926f / 180.f;
/ _+ }9 I; g9 `" F3 ~+ l+ S$ Q! O9 }0 B* n% o  B& s
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
# t; m1 q- ?5 h2 ^# t0 z/ n7 k7 q: Q                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
& p' U. h8 u, b( s" Q: i: T                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 8 v+ }- d. s1 `" i
                        pLight->Appear( m_pd3dDevice, TRUE );: y; V/ j* s- P
: A5 I9 E: e! F  y
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
3 C! n+ A, r- r, ?) J7 x2 @" `& N                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));! D! k2 F" w: O) T
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ( \# T: Q) y; ~. o% ?, T7 T) t, Z

" W$ |  }+ j0 v8 B4 N+ C                        DWORD dwR, dwG, dwB;1 |6 X5 o6 v9 X. @
                        dwR = (DWORD)( pLight->Ambient.r * 255 );5 ~; h6 g1 S& ]8 b1 O
                        dwG = (DWORD)( pLight->Ambient.g * 255 );- i! E& Q$ I2 a/ I0 ?9 y
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
0 c' M+ Q; `- U. \) F3 [                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
$ D1 M. p  U- }                }3 C' o3 m: U7 D) n5 t. D  G6 O
        }
8 K; J  b8 A0 A$ R6 J0 `3 s
1 P, a: V& `8 h7 f. i        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
! D8 |/ L! I# c( C        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) );8 c* b9 m. Y3 H+ F4 I
        ::SetLight( bLight );: d4 T. Q3 |3 T# |- ]
1 Z: ?+ n8 G( I2 d/ @; w+ d: v
        // ±ao? ?D?í???ó á¤à?
( \' r0 f/ K, U$ L& g( j; ~        m_pd3dDevice->SetMaterial( &m_baseMaterial );
  y/ ?7 Q- N- c2 `+ _8 R5 E" T: E" Y        ' z5 i- }" K" B% z/ A
#endif // not WORLDSERVER6 w, ~* e6 I: y! x/ n2 H
}* c: s, b  l. _) T+ P
并更换3 `, G6 V) L, ^
Code:/ y+ k" K# |6 V$ Z; w* Q
__FLYFF_INITPAGE_EXT
! W1 }  r4 L7 D. g- e' b定义1 {% a* S( e: b# n- `

* Z+ J1 \( R) N* E: x8 b' l5 Y
6 o' K5 F5 |9 N3 C8 t( r+ T+ V$ [0 U5 k4 T" z) q

8 m' r5 }0 t0 b1 n+ \现在终于删除我的狗屁加速...
$ b6 Q" L6 m$ E9 n/ ~0 ?( f1 b; B
' o' N' P# K* h, F: v+ w. Z

/ \+ t2 u$ t, W0 w' Z




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