飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
7 {/ K5 w! i, z/ E0 e4 F尾翼:$ d* F. Z0 D5 m/ {! ]: m9 `% C

2 X$ X9 G7 B1 h9 ~+ t2 t# u6 M代码:
4 p6 t+ ~- T% _/ iCWndAutoFood::CWndAutoFood()4 Q/ U& u- H; l% v
{
: o8 W( a4 \, t; g8 d% x9 x3 z6 Y        m_pItemElem = NULL;
: y' t" f7 d' O) S        m_pTexture = NULL;
8 p7 h& s0 k7 [  ?" M- ^2 l        bStart = FALSE;
" V9 e2 Y+ U$ k  h}0 _- ~/ W$ K! M$ D+ Q
. e* a8 s; }4 y# |$ \3 I  a$ o
CWndAutoFood::~CWndAutoFood()" d* K1 D' y- a& `+ a0 M4 q
{
7 K4 f- `+ C* P- u( \- v# }0 \) Q5 b        AfxMessageBox( "AutoFood ist gestorben " );7 U+ i3 D, l) P' q
}
) k6 l- y% z; R" m/ Z$ ]) w6 ~' z3 Q8 EBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
5 h8 l- _  S+ k  c: u{5 |: i1 n$ M" @& V* E4 P
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );/ M) I7 M3 m& F$ u
}* U8 e: y6 y$ X' v

; t# k  x: v7 V. y7 [BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )4 k8 {; R5 M$ _$ t5 h' ]" Q
{
; T) C* e; L* Y1 t( g) n        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
* x4 H7 b6 F2 y. |* E) R; @- ?        CRect rect = pWndCtrl->rect;, o3 R5 b, ], F7 \0 C
        if( rect && rect.PtInRect( point ) )
% l- d1 I& L6 p. m& \) q! }        {
" [6 a8 o( Y0 l: A- C                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );! `' n! {: i. L
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
$ f" S& v: f. I( M# X3 J! ^                {9 V6 Z8 W/ N) g' ^
                        if( m_pItemElem )$ U* T# [% q' ]% b  B0 v/ W
                        {8 p. J' `4 t9 d7 c8 [" k0 e
                                m_pItemElem = NULL;1 M" r$ }" F% y6 c" ^; l
                        }$ F5 o/ W8 Z2 L. l
                        m_pItemElem = pItemElem;
) M; _* l1 |4 p1 \0 F" Q. F                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
& X4 H& d2 U/ A- E0 n                }else{6 F$ G, ?3 E6 g) H& j  h
                        SetForbid( TRUE );' U* f) B' K- g4 ?5 y3 M/ A
                }" U2 R: w9 p+ C
        }else{
9 s/ k# k. a# W2 f! ~: L% S8 K                SetForbid( TRUE );& y7 e$ E) a+ \
        }$ W9 M! I0 j& h3 X, l
        return TRUE;  _4 o$ d! H( ]+ u
}
1 U# L! L- f6 s0 I& R4 l2 ]# R7 X8 z; ~4 q
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
1 d# g  ^9 Z6 L: u0 ]4 Q7 x{
7 K: P+ v# w5 v5 Y( \        switch( nID )6 w1 w1 b7 m. @( g9 s
        {
" Q4 b6 C! T3 o* f; [5 q5 d        case WIDC_BUTTON3:- d4 \5 P( m5 p6 _7 t# ^
                {
1 X4 Z4 }6 m. _' q                        bStart = TRUE;+ j5 }2 c$ }! W8 }9 i0 y2 r/ J
                        break;+ @7 h/ d$ x' l
                }
( c: r# W' S5 S! T        case WIDC_BUTTON4:; T  [" y! X7 s/ k1 |/ T8 M5 e' M
                {& m/ ?/ E2 G  A9 t& {
                        bStart = FALSE;
: H5 |! X1 H% Q                        break;' l/ }$ ]7 j5 T) @! S% H6 \) S
                }7 [9 _. t6 J. V9 O# }9 [0 M
        }
4 C$ P2 y3 U. O7 |5 R        return CWndNeuz::OnChildNotify( message, nID, pLResult );  Y  ]6 c7 U( U
}       
; g7 I6 G# r! W; m$ v$ y/ Zvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )3 \0 A! }3 g' `6 K3 l
{
, C. S/ Z5 n6 b2 w" {* @) F% U$ r) X- y        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );+ n1 o; q; |) Z/ j" i' K
        if( bStart || !m_pItemElem )
! W6 W) o6 X0 Q* X- |        {
, j; c, o" H: C                pBtn->EnableWindow( FALSE );
8 }/ m- }. q( ~% G0 o/ n        }else$ E* M% V" O3 y5 x
                pBtn->EnableWindow( TRUE );
2 V. p* q& R: v6 e0 k+ f3 L        if( m_pTexture )' @- s3 x9 \) @  Q) p$ x- k( w
        {
3 ^0 S7 X5 |$ G2 ~/ q* w) Q                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );  S" y) D1 h& r4 H8 O6 P
                if( wndCtrl && wndCtrl->rect )
' l3 P) {4 v. P$ i" M                {7 U/ B! d9 B6 p/ w5 [, @
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );/ n  k+ z8 C! q5 u+ R
                }
" b; C7 Z$ v! t        }
6 W* [; m, @; }& d}
: F. n4 y% t. E; W
& s; r. Y7 E; K4 g' _. h& QBOOL CWndAutoFood:rocess()! P! k* T& A- ]
{
* T( n  N- q" W( d        if( bStart )/ G; O4 L2 a  [) F1 \- O
        {: t7 {; }. _9 ]; C- S2 z& W
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )! U; r" o% }' B# K2 s5 H% a
                {
, G8 ^1 `  L4 t8 O                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )5 B# l# _9 h8 ]) T8 v7 p
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );4 _# P  B7 e$ ~# m2 U* W$ @
                }else{) n& m9 `1 g& c
                        bStart = FALSE;
" ~. s, ?3 G) W4 p                        m_pItemElem = NULL;6 u; F4 |! ?' G# f
                }
5 ~5 J% H5 |: B        }/ [) V5 z7 _7 J& K; j& y4 |
        return TRUE;' m+ I6 ]/ W* t2 i$ O" R% f
}: K- B! e$ K/ ^5 T
" R1 R+ q, v6 G8 O5 X; C
登录视频废话:
0 Y/ j! X9 k6 p: }  X. l尾翼:
% T% C+ c5 U: h+ h3 n0 X6 h' Y/ @8 v" v* J2 {) X8 d
代码:
  y  Z% _- D. g6 U% O7 \. m1 K' u. O# A3 v4 X. X6 W2 p- w
void CWorld::SetLight( BOOL bLight )9 e+ K; Q2 a  X4 B1 a
durch
. J  n1 l6 {  G# _Code:
# S" u. X$ B# ]5 J6 u) O$ _void CWorld::SetLight( BOOL bLight )  ~* a( f0 c) \0 x6 ?
{( ?, K' C. X& g. r& z
        //ACE("SetLight %d \n", bLight);6 U4 Q) R' \& k8 n
        % E, R' ^2 B8 L9 u( k4 j, u+ e' k
#ifndef  __WORLDSERVER
( j5 s: n9 U* s$ a8 s& Y; E        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);' y; [7 t% O1 J5 H; p
        CLight* pLight = NULL;0 S6 h5 E2 }5 Q$ w

$ d6 Z2 u, l0 x$ _* P- t+ M. P; }* N" D* H        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );6 ~* o! y' P3 v* d5 _( s
- @8 G7 r; r/ X4 P
        pLight = GetLight( "direction" );$ }# r+ l/ f" X* V/ V1 w0 u. I
$ w8 G9 ]* ]9 I/ y; Z
#if __VER >= 15 // __BS_CHANGING_ENVIR
! R4 i% D* x9 B& ?! [' a4 |        if( g_pPlayer ){% a( o9 }$ s1 M$ H: b
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
$ V2 \' \9 y- x3 h+ I! I# G8 G# f                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
  `0 A$ X4 o& O. {* }2 ^                {1 }6 c7 [0 x$ l, C
                        if( pLight )4 a9 n9 O" D3 K6 Q
                        {& B7 V3 @- v: `% p1 h/ Q# ~
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];9 \5 `2 e8 n% m
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
; Q6 f5 ?' i" x% }# m" p                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
; B/ o& w7 |/ y# m. e5 \: J3 _4 A! r0 u$ Y2 w% H. P
                                pLight->Specular.r = 2.0f;2 t# p# s4 g& s5 a
                                pLight->Specular.g = 2.0f;
6 s, `: G3 z. U1 V0 `                                pLight->Specular.b = 2.0f;, l, E$ C! P0 W: h& M- _  O
        ) B! t( q  i: R! o1 Q% i4 R
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
( E9 {4 d$ P  W# q+ }$ s  e; P                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];7 ~3 f! }) K5 m
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];$ i( I  U/ ^2 w) t/ y
       
5 }, I  m3 K  i/ R                                HookUpdateLight( pLight );
) d  w) _! x* F1 g  k: |2 a+ H% a) U/ c/ H3 T: ?" W' Y
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 B/ P0 g4 A; j# k" v                " n, v% v7 d& d2 A* {3 B: V
                                pLight->Diffuse.r *= 1.2f;6 v2 F& t* o: Q, d# x) @* q
                                pLight->Diffuse.g *= 1.2f;! D4 V) {  w) E- x
                                pLight->Diffuse.b *= 1.2f;
$ r+ t2 b0 B' U' T/ L4 u9 }5 p9 X( c; Y& _5 J
                                pLight->Ambient.r *= 0.8f;
& Z2 r, Z$ I- U                                pLight->Ambient.g *= 0.8f;5 ~( R' F8 h" B( O* p
                                pLight->Ambient.b *= 0.8f;! H8 o( P; A+ j; \" y
       
0 a% D- W* ^+ f. Y3 A: O                                memcpy( &m_light, pLight, sizeof( m_light ) );
+ z- G1 s. V* X  u! ?
( F1 \/ D1 [" e* I5 g/ Q                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);. ~; O" H% l/ n; b- k! i# |
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
0 U4 N2 z6 {) i                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); - ~) n5 L( i) t' M) S5 K
                                pLight->Appear( m_pd3dDevice, TRUE );# j1 V/ Q0 d3 s7 L- Y
                ) W* }3 X$ m- Y: B* B$ W$ `; d8 R
                                DWORD dwR, dwG, dwB;) ?: r/ v9 R& F( q8 f$ ~5 u% \
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
& \. F) T2 Y( A4 O" O' q3 I                                dwG = (DWORD)( pLight->Ambient.g * 255 );4 v0 ]- k: G0 \/ j
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
- o# a) d  y) Q) a+ H' x                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );" v9 A! g$ O6 o1 ?* G* H4 `
                        }
0 M( E6 v! b& i: e9 x) m- D                }" X7 Y8 S" \! m5 X+ A% x4 _6 ^9 g# ?
        }9 i: E- k8 K; |9 C, y- K$ S5 X
        else
8 O+ \' U& B+ O1 D! W. X#endif 2 m: n7 D) X8 A( _& M9 [2 j

! @$ y0 w1 }+ P+ r* u% B5 {" {/ |* K; Y0 o        if( m_bIsIndoor )
7 e" j7 ?8 D7 N$ p. p4 T4 x% k3 n        {
6 J- Z' |, k- p. l' x. Z                if( pLight )
: w) U* w/ b3 A2 ^1 K6 ^                {                % E  e2 a; K+ j9 q7 c/ m
                        // à??μ oˉè* 2 j& G# `' ?! V! a5 p" q" f
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;/ Y) J: {1 x9 \2 z7 S6 d& H
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;- v8 n: l" z" z/ F- ]9 _
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
+ ]" c) q; s! G6 k$ b- {. I5 i: c1 ?$ d" O( x2 [
                        // oˉè* ??à? 9 q# \6 S- {1 S8 }: `5 w- S
                        pLight->Specular.r = 1.0f;
) G4 ?  F' N1 Q! h! F                        pLight->Specular.g = 1.0f;1 o# h  N4 `/ _3 V- R- v
                        pLight->Specular.b = 1.0f;
0 ~; V/ t# c; P1 K- ?                        // àü?? oˉè*
) b# V* A( v" e                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
% C- M% d+ j) v4 j                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;% b5 b% J) z# X8 _- F3 m# I7 o
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
$ S% V, F& g* ?5 L5 Q
$ ~# S) V! n' k6 o2 w                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.+ ]) l4 M, f, T( ]) R3 e; m# [
                        {# S6 `, d8 _0 c+ Z; r; `
                                pLight->Diffuse.r *= 0.6f;
1 V, y5 I% \9 O# w                                pLight->Diffuse.g *= 0.6f;
; D$ Z# I5 X  D! E( W  d2 M                                pLight->Diffuse.b *= 0.6f;1 h* U  k% u8 ?! f$ o9 ?8 a
                                pLight->Ambient.r *= 0.7f;
+ m2 Y' k, D5 m, D, \, U: I                                pLight->Ambient.g *= 0.7f;0 f) {% A& D5 B4 e
                                pLight->Ambient.b *= 0.7f;1 o% f; x- H; O5 ~+ p
                        }
4 L5 L: @; o# D' L4 i* d8 m) u7 p" Q1 m" l/ B/ h
#if __VER >= 15 // __BS_CHANGING_ENVIR
" \# L7 b: S$ E; K                        if( g_pPlayer )% d! j) |# s6 R( k' D$ v, X
                                HookUpdateLight( pLight );0 _  _* V0 t: c2 A% F& ^1 `
#endif
- F  L5 ]% {# N' @                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 P. [; {* M; ~! `2 K2 e
7 g( m. @0 ]+ j8 v+ S9 f                        pLight->Diffuse.r  += 0.1f;4 I) W3 c: Y, E9 V# C1 `
                        pLight->Diffuse.g  += 0.1f;" }% k- K3 @+ e5 }' q, i
                        pLight->Diffuse.b  += 0.1f;  h4 v" D+ {3 [1 {$ K
                        // oˉè* ??à?
$ A/ o% R9 b. \+ L( r5 M6 C                        pLight->Specular.r = 2.0f;6 }0 Z) |5 B, ^( U
                        pLight->Specular.g = 2.0f;, i5 i) }. c' n1 r2 u' i
                        pLight->Specular.b = 2.0f;
- J0 o5 c2 s* T5 Z3 B                        // á?oˉ
! l; Q9 x* ?7 F1 h( j* _                        pLight->Ambient.r  *= 0.9f;8 `2 p" ]' T& m$ A# O
                        pLight->Ambient.g  *= 0.9f;
( o; J: h' ?& Q1 P8 ^% u+ w                        pLight->Ambient.b  *= 0.9f;9 z# T& N. W7 [. M

. d# [9 i' T3 E. U                        memcpy( &m_light, pLight, sizeof( m_light ) );
" q- t7 s7 J7 G0 H: P* \& M                        6 i1 D1 @% z/ l( ?" j
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
1 o1 F$ M5 q" [% c. [. `* M) L                        pLight->Appear( m_pd3dDevice, TRUE );" L$ \& a0 i% s3 ^! P9 Q
       
1 b6 N# H2 |9 V9 A- [4 `                        DWORD dwR, dwG, dwB;
8 g7 i% m0 o7 R) }, A                        dwR = (DWORD)( pLight->Ambient.r * 255 );1 }- y7 J% B" B. M  c3 g8 B7 A
                        dwG = (DWORD)( pLight->Ambient.g * 255 );. o( U6 N/ m5 g) }7 f! z$ w# s5 \
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
- D( ^8 l9 M1 X, |+ S  V9 R; L# n                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
) D) t2 d# z+ i% q5 E; s                }
4 ]# L- r' G/ M        }
; v6 `  V$ F4 r# v# f+ ]/ e* A        else
/ L( S5 U& ^) Q* a6 b8 Z        {
0 p9 j7 B  J" S- F6 ]' y                if( pLight )& W, E2 P+ q4 {8 ]
                {
, U. E* F8 j. Y8 T( F                5 b/ o1 W1 k3 U# I# F9 P
                        int nHour = 8, nMin = 0;
7 a0 Y4 ?0 ?0 U# L6 M        #ifdef __CLIENT# }( a3 N1 U3 m' T4 j/ Q+ X! X* G
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
7 Y; |. N- ]& ]8 R/ L                        nHour = g_GameTimer.m_nHour;; M1 V; [7 l3 F, v) \
                        nMin  = g_GameTimer.m_nMin ;
! n, C4 X1 u0 i. R" D- L7 ~        #else
/ v9 C- E  k6 v/ G; K                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.; q# v# O' h, A3 Z0 E
                        if( m_nLightType == 1 )  X+ c/ z/ g: d: O7 y
                                nHour = m_nLightHour;
& w7 e. I5 F9 H3 H" j  u/ N' g        #endif# c% a5 B; k1 |
                        nHour--;1 B1 f3 P7 X3 i3 @9 G* E9 y5 O
                        if( nHour < 0 ) nHour = 0;
  p4 d$ E. g: P) G1 Y  ~! E                        if( nHour > 23 ) nHour = 23;+ \  d& k6 G' x' C  _: w
% n% {2 \; _5 q. }
                        //if( m_bFixedHour )" O: I, n; A1 D9 {
                        //        nHour = m_nFixedHour, nMin = 0;+ q2 c+ k0 h0 b- p. B9 P
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];! P  l8 @* U- {% l6 z
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];+ M' C6 m! `( w2 i, X7 {
0 j% g8 T3 f* y, G1 ?2 Y
                        //m_lightColor = lightColorPrv;
; Y3 ?! g3 h! l( V* k, ^6 X                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;) k/ O( h, C: M* e; N
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
& n/ b1 h! j7 W7 c/ x                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
1 o, X+ d) y# R9 Z% i0 G                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;1 b- R' `: |9 Z/ S6 j" L- e
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;) w. n" G' N- r: P7 H. t& L- P
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
5 R8 T/ J, X! i0 h; V6 ?0 w; \& k) _                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)% l, Z2 T5 E. d$ M8 f. @

2 X  `; q0 b% g1 K' }. e. r' ?' Q                        // à??μ oˉè*   `0 }1 O8 T% g& u# K
                        pLight->Diffuse.r  = lightColorPrv.r1;
1 A5 }# w3 I  U- m                        pLight->Diffuse.g  = lightColorPrv.g1;) C" m/ U5 Y) `# k9 q, h
                        pLight->Diffuse.b  = lightColorPrv.b1;. k& e$ O* r- {$ T
                        // oˉè* ??à? ; \- y! i! k; _
                        pLight->Specular.r = 1.0f;& T" E; |. v6 H: s
                        pLight->Specular.g = 1.0f;' |! K: k  M4 X; |; l
                        pLight->Specular.b = 1.0f;
1 g; \6 h6 |* d; K$ h  N, v  M                        // àü?? oˉè*
5 z7 m) @7 ]1 K+ F1 g8 Y                        pLight->Ambient.r  = lightColorPrv.r2;
9 P- g) p! `: P                        pLight->Ambient.g  = lightColorPrv.g2;0 ~9 w* t/ V. P+ x6 ]- Z: q6 S
                        pLight->Ambient.b  = lightColorPrv.b2;2 X9 c; ?, U% o' s5 H3 y

; k5 B" u, Q3 w                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 A' w! B; b$ V) }7 s5 R, n1 ?; S                        {
" U' G5 m3 t# K, ?                                pLight->Diffuse.r *= 0.6f;7 }0 m8 {' B# P
                                pLight->Diffuse.g *= 0.6f;
1 U& d! _5 F- x  u                                pLight->Diffuse.b *= 0.6f;( K4 S' j% W; A0 |8 }; Y
                                pLight->Ambient.r *= 0.7f;
; S# R. |, d- }/ o4 _1 c                                pLight->Ambient.g *= 0.7f;5 U9 f& F6 }3 j2 J, N
                                pLight->Ambient.b *= 0.7f;
4 X4 G3 Q0 ?: c4 O# e% E                        }
' G7 D: ~1 e9 e! n, m5 \0 z                        " P, `$ [) h# n4 _6 j6 P
#if __VER >= 15 // __BS_CHANGING_ENVIR
  D5 t# J! Y3 K8 l% e$ G                        if( g_pPlayer )
4 f) ^) y& d! {                                HookUpdateLight( pLight ); 7 ^  t/ l4 x: n
#endif
* ]/ @, q& {3 q6 K5 j1 z9 ]                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) z5 @0 J: ?2 H3 q/ ]* J* D+ }2 Q+ b+ ?, \6 Y2 F% W( P) ]! Z
#ifdef __YENV
& \& H" n- q! R$ |! x                        pLight->Diffuse.r  *= 1.1f;
, P# e; b2 x% t  r* D1 V                        pLight->Diffuse.g  *= 1.1f;. V6 ~8 H/ |, R6 r) o
                        pLight->Diffuse.b  *= 1.1f;
) O6 S( c0 A, D( Q$ }3 O                        // oˉè* ??à? / _/ ^2 H. A3 w: N# ~: C
                        pLight->Specular.r = 2.0f;
8 ^1 t% {2 n3 n; W; T- N( S                        pLight->Specular.g = 2.0f;
  E/ J: p8 c4 @& I' n1 \                        pLight->Specular.b = 2.0f;
$ `: V  ]4 `5 {2 H, z$ x0 B0 K                        // á?oˉ * t$ l/ @& b; A( \0 L6 i
                        pLight->Ambient.r  *= 1.0f;
- t* }3 U; ~' Z+ f- M  S5 Q& }                        pLight->Ambient.g  *= 1.0f;
0 k$ R) c3 @) T' I% Y1 o3 x, z                        pLight->Ambient.b  *= 1.0f;
: l: t% @) L& r8 ], ]  J#else //__YENV3 _! K" D# h/ u& ?
                        pLight->Diffuse.r  *= 1.1f;5 P9 @4 n1 w5 d* E
                        pLight->Diffuse.g  *= 1.1f;
1 l/ [! m& e! u7 n- o. V                        pLight->Diffuse.b  *= 1.1f;
/ l& P% E, l8 g% k1 {                        // oˉè* ??à? 3 G* l% r. L9 `/ o' F) p
                        pLight->Specular.r = 2.0f;- }2 L7 r5 M: m0 K4 @4 ?
                        pLight->Specular.g = 2.0f;
8 d4 w! B8 n0 T0 s                        pLight->Specular.b = 2.0f;: x4 R/ m' j5 d
                        // á?oˉ # }$ L  O2 w+ i- a2 _. F
                        pLight->Ambient.r  *= 0.9f;
# D0 M) Z  l7 e* O  R                        pLight->Ambient.g  *= 0.9f;
* l9 s5 R% }, E                        pLight->Ambient.b  *= 0.9f;0 W) z( ~; r8 x% C$ j
#endif //__YENV ( g% S4 L# V. K( V, G& ]
                       
5 X+ B0 ~3 X% @                        memcpy( &m_light, pLight, sizeof( m_light ) );
3 j% T, f" H/ j. Z3 B2 n+ ]                       
( o# @0 x! P# r9 h                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
9 [0 ^5 x& a/ c1 @4 n) S! h                        D3DXMATRIX  matTemp;9 X% w: `- m- v( g$ Q& i; |) s
                        static const float CONS_VAL = 3.1415926f / 180.f;% l8 }/ x5 S, V, E! m. m8 a
" y9 W$ h& g& D! m
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
- _- B7 y9 E/ N7 N6 V7 D                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
' q: k& }8 Q; l1 i6 m                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
# K$ _' L5 j, x' v7 v                        pLight->Appear( m_pd3dDevice, TRUE );. e  C, M/ n$ l! W+ g: ~

9 Z! x: }- v% X0 u4 n: I0 ]$ i+ L                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);7 _7 S4 b6 d: F5 s! B* ~
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));$ [' \5 k9 W) l* C
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
0 [* u  D6 v- D4 r2 J. n) u# K# l% Q/ Q- u
                        DWORD dwR, dwG, dwB;/ e7 }# l0 L: x
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
% h: I- K2 Y( ^4 Q                        dwG = (DWORD)( pLight->Ambient.g * 255 );
. A4 u6 V+ a: W# x+ X" c                        dwB = (DWORD)( pLight->Ambient.b * 255 );0 ?3 {: Z! I5 w% h# k  C
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        6 ~" U4 V) v* w2 G6 x
                }
+ }- t# {3 u- @0 s" j6 H        }
- e' m+ {- {/ _% g- W9 i6 t* k' w% {4 N! u
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );) N9 ^2 O. F, e$ V; b1 \
        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) );
# T) U2 p7 a8 b  c; O        ::SetLight( bLight );7 h8 v8 Z. V, z' G: m! _# q
% y7 `( a- Q8 I1 H5 o
        // ±ao? ?D?í???ó á¤à? 9 y& o; ]& w) }3 A2 a
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
" E0 S, H* k( _; m' D       
6 G6 L! k. y- x* Z2 }#endif // not WORLDSERVER/ q0 j  t, N/ F- a$ N
}# c( b4 a: J7 g, a
并更换* d3 D7 b+ B+ ]! Y! B5 r
Code:
  U7 L0 H" ?3 n0 d9 L__FLYFF_INITPAGE_EXT
, [9 G, s3 ]/ |% _, |# R5 d定义
' ^6 [6 d$ B; {% _! m+ l5 u: S% }* X6 _1 a" g: n

! f. n7 Q. d" D
3 y) M/ V+ |: O( F0 k. @4 T  ]/ e. ], M  W) @+ l  a
现在终于删除我的狗屁加速...& t( T* R" }. k

, d4 |8 Y. E  _1 V. Z5 I
' j' e7 j  j: R: V
- y5 E! S( O, l( g5 [) T5 G




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