飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
- l7 `& U) Y) [, m; M4 E! m) W尾翼:: \! A3 ~. {6 C1 j' y+ W

+ ?" Z" g& P3 Q7 x代码:; \" O1 y8 u7 N
CWndAutoFood::CWndAutoFood()
; Q8 H9 @: m4 L: X. ]# B{
6 e; }4 R$ L% `9 p        m_pItemElem = NULL;5 q% J' m' V" M/ {3 d5 o, d
        m_pTexture = NULL;2 A* s+ P" p' [; ]
        bStart = FALSE;
# ^8 q# X3 y' K! z( G}
; E+ ^- W4 k5 p5 b. N. X( Z2 f  ~- ~  i, t# Z
CWndAutoFood::~CWndAutoFood()
* @: g& s, T9 C2 s4 b{
4 Q4 w2 W9 ~9 K! c1 o% D1 Q, Y0 M        AfxMessageBox( "AutoFood ist gestorben " );
. K; I+ G; @7 g# O}
. q) x9 U3 j6 U; `/ i, FBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )% l3 r/ B% A) G# X/ D: i9 F
{
+ I& K! J$ D3 p        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );4 f8 O2 m% C& v7 _$ c, w
}5 E8 W. p! A5 x3 G: E' t9 y$ s

  a9 r% @# a8 K+ o+ j3 ^* [5 ~BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
* X% K$ }1 n1 p- ]{
8 L% ~+ g7 l& L& l, H4 a; F. L. U        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );. q; r' {, Y; {- W; M' L6 B, ]" {
        CRect rect = pWndCtrl->rect;
3 [, R% v+ b1 Y! L( L) _        if( rect && rect.PtInRect( point ) )* X; |  f8 t1 |' H
        {3 A; c' q* @1 ]2 [* |: }
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
: e+ g1 u2 Y6 w$ W' G3 _7 b                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )3 E! E6 e0 a4 [' u  s$ H4 }
                {$ U3 m# _- C4 }) t# M
                        if( m_pItemElem )9 P2 i0 D) E; @
                        {
* w5 i" X! c: k                                m_pItemElem = NULL;6 f% L9 ^. @4 G* s8 z1 Q3 @
                        }+ _) Z/ g* M) ^& p1 m2 Y
                        m_pItemElem = pItemElem;. d( a3 h$ K/ H) X( m2 p8 n
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );6 u3 n, ]' g3 C' ~* E
                }else{
1 V: R  X6 j+ G' Y$ Q/ x                        SetForbid( TRUE );, ]# J+ t; d( D! ^6 y8 g
                }
2 O6 S$ Q( u" Q- D* b' ]. S        }else{; W- D6 x# ^; U- @
                SetForbid( TRUE );) [  A1 Y6 u% R6 j; k2 _+ o9 G: W, T
        }
: j( L9 T% R% Y6 p7 T        return TRUE;
3 S7 z+ e( H) \, ?& l" u! P# L* S}
0 \" R7 [0 @2 n% `/ V- H7 N' n$ [( Q) A+ y" {5 A. ?% ]
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
0 z. B1 m( G8 l) U% r1 F{
" o6 y" v. W* @% z- w: R- I# O        switch( nID )
0 V+ |# p; N) s$ Z5 i4 F        {# T; Y# c4 d: _( U, h" K
        case WIDC_BUTTON3:+ a9 E7 k3 `3 N; ^
                {
: @/ V" S+ p; `" A* S( @7 W8 Q                        bStart = TRUE;3 I; w% r8 p4 n, e' \
                        break;' D. g; D% |3 n0 D+ A
                }4 d4 Z3 W# J" u& j7 J) k, g
        case WIDC_BUTTON4:! o' h" g, m5 B! T3 ~
                {0 Q3 e4 ~# u% {3 k; J7 w/ ?4 X4 X  }) e
                        bStart = FALSE;- y6 x8 r" C6 e2 N" t& }* m
                        break;
0 A+ R- Z" r2 Z/ [                }- |3 G  ^5 w( ~- o5 s2 O! Q/ w' ?+ g
        }
" g: l. e7 @; R. b( z! ~% L        return CWndNeuz::OnChildNotify( message, nID, pLResult );
! d9 Y/ E% T0 }) T}        . U+ P+ u& F& ~* e; b5 z( S3 [
void CWndAutoFood::OnDraw( C2DRender* p2DRender )
$ _. w5 H* `) u{) E6 z$ H: {7 B; f8 s0 c0 M
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );& m7 e# t; G' W! c8 {& j8 |
        if( bStart || !m_pItemElem ), {6 `7 |1 p! R" O6 R9 n' t2 `1 r
        {9 Q0 v" q( [  t8 w! R
                pBtn->EnableWindow( FALSE );
+ _6 o+ ~" W; }4 n        }else
9 R* ~$ p/ I+ t' c9 M1 ~" g                pBtn->EnableWindow( TRUE );
1 L& `9 j$ j- ^/ _        if( m_pTexture )9 d5 C" _, D" P8 T+ V- U
        {
* v" D0 ~, t* ?                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );' }9 d7 D" R- H# n/ ~) [. R
                if( wndCtrl && wndCtrl->rect )- i! ]5 L7 o0 n- I- w* `
                {8 d0 [( r" @2 @) S' e: J9 S7 {
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );- q- }- i  X6 f" P$ O9 e
                }
! M! u6 @# n6 U        }7 d+ U* r0 a  G. W0 b. Y
}
& x8 x5 t: b3 P7 H+ I5 ~; |$ s( A6 o; X, d5 j
BOOL CWndAutoFood:rocess()3 |7 r% _+ U2 p% e, R
{0 ^! u& s7 q; u& s+ S4 H
        if( bStart )
, L" [; C0 I( Q' ]2 y        {' U9 B- i! S- k' ?1 {
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
1 P' w! Q4 J7 i# M  I                {
1 s0 b3 N0 Q% K+ n                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
0 Z) m# s: B6 Z, c2 N0 c2 Z                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
  G* f2 F7 e& b/ z* ^* L+ P                }else{
2 L* A/ s9 i8 }0 ^- U4 X/ t: ?                        bStart = FALSE;
1 i9 e" e, G; j                        m_pItemElem = NULL;' N7 r3 S% ]9 S0 o
                }( d: p$ G4 m* t
        }
* H% @7 U# p8 Y        return TRUE;4 X, @# v. k3 O5 B* d
}+ E) T, V# y: v: ]- W" A
2 G4 E" P% b! z" w& I* Y2 P4 S: ?5 w
登录视频废话:3 v7 H8 L; `$ i  L5 l4 a% F+ k$ ^
尾翼:
+ c# I: U4 K; S- L" l9 ]# d. L
2 [# n0 {( @! I代码:& R/ f. `6 o1 X; k" O1 B9 ^1 v

, i1 Y; o  t  G+ r) y( n) evoid CWorld::SetLight( BOOL bLight )- u- ?& @2 x7 ]' i0 @, X
durch$ e+ u7 s5 D! J
Code:
) d' D' ]$ u2 K; o" w) _void CWorld::SetLight( BOOL bLight )
+ b$ o- y3 M0 U+ b! W{) {; B0 D2 D* z1 Y4 O* ~; x
        //ACE("SetLight %d \n", bLight);. W! @9 G# B1 `: H
        : b* n! r+ D3 s. M3 B0 @
#ifndef  __WORLDSERVER
# M9 }9 \, p; ]7 D9 `: ^; W        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
3 ^7 p* R  `8 T8 t' D5 z        CLight* pLight = NULL;) U, V5 @, i1 T( ~5 I( G( p
! [( v4 e2 c: r6 |
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
/ Z  [* V* j9 ?' K0 ~+ j' C3 [3 c/ B$ c/ O$ c- d7 g
        pLight = GetLight( "direction" );/ N; n: T: W) z7 E+ T0 r
( J% o3 k7 ]7 |, j1 w
#if __VER >= 15 // __BS_CHANGING_ENVIR* T" W" B* ]. F* V
        if( g_pPlayer ){0 z; Y1 w- O+ R' S" Z: s6 n, W: F
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );3 H6 O2 ^0 w2 n; S* t9 J
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
+ f- L1 y* H0 o. c                {! B6 m; c1 W! {3 e2 g
                        if( pLight ): p' d; A8 b- C) v- k
                        {
" c. h6 _. v  ?7 ^- d8 L* W4 w' I+ b                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];& H; @$ W( H$ k) a8 s! T& f8 E% q
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
- L* \# n0 V* l' ~2 W1 r                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];) E6 y, y- W, b7 b/ E

& T. w5 g6 {! a+ R' M                                pLight->Specular.r = 2.0f;# M. N$ P4 N  u6 D  ?
                                pLight->Specular.g = 2.0f;. J: h$ O  L/ Z3 w* C' b
                                pLight->Specular.b = 2.0f;3 R; y) p0 a: G& l# |9 \
       
  r9 W3 d: K# {, o+ @4 E                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
8 N6 o* n# R7 Q, O! S                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
' b% T* i% F+ m9 ^3 N                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];$ v+ ^! _) H8 M9 n" T3 X
       
! L7 z" f$ M. \, w1 U) |0 a                                HookUpdateLight( pLight );
/ y' j2 H3 _* J  i9 E& M; [- X; U$ ^* d) Y
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );) [$ }- m$ a# l6 v3 O
                9 u! L; S9 q9 T# a2 O% B2 r
                                pLight->Diffuse.r *= 1.2f;9 v" \; y" s/ _  X! t) g! m- m
                                pLight->Diffuse.g *= 1.2f;
" ^1 X0 M2 s" D                                pLight->Diffuse.b *= 1.2f;
7 w: }0 K/ [/ ?0 ^! [4 {* Q9 m
3 v6 l, u' b5 W' N0 K; ?                                pLight->Ambient.r *= 0.8f;
) @: X3 f* r% |' S5 U/ E, y                                pLight->Ambient.g *= 0.8f;
1 a* v- N- D% l                                pLight->Ambient.b *= 0.8f;
! [1 r: D: i7 t2 }7 K2 v: g        $ G8 S, }% X5 r2 m
                                memcpy( &m_light, pLight, sizeof( m_light ) );
9 D! ]! E4 W. M  c9 H: L9 a0 ?* N: G! Y1 ]- Y9 C+ T
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);) y5 X+ H8 j, P' L# J5 R
                                D3DXVec3Normalize(&(vecSun),&(vecSun));- Q+ k3 V8 v) f/ ]( q" P
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 r4 \+ R1 S# R- P                                 pLight->Appear( m_pd3dDevice, TRUE );
9 J3 P9 b4 p. R' B# @2 ~+ @               
* i5 |& P7 s. B  k. s! O                                DWORD dwR, dwG, dwB;
1 B& X/ H4 q# b8 v/ ?                                dwR = (DWORD)( pLight->Ambient.r * 255 );
6 Y2 e0 |! O/ K                                dwG = (DWORD)( pLight->Ambient.g * 255 );/ ]3 ]/ j5 i6 I2 |
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
- `/ U3 Q1 V* U5 t7 k2 H                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );. |# @0 o8 E. ^* ^9 }. I3 H$ I# i! @$ H
                        }, s( b! g& v/ k7 _- F/ J
                }
$ q% F; G  k2 H! u6 a5 I        }* [7 k8 F. H3 u5 k" J7 h
        else
! Y, `  _7 N/ e! @#endif # }* g6 N/ }7 c% B7 m: P
: e3 A& @# ^0 `
        if( m_bIsIndoor )
3 X& u" M+ t5 }% ]9 l        {3 c5 e7 M1 Q. J. w7 e5 \9 E6 }
                if( pLight )9 `! @: U7 q, L! ~( x
                {                1 S4 h; X9 M6 ?: ]
                        // à??μ oˉè*
/ ?. u  s. Z8 z' D3 I' ^2 S                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;2 a7 P9 n" h' q9 [( P' z
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;6 g  |" L% `8 p" u" k. L
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
! X  _7 H+ i2 M) s2 l1 h. _  x1 x7 P
% w$ P8 r9 Y; ]1 A) ?( K                        // oˉè* ??à?
! D0 \% P6 h2 F+ @                        pLight->Specular.r = 1.0f;
8 R, n1 a5 [$ Y# G9 N2 |                        pLight->Specular.g = 1.0f;, m1 C  o# i* d' u( C- |) U
                        pLight->Specular.b = 1.0f;
) B5 j$ f: E( \6 Y3 _9 g, ]                        // àü?? oˉè*
! |5 p. N) T- {0 U7 |: O( Y* S                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;( }  Q, S# U, S% A  [
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;2 k6 P- z4 T3 F4 H
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;2 M9 ]2 j* S$ j1 Z! ?3 A

8 E3 @8 T6 J# p0 Y4 E                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??./ ?9 j9 y7 l* C# w3 f" t/ ^3 \
                        {
" Y2 k3 f+ V% H  A8 O* h* R7 V) U                                pLight->Diffuse.r *= 0.6f;  S* x1 I0 Z$ T+ G
                                pLight->Diffuse.g *= 0.6f;3 Z" p7 E+ `$ X: G$ b9 H& C8 t  ~* w
                                pLight->Diffuse.b *= 0.6f;
* n' X- p- ^" S9 x, ?! [, Q! r( k5 |                                pLight->Ambient.r *= 0.7f;$ R+ n- [1 A; y1 N
                                pLight->Ambient.g *= 0.7f;* d8 l  @' Y' J  P- u/ W4 h
                                pLight->Ambient.b *= 0.7f;
: z( [) U6 R2 |$ e' n2 h                        }
5 F! m7 b- r" r0 n7 _# p8 B. j8 J! [
#if __VER >= 15 // __BS_CHANGING_ENVIR5 W+ O1 ^( K4 M7 K* O* n
                        if( g_pPlayer )$ _$ E# c4 h. A4 H* ?
                                HookUpdateLight( pLight );9 G$ W+ V% b+ I1 V9 C: g
#endif
' {8 b& k5 W7 z5 V                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
2 l; }& n: y8 X5 [" r6 K  F+ b4 ]  W% W6 N' j/ J
                        pLight->Diffuse.r  += 0.1f;: d- I) G8 \' h& I( |
                        pLight->Diffuse.g  += 0.1f;
' d# g: P6 S9 v                        pLight->Diffuse.b  += 0.1f;2 @7 {7 H& e  y' t( n: H; J$ g& P
                        // oˉè* ??à? 5 U! T% [4 {. M1 m* ^. ~. T3 m
                        pLight->Specular.r = 2.0f;
: x+ ]: G# \- W( c: {$ i5 w9 \3 _+ Q                        pLight->Specular.g = 2.0f;+ T+ g  {% ]; V
                        pLight->Specular.b = 2.0f;
1 j- O" R* Z/ a& u8 X                        // á?oˉ + e# K3 S) b) y. `
                        pLight->Ambient.r  *= 0.9f;
2 f$ e- q/ E8 f3 o0 R. D: n0 C                        pLight->Ambient.g  *= 0.9f;7 w5 c; P6 y, |: o
                        pLight->Ambient.b  *= 0.9f;/ ~. u8 L% b1 }4 _& @* K

, `% r0 u  e9 E2 N; j( n; l) ]                        memcpy( &m_light, pLight, sizeof( m_light ) );
# N' {" Z/ @/ u( C9 o1 T9 x$ h) ?                        * J3 u* f6 Z- e) }1 y& M
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );, P2 k) h$ u! |) q; B: ?* h: z
                        pLight->Appear( m_pd3dDevice, TRUE );2 v& E4 A. V1 d  P% G, z
       
* V5 {; f  v* s8 _  v                        DWORD dwR, dwG, dwB;$ s* X# |& k$ o4 s+ D. r0 J
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
  _% g/ J6 d( C" V% i  o9 |                        dwG = (DWORD)( pLight->Ambient.g * 255 );5 J( s' W+ R' m  E5 l1 z
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
& F. \3 L. t0 O& W* h4 F) ]                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );/ h" O1 k) R+ n; n- n
                }0 g4 ]+ e* J6 }% J
        }! o% w5 S" i# e; |
        else
) p+ o5 }" s8 q( g- P  U2 g        {2 L, L: h! {/ w- n  n( k
                if( pLight )
5 h5 X( Y$ N; b' v2 L# |; l2 ^* M- Y0 j                {& R+ X0 `9 Y6 P9 K! F3 l9 }
                , e) f) t, ]- ^* m- W
                        int nHour = 8, nMin = 0;: i% m& `* A9 i7 y1 d3 n
        #ifdef __CLIENT" ]% H1 x+ T) F8 x1 f. _# q
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. / F1 J0 I0 s$ x9 w: ^
                        nHour = g_GameTimer.m_nHour;. X6 S2 x' x# j7 F7 B
                        nMin  = g_GameTimer.m_nMin ;
' a0 V( e6 X0 G6 e! _        #else
$ F- s0 H# S5 F                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
' r4 [6 L+ g) {: X0 h                        if( m_nLightType == 1 )/ J* ~  v! Q- {
                                nHour = m_nLightHour;* c7 ~% ?1 ]3 y' Z" k. l* D
        #endif
- c  D+ n7 Q) t9 [; U% {                        nHour--;  B1 A" e; G. i6 n8 X" t
                        if( nHour < 0 ) nHour = 0;- x! [# J' @+ w( R& h3 }# n
                        if( nHour > 23 ) nHour = 23;' Q1 |* f2 `: H1 z4 p
; b  h  R. D% A. t
                        //if( m_bFixedHour ); |1 R6 L- N% k/ D
                        //        nHour = m_nFixedHour, nMin = 0;1 p) i/ e; Y. y+ A
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
0 a5 T! s* C! |, g+ A1 t7 B                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
! }& L0 c9 p8 G" i! Q4 j3 ?4 U1 ~
/ k9 b- n1 U, z7 z- M2 s/ C                        //m_lightColor = lightColorPrv;
: [  F) S$ D* v                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;* ]2 ?2 I5 e7 c0 m% Z2 d# E
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
6 n# z+ x5 h8 c% y( k, {, R' R                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;8 {: h  Q' N! f; ^+ S/ t
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
, i5 G: \+ h' R( q8 n( ?+ I                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;, }# K. @7 U3 z0 I) K
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;/ g+ `* R% p- V3 V. S4 F- t+ }2 p
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)9 o8 W" B; j/ q7 @7 Z0 W. H

6 P( a5 {6 I% r! V4 [/ \2 x- S                        // à??μ oˉè* ' v; t0 g( X2 ]5 U9 w& N- z
                        pLight->Diffuse.r  = lightColorPrv.r1;
) O' s7 R; ^/ R. G& o( X5 p                        pLight->Diffuse.g  = lightColorPrv.g1;
. u4 ?: h  [+ t) @4 P1 s% X% t                        pLight->Diffuse.b  = lightColorPrv.b1;
! m* e4 o0 x/ Y                        // oˉè* ??à? 6 T$ P# c$ k, D
                        pLight->Specular.r = 1.0f;
  @* _1 T* G1 \                        pLight->Specular.g = 1.0f;
+ g, r# d" G0 D; B5 q                        pLight->Specular.b = 1.0f;1 j& P; B, r8 O: [& A- |* S& X, _
                        // àü?? oˉè*
: T' G7 [8 y5 m/ E" G                        pLight->Ambient.r  = lightColorPrv.r2;
. W6 h) J' R+ T# c8 M3 ~                        pLight->Ambient.g  = lightColorPrv.g2;' ?( d  l# h% y" h$ ?* I: ^
                        pLight->Ambient.b  = lightColorPrv.b2;! }7 L" b3 @& P
6 L2 u9 z6 A1 M1 S
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??." R) H1 f" U/ D5 ?+ l  c* B
                        {; D( C. E4 a9 w" B2 `0 J* s! f
                                pLight->Diffuse.r *= 0.6f;3 K( ?1 u: K3 K/ u. ~$ s# V
                                pLight->Diffuse.g *= 0.6f;; @9 S8 U9 t0 a3 x0 K
                                pLight->Diffuse.b *= 0.6f;
" g7 ]5 Q2 Q( o' V# q                                pLight->Ambient.r *= 0.7f;! \: b6 i% r. e& h
                                pLight->Ambient.g *= 0.7f;9 Z. g) y" Y. Y: }& t
                                pLight->Ambient.b *= 0.7f;- P3 W/ `. E9 u5 F
                        }
2 K$ P! ~1 B0 ?% m$ m                       
( @7 q3 h1 V. R# c6 g5 X$ Q9 [#if __VER >= 15 // __BS_CHANGING_ENVIR
6 I% k/ @+ x3 Y+ Q0 r& W9 i: E$ M+ e                        if( g_pPlayer )
" }) F3 y$ T7 m                                HookUpdateLight( pLight ); 0 ~- x) I2 ?. O6 _
#endif% J3 Y4 E# A0 n/ ~3 p8 ]
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );1 A' s- l, u; R$ F' s8 x

, a: l3 k' X& Q  b+ {2 C, K#ifdef __YENV
# L  T2 k, ]) p5 f3 F                        pLight->Diffuse.r  *= 1.1f;- c! W! }7 M: e- ~9 I8 @0 W
                        pLight->Diffuse.g  *= 1.1f;% |$ S4 s1 Z% S' n3 k
                        pLight->Diffuse.b  *= 1.1f;
7 X6 M# I+ g: e4 {  ^                        // oˉè* ??à?
+ H8 T" y( {7 s- Z1 g0 ]                        pLight->Specular.r = 2.0f;. i. x3 P' _, B+ j2 @! Y1 L' t$ |% o
                        pLight->Specular.g = 2.0f;. e; t! m) x/ e
                        pLight->Specular.b = 2.0f;
+ c; W% n& j5 b/ b                        // á?oˉ
1 `9 o% Q6 U! Z) A4 ~                        pLight->Ambient.r  *= 1.0f;, W" m1 z- H& n* T" f! y; U" f
                        pLight->Ambient.g  *= 1.0f;
: ^$ p6 N9 [9 f" G# c2 W                        pLight->Ambient.b  *= 1.0f;
+ ^8 a5 {1 y$ E1 m#else //__YENV
! e: X" J3 s7 Q% V0 R  W2 A* s0 j0 x                        pLight->Diffuse.r  *= 1.1f;: k6 Y6 v, Q! p6 v
                        pLight->Diffuse.g  *= 1.1f;" M' q0 S2 e- y* e; l
                        pLight->Diffuse.b  *= 1.1f;) D* l% Q7 l& X4 s# [% K0 m6 G* O& r
                        // oˉè* ??à?
: Q. k; \# G2 l; s- V' W" C) x/ S; F                        pLight->Specular.r = 2.0f;
+ u% Q8 O) l5 r* d+ n% `                        pLight->Specular.g = 2.0f;
; Z, t2 I, v" F) j2 P" j                        pLight->Specular.b = 2.0f;8 s* C. O4 _* K2 d4 S( E- M
                        // á?oˉ 9 |% m2 `6 K( |  g
                        pLight->Ambient.r  *= 0.9f;, f: w. N( M% k8 k
                        pLight->Ambient.g  *= 0.9f;
3 g4 E- v; ]% p                        pLight->Ambient.b  *= 0.9f;# F4 Y3 z7 A1 _. M0 g/ N
#endif //__YENV
3 _' [. [: \' B- I# X                        , P/ ^+ y3 p! v5 m
                        memcpy( &m_light, pLight, sizeof( m_light ) );
# M+ H; Z8 k# n: q! A3 m) |  b                       
4 J7 Y* W* g  D/ L3 d9 p                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);% ~, t  N6 X% D" L& N# E, P
                        D3DXMATRIX  matTemp;
1 Z2 r0 d/ H; S; V0 |1 j3 K                        static const float CONS_VAL = 3.1415926f / 180.f;3 i2 S* R. h: j# z& b$ C

+ `$ Z5 a7 o! n; \, a                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);6 f: Z- ~6 H9 P
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
8 Z, f8 B; a0 U* A5 w                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
1 @& B, l9 @: |" U                        pLight->Appear( m_pd3dDevice, TRUE );
3 r6 B7 @/ J, b% y/ J1 U" @  g/ O: [  O# A8 f' e# ^- v
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);0 N( f7 i$ R4 L$ `  j
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
7 j" I1 i% x0 {' L+ _" p                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 7 c1 S* A* U  p4 n% J% V9 I) c+ R

2 [/ R5 J8 z9 K2 T! [                        DWORD dwR, dwG, dwB;
# O% k  k; b7 L, u6 s5 F) G                        dwR = (DWORD)( pLight->Ambient.r * 255 );- G; C  B  K) z& g) z
                        dwG = (DWORD)( pLight->Ambient.g * 255 );6 S0 o+ R( a8 G3 x
                        dwB = (DWORD)( pLight->Ambient.b * 255 );' M  y1 ~# M; v& l0 f7 g/ f, Q/ r  ^
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                          ^' y- Q3 l1 E( @3 t& R. ^# y2 f
                }
4 K9 ^- O3 T. Z# [2 j- e0 d        }: i+ O3 Z7 b# c; H! {
) B% R8 N% d% D/ o1 V# s/ m% z
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
- i- o+ A) ?. D( I8 i# P        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) );2 l2 `$ }2 m1 g# R, B! S8 S' ~
        ::SetLight( bLight );/ k9 ~% x8 Q5 ]/ P! c) m- s! O
6 L7 C- g" R8 v
        // ±ao? ?D?í???ó á¤à?
& [9 c! ^  n" d- L) S# P. U        m_pd3dDevice->SetMaterial( &m_baseMaterial );
7 c+ d3 N* R) I" C- E( c       
* }" _' `* @5 q; {, k8 y% w#endif // not WORLDSERVER8 a% U! M' R- `$ S# C  l
}3 o( [! m/ o6 G8 _7 N2 x6 }& o
并更换; _6 O+ u1 x: Z' v# Z2 g
Code:
9 k' S" S5 R% X: x" W2 V__FLYFF_INITPAGE_EXT5 c. i. u2 z7 o$ R, ^+ F; e
定义0 P/ W& X9 }- N5 c' l; d% `
6 H. ]5 B* x# S$ R4 s- c
9 @* @6 X. ]" o6 c
% K3 f' W9 n7 h3 X1 _' m- \

4 j! C6 B. v9 {3 Y: V现在终于删除我的狗屁加速...8 N+ D+ L5 f( J' M% E6 j$ D

% c; D& Z9 j8 [% E) D2 z
0 w' U1 t/ Z& L, v* |/ [' P5 V7 K- h3 y' j+ n2 x





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