飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:3 h7 p2 @( y" S" B; _
尾翼:
* S9 ~0 ]# O9 h! z. e! E  [/ S$ `# `# q9 `. m8 g
代码:
5 X; E; l& _, ?7 e3 U7 NCWndAutoFood::CWndAutoFood()
' P( |9 o, L+ j5 }( a{
+ W$ M2 J0 J* Y7 K4 ^  t        m_pItemElem = NULL;2 _! Y1 n9 S5 t0 g3 Q& l
        m_pTexture = NULL;
4 ?# G7 P0 C! D7 D5 R3 V/ K* O        bStart = FALSE;
2 Q+ s) _& b- S: W* O; g+ i}
5 [5 G- b" d  w
5 Y5 K9 D% Z. c  v  T2 \CWndAutoFood::~CWndAutoFood()( x1 Y1 B3 i) @. I2 Y
{
7 u* e4 p' M: K- s! c% V        AfxMessageBox( "AutoFood ist gestorben " );
6 e$ z# ^3 j: }! F$ u* f}
; _5 Z9 p8 o& nBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
' R2 s' ]3 ~  v0 b* }6 z2 y3 A{# m/ ?% F' E3 _, K
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );9 s" l/ i+ y6 j) [1 `0 y! N
}. ~+ b# @/ C: z- I
( r" W. ?, m% o3 s# l
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point ). B6 N1 d" U, y3 r' P2 _
{; M. K( y* M. d8 g& I7 L' i9 C+ ~
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
0 b7 [! f( k. S1 x& M0 H8 ]' @- \        CRect rect = pWndCtrl->rect;5 N, {) \+ @1 a1 J
        if( rect && rect.PtInRect( point ) )
# y* d, m) A2 p" N* b) T6 `        {0 |  }, P; y% T  y& t3 D
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );" a( j; _* y* M) s' r0 z8 A% G
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )% s7 h* }: G/ a
                {! h% Q( J6 S+ e& p' ^/ R
                        if( m_pItemElem )
% a: \: E+ i, {                        {$ M* O3 ^; ?& G  c0 c% h9 v& z; c
                                m_pItemElem = NULL;+ X8 [8 s0 a% A, G& B
                        }
8 _$ z. Y" @( A! Q& K7 Y                        m_pItemElem = pItemElem;
3 C8 o, N' E2 C% ~, }                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );5 L7 y. V) {. @9 k
                }else{3 H  D% g$ B$ e1 h0 ?" @0 {
                        SetForbid( TRUE );3 E  h, E( Q# I* Q$ H8 c% O4 n
                }
& \. r+ T' H9 K4 D        }else{
/ @% c. v' w- Y8 B( c+ c6 w$ u                SetForbid( TRUE );
  \8 ?: h$ @8 p        }# }' ~( y+ s- G+ l# {4 H
        return TRUE;- j" ]  a  f! q  }2 ^
}
9 j, _1 Q4 x4 U6 W
( i3 Z* ?% f0 S2 ~; A- pBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult ): d/ s, }' ^( r3 N' E
{
% [+ Y' d0 {+ {; R. f4 N        switch( nID )% P6 |" A; W2 P  H
        {; W* G6 T# B: M+ Q4 Q
        case WIDC_BUTTON3:
  b0 k1 [( S4 j& m. Z- r) g, p- \) f                {
" W+ q2 A7 F3 D# E                        bStart = TRUE;
3 D' y( R! m9 \( h8 F                        break;" |5 k8 r# J! Y2 _
                }, b! e* R, P5 H7 B) e% O( A
        case WIDC_BUTTON4:+ L; t5 R0 h0 s2 q* j- h9 U
                {
' y' q; d& S: |0 y                        bStart = FALSE;! o# i/ D9 L- e$ {
                        break;
( t3 I( s! Y: I+ B                }0 V  X/ u7 L4 C  m6 t
        }9 A# p9 a5 i: K# Q! u, X
        return CWndNeuz::OnChildNotify( message, nID, pLResult );" W3 U9 ~2 \$ Q5 C+ H+ a
}        ; a! c8 u7 Z8 g8 Y& I
void CWndAutoFood::OnDraw( C2DRender* p2DRender )9 y3 {; v5 S+ v5 j
{+ U" W5 K' [+ s% [
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );# d- j0 B/ S) S; T
        if( bStart || !m_pItemElem )
# h% x5 H6 x' r- K, q        {
5 y# J3 `% Y5 ~8 ~                pBtn->EnableWindow( FALSE );7 u+ W6 \& F8 G/ k2 ]" [: ]$ Q
        }else
3 N: T/ `5 x: P+ I0 I& T9 X! S                pBtn->EnableWindow( TRUE );
0 X: Y8 K: D: a; r        if( m_pTexture )' R2 [; ^+ X$ z- J! f( e3 A5 E
        {
* e* C) @! U. c# h8 c4 V) R: T                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );- h/ S7 f# `) G6 J2 K7 s
                if( wndCtrl && wndCtrl->rect )
) s1 F% {# g* W# O                {+ X$ K% a; t% n& f& c
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );# O; G6 f( U& y5 C4 Q
                }/ v. u! G' P. ]6 c( M4 g
        }
# P, ~4 p- }: t+ u6 _: f}# ^" s5 _+ T5 d( e5 N

3 y$ M1 q6 y/ N5 p1 RBOOL CWndAutoFood:rocess()9 T6 t, i. L6 [- N
{
/ ~7 V6 A* B, T0 ^3 U+ c/ Q; m        if( bStart )7 a) z0 n% z. R* x7 A3 U9 V4 }  T" i
        {
# E" P  r8 g4 L; @& p6 m, N* V$ g                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 ). b" a) E8 u5 N3 @+ L
                {
+ R& k0 |6 X3 r) F& ^8 }2 c                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )" P  F7 r" A; Q, m! g
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
& ?/ t0 ~0 b. J) \/ C                }else{
7 `1 |1 x' m0 [# O9 q- |                        bStart = FALSE;
( f7 ]' @" Z7 l; r/ b* j* T                        m_pItemElem = NULL;
" r1 l  N4 x/ G0 q                }" t6 Y7 k9 D1 @+ h; ]# p' {
        }7 x3 w4 D+ B2 t# b4 r5 g0 Y* ?
        return TRUE;8 W- [! k. Q: ^2 s* h
}
- B  k2 L; u( d. R- V: m0 o5 Q5 |+ ^8 w: B0 A) v
登录视频废话:3 E# g4 @$ j, y9 M
尾翼:
7 z) ]9 B. k2 j$ g3 S
) O8 G8 _- _5 R5 R$ k5 [7 O& B1 u代码:
( L5 X  ?1 K" E6 Z7 W
0 k0 W3 z  L" V" P& I# Gvoid CWorld::SetLight( BOOL bLight )
5 s( j9 Z( ]0 b. A* a2 ~$ b" Idurch; u8 p4 A( W: P: p
Code:
$ ]' O& e4 Y# R! O% e9 _void CWorld::SetLight( BOOL bLight )+ ?+ n; J5 C: W2 @
{
  T3 y0 S" K% w        //ACE("SetLight %d \n", bLight);
- ^8 F4 r, M$ h7 c3 a; l        - k0 k- j& [9 ^( T
#ifndef  __WORLDSERVER $ Z& ?* h( h% C$ C6 H" R7 c
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);. T5 F* `: M! ~) f  g$ E9 B+ t' Z
        CLight* pLight = NULL;
: G2 X4 [3 J( r) D4 x3 H9 Z0 A' A+ m
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
' V; n& ~& B* {& P% v: H8 V3 L# @, {: ?
        pLight = GetLight( "direction" );
+ f; I: i# h: ~, z/ a
' j& N  L# W* ]. }#if __VER >= 15 // __BS_CHANGING_ENVIR
3 @& L4 Y+ }( n5 x1 Q        if( g_pPlayer ){
# N8 x% ]3 H) t2 c1 l7 M                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
. n& A! r; [$ [; M; r- g                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!5 X7 b- e: S: W8 F' c2 y2 {
                {
1 `, B# B7 t7 ]5 E  k; n/ \8 W) C# M                        if( pLight )" N0 B4 r3 x  b4 q. U5 D$ V
                        {8 b1 @  q4 W" {! [
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
8 C9 S! c, m7 S" Q6 M$ F8 c# T                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];1 y/ `; J# t* ^
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
1 Q3 u6 F/ D2 F% H6 K+ y
( e7 {0 v0 C6 Q; L0 e( Y                                pLight->Specular.r = 2.0f;
1 ?9 t3 x% O  t% t5 m+ b! U                                pLight->Specular.g = 2.0f;) C' X' |# H" F& Y# f! a- x7 R( J8 W
                                pLight->Specular.b = 2.0f;2 b( f, U) V$ r: l- w& l6 _6 ~
       
6 g% i* L, G$ F2 O; a  @: d- d                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];! e- X0 `8 j1 }6 ^0 E
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
) ^' k) J/ ^' }4 _: R0 P                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
, I! q/ G' r* T2 S; p        # {0 |" P% P( L  [; _
                                HookUpdateLight( pLight );
. _! [0 X) m3 J  [+ n5 v# L. B7 {8 H9 a5 U+ I
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
" w) I& P+ T! I2 b- P* c5 t- n                & w% Z" E; g) _$ }' p7 W
                                pLight->Diffuse.r *= 1.2f;0 p) [- z4 k' P& s1 y
                                pLight->Diffuse.g *= 1.2f;
( P0 n$ s! k+ Q8 r7 s                                pLight->Diffuse.b *= 1.2f;
0 Q7 f1 O$ D& A: M2 y0 {! M9 `, d* D* r% y4 W1 s* v
                                pLight->Ambient.r *= 0.8f;4 t/ t' N9 a7 ~6 [
                                pLight->Ambient.g *= 0.8f;% o0 l- f: O' f* k4 y$ p$ h
                                pLight->Ambient.b *= 0.8f;: ~* h7 _' u$ ?0 X- N
       
/ a. g4 v) j% Q5 O5 Z                                memcpy( &m_light, pLight, sizeof( m_light ) );
9 K9 |4 I. ]4 I  q# e3 h  b9 m! a- A+ M) C; n( ~
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);8 E, b- ?7 X# x. g4 x
                                D3DXVec3Normalize(&(vecSun),&(vecSun));. W' m6 ?9 J. |5 x. ^
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); + Y4 X  ^* U0 l# D' ~3 B8 a9 _
                                pLight->Appear( m_pd3dDevice, TRUE );
- |% e0 r6 ?# U7 ?- `                6 M3 t  L+ O% {4 U, H( }" F! Y# S
                                DWORD dwR, dwG, dwB;1 P, A! B4 V( D& c$ d( w
                                dwR = (DWORD)( pLight->Ambient.r * 255 );$ O4 O* a1 e' X( E/ E( v7 ~
                                dwG = (DWORD)( pLight->Ambient.g * 255 );1 i0 [2 A6 [" A! K3 Q+ f
                                dwB = (DWORD)( pLight->Ambient.b * 255 );" S6 r: T1 [( n- i; Y7 `
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' {; e3 y3 W6 R# H3 d, V( f2 B                        }
: w& G. }4 |/ k0 A( r                }
. K3 ^$ d, J: ?, x+ s        }
) a$ v( l0 q' I5 a9 A+ r        else
/ q7 P( I, b+ M, V: j& t#endif
+ Z2 W' u( T) U, R
! D. ^( O; h# r) ^        if( m_bIsIndoor )- m2 F! G' W3 F5 @: O1 K8 ]
        {
/ @3 R7 O/ P" Q                if( pLight )4 D6 K  }# ]4 N8 v9 m  R. \
                {                2 r3 w8 P2 s' p# e$ Y1 f* O7 M
                        // à??μ oˉè*
* X3 Y% k' b; l                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;8 a# }, m3 \5 C* u: R, Q4 M+ b( g
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;5 p* C& n3 U9 y( a
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
, b: J8 A9 T/ u+ P# ~9 @, ^/ J0 X8 k- _/ [2 k: ^! P* p; y
                        // oˉè* ??à? + H& L- C9 ^% F- ]
                        pLight->Specular.r = 1.0f;" m3 f) b1 s/ z' w
                        pLight->Specular.g = 1.0f;
. E$ B) x/ n# ^( O5 o) r- I! G7 A- E                        pLight->Specular.b = 1.0f;
2 B4 g7 ]0 N3 ^* |) W; h) Z                        // àü?? oˉè*
/ \3 C8 E: h5 G                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
- x) [" h6 r' H' g5 ~" ?7 K9 C5 p                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;+ u5 a$ l% \! C; l
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;. C% {4 G. S/ o- t% |4 ]
2 B; l* H1 F  V- C8 V/ G$ w
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
9 o) S7 }8 b: e8 j9 E                        {
; F9 |" L8 ?9 u: ^                                pLight->Diffuse.r *= 0.6f;
) `" l8 b( v' y$ F; [) C5 q                                pLight->Diffuse.g *= 0.6f;
# x" w0 k' X! n0 s- C                                pLight->Diffuse.b *= 0.6f;7 c. V: J: N! M$ z* G% A
                                pLight->Ambient.r *= 0.7f;
: m$ k  p4 ~* I/ v" c$ K+ v                                pLight->Ambient.g *= 0.7f;5 a# K: E; a' \# I, Q1 m/ m7 u$ P
                                pLight->Ambient.b *= 0.7f;
% S% v) X$ j% L. G                        }( K: }6 s1 w3 j3 [" V) Z3 V
) L5 Z: R- @  I# f. F- j4 h
#if __VER >= 15 // __BS_CHANGING_ENVIR* N$ N! d2 h1 [! ~
                        if( g_pPlayer ): l6 `1 g; |, B. W
                                HookUpdateLight( pLight );. Z+ B# Q/ W3 N8 [+ O
#endif  Y8 Q( B! e& U/ |: m. N6 s
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );5 @; ?7 `; X2 d) g

4 j) O  v8 `/ t0 A2 M) M4 c0 N/ s                        pLight->Diffuse.r  += 0.1f;: F" V3 r* T/ T
                        pLight->Diffuse.g  += 0.1f;
2 R" S, {7 ^$ Y0 G, Z- T; I& U                        pLight->Diffuse.b  += 0.1f;. H8 N" U0 H7 a5 P
                        // oˉè* ??à?
4 K; p( j% [) f) G; {: Z                        pLight->Specular.r = 2.0f;7 v: H) [4 @/ a  q3 M0 \) j
                        pLight->Specular.g = 2.0f;2 U* u% a: R" j
                        pLight->Specular.b = 2.0f;
( x; S) y. M% X4 p/ g' ]* E3 u& S                        // á?oˉ   F6 c8 Q$ L$ P
                        pLight->Ambient.r  *= 0.9f;. X% d$ q) M- v: \# A
                        pLight->Ambient.g  *= 0.9f;% d% Y1 N( C1 s7 V7 [) _4 A; y
                        pLight->Ambient.b  *= 0.9f;
# l$ u4 N  O  Y0 x  d
1 I* A& m4 \: J3 T- r. b                        memcpy( &m_light, pLight, sizeof( m_light ) );
$ X1 A6 {& @! X  E% l7 ~                        9 b( r. L& ?4 Z' j
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );$ O! R# [+ s, I  H7 z
                        pLight->Appear( m_pd3dDevice, TRUE );
0 V( y% o! `, f9 K$ }) `; L        . o8 v4 x2 \5 L( X# R5 t0 @" Z/ Q
                        DWORD dwR, dwG, dwB;; J4 R& H5 R' d
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
" F% c3 z3 I: q7 f' }/ U; K                        dwG = (DWORD)( pLight->Ambient.g * 255 );
" g6 z( T9 g! H* i! ^. y                        dwB = (DWORD)( pLight->Ambient.b * 255 );
6 r2 ^/ |3 {* e7 l& ~                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
/ c( o$ x3 w- x: H2 ?                }* i$ V+ q- d: z- {' n8 H
        }
8 c' Z# W, \  \. |* `: B        else
2 l' p, t: X/ M8 y        {
- z8 W9 h! {% G1 |! @                if( pLight )4 Z! e# Q: f: l& X0 k4 d/ x
                {! m% c4 S2 U, B6 o: Q7 B/ Y9 x
                4 @, s; Y' H& y! @( b( K
                        int nHour = 8, nMin = 0;
+ h8 p" v: f8 G& `# }        #ifdef __CLIENT
% @4 g, r5 K: w/ l. T( {% {$ E                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
, p& }2 O- b( r4 W* R- u* _7 H# o; U& C5 S                        nHour = g_GameTimer.m_nHour;
3 u2 I  X% A  b, j# @" X! B                        nMin  = g_GameTimer.m_nMin ;6 t4 n5 K: o# J* i  l3 B! U
        #else
- t+ F5 u$ X2 G; C6 K                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
% c5 H' i, l' e7 u                        if( m_nLightType == 1 )% v0 R& {1 a( g2 I% ]
                                nHour = m_nLightHour;7 w( e  l; Y! L3 G
        #endif
5 b" |# a8 e) m- W( x                        nHour--;& W& H/ @4 W4 D
                        if( nHour < 0 ) nHour = 0;/ P; m/ B1 E* k
                        if( nHour > 23 ) nHour = 23;
( ]; k! d) ^, c' X2 v4 r* u4 a! Q" B" n
                        //if( m_bFixedHour )( e( [! Z7 y9 V' i1 [* H  j
                        //        nHour = m_nFixedHour, nMin = 0;
' J0 b- [" R8 k# V0 U- |) V                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];! ^5 q) N, O! W6 p2 t' h
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
: ~' V" W0 a. ~& Y) L) E5 H8 G6 j7 V* |; r$ K' o
                        //m_lightColor = lightColorPrv;  C* g4 ~+ s. A' U  ^& F
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
# k! B# w7 L7 O+ z9 p                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
; B9 e+ L9 b0 M( x2 D$ c' m                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;( n% r6 D6 j% X2 S
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
" v, _: D+ [3 c; @: f# j9 o                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
$ ]( v. h3 @9 ?& X; U: [                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
8 k/ E. [# }$ c3 P8 d$ ?, j- }) @' a                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)" h$ g2 y+ l( {' `6 _1 A

' H. Y( b5 T& u  ?* s4 |                        // à??μ oˉè* , J2 w& E8 G$ d
                        pLight->Diffuse.r  = lightColorPrv.r1;! D5 E4 `' t4 q  U) V
                        pLight->Diffuse.g  = lightColorPrv.g1;
5 m' j& _5 x$ f$ C: @                        pLight->Diffuse.b  = lightColorPrv.b1;! ~8 a( o4 A% K  u
                        // oˉè* ??à? 6 R* n1 \1 x* ?+ N; d( u
                        pLight->Specular.r = 1.0f;$ H7 M' x4 y: H
                        pLight->Specular.g = 1.0f;
, q5 m; g0 a9 @: P( G5 E% N                        pLight->Specular.b = 1.0f;# ~' z8 h% Q* M* z) ]: s
                        // àü?? oˉè*
4 h8 Q) w" R( i  C% s# z                        pLight->Ambient.r  = lightColorPrv.r2;4 y0 }! q1 g7 z1 L& |  V" S  [
                        pLight->Ambient.g  = lightColorPrv.g2;7 a1 o% v" l9 e7 R6 F
                        pLight->Ambient.b  = lightColorPrv.b2;
7 V: x1 Y% d% k5 B
1 F6 A8 x4 r7 N; d- S- k                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.! _8 P0 Y" d* [
                        {
) e. @+ v: c9 X7 q2 _                                pLight->Diffuse.r *= 0.6f;% b8 H5 y* [2 ?( F4 P# r
                                pLight->Diffuse.g *= 0.6f;
: k2 [! h* G- S( Z                                pLight->Diffuse.b *= 0.6f;9 @6 ~  A/ M, u2 B
                                pLight->Ambient.r *= 0.7f;
, b/ J) r% K" }  m! R/ n' g                                pLight->Ambient.g *= 0.7f;7 t6 `7 X% B4 |" z4 [
                                pLight->Ambient.b *= 0.7f;
% c7 F# e: ?3 v4 Y  B0 g" q6 \                        }
6 Z0 J/ y$ y. P0 X- p9 y8 y                        8 Z4 Y2 x6 n; ^; m6 K$ q! X) [
#if __VER >= 15 // __BS_CHANGING_ENVIR7 u* B  W7 u& n5 U$ |+ E7 k% m
                        if( g_pPlayer )$ d* g6 c5 _' V8 A# [& |
                                HookUpdateLight( pLight );
* i- s3 a$ O) V6 x5 M7 n# K5 b#endif
# R; O) n7 i! l1 F' ]* L                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
3 f( y! L5 c3 j$ D4 r$ |9 U% n3 H+ _7 z, J  N# D
#ifdef __YENV  ^. |6 S; d6 M5 \0 q
                        pLight->Diffuse.r  *= 1.1f;
0 l1 ]# O( U0 C' L% }                        pLight->Diffuse.g  *= 1.1f;
- z  r2 t! z6 m  O+ A                        pLight->Diffuse.b  *= 1.1f;2 K; ~4 n+ n' u2 I" N7 n
                        // oˉè* ??à? 3 L! w% T: |* I1 Z; J7 q
                        pLight->Specular.r = 2.0f;
- G- L) {9 T$ S9 q  _1 w                        pLight->Specular.g = 2.0f;
) k- j* {6 h& ]" T9 M8 N                        pLight->Specular.b = 2.0f;5 J* x9 l: |7 _' b
                        // á?oˉ " N4 T$ r  Q9 A; t# l
                        pLight->Ambient.r  *= 1.0f;
, Q. f4 O- d: X' g2 F9 r- t                        pLight->Ambient.g  *= 1.0f;* k, o% {3 n5 W# q" |' ^: C4 r6 u
                        pLight->Ambient.b  *= 1.0f;6 z! D4 T1 Y/ H2 n$ R
#else //__YENV% J% C) o2 }+ |% S( X; Y$ l; B
                        pLight->Diffuse.r  *= 1.1f;% u) i1 J$ u% Y3 w5 d$ O/ t1 ^
                        pLight->Diffuse.g  *= 1.1f;
" `  L  k/ d5 n7 s                        pLight->Diffuse.b  *= 1.1f;4 _3 \$ \7 M% m- u$ J5 ?
                        // oˉè* ??à?
4 {( S+ \' u$ X# p) r5 i5 g0 ~                        pLight->Specular.r = 2.0f;/ b$ J0 Z" P. v  f5 r3 l
                        pLight->Specular.g = 2.0f;
  {- j9 w# T; c1 }                        pLight->Specular.b = 2.0f;$ C8 R* Q/ p9 D
                        // á?oˉ ' h7 ^* D! k9 F$ z% k
                        pLight->Ambient.r  *= 0.9f;* H( D- E5 v1 {$ n* z' `2 f
                        pLight->Ambient.g  *= 0.9f;5 s% W( f% V8 M  L. F" J2 D
                        pLight->Ambient.b  *= 0.9f;% t5 h* T* q( w; t2 S9 @
#endif //__YENV
9 t$ G- `6 T! J! B. Y& l5 [                       
7 A# o% u( K1 X, M1 r                        memcpy( &m_light, pLight, sizeof( m_light ) );1 B7 y+ s) G; d  S! g# @
                       
0 m! O/ z6 d& A! b. H4 i                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
. T5 R. j! ]2 l                        D3DXMATRIX  matTemp;
, x! g3 x4 R1 B0 x6 S8 A  L9 m                        static const float CONS_VAL = 3.1415926f / 180.f;
) G( K( |$ E/ K2 @! P) D8 w
/ h; E* _& M  S# }3 G                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);7 L# j* E( Y0 H; j. r' L4 c% E. q
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);8 b  \4 h* d8 `/ d  \4 c
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); 7 V; ?8 ]! q, Z
                        pLight->Appear( m_pd3dDevice, TRUE );7 S* ]. H% k: w% t

: d/ Y9 R3 X: q                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);' v8 t; k# t/ j& A: o, r
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
' A+ O2 G; H! c$ x, m$ J                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ' S) ~6 x* |0 s8 L4 u
4 ]- p$ @/ ]4 D6 y
                        DWORD dwR, dwG, dwB;
+ g1 R" N7 P2 `5 G4 q* A# z                        dwR = (DWORD)( pLight->Ambient.r * 255 );8 `' P: w5 }! U. |
                        dwG = (DWORD)( pLight->Ambient.g * 255 );/ z$ B. K/ Q6 P6 }( k
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
8 j* j* o3 x" c1 v3 D* O! K                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        2 C/ w/ h6 o4 m6 F3 M( i
                }! ?) ^1 Q0 Q0 U  t7 V
        }
. `9 Q! h2 }) y" N  j8 H
4 G9 i& f4 F, z        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
( g; \0 o3 U* |1 S0 n" \# p8 g6 Q        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) );
: @$ x2 k5 v8 _/ l( v) U4 N        ::SetLight( bLight );  E: |: q9 J) n; d" f% c& m  I

" ~0 D; L" ]8 x2 ?$ `' D9 o( d- x        // ±ao? ?D?í???ó á¤à? . f0 u0 _1 v" s5 h& P
        m_pd3dDevice->SetMaterial( &m_baseMaterial );9 t) ^/ |# Q! t  c5 O% Z% J
        1 j& p) C  U6 d; ?9 R
#endif // not WORLDSERVER
8 ?3 u4 y: l( k; j" G4 m, ~}% Q! a+ C  C5 y4 q6 Z$ K" r
并更换* O) u! \9 H0 r$ a: G% ]( i
Code:
0 p& ]+ B" e1 ^% J) q__FLYFF_INITPAGE_EXT0 T& j( \' t! K6 Q6 |& Y1 Q
定义. s1 B& o; d! V+ M# g8 K

! ]+ a) F! Y, d) d
, I$ e( D) X: \: x* X( j" Y
4 [7 F' M- C% ~7 G
( I7 j" o# T9 q+ R8 r# O7 Y" z现在终于删除我的狗屁加速...& ?! g  X$ p# q& N3 B
! ^( h8 V8 R: @7 e3 ~- Z" V

5 @+ ]4 S, q1 g( ~. U! V/ d' Y( f0 E- e/ y9 w9 T





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