飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:% o3 G# R  ?4 z3 j4 ?  o' y
尾翼:& f% e1 x4 r. _7 i9 u' d2 R. E

5 o/ M; W7 s  E; u4 d6 |代码:
* z9 z  N$ h) k: ]4 F$ _: BCWndAutoFood::CWndAutoFood()9 h2 |7 J1 \: |- N+ ]& [# c+ Z
{
( L, w0 `2 \* ^) }4 \* O4 {        m_pItemElem = NULL;
3 S0 P% P, s* o. \: D' k$ s        m_pTexture = NULL;1 B# a/ q$ A  C
        bStart = FALSE;
: m$ g/ `# X0 Z$ Y0 R}
/ G- A& j" Y7 x
4 B% r; h7 W3 X( P: S) p6 \' L: ]CWndAutoFood::~CWndAutoFood()
: t0 u/ H- f- J; j0 C- r! f1 ]{3 L& j4 b  k1 _& e1 `
        AfxMessageBox( "AutoFood ist gestorben " );
. [$ l9 }3 U+ m% j% T}
' ^) o3 U: E6 ^( D7 Q- `BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
6 g: \( K: P& }' y2 q' Y  T. S{( D+ g9 W4 W! h3 g5 o3 ?# b
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
, P) M' C4 N6 a: m) ^; T}9 C1 r4 }2 i0 P" e) L' t

4 i1 n$ ~. Y, x, U% E! L  TBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )7 Y# P! K! {" s( |
{& Y$ L8 T* |: p1 C
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
; a/ H6 f$ ?' [8 z        CRect rect = pWndCtrl->rect;
7 i9 t3 p* @1 ]9 i$ O) |        if( rect && rect.PtInRect( point ) )
% l& d8 g: V. h9 s8 C3 m        {) H: x, B( K/ }% Y/ ]1 A
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
# E; ?: _1 ?5 x* _                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
, q8 _7 j- ?* r                {
4 O9 e, H0 A2 `- M& l                        if( m_pItemElem )
/ \, @: t9 ]6 r& Z8 S6 a; j                        {
' k$ L: K1 s9 @' i% C$ G9 O) k8 ^& s                                m_pItemElem = NULL;
' v8 v$ m$ a, y4 B7 o) B% `$ J. I                        }) g6 m) L2 L* f1 `# V8 p5 o; |7 U
                        m_pItemElem = pItemElem;9 F9 M, D/ T0 B3 g" |/ ]( s
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );( S: e" l' e3 H, ^
                }else{
/ H! S" Z' }, j3 C% v, J                        SetForbid( TRUE );' F* q$ ?& L+ x3 a; g& Y! X' g
                }
- G" e" i! f8 |        }else{
" s& x. M, N7 P) b, H  K, c                SetForbid( TRUE );! }  D: F6 y7 a
        }2 K$ U6 w, M. d  E) G& r
        return TRUE;$ k5 V- s8 |4 z- d- X
}& q' ]. b  Z6 {) r& m

$ X) ]2 w" u. f7 Q% V7 }BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
. h+ `7 b3 X9 ]* V- p, W. v{
. V2 e+ Q  T) w# k! M        switch( nID )
' k/ \2 d; d% C. [' A7 S        {
: d8 f% ~# Q) _$ W        case WIDC_BUTTON3:
7 r' I$ S+ L  [                {
4 n( K& w. N' T* z                        bStart = TRUE;' p: b) c( G5 n$ L
                        break;
. P. z2 [* {! u& _                }
1 P* [6 f4 q& f1 r        case WIDC_BUTTON4:* I6 O6 }- j) f
                {, c5 ^/ y2 n- N
                        bStart = FALSE;2 C9 R# s; I9 j
                        break;
& l5 d0 H1 o! W1 k% L$ J" W                }- Y, m9 R7 x$ }  m6 o1 K- K+ b: D$ ]
        }
: T- ^) Z4 k  ?2 |        return CWndNeuz::OnChildNotify( message, nID, pLResult );
9 p, t9 i$ i+ y$ a0 \1 H0 T* U9 ~}        & K+ L2 D$ r8 O2 _! u" S, ]( A
void CWndAutoFood::OnDraw( C2DRender* p2DRender )$ M& x5 m& ^1 k8 l; a1 k- e. z: T
{3 r3 n; G8 Q, M9 x
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
- \5 s4 U0 {# S5 ~1 S2 k# k- a7 d        if( bStart || !m_pItemElem )
2 s( D9 k) d) b* ^        {6 [# x/ Y4 j  S, Z9 E
                pBtn->EnableWindow( FALSE );3 j, J( S( R) |" `
        }else
; i! A& e# T) P5 p/ g& z                pBtn->EnableWindow( TRUE );& x" K/ ?7 k  g2 Q
        if( m_pTexture )
+ c  A4 H2 s- n$ n        {- ]5 @# G( r" s8 w+ R* q( P
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
# ~0 R! s: {3 ~+ i" x3 x- y8 V2 E                if( wndCtrl && wndCtrl->rect )
9 y! `1 j1 Z: d5 m3 y                {; F5 h5 F: u) k& R3 t
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
4 N5 O, l7 {7 S" h5 X; F7 A                }
2 Y# I1 J& M! y  \        }
2 m6 G# D5 Q" E. Q% w7 R}. ~4 l$ N) [: Z' I
" V9 [) d" r/ K8 P5 z, u
BOOL CWndAutoFood:rocess()
5 D9 f3 q! O& G7 C% ?/ w: P{
$ [7 H( z! D6 B/ s8 s        if( bStart )& ^- m: Y; f+ g8 ?4 a& T- V; K
        {
; C; h- _: b6 U8 [) \                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )" I! L/ j3 I  H) E6 e$ `. Q4 P5 {
                {0 z! c% q7 V1 I3 Y8 i
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
! {- E% _) e6 W2 V- ~9 Y' ?! J& S                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );* R9 [6 P1 m8 H$ E  U2 e) g
                }else{
% K+ n) J; T; C5 q3 G4 _                        bStart = FALSE;& @) V! q* g& H
                        m_pItemElem = NULL;
% [7 q2 @6 e/ G* M                }
% t! J1 O8 D( Y0 D" s/ E% u$ b* Z        }# P. V# t- Y: I
        return TRUE;
0 I; z4 D/ Z. q. w& j}2 V/ [0 h2 ~" [6 Q; Z5 p" l
) g8 c- j, U* c, e( `
登录视频废话:; M" V& @) Z) i% r+ C( q2 R
尾翼:+ |. K5 Y4 T3 u% B- K; i

- \- z0 w8 x0 x) L6 Y9 M' }" @% n代码:2 f' j# B8 g# u+ N. ]
; b3 _) n/ }+ C: ], A4 T6 A! m
void CWorld::SetLight( BOOL bLight )
" n% }" i+ w7 a& y, @2 C% Qdurch
- x, ^2 G% X  n4 sCode:
6 l$ a" o% M$ n) ^( mvoid CWorld::SetLight( BOOL bLight )/ D- j0 M: d+ ?- F
{
# ?7 c8 B- F/ W$ S1 v) I6 ^        //ACE("SetLight %d \n", bLight);  G; I( T3 N4 |) H8 [( I- L( V
       
8 p3 b- s! c6 t  J! S4 R9 h1 c9 c#ifndef  __WORLDSERVER
$ D. F$ ?; Y! K1 x0 b) C        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
. `% h/ U" E4 Q# {        CLight* pLight = NULL;1 G" |, z' W& R0 x4 [9 \, _

$ f' }" m5 d% P4 F0 U3 k4 x        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );4 J3 Y! q+ i0 H% M" v' s+ a

; O. K5 D' e0 O9 i+ p        pLight = GetLight( "direction" );
; A2 M5 A4 `# p  F$ F. D# f+ R$ v8 Y' E
#if __VER >= 15 // __BS_CHANGING_ENVIR
2 C. d2 T; `/ M, v9 V& x9 K/ d        if( g_pPlayer ){9 o) n' j. p5 f/ n/ }' c: P
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
" e3 F9 o, A5 F' x$ Z                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!( f) t; y$ ?& U6 v9 T6 f
                {
3 P1 z3 N  R" |) [+ M) d" b5 ]                        if( pLight )
% E% b# f5 U0 T- w9 \4 Y% U                        {
% X, S* w; S, S                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
( w) P2 ~2 P3 Y2 R8 b( m                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
/ O- M5 u& e7 J- v( u                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
, {. C- [! d5 D/ e2 R$ ~8 `
$ X9 g) c0 h- |! h: W" U7 {+ g& [                                pLight->Specular.r = 2.0f;+ a  O5 |* {! R
                                pLight->Specular.g = 2.0f;
' e: G3 e/ w7 }& L! F0 I' H; e1 b                                pLight->Specular.b = 2.0f;0 u2 q  T( ?% O! O( i7 t
        4 a  e5 ?' x3 ^
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];6 A# ~2 w, q/ g5 F2 D. ]
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];7 j, s, {( N0 J+ b" {
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];9 p8 N  C% b9 k0 D7 E
        , M' S% i0 A% t8 X4 y
                                HookUpdateLight( pLight );
1 s" n. C# M# n4 z1 D; ~
- K, Y; I6 v% n8 {' y9 @                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
! y. }9 d# Z8 O- ?# o               
+ K: F6 ], L/ ~! O/ V  D# u0 s                                pLight->Diffuse.r *= 1.2f;9 `) ^" N/ O: C' `& P
                                pLight->Diffuse.g *= 1.2f;3 ]5 i! T1 w" M7 d' ]% z7 Z
                                pLight->Diffuse.b *= 1.2f;3 @, s+ q- E, y4 ]
* \$ K# F8 s8 H. N" X* `7 W
                                pLight->Ambient.r *= 0.8f;
9 s0 d: }9 n( L! U: k3 _                                pLight->Ambient.g *= 0.8f;
+ G5 \& c8 _+ [0 p/ Y6 Y! ?% x2 N                                pLight->Ambient.b *= 0.8f;
9 E; c6 \* {( h! R        5 j$ Y, g1 v0 E+ ~' T$ D
                                memcpy( &m_light, pLight, sizeof( m_light ) );
. z! {% v6 K7 s+ i7 @6 ]) V, i+ H: Q6 J
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
% w$ g$ X* z* }8 r                                 D3DXVec3Normalize(&(vecSun),&(vecSun));
! }+ w' p/ B- F                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
# @% H4 E1 H1 C$ ]                                 pLight->Appear( m_pd3dDevice, TRUE );
9 J5 i; S8 M/ y! m+ e$ N( _               
- C) T1 z. o' H" X0 x, v2 H" u                                DWORD dwR, dwG, dwB;7 v% w. J% Z. f' {8 }9 Y  Z: x
                                dwR = (DWORD)( pLight->Ambient.r * 255 );! W. _$ I0 I9 s! W% V5 ]7 i
                                dwG = (DWORD)( pLight->Ambient.g * 255 );8 ~3 ]) g0 k# ~* r
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
+ Y& M( i; A! [8 E; W3 `                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. k% N& Y9 a) A& a: o                        }
: D. l, r8 b8 X9 L) J" h! X                }, s2 p# E3 T3 j* m( Q8 |9 f1 m' d
        }7 b, y* H4 N, \# R0 P+ }
        else
  c6 ?$ _! s7 B. n, [#endif
6 Y" s( p" \  s
0 O9 `/ E* }4 K* p4 M# ^2 @4 q        if( m_bIsIndoor )
- \+ z- ?" X) B; V        {0 Y2 C$ o% A1 Q- h) b
                if( pLight )) z' q1 I( i0 [0 A6 B
                {               
1 J3 }2 L4 @3 y) Z/ `                        // à??μ oˉè* & V. r, g9 ?# T9 M% L
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
, X2 p6 S7 B. Y* M9 B3 L                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;) J* w" x8 T# `) I9 v
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
# s1 E* }4 ]3 t% ]3 Q: d  Y
7 _2 F. `4 k' S& d                        // oˉè* ??à? ( B% A  A2 v/ M2 `. M
                        pLight->Specular.r = 1.0f;
0 r8 T, `- y9 \3 N                        pLight->Specular.g = 1.0f;
8 `# e3 f8 S# x" ?/ {8 a                        pLight->Specular.b = 1.0f;' v$ O8 x7 k+ U4 M$ a
                        // àü?? oˉè* % S9 M! n1 ?1 t( ^+ b# G( E3 S' ?, E$ Z# P
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;5 B( }2 C+ V. h! v4 {6 V+ h7 \' b
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;! F1 r1 @& a4 J3 Y/ K. O) p- b
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
1 ~; z3 e' ?, {, L* q4 h% y. c0 E% H, ]0 B2 N' v: e2 f* z
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
/ r3 R/ M. y3 N                        {
- o1 C" a1 y+ Z& A& R                                pLight->Diffuse.r *= 0.6f;
. i0 F: h0 a  }: i1 Z* y                                pLight->Diffuse.g *= 0.6f;
3 A( w% P8 Q) s$ E                                pLight->Diffuse.b *= 0.6f;
$ B. r$ G/ F/ s. v3 o+ B2 `                                pLight->Ambient.r *= 0.7f;
; ?* A% q4 R: o+ X                                pLight->Ambient.g *= 0.7f;# z# {; b; b4 K, G! Q2 h7 L
                                pLight->Ambient.b *= 0.7f;8 n: R, v% e* B; K# y, T
                        }" O! t* F! r4 ?9 `# s8 w
- L8 F* b3 U" {# J
#if __VER >= 15 // __BS_CHANGING_ENVIR
  |5 R: Y/ r! `# u/ f, I9 W                        if( g_pPlayer )
' c2 R1 j+ e9 W; V                                HookUpdateLight( pLight );% ?9 n3 w" m' G0 I6 F6 Z; _0 m
#endif+ N/ ]) b+ K8 R" o
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
8 l8 |# _5 n3 @1 x) Y. a2 s2 z/ s0 ^% n& M
                        pLight->Diffuse.r  += 0.1f;
3 ~/ M2 G! e' V, l  f! D                        pLight->Diffuse.g  += 0.1f;
% e0 b8 E- W3 Y4 O                        pLight->Diffuse.b  += 0.1f;% L! I6 o( @" k9 c: u
                        // oˉè* ??à?
5 E, P- H1 O0 }2 B) h+ r                        pLight->Specular.r = 2.0f;
' O) p! w+ p* G2 r                        pLight->Specular.g = 2.0f;7 ~6 B; S4 I: t- B' A; x' O
                        pLight->Specular.b = 2.0f;
6 p5 l" ?' g2 {0 b# H, X" R                        // á?oˉ $ O& _# F% K6 }$ Z$ n) ~
                        pLight->Ambient.r  *= 0.9f;$ U9 k& }1 e# s2 n, S
                        pLight->Ambient.g  *= 0.9f;% T9 Z6 M( L# C3 K
                        pLight->Ambient.b  *= 0.9f;; q: b1 q- U9 F( t

* x+ p3 A! s& S3 t                        memcpy( &m_light, pLight, sizeof( m_light ) );
& n( d& [5 w4 t3 q                        3 L% H" n  z3 G3 I
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );! c. R$ R6 z# q% r! {# ?
                        pLight->Appear( m_pd3dDevice, TRUE );& V, i7 m7 j1 ^1 y* Y1 j7 \
       
8 s8 K3 S, }: }  ?                        DWORD dwR, dwG, dwB;, ^& c! B# E- |4 Z. Y; S
                        dwR = (DWORD)( pLight->Ambient.r * 255 );4 s6 T8 h0 g0 r9 V, }
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
* W8 _7 m0 ^# u" B5 ^& B* ]                        dwB = (DWORD)( pLight->Ambient.b * 255 );
3 t; y0 t# ~, ~, S" f; G( U3 t                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
, A! }4 j6 b0 D, |                }) }. s; v. ~- J8 J7 `
        }: r# l# s/ h. K% w: M) ]6 Y' |
        else
( b- {+ Z% I2 ~8 V) b* t  s* G4 Y        {
/ F  h) Y! h- Z. m                if( pLight )- l+ E% c6 E# k. q5 {
                {
. U5 n) |* t. |, ]- i* L2 m                ! U9 e" M1 u7 L! N8 `- [
                        int nHour = 8, nMin = 0;: S) _! |: m0 d# C) Z: I
        #ifdef __CLIENT
" ~# u9 c5 z" w                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.   v; T: A8 A/ \0 a9 ]6 h- H0 w
                        nHour = g_GameTimer.m_nHour;9 v) h$ H) C$ {/ N: c
                        nMin  = g_GameTimer.m_nMin ;8 q. H# i! u) l3 @% g
        #else
1 W- j$ I4 C, Y! E                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
% r) W" S; B3 G% w2 p% S( x                        if( m_nLightType == 1 )
( f) v% Y9 c4 @9 @                                nHour = m_nLightHour;
2 _# ^7 h! b; O/ S! l1 }        #endif$ }% s$ Z5 {- {( j. U
                        nHour--;
' a9 w1 }4 c6 M1 W7 V# V                        if( nHour < 0 ) nHour = 0;% d) {! e# ?' j- a. v4 r7 G
                        if( nHour > 23 ) nHour = 23;
+ m; ^; A  P# U' k; V& U- y* q! F) K
                        //if( m_bFixedHour )
5 c: F7 ?" H! n: A, U. m3 C                        //        nHour = m_nFixedHour, nMin = 0;
9 M* g8 s9 G: j% e  ^9 S9 o5 g/ k+ G% s' c                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];1 q. m+ v% n4 Q5 q
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
0 {. W2 p& J8 `3 a; J3 O1 W7 S' Y7 a
                        //m_lightColor = lightColorPrv;* {! I" n0 _$ E/ B
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;) |. I3 V5 {- K8 w0 L
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;. G; T2 I; W5 _
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
: n* M, C3 x- L3 T, M  L                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;6 F# A% K& o6 W8 y: @( V
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
0 v0 v. J1 x6 Z% z                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
: S7 K) c% h( i/ p                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)* @$ Y: @: N' \8 ^6 j4 D1 s
2 u% u  D$ S7 k5 V9 U6 n
                        // à??μ oˉè* . {' G& j( O* f+ P2 B/ Y: E
                        pLight->Diffuse.r  = lightColorPrv.r1;
* i- b+ D+ X5 x9 f( V                        pLight->Diffuse.g  = lightColorPrv.g1;
- K* Z) b2 D  b  f                        pLight->Diffuse.b  = lightColorPrv.b1;, u/ E$ ?4 L+ n; ^% }% w
                        // oˉè* ??à? 5 p- I8 n2 ^) j* A2 w7 J3 @: x
                        pLight->Specular.r = 1.0f;: n& y! I* R; G' G) ^; X4 _
                        pLight->Specular.g = 1.0f;
0 X8 `; |! R5 S0 C# e                        pLight->Specular.b = 1.0f;) M: U; t5 A% ~. D) j2 N( \
                        // àü?? oˉè* - i5 [, I% ?! r6 g* ]
                        pLight->Ambient.r  = lightColorPrv.r2;
$ I! O; W  R& F) V3 Q6 q& _7 y                        pLight->Ambient.g  = lightColorPrv.g2;
3 O8 L( I! R' e* L- C+ S, {                        pLight->Ambient.b  = lightColorPrv.b2;4 c' P( J$ Q5 _+ Q, n

  x3 n: [' x/ n                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.+ P  f- _) J4 f2 K
                        {! w/ _; h( X( \3 J
                                pLight->Diffuse.r *= 0.6f;& N/ b% Y* j- P) C! b2 Q+ W
                                pLight->Diffuse.g *= 0.6f;9 f( o5 o8 T; H5 e" _/ e
                                pLight->Diffuse.b *= 0.6f;
' G& g; N! \+ H) a% Y                                pLight->Ambient.r *= 0.7f;* ?: H: F6 f: o" g5 {5 [, h2 n5 l
                                pLight->Ambient.g *= 0.7f;) f" r8 i' Z& m8 y8 s3 v! g
                                pLight->Ambient.b *= 0.7f;
. Y; _( X5 V% t. Z2 s" z                        }$ u! w+ i: X2 e4 b# _
                       
! N: r6 v+ J9 P, r#if __VER >= 15 // __BS_CHANGING_ENVIR7 `: ~5 A0 F3 }3 \6 g
                        if( g_pPlayer )8 ]9 S& s& J0 w# O$ a! S7 D
                                HookUpdateLight( pLight ); ! d( g! O6 ~9 p: X1 x
#endif" Z$ n+ e# P6 r0 ]. a* h
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );. Z' X+ p! ^& Q
* k2 z, E& a6 [; y
#ifdef __YENV
" J1 x) B& N+ o$ x% i1 s- |                        pLight->Diffuse.r  *= 1.1f;7 d+ V6 Y/ s2 B4 w: |- u5 X8 d4 @
                        pLight->Diffuse.g  *= 1.1f;
, N1 y" L7 ?$ p& O                        pLight->Diffuse.b  *= 1.1f;5 i/ I# b+ Z; n. u1 `$ o, E; `
                        // oˉè* ??à? ; y4 c! [6 x% Q; U* R0 ]# O
                        pLight->Specular.r = 2.0f;8 {/ A, e% ]& N' f# o) W8 W( {( p; ?, B
                        pLight->Specular.g = 2.0f;! n, O0 O; i5 I) T
                        pLight->Specular.b = 2.0f;+ D2 r, h& j- p$ M' a. E" y
                        // á?oˉ ' S  F6 \( ]$ Y. L4 c& I: Z
                        pLight->Ambient.r  *= 1.0f;, ?! f8 a& l1 @" u: `" w
                        pLight->Ambient.g  *= 1.0f;
: N% O' o3 t& ^5 V& D! H2 U3 D                        pLight->Ambient.b  *= 1.0f;
3 Z) A9 h1 \& A; ^& T3 h- A3 ]$ Q#else //__YENV8 c6 y9 B6 E9 E" q! ]# D: U! A
                        pLight->Diffuse.r  *= 1.1f;
# z: c/ M& L  W0 x6 M                        pLight->Diffuse.g  *= 1.1f;
, _  I. Z8 m! y4 ]4 @' L5 S* R                        pLight->Diffuse.b  *= 1.1f;; w7 R. q% j7 _- f
                        // oˉè* ??à?
9 \2 G4 r& r) p5 K                        pLight->Specular.r = 2.0f;
, o$ w( f# ~3 F5 m& w. g, C                        pLight->Specular.g = 2.0f;3 b. _. p7 }* F1 _8 _/ j
                        pLight->Specular.b = 2.0f;. _# X" h9 t, ~+ `
                        // á?oˉ
5 K" a9 B: C. d/ J# Q5 {" t- e                        pLight->Ambient.r  *= 0.9f;& {- o7 Q' h, t1 N/ U2 Y
                        pLight->Ambient.g  *= 0.9f;1 s6 q- _& y* |
                        pLight->Ambient.b  *= 0.9f;, ]$ ~8 i3 \+ C6 X. \
#endif //__YENV & Z# Q5 @: {' }. h& Y
                          j7 X" V# _1 P$ H. F
                        memcpy( &m_light, pLight, sizeof( m_light ) );
3 @$ d: s9 r- A1 s! T2 o& Z                        5 {* w! ~% |* |
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);9 @) ^7 H/ c0 }: W8 f9 y
                        D3DXMATRIX  matTemp;
7 a. J! h" C4 T4 W9 `9 A                        static const float CONS_VAL = 3.1415926f / 180.f;+ X' C2 l1 ?1 J. K
  E6 z( m$ w$ r6 Q6 V" e
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);7 K; x2 Y, p  d6 I9 X8 ^
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);& X; G# ~' e- ^& F1 I  u  A
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
+ F$ R8 B, [8 B. S/ `+ A; ~                        pLight->Appear( m_pd3dDevice, TRUE );
' y: K1 i  S+ x' n4 m; A0 n, R! c5 z# _* r1 S
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);2 J6 Z) z9 n8 I5 y9 j& i% \, |7 d% l
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));& g0 D9 S/ A& a+ ^9 Z5 ]
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 9 q9 B" V/ \2 e8 \  w& F

5 \1 Z4 P9 s7 W5 b+ J; I6 [- e                        DWORD dwR, dwG, dwB;  w+ ~/ v% `- ]0 {/ z' C* Q
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
0 c, D4 z  e2 z' O- X                        dwG = (DWORD)( pLight->Ambient.g * 255 );9 Y8 f( i; e# {, B" c' d$ [* }
                        dwB = (DWORD)( pLight->Ambient.b * 255 );5 v4 q! F  U3 }' ]
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
5 \" Z9 f3 a( Z4 m4 r  ~                }% a  ^6 s! v" n( h) p8 w, s" ]2 B
        }
9 U. d: L! M) L7 a
7 m" r6 H9 d7 K! z8 k7 r        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );; y& e$ T2 E2 q& l+ e- g
        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) );, o5 A* K+ I+ N( c* ~+ @5 x1 {
        ::SetLight( bLight );
6 c5 u- I- O/ Y' O+ l
5 {1 g. c' V7 ~+ J* ~8 \1 `8 t* M        // ±ao? ?D?í???ó á¤à? 3 X: o3 ^/ K# f6 T' m- j
        m_pd3dDevice->SetMaterial( &m_baseMaterial );0 C; |/ G4 r6 N
       
( P* F0 s5 [" H% \! n: D8 ]#endif // not WORLDSERVER
* T; b3 m  r7 h( c}% }/ W5 O* D: D( ?1 b& q+ D% w
并更换! ?$ M  N  }' E" [1 i
Code:6 Q! X$ W& {* K* `8 w5 e
__FLYFF_INITPAGE_EXT
/ D4 K1 ~2 ~0 \$ |定义; a7 ]% ]% @0 H7 W
! s/ A7 t$ _. U" F) {! `

% t7 e% o/ w  g0 A" O# P0 R
, T7 {1 `" Q3 D8 g4 a& L, }- o4 e) h; g
现在终于删除我的狗屁加速...9 u! W$ e, b6 G1 h# w# r/ M
0 Y! P; r' @3 H; V1 K6 W. [

3 B- Y) u7 X" n; d
  o; ]- W" a$ r# K5 @




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