飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:3 T" a! A3 e3 Y
尾翼:2 d6 ^$ g& B5 l
0 ^2 C* p/ h, n8 o) i
代码:4 i' {, N6 q: ]1 i
CWndAutoFood::CWndAutoFood()7 L$ p6 G* N1 T  m
{
# l* H! f% j1 m" e        m_pItemElem = NULL;' J. O  ]- x: D4 R- \
        m_pTexture = NULL;/ T6 T; X4 d/ C; L) C6 P, q. @* T4 B5 C
        bStart = FALSE;
0 v0 F4 j- A: D! ^6 [0 W) X1 J}- m2 Q6 I) n2 Q5 D, K1 N5 h/ F: l; r( s
- }0 e3 @0 M3 r
CWndAutoFood::~CWndAutoFood()3 q% N* I# ^( x
{
0 I/ ?- X0 P' w! b/ ~0 i: L( d8 [        AfxMessageBox( "AutoFood ist gestorben " );
: L/ ]4 R9 ~6 f+ A}8 b+ _( i- I/ e$ U
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType ): _+ Y9 k+ i0 X0 g  Q# `
{3 D3 i3 o  j4 c/ V/ U
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
+ M3 d- Q) j4 @! ]$ e4 B}
! P" }, w9 u1 t( c7 J' M/ P
( L. V& a" b& I$ e  IBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
( _8 [( O/ m  U+ _% d& W{3 p* Y" P1 Z# T% g6 ]1 v
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
5 D& u3 d( C3 [, d+ y0 Y" N        CRect rect = pWndCtrl->rect;
5 D/ q' }: E2 x$ z+ t& i( W        if( rect && rect.PtInRect( point ) )
( i* }% V- h% C        {
7 p6 @: z4 O! O9 [/ i% H, d8 O- N4 |                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );. i5 c; w0 P- {0 V8 D+ O) m
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
# L  c7 ?+ v; z% \7 x                {
+ [" R, Q% d" s# G# g1 O                        if( m_pItemElem )
( ?5 z2 Y5 |7 n: E                        {
3 M9 [7 `4 M3 t3 o9 P                                m_pItemElem = NULL;( n/ ~8 [+ R1 y
                        }
/ T; W: |. \6 Z7 |& e                        m_pItemElem = pItemElem;
4 q6 ]' O7 r/ r& A' u( r# A                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
& ?# A+ h% t7 ~  x                }else{
) z; X" y$ `) u9 G                        SetForbid( TRUE );/ ^* j, t( n& |' l
                }
6 z  \  M+ C, K: v        }else{) N8 W, c, O# J3 h& a4 y
                SetForbid( TRUE );3 N" d& D/ L) y
        }6 }: O1 t- ^! A
        return TRUE;
% J$ M' v" O6 D$ h}5 {/ G, W, ~6 Z- l. p0 L7 _

9 U9 J3 C! i$ f+ C% v9 ^BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )' Q5 e3 |4 `. \& }  O
{
) S6 C) _1 d' x8 C1 ^        switch( nID )' e. ^/ k: M0 p' C* T' H1 Y; [
        {1 e$ v9 ?" R$ p5 r
        case WIDC_BUTTON3:
" F% `' S' h3 v, w% P& k# a! N# k  @                {+ J& O2 m" i$ n; @& I/ ~0 S0 N
                        bStart = TRUE;
+ r5 h3 i3 n" m8 a3 I                        break;8 C1 z7 c( o" I. _
                }
+ _/ \1 n! B" x  V. w# r. U        case WIDC_BUTTON4:8 b) S: p2 J. c( D! D5 c" R( O
                {5 ~& w3 y3 s% b5 o! G4 m' f0 _
                        bStart = FALSE;
& T8 @: M( ?  M* A! u: T3 r- o                        break;
' G0 x. t- c3 G                }
, K+ x, g: `0 `# ~4 p, f        }# b5 f2 V) G# e1 v% T+ ]
        return CWndNeuz::OnChildNotify( message, nID, pLResult );& |1 K4 l+ ^! c" {# G
}       
& |' N: i* n, \& H; tvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
: j& S4 w" y* }% F& J* U+ ^. G{! p8 `4 w5 l% v6 ^  m/ z9 y/ {
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
0 s; F+ b# R7 A3 c        if( bStart || !m_pItemElem )
- g6 w8 ]2 i$ j6 }( O        {. Q2 B5 p; C1 h9 c! A
                pBtn->EnableWindow( FALSE );# m/ ~* }& o( A. Y% D
        }else
4 R* G' T+ M, Z' p                pBtn->EnableWindow( TRUE );5 D: i9 o- o* K: p" H" _0 C
        if( m_pTexture )
: D% T8 A  ~& {        {- \0 a' ~7 n! ~6 W
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
' X1 j% @0 I5 x1 Z& @2 G                if( wndCtrl && wndCtrl->rect )
# q' {9 l: s5 X1 r- j) Z                {: U& |8 |" c+ E3 f( B! `
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );; b7 S, z( t* E5 t4 `( D
                }
) e. y" F# G+ K        }( m, x+ X0 _; l0 m
}: k' }% B6 b% D! B% L8 F

2 G- C! q5 g! a$ kBOOL CWndAutoFood:rocess()
% a" {# t" [; K& n4 g{8 g7 C7 D+ P+ b- q+ l+ Z4 B
        if( bStart )- ?  f$ C  ~3 S' g/ d" Z
        {  y! v# d7 Z9 R, |+ |  L& @
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
: L) ^; v2 h8 g: ^                {
# B8 J0 D% M9 Q* M                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )1 @/ f: \6 H$ }( i% v; k$ D; W
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );- G) p9 n  ^' `
                }else{; w4 L0 ?: H! D: E! u  I
                        bStart = FALSE;+ r& t' W. Y6 ^* o5 N3 S
                        m_pItemElem = NULL;
( ?4 ~5 \: e; c/ @+ T                }
- e  p6 k$ O( ^" ^) l1 U        }( F8 e' c' m3 v7 `. P6 H
        return TRUE;
* `' O1 ?" F8 i7 G}6 |. A4 @8 N- e& a3 T* x/ Q9 u
1 f7 r; r& Z" k' l: S6 T( q
登录视频废话:
) Q& J' B. `& R" ?0 r& ]( u; ]! ^! W  ]尾翼:7 m$ c+ i+ L* c

9 U$ Y" I" D3 U) K6 C1 X* g: t代码:. h+ C: C: A# h. u
7 e1 Z& W$ l- T
void CWorld::SetLight( BOOL bLight )
8 i( U. W. ]: Y6 B" z9 Xdurch: ?3 j! J  ~3 A( v! g$ d2 O
Code:: c' p7 [) Z. q6 w$ H
void CWorld::SetLight( BOOL bLight )
2 o. e  n1 p( T' V- |0 X/ F* g{) u% s! X4 [% `3 Q4 h
        //ACE("SetLight %d \n", bLight);
# `& `+ |0 K+ D! G! R       
7 T) N& \' N6 y4 n7 e7 O#ifndef  __WORLDSERVER
: ^4 Z1 s" D0 F  o        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
8 Z8 _- `. {4 }1 e% D        CLight* pLight = NULL;9 Q3 q) X- |! D! Z# y( @

7 r# b7 L) L, V  Y/ X9 @        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
% Q, M( v" A5 \
, X: u! z& u/ X2 |3 o6 e0 C        pLight = GetLight( "direction" );+ Y& b  n* c5 h; F* }) O
7 J. b" b  ~2 M4 J! N& G0 }
#if __VER >= 15 // __BS_CHANGING_ENVIR( k( ~. D% B3 H& g: H8 I
        if( g_pPlayer ){) d9 N1 ^% Q9 j, `1 I0 x" T2 H
                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
; B1 ^+ y/ V3 f  k# v3 t! X. X                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!+ E: L" R5 K) w& W- H5 Q
                {
+ |: ^1 N% X9 `# `, D                        if( pLight )& X3 J% X0 R) v5 l; W2 l. E
                        {3 Z5 a1 u3 a  }6 o% v
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
6 s8 V( w- x/ V% E% g8 u                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
# ]) e9 |3 g: I1 y                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];  Y( X( R$ b+ X# E4 j
# f9 T, f0 o" W$ G6 X6 W
                                pLight->Specular.r = 2.0f;9 z  a/ R8 X9 q( Q
                                pLight->Specular.g = 2.0f;
& G7 d! A% x  |9 h                                pLight->Specular.b = 2.0f;% [. u, R/ o7 E. i( E
        * J7 B' _, A: g
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
% j; j+ F) H. ^) q                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];5 p( @3 m' u  \, [, W5 |0 `
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
: i# |0 `# \- S# [: h        $ k0 C; U: c& k; H( P6 H& ]
                                HookUpdateLight( pLight ); 4 D7 A. H/ @# @4 z9 A6 F
2 r+ K8 `% L; R9 P  x% w
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
& R% p* H- O! n                , F8 w* ~8 i/ `' W
                                pLight->Diffuse.r *= 1.2f;6 k  U, ~  l- v+ g- V4 P
                                pLight->Diffuse.g *= 1.2f;
) f+ a) e) }1 ~1 {                                pLight->Diffuse.b *= 1.2f;
( A: X6 @/ W4 n3 V" i
% O7 b: x6 `2 N; I2 b                                pLight->Ambient.r *= 0.8f;' y2 k* Y4 o. }. ?" V0 @( u
                                pLight->Ambient.g *= 0.8f;& a2 G+ @: L4 s6 e! O% Y+ `: a& O
                                pLight->Ambient.b *= 0.8f;6 P  U8 O# S! Z/ B; _% y
       
6 U7 W+ |6 Y( p, i) y% U; x                                memcpy( &m_light, pLight, sizeof( m_light ) );
& D8 s# B2 X8 O; m( c3 g# l3 H: w1 R& w
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);7 }7 M* _# T! ]$ a" ]! i/ N4 X  i
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
8 O+ `+ y7 M4 O2 z                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); ' F$ l* ~' Z5 L  L% h  y
                                pLight->Appear( m_pd3dDevice, TRUE );
) O3 P/ [, h' F. g' [7 ~. h2 S               
# V  |" e; e- o0 Z                                DWORD dwR, dwG, dwB;
/ ?" A! J/ a$ g                                dwR = (DWORD)( pLight->Ambient.r * 255 );
* _! e- k; T! I- d                                dwG = (DWORD)( pLight->Ambient.g * 255 );3 s, n# i/ d7 A0 L1 z
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
7 W8 L+ C9 Z; Z9 T                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
- I. B8 Z, h! G, {* C3 P                        }+ N3 |' O; A2 {
                }8 u  z. r- y5 d+ Z: m* U0 D1 j
        }
. N8 b! N% D% ~* U, \9 h! P0 s        else7 Y5 x+ @; J6 {9 [4 {% b  K
#endif
% C5 N9 {6 T9 z3 B. p7 M2 \5 d0 _" \! N
        if( m_bIsIndoor )+ Q; x  f- v" V$ L& x) Y  |
        {
+ G& H# ~! H+ T# _$ i9 Y                if( pLight )+ u1 s7 \! y' H8 w2 R, Y
                {                . a% p" h( c' e' L5 L
                        // à??μ oˉè* / n, z3 K: x8 w/ ]
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;, c# O6 u$ r+ o8 ^: p# I; n
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;) X- i& F1 S1 \+ |
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
" R7 }0 [3 U! q* ]7 }+ B, C; p! o. r1 H- T, S* ^: n
                        // oˉè* ??à? ( Y6 f3 |/ F  \: H  {
                        pLight->Specular.r = 1.0f;
; ^. X1 v* T$ Z7 D8 N7 W# {4 T                        pLight->Specular.g = 1.0f;1 N; n5 s% c$ c. l4 A
                        pLight->Specular.b = 1.0f;
4 f* u2 D1 r& T# A4 q                        // àü?? oˉè* 3 ~2 l' u2 o7 Y) L* u
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;8 r5 ^: @& i4 ^3 j" Y4 {
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;: }' X7 F1 F7 B4 W- O- K
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
9 y) `6 [, z; f7 T
  q9 t: Q' ~2 C2 F5 ]# T* I                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
# N& O) N: A, J5 H                        {( v: e8 @- {* y1 x. `  H
                                pLight->Diffuse.r *= 0.6f;
; L9 |2 n3 O3 C$ i' H2 T+ \, h                                pLight->Diffuse.g *= 0.6f;
% K9 Q1 {4 S# g2 B0 f% ~  Q                                pLight->Diffuse.b *= 0.6f;; |0 }7 m5 l8 q5 @, X+ _9 L; r# l0 n  j
                                pLight->Ambient.r *= 0.7f;: Z8 Q2 T, O; m& F' J
                                pLight->Ambient.g *= 0.7f;: j1 Y3 w* w* A" Z8 W6 g
                                pLight->Ambient.b *= 0.7f;
6 M% K) S! M0 b- ^1 B0 q7 m+ g                        }- {( h6 h2 u& x+ K2 m

" X' }6 F+ V/ Y3 |7 n! Y#if __VER >= 15 // __BS_CHANGING_ENVIR2 l! [* Y2 r) G6 p
                        if( g_pPlayer )
* {  Q- b& x. [# i, N! P3 t                                HookUpdateLight( pLight );
, s( X3 x9 A9 @8 D+ B) I* u#endif
( D" Y0 U( j: J5 V4 T- n: M7 i4 a  i/ V                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
( ?3 }) S5 u, k6 ?
! b2 g% r( F3 T: c, V9 t4 {                        pLight->Diffuse.r  += 0.1f;+ }2 s1 r# Z$ b0 ~
                        pLight->Diffuse.g  += 0.1f;. B6 z. p* t% b1 n4 d' s1 Q' _+ G
                        pLight->Diffuse.b  += 0.1f;
$ q& `$ t, X% u3 `6 H6 N# D                        // oˉè* ??à?
/ z1 r% r* [' e( D, ^                        pLight->Specular.r = 2.0f;4 J! ~, v' y/ ]' x- q
                        pLight->Specular.g = 2.0f;
* v/ `: \: |) f# Y1 N                        pLight->Specular.b = 2.0f;7 D$ c% {$ C' Q' f' P9 Y: @# P
                        // á?oˉ
4 K" A' R% L0 x                        pLight->Ambient.r  *= 0.9f;
2 c' H" b0 H3 J" u% C9 E. w                        pLight->Ambient.g  *= 0.9f;+ ]3 Q, z7 R& s* A& n8 z7 C9 Y, M
                        pLight->Ambient.b  *= 0.9f;0 o6 Z3 E5 f- f% i* X! u
  @) O6 c" R  T0 V  E* q6 q
                        memcpy( &m_light, pLight, sizeof( m_light ) );
) Q  X. P; Q% h                       
: s0 R* K0 S; G) S4 e7 T                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
5 Y/ |& Y9 G1 O+ M( f                        pLight->Appear( m_pd3dDevice, TRUE );9 }, Y3 A! Z+ C2 K* {" v; u
       
4 g$ y1 G% r- |3 b                        DWORD dwR, dwG, dwB;
4 v7 c, d. @9 k$ }' i2 F                        dwR = (DWORD)( pLight->Ambient.r * 255 );
+ b& o& v& f% P                        dwG = (DWORD)( pLight->Ambient.g * 255 );
0 X* a0 z7 N6 v* `: ]* F$ J* y5 U                        dwB = (DWORD)( pLight->Ambient.b * 255 );1 f4 b4 Y  Z5 Y& t1 P
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
" W& U  z6 B( c# P9 ~5 A                }
2 v* Y3 l1 p1 h0 |8 F* u, J        }
7 M, a  o2 q4 W3 J$ u        else$ ]- |7 y8 b. o1 i3 j
        {' A2 {1 A! ~7 v4 T3 z
                if( pLight )
" N9 R  F9 w# w3 D6 F) X                {( b6 v( X$ h2 }6 d+ s
               
1 j- \: S9 {3 @& a                        int nHour = 8, nMin = 0;
# X2 @9 {- m5 l        #ifdef __CLIENT
0 A& g3 Q, D( {' ~1 |                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
, m, x6 U! J" ?, f9 Z1 c                        nHour = g_GameTimer.m_nHour;. I, c4 ~! T3 y
                        nMin  = g_GameTimer.m_nMin ;
" L5 P; V. }/ G, p% s; N        #else
6 i  y, ~3 b8 L, l8 R  \) j                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
' q5 t* ^! N1 H% o# D8 j6 F                        if( m_nLightType == 1 )- Q% J% L- ~7 O1 J+ k% @& h
                                nHour = m_nLightHour;
$ e  I1 |2 I% D+ O* V/ `" m( R* U        #endif
. u9 |4 o6 d0 ?6 @# B) `/ F                        nHour--;
0 j  q( G. a2 J+ V/ r9 P6 ?                        if( nHour < 0 ) nHour = 0;; t# w4 b& |* y- r2 R& u$ F. W3 U
                        if( nHour > 23 ) nHour = 23;
/ [+ \7 }: X/ U% s0 X6 N1 A  ]0 u
7 v- i  R" S! ^3 _. v/ G+ Z                        //if( m_bFixedHour )
0 i/ }+ M& U8 a1 ?: g% `* [                        //        nHour = m_nFixedHour, nMin = 0;+ @1 Q5 \# `# h% {# s
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
" J7 }! D- F4 h1 n% S) S                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];' w% D) u5 u) N  S: V3 d! C) a# _
# i  ?' I+ f2 a
                        //m_lightColor = lightColorPrv;
/ M7 P7 ]$ \) m/ _3 `                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;# i/ n$ G" p' z/ L8 {7 m
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;) N, [; I" I5 R- G2 z. L- X) X( q
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
% h  g* J# L( J- d* H                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;/ e: t& Y" a/ O& H% l1 |
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;# f3 v, y" n9 h7 h1 ~. _3 T1 M
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
& |7 t1 R1 d& o) W9 w                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)! ]6 l3 e2 K0 X! q  |/ `4 {7 s9 X
: D" x3 F1 H- v  Y5 c% V2 p
                        // à??μ oˉè* ; I- Y+ J. \3 q$ Q. y
                        pLight->Diffuse.r  = lightColorPrv.r1;
" L4 ], Y7 S, X' b8 }                        pLight->Diffuse.g  = lightColorPrv.g1;5 S( e" ]2 A9 Y* u7 b
                        pLight->Diffuse.b  = lightColorPrv.b1;( i1 R8 D% A7 a
                        // oˉè* ??à?
1 h+ c  T8 p- @3 }0 Y                        pLight->Specular.r = 1.0f;
( @! v1 u$ a! e8 J                        pLight->Specular.g = 1.0f;
) h  R( E" x1 U4 O2 ]* R2 R                        pLight->Specular.b = 1.0f;9 \' R8 y/ D5 f" i+ o, A
                        // àü?? oˉè*
* Z* j5 N0 t, x                        pLight->Ambient.r  = lightColorPrv.r2;! c7 q+ g1 U: j& K# R: Z
                        pLight->Ambient.g  = lightColorPrv.g2;- a2 y, [5 m! z9 _
                        pLight->Ambient.b  = lightColorPrv.b2;
0 O; R( d1 C% W/ w( u0 C
% ^8 `; L  d* z                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
% ]& l( N$ o! [. y# J6 r( S                        {: @, ?: m% O+ B, o
                                pLight->Diffuse.r *= 0.6f;9 G2 K- I+ A7 {& N
                                pLight->Diffuse.g *= 0.6f;! L& y, f# w, x( d8 O7 k
                                pLight->Diffuse.b *= 0.6f;! Y4 J% |- a) b# W  R) p$ A: M( G+ o
                                pLight->Ambient.r *= 0.7f;
  T: K9 P1 A' a6 J5 `/ \" T                                pLight->Ambient.g *= 0.7f;- D8 S7 W- L( X
                                pLight->Ambient.b *= 0.7f;
, J6 o$ F  |+ m4 A2 H2 ^8 n/ [. Q                        }
/ W8 N5 `) o* T( q4 l) B' X                        1 \) A3 @5 c3 |- r. o& ^3 a( E
#if __VER >= 15 // __BS_CHANGING_ENVIR
" X9 n) }1 m# b5 H/ }                        if( g_pPlayer )
% n7 z9 K2 b( ~- l6 z+ d$ @                                HookUpdateLight( pLight ); 6 O7 m5 L3 x$ z5 E6 L
#endif0 Y' F3 d1 m  E- m, k& Y( ]" E
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );' H  q) ]9 K8 P+ c# A1 \
2 o+ z! e: }+ K5 x3 N* @
#ifdef __YENV
1 D! ^/ p. V) @$ d" i                        pLight->Diffuse.r  *= 1.1f;
- d2 C! t& H: [: m: a                        pLight->Diffuse.g  *= 1.1f;
' V% Z) M# h8 B4 P4 U2 {                        pLight->Diffuse.b  *= 1.1f;) D. u) _4 ]0 S
                        // oˉè* ??à? : Z8 O- z/ J" ~% @& u) l% K
                        pLight->Specular.r = 2.0f;
) x; o6 A0 U5 A% ^                        pLight->Specular.g = 2.0f;. i) A/ u$ ]. N! T- }0 \
                        pLight->Specular.b = 2.0f;
9 ^# i( N4 b- w. s% U& a                        // á?oˉ
# m6 p( ]; t: Q                        pLight->Ambient.r  *= 1.0f;. J- I* V& h) t
                        pLight->Ambient.g  *= 1.0f;* r" n& |& N5 K9 T5 {/ Z
                        pLight->Ambient.b  *= 1.0f;$ x/ x! `, U$ m  c/ G
#else //__YENV/ m2 w6 @, a5 l" p9 m5 |
                        pLight->Diffuse.r  *= 1.1f;1 D7 ]* X8 c' }/ r" s* X+ y
                        pLight->Diffuse.g  *= 1.1f;
; O5 y4 i5 q) t, c4 {' B! @                        pLight->Diffuse.b  *= 1.1f;
7 u0 s) ~8 r4 n( o- J7 V3 u                        // oˉè* ??à? % O/ l+ ?# p: Q/ t0 N9 P' C
                        pLight->Specular.r = 2.0f;
. @/ T- p9 Y& a  ?4 S  [! i8 R                        pLight->Specular.g = 2.0f;/ e0 W! j. Q& E( Z' c
                        pLight->Specular.b = 2.0f;$ K  h. f6 \2 h. X9 V. Y0 C. I
                        // á?oˉ
. g) p/ @* J8 }6 `9 j                        pLight->Ambient.r  *= 0.9f;8 x+ I, c8 E( p  S
                        pLight->Ambient.g  *= 0.9f;
$ ^) J% Y7 p9 s% G                        pLight->Ambient.b  *= 0.9f;' v, ^: a( J9 D2 q7 F7 J
#endif //__YENV
/ b. m: U- T4 e, j8 f                       
* k+ z7 G: h" U5 R                        memcpy( &m_light, pLight, sizeof( m_light ) );5 _; R4 B: Q5 T) I; w- X
                       
, z7 Y8 U& j) t  _9 Y' o" a                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);' ?1 s/ `) u; v
                        D3DXMATRIX  matTemp;
) ^8 t- A' a# d3 t                        static const float CONS_VAL = 3.1415926f / 180.f;$ G' j. b- \6 o, ~+ Z/ k) z

5 R( U: j6 G, e& f( u: x; N9 S                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);
8 k+ U/ T1 j" a$ G# Q                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);2 g# Y; {8 \) E1 h6 d
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
& @, O" _. y8 \3 r                        pLight->Appear( m_pd3dDevice, TRUE );
6 H% Q0 {% n2 e7 f
5 @! O! d% v; i7 t0 h% P; T2 r                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);( |* w+ N1 B. O/ ]
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));5 g4 e  M5 d) P) t3 D
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 1 L4 r$ x7 ^; i9 b8 a( W

: L0 b3 L4 o, V7 g                        DWORD dwR, dwG, dwB;0 d" X( J- E$ e
                        dwR = (DWORD)( pLight->Ambient.r * 255 );6 {4 ?3 L# u/ P  u, s; j& s7 L
                        dwG = (DWORD)( pLight->Ambient.g * 255 );9 t$ L# X  A, x, _( T
                        dwB = (DWORD)( pLight->Ambient.b * 255 );$ c0 W, x4 {8 e8 b3 v3 {
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        0 ~% h- P2 M9 y
                }
8 \( l# O' ]( ?4 M        }
; Z! r6 P- F, l! e/ B2 n; }# h6 f, G! e+ T: p' ^
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );9 ^4 ^+ F2 {1 q6 n% U$ a
        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) );
7 B; _+ @" C  v( s: K; ~        ::SetLight( bLight );
7 y0 U+ P  b7 [' \$ h% t0 X! I% p$ [5 @- _
        // ±ao? ?D?í???ó á¤à? + n5 `5 L, E- E# R- y" z/ g
        m_pd3dDevice->SetMaterial( &m_baseMaterial );
+ r% b, w4 c5 P- r: {4 C       
9 `$ b/ q" B8 E, V% k( u#endif // not WORLDSERVER
8 V) n8 S- @' p% o3 j* u}+ Z7 ?* @1 a; |3 v
并更换
: l2 l# z, }' ?7 I3 a6 dCode:
+ U, b! n, c- n# D3 }__FLYFF_INITPAGE_EXT/ |  R" E" E/ O+ I1 G. o) @
定义
9 m4 J; u  ]  F/ D9 G; }3 N( ]* F5 h6 n2 K
% t% D0 P4 Z5 b" {$ r) q5 a
$ a; n- c: F9 \/ j6 w+ [3 z% a
4 F8 @, D/ E) D+ {
现在终于删除我的狗屁加速...
: D. K4 K& \3 G3 Z& z% G* @; C' E& A$ z- c- m

" |$ `; `" U/ z0 y
* N" m2 U! Z: c5 S, K$ b% A! @




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