飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
- C3 E' C. C( h) e' |尾翼:& Z9 B  |7 }7 r9 P0 [
* c$ b3 y1 b9 F7 D6 ?% Q7 N
代码:( }' i: P; m5 u! ~
CWndAutoFood::CWndAutoFood()' v& w) N1 h; P* E1 F3 D- O
{
1 S% a( w) X/ [5 J1 Q4 g        m_pItemElem = NULL;
- A- p  u4 A( q, v, v2 e9 H" L, J        m_pTexture = NULL;# M3 n* \* A% V8 t3 Q
        bStart = FALSE;
4 n# n* G, }2 M" r: G+ s4 o) T}5 R$ _' {% Q) R

9 s0 a1 E; u/ J' X. j* m/ hCWndAutoFood::~CWndAutoFood(). f8 u- p  m! C: v6 R
{# S. Y$ B& [4 n+ C& M' ?
        AfxMessageBox( "AutoFood ist gestorben " );4 }" q" b, G2 b* z( H  v" |
}* ^8 T9 v4 Z' u( y  [6 f+ w, w! z; f" T
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
8 B$ m/ q* z- Y0 a( b0 n{
- d  F. E+ x" I7 X, m7 p; ^        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
5 P: [8 t/ N0 v/ ~5 g; R7 P}! \7 _1 k' e1 S! e6 `5 ]

6 ^9 b+ v' _6 d% Q3 r; f* NBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
* M9 B# f4 {' x& n{- J1 s( b0 r# A. y
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 N; _/ h$ C/ L7 Q$ Z3 S% o  f, U! l$ I        CRect rect = pWndCtrl->rect;
* I, a; ], ^- T! x        if( rect && rect.PtInRect( point ) )
7 j1 C4 j# H: b. _! S! A0 z        {1 T+ V" v3 W" i' y& Y
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );9 W7 n# M5 _9 y: ~2 z" x
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )$ m. A7 ~& n! N3 v
                {* T% b' @: d; s1 H# V; V
                        if( m_pItemElem )
/ o$ H$ a0 i0 h4 k2 L2 C                        {
" ^# m/ J9 W7 l) k  S0 c5 c                                m_pItemElem = NULL;
) K) ?$ P8 G  S8 w/ e                        }% N4 o: T, Q1 r& o  J% r
                        m_pItemElem = pItemElem;
( I, t' Z- k5 l( e- t  J                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );* ^3 b! z. i) t$ x/ x  t4 c
                }else{- B5 C8 C: S& T- k" B3 o
                        SetForbid( TRUE );! `" W. j, `/ c+ p" I8 ]
                }
! Y- b0 e: @/ n3 k+ n; P        }else{( @) T/ Y8 \! z! k# K% v4 L
                SetForbid( TRUE );
# T2 X0 u% b. P5 P5 R! X; Z        }
) X) M4 {7 R' x" C/ k        return TRUE;7 k  C) h6 b8 w. X
}3 }8 ^$ L/ a" g9 ?

$ O' K7 U, N/ K8 i$ b) TBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
5 V7 Y4 Z8 R! y# T{1 n; u; h% L6 n' c
        switch( nID )8 f/ ]+ N) o9 y" V! w
        {. ?% `* D5 S9 W& d
        case WIDC_BUTTON3:& P( Z& R0 |4 k! G
                {
/ J2 H1 s# C# Z/ f$ ], h2 o8 _                        bStart = TRUE;# ^4 C1 i6 d0 o. i2 B6 e
                        break;5 P3 r- y2 A1 _/ p: @
                }" x% ^9 m" @& s. k" Y- q
        case WIDC_BUTTON4:0 W: M4 O+ O' P
                {
* X) [7 ?3 a3 z( t' g                        bStart = FALSE;9 M& {1 V" i) o  o% A. W* V+ F
                        break;2 f# k- Z+ y3 I" P* e: L, H  J' W% E
                }5 c1 w# T5 D4 u* I( b9 f
        }
9 R8 y; ]; _, O9 e% y7 u+ Q' @        return CWndNeuz::OnChildNotify( message, nID, pLResult );, c: d1 g, i$ L; v1 F* {: J; O. S
}        4 _: Q  r$ U1 y8 K" A
void CWndAutoFood::OnDraw( C2DRender* p2DRender )/ s# s/ k- D- E+ d1 Y
{0 y3 h5 l: j$ c( ?' }
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );( `0 Y4 p% ?! p) V* J* s0 J
        if( bStart || !m_pItemElem )
7 q5 e8 D/ {- G        {0 U$ O" d( Y3 \: f. y
                pBtn->EnableWindow( FALSE );
% B2 m* [7 B+ ]& r$ M5 W0 t1 l        }else
) h2 g' `! S( M2 S& z, [8 k; ^                pBtn->EnableWindow( TRUE );  d9 _7 y* Q. `- F& Z
        if( m_pTexture )
% Q9 o4 p- C7 @; o( Q% u5 \) M        {& a/ ^5 D4 Y0 a% }: K
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );0 `( l- q; j; n4 H# f
                if( wndCtrl && wndCtrl->rect )
: s# I" S  K- r# L0 W1 s7 c, w                {
' e% q5 |# k1 q# l                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
% W  T" x  Y$ b' C                }/ ^; {$ ]5 z" {1 S* o( }
        }
! l7 |& I+ |8 T& c}
) Z3 J* o4 Y. }
, H2 V- X% N9 r8 U8 z9 \2 ]' mBOOL CWndAutoFood:rocess()
% K' z7 F5 C# y% b: N$ j" Z: Z{
% j! y) a; Y6 B' S4 [) @        if( bStart )
0 w( ?, E! p+ O- Q        {
8 ]. z3 d8 v. [                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
) k4 B7 k9 r2 u                {: _! g& O# A( n# p3 `# P
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )( T( U' x# _  M) _
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );& ]) r3 z9 R* z; C/ X0 y# d( o; g8 T$ {
                }else{
% Y' w/ L! a, s4 ~) @                        bStart = FALSE;
5 `- i- n" n. p3 u$ N                        m_pItemElem = NULL;
9 W1 V) k5 |! c0 W7 l. ~                }* e( s$ A; a& j: n% _2 d
        }. R8 u8 J9 {6 w/ N% [$ l/ S
        return TRUE;4 B  U# C3 @& m
}
* \# A/ w6 d) o& V! ~: d3 b" j& H. j: c5 M2 p5 a
登录视频废话:7 L" j& }2 ^7 K6 _
尾翼:
" m' e4 H2 f) f5 r# B4 g
6 p& ]! D* Z* j代码:
+ b9 {" Z/ `7 s3 z$ B4 G+ N8 K+ h
void CWorld::SetLight( BOOL bLight )
' A8 J! O3 ?1 o1 j& [durch: ?& }) k# Y/ F# ~
Code:
5 X! ]# M8 u( Evoid CWorld::SetLight( BOOL bLight )
. L& ~6 e. e0 T{
. w, j8 Z+ k& j4 S  A! K; N* B        //ACE("SetLight %d \n", bLight);
  p& a( |) ~: x" t2 g        ( w: p9 g. r  X% H) R; D
#ifndef  __WORLDSERVER 0 u# q" h* r7 p3 _/ [
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
0 c4 ?- ?" ?+ a( S2 A0 I        CLight* pLight = NULL;
6 c1 E0 ]" \7 ?- X
; b% Y4 W9 `+ I* l$ k        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
6 z& ~8 q' h  d  e7 e5 l3 W: W5 M, c& n/ H
        pLight = GetLight( "direction" );
2 U4 |0 o" q9 P2 F4 k" {" j. Q3 i  J6 `% F. J7 s1 G' r
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 K  y4 U* s  D: g' @) Z        if( g_pPlayer ){' B1 h3 }  q! _& }
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
; e( a8 x( [9 t. W" P$ [                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
' l* e$ T# B! S, O% B                {8 n0 X1 X2 G8 a
                        if( pLight )
( m1 u% @% A0 k5 z                        {
" |( ?& j& `; u, I, J  `, s2 n                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
& i- m3 X+ j2 R! H2 j- z5 Y; E                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
; A! m) l1 Y& S/ B1 f; m                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
4 n  b8 Q, S) |6 [! l( f+ t' C* _# h9 _3 i5 T2 K" j
                                pLight->Specular.r = 2.0f;: P- \% |0 _4 c' l
                                pLight->Specular.g = 2.0f;5 T- O+ C: g" Y+ d! u2 f2 X
                                pLight->Specular.b = 2.0f;. E2 g2 [7 t. q8 d
       
$ F7 N9 Z" b6 c( x                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
4 m# j! i5 I3 A9 i- p  g                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];  @* D5 W  l  x& _" ~
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
( a' L6 h" o; }4 ]$ p       
2 n0 r6 U2 T* P: _# \* ]                                HookUpdateLight( pLight ); $ B, W3 L3 Y" G6 Q2 N
0 L& k) R7 I: ^5 `1 @5 R6 z
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) e. @1 `1 L. W! |% X               
/ }: C4 N1 e, ]2 x# l$ g6 w                                pLight->Diffuse.r *= 1.2f;
* G5 r8 a" L) ?3 T) {  g                                pLight->Diffuse.g *= 1.2f;+ W5 e  N$ @2 C" d( f$ J
                                pLight->Diffuse.b *= 1.2f;
# X' S! V* p. {7 F
* t* c7 E; e" j* I                                pLight->Ambient.r *= 0.8f;) ]2 x" t9 p( f: W  f/ w
                                pLight->Ambient.g *= 0.8f;, V7 s: h* l  b, w
                                pLight->Ambient.b *= 0.8f;
0 q* M* I8 w$ v! s        % Z: y2 c9 O8 {' |  N! Q1 D" P
                                memcpy( &m_light, pLight, sizeof( m_light ) );6 ]9 {* d; S7 d

0 Z- O; h! q/ {- n3 U                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);4 T9 e8 @; q7 x, R0 ?. G0 V
                                D3DXVec3Normalize(&(vecSun),&(vecSun));1 x* M8 q) j6 @6 n; x3 P! q
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# {1 P" B' @8 b8 F6 N3 T                                 pLight->Appear( m_pd3dDevice, TRUE );
7 p. h. y5 e( i! e2 r6 n               
/ b# R. O) Q! \: y% u                                DWORD dwR, dwG, dwB;8 w7 q0 F8 }2 m: E/ b- k6 V
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
# O  o9 _+ U4 a* h! H& r! f                                dwG = (DWORD)( pLight->Ambient.g * 255 );
1 i6 k# Y( F2 M) m$ L) r                                dwB = (DWORD)( pLight->Ambient.b * 255 );
. q7 F3 e$ a7 D$ E" {                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" i6 q$ t) ]0 h. h                        }
( v$ S6 e& u& R; V. @4 K                }/ e% B4 b5 k$ j3 s
        }7 l0 Q% ~2 f2 G2 Q* w9 E
        else
# `. |9 V$ A; R7 U  q  M% ]#endif * ?$ B& m; S7 h5 C/ X# R% ]
) J( s- n. ^$ X( C) W  I
        if( m_bIsIndoor )
+ C' Q# ~) l& ^3 P% e        {
; X7 ^! s3 w* h. [                if( pLight )
' U, b6 W3 k4 L- P: R7 a                {               
: o% \& C! e' M* @! {0 W                        // à??μ oˉè*   `! G: k* r- }. T: i: L
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;2 H0 S+ H6 Y0 e( F1 w) H
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
, E9 E  c  K" p                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
/ e& V$ R% \( w) i
+ ^3 B1 L! O7 N  [                        // oˉè* ??à? , w7 T; b* S6 j0 C! p4 C+ X( o4 q
                        pLight->Specular.r = 1.0f;
# A/ I' M( t, w7 \4 _                        pLight->Specular.g = 1.0f;0 J" I6 {, k% \: k2 @7 }$ `% {3 `
                        pLight->Specular.b = 1.0f;
, A1 v1 F9 T( R2 Y  m4 g  `+ j                        // àü?? oˉè*
5 Z2 F3 W* r9 [$ h# H; V- K$ f% i                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
& w8 R5 ?+ \6 ~: a9 i% O: @8 m. W                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;- O& z4 e1 c% y5 k
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;4 @: m( Q1 D2 R& S( `; f: W9 ~0 }
2 b+ F3 H+ B  W1 S# u
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.' o5 V3 }/ u0 A! F) {/ L
                        {3 ?' c$ O6 N) Q9 n! t: ]+ Z5 ]
                                pLight->Diffuse.r *= 0.6f;
1 t8 S8 R3 v9 l- v                                pLight->Diffuse.g *= 0.6f;  f4 {$ t8 v- x* [; a$ @. J
                                pLight->Diffuse.b *= 0.6f;  j1 C" g( n7 \5 `; B
                                pLight->Ambient.r *= 0.7f;
7 |+ ^5 `. _' c4 |% ?                                pLight->Ambient.g *= 0.7f;
  D* _/ f( y0 U2 }. v+ O                                pLight->Ambient.b *= 0.7f;4 S7 |% H$ W% T, L
                        }
' T: Z+ e1 g9 L+ v& M! F
- H0 S0 C7 I; Z2 w6 ?#if __VER >= 15 // __BS_CHANGING_ENVIR
7 q8 H% Y3 H( a2 s& g  u                        if( g_pPlayer )* L( O+ t7 f% I5 F" F) ~& s  D
                                HookUpdateLight( pLight );& o' d" R6 y: J/ I  m# ]
#endif  Y" G5 h+ o. I% J
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );6 Z2 }" g4 V! F1 c/ W# W
7 J; b; T9 v- a6 F4 |3 B
                        pLight->Diffuse.r  += 0.1f;9 a  W6 G1 B6 L" V# A8 F
                        pLight->Diffuse.g  += 0.1f;8 B9 V9 {  I4 F, j0 R! ~6 H
                        pLight->Diffuse.b  += 0.1f;
8 }, D/ z0 z2 u% `                        // oˉè* ??à? 3 N) Q1 ~; g( k1 e6 b
                        pLight->Specular.r = 2.0f;
0 I8 a/ B$ E* U: h                        pLight->Specular.g = 2.0f;
+ g3 M  y: b7 |7 C# ~                        pLight->Specular.b = 2.0f;5 Y( q! O# g# R! X$ T) A
                        // á?oˉ
9 W$ {$ e0 B* Y1 k4 J) A$ Q4 ?" W                        pLight->Ambient.r  *= 0.9f;
: }  [$ L( K( L5 H1 v; D+ t9 d& r2 {                        pLight->Ambient.g  *= 0.9f;) b0 d$ a' S+ M: F' i( k# o4 w. \! s! y
                        pLight->Ambient.b  *= 0.9f;
" h3 q! y# N  }" I6 q& S! r- q
% z" o8 X  P; i% O; E* W6 {& G0 u                        memcpy( &m_light, pLight, sizeof( m_light ) );
' \! S, I2 ~. Q% d6 u6 Q                       
0 N) D% o' H5 }+ C, Z* {, c/ X, Z                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
! c4 q+ J. B# ~                        pLight->Appear( m_pd3dDevice, TRUE );" p5 p* A# ^  [7 R
       
9 F& u; [8 K8 G- [. ^                        DWORD dwR, dwG, dwB;* K* B& s2 i6 k& g/ G  R: S, M
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
2 Z* w5 h  c5 f8 ]7 g                        dwG = (DWORD)( pLight->Ambient.g * 255 );) C$ i4 j9 m: }! Y6 D
                        dwB = (DWORD)( pLight->Ambient.b * 255 );6 e! D' y3 H5 _& @  K* X
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );3 H# `) i9 i2 O) E" T
                }
9 ~, c' E. R9 c) `, E        }& ~/ }  h# [# J; l7 K
        else  i9 E5 z) Q0 z0 W
        {  x# K$ D5 G' f. |
                if( pLight )
+ h) L' M9 x8 I/ I* c                {
  {$ a- s! j2 N0 Q) q& T" [               
7 z( g  H3 g. y( M                        int nHour = 8, nMin = 0;8 U1 t2 ]. S- q7 M0 |1 l& r# d
        #ifdef __CLIENT
2 w6 Z1 t- r" g: U( y# V8 @                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
1 q' ]3 K$ U& N/ D                        nHour = g_GameTimer.m_nHour;1 s+ B  i: H. B* y5 ~1 ]
                        nMin  = g_GameTimer.m_nMin ;1 L: c/ q4 t/ }6 N4 d; s$ N3 y+ [) t
        #else8 B1 b5 u+ T( F+ F
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
: R% B6 `# T" K                        if( m_nLightType == 1 )
0 \2 Z0 H3 y1 W/ I, x" |                                nHour = m_nLightHour;; p8 Z0 n( \9 w; |- ^8 p6 T! I
        #endif* [+ u& ~" O2 T' e
                        nHour--;
1 P9 r( m! p, H( h6 x; F                        if( nHour < 0 ) nHour = 0;
# @- @8 o0 a$ E5 N' F                        if( nHour > 23 ) nHour = 23;0 y0 Y- a) m# b  T

% c  P$ ~7 ?+ F6 R& ~                        //if( m_bFixedHour )* @8 G1 G1 {4 X
                        //        nHour = m_nFixedHour, nMin = 0;% u& Q6 m, g: M9 R
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
% `; }* Z/ `. X( A                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
! q" S% n) x2 \6 P  _9 L7 K
0 H* L' R6 B" n3 e: i& v1 r0 ~9 A: H                        //m_lightColor = lightColorPrv;
' s! r+ {, C3 g: _( c; i6 b                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
7 Q( D# }' g, i4 k  l' H; J! W                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;2 S* O5 u8 O, D* C
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;- J8 X  y% G' q& [  _/ O
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
* o7 v; P  m, N; c                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
' m9 {0 f+ x' F, l                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;# W: ]1 ~4 Q: z
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
: n# [0 Y% b7 F& e. R2 D: Y" ]# |$ p7 x6 _( s1 j# ~
                        // à??μ oˉè*   j" D2 D- f1 E7 @
                        pLight->Diffuse.r  = lightColorPrv.r1;- @' n/ t' H* h/ ?
                        pLight->Diffuse.g  = lightColorPrv.g1;# a$ x, O5 R, R1 ?
                        pLight->Diffuse.b  = lightColorPrv.b1;
6 a# d, ]! W& `* ~( J                        // oˉè* ??à? 3 }" H& d# S- G, e- r8 U" N
                        pLight->Specular.r = 1.0f;; ~# L; _# C: U: k) p' ?( n
                        pLight->Specular.g = 1.0f;- V, b8 a, o1 c, e
                        pLight->Specular.b = 1.0f;) w( `2 V7 f: _" O+ z# `/ `5 ?
                        // àü?? oˉè*
3 D/ U( B2 Z, k" K/ l                        pLight->Ambient.r  = lightColorPrv.r2;% J! E5 U# o( x& R4 o6 r" ^. e
                        pLight->Ambient.g  = lightColorPrv.g2;+ G7 D( f6 Y1 R% I
                        pLight->Ambient.b  = lightColorPrv.b2;
$ R& _6 _0 Q/ G/ o2 S1 J7 s$ L5 E* q8 [( @1 S( M# U
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.  g9 o1 T- L9 L& X" O7 h
                        {
- z$ S2 i4 g) {9 c% B4 w                                pLight->Diffuse.r *= 0.6f;/ [8 H8 w: D6 y. Z8 f9 U: X7 P
                                pLight->Diffuse.g *= 0.6f;
6 }8 q2 Q. v  ?/ V                                pLight->Diffuse.b *= 0.6f;1 T9 L/ ~0 {$ e4 @9 w2 l' |
                                pLight->Ambient.r *= 0.7f;
" ~. M/ S4 h' J2 c7 M                                pLight->Ambient.g *= 0.7f;, i8 Y: N1 Y0 y0 H2 B* i0 O
                                pLight->Ambient.b *= 0.7f;" v. R' S" p9 C: c: L8 J
                        }" s& `; Y  V6 W2 h; x3 M! l
                       
& g! k2 w1 f; {! {/ F+ ]4 C1 c#if __VER >= 15 // __BS_CHANGING_ENVIR' O. a% R8 @. e( M
                        if( g_pPlayer )
! X' t0 |; s' W                                HookUpdateLight( pLight );
) @( F! V2 O/ S! `  t& s#endif0 Z7 h( j- N7 @, c' h9 w% r
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );& x- I' H! a0 [3 Y4 Y7 C- {* Z! S

. {6 U1 D1 ?/ u8 d% H* k+ W+ z( X#ifdef __YENV$ H% L0 M- h6 b2 d% y5 ~
                        pLight->Diffuse.r  *= 1.1f;" u2 I' s' |' k: i$ f( s5 D( u
                        pLight->Diffuse.g  *= 1.1f;% @  U: T# t: D$ N: Y8 |% f
                        pLight->Diffuse.b  *= 1.1f;8 Q/ N9 a: z2 P
                        // oˉè* ??à?
( `' r/ ^- C$ X5 [                        pLight->Specular.r = 2.0f;
. F8 L8 `5 `, U4 Z! W# p                        pLight->Specular.g = 2.0f;4 e. Q% W% V( L; b3 U  m7 \6 d
                        pLight->Specular.b = 2.0f;' E- |$ k& L) O0 Q
                        // á?oˉ
) M9 X0 |( I8 s1 v9 \                        pLight->Ambient.r  *= 1.0f;
. v2 ]' e- v, y1 `# Z' A5 M+ l                        pLight->Ambient.g  *= 1.0f;
; h: f. j8 P3 y$ _0 U6 U                        pLight->Ambient.b  *= 1.0f;, \! ^; ^7 {; D7 \4 b) J7 i
#else //__YENV
( g" p4 c; z( _% C4 {                        pLight->Diffuse.r  *= 1.1f;! P' c, y6 V0 u7 L' H
                        pLight->Diffuse.g  *= 1.1f;
, r9 I: u1 l; W/ C# Q& X  |$ N7 n6 {, C                        pLight->Diffuse.b  *= 1.1f;
" V* P; W5 g- J/ i                        // oˉè* ??à? ! ~' g! _9 `, G  u7 W( b  q: `
                        pLight->Specular.r = 2.0f;2 [7 f) r3 [+ J: H, }! G7 _3 K
                        pLight->Specular.g = 2.0f;
9 p' ~+ j  w6 ~9 k8 H                        pLight->Specular.b = 2.0f;: _2 U. h' n  ~3 g
                        // á?oˉ 1 t* N6 w3 u3 @5 v4 C$ w& e
                        pLight->Ambient.r  *= 0.9f;
$ X+ P0 H( I* f                        pLight->Ambient.g  *= 0.9f;* a! G! q2 B0 L$ H2 A. i2 k
                        pLight->Ambient.b  *= 0.9f;! ^" _4 s# n+ q6 J+ V; W! a% @
#endif //__YENV
' c: a6 Y3 \5 X4 M- `- C$ f# ]5 ^                       
( T9 n2 q7 Z  u5 ]0 H* q                        memcpy( &m_light, pLight, sizeof( m_light ) );
  H. ]( t. M' ^3 r9 X                       
1 X; ]5 Q' i) F0 q% i                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
0 [4 n0 ?( E9 B2 E1 c                        D3DXMATRIX  matTemp;' s5 ?4 V- ~" G
                        static const float CONS_VAL = 3.1415926f / 180.f;
" H$ M& z4 d5 u) e0 Y% f9 F5 ?1 {
2 W% _( V- o2 J1 Z! {                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
. X$ e/ x) _: w: {* Y1 Y                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
. O1 f; T4 s9 E* X4 f" N( x                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 6 w. R: \+ c) ^$ e' H' K
                        pLight->Appear( m_pd3dDevice, TRUE );2 e. S) t7 y* ~$ C% @
! V4 A& R  S9 F/ _( J8 i) A
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
  e& |, L$ v0 B3 M                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));: t6 C- B- s/ Y: a! Z, e$ \; F. f. n
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
& M$ k( m1 L8 }
, E' B4 `0 X+ c                        DWORD dwR, dwG, dwB;  }  [7 S/ ]$ r
                        dwR = (DWORD)( pLight->Ambient.r * 255 );/ E. x" @. [: L% l  N3 g
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
+ a( t2 d9 m- n0 u                        dwB = (DWORD)( pLight->Ambient.b * 255 );9 d+ f5 A4 e4 g0 ^$ V9 _
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        9 H: ?6 _/ H0 Q* A# L; S! i
                }
/ G+ j: f1 }! N. E' D1 j/ [        }+ w' b4 s( v8 z3 G, Y

6 o. f5 @3 g, d6 G' d. Q        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
+ c4 I, q" V. d5 N        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) );4 M+ {" O& K9 y. v, r) U" g( _
        ::SetLight( bLight );, o# ~/ ?5 m& n" p- j
3 E* n! {+ |# o! h" U( z0 a3 v
        // ±ao? ?D?í???ó á¤à?
5 I/ m8 \/ l- M. ]        m_pd3dDevice->SetMaterial( &m_baseMaterial );
* o1 f- I; q4 X( ~; e4 Q0 p8 r       
7 {# Y' x5 D9 D  i1 m#endif // not WORLDSERVER
7 a0 s% f- p7 s6 e}
4 a2 }  f) h. b1 C$ U% G1 q- e, U, |并更换  c; C( u3 t, B4 m2 e
Code:* [$ ^- B% G, |8 F% C
__FLYFF_INITPAGE_EXT
: c+ z/ S# K/ Q; p; ^. o定义. Z# ~7 h2 V/ E2 a4 ^1 Z

4 C' C% f* g* M# H. c, m2 ^
0 H* z- Y* x& o" G) S* h- E
4 @3 s: b  z( m: b0 P' k
: y( R- y# A, y& u. ~/ I+ m, ~6 d现在终于删除我的狗屁加速...1 @2 E$ O+ S3 M- @& \  }0 K4 ~* z

& y8 p& z9 C* M5 j' i9 ?: H+ r$ c+ V1 A' Y

0 V, a0 G1 ~3 d6 Y$ f' F: G5 P




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