飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:% d( T7 g' y7 J  Z
尾翼:! N; k" a* R( T3 _5 }& W( I

6 R+ X3 q+ E2 b( t; ?- b) M代码:
& W" u! {. x* X: D! qCWndAutoFood::CWndAutoFood()
0 g" {" t4 J) H6 A{- Q/ v  g' T2 b; Z8 m, A' ]! J+ N5 r6 r; K
        m_pItemElem = NULL;& M# a# _9 u! d7 Z
        m_pTexture = NULL;' w6 b( ?" i; U8 }" a. k9 V$ X
        bStart = FALSE;; C7 B( K: A7 x: b  q. I
}# x3 i) g; O# H, j2 x! ]

& Y# H8 d* B+ l* g( q' zCWndAutoFood::~CWndAutoFood()! X( Y# K- s6 U* \
{7 w# Q# D- p* x$ F: x
        AfxMessageBox( "AutoFood ist gestorben " );+ R2 E  j3 S- u0 c- W" F$ B
}
  |2 _0 |4 w3 R1 L& `! Q7 qBOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )& v0 y- g, z* r/ @8 p3 k6 l
{# x1 {" a0 ^1 H) K
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
. X1 S) x( @; n}
  [' @& q( |; ~1 u/ M/ `; Q6 @6 B( r# e  q* M* H
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )5 ]& q" v3 `( q# s) Z
{" v( ]0 j$ [) z  E& d9 ~; x
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );# R7 C$ Q/ w5 `
        CRect rect = pWndCtrl->rect;
. T) n6 ?6 L3 ^' i2 O+ R/ o1 W        if( rect && rect.PtInRect( point ) )
9 _7 Q, f+ p2 c" T3 o        {9 F8 {! p1 y% ^! y; Z4 S
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );. U$ p$ _. X+ j+ k
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )/ H- c7 _& l& n# T
                {
3 A2 I8 }, \5 o8 G                        if( m_pItemElem )* @  X" k" {) c5 I+ ?
                        {. z# F2 x9 t3 i, E, c5 g
                                m_pItemElem = NULL;
# w6 c; F$ \# z* n- ~                        }
* a" d! T) d9 K5 w1 u, w# |                        m_pItemElem = pItemElem;
. r4 _' _, J) j* f- |3 `                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );1 r" m  E# g# R7 ~0 q' I
                }else{
2 v5 P. n8 F2 m( O8 e! J7 A/ U                        SetForbid( TRUE );, Y+ |3 o( J, a0 C2 ]
                }, q" W, F; h, D* A4 }
        }else{
  s/ ?0 K0 i5 N! [5 C+ l! r* T8 v- z                SetForbid( TRUE );
5 Z/ N) h" r' W        }7 }0 N! b# t' K! ?, t$ b/ P* o
        return TRUE;
2 w' T- ~4 [, h- j}
" H" B4 r( I3 a+ U3 z! b* {2 }1 |' p: M- C9 C; [
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult ). g% P" q3 C$ f$ l, z  X" B
{
0 |( v1 E* _+ D( \        switch( nID )
' C$ a% ]# P% o5 s  G1 V( C9 x        {
& @/ i" s: C, D' g        case WIDC_BUTTON3:( K% @' m$ ^8 {) x( P1 @4 |
                {( j$ [, o' U9 H9 z: @4 h( w
                        bStart = TRUE;
0 V  N& L) ^+ E# f3 q                        break;
  v2 R& s6 x2 h# `, ]  d                }
2 P1 w4 {% y3 f0 e7 x6 l        case WIDC_BUTTON4:
4 r4 Z6 F) X* }- Z  K8 Z3 A9 d                {+ [8 R. H! C& B$ P
                        bStart = FALSE;. \; e6 h7 j$ v. ]. x
                        break;9 P7 {# ]7 `5 }  @0 a
                }' s3 x7 \9 K6 t
        }! x1 a* U+ q$ J
        return CWndNeuz::OnChildNotify( message, nID, pLResult );& r8 q1 S/ `& |+ B4 u+ C9 A) C1 Z0 s) ~
}       
  X* @( \0 C$ K1 pvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )
; d* j; _+ k& c+ N& Q{% R; I2 }8 j( H4 f0 O
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );9 F5 b2 `% y; L
        if( bStart || !m_pItemElem )0 c  N" j7 {# k; i% s0 M
        {
  W/ Z& X1 N8 t' P& y( w1 }& l                pBtn->EnableWindow( FALSE );
8 j4 r; ^: y- N$ U7 i9 w/ K2 i+ A        }else
8 x/ ?( V- Z& F3 ]                pBtn->EnableWindow( TRUE );
9 S0 Q# E) x5 G% |        if( m_pTexture )
; n/ F# z- A6 @# _) W6 s        {
6 Y4 z/ H, d! N4 x! F                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );$ ~% ]( R$ u8 T0 S  C" }" h! c4 K
                if( wndCtrl && wndCtrl->rect )  ?3 J6 Y, U: E5 c2 _% C
                {
% ], [5 g% G; W                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );8 M: \0 I  t5 S, t- z
                }1 r+ C8 J4 N. R! V8 x. D1 G
        }
7 a1 m7 T6 u4 g}( E" M$ Q: A+ A/ s1 t. u+ Z
# ~- J/ {( J8 `
BOOL CWndAutoFood:rocess()
9 v6 j) F% w9 O/ ^9 l6 z{" n( Q0 Q( h0 h* W. x5 I
        if( bStart )% q( x  ~1 l0 }; @2 m* Q1 B1 a9 ^
        {7 k  {  [9 T+ f0 Y
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )+ O+ }6 }* |# [- T" X, ?# U; V
                {% T* u, z4 |5 x) _  m7 l
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )8 _3 E! v6 i& N
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
% K3 Y4 T+ H" `' a2 Y. @                }else{4 M' C- R1 Q: Y/ @) a
                        bStart = FALSE;
7 b) i  h( m  L0 ^" D1 f( _8 j3 m                        m_pItemElem = NULL;
2 z3 o2 \8 u; q0 K4 o2 b  i/ R# \                }
; Y6 s% A7 C  K: d; ~9 \' G7 o        }2 p* Y% J1 v( Y5 d9 }
        return TRUE;
5 Y  A1 k. p$ a0 G% c}1 V3 b; l7 w+ c5 M6 Q" t
0 |% _7 p/ ?* E2 h7 W0 L3 j1 w" e
登录视频废话:
+ [$ @2 e9 T! L# s' `" ^' b尾翼:
2 A$ P# O! U9 z( p7 M! \4 a: a2 V+ H# D
代码:
3 S2 I0 H8 l2 g1 r
5 g" z" @4 [* W( C0 avoid CWorld::SetLight( BOOL bLight )# A, T- c8 z/ l7 p9 X. f8 S
durch% _; w: M# O' B( K" k
Code:: D8 @% \+ ]; a+ V7 o
void CWorld::SetLight( BOOL bLight )! h( p( c% I2 f) u# H
{
2 |& f4 t" J6 E9 e; y8 \        //ACE("SetLight %d \n", bLight);
$ D8 {9 Y, Q% _8 ?/ m       
7 d& F. v) k) T+ l& y1 T  m, _1 A#ifndef  __WORLDSERVER
" a& G- p4 K( ~        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);" M2 e* X3 U: e1 T" j8 m# m7 U
        CLight* pLight = NULL;' X( d/ Q" i" T& }4 m8 d* `

7 f; {+ H- {" e/ G. k# s( Y        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
! s7 s, Y' W7 B' @
! d+ n3 h9 l2 K5 B/ O7 A3 r! ]) d        pLight = GetLight( "direction" );
* L+ {1 k% ~  P" j& R# o+ E5 ~
! f& J7 r) u5 H2 Q, A" N#if __VER >= 15 // __BS_CHANGING_ENVIR
* _- @# G) G/ E1 M/ w# d; }3 M0 S        if( g_pPlayer ){
$ E  p9 W+ l7 i2 I                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );4 e: r; R' n' p% `6 Y- G
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!$ o! T& n, C' ~5 l* c0 H% B
                {: l) @- q& A. w4 ^
                        if( pLight )2 t! N' c) K# N2 F
                        {
5 d8 \3 G! q6 }+ R9 l                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
8 |6 o. `( k& s. Z6 G" A                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];! d9 ~& ]" d& x, i1 g* a
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];- o# e- y$ f1 G# r, Q* ?4 ^

' V! k, p( I5 m9 s3 T1 A, y* V                                pLight->Specular.r = 2.0f;
  m9 D- k) ?8 c. v0 m7 [2 l" |6 C                                pLight->Specular.g = 2.0f;0 B( k) g5 s. O
                                pLight->Specular.b = 2.0f;" ^- m1 \8 v, h* S/ F
       
  e* n& K4 Z. [/ X                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];$ m1 o2 g) W1 e% g8 t: x+ g& ]! p
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];' v2 O9 B- p1 P1 y! o) _- E7 t8 E
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];2 D4 d' Z# f% j  N* ]! i) U8 {
        9 P% Y/ B8 B# B/ K" s. ~
                                HookUpdateLight( pLight );
9 Y7 d4 c) d" @& M3 `. F8 f8 }' W6 `% K4 P2 _
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );4 E9 u) H& H2 @& D4 E9 S9 {
               
1 A4 V5 o& S& V: b+ R0 N2 H! D                                pLight->Diffuse.r *= 1.2f;
- B1 b# a* {+ P5 b% N/ {) b                                pLight->Diffuse.g *= 1.2f;# w" C. h$ c! U$ V
                                pLight->Diffuse.b *= 1.2f;5 u' }5 h' d( w; {9 I) j4 V+ c+ H$ J
) X! Q* P, j) f& ]: x
                                pLight->Ambient.r *= 0.8f;/ P5 S1 b: P( H) [4 w/ N
                                pLight->Ambient.g *= 0.8f;
2 h, L- p7 V7 z' q# f                                pLight->Ambient.b *= 0.8f;
" ]2 G! P: }* k3 R        0 c/ U# G5 T+ R1 N/ y
                                memcpy( &m_light, pLight, sizeof( m_light ) );+ [. Q9 o3 ~) y+ U& s/ I( {

& S  T( g7 t4 w, J4 r% X                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);' a/ I5 i! W& v
                                D3DXVec3Normalize(&(vecSun),&(vecSun));& m- \0 R) C+ u* c  J
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); # V, v1 V/ I4 z8 p  J; }
                                pLight->Appear( m_pd3dDevice, TRUE );
  T7 e, ^5 c( O( n! `+ c4 Q               
: x, f: ?) K# @; C6 ^8 _; S8 Z                                DWORD dwR, dwG, dwB;
* S; H4 a" k: t" p. H, z5 S6 D: n$ Q                                dwR = (DWORD)( pLight->Ambient.r * 255 );
6 f5 c/ F6 T/ U  h                                dwG = (DWORD)( pLight->Ambient.g * 255 );
: S7 o, j. q' ~7 Q/ y                                dwB = (DWORD)( pLight->Ambient.b * 255 );
1 I6 K& ~, F1 K3 m( o; D                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );; u4 p+ n3 q3 k# I) Q( e, F5 d
                        }
/ w; e- x2 k6 k+ U% {0 D                }+ p8 J+ g2 \$ n5 X6 T( r
        }9 e  f6 w& h& q+ v. u: {0 q
        else# Y7 N4 ]) D) R# Y. N8 c) a/ L
#endif / {( `, p: j; g1 i% e- D( p

# j) a! ]4 s4 F+ L$ ~        if( m_bIsIndoor )
% n" U9 i) J: k5 F. l4 ~; c        {! `% B2 O3 |4 |, W( D% V0 o
                if( pLight )
9 g% U7 g  S0 Q/ O1 ?                {               
) l: O  e- G0 c0 }% v8 I: \! K                        // à??μ oˉè*   \% ?; h, E" |( F$ K
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;' e% e3 r4 w6 S: i. v5 v1 {: |
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
  Z' @# T" c' [$ C. ?                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
: B% t' j$ H; M& r6 q! F
" X$ i9 u. o% A  ]+ d) _, }                        // oˉè* ??à?
" b9 k7 w# V" M                        pLight->Specular.r = 1.0f;, v. O; |* R  R
                        pLight->Specular.g = 1.0f;
, o' b& X* D2 x  O! Z( G                        pLight->Specular.b = 1.0f;
9 Q) Z9 l9 c9 r" I5 Y. {                        // àü?? oˉè* $ Y; C" D- [8 n. ]' m
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;2 u) B8 x- T$ I# y+ b, w
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;* A! e2 V, ?# s! @+ t' _3 O% P! W( k
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
7 ?( X; t* \7 I
( O- r6 d0 B2 F& y1 e                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
) n$ f' J' ~7 h1 ^' t" x9 p, Z9 q                        {
7 n- J; y& x6 e9 a+ N, }" Y                                pLight->Diffuse.r *= 0.6f;
/ q" D7 G, s& o* ?1 a2 k" J% G                                pLight->Diffuse.g *= 0.6f;
/ }6 ^2 o$ `' ^- v                                pLight->Diffuse.b *= 0.6f;- z+ C" J$ }0 I: s
                                pLight->Ambient.r *= 0.7f;
4 L, H% ^3 `6 O) [/ y                                pLight->Ambient.g *= 0.7f;4 W* F0 L, C) [+ }9 M7 a# D; [- O# t
                                pLight->Ambient.b *= 0.7f;
8 B. S* {* u+ A( |! F9 C2 a# O/ M9 x                        }/ v4 m1 A6 v" b* B/ h2 A

  I' t) R2 s' R1 y/ b: F; u#if __VER >= 15 // __BS_CHANGING_ENVIR4 a/ ^8 x/ ~* m- K; u7 W
                        if( g_pPlayer )% K" s4 C2 ?. y: |$ X7 ?: Y
                                HookUpdateLight( pLight );3 \5 L; u& P0 [1 q; V4 q
#endif( F" N4 Q+ k8 ~* m
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );6 u" V/ k! ]0 u

7 n5 F+ l2 C; V# L                        pLight->Diffuse.r  += 0.1f;
2 u( v9 M" j; A. M( m# G                        pLight->Diffuse.g  += 0.1f;3 ~* v6 g+ [3 e/ B/ K
                        pLight->Diffuse.b  += 0.1f;
! Q( Z5 n! O3 s9 }2 L' h                        // oˉè* ??à?
( b  h$ X( Y! p8 _! {! j                        pLight->Specular.r = 2.0f;9 r( X8 i* b# G6 l  C/ a
                        pLight->Specular.g = 2.0f;
, x- n8 r, @0 @& t4 V- _# D) P                        pLight->Specular.b = 2.0f;/ B9 r* \$ i, S0 s, ?9 K8 @
                        // á?oˉ ; k( \: ]0 m" A+ C
                        pLight->Ambient.r  *= 0.9f;, P) Q# q  ~( L9 K: ?9 n
                        pLight->Ambient.g  *= 0.9f;$ b, D8 ~  g. q4 b
                        pLight->Ambient.b  *= 0.9f;$ f  n5 ^" w4 s3 b( p2 ]

& t" [. x0 e, `% h                        memcpy( &m_light, pLight, sizeof( m_light ) );; u) Z1 X1 @" v
                       
0 z  o7 R% q. |' h5 k                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
* S; ^1 K8 V( e' g0 H2 w. a0 v                        pLight->Appear( m_pd3dDevice, TRUE );
9 X" _7 M1 N% u2 K, a; \+ X        & D  s- e& e3 M" v9 g1 d$ x8 N; C) J& q
                        DWORD dwR, dwG, dwB;
" x- e; ?/ [4 s) E- l0 ~                        dwR = (DWORD)( pLight->Ambient.r * 255 );' L* D' b9 C* M' j+ }. A8 c1 o
                        dwG = (DWORD)( pLight->Ambient.g * 255 );% y6 y3 q' w0 D% ?- T9 A5 f
                        dwB = (DWORD)( pLight->Ambient.b * 255 );+ w' T, C3 G" I9 j
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );9 {! ~( \- e  q' f- k  L/ q$ m
                }4 S3 J1 q! ~* Z: r  G
        }6 K) K. [! W- G8 }# O# h. c7 F  t
        else, ~) }6 R" t& e( R( u
        {
9 `. E1 u: v) f                if( pLight )
* C* k5 U! B" q5 A$ a                {- |: W3 Z* w4 v$ J, V4 h4 \* S9 M
                6 A3 ^3 ?( w& w% h& w& g
                        int nHour = 8, nMin = 0;
. s9 a3 ~, G: s! ~# P% R/ t        #ifdef __CLIENT
3 a8 B% p$ i2 U+ M9 p2 F                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. , c, h8 V! R! N& T& c4 s; G% \9 h
                        nHour = g_GameTimer.m_nHour;% ?2 _7 U* s7 r
                        nMin  = g_GameTimer.m_nMin ;
, V" ^( Y- J- w: \! e! Y        #else6 t4 a, M  Q* [
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
/ R/ g$ l, w8 w* |                        if( m_nLightType == 1 )/ g0 T' ]1 |& W2 E: c# l7 z. W, Y
                                nHour = m_nLightHour;
; ?" s, |  ^; V+ Z$ W        #endif
; l, i5 d% Y2 X4 A6 @5 T                        nHour--;
5 q% s9 w+ }6 |( O, e; g                        if( nHour < 0 ) nHour = 0;
- C: N3 D/ h8 }" d& Y6 y                        if( nHour > 23 ) nHour = 23;5 Y: s, b1 v0 T& s8 N; N: y
7 a) k" M8 k* ]
                        //if( m_bFixedHour )
$ Q% G& A" s- B8 Q* {# d                        //        nHour = m_nFixedHour, nMin = 0;
& x& X* n, u6 M: z' f) p" {                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];/ W0 g" P! F7 s5 c1 s
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];/ v3 [' {6 V4 k2 Y- P
2 s! ]  ~% O' s, @# U' }7 b; K+ F
                        //m_lightColor = lightColorPrv;
6 \1 n: c; L1 \, c7 z8 Y                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;: H% t: Q/ p' q* ?' {& w
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;
5 P$ u; y5 [& @                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;0 [7 r6 H. o, k: g/ u/ F
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;2 b$ L' H$ H3 b: H# c
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;+ [" C- p  m) e  b" \' Q
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
4 U: u9 w4 K1 P0 g                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)1 v% S; r* [. z( n5 U' o! H  S

9 W' k5 q; r+ Z' @  Q5 R                        // à??μ oˉè*
, Y6 z. g1 z) q6 o                        pLight->Diffuse.r  = lightColorPrv.r1;
2 {' q! V6 u% [5 M4 q5 T1 F( H0 C$ ?& N                        pLight->Diffuse.g  = lightColorPrv.g1;
) V: o; c) L/ I, S1 Y. I$ z! N                        pLight->Diffuse.b  = lightColorPrv.b1;
& w3 x8 \$ k7 s! u: C                        // oˉè* ??à? * b8 b2 e6 ^7 B5 A5 y) q; w
                        pLight->Specular.r = 1.0f;
/ a3 e, R4 ]7 M8 J- z+ L                        pLight->Specular.g = 1.0f;
3 v% C2 @/ y! ~8 \/ U6 M$ U                        pLight->Specular.b = 1.0f;
7 C) y* F8 F: u4 ?5 F0 T                        // àü?? oˉè* # H9 e& {/ |7 G  o
                        pLight->Ambient.r  = lightColorPrv.r2;
% K* q& K; p* _" P1 B5 a! o* {9 `                        pLight->Ambient.g  = lightColorPrv.g2;$ _0 h6 Q8 S, U) x
                        pLight->Ambient.b  = lightColorPrv.b2;2 m( |0 k) i) m; R* s& T
; u2 T/ N9 k4 G4 E( S; r7 F! I
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
! T+ n4 H8 ]. _3 F, E8 C+ j  f                        {
/ S4 S& }# o7 p$ Z                                pLight->Diffuse.r *= 0.6f;! j2 S3 A1 B& [9 F! h, ]" ]8 N3 U
                                pLight->Diffuse.g *= 0.6f;
4 T; T/ `& ]. {5 n% K2 p: ^+ C0 ~                                pLight->Diffuse.b *= 0.6f;6 S& J2 _6 ?% H$ V. d7 P5 f
                                pLight->Ambient.r *= 0.7f;9 u6 @. \5 o, \* P4 u  y+ k
                                pLight->Ambient.g *= 0.7f;% {( t9 y+ k4 m0 t% e+ m, O% T6 E! g
                                pLight->Ambient.b *= 0.7f;
' u" k6 `' C; r# L: }* ~                        }" w6 L/ t, p# K% t
                       
+ o1 [& `  H" z3 l$ S$ r5 |  r#if __VER >= 15 // __BS_CHANGING_ENVIR
  S+ p2 |- X! `6 s, T. \9 q                        if( g_pPlayer )7 k: k; y, X+ c/ t
                                HookUpdateLight( pLight );
( Z2 _' K8 |2 y" K#endif- F# W/ ]/ Z/ r1 U
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );& H, \  x3 t  m% [

6 X( k8 F+ I# a0 O#ifdef __YENV
. ]/ I  \) m8 W  |! n                        pLight->Diffuse.r  *= 1.1f;
" \4 b9 \  _# F- @6 h1 O                        pLight->Diffuse.g  *= 1.1f;
( b% g  I" e5 b7 u$ t/ R4 R0 w                        pLight->Diffuse.b  *= 1.1f;
$ [5 k' ?( n+ o2 {4 [- I* I                        // oˉè* ??à? , G/ n. y4 U% P" {" O; c4 ^8 n
                        pLight->Specular.r = 2.0f;
; X/ E$ x4 z4 w; C6 ^! [                        pLight->Specular.g = 2.0f;
) x5 U( U$ {* b/ E                        pLight->Specular.b = 2.0f;
" T. o- b* Z& D7 Y1 @/ J                        // á?oˉ 4 I# f. h$ [. q) k% H. [7 }2 \! P
                        pLight->Ambient.r  *= 1.0f;9 N$ {$ V% \0 Q6 t# M/ k: [- }
                        pLight->Ambient.g  *= 1.0f;, }6 Q3 f/ O  i3 b
                        pLight->Ambient.b  *= 1.0f;
0 J6 U( t7 u4 f$ n! y+ S#else //__YENV" r. N+ x! ]4 }5 W- h
                        pLight->Diffuse.r  *= 1.1f;
7 }" _. \4 j, _5 l1 F0 R3 h) a                        pLight->Diffuse.g  *= 1.1f;- m4 i. g4 V0 i+ ]8 o: V6 ~; e" J3 o: h
                        pLight->Diffuse.b  *= 1.1f;+ ~  I3 k( e9 T
                        // oˉè* ??à?
+ F: |9 C! }, r, @; @' k                        pLight->Specular.r = 2.0f;
2 Q3 N6 g. J! ?/ O8 v1 q                        pLight->Specular.g = 2.0f;! |+ \! ~. V% a3 G% L6 w
                        pLight->Specular.b = 2.0f;
, R; b& j. [7 V- z9 m6 p                        // á?oˉ
* r, B$ t5 z; Z& A5 r                        pLight->Ambient.r  *= 0.9f;
+ V8 P$ u) y3 ^9 \! a: G# Y: F$ [                        pLight->Ambient.g  *= 0.9f;
; L. b$ L' M$ `3 z' n0 @! [& V) E                        pLight->Ambient.b  *= 0.9f;5 c/ ]9 Q, W* e3 c1 E5 r7 [8 [) D6 e3 b6 x6 h
#endif //__YENV : v1 X! ]( X4 M5 a5 i! H0 w5 v
                       
9 E6 t" M! U$ @' W# d0 u! p- n& @                        memcpy( &m_light, pLight, sizeof( m_light ) );5 r) i+ F  ]. R9 U0 ~1 Q1 e4 H' r0 w- A
                       
: }8 `, L7 R3 a3 w" c                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);: U$ y1 v" ]' A, r, }
                        D3DXMATRIX  matTemp;7 H% U8 a6 T; i
                        static const float CONS_VAL = 3.1415926f / 180.f;3 X$ B- a, g1 a6 j$ [3 B8 S# j3 z' l, }

" z* M1 `3 V" x1 \! \. H  P                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);2 n+ {% {* [% N0 N
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);- p* C, }( e( O0 F+ i. y0 y" o
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
6 `0 K4 T8 ?+ {2 g! K7 E; J                        pLight->Appear( m_pd3dDevice, TRUE );
3 m1 d6 w6 V4 X" U9 W6 P6 X$ G  R( B3 i! u: U) L/ U+ ^
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
. [/ l! L, b# u                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));& b# y8 e1 l9 j3 M4 \
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
7 Z5 ^/ {0 F4 G! p) z$ I# n( l$ X2 q5 Y+ ^/ {1 p( C. D2 j! N1 w
                        DWORD dwR, dwG, dwB;
6 D$ M6 J* u( R3 r3 L3 j) I8 G                        dwR = (DWORD)( pLight->Ambient.r * 255 );0 v' n4 U& Y0 I/ s7 p: Q( H
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
: r" w, v/ |% k9 Q                        dwB = (DWORD)( pLight->Ambient.b * 255 );. b1 U+ a! k( o& Q* |/ X: v5 V9 X
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
# U# k- `/ Z; [+ b3 k, A; J; G2 X                }$ S9 q; f) m! y
        }
7 L& t6 L0 M/ q0 K& y/ m
0 V2 v4 F1 n% V9 e2 l        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
4 _- I7 ^' ~$ V  m4 A3 y7 M, V" e        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) );
) h9 T9 u; `& |" e        ::SetLight( bLight );
( {; d7 x5 Z; K$ {: Z: V& I* n4 A# I2 k+ i. u
        // ±ao? ?D?í???ó á¤à?
# t" Y+ T" c" f, f7 b        m_pd3dDevice->SetMaterial( &m_baseMaterial );; S3 a8 o2 N3 A# k8 _: u: U
        , G5 l6 N3 S4 l6 m. k
#endif // not WORLDSERVER" S" U& k- C0 ]! ~3 ?+ C3 J2 e) X9 O% D
}+ s( Q( X, H. b3 M8 v! {
并更换% }; Z; f% g. H+ f% w2 @) _1 D
Code:8 J3 F& O6 F# H+ N6 ~' h7 k2 Z
__FLYFF_INITPAGE_EXT
9 t  r& m5 k7 {+ b! a5 \5 W定义) U1 e/ u% B/ x

# T6 H: y) y( C2 {
* o* }4 ?1 L4 A! v9 }, ~+ w* x9 u. J$ }  b' x! y. b4 W
" j" M. T2 E# Y
现在终于删除我的狗屁加速...7 Y5 \/ [) b% E2 f

9 C, _% R& U& u# A% O5 Q, M
1 D2 _% i  L( `" o5 r2 [+ s1 M7 [% ?4 q' w2 I2 U6 L* A. C6 r





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