飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:/ u, k. ~- \3 l$ r/ D- ~& |( k
尾翼:' t; Q, Z( ~% o; L
% ^& ^" X( |$ N8 c7 v
代码:& {- E' c" C9 j0 @
CWndAutoFood::CWndAutoFood()& y2 `, T( `$ d2 p' ^8 b2 V, e
{
6 \; f1 f4 D9 S% }& x! a5 J        m_pItemElem = NULL;7 H! a9 B, e6 L+ m: u( E3 l
        m_pTexture = NULL;; @5 Y5 Z) t0 x8 k8 U) F
        bStart = FALSE;) H5 X! N2 E; h- X  _
}
- j- b- {& t. ]' C
0 r/ x% L) [& j+ R! f( \1 ECWndAutoFood::~CWndAutoFood()/ @1 k9 i9 {4 e. h' E8 W/ P$ m
{
! G) D  O8 C2 {4 t. ^: ]) d7 \  G        AfxMessageBox( "AutoFood ist gestorben " );- V! a6 C4 @8 E& t1 f$ d6 E5 Q5 I7 u
}& x9 Z% n: R$ k$ {6 u: R% v+ `$ H
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
+ \* x; N" G: l8 `  Q+ K{9 q/ z) `7 h$ B$ H; N
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );( S% d9 ~: u3 C; O; z) G
}
% v' a7 J8 x: L# `1 |) X0 G9 }% M
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )( Y/ f7 a$ y9 D
{
  w8 f/ a( v0 e* f        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
& H1 E4 y9 c+ |; R4 U2 ]  Z        CRect rect = pWndCtrl->rect;
% G9 ?  {5 |8 k        if( rect && rect.PtInRect( point ) )( t- o: ?8 F; e+ V0 \9 M( C! d
        {1 a! o' w& @3 ^/ a# t
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
' B. k/ g$ D) X/ [6 n' t  Z( r                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )$ d% P5 E# |* A3 u9 Y
                {
: D0 r( g" H; x( a                        if( m_pItemElem )
( r* E9 S3 V2 u/ k% @                        {2 E$ {, t6 I& }& u" g9 ^7 @
                                m_pItemElem = NULL;2 l7 N2 E) h7 t
                        }
  h% t3 W5 F: W, }                        m_pItemElem = pItemElem;' q4 k3 a# v  W; G
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );( u8 [& I1 t% E# O  l0 A
                }else{
; d* c# J2 x9 [" u9 I! |& _                        SetForbid( TRUE );" i$ I7 Q8 Y' f+ k
                }$ v% @2 {8 u+ I. u' Q; g! N6 t
        }else{* S6 F) ^. {5 ^: C9 Y* U, m3 V6 T
                SetForbid( TRUE );
4 r# s8 _, c6 i  @        }$ x$ B2 h  S( I; q0 ?
        return TRUE;
" e5 H0 l4 y. H6 f' r}" i8 M" v2 A0 T+ U5 R

# Z6 R* a3 ]& y8 }" S* uBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )6 D0 `( S1 b% j- v3 W
{
- a8 m# u0 [' ]( g        switch( nID )/ p- a6 F2 c3 _0 L% I, X! ^7 X5 k' M. }
        {* |, Y+ s# Q# L: y9 [
        case WIDC_BUTTON3:3 J0 T5 i, v& M8 D2 d
                {
  e! R2 L  q% z& z                        bStart = TRUE;
- R% G& h$ R. s. }5 r; m# A                        break;  _: u0 H" j2 u' t/ u0 W
                }% E; _. E; H+ f! }4 G
        case WIDC_BUTTON4:9 N% W0 U4 t" l9 v* J
                {5 l  G/ Y/ Y, O. }8 U
                        bStart = FALSE;! p* Y1 U5 z% H) p( A
                        break;
  [4 v9 f' {" G                }8 V2 ?- V( j) j+ g/ z! m
        }3 R: o/ U. F- M9 |8 J
        return CWndNeuz::OnChildNotify( message, nID, pLResult );7 f/ w' }  v0 P) Z8 J$ ^( h+ }
}       
" |7 v0 U; ?: N- fvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
& _+ O; n5 y5 J6 X$ U  j' M% m{
- A8 G1 m$ R8 U* _/ y, D9 Z        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
/ ^5 c0 r" `  o  K, L2 T9 o. E        if( bStart || !m_pItemElem )
; ?0 g0 _' W% f- r# P; r9 W, |        {5 D7 X8 W: _" @0 \* A
                pBtn->EnableWindow( FALSE );
* q6 ^/ L- O; i        }else
: t: @0 X) q) d* k; ]                pBtn->EnableWindow( TRUE );
, q! L% d' D( M; j" K7 S        if( m_pTexture )
  A, C* v+ o4 O5 d; Q3 u. |        {
* f9 X$ X( _. ?9 v2 W1 d                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
8 s8 D" v. a# `6 G8 ^                if( wndCtrl && wndCtrl->rect )
8 H, n2 l) e3 D, m# ^& q/ _                {+ h0 S0 ]& `, v
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );- R1 @/ M/ H9 S' w" X& T4 G7 p7 B) k: b
                }2 j& v% y# N9 m# N' Y
        }
  O+ N( F. s& c$ f* w}
/ E: d+ Y) A6 g# a0 Y" j) O4 f+ o8 _9 R1 F- g* L6 K: E! }
BOOL CWndAutoFood:rocess()
! r  ?/ q3 y7 j& E6 ^{
, Y6 r# J+ X! O' G2 K% N        if( bStart ); L% H4 Z* n7 Q6 M
        {! u% W, o; C; n  K# l) ^
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )4 g  [$ i; P$ Y: z! w
                {6 d" _" O# M8 L. L/ T; |- @  _4 h4 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() ); A, z* I$ B! ^
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );" [( Q- M9 y; n/ ^' n" I2 ]
                }else{: J( d$ @" N) S6 y0 a- p
                        bStart = FALSE;
; w, m) b8 i# F3 ]                        m_pItemElem = NULL;3 w9 L5 h' P6 }" B  I
                }! G9 q) L6 A9 c
        }
2 U: E* s5 J/ |( }+ H" c' V' y* t        return TRUE;
) m  J1 O; `- [  [}( ~0 A$ B8 Q& n: g& R. m

% D8 o7 j5 x# H, }; I& J3 F登录视频废话:
9 _9 B( ^! q9 r: |$ U5 j尾翼:
" J3 V- h, {4 \7 p  v- c! O7 X
7 ~! F( d/ A% _代码:- O( i( O0 [' M; ?7 H: H# ~

7 C1 F- \. B6 H1 w; B* ~+ qvoid CWorld::SetLight( BOOL bLight )
5 G0 Y: k: _/ {9 _* [; P- O% c$ [durch0 a; ^  u, |$ {5 @7 I
Code:
8 |  N9 Y1 ~+ A; A  I  dvoid CWorld::SetLight( BOOL bLight ); {' j- _" z* @0 k) ]$ U4 }8 _
{' \2 ?. z9 L# n7 w6 U
        //ACE("SetLight %d \n", bLight);2 \4 O9 X& I: D) R) i0 c
        7 r. w; y+ o% ^& P
#ifndef  __WORLDSERVER ( ]% n/ d3 W9 S4 r9 D
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
) c+ d5 k4 h8 n- K/ F9 M- L  r4 N        CLight* pLight = NULL;: O& {, d1 V8 ^) F" X- z1 }* k  [
6 c% X$ Q6 Q1 ?+ W* \9 K5 q
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );8 E# q/ O' m6 ]  H3 n* P$ x
; W# r/ ]9 h0 Y
        pLight = GetLight( "direction" );- D" j0 I8 a3 K

* u5 f, _0 }! S9 K) p6 k#if __VER >= 15 // __BS_CHANGING_ENVIR& _$ ~+ H* p3 P# v
        if( g_pPlayer ){
, A* {$ O, w; m2 I2 t/ x: G                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );/ e( k- C; g5 p2 T' u" T5 _4 |- u8 c
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
" e: ^% A6 d5 Q! Z" _                {8 B5 `! N9 `9 P( Q) r/ q: c6 ~( S
                        if( pLight )
- p% I0 H  G, z3 l4 v                        {
4 ~0 o( i+ ?! q8 I- U                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];- u: |' ~3 Y' i2 y6 G* Q! ]
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
) u' O% }* V1 H: d7 l$ {                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
2 ?( U$ P/ A5 R; F& \* {9 }' P4 J; ^3 `8 N4 e' W
                                pLight->Specular.r = 2.0f;( K7 H: y, w. h( g4 |
                                pLight->Specular.g = 2.0f;, N" I0 L# a& |& Z  A2 A; b
                                pLight->Specular.b = 2.0f;
. [* M8 O0 I! h4 b( F. [# A       
6 r" t. l& P# E                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
7 {' m% g$ c, {5 e! C5 {  c                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
2 |( S; U+ |) ?! s; ]5 L                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];$ H; }2 w! u9 B7 U- {) P$ R1 d
        7 u4 z/ I" H% _1 P, G8 b
                                HookUpdateLight( pLight );
  Z% X4 ^4 C$ M. b/ Z; M0 v2 M  [, f# U0 z
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );3 ^  s+ B  v" `( d( v* n& t$ D
               
" G: i5 F1 n1 m6 m# ^. P; s6 N                                pLight->Diffuse.r *= 1.2f;
$ W8 ~$ e7 U) f- s1 J0 u( o                                pLight->Diffuse.g *= 1.2f;
$ N% K% ^/ \, x                                pLight->Diffuse.b *= 1.2f;' d; M$ s0 F2 }9 [4 l5 X

0 S5 Z$ L: V0 F: l6 i7 P                                pLight->Ambient.r *= 0.8f;
. _, |* f1 r: W% E2 E3 z                                pLight->Ambient.g *= 0.8f;( y0 a# A0 G! ]5 w2 T' e4 U
                                pLight->Ambient.b *= 0.8f;
+ c+ n/ K' d, s0 M% F       
, d: D0 z$ e, N6 ]+ I2 A4 q                                memcpy( &m_light, pLight, sizeof( m_light ) );
0 ?5 A7 v* |! K8 L. k% ]& T5 d2 n  V9 \1 s+ S7 ?. H0 Y
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);: |& ^3 W' _2 p8 q9 A
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
& \0 m8 B9 U% g- x7 |4 {                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, k; D8 W0 i0 [) r                                 pLight->Appear( m_pd3dDevice, TRUE );# j  f( \; U; k; ~$ }
                7 f1 j) K; L8 v
                                DWORD dwR, dwG, dwB;2 z. H$ W0 f0 ^: u2 o4 z2 P# l
                                dwR = (DWORD)( pLight->Ambient.r * 255 );! n& q7 ?; C6 z6 |4 a- ]
                                dwG = (DWORD)( pLight->Ambient.g * 255 );1 J* p, {/ q4 {8 A
                                dwB = (DWORD)( pLight->Ambient.b * 255 );) Z  w5 d8 n# |5 F+ j# [8 b
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );$ f  H* I  l3 U6 l
                        }
' X$ b. W3 m0 Q. D2 a% ^( i                }
* B7 ]: X4 W7 x8 ]* C  a        }! U2 l$ N/ l8 [7 E- |- r; @
        else
- @$ v  h9 y4 N- C& k#endif . M5 d( m! y$ f( b+ G2 G
, _' c( @8 ^$ Z: ^
        if( m_bIsIndoor )
0 ^: ?% d( }, Y! c# [6 k5 V7 X        {# [8 U5 R, g5 K2 Q7 H1 O  K
                if( pLight )8 g( C6 k. j+ V8 U' N
                {               
& n9 m* M3 w7 [, u" |' E                        // à??μ oˉè*
5 d# r. d' [, T  |' I                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
. u7 g' y; l/ w* W4 k                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;' e! d) t/ _5 W( ^; H
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;/ H( R% F7 D5 Q0 O

8 Q8 A! `& ]/ O/ _                        // oˉè* ??à?
# Z1 z+ Z9 s( ^5 z" ^0 P6 |                        pLight->Specular.r = 1.0f;% v1 w1 D, h! ~: Z* P
                        pLight->Specular.g = 1.0f;
4 e! J7 D( _; d                        pLight->Specular.b = 1.0f;
# Y. D2 O, E3 |3 A* w& E* |& _( S                        // àü?? oˉè*
5 X% _, _8 e5 C; A* L                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
/ x$ Z) p: _. P/ _9 h                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;0 t, T4 |$ o/ N' t: x+ l3 o7 x
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;% G3 [9 _! ]7 r; [/ S+ Y, h
) J/ j, y* G2 Z& l
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% W6 U) y9 e1 l& p                        {
. \  {% Q* s6 T( w+ p                                pLight->Diffuse.r *= 0.6f;2 h+ Q- p) ]  h9 C
                                pLight->Diffuse.g *= 0.6f;. P9 b; b  \* w5 t9 u0 g
                                pLight->Diffuse.b *= 0.6f;
5 {9 j( \7 J5 R1 Z, i# z                                pLight->Ambient.r *= 0.7f;' i( F! H1 f* M, H
                                pLight->Ambient.g *= 0.7f;
8 R9 C6 `( c* T                                pLight->Ambient.b *= 0.7f;5 r, [4 C" u6 W9 T- c
                        }( v" K7 `; a$ e" o8 d. ?( i7 [
4 X- ~  z7 g; F, i5 F/ ]- A+ I
#if __VER >= 15 // __BS_CHANGING_ENVIR3 S0 j1 t3 _' c( Z8 M* X! D# A  x
                        if( g_pPlayer )
& N# R3 v- y$ r  q                                HookUpdateLight( pLight );- ?0 U: ?. z5 k7 z/ k: v
#endif4 F9 N2 w0 Q, F  t5 k
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
  T, o7 y& K9 c# h! V( w. d
. C3 e0 [' j$ w9 L                        pLight->Diffuse.r  += 0.1f;* R8 Y0 O1 w; @& O/ @
                        pLight->Diffuse.g  += 0.1f;! z9 F6 |2 l$ I3 y9 W/ h
                        pLight->Diffuse.b  += 0.1f;
. O% n% ?" ^  v                        // oˉè* ??à?
, U4 _1 z. @* m9 ]0 p" C, O8 i                        pLight->Specular.r = 2.0f;1 j% v" _/ N1 d1 z- d
                        pLight->Specular.g = 2.0f;
* `" }$ I4 K8 c: O5 `                        pLight->Specular.b = 2.0f;, z% J: o2 D8 V4 M
                        // á?oˉ
, F6 D6 I4 u1 N7 X/ t                        pLight->Ambient.r  *= 0.9f;
( U! P* |& W. l! r1 T& q( y/ |+ E                        pLight->Ambient.g  *= 0.9f;
. O: i) g8 a% @$ y$ M+ V                        pLight->Ambient.b  *= 0.9f;% }: E/ U9 d* G. V: e

/ o; E$ v3 y' @& i% W( U: @                        memcpy( &m_light, pLight, sizeof( m_light ) );+ ?) W7 Z7 z. R
                        0 B+ L% W* E# c! C; @8 p, Y
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
% n; ~$ L  g1 t8 R' V( ]) i: L                        pLight->Appear( m_pd3dDevice, TRUE );. F8 y+ z! w9 `/ x7 o
        7 Q7 n" W" b7 b0 b
                        DWORD dwR, dwG, dwB;
! a: @% l& a. B. J                        dwR = (DWORD)( pLight->Ambient.r * 255 );4 s+ {6 m. Q# w. ~, K
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
, g& k. H6 E3 Z3 q. h                        dwB = (DWORD)( pLight->Ambient.b * 255 );% J+ j  i4 l1 }2 n% J
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );) D5 X& ?/ G, n8 z
                }
1 l. ^$ \0 R0 V( B1 \        }
# x8 Y& ?9 T# R3 N        else
' X6 O/ p+ ~0 S( R: P/ z        {, ]1 U0 A* J7 ~9 i: j& _9 \
                if( pLight )
3 f! [3 j. a' v' i                {
7 M* f+ B! {* k: W# ]: ^% e                4 M3 J6 y( z, I# O. M' d' N
                        int nHour = 8, nMin = 0;* }0 D2 n" C$ w8 {8 L
        #ifdef __CLIENT+ f- h. ~* c1 g: [6 u
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. ' t8 ~  F) t+ H6 F) b# V
                        nHour = g_GameTimer.m_nHour;0 D) N4 n6 L, S  {- a
                        nMin  = g_GameTimer.m_nMin ;- Q% ~2 ~) E/ Q# b/ J
        #else
  n' C, B! O% P7 U                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.5 A) X4 J9 g) w- m6 E) o- j' h
                        if( m_nLightType == 1 )
6 w) [8 s* d: j# c3 ^                                nHour = m_nLightHour;
% Y# w9 {3 N! r& }0 \' C        #endif
) g4 u8 h- H; b5 f& W2 b' N                        nHour--;' Q% a7 v5 y+ O0 U, g* T7 D0 y
                        if( nHour < 0 ) nHour = 0;
$ A+ U% L- K7 ~; @) V  K                        if( nHour > 23 ) nHour = 23;
7 e: R) z. W/ s$ r* ~
# c2 {% Q1 s! v                        //if( m_bFixedHour )6 v- O( m* s2 D2 M- L
                        //        nHour = m_nFixedHour, nMin = 0;
5 y' ~, X& H9 \$ F( l' ?) \2 x( y                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
7 m: q& L  P# V4 q                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
- O1 O3 {1 p2 o! r9 P% E& ]' `% d& w1 c
                        //m_lightColor = lightColorPrv;, c: O# J5 G! f% Z" l- f' [6 H; |
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;3 J7 a$ J$ X! }5 [. B
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
& {9 E2 ^$ t8 S/ A3 `                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;4 c( Z/ v- D( k  W( \  K+ j. O
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* ?, l5 A' l0 {7 E2 O                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
; B! U9 d/ u* q& v( V4 B                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
' M1 D, _: P8 r* h                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)" X$ ?5 L$ |1 `4 }3 S  M) j2 E
! u# V- q; p) A4 }4 _
                        // à??μ oˉè* ! Y- K1 \# _7 G. q  R! T
                        pLight->Diffuse.r  = lightColorPrv.r1;
/ x0 w  C) `- n( l                        pLight->Diffuse.g  = lightColorPrv.g1;1 {8 `  U# F1 V* g( `
                        pLight->Diffuse.b  = lightColorPrv.b1;8 l+ A# U* J0 T$ o  ^
                        // oˉè* ??à?
  v, F# ?: F3 S4 P6 i5 `' |; R                        pLight->Specular.r = 1.0f;
& B( b; c* Q5 e" }                        pLight->Specular.g = 1.0f;& a2 q; M$ S& C2 X
                        pLight->Specular.b = 1.0f;9 o8 G5 [2 r3 d' C. N( }
                        // àü?? oˉè*
9 ]1 m' @* \* P) V+ `1 i                        pLight->Ambient.r  = lightColorPrv.r2;$ h! q. k% D" k1 N1 ^: X) ~
                        pLight->Ambient.g  = lightColorPrv.g2;
  L( {" {- c, r; [5 H( [0 i                        pLight->Ambient.b  = lightColorPrv.b2;
0 M7 t/ f0 l2 c6 B( {
  c# _! X6 l9 C# f/ S$ [/ E                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, q# n8 X1 [' T# b                        {& I  O. H0 \) }+ b# u+ s$ N4 W/ |$ B
                                pLight->Diffuse.r *= 0.6f;4 m% W, n: G2 H! d
                                pLight->Diffuse.g *= 0.6f;
: D3 X# k, F$ R9 v! w$ l. ~7 y& d                                pLight->Diffuse.b *= 0.6f;, @; d# U5 U# Z
                                pLight->Ambient.r *= 0.7f;. ~4 m5 l8 a1 T% z2 I  c* [) E# U" p4 _
                                pLight->Ambient.g *= 0.7f;1 o' B  Y. X) v) w, ^
                                pLight->Ambient.b *= 0.7f;' q+ q" v" L! s9 m
                        }
9 o. f8 g7 K  G: M                        5 v8 C6 y8 n- _# k
#if __VER >= 15 // __BS_CHANGING_ENVIR' p# v9 ]1 l8 g$ G
                        if( g_pPlayer )
3 q8 U- d* o0 c  t+ I  C1 ]                                HookUpdateLight( pLight );
$ w( {0 d7 L0 h5 n#endif+ T& \6 V. R6 M
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 G' k* v8 t1 a/ j* n/ @
' ]6 G! O4 g- x#ifdef __YENV7 e8 N; b8 q# F. V# {/ D  j% H- {
                        pLight->Diffuse.r  *= 1.1f;
) S" Y# ]! ]. K6 z                        pLight->Diffuse.g  *= 1.1f;8 a. s8 [- Y3 Q$ a
                        pLight->Diffuse.b  *= 1.1f;
8 ?6 H) g+ i6 B  a- F+ ]                        // oˉè* ??à?
, r# Z' P; H4 J- J5 \                        pLight->Specular.r = 2.0f;
  A6 y$ a; f8 K  x$ {( R) j4 _* _8 S                        pLight->Specular.g = 2.0f;
) x! x; |& Y* q: Y8 J# w) a& o/ d! ^                        pLight->Specular.b = 2.0f;# Z. B$ L0 C1 p4 i; G' _5 _+ g( Y/ Y
                        // á?oˉ
6 h7 L5 n5 Z6 l# s. L- ], j                        pLight->Ambient.r  *= 1.0f;: E( {8 R% G! x& i
                        pLight->Ambient.g  *= 1.0f;  S/ ^5 s* Y& `
                        pLight->Ambient.b  *= 1.0f;
# W" Z& t4 u5 |' D9 L) c: L3 A& `#else //__YENV
& r" p# `# M9 N: y3 e1 Q                        pLight->Diffuse.r  *= 1.1f;
- v7 t$ S3 f# z  j! e                        pLight->Diffuse.g  *= 1.1f;+ U$ j2 C5 d# r8 ^0 F2 w  U
                        pLight->Diffuse.b  *= 1.1f;
, _1 E0 H* [7 e6 G; E                        // oˉè* ??à?
1 P. N3 m  l* m: v0 }: }' W. y9 A                        pLight->Specular.r = 2.0f;
3 I8 m# b1 L. k9 t/ ~8 v. l+ h                        pLight->Specular.g = 2.0f;; A7 j+ c% C$ W& c7 J& s9 [7 t0 b
                        pLight->Specular.b = 2.0f;! K' N9 P% J/ N+ i
                        // á?oˉ
8 Z- \$ B7 e7 H+ v9 m3 A- J                        pLight->Ambient.r  *= 0.9f;
1 g: v. Z+ o- n* C, \- [$ S                        pLight->Ambient.g  *= 0.9f;. T1 C( g+ U. D9 e
                        pLight->Ambient.b  *= 0.9f;
: i" n5 V2 q1 T& N0 I$ p- H#endif //__YENV
# `$ T/ S; @! g1 q                       
9 L7 _$ p8 x2 B3 n3 c( Q% L, i                        memcpy( &m_light, pLight, sizeof( m_light ) );
+ {6 R8 Y$ V& t7 H: J                       
  \) x( I9 m0 l                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
) @  \8 W% e/ c0 }9 n                        D3DXMATRIX  matTemp;) ~) D( f6 R: J5 A; B7 ~
                        static const float CONS_VAL = 3.1415926f / 180.f;
9 \8 I0 M+ H% j  b6 z5 I$ N7 h- S$ r1 f0 M: _; Z: N3 K
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
7 q0 h2 b3 z# k! j6 i/ U  u4 [                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
/ W5 G7 m$ v5 W; A3 o( S                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
; D' A0 {* Q) P7 A& f) T- B                        pLight->Appear( m_pd3dDevice, TRUE );1 G! G: W4 G" m1 c% W2 q$ Z

) C7 W9 R# g- ~9 E                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 p6 ^& |% c! [) V  Y9 q! c                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
- w1 M$ f7 b( k0 l" N# x% D" y# K                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# G! |" l. L; G2 y, w
( O+ b. K. U1 N9 f6 A. i0 f0 ]/ Y                        DWORD dwR, dwG, dwB;
  X8 \  D, @) ^! @                        dwR = (DWORD)( pLight->Ambient.r * 255 );1 `( e( M! J& l  I- k+ k1 X! t3 k
                        dwG = (DWORD)( pLight->Ambient.g * 255 );0 U- r6 X% ^. q3 h- n
                        dwB = (DWORD)( pLight->Ambient.b * 255 );/ `% `, ]7 M' Q5 X+ j4 Y
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
3 q6 `3 O5 w7 _; d                }$ v; Z" l& q/ m* {
        }
8 Y! q! v7 a; }8 N6 E9 ^8 D7 a$ O# m9 ]: S% G' D7 U
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );% n: x9 m8 V9 m' Q6 p( S) 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) );
' B0 D6 U4 Z: i: O; e        ::SetLight( bLight );5 e2 s. L" l8 g

4 K9 ]. ?9 I7 T, N. C/ B. J8 _# F, {        // ±ao? ?D?í???ó á¤à?
) c( `& Y/ t& o# O! i3 V; H        m_pd3dDevice->SetMaterial( &m_baseMaterial );
- K5 U, C4 F+ R2 c       
- a  g( K% F; W# ?* z3 n  g' `#endif // not WORLDSERVER; [4 z+ @/ d: `9 n
}
8 E% j! O2 B+ E- Y) c4 Q0 |" W并更换
! ]1 q8 G) |3 B/ a, b& b4 C1 oCode:
" t0 ]+ R) j' C5 K' Q7 p__FLYFF_INITPAGE_EXT
2 B& {& M! m7 o! {( ^( [8 y9 y3 c定义. ]8 y& f. l1 B. E6 q0 P# P; k

- J# n% a8 I1 i1 D" k- q5 y" B5 s' W* l2 K+ k( N- m

* w* E- o" l6 b- R! Y0 p9 H4 ]6 h* F- Y5 d" {
现在终于删除我的狗屁加速...: h  W  J  R3 p+ B& w
; k9 S+ e3 f1 \' v# J- r/ E! ?8 T) u4 A
1 B" C' |, p- |/ {) O

+ m; F3 h' Z' K




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