飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:. h2 r7 x9 J9 l( R) W
尾翼:; p  J6 H' R6 v* w* k2 R

+ t4 X5 L7 R- G9 }( Y$ [代码:
& l2 i( \7 V4 i* oCWndAutoFood::CWndAutoFood()
' [0 y& s: @' M# C! X  z: \{
" Y, L! T4 f8 F' b0 C. y        m_pItemElem = NULL;
: ^/ r' w; F/ n+ M. S0 ~! M        m_pTexture = NULL;
+ K( L' u# g; \, q+ l9 D        bStart = FALSE;
( K5 Q# m& @* @/ \2 B6 G: F}" m& N! @6 M+ L& A
9 `3 x# t9 |3 }- E
CWndAutoFood::~CWndAutoFood(). S& H2 T. ~( J, O
{
+ z  @+ e8 x7 J0 r1 _        AfxMessageBox( "AutoFood ist gestorben " );5 ~! `1 m* Z8 \) Y
}
3 k$ x( l' C1 {( IBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
4 v3 o* G* K5 G$ X, A' p" L{
4 g+ J2 l0 L" E6 {        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );7 F$ X% H" h) t  A; G5 ~' Q' d
}3 R; y. z9 N$ b2 ?4 E# l# G, _

7 A& o6 a: A  f" n, m. qBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
# r  m+ S* n+ K/ b! n+ O{
- a2 i/ x+ W; S' B2 [- I        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );/ J1 j0 F0 e) Z" v- d) f
        CRect rect = pWndCtrl->rect;0 }4 q! O# Z& j, w
        if( rect && rect.PtInRect( point ) )
, y( W) v; N6 r& O# F        {
# C1 C9 b+ B" z5 ~. Q% |                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
6 K0 R7 I, V* Z& S5 j2 C                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )$ |: Z/ H' V- {) K0 }
                {
% [6 K- d1 {# f7 `5 J7 t- t                        if( m_pItemElem )
' z% Q) p; Q  P( T                        {4 D3 J/ F5 |/ d& R9 D. A
                                m_pItemElem = NULL;! ]+ X- r. R( Z. ?
                        }
" u) L# P, k8 |                        m_pItemElem = pItemElem;. ~& V" M, z( q1 R2 Q1 b0 D
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );" e* \3 ]0 g" E
                }else{0 V! u- }( [) A. X
                        SetForbid( TRUE );
, e7 f$ I" H  G                }0 m5 T7 B  ^4 K, ^& v# o! }; b5 p
        }else{  ]' A4 V) h' o0 r* d
                SetForbid( TRUE );
7 I8 z: n+ g) P/ e) u        }. ]. H& I9 g: D4 q1 x  f. @! T
        return TRUE;" V$ c9 C! N; u# b) w( ?1 }
}
% [8 P6 G' x: R7 `5 x) l+ m6 {5 i, ]3 r( `" T1 O
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
; ?4 Q1 i: |( V% r4 D1 f: ^6 g{
) b' e- a- a: M) D5 N! E        switch( nID )' {9 Y; i+ q; s6 T2 e& R/ Z
        {' ~" V8 H4 |  K# _
        case WIDC_BUTTON3:" B0 U/ Z! f: s; [7 [
                {' U% s) `6 h) p" I2 R
                        bStart = TRUE;. k8 d% O0 ?9 |6 b
                        break;
: ]$ @8 d3 O' z1 v8 I                }
5 A, B" n$ u! f* V6 r6 ]% {        case WIDC_BUTTON4:
) V' T! y$ V2 M. T6 ^' ?                {
8 p5 C% e2 q6 s1 B. u" l                        bStart = FALSE;
; o: q  h1 a$ ?4 a' V" ~: P+ B2 _                        break;0 U7 n4 V+ ~$ n9 z
                }
8 I% X7 b; U) g4 s5 t5 J$ D# U* ~        }( x# @, s1 c$ t- n
        return CWndNeuz::OnChildNotify( message, nID, pLResult );2 }, v; X. m$ J
}        + N, C& t) H$ Y9 `9 f
void CWndAutoFood::OnDraw( C2DRender* p2DRender )4 s4 _& E/ v/ J$ B
{
) V1 J% x! i" m% I        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
0 j+ F. g3 f3 U        if( bStart || !m_pItemElem )5 X/ s* t' P3 d+ R7 d' f& A
        {- O, l) E( D* s/ q6 o
                pBtn->EnableWindow( FALSE );" I* c. Y$ u8 F' e3 i) b
        }else
$ A$ M6 e* I% u( @                pBtn->EnableWindow( TRUE );$ g5 H3 @8 G0 R" U0 W6 I
        if( m_pTexture )5 w! a- x8 r2 _" {/ S& {# v4 Y
        {2 V+ `5 ]& o0 J+ _
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
7 r$ F- L& E& j1 y% G. N9 o: ~' d9 ?  }+ |                if( wndCtrl && wndCtrl->rect )6 `- d3 G0 b3 @9 I/ j4 h: C
                {6 w5 z" R" k$ x  Z0 [$ {
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
, Q% e& j3 J& c                }7 T) {8 Q+ M( V: i0 I2 F
        }8 t# [2 M1 u* ?6 l. Q2 e, o
}! ^3 I7 E, N  E  Z! ^4 S# \9 `" G

# {" O0 d; o! y6 |4 J$ xBOOL CWndAutoFood:rocess(); ]9 b' |+ G8 ]& c: k* H
{1 }/ \6 R8 @' t6 b
        if( bStart )
1 j  k! W+ Y1 q9 [+ S        {
. m) _; N% R6 ]; n" I                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )) a' Y( y2 F# F1 o, w2 O' p
                {
" `- S) B  f- z2 _% E                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )( B: j7 j# M/ e$ i$ h
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
1 g" y3 Q) c+ w6 k( z9 G) ^                }else{
& w1 h/ K6 j) m8 m5 {; r( i) S& T                        bStart = FALSE;
$ z# @5 S% i+ D; ^( F0 N& a% w                        m_pItemElem = NULL;
" k6 `  p# D: P) j                }
( Z6 [' ~  \0 w1 M        }/ R6 ~; s3 l) l1 n
        return TRUE;' O) p( d5 V: a
}9 y3 \2 K$ Z0 ?5 z

$ x$ Z( T0 j+ o. b. C4 f; {& ?登录视频废话:
( c! D; H. Z6 I9 i7 n尾翼:' z; A: [; Q7 i3 I
9 i, k, Q3 H2 p( O# P8 Y
代码:' u- V5 g4 p1 v& a* G- \

: I1 ?* l0 u5 B; h0 Y: N, pvoid CWorld::SetLight( BOOL bLight )3 g* j& R  c  `% U# G9 ~
durch3 m' f* y/ l  D1 n& Q
Code:: P& s8 n3 y5 v) j6 S! T
void CWorld::SetLight( BOOL bLight )
4 X; b% g. j* M  @{
7 F% a9 N% {$ R7 ^6 N- N        //ACE("SetLight %d \n", bLight);
& [4 P0 ]% S6 _# t2 h1 n        # q: k( G# I+ p" F; X
#ifndef  __WORLDSERVER 7 X, P. v9 S2 A$ [. c
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);2 b, }0 \7 O9 ~6 C5 Q
        CLight* pLight = NULL;: F: z. r- m& u, z4 \
. N& ^. i) _3 g! t4 L
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );: o( {! t0 ]" k# l* e8 r  t6 O

6 b/ S' Y5 F  c! b* f: A* J' C' d        pLight = GetLight( "direction" );& v( Q3 {3 p. y+ C- g

( F  ]: {2 \. R: R) B: r#if __VER >= 15 // __BS_CHANGING_ENVIR6 I- U% e3 W- z$ K/ p
        if( g_pPlayer ){3 w8 b1 T* u: b4 @* [" P1 }
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );+ W! p4 X3 L( R8 V# U/ p
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!9 D4 A* C. {6 O, S  V
                {
9 A$ H6 S/ b  b$ A                        if( pLight )
8 s+ r: `) i1 r                        {
" c5 N$ S9 z  h6 n  X) o- \                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
3 R5 i0 ~3 ], y" l                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
* S, \% D8 {$ A3 R                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
3 f+ T( o- r. B9 \' S2 P3 P7 o' m& K
                                pLight->Specular.r = 2.0f;
) o3 z& G2 i2 A+ m                                pLight->Specular.g = 2.0f;: w: d( h* P; w: z5 G
                                pLight->Specular.b = 2.0f;
% h1 D; q0 b8 d& G4 D& p        . ]  R0 p) \. D" ^
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
: l& X3 E8 A; K7 C+ Z& o6 `                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
& a8 K4 L& ]# N/ k  F                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
0 s! e2 L" t3 l2 ^4 V2 N! s       
# _, T% H/ }. N1 T6 ?. _                                HookUpdateLight( pLight ); 6 A8 ?/ x; I- u8 ]4 |0 {8 Q( o
' R- G6 f+ Q5 y+ @
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );# P, V1 V4 i0 C. Q4 R8 j5 y8 @
               
& L# b8 D0 n2 \* |% Q- f% n# i                                pLight->Diffuse.r *= 1.2f;- T7 l. N9 l7 _* E$ o3 v
                                pLight->Diffuse.g *= 1.2f;) ~& {: N1 k( |. [
                                pLight->Diffuse.b *= 1.2f;' w) U$ Y" I# @1 b4 i
) [1 ~! \7 K( \" u+ t
                                pLight->Ambient.r *= 0.8f;
- e! a/ g8 z* C0 J( F9 F                                pLight->Ambient.g *= 0.8f;
$ R& g. h/ q" \5 B- G, p# R3 c" J0 E                                pLight->Ambient.b *= 0.8f;9 g9 c2 @6 z: I& Q0 Q$ l
       
  m8 Z% W$ |4 l5 T9 l; l                                memcpy( &m_light, pLight, sizeof( m_light ) );, V/ l1 W8 i$ Y1 A* O  Q

- {+ ]# c2 S- a- S" l                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
1 [( e% i7 N9 |5 P8 o                                 D3DXVec3Normalize(&(vecSun),&(vecSun));6 ?  R# Y1 x* U% ~( i6 f7 l
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 ~6 d- {7 w& m+ J$ L                                 pLight->Appear( m_pd3dDevice, TRUE );
. i  `( y+ e& ]% R( a! M9 Y                8 e5 L4 c. o# `0 h) D  q0 S# w
                                DWORD dwR, dwG, dwB;
& X/ \2 q" i' B9 _9 d                                dwR = (DWORD)( pLight->Ambient.r * 255 );
  v1 e' T! m! t% t( i                                dwG = (DWORD)( pLight->Ambient.g * 255 );
1 L! `1 m9 r5 Y0 [! q                                dwB = (DWORD)( pLight->Ambient.b * 255 );
- P3 C4 {# I; P9 \6 y/ N                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
% u- [& r7 v9 o* q9 n: a                        }
" Y- B$ W2 e. N9 D  w! Y) |                }
- G$ w  G+ ?' v5 J" X: Q        }
, |; ^+ @5 P' y$ ~& _: V        else- }! m! R+ V; F% n. D! a+ Z. y4 C7 B
#endif + y* V- `& b7 f/ U
4 r0 v8 f) M9 `! o3 Q  k2 r
        if( m_bIsIndoor )
) i# s1 c& r& U/ [! T        {/ ^9 d/ T' Y5 R+ b
                if( pLight )+ K/ S1 X  |* j3 |7 i7 L1 ?$ i
                {               
- `. t3 [" {: _                        // à??μ oˉè*
! r7 Q6 R  a' J                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;5 U# j  p% E$ z" J5 M2 G+ t% M
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;4 S9 z9 A% I' Q  x" r. A9 e" E4 v
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;% @! A. g0 w: K% I+ X& G: l

8 D: g, l" X/ Z$ r/ _                        // oˉè* ??à?
4 `$ ^( K+ C0 \6 R) k$ v                        pLight->Specular.r = 1.0f;
2 m1 s0 A/ S1 B& X- A                        pLight->Specular.g = 1.0f;
( P( F/ {/ T: y4 f                        pLight->Specular.b = 1.0f;
# G, s$ ?% T4 `5 F# U                        // àü?? oˉè*
' ^0 D, d5 J" \6 I0 }1 A                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
" D% [$ c6 L/ E2 o. N! o                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;6 Y0 m% q" o8 r* m# Y' u) K
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
3 a: n( I, O+ \! O; P; p* y5 B$ Z  t- S9 a
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.7 w* K& A. J) d3 j
                        {& c  @- m1 w& K8 O: c
                                pLight->Diffuse.r *= 0.6f;
: q- D) F, ~2 [. j                                pLight->Diffuse.g *= 0.6f;
' P! C" h3 ], L/ E                                pLight->Diffuse.b *= 0.6f;
: B* H7 ]* b# I! [, y, b' N0 I                                pLight->Ambient.r *= 0.7f;- z: D9 P2 V& S  d: O
                                pLight->Ambient.g *= 0.7f;
( X. ^  T# j& {2 j$ G5 Q& N4 n                                pLight->Ambient.b *= 0.7f;# q9 c# m# I, @$ u
                        }
9 k7 w( z3 U' {) x' ^  ~2 R) d% o( v* C, J
#if __VER >= 15 // __BS_CHANGING_ENVIR( K- @0 N& r$ @
                        if( g_pPlayer )5 q  d& _! h, p9 H# }
                                HookUpdateLight( pLight );3 T1 }. n0 y. p
#endif4 [4 n( S# @( ^
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
' ?) H1 |" |8 c, n' _; N+ ]) o+ g1 L
& K6 I  L3 e6 N, q                        pLight->Diffuse.r  += 0.1f;; ~, Z# ]; t" m  |- n
                        pLight->Diffuse.g  += 0.1f;5 A6 Y% Z) K- r' Z( d
                        pLight->Diffuse.b  += 0.1f;
6 d" p0 `6 K5 k" A9 ?. k$ M                        // oˉè* ??à? 5 f" i+ O8 J& k3 Y$ V# u
                        pLight->Specular.r = 2.0f;& i$ a- f$ L& \8 b1 Y
                        pLight->Specular.g = 2.0f;
1 U6 E) p+ v) m+ D                        pLight->Specular.b = 2.0f;
) Q; m5 c$ n8 `# u* J: P7 E                        // á?oˉ $ |- U8 e& `& v! v* c6 W1 i. E0 C0 y: n
                        pLight->Ambient.r  *= 0.9f;
. ~1 Z2 v9 o* j8 N1 \% t                        pLight->Ambient.g  *= 0.9f;
2 _, y5 k: B7 Q  w) k                        pLight->Ambient.b  *= 0.9f;
: {2 R3 u: n) C1 n  i9 t& \8 P$ T' {! B% ~
                        memcpy( &m_light, pLight, sizeof( m_light ) );1 j  V4 m+ i1 t, @( l& A2 k) {
                       
" O; i! S  M" L7 w# h- v/ k5 {                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
" X- D6 T/ j5 N  _( I$ L& j                        pLight->Appear( m_pd3dDevice, TRUE );  Q8 K2 E$ ^! ~8 K2 n* Q; b1 e% @& c
        ' O% |5 `9 ]3 F' I- V
                        DWORD dwR, dwG, dwB;) [4 P* Z4 K, }
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
% j9 Q' ~# y$ Y" C2 M' f                        dwG = (DWORD)( pLight->Ambient.g * 255 );
" T- o/ m1 Y2 M% B# e                        dwB = (DWORD)( pLight->Ambient.b * 255 );
5 ~5 z% F6 F; p* s1 y  p                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
+ ?6 S3 Y* L& V! b- q3 Y                }3 v1 Q% t$ y8 m/ {! `& E: ]
        }
9 |" Q. d. m* A        else) w; Z8 u! ]( L
        {! }; ~* g( }: }4 O  z1 X% A
                if( pLight )+ o( X" f0 N1 B1 z( U* B1 W2 _
                {, Z) ^# j0 H* ?/ m, W5 |5 [/ Y. W
               
( O) W# H5 R  X* A                        int nHour = 8, nMin = 0;; v& V; v% `5 J. E
        #ifdef __CLIENT
9 r( F! I+ w( ~% M! J) I                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
; O+ q* i# V2 L) M: i7 t. o4 {% _                        nHour = g_GameTimer.m_nHour;  D4 j# N4 \5 b, m: p; F
                        nMin  = g_GameTimer.m_nMin ;1 l6 Z+ z; S% r9 o* m" @, F! Y
        #else1 r: z/ y% m4 y; b0 H$ A& F
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.1 @4 @& L8 z. v
                        if( m_nLightType == 1 )
. o2 l5 q1 F+ _4 L; a& Z0 t: |                                nHour = m_nLightHour;
" Z& l- f# K( V5 Q) w' X. s; m* [        #endif
, h# ~1 j! ^# e                        nHour--;
/ c# {' N! h' [+ k& \, D                        if( nHour < 0 ) nHour = 0;
7 ~& w. P6 F8 P; d8 |' \1 M: o5 k2 A                        if( nHour > 23 ) nHour = 23;
9 J* P. C4 n# V* x5 {4 w3 l& B, T; j4 @8 {2 w  P% S6 @6 ^0 S# D
                        //if( m_bFixedHour )
6 h8 h* V* N  g' }, t                        //        nHour = m_nFixedHour, nMin = 0;" R$ o% p1 ~% ~- ]7 W. S
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
& H8 O# p1 M5 G4 z% v; B                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];# U5 z# e" t' o/ Z

0 U* ^) C- a. j( g5 V                        //m_lightColor = lightColorPrv;
% i* v$ O. M) @& D                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
% }& b- O5 t, g$ G! p& a6 g$ M4 a                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
9 [& \: U! C% Y, A" @" s                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;# {) R. Q# _; j3 W! {( R  k
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
  ^) q6 ~" k! H$ X                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;; @0 d! T" L) m' x
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;, S  Q+ Q; D0 D( A6 Z, x1 X
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
+ @4 C: x+ p. B
5 i' G2 i. {& g. l: S+ |# i4 W                        // à??μ oˉè* * b/ G. Y+ c1 l
                        pLight->Diffuse.r  = lightColorPrv.r1;3 ~& z  c  N1 s  l$ w; F$ O
                        pLight->Diffuse.g  = lightColorPrv.g1;* \/ U0 a  w  N6 H8 w9 u1 i
                        pLight->Diffuse.b  = lightColorPrv.b1;
; a& ^9 }8 p1 T                        // oˉè* ??à? 8 J# ~0 O) Z# I4 E( m
                        pLight->Specular.r = 1.0f;
; n6 q# k" G- @. L$ t                        pLight->Specular.g = 1.0f;' ~5 O, R# g. [7 z! p
                        pLight->Specular.b = 1.0f;
& `% F0 U5 B6 O- }/ H5 N                        // àü?? oˉè*
% e/ ?1 d8 M5 J/ M7 [! o2 x                        pLight->Ambient.r  = lightColorPrv.r2;% s2 |3 t8 h! I. n6 x; t
                        pLight->Ambient.g  = lightColorPrv.g2;
# s* i' C' v6 _6 k- ?% Q' D                        pLight->Ambient.b  = lightColorPrv.b2;7 K- L- D- u( L. V7 L% W1 d; j
$ c- [8 l. ]) [
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.6 o+ c, d0 C* B! o2 H& J$ _
                        {+ \" n7 s& j, l; t! I6 ]
                                pLight->Diffuse.r *= 0.6f;6 \0 I$ c0 l4 D8 |1 d$ F: M8 w
                                pLight->Diffuse.g *= 0.6f;
) H1 o( U( l# H4 g. s. [( R                                pLight->Diffuse.b *= 0.6f;
% _3 {  z: x7 l5 Q5 w. `                                pLight->Ambient.r *= 0.7f;
  _3 X5 Y+ I2 Q: n                                pLight->Ambient.g *= 0.7f;
& ?; |# J' V& W3 z! n                                pLight->Ambient.b *= 0.7f;: n2 k/ M- l! H) M# _
                        }
5 z- E& R5 S, Z                       
3 n' \! ?4 A, K- h, `+ c#if __VER >= 15 // __BS_CHANGING_ENVIR5 I. @; T) i5 S; N& q$ Q! d
                        if( g_pPlayer )
2 @& g4 ~8 O2 s$ y0 F                                HookUpdateLight( pLight );
7 p) B) `5 u% e( R- i#endif
; y; R# ]+ [3 G7 [$ u  s0 \                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
# D, L: p- e7 O5 v: N0 c# q& x3 _6 ?) J
#ifdef __YENV1 p3 @& y& J0 \" a9 b' u3 ]
                        pLight->Diffuse.r  *= 1.1f;
2 G6 V* Y+ b3 U% H- u4 }1 w                        pLight->Diffuse.g  *= 1.1f;7 C2 v" s. Z: a
                        pLight->Diffuse.b  *= 1.1f;
; d7 I6 h. A5 ^4 ~( S7 N- w                        // oˉè* ??à? . J" r9 R; k, v* a1 _# K
                        pLight->Specular.r = 2.0f;
% d  x0 c' ?. E1 U                        pLight->Specular.g = 2.0f;* g/ Y% E/ {1 `& @- o  Y
                        pLight->Specular.b = 2.0f;+ a! }. r# f& T) U5 _. Y
                        // á?oˉ 4 q. x. @, j  _4 M# q  S' y
                        pLight->Ambient.r  *= 1.0f;
) t. U6 x* P: S6 [  U/ a                        pLight->Ambient.g  *= 1.0f;
5 T1 I" t7 p+ Z$ R* `- P( A0 D                        pLight->Ambient.b  *= 1.0f;4 e' j$ ~1 G5 m6 d$ r; ?
#else //__YENV
  F) g/ D: V  n: h1 K3 R5 O9 M( d' G                        pLight->Diffuse.r  *= 1.1f;2 I, j4 J5 d, i% C& S. o2 j8 E: z
                        pLight->Diffuse.g  *= 1.1f;1 o% _' @) {7 y, E9 Z) [+ C9 l
                        pLight->Diffuse.b  *= 1.1f;8 S2 c, u" @( N
                        // oˉè* ??à?
6 d: a0 _5 k0 H. Z. i/ N& c  L/ e                        pLight->Specular.r = 2.0f;* M6 G: ]/ E" @4 S
                        pLight->Specular.g = 2.0f;7 N4 a. p8 G4 X* A/ K1 X
                        pLight->Specular.b = 2.0f;0 C# I& m6 A% W
                        // á?oˉ 9 i2 P" M( `1 G' M
                        pLight->Ambient.r  *= 0.9f;
! S( ~: a, R  w2 M8 z                        pLight->Ambient.g  *= 0.9f;, P! U, L: B* \; f% a
                        pLight->Ambient.b  *= 0.9f;1 o( N# _3 I/ [* C) o( {
#endif //__YENV 0 {7 v* }6 P6 _9 G% |$ C( Z
                        9 {* M5 n: H( a' ]6 ?- z5 O
                        memcpy( &m_light, pLight, sizeof( m_light ) );
4 x6 l8 d( Y" O* |8 k0 A' ^$ m+ A% N                       
8 {5 m: U! k( M9 _/ Z6 ?                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);) \# e" r3 S, U# x
                        D3DXMATRIX  matTemp;
: M8 `) i$ `8 E; w1 N9 z" e- l                        static const float CONS_VAL = 3.1415926f / 180.f;0 \( X0 s& ~' ]0 s
! ~4 }9 {$ N; E4 o
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);( w. a/ g. U2 D7 r& G
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
6 S% T) d3 C7 u* S& R7 |                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); - r% X6 }0 k" H- B
                        pLight->Appear( m_pd3dDevice, TRUE );1 @1 I& H$ k% H; V1 B# l) }3 E

: z: F+ M* z$ ?4 \                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
8 l9 v# O* J3 [2 C                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
. _/ P9 N- p% J" `" g' J7 i$ \                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
8 n. G" x; N0 X2 D" M3 J+ h$ Z- n( Q% q) P% a9 C. o' B. U
                        DWORD dwR, dwG, dwB;% z) @6 G' w; i* u0 H
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
7 O9 s" j& [( y                        dwG = (DWORD)( pLight->Ambient.g * 255 );
1 p! J, M6 l: p2 r2 J                        dwB = (DWORD)( pLight->Ambient.b * 255 );& s2 E  O, s6 T9 {
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
" d9 n# n6 `' I8 a4 n( I+ I                }$ W0 J, C, D/ k& r" M4 {4 e
        }
- h1 F- Z2 L/ X" O3 I5 c, m% P  L' e6 j/ _% {4 W  z' s! c
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );7 t, L  `# O6 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) );: Y) g: Q( l( R1 Z% g
        ::SetLight( bLight );
  ]+ _! G9 \3 D* C
6 V7 ?2 H% Q# B: X- K9 `7 k        // ±ao? ?D?í???ó á¤à?
  ~, A& p3 v) w* L        m_pd3dDevice->SetMaterial( &m_baseMaterial );
, Z2 j( g3 ], }% p( I% r. k6 ]        7 _, C/ |) i) K: Y  }  f8 }
#endif // not WORLDSERVER- H/ y/ f2 p5 S% E- x
}  ~( U) ~4 X, c* ]( j5 B( I2 ^  R
并更换, B9 T" @9 F# T6 o
Code:
6 R6 `6 H/ k- }+ l__FLYFF_INITPAGE_EXT
2 b: k# {! n% @- R: W1 F* Z5 Q定义
& M! R: g9 `  z3 z- D" p  p
9 r- e0 K7 ~# a: s
* _, E' U# d0 _/ b; P: d) [$ b& f+ Q6 v- g2 T, e1 w

7 k: c" N* h6 E5 U; E现在终于删除我的狗屁加速..., Z) P% [7 q( r0 r
' k/ e2 |# V2 U
. I4 H7 m3 w' W4 {4 l' e: _$ ?/ v
& S+ n& ^5 H# E% Y% {& v





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