飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:# e& q" J& x1 G- L$ E
尾翼:
* L; `% b0 M4 }! i
: v# D6 D0 k" m7 @; p代码:
6 K' ?( v+ v5 d/ ~: ^CWndAutoFood::CWndAutoFood(), v; Z( c: F" q+ w/ d, u
{
  M- W* W7 W  h% H7 S9 H        m_pItemElem = NULL;
6 y" P. I' t- L, q2 m: v1 A        m_pTexture = NULL;3 }8 f' r& n3 R$ L' |& }9 e6 w
        bStart = FALSE;
- G  |8 J4 ~6 _1 p/ X2 E}
$ p, ~, j. ~1 O9 Q& }
2 ?) l8 f) O$ N7 E  v, p- X% RCWndAutoFood::~CWndAutoFood()
5 r4 I+ B: G5 O4 e{7 z' h; ]( X/ f) D
        AfxMessageBox( "AutoFood ist gestorben " );
& p# Y1 S  l: }4 Z0 Q# k}: h, b1 O5 @* B
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
  [8 n+ c! J5 Z8 p; K; R{+ X( l9 }5 j. C5 c
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );6 h, S/ l6 G1 s! H) c
}8 m* X) z' |% H, C+ q% L

9 S  }  g; `4 b- e8 p. Q5 [3 i* Z5 oBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
( ]3 \- S/ q9 V# T9 e+ _8 a{
* m# {0 ~- E. H# Z8 E        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
1 t7 y) h2 r8 _! H- ]$ r# W        CRect rect = pWndCtrl->rect;
: r9 q2 q" w3 F: s" a. T1 Y        if( rect && rect.PtInRect( point ) )' V! |+ p' [- t' J
        {; @- ^2 s5 c0 z8 Q6 O3 H1 {4 `
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
7 a" Q  Q3 X3 R0 o                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
8 J: |, R5 [. N8 }& W0 v; a                {# P# Y' h" v8 Z* e% _6 b& A
                        if( m_pItemElem )
# F# |) v3 y5 {0 E1 x                        {6 k) j1 D+ B4 @2 E" }6 b( Z1 m. e
                                m_pItemElem = NULL;( f9 ~, G, J6 J
                        }: w5 x, m1 G$ @
                        m_pItemElem = pItemElem;
$ V! ?/ q( G% g8 A. T8 h                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
8 Y* b/ Y2 f, O  V" w  [                }else{
9 O7 v5 O$ ?& R6 @6 }                        SetForbid( TRUE );1 Q; K2 \) w7 W
                }5 a8 m) m# i* a
        }else{
* W5 n9 @8 J4 D                SetForbid( TRUE );
" a. N5 H0 T' \; D; z$ U3 S, C        }
9 r* l9 k0 s; _        return TRUE;
, N9 O1 q, g' m3 m- Z" e5 {, {}
0 l. }# k" u8 ~' M$ C) t% R& k: j' M7 i4 |) {% _  L( v; \4 b
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )& O- k1 M- g( ]/ `) a5 o# i" ?
{/ v2 w- `+ |+ D1 v
        switch( nID ); {, |9 M0 q1 v. h) n, i
        {$ t8 ^' L/ V+ K  R" T
        case WIDC_BUTTON3:
! }) v$ J) `0 s4 y                {9 T. y6 P: c5 G! m4 D
                        bStart = TRUE;5 X1 w9 c- t. J# g2 n3 M, k
                        break;
* i# m' h3 G! F% ], [7 A- o                }
/ J) R: D9 w( B/ V1 B        case WIDC_BUTTON4:4 P1 d* E" J: m3 I- F
                {2 n  e  p1 v/ G7 X
                        bStart = FALSE;
6 V+ h% @+ Q7 v# C5 ~                        break;
( n6 c' q! B# b+ A7 r                }- v* N, N3 {9 F6 J$ w: z
        }
7 v% k$ C  Z! ~$ _. B        return CWndNeuz::OnChildNotify( message, nID, pLResult );
+ H. I8 J) c0 m! n" B}       
; g* M1 a; ^: y. rvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
' G7 |$ Q1 ~- ?- l. ^) ?{- @  p: [* ]6 W6 T& c
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );  h8 a( H1 z: i5 Z& t  U& [+ R
        if( bStart || !m_pItemElem )
% J9 J* {1 y  J4 t# ?/ @        {
' u+ `$ M6 ]/ `0 p4 _4 e" P. U                pBtn->EnableWindow( FALSE );/ B" s' r( S6 `
        }else
( H! l; }/ z0 O2 O                pBtn->EnableWindow( TRUE );* b5 q' J: |. z5 ?  j! G7 w
        if( m_pTexture )( j/ ]2 z* s8 C: [' j0 B
        {  C7 S& {5 \. [( T. t
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );; S9 ~1 f5 G1 j' t4 E/ W4 ~% k: `
                if( wndCtrl && wndCtrl->rect )
+ L, j! Z/ d' p                {
# }3 h1 {: ~5 _" p8 B; q                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );7 h' `$ u, E) g; d) A! c$ m" p
                }; o; j- Y4 q3 p5 r  W
        }
# C. `' c2 d3 [  ^+ d6 C}0 Q: L! e) m: M3 D9 j* U1 n! _
: {( P/ R. r* z3 ?9 d
BOOL CWndAutoFood:rocess()
$ ~- k/ @- W  j  P  W{
  ]' h8 ]2 ^0 ~' f+ D        if( bStart )
$ L+ a9 V6 u, [6 P        {) F0 B1 `( d1 m: K7 c
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )* h( [" I8 P6 s) S7 G# q, |
                {
& K( z0 r/ t5 I, x6 R0 h                        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 _/ N8 }! F; P- `2 f                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
; _, i; z# `! n# x; j9 ~% h: x: F                }else{8 F, o$ g$ d) p+ V
                        bStart = FALSE;
: e  |3 t' k  R5 D6 {                        m_pItemElem = NULL;
: R2 I8 X! B# b: d8 y8 X4 y                }
4 n% Y/ U. K) m9 p+ \2 _        }# p6 }( U4 }) F- n6 c9 F. \
        return TRUE;
( A. n& Y7 r# x) Q8 A7 \}2 m; e8 d/ v# e6 {

) K9 d4 c1 {/ \0 Q$ u* @登录视频废话:: b* E. ~$ e5 G
尾翼:
- g' I0 x# H6 N1 l# q
* n* P: b; m! ~+ c0 Z& o代码:
9 }8 H* c5 n* R! D( h1 M5 @. o, I% c4 j0 h& ~! I* o
void CWorld::SetLight( BOOL bLight )
8 t/ H' l$ b6 Gdurch. s9 |9 A: R3 u% z9 j
Code:" h* _+ H# E/ T' w/ m5 A& \. ?
void CWorld::SetLight( BOOL bLight )1 O( q# d7 T! v4 N4 G0 J
{
# \, _" d: H' G7 X) s$ N        //ACE("SetLight %d \n", bLight);3 [& T; v6 [8 ?# D3 P) R- V
        : U2 R8 X6 [- ^0 r6 [, Y# g1 V. O
#ifndef  __WORLDSERVER
: m2 @( Q2 Q! k. s% C( `        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);1 m' A  z; V0 ~
        CLight* pLight = NULL;
+ g! t8 ~- ^7 H* q2 N* }5 B5 l/ s* C% L1 ]
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );0 g: D3 f) K; Z% G. ]( b5 P5 y0 x/ u7 V

9 j4 V" t% n6 ~6 _1 |# L' @( E9 Y        pLight = GetLight( "direction" );1 S5 T/ M9 A3 d

, y9 j- i4 Y; e; |' q#if __VER >= 15 // __BS_CHANGING_ENVIR
7 V3 i0 _8 ^% D, ^( k* u        if( g_pPlayer ){2 H+ U9 T  T3 ]
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
; f3 U& S5 P, A0 C                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!! r# V- a' T3 U, B
                {# O. B7 s8 V( j" a, j1 P
                        if( pLight )
* m+ I4 W* `1 G. _. C4 m                        {$ C. K% C6 W# q, b: b
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
1 h! _+ n; J- C                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
! H% h- {0 V7 V* R                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];% w# m: ^& Z! ~* y5 I1 C5 C. _

% T2 R3 X- j; V. y                                pLight->Specular.r = 2.0f;2 ?8 m. @! Y- c
                                pLight->Specular.g = 2.0f;* E/ [4 ]3 H. l8 b7 @+ W
                                pLight->Specular.b = 2.0f;7 \% @! y& w& h$ v, U
       
- h4 }: D$ x& C. |                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];7 W; m3 S" ^7 g+ F6 P5 q
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
  y& G* i+ S: o                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];- y' r+ v1 t' `( q- s7 y) j
        * S7 ?) U# ?5 L' G
                                HookUpdateLight( pLight );
5 t8 c7 U1 i7 h: Z$ x  Y6 H# D  k0 k# [3 m4 B
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );0 K5 O  x5 g7 j6 t7 c6 z: v
               
* K' y9 J* S# |, p% K8 W                                pLight->Diffuse.r *= 1.2f;5 D; W# I4 a. @
                                pLight->Diffuse.g *= 1.2f;! R: }  |5 H, T  B7 L
                                pLight->Diffuse.b *= 1.2f;
' N3 G/ T2 i3 x4 }# P" I" J
& P" X  L2 N0 L. K                                pLight->Ambient.r *= 0.8f;; a) `) [; H; Y' Q7 n9 G3 N; o, J' S
                                pLight->Ambient.g *= 0.8f;
7 o# H3 ^4 Z: @) F8 o/ W                                pLight->Ambient.b *= 0.8f;
) k# l# l# S6 ^  Q; G( i       
, r5 B% F- _. N7 `1 H5 G6 y                                memcpy( &m_light, pLight, sizeof( m_light ) );
+ i% Z- O0 _& I+ X5 {. y) J5 o: E$ L( X9 c: x4 j- d5 P% A$ Q
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);( N8 T6 v- x/ U
                                D3DXVec3Normalize(&(vecSun),&(vecSun));" y, ?( T( l! \: y
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
! t4 Q; F6 K* ]  y( M- u                                 pLight->Appear( m_pd3dDevice, TRUE );
) h+ d2 u- t8 U5 v) C               
( W5 }' _% L; S: M% N( m6 `9 N                                DWORD dwR, dwG, dwB;
/ J1 Z8 {+ p( I; [/ M                                dwR = (DWORD)( pLight->Ambient.r * 255 );
" e+ W8 K: u5 e% X, q6 A                                dwG = (DWORD)( pLight->Ambient.g * 255 );
( |0 q2 `! X- m# ?) M" b2 T                                dwB = (DWORD)( pLight->Ambient.b * 255 );, }' e( z$ ?" ?( Q  w
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
: }& t8 \% o4 R4 q/ D0 t( W. F1 G2 ^                        }& L# i* O  b5 f- H9 v- ?& B
                }8 R# D* Z6 @+ u  K. _( d, D  C6 g
        }
$ b4 [: o* E/ [6 g" {* a6 ?( u1 y2 ^        else1 z0 n9 [1 [+ g' Q1 H1 a* m9 x
#endif ; X7 f3 \; X- Z6 K
' J7 {) x9 r* ~4 }
        if( m_bIsIndoor )
" O  T, l, m1 r& B        {, u- p/ Z4 R) k9 D5 @8 Q) C" n
                if( pLight )! N# F& N3 T; ?- X
                {               
4 K3 }# A2 H: ^* p                        // à??μ oˉè*
' @# S$ v: _1 S  b0 \, J                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;& p8 n( r' p0 ]/ R$ E
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;9 Z3 z. E$ y/ ]7 l5 Z$ [- q7 \
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
4 C# [) \( l! g3 q5 v( j6 q
  F; ~1 {7 s+ R" R  @; w3 |# z9 {* [9 q                        // oˉè* ??à? ( Q4 t. S& H  j, Y
                        pLight->Specular.r = 1.0f;
) n, B+ H  b/ m                        pLight->Specular.g = 1.0f;
' E+ s# f+ X" k- g1 O2 ?                        pLight->Specular.b = 1.0f;
7 H" V- L  p; O) ]* F                        // àü?? oˉè*
9 T; K# V9 Z3 z& W1 k! p                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;, v  v8 d3 [3 r3 P# ?4 g
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
# O0 O" u; {! h# H' y" H4 m$ m                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;5 S4 }% ?3 Z0 y3 C7 i  q; F

, B  _2 P. z, G, C! P, R( _                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 J% m! D7 V( G+ o                        {; J7 O3 B1 o: [8 A9 b. ?0 O
                                pLight->Diffuse.r *= 0.6f;
8 M) m) p( n' q1 a$ r5 M                                pLight->Diffuse.g *= 0.6f;
7 y8 x' q5 b+ k" A% v5 G1 t; A                                pLight->Diffuse.b *= 0.6f;
+ k! X- V. C) M                                pLight->Ambient.r *= 0.7f;
: }* \7 C& l0 U2 G0 ?4 U                                pLight->Ambient.g *= 0.7f;% B6 \5 D5 Y) T% ]! Z% n
                                pLight->Ambient.b *= 0.7f;
; Q7 `% Q' G+ o& {, L, K3 L5 X                        }  D; l4 [# O$ C. h. S) c" y
6 R$ |- q2 X* r3 C0 W
#if __VER >= 15 // __BS_CHANGING_ENVIR
. b8 O4 @$ L! S0 _9 q4 \                        if( g_pPlayer ); b, B* w5 g' V
                                HookUpdateLight( pLight );* T3 F6 o' l1 f( l) `
#endif
! _  w- T$ \( H0 A" p                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );7 g2 P' u9 f, C& I  _

; q( S' H# C) H  S8 U* f                        pLight->Diffuse.r  += 0.1f;
3 ^9 S$ u9 ?7 X% f# f1 a4 I6 _                        pLight->Diffuse.g  += 0.1f;
' `* m$ w3 y2 _1 s                        pLight->Diffuse.b  += 0.1f;) I$ h" C: D# \4 Y1 z5 m* i
                        // oˉè* ??à? 3 V4 B; K" D0 V! X! G1 Q
                        pLight->Specular.r = 2.0f;
/ @9 J  G" s% |+ i) R                        pLight->Specular.g = 2.0f;( `0 P# h# u3 ^9 |% q4 z# q
                        pLight->Specular.b = 2.0f;9 }8 @- j  v$ K4 K
                        // á?oˉ
6 K( h/ h! r  d; a5 G                        pLight->Ambient.r  *= 0.9f;
$ ?8 @, j& a( P0 F# V0 \                        pLight->Ambient.g  *= 0.9f;
3 P) i4 L8 R. `% z  u4 k; l9 G* U                        pLight->Ambient.b  *= 0.9f;
' Q6 y0 _. B; a/ {/ q7 ^( w, y  q/ Z% ?  U, C: O
                        memcpy( &m_light, pLight, sizeof( m_light ) );
! z( {- q* z; p3 A                       
  N- ]/ e9 R% t                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );: J' _/ [. r/ S& M0 j. m% s
                        pLight->Appear( m_pd3dDevice, TRUE );- O: N, x' B& d, Z. Y$ s9 o1 d
       
; y; |% `  {, ~                        DWORD dwR, dwG, dwB;. Q2 a& J- t3 z8 ~/ i* j' a  Q
                        dwR = (DWORD)( pLight->Ambient.r * 255 );% W9 K( @* u' @0 h
                        dwG = (DWORD)( pLight->Ambient.g * 255 );: w/ i# t0 P2 L' k
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
( l; F$ J1 _2 b+ J+ Y8 Y                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );: r* N* d9 }( m3 G/ L7 l
                }: @% A2 `, Y6 U% c
        }7 V# x1 Z& J) w
        else
, j$ a8 g# A# d" a, p5 ?3 l- ]        {5 n, y3 t$ k/ C9 q$ G+ A& A
                if( pLight )0 \' p% K! g) J. g
                {) N5 m7 a3 P/ }, f* O
                1 C. p7 a: a" d, d
                        int nHour = 8, nMin = 0;; R& e! e- |) ?1 O1 T1 f* x' H
        #ifdef __CLIENT
1 G) ]+ Z% Z# r                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
, i# [' q. e$ e                        nHour = g_GameTimer.m_nHour;7 w& G5 G7 g/ \+ s  C, M1 ~
                        nMin  = g_GameTimer.m_nMin ;
" k) P* ^8 ]( i/ [        #else2 F+ d0 m1 v0 c. ~
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
9 A7 b5 @0 n' `- f& ~                        if( m_nLightType == 1 )- q. c0 k3 c3 h7 D# w
                                nHour = m_nLightHour;
' x4 Y: R6 G1 `        #endif
& h: A* {& s) Q                        nHour--;
1 S1 \0 M7 r- C7 w4 r  Z! K6 P: N                        if( nHour < 0 ) nHour = 0;  \4 a" G) d" i5 J8 v
                        if( nHour > 23 ) nHour = 23;1 p4 J( B# _; U. ?: ]

4 s' L- t- @: J( F& W                        //if( m_bFixedHour )
0 K; I1 z; k, |7 g                        //        nHour = m_nFixedHour, nMin = 0;
2 c- K' i0 w( J/ o                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
3 |- |% o, Z" W6 @9 a                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];* M7 H6 f4 T  F7 S* P; C. Z

' e# h' [- a& ?8 f8 d# ]                        //m_lightColor = lightColorPrv;
  ^# z* e# D6 r  l                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
. K0 {0 g7 S, O. B( N8 N- C                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
. W# P/ B) I% L                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
) t! x8 p) M8 \: |- F/ K6 u  e0 q                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;* k7 H$ g# M. l% P6 g3 V3 E4 _' ^7 S
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
& x0 Y$ r( u1 [3 a                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;+ v1 N* N/ a, f; |8 [+ \! P# y6 h- J
                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
3 Z. a2 k% m# d# n+ H5 Q6 ~" u1 A1 A
                        // à??μ oˉè* * F$ {+ _( U# A) F3 k$ N
                        pLight->Diffuse.r  = lightColorPrv.r1;8 \* E9 S; v  F) s+ |
                        pLight->Diffuse.g  = lightColorPrv.g1;
: V6 ]- J; h7 \8 X- F                        pLight->Diffuse.b  = lightColorPrv.b1;
/ I2 v* R6 R8 x1 r+ z                        // oˉè* ??à?
0 a0 A# ]1 o+ K4 m% c1 d                        pLight->Specular.r = 1.0f;
* I! k) S+ Z( j) ~                        pLight->Specular.g = 1.0f;6 T9 b. _2 ^" r) O+ P* N
                        pLight->Specular.b = 1.0f;
8 E% q" R6 I$ t. w* n                        // àü?? oˉè* ; s2 b" Q% j+ t2 R1 U3 {
                        pLight->Ambient.r  = lightColorPrv.r2;+ w) r) J' G3 V8 q2 k; Q( [
                        pLight->Ambient.g  = lightColorPrv.g2;5 q" R5 [+ R; u: o& k( [6 g
                        pLight->Ambient.b  = lightColorPrv.b2;
2 d2 W+ V* P9 F1 e1 a! _) o0 r1 h: D# Z
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.; a1 {' f' W8 d! A1 w) Q
                        {
' \  V2 g- I1 `                                pLight->Diffuse.r *= 0.6f;
1 _0 u0 a2 D% O" k* `/ ~# F                                pLight->Diffuse.g *= 0.6f;# ^$ r  t; t; d7 ^
                                pLight->Diffuse.b *= 0.6f;' M& L' ]& w2 K* `0 w
                                pLight->Ambient.r *= 0.7f;
& n) M9 P3 Q- z3 K                                pLight->Ambient.g *= 0.7f;
# p: K  v+ ~" H$ u1 Q) d                                pLight->Ambient.b *= 0.7f;: A9 B( `% R" U/ M* X
                        }
9 z2 d- G% D$ [4 x! ~5 H+ g                       
" {# x2 n: y2 L2 B; i#if __VER >= 15 // __BS_CHANGING_ENVIR5 ~" L9 P' q6 f. s; W- I6 [: H5 M
                        if( g_pPlayer )
+ _6 a: J# @- S                                HookUpdateLight( pLight ); " j2 @, N/ E5 e0 D; y1 \
#endif
: F4 j- O& g6 t% k                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
; ^. v1 x7 l& _7 n& i
# f- a/ ]6 _' l; Y" K#ifdef __YENV
4 W1 D7 B+ x- U: Y                        pLight->Diffuse.r  *= 1.1f;
$ ^5 e! \* Q' x' W                        pLight->Diffuse.g  *= 1.1f;4 h" g  O: z9 }, ~$ \2 c- }" [9 e
                        pLight->Diffuse.b  *= 1.1f;$ P  o& B' v+ Z3 t) U( O# N
                        // oˉè* ??à? , |8 W9 G9 F, B7 c  i2 U' ~
                        pLight->Specular.r = 2.0f;$ S6 |% Q3 U7 D0 i; n- h
                        pLight->Specular.g = 2.0f;
' A2 m' J- y$ J; c# l# C                        pLight->Specular.b = 2.0f;- _3 D" x. ?2 x. ?5 l, _; v
                        // á?oˉ
9 ~0 c- Q* S" w6 w! w# e; M# W$ T                        pLight->Ambient.r  *= 1.0f;
8 K0 w! h' c% Z- l7 E8 x# G' ?                        pLight->Ambient.g  *= 1.0f;: l$ L7 _% p8 `0 @- `% [
                        pLight->Ambient.b  *= 1.0f;
. W# e$ Q) |2 C/ t#else //__YENV
* l+ w1 }+ N7 _6 V; @                        pLight->Diffuse.r  *= 1.1f;
5 }% L7 F( G. Y4 }7 |% g3 ]0 U2 {                        pLight->Diffuse.g  *= 1.1f;
  E4 M9 ?  v5 I  }& z) a7 u  ?0 A9 D                        pLight->Diffuse.b  *= 1.1f;8 v, F/ r1 s% _+ Q$ x1 x
                        // oˉè* ??à? * \+ a+ b7 J, z* n( F, h
                        pLight->Specular.r = 2.0f;1 i0 |8 i) N( b/ S& A9 d+ T
                        pLight->Specular.g = 2.0f;# B5 d- J2 T7 W% A4 s; o2 ]7 U" W8 x1 g
                        pLight->Specular.b = 2.0f;4 |% J7 |/ v$ A0 b% V  g
                        // á?oˉ / e5 V' \8 I+ k; T8 o9 F
                        pLight->Ambient.r  *= 0.9f;/ ~0 g! E$ I. d+ A
                        pLight->Ambient.g  *= 0.9f;
6 `+ L- E% x6 _% l9 C7 @                        pLight->Ambient.b  *= 0.9f;. j9 P8 r; K2 O; I: i4 u. M
#endif //__YENV ; V2 z- [( c* q! H: `  i7 K! `
                        / _. B6 ~4 j1 ~
                        memcpy( &m_light, pLight, sizeof( m_light ) );
% a- u9 k! v# j0 @! A2 @                        / X, v  H9 t& t2 P
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);2 y$ T5 d9 `/ U0 V. f: O$ L
                        D3DXMATRIX  matTemp;
1 a( L6 C+ ~" ^$ r                        static const float CONS_VAL = 3.1415926f / 180.f;
% ~5 S) }1 V+ \, i# J& q0 z
- {7 P1 V3 _* v' v7 I6 g                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);2 C1 }: A1 m1 F4 }" Q( O
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
% {) v' j) b7 V                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); " J' t, s, y7 i2 i. X2 t
                        pLight->Appear( m_pd3dDevice, TRUE );- E% z1 k) \$ m: Q) d" w$ l; f8 ]
  T0 [( a* J7 I: r. z6 B1 E0 R2 R6 h( ^
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
! y. f2 @4 |" ?                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
# M/ L3 I* i+ U- V  a                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
, C  k- `3 E- D. v2 X8 m& \; ?5 ?' E0 H. p* `
                        DWORD dwR, dwG, dwB;' ?; r# s+ Y% g. j) c
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
1 ^) g" N! q# H4 I2 M7 d                        dwG = (DWORD)( pLight->Ambient.g * 255 );6 ?2 z6 A* o4 k+ x- a6 \
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
9 u6 ?8 d9 O2 ]) E6 G                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        9 b' i1 H. K; o& k# r0 L0 L4 K) f
                }& y, t# A9 r6 d5 E3 b9 l( }" q$ E
        }9 A6 Y4 c. m7 G  I
" a% j1 W: m% @
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
7 d! O" E: N) S        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) );6 j, j2 p, y1 u# N5 J
        ::SetLight( bLight );
4 s5 `0 u; b; W' R7 a/ E1 w
' @; u. [3 e5 j8 t5 O6 X$ C6 T        // ±ao? ?D?í???ó á¤à?
4 v% K& q; A4 c8 g% F        m_pd3dDevice->SetMaterial( &m_baseMaterial );' l5 n7 H' U/ ^. r1 a
       
4 V- j$ p1 _! c+ T#endif // not WORLDSERVER- W5 Q& j5 U$ X6 O) U3 ^# m
}
' Z- S7 q- u' W' r2 |: g! `并更换- q% `3 i' C% u
Code:! O  ^. |0 ~. {. b) a+ m
__FLYFF_INITPAGE_EXT' ?1 i* `( W6 i0 [
定义4 }" d8 }! r) O7 ?, j. e
" S& }) D% j. h

" q# N2 w9 i9 c* A5 x: g
$ j8 U+ A4 D. N6 y9 A. R. J# g1 [% E, w4 o0 H
现在终于删除我的狗屁加速...; b1 `* j* F3 m& y+ T2 K
2 K* `( z7 D% I5 O& H1 A

! S  s" c5 E" R' _, F5 Y% m
9 k# g) e' X1 R+ q. l( p2 S/ t




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