飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:7 H8 d- w; G! Y. ]% C
尾翼:
! Y/ A, ?# O8 L+ v9 `
9 S! B4 W( R1 t: {$ I* V+ I; t( `代码:; s' `2 n: r( J; j8 n6 u# |& X
CWndAutoFood::CWndAutoFood(). |+ z) }% ^6 i: n2 k/ P' d) g
{8 o9 [4 k6 p, k) }& }* R
        m_pItemElem = NULL;
' S4 X$ Y+ j8 i4 ~8 p" R        m_pTexture = NULL;
" M9 @! }0 ~9 _1 }+ Z        bStart = FALSE;
& l) y4 Z8 @, p' F}
( s0 L* t* a2 j5 W) @6 V" T8 ?8 W1 x% H; D- @
CWndAutoFood::~CWndAutoFood()
9 y- ~0 x( t# b% {8 H{2 ~+ ]( \- L. l7 Z
        AfxMessageBox( "AutoFood ist gestorben " );& z2 ?; V( _/ e" o# E" e9 n1 ~
}
' B, U% R) Y) MBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType ): @/ L7 \' R$ p( N1 m$ T4 Y9 r1 W
{- j- Z7 m6 \' L" @6 ]
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );5 ]6 _  B( f& m& F9 @1 o7 \
}# D0 ^9 ?- t" |1 k
5 N# y/ s$ N$ |2 J
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
7 D1 A1 b( M6 M{7 D( o6 W3 q' g6 o
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
$ t0 {, e: ^1 ^        CRect rect = pWndCtrl->rect;+ ]- S5 z( A' S
        if( rect && rect.PtInRect( point ) )
; I/ z& x/ H# V! P% f) t6 T# {: n        {
" o2 D' F( F, w                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
0 Q) G) ?, v( B; {                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
3 K3 s% A4 B& o: M8 W$ \                {
* @8 ~9 p8 Q/ K: r: o, m                        if( m_pItemElem )
# F2 |# K* s' |1 o& b2 L$ O                        {
( j# h; {0 D4 k% y# w' F# _3 A; f                                m_pItemElem = NULL;
2 r% H7 y2 \9 u8 k% p# i0 ]+ \: a6 _                        }
, _9 L# a5 D) O. s                        m_pItemElem = pItemElem;5 O' n4 a: S, A" c
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );( E9 {& E2 Q0 u; W& T' T6 h& v
                }else{. t" i" F& v* o2 {
                        SetForbid( TRUE );0 `# \- U! `* ^0 W$ Z7 e! T2 r
                }
- {  h% `. Y* w        }else{) C7 a9 ~" ?8 X+ E
                SetForbid( TRUE );
6 B0 m* u+ M; q' g        }5 c2 ]3 Z: J" j: P' K
        return TRUE;2 Z! W% ?' [" v* L7 ?+ G
}1 n+ }2 {! T8 s2 ~% s; ?! T# u

. ], L/ P$ Z- s4 ]4 L7 E5 `BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )6 i( W! K0 ~& i  t4 C% |0 Y4 P
{
& B! [# C  R% P" |        switch( nID )" p& ?; K! t8 i
        {2 s3 c8 _6 N" N7 s  m  x
        case WIDC_BUTTON3:
: l& j+ i3 Q4 V2 Y% w$ z6 n                {
1 p$ U: @! U  D. F7 S$ u/ P+ r                        bStart = TRUE;) [5 ~/ X8 {# A
                        break;% C6 n% j/ Z( B( t8 S+ ~
                }, F6 _- q, _% ^  M9 E8 w
        case WIDC_BUTTON4:9 o' l$ @1 a' P/ j  r. ?
                {. i0 @0 O4 r- Q* o; ~0 }* U5 o
                        bStart = FALSE;
) J) Q3 r, y% `4 G                        break;
7 ^/ i4 v2 i9 A8 e4 E                }
* Q5 C$ U9 ~4 ]/ q2 y7 i        }* q- `2 u) P$ i) v7 ~" N
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
' k; T2 ~- M+ p}       
2 b7 \' i  i6 a! T& ~2 Lvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
$ N  q* w; S6 G- R9 ?  K+ o{
( T' E( z6 n( q( [/ P6 g        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
- t% T, y2 G& X        if( bStart || !m_pItemElem )' R0 x; {7 D; z9 K9 y
        {
/ E2 r$ T) G/ ]5 R8 r2 i  ?" \                pBtn->EnableWindow( FALSE );$ H! T# P. I( q# v6 l
        }else* M. Y& C, o0 p' l- j" |
                pBtn->EnableWindow( TRUE );$ T6 Y( h8 C4 T
        if( m_pTexture )% E/ K2 q0 |7 _3 s2 r
        {
: j- ]1 A; {6 S/ k, s2 h# {9 Y4 ?                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
4 A1 _3 Z' Z1 {7 p0 c3 A8 G                if( wndCtrl && wndCtrl->rect )" O* y" Q$ m  c+ l' B
                {
/ q/ K/ g: B* R6 c                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );- d2 Q1 t8 \' X2 t. O- ~
                }3 I, [3 L: j7 B* J4 v' d0 a
        }9 O! W% w+ s) [  E7 \
}
, I9 I) F7 N- K+ A: C+ G
/ j$ [  W# g3 O7 Z+ s6 ~BOOL CWndAutoFood:rocess(). u8 B! D3 I* L" V9 Y
{
8 p- j+ y7 V2 E% G6 ]3 [        if( bStart )
* \4 G. d( r" D2 `7 a( n1 L        {
, M1 a4 v" L- V, Z, C* j. g                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )$ D2 D0 W. {8 p) }3 h
                {$ K8 h- Z8 e- ^! i$ m0 O) |. D7 }
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )+ g/ ^0 y  j2 p7 A
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
0 H3 w' T! i( |8 q6 F; I% d% u                }else{1 O6 m3 S- `' J# k7 m) X
                        bStart = FALSE;& i  ?4 T% x3 H! b2 s
                        m_pItemElem = NULL;
# ~. |% p0 u  e% W( E1 J                }
- l1 D6 S( O( B- ^9 Y! X% m- P        }, Q9 {/ {0 a- \( `+ Y; x* Q$ t
        return TRUE;
% S+ E5 H$ o/ c9 x! ]1 a}6 ~% Y9 y9 y& K

9 u; a( J% V+ n, X) j. a登录视频废话:0 g% q) Z  e( Y9 P
尾翼:7 J8 U7 X' X8 X7 w5 Y
2 Q" E* z: I- O0 H/ K2 i
代码:
* x! c' N- t8 W1 r' g1 p/ u- i
void CWorld::SetLight( BOOL bLight )0 e% K, G5 K. [7 p( T7 {
durch4 F1 c# ~6 O/ I) }
Code:8 b) x9 T" B# ^2 @" T* n8 c. Z
void CWorld::SetLight( BOOL bLight )
, t  z6 p5 p  m5 B! w1 Y" S. L{
1 s1 s" p7 T% y. i  {$ f& A7 g$ x        //ACE("SetLight %d \n", bLight);9 e# w6 h; p2 r! G( t
       
' ]+ I+ G" W, P: M8 \4 h% ~9 G#ifndef  __WORLDSERVER
0 y& ^9 S2 u1 u4 X2 Q* B1 S$ H        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
$ h' P) Z0 d, z) Q% u# h        CLight* pLight = NULL;8 R* f# q8 V- a- P/ s, }- T+ S
" I2 }5 [7 i+ j$ ?( K  j
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
/ v! Z% Z* K" G  S3 s+ {7 K5 z; h! T4 J; p2 }- g$ W/ b# S
        pLight = GetLight( "direction" );/ q" N% m( f, G# ?& [

8 ?+ V5 M8 U3 x$ Q$ N! z#if __VER >= 15 // __BS_CHANGING_ENVIR& J/ z$ R  C- E9 w
        if( g_pPlayer ){
" ?8 M/ x6 y) ?6 T1 y                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
9 d9 t0 ~+ K) m0 G                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!- Z  N8 W* g5 C. G
                {
3 D7 c4 V( Q" a; Y& P                        if( pLight )
; @7 D3 E" j6 L9 \2 ]                        {" Q% q# W9 o# N+ E
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];7 e! `0 m1 U; Y  m
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
1 q/ F, p7 ~3 B                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];* z5 o2 `$ A3 a+ h3 s9 s$ b
: p- W( B5 h" v2 b, f2 x
                                pLight->Specular.r = 2.0f;
. z# L1 p; [$ |# f& G2 P. _                                pLight->Specular.g = 2.0f;; E1 _& }6 J! p4 F8 ]% `
                                pLight->Specular.b = 2.0f;. G5 a  n; n6 i( r
        $ \2 v3 T9 H0 N4 Q+ @5 ]) ?
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];, \6 x: S: [1 k4 B2 v
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
  y9 U0 }1 O& H; ^! [                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
6 O9 [& L! p; u9 A        ( L! o$ ~2 \8 m) Z( N+ }& k$ N% X
                                HookUpdateLight( pLight );
2 U% m2 O" B4 O- Z, T9 s9 P5 @; A
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );2 O, l7 z6 U6 K; l; r: ]0 n
               
0 O; Y. @/ U# B. H                                pLight->Diffuse.r *= 1.2f;
3 O9 L5 P. q8 E  z1 }                                pLight->Diffuse.g *= 1.2f;
" b$ ]6 P' r5 i; o                                pLight->Diffuse.b *= 1.2f;
  e& O+ K6 O  Z' N- i. K' X* N# p& ^2 s# J0 W0 v' t
                                pLight->Ambient.r *= 0.8f;
* z4 v1 R& z: U( i5 `* R( q                                pLight->Ambient.g *= 0.8f;
  O4 a4 S* c0 ~! }                                pLight->Ambient.b *= 0.8f;
& j$ t4 p" D0 s6 R& D1 z+ s- |        * l6 w' q& I, o& |! H
                                memcpy( &m_light, pLight, sizeof( m_light ) );. R' p4 V& H; l) O+ k8 c
6 k* E( L' F2 ~& r
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);8 a  _' G; ]0 O' u! {0 y- h' B
                                D3DXVec3Normalize(&(vecSun),&(vecSun));! m# G$ }  u* l% h+ r
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 9 T6 |! s7 Q& _7 M( F5 I  s
                                pLight->Appear( m_pd3dDevice, TRUE );
" w2 k* {+ V9 v* H8 R! l7 `9 ]- a                5 R% t# d- g9 k, R- g
                                DWORD dwR, dwG, dwB;% v% h  o4 a7 ^2 Y1 F- k
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
" e; @& d7 g  X) [6 w                                dwG = (DWORD)( pLight->Ambient.g * 255 );+ E( k- _6 j! v* P, C' q4 e7 \
                                dwB = (DWORD)( pLight->Ambient.b * 255 );% f( v) ~+ V  o+ n- g9 d( w+ \
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );# h% }" w+ l% ~4 y, [. _, e1 q. U
                        }- m' m& m3 A3 o0 V. c
                }4 @' @+ n7 e9 O, k
        }
; Y  ]: s2 y1 p: D& e        else; h3 i- L4 {& \5 z2 j( l
#endif ! I( ^& U/ `3 H6 \: \

* M# }' s/ h; \$ |/ o+ X        if( m_bIsIndoor )
- A: x# R3 |+ h        {, t/ o5 `. B1 D6 `, z: `3 m
                if( pLight )
- |  m- X$ _* I/ Y  s                {               
  w9 M6 L$ K' [* ^% N4 V                        // à??μ oˉè*
) m5 ]- x9 `* v& V                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;) ]5 @8 _5 |5 D) Q: r8 C
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;; Y/ [) Z+ O0 g8 H% t. Q8 v
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;' I3 E& X3 z' l1 V& d

: t1 P4 i. k% L+ y7 Z8 p                        // oˉè* ??à? ! J, {- _; E$ ?( [  {" p1 c
                        pLight->Specular.r = 1.0f;
/ v$ T' U& j; L' e                        pLight->Specular.g = 1.0f;
, a( @2 R8 U) @# Z, y                        pLight->Specular.b = 1.0f;% ?" g6 U$ j7 w) j) u4 _9 r
                        // àü?? oˉè* ; @  |8 X% q3 K
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
4 b  b) L+ N  g2 e' J5 a" s' _                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;& c/ |- A4 S8 z5 E
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
0 m& k1 p& [$ D: K( w& L% v7 D) A9 X1 q6 g5 {
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.5 [# k2 X3 _9 g3 @4 p2 S
                        {% m6 U: S6 x( U4 V
                                pLight->Diffuse.r *= 0.6f;
# g: [' l$ V% Q( }$ c6 p8 T                                pLight->Diffuse.g *= 0.6f;9 ^- |1 B4 A8 P$ u- @; f
                                pLight->Diffuse.b *= 0.6f;. m+ _; D8 ~; S. U4 Q4 O
                                pLight->Ambient.r *= 0.7f;
2 U0 Y, [! p1 ]$ x/ Q2 w                                pLight->Ambient.g *= 0.7f;2 o( W/ r% v9 O9 q, N1 b7 l+ i
                                pLight->Ambient.b *= 0.7f;
& k* Y/ r0 V6 x0 L                        }
, M" u' C+ O% m+ o" B! ?4 `, u* F0 P
#if __VER >= 15 // __BS_CHANGING_ENVIR- j2 l: G( u! e5 ^
                        if( g_pPlayer )1 J' o! T. D/ H" \, r4 q
                                HookUpdateLight( pLight );
" Y! l3 w, b7 w: e#endif
$ z! o" g3 |/ X1 b                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
7 i' [; ^& b$ L6 x$ u4 o0 X
- a1 n* S* \5 z                        pLight->Diffuse.r  += 0.1f;
8 h3 W" O( U, Y6 a                        pLight->Diffuse.g  += 0.1f;; @8 `. e4 j) B. J" K$ k+ |7 J
                        pLight->Diffuse.b  += 0.1f;: i* \# W6 F+ q& V# J/ m
                        // oˉè* ??à?   N" x3 s4 Y) d3 r) v
                        pLight->Specular.r = 2.0f;% g1 E* m1 `: Z; g2 a5 z. ^
                        pLight->Specular.g = 2.0f;6 q( B0 K  ~# g+ h; }
                        pLight->Specular.b = 2.0f;
' V) D6 [# K' a+ G) e1 _                        // á?oˉ 1 {7 G; w7 E7 y" b+ l3 z& G0 Q
                        pLight->Ambient.r  *= 0.9f;
# s. u2 \7 Y# O8 y. m  W( f                        pLight->Ambient.g  *= 0.9f;
2 L9 P! t2 x4 P% W3 o                        pLight->Ambient.b  *= 0.9f;+ w3 x/ V) y/ Z2 |
' G3 L8 n5 K# u& m2 o
                        memcpy( &m_light, pLight, sizeof( m_light ) );; E3 `+ O9 i' L, Z+ r8 T! N! A
                       
& p; j1 ^1 ]8 _0 S% h. ~                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );' h0 u9 x% Y1 O$ p: G% r. s! ?
                        pLight->Appear( m_pd3dDevice, TRUE );# ^0 n. n# X$ \0 b( \1 r
        / c( g' C7 M; P; N6 u1 @
                        DWORD dwR, dwG, dwB;% E2 F. b3 @; z4 G8 `) N/ m6 D  I
                        dwR = (DWORD)( pLight->Ambient.r * 255 );0 b( ]5 a& w) L
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
2 m( o# E7 P- N8 ~* f0 q                        dwB = (DWORD)( pLight->Ambient.b * 255 );3 h* d) |/ f7 V: ^
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );3 [/ ?. Q8 _) m, s1 Z" h
                }7 I, l1 U1 S/ `$ D
        }
) P9 l  e. X# i- B, [1 t& ^        else
6 e; U& u$ @# ]  u6 K0 h! @" w        {
7 L) t, [3 H6 |! I% d- s6 l3 L                if( pLight )% F% E( U% A, a; L5 G; I
                {  ~7 d5 T- K' O6 M1 ?
               
( V: i5 D; n0 _: P0 W                        int nHour = 8, nMin = 0;
5 S2 S* i  [, w        #ifdef __CLIENT
# H) h5 ]- y: ~" s. Y0 S                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. 0 Q5 G5 d  j7 D, A$ C
                        nHour = g_GameTimer.m_nHour;0 v  n3 q; v3 H* D) F1 ~4 n+ K
                        nMin  = g_GameTimer.m_nMin ;; n2 Q9 [! F: R+ D" N! j" ^
        #else* h! m6 z' i! b+ Q8 }2 P5 R% Y
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.0 m5 ~- o) s4 I
                        if( m_nLightType == 1 ), g( h, O: r/ L5 L( @
                                nHour = m_nLightHour;- R3 ?* g0 A, C! f  v4 Q
        #endif
; @2 T& l4 J. m" h, K# y                        nHour--;8 X, ^$ ]& g6 L' G" I/ E  c0 b8 A
                        if( nHour < 0 ) nHour = 0;( ]( _4 W2 J3 K7 W7 H& m
                        if( nHour > 23 ) nHour = 23;
& |2 L, U  @+ F+ W9 d6 t% z7 Z  G# ]
                        //if( m_bFixedHour )
& q8 G/ l$ d/ H7 V0 B' \                        //        nHour = m_nFixedHour, nMin = 0;4 G/ z% n  i; Z# K
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
% R! e; V* A  d  T, i' ~# H                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
( h' w, k; w( L& o" e8 P0 a* F5 z9 F* ~
                        //m_lightColor = lightColorPrv;$ |  |6 n( D8 Y
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;2 R9 e" m5 B: Z  E# @0 ^& u) i
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
& q5 w$ v8 M5 B                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;( ]9 P5 v9 Q% q! D$ L
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
  k( g9 g- ]- v" D3 C( A9 Y1 r                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;% P6 L( ^7 E/ y6 N8 U: q& T
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;- Q, S  C. E$ G& [+ ?
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
$ ]  o/ z" X- A3 @; g* i# |
* [* V( N5 g7 Z8 K3 Z                        // à??μ oˉè*
' J' P8 Q8 M7 C( }  x7 Y- p                        pLight->Diffuse.r  = lightColorPrv.r1;* K7 _- t' j7 x3 ?7 M
                        pLight->Diffuse.g  = lightColorPrv.g1;
% U# t# O& p8 k2 a3 r# z1 {9 Q                        pLight->Diffuse.b  = lightColorPrv.b1;3 A, d8 X+ U  F: X
                        // oˉè* ??à? 2 Q* q& c9 ]/ _. Q& Z
                        pLight->Specular.r = 1.0f;
! @* `6 \4 z: x3 o) B2 J9 c& Y& J9 n% x- X                        pLight->Specular.g = 1.0f;' f: {% R. P6 m. E+ I9 Y- h
                        pLight->Specular.b = 1.0f;
( L6 n. J  Z+ F0 {                        // àü?? oˉè*
3 T5 u- b) r1 B: I9 P4 c                        pLight->Ambient.r  = lightColorPrv.r2;
: V# c: n7 [3 J: }" Z9 Q                        pLight->Ambient.g  = lightColorPrv.g2;" r" K6 e6 J5 c/ N/ U3 Y6 H0 S
                        pLight->Ambient.b  = lightColorPrv.b2;$ j* Q8 I7 o' m1 P6 w
2 B& N5 f2 f0 }, J& P
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
3 A3 Z- l9 q: V+ f9 z' L# P                        {
& `1 |$ p3 m' W                                pLight->Diffuse.r *= 0.6f;/ P. W$ R7 |1 O
                                pLight->Diffuse.g *= 0.6f;! F$ E5 M3 ~. ~; q9 }+ _
                                pLight->Diffuse.b *= 0.6f;# {' H( T, t6 f
                                pLight->Ambient.r *= 0.7f;
2 E' Y- s# ]+ k+ V2 q                                pLight->Ambient.g *= 0.7f;
& |. k* y$ A) q                                pLight->Ambient.b *= 0.7f;
- L; T7 U; L' {! Q2 l4 a                        }
  E- X7 T: W, C6 n) N& ]" a3 g                        . I9 d9 k, \, A2 Z4 ^3 ^& m& h
#if __VER >= 15 // __BS_CHANGING_ENVIR) \% d1 s! @  f* z# m( Z, _
                        if( g_pPlayer )- `* M- _: S( Z
                                HookUpdateLight( pLight );
! H; e7 w' c3 [- u9 j#endif
1 P0 v: t% w6 W/ e& n                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
  [- p$ a& K2 B$ f- o+ k8 N4 [' ^$ f8 f$ d) L  m% _# ~
#ifdef __YENV
1 V. O; P7 ?$ _! R2 D- x                        pLight->Diffuse.r  *= 1.1f;
6 ?) F2 r9 k. h) v                        pLight->Diffuse.g  *= 1.1f;
9 ^  M9 I0 X/ n! O4 y                        pLight->Diffuse.b  *= 1.1f;$ Q) [7 R0 }1 m2 M, f4 S+ G+ l
                        // oˉè* ??à? 3 t( a# [: b+ I. r; j1 p
                        pLight->Specular.r = 2.0f;
( i, q" W" k; x. p                        pLight->Specular.g = 2.0f;
5 P5 U& K1 A- |$ U$ q                        pLight->Specular.b = 2.0f;
4 N/ Z' p$ {. ]6 E% q$ c* c/ p1 U" @                        // á?oˉ 0 c5 B5 w$ j0 Q% y. i" b
                        pLight->Ambient.r  *= 1.0f;
5 C8 v* c+ |, I9 E                        pLight->Ambient.g  *= 1.0f;5 i# E" U$ V2 k' L. v
                        pLight->Ambient.b  *= 1.0f;
& W' _" R7 ~$ p' }9 B#else //__YENV
; B3 W7 h5 d5 A$ u5 O- h                        pLight->Diffuse.r  *= 1.1f;
* q) g5 n% P4 o                        pLight->Diffuse.g  *= 1.1f;
# z1 K+ g. X: j7 a                        pLight->Diffuse.b  *= 1.1f;! }% `; X! P1 x
                        // oˉè* ??à? 4 T/ `( V2 \0 f, n
                        pLight->Specular.r = 2.0f;0 s& V  c  {0 c* C7 z1 h
                        pLight->Specular.g = 2.0f;1 p, i9 @8 X: m
                        pLight->Specular.b = 2.0f;
4 p3 y! O) x: A$ H0 a( a( V" w                        // á?oˉ & w8 x+ I$ C5 N3 I. ?' {( H
                        pLight->Ambient.r  *= 0.9f;
# |  P- l  p2 A                        pLight->Ambient.g  *= 0.9f;( q2 A! K2 b) x& ?. t6 g% [: h
                        pLight->Ambient.b  *= 0.9f;
! m0 \: h4 I$ q2 K$ k0 w- S6 |3 ^#endif //__YENV 7 k. x4 K  H; R" S6 ~  f
                        ) W$ u" N. r6 L4 G1 b) C: @
                        memcpy( &m_light, pLight, sizeof( m_light ) );% F# q: i0 [' I. G* J" a2 T
                       
; E3 E( E5 N" A/ E& @0 M; H                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);* T; `4 N  |1 Y9 P& r
                        D3DXMATRIX  matTemp;" M; T0 c8 s6 \; I& \. B; J+ Z: _
                        static const float CONS_VAL = 3.1415926f / 180.f;
7 i$ _9 c- W/ O8 [) X
' A- W7 L9 K& v7 Y                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);* I9 t5 M- J5 r$ z2 h' P  o; ?
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);5 R/ S. o: m8 y2 k+ y& T& J0 T* t% A
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
& w9 G. }( O& m' I( p: J4 m% t                        pLight->Appear( m_pd3dDevice, TRUE );
# P8 s- E9 F( A/ o1 E' C0 x
, `8 s* N9 E/ S                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);1 i) g, ^! Y$ X9 W$ t% F$ w
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
3 @5 L! R4 c7 ^                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ' n: ?* ]" Y" }& m5 X% X+ J, F

2 @" k6 S& z3 C5 p" L                        DWORD dwR, dwG, dwB;
0 _' m9 F& P5 A                        dwR = (DWORD)( pLight->Ambient.r * 255 );
- a9 H, q; N9 G                        dwG = (DWORD)( pLight->Ambient.g * 255 );
+ g- _9 U0 B) G* P                        dwB = (DWORD)( pLight->Ambient.b * 255 );
2 p& r1 y& A% f+ \" c                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
, @! r- l' k" u, K$ E5 R                }% c; J- ~0 H+ O0 J6 e' t( Q
        }
* j  {- @+ g" K, b* Q+ c  u+ D9 K! B! O' K' b
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );2 g8 K# T" R: k+ z
        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) );
, A/ t, a# N& }9 w' ^6 O        ::SetLight( bLight );
9 }0 X' f7 A3 T
: l: X6 }  I- O: _- R3 o        // ±ao? ?D?í???ó á¤à? 0 G) M8 y" |9 x! I
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
1 I/ ~. k0 w  `2 d' C4 c% n       
5 k/ ^+ @8 R) s3 v  @#endif // not WORLDSERVER6 C! g9 U5 T( @7 T4 Q1 [
}
2 e9 L, P- A- p7 O' c* b3 a8 R0 T并更换% t) q: Q" @8 ]% S0 f& I4 k8 {
Code:8 T) D, t. i: Y6 C; x6 J, w" Q% p8 }; k
__FLYFF_INITPAGE_EXT
, g, C: x5 }% j: |& W- N定义' S2 n+ U! |+ ]7 F; l+ r" Y( t
8 L/ z6 d' W  L. H' O0 v- |7 Y
3 L  l) k+ E% t4 s

; {" M8 f$ q7 ?% G) f# u3 e; K$ k+ b/ H
现在终于删除我的狗屁加速...
& K  l+ ^- k% J6 }" `0 @
7 y( F  ], n$ a# L. ^) w6 o3 m: c
8 ~( A- ~% {2 d6 R





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