飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
3 E% F/ G; d3 D( u9 |/ _6 q尾翼:) e* y+ z$ T; N$ r
* Y( p' u4 L5 E
代码:
) r5 T* u: l$ |/ GCWndAutoFood::CWndAutoFood()
1 o: P0 d& O# u' L{' h2 u" p" A1 _2 p" @
        m_pItemElem = NULL;
5 N& l4 Y6 k; x4 E. i$ F        m_pTexture = NULL;0 ?* }6 S- y( q# c5 d7 l; \" H
        bStart = FALSE;
! ?6 k# u8 K  N2 b}2 u! A( @% |. H; i* ?3 L9 l5 M
$ p$ B, d8 S7 x1 d+ v  T
CWndAutoFood::~CWndAutoFood()1 G, u+ e/ \% y! |! L8 Q' g4 y5 p
{0 b4 {- y9 k8 s8 d% m4 [3 G7 [
        AfxMessageBox( "AutoFood ist gestorben " );/ y! E# k' o  n# |
}. x. A9 X' J2 Q  I% I
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
; H" [* _6 ~7 H! Z* O* v4 U" h/ h{# w- W3 u9 `+ K$ B
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
$ c& t8 ]7 K/ W8 U& f}
2 E' ]* U$ [( i7 P) j3 ?3 n: U" o+ N' U3 J% L& A6 `# w: T5 g
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
9 J) F& {6 X/ w! \( [{% V: |7 ?0 R) ^3 g/ l! E
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );% J$ e6 \  N  Q& P4 Q3 }* c
        CRect rect = pWndCtrl->rect;
+ B: g% i. A. w: t. W        if( rect && rect.PtInRect( point ) )
' Q. i( V2 W( V6 _7 |( n# H6 V        {+ {9 k. x  k  \  L
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
5 h, Q3 B1 y5 v1 B  F                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )( z6 |5 W9 t  R& C& F( R
                {* [! S% O* u  W7 o2 j3 h
                        if( m_pItemElem )/ T/ _, ^' C. _, Z; A5 i
                        {
8 s& k- M/ M' h: l                                m_pItemElem = NULL;# N2 m5 ?* u4 f; a- Z* s8 M" [
                        }
9 W/ p4 @7 M) }# E% r  {' q                        m_pItemElem = pItemElem;  @+ Z3 @9 {; ~
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
) |- n' d! |9 }- O* T8 U                }else{9 w+ Z' |8 ^! p# l. I5 V# n
                        SetForbid( TRUE );# r5 k! Y1 P, i* T
                }9 {0 Y1 r3 V/ X  S2 L8 a
        }else{
" L, N% a( q( S$ U5 c3 {                SetForbid( TRUE );: A$ l0 c! ]- j2 v) q, m! T
        }' Y0 `. W7 K0 _6 P/ A( _, f
        return TRUE;8 g. @7 d" \: {& P
}  V/ P8 d; A! D7 w$ H5 D" M; K

; ^5 O+ I8 W$ J  _  U. IBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult ), I: ?6 f, J& a1 {5 ?* B
{# V1 }. W8 y( s$ q  e
        switch( nID )
- D. A) I  C3 ^; y! j; b+ V        {* e  P& c- l! M6 J: l+ O( d
        case WIDC_BUTTON3:
, Y4 O  n8 s" ~                {
0 [$ Z9 u9 G) X4 z6 i: I                        bStart = TRUE;
8 {3 C: O0 h; z3 z8 Y" i                        break;
- L. y! i! s' `$ t- o1 x                }6 M- A% X2 q9 B
        case WIDC_BUTTON4:& z& H- e  d: m9 ?, P
                {
9 |) m% `, H& b9 P5 o- W                        bStart = FALSE;; E/ O# j! c7 \# ?- Y. ^9 j$ m) C
                        break;7 k: D" X9 y- F9 B2 @' S1 M3 [
                }
! J0 W5 ^# T* L) X        }
- p; x# E. H: R5 T& _6 c+ {        return CWndNeuz::OnChildNotify( message, nID, pLResult );8 C: K  \" m( t' o( a
}       
" S4 U- D% [3 i1 Gvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
$ D: J% z( N2 u# E- V* G" f2 {, `{0 j- a0 d  ^2 M* q1 g
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
. {# c& y1 b. {- D        if( bStart || !m_pItemElem )
2 ?  ~& T; e1 |        {8 `+ Z. c' W. |1 A# J% e' u" {
                pBtn->EnableWindow( FALSE );+ ^4 e7 [' `0 C1 z
        }else, k+ z8 X8 `6 B* W* c
                pBtn->EnableWindow( TRUE );
6 V& G7 v- A; n9 r        if( m_pTexture )
, Y6 D  t1 ~5 V+ c! I        {, f1 H" b$ B' D2 A
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" I( ]/ g) n. N" C$ ?2 ^. A2 e7 v                if( wndCtrl && wndCtrl->rect )
( H) c6 t+ ]4 x& W. Y                {7 S) v" S! u( q
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
* O. u4 G5 r- u, i  _' u# P7 F/ K                }7 U  t9 h. x& G. h9 j- p
        }
0 q, p$ O4 k9 n, J" K}- x3 p5 K; `" Q1 J9 O  K

: i; q  N$ A1 y7 vBOOL CWndAutoFood:rocess()
3 d9 _" }% q! [* H$ r+ L' B{
) |$ L- K. u" ]! _0 x* }# H        if( bStart )/ i. X0 j. w  @  F- B
        {
# D) N+ X# Q- C+ W                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )5 j8 |, u& z" j! K
                {* ^. C) R! ?6 ^4 {9 S2 X$ v
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )( \$ V4 d* s9 H, u$ B- y6 ?
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
) E! x, H$ y3 R5 N# J! A& `                }else{& x; Z2 A$ [; Q
                        bStart = FALSE;' \& C8 ^, O0 j6 r: g+ y
                        m_pItemElem = NULL;
  n, F) z/ [& x6 F                }
; }  p. S2 f0 k        }
8 R) ?" J' K9 h7 Z7 f% D        return TRUE;" D7 o2 _5 s1 @) [8 g
}* P* `: i4 i& B# B& f0 [  @2 ?
/ ?6 u: Y' P- j1 w) K3 ^
登录视频废话:4 B  |5 p/ y3 G8 ^+ e; U
尾翼:! x4 @8 M: \4 M- Z! {

1 I. l6 `5 X( j7 D( F5 Z+ l2 V代码:5 o; ~! u. h) o: D) ]
2 g' ?5 r2 {$ t* l# ?- z
void CWorld::SetLight( BOOL bLight )" L2 u5 q( P- n4 b4 k& a
durch
% {; X! A" E1 s1 MCode:
( r7 T* K5 W$ J* ?9 A4 S0 R3 O! T! _void CWorld::SetLight( BOOL bLight )8 v" V. t2 i5 I- i  T9 H, _
{
) B, S8 f0 [" I        //ACE("SetLight %d \n", bLight);" ^' ]+ Y% x$ F4 Z# w
        ) [4 ]. i' U( E# m! }" n  Z6 I
#ifndef  __WORLDSERVER
+ P1 V9 c/ M# j( Y        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);& w1 y7 @; N" {6 z
        CLight* pLight = NULL;
" L1 @7 y# h8 b1 u: t! K5 H0 T  F  i0 H  s% _
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
: m- \+ w8 P& f2 w- y, V  T/ T
. ~  T' L+ O- U: U; F) r        pLight = GetLight( "direction" );
1 g' I( {  F) f7 a0 H' z  M: V: E' c0 C; X7 ?( W! D8 R
#if __VER >= 15 // __BS_CHANGING_ENVIR1 x( w7 w$ b; b- L0 Z) {2 \
        if( g_pPlayer ){
2 L7 w7 u, [# ^  J% ^% k                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
' I- V4 h. l5 F1 t3 G                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
7 E+ e& w6 S, }" _                {
2 V- Q1 x. W1 `3 ^8 {) u' c                        if( pLight )
% ?/ E( W' O! Q$ ~# v1 C                        {
) n6 t8 O) S8 s3 R1 M                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];% O& c; r" G/ P! C' e
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
. W* k) K8 F0 J$ I  W7 T                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
' Y7 S3 g* ?! J% B3 S7 m3 l, U5 b7 E$ c
                                pLight->Specular.r = 2.0f;) ^  [$ b% b6 j' X
                                pLight->Specular.g = 2.0f;9 a) l; v% U. [, h; }% m/ \
                                pLight->Specular.b = 2.0f;( x) h8 ?$ G! t- q+ K5 ?: z' y6 `
        ! Q6 H; k( {3 O* v+ X. |
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];6 e& u' u6 m4 r* H0 q  ~4 E! o! s# J. b
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
8 b* J4 j; _5 ]* P7 Q% E3 e  o                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];: {/ b, r* w7 q0 b* ~2 h8 z0 Y
        . g% X1 j3 |7 U1 U: }
                                HookUpdateLight( pLight );
3 F8 Z7 ]; R- V+ W! j
  g2 H. d& j2 d                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
0 g% v+ L+ a9 ~' W; C$ Y7 f                # h; V$ L: e; G+ k/ q
                                pLight->Diffuse.r *= 1.2f;7 k8 I& X# e% z% R  S
                                pLight->Diffuse.g *= 1.2f;7 l6 D: W* G+ w# I
                                pLight->Diffuse.b *= 1.2f;  v7 M0 @% F7 k0 F5 r( z$ S8 M8 E
7 @. @& [# P6 {9 ?
                                pLight->Ambient.r *= 0.8f;; x- f! l3 T6 {4 r& k
                                pLight->Ambient.g *= 0.8f;" ]2 g5 u" Z; P3 j$ H) ^
                                pLight->Ambient.b *= 0.8f;
$ P" ~# }5 a2 t          q0 I. {! r7 r* R5 a
                                memcpy( &m_light, pLight, sizeof( m_light ) );& E1 _# d/ O6 `: @( H4 v) T5 J
/ Q( v/ r0 O3 m' o! A
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);$ E1 e6 D! r2 G- g/ {
                                D3DXVec3Normalize(&(vecSun),&(vecSun));" @- e, y" R7 B3 e& {+ p/ @6 a
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 W: Y% P( c# U, Q; f4 ?; F! c                                 pLight->Appear( m_pd3dDevice, TRUE );. C. R; Q( ^6 B6 ]
                  M5 c$ W# f1 V  _+ m
                                DWORD dwR, dwG, dwB;
3 J% n8 s( l5 ^- I  p0 B! N                                dwR = (DWORD)( pLight->Ambient.r * 255 );* d' O# R- d9 _8 a" d% q/ \
                                dwG = (DWORD)( pLight->Ambient.g * 255 );/ N# W/ p; ]4 _6 S, c) l
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
% f. q4 q7 ]3 u6 D  v' }                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );- {% m3 W8 I6 e5 h1 ~# {
                        }# p- s" T2 B4 [/ t0 |4 h
                }
+ J+ r" K' T* ^1 N: O        }8 q/ A  j8 i9 c- h2 `+ {* m) ^0 B, p+ g
        else/ Y  W" ~* `3 |
#endif % w+ ]! v5 j* x/ s2 o) m7 F/ V

& P% q4 ~" ~& m; T( _9 B& v% _7 @        if( m_bIsIndoor )+ o  U* P8 w5 d3 |
        {
) {1 Q) C( W% i% k  U' a" E8 e. x  o/ m                if( pLight )
* u; j/ s5 g1 y6 h' E2 N3 ]. x8 Y                {                & e$ F) K$ d0 L- d0 n
                        // à??μ oˉè* & q2 x# {9 F2 }3 w" L5 r
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
$ p! G2 f( F, ?0 i                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
6 A  f, @! k* K& ^1 o; o                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
/ |2 @1 B) H+ F- v, h  q+ l, l/ s0 u( ?0 t- R0 t8 r8 y* M
                        // oˉè* ??à?
* x0 e- P3 S5 J                        pLight->Specular.r = 1.0f;
+ c  R8 Z) D) d9 r& e3 ~                        pLight->Specular.g = 1.0f;
1 |% P* \- X7 H# \$ z6 [                        pLight->Specular.b = 1.0f;% }2 p5 h: ~2 r3 ~- C1 p% [' k
                        // àü?? oˉè*
/ i) h3 D% R8 g3 \+ u: {: }. Y                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;1 p( E& e4 k! `& \6 n1 v
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
* U- D' ?: c4 G# k8 w% J, K+ s, b( i                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;  v. Y4 ]7 }4 v# R, C% B4 q- z

8 C# K: E) q# n5 I4 C                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
7 @0 o6 l1 u' a+ |2 W1 U. \                        {  S9 q/ P3 M* P* s. A- ?
                                pLight->Diffuse.r *= 0.6f;
" g! `8 s8 I; g2 Z$ \                                pLight->Diffuse.g *= 0.6f;/ |( {3 Z8 W: S
                                pLight->Diffuse.b *= 0.6f;
# J4 z$ ?/ C$ s9 {9 w                                pLight->Ambient.r *= 0.7f;6 E2 J8 |, n0 P* U' r
                                pLight->Ambient.g *= 0.7f;
# e* o0 u' F( f: ~  L% [                                pLight->Ambient.b *= 0.7f;
: e2 C: _5 R7 f7 [% c4 ]# h                        }
# H6 s2 e  N( M! B, ]7 ]3 ?& I$ S. }. `/ ~% {. [' D
#if __VER >= 15 // __BS_CHANGING_ENVIR
# H; b$ M6 y3 v( l) o( F                        if( g_pPlayer )
$ ?! I4 f2 U+ u. Q: |# l) E                                HookUpdateLight( pLight );
, _) Q3 W0 x: o& q#endif
: M7 O$ P  W. y" Z( i2 i                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );1 H+ j! H5 ?* _0 w
# ?9 e4 o. R6 F+ X" G
                        pLight->Diffuse.r  += 0.1f;( n. T6 `" Y/ E' R- w- i, L
                        pLight->Diffuse.g  += 0.1f;8 e6 X7 A3 {* g( H/ ~, t. v  q5 `
                        pLight->Diffuse.b  += 0.1f;8 D" E8 d( v  w
                        // oˉè* ??à? . b/ L4 V9 f3 t' u2 R
                        pLight->Specular.r = 2.0f;
) o( A! c" y! r) H' t8 t. g                        pLight->Specular.g = 2.0f;( Z5 i% _$ a* k
                        pLight->Specular.b = 2.0f;
# q9 @* Q0 y* D* H7 }# M                        // á?oˉ
0 P: v2 @0 A; H  D+ |                        pLight->Ambient.r  *= 0.9f;5 @: y+ H/ i( j+ ?3 a' w4 \" b
                        pLight->Ambient.g  *= 0.9f;) i* X+ A# c: e. l) _# b. h
                        pLight->Ambient.b  *= 0.9f;
4 q3 g; o  V" ~: d1 J! A
- W! |' J; x2 J; T                        memcpy( &m_light, pLight, sizeof( m_light ) );# R: M) E& k3 G$ G9 p; u* I& H
                        . H& f4 q2 b& p  \* a. j) p% s9 B' S
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
" u4 H% h$ \; l4 s- P! v7 f/ {) }6 a9 s                        pLight->Appear( m_pd3dDevice, TRUE );. p5 e8 o  G, u- m) K
       
5 I' X6 S0 D3 e- `) @                        DWORD dwR, dwG, dwB;7 }2 f0 p+ K1 h! d- R( Y3 G' I
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
. b4 I! ^2 x# O% }+ t- h. D                        dwG = (DWORD)( pLight->Ambient.g * 255 );
" ]" o0 Q0 S3 e" I  ^! w                        dwB = (DWORD)( pLight->Ambient.b * 255 );9 c' O) n; U: t! `3 d
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );$ z# |* f1 f0 o0 k: k
                }( t- k( ?$ y( B, R
        }
. w8 B- g% d/ s' o) _% b        else
4 t: `, u8 z2 J) l! B        {+ B, B9 s6 j$ Y! Y. t( F! I! Z
                if( pLight )
: r; Z! m' \- \: D  I6 M$ {                {, z1 {6 e; r1 K: s4 c
                : T, B7 i5 K2 ?" k; j* m* f
                        int nHour = 8, nMin = 0;% P: S/ t+ ~) i% x
        #ifdef __CLIENT
/ A. B( r% i1 P; y. ~                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. ' D3 v4 K' A: f6 |' R2 W
                        nHour = g_GameTimer.m_nHour;
# t' k7 m  k3 R; |                        nMin  = g_GameTimer.m_nMin ;
+ E( r$ r" _! N4 z        #else" z$ U2 K9 z2 [: i5 y
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.. S5 Y+ F5 X& N; q
                        if( m_nLightType == 1 )
, a0 Q! x) R% m8 U6 g+ ?' c7 P1 G& b                                nHour = m_nLightHour;
3 y/ m' {  B3 R6 x2 t) }6 U        #endif
5 b7 c, Y& C6 ^0 v" ^" ^$ T                        nHour--;9 V, A4 i8 s" o6 R0 F
                        if( nHour < 0 ) nHour = 0;; F( a4 d. ~2 D/ b$ q( u. a" {) d
                        if( nHour > 23 ) nHour = 23;
  y* R5 g% @! ^: o  C8 p) J0 n# ~0 `8 V0 K
                        //if( m_bFixedHour )
% t1 m" B0 w: I+ w0 e, [                        //        nHour = m_nFixedHour, nMin = 0;: s; Z3 _8 w& k- {* C' F
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];6 {  b( g7 t; U8 j8 W, M
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];* _) l, O% [/ a
9 E: T" P9 P7 b$ K+ b5 P  @6 B$ A
                        //m_lightColor = lightColorPrv;
6 M3 n5 M* B$ g$ F- ~                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
8 S0 T8 {7 ^& {6 C0 O                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
8 ]( Y( L2 a: y1 m* x, _# G                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
+ {  g' t# F* A3 b                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;- |$ ]( Q6 n5 G  ]3 p! y3 b
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
7 P' W$ U; \/ J% h4 N- G/ m                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;8 w, f/ n' n( p  \& g
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)& F# L0 _3 D' c9 H6 L' e( u
) F( R0 z! P/ Q* M0 H: i
                        // à??μ oˉè*
' v4 u( l3 {2 U: i# ~                        pLight->Diffuse.r  = lightColorPrv.r1;5 q1 Y# k7 r8 U" w. J
                        pLight->Diffuse.g  = lightColorPrv.g1;/ }+ x! H+ \( `3 `/ E/ u2 x
                        pLight->Diffuse.b  = lightColorPrv.b1;# _! c, v. ]& W. v7 |
                        // oˉè* ??à?
5 B  O; u+ U! {8 z- ]5 R) f                        pLight->Specular.r = 1.0f;
, w5 a5 E- T* k2 Z3 D$ }                        pLight->Specular.g = 1.0f;
  H! `1 M$ a' N: P6 z                        pLight->Specular.b = 1.0f;
, U; o4 o/ |2 ^5 Q                        // àü?? oˉè*
% F, i6 @0 g# C1 g, c9 W- G; x3 O- b                        pLight->Ambient.r  = lightColorPrv.r2;
0 s2 t' L: E5 A! h) `                        pLight->Ambient.g  = lightColorPrv.g2;1 `8 H* \% b" W! o7 V2 |
                        pLight->Ambient.b  = lightColorPrv.b2;
) B9 I* c$ z$ t5 B! y8 y
; O3 y, m- O* S' [2 z                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.7 ~% J$ o1 T) Z/ ^7 L
                        {) ^0 M4 Z( x2 }$ Z
                                pLight->Diffuse.r *= 0.6f;
( ^& u* s3 N( I! Z+ `                                pLight->Diffuse.g *= 0.6f;% }% q0 R5 ]  n6 o- `; e
                                pLight->Diffuse.b *= 0.6f;
1 b" H1 M% R' ~# T! W1 x' e2 H                                pLight->Ambient.r *= 0.7f;
0 C5 N6 C6 e; c8 ?5 K! I+ r                                pLight->Ambient.g *= 0.7f;
1 W1 f# S1 _5 U3 X' S                                pLight->Ambient.b *= 0.7f;  [  ?$ Z7 s, _. k4 g6 _
                        }; b# y& {; i* [. A9 i( k& b% o- }
                       
) I% a! x" x, ^) k- v* _, d# `#if __VER >= 15 // __BS_CHANGING_ENVIR6 B: Z; G# B, h) X
                        if( g_pPlayer )- B# k2 J5 D1 v! B$ X( D
                                HookUpdateLight( pLight );
" c- K3 B( ^5 B9 p! j# k#endif
2 Q, h" a  t3 \( t4 n                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
/ C6 I- R! W* i' C. D0 ^$ p8 ]4 s: i4 N5 N0 y
#ifdef __YENV9 r; D1 k4 p& O. k
                        pLight->Diffuse.r  *= 1.1f;
5 H/ f4 _- ^$ s                        pLight->Diffuse.g  *= 1.1f;
5 m; }: I& K$ R& g8 P1 W                        pLight->Diffuse.b  *= 1.1f;2 z. H7 \- T  l- k
                        // oˉè* ??à? $ A2 q& R5 U4 X' V& O- G* j: A
                        pLight->Specular.r = 2.0f;2 ^9 }3 D8 O+ Z, u9 B( W& X
                        pLight->Specular.g = 2.0f;
# F0 y! J9 d$ A! p6 S- v: w5 b                        pLight->Specular.b = 2.0f;" R/ w! r! e% X6 W7 L3 k# G
                        // á?oˉ 3 l# e- z) `) Y+ _8 P6 A) f. A
                        pLight->Ambient.r  *= 1.0f;
9 ^4 f  D7 {: O* l7 t                        pLight->Ambient.g  *= 1.0f;
6 I3 C3 r3 a1 D                        pLight->Ambient.b  *= 1.0f;
; c% J, c* q$ k( L#else //__YENV! {% @$ Z" x/ e; }/ l
                        pLight->Diffuse.r  *= 1.1f;, Q6 v; o7 V' L
                        pLight->Diffuse.g  *= 1.1f;3 N2 o* A- v4 B
                        pLight->Diffuse.b  *= 1.1f;) @1 u) d1 k. i# B7 k9 v
                        // oˉè* ??à?
+ Q' B+ i& v6 P2 k. u; B" B                        pLight->Specular.r = 2.0f;6 J# U5 e$ K" v( p0 ~. O7 e8 m8 M$ c
                        pLight->Specular.g = 2.0f;
. F! B% M# J6 I, w( M9 T8 ^* o                        pLight->Specular.b = 2.0f;# Q" q7 v; {7 p* U3 l
                        // á?oˉ
5 U/ B* c/ Q* x. [                        pLight->Ambient.r  *= 0.9f;& H$ r  Y+ w# ^- s: O4 t
                        pLight->Ambient.g  *= 0.9f;& Q) _- Y+ G( Q% W5 f
                        pLight->Ambient.b  *= 0.9f;
$ r* x) e8 u2 U3 o6 L#endif //__YENV
, j9 o) K9 q! I; k                       
" {( N/ _  B) m                        memcpy( &m_light, pLight, sizeof( m_light ) );5 r) Y+ f1 v5 Z1 G+ F7 t8 q6 D
                        ) W' k2 n3 K! V: c4 D: {
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);" g! Z+ z& u+ W+ C( m
                        D3DXMATRIX  matTemp;7 T8 S$ A  x1 o$ }
                        static const float CONS_VAL = 3.1415926f / 180.f;
- ^3 n% ]* k5 U. W, o  d
0 }) q+ |% t6 H                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);# t3 U- Z# `$ v/ J' L8 a
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
" r0 Q; @1 I+ a% q5 R! z$ O. S                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
9 U) |0 R6 ^- r  Z4 P& r; W                        pLight->Appear( m_pd3dDevice, TRUE );
  s, b4 W/ K7 L1 V, y
7 T& ~4 {& p" J1 [+ d                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);6 q7 Y6 A' F& v' m
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
- B* H" }& k- k3 `3 c                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); + G' {  ?( O1 Y0 \
. h6 x6 B. Y" l9 c! }) Q' d; G
                        DWORD dwR, dwG, dwB;
" Y5 _2 ^# ~. c6 Z                        dwR = (DWORD)( pLight->Ambient.r * 255 );
6 e% j- l4 ~9 ]# Y                        dwG = (DWORD)( pLight->Ambient.g * 255 );
% M$ G1 a' f" u4 W                        dwB = (DWORD)( pLight->Ambient.b * 255 );% `  o) O) w  g0 ~7 @7 f2 A
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        . F( E+ P/ T# }1 s
                }6 d0 m8 {' k6 x5 Y
        }5 J! g( w8 ?, a2 z/ L' y& F

, C0 ], o& n/ x4 P        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
+ V8 X3 s3 {( y        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 s9 j9 K, i# e% N' U        ::SetLight( bLight );
5 o, U. ~) p2 w' Q9 ]+ J9 s+ B7 s2 |
        // ±ao? ?D?í???ó á¤à?
8 G# I- |! y6 q- i. k# X        m_pd3dDevice->SetMaterial( &m_baseMaterial );* T  {1 ]! ?. Y8 F! `
        / _/ o# p- z8 b# X
#endif // not WORLDSERVER
. C4 y% H( r4 j+ k* A1 A, a' F}
; p* J0 I  i. L" X$ v8 F1 ]并更换3 i% o" N% F& N/ B- }
Code:
# t" C2 Z% X( h  d# H__FLYFF_INITPAGE_EXT' J0 I% Z2 r' L: J5 w' l' h
定义8 [/ H+ ~: S$ M& D, p' ]2 l

% ^: ]2 ?  p' g) V& `: L* i/ J) z5 b( c; i

; L; ^) T- X* Y( i5 M4 N- b3 ~0 c! G) H
现在终于删除我的狗屁加速...1 @9 ~3 M) W$ w, D, f+ A

& R/ M% b  c9 d2 i& Q" k, p4 G0 O9 O5 C5 N
& f' V  O# t- \+ u: {" Y' W





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