飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
& J+ b9 j8 X' Z/ L, @% N/ H$ ~尾翼:; N% ~( n5 J4 h6 I
, \5 M& F8 P- `
代码:
1 O9 `- \  [) V4 v, `CWndAutoFood::CWndAutoFood()' Y& Z' F6 C, ?, z7 ]
{) n& E8 L/ j* a1 _
        m_pItemElem = NULL;, P5 _" X( c5 G8 Y+ W; s9 R
        m_pTexture = NULL;
$ n* L' f. D2 i5 ^/ J0 g        bStart = FALSE;  p$ u1 C5 i& m  L
}1 B3 k0 g5 K; Q& `' ~

+ m3 ?  T: I( D4 ~% z) O2 |/ XCWndAutoFood::~CWndAutoFood()
; d# b' p& a2 p1 X% w6 X& m  C9 G{
$ L" B) y; J0 ?( m! J        AfxMessageBox( "AutoFood ist gestorben " );9 y4 d) W- W* ]/ S
}0 ]- O. r" Q+ V% B1 _* U. Z
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
5 U: ]1 }1 M7 G5 i{
! V4 z0 W8 l. [) Y+ V        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );" k& W5 ]4 w( Z4 l; P/ u
}
4 S; N# A9 l3 c9 x; z8 e; @, X4 U, J
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
2 u' L4 w( P6 k2 K$ c{
9 A+ v7 m4 m' ]- Y        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
8 P/ @0 ]6 F* ^7 ]  ~9 D; a  `+ _        CRect rect = pWndCtrl->rect;! n2 |4 r* f: ^: |
        if( rect && rect.PtInRect( point ) )' L0 t0 a' K4 S) l( ]
        {
; D8 v' T% b% J( T  w  \                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
; F: M5 u$ m5 ~9 W7 ]0 c+ t4 {                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )6 g( r! Q# C2 x2 Q$ x9 X
                {
1 q" R/ x3 |6 R( `1 w$ v: D                        if( m_pItemElem )
# }# D, b. C+ _$ S& D8 Z: N                        {
, {2 D2 p4 w) w! r3 I: S9 D( t: w                                m_pItemElem = NULL;
. T* j+ M/ ~$ a! T                        }$ I# o# c* p* l- {1 H4 l2 A
                        m_pItemElem = pItemElem;
# z) ?7 M; @" B7 i/ `# k* W                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
; n9 D7 X; V2 ]  f2 Q                }else{, p8 c1 M0 n; V5 G' s; {; E
                        SetForbid( TRUE );
! ]0 o( ?! R  T/ B" z  |! d6 P" Y                }" G4 i( P( y! {! c
        }else{- W0 z4 f0 G- |
                SetForbid( TRUE );% Z+ |2 f3 v8 s9 l: x. o
        }0 k# i: |. F; B
        return TRUE;
) T- D7 F! W! Z+ @}' a- f7 C0 _% G9 _: D4 T$ K! n
: g: M7 _# ?1 _& }! Z0 W! x$ x
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
5 I  B) B" S5 k! R{
! a3 w; E1 @8 X' f        switch( nID ), u( ?" D: W: b; o& K; K' W
        {
9 o: [& S* z/ z% X- Y( ^        case WIDC_BUTTON3:, Z- @- R- g: a  M" ~: ^
                {
; q& A) L1 d; a& \$ @' R) B                        bStart = TRUE;
  o7 Y1 R! p9 x& R) ?% ^                        break;3 T2 u5 u! P$ S0 ]7 Q
                }. @/ ~& M# e! c( l% R7 d
        case WIDC_BUTTON4:% L) E/ [, q5 `
                {) J) V; V/ k) }. `* l" V; ]# a
                        bStart = FALSE;
, C7 R6 e) a, x1 \; f                        break;
! E. P% S1 S8 l1 G/ x$ i                }5 o; r5 [$ O1 ]! |
        }
/ n& I1 }. x' b& H' ~$ y7 H        return CWndNeuz::OnChildNotify( message, nID, pLResult );
. T" O# ~% T4 }) w6 K6 r}       
# e9 m0 {8 G* q& B! @& tvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )* }+ e8 U8 I5 q& \. L8 c+ Y
{. f  n' L& h* m# g2 e8 t/ b- G
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );2 Y/ t5 @4 |3 J' R+ b' d0 D4 [9 h) J
        if( bStart || !m_pItemElem ). v. X4 Z3 s& D+ E  l. T
        {% y3 R4 D8 D/ D; D; `& w
                pBtn->EnableWindow( FALSE );9 M/ Z0 O' m$ l4 u1 V) Y9 Q
        }else
* Y% r6 x4 {. X# J, F/ Y8 R% Y: T                pBtn->EnableWindow( TRUE );
$ Y7 A, J! n% H* l% b0 ?) T: f        if( m_pTexture )
3 ]$ J0 U/ O# M% ]9 j        {* @! F# `& d$ |: E9 @. a1 g
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
9 a4 ]2 p5 ^3 _                if( wndCtrl && wndCtrl->rect )6 \" ?* [9 `! y7 b" O0 \/ o* N- T
                {2 l( Y! r( b& X
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
- n- X+ ?; F$ W4 c2 E- N( A                }
  f4 p% i4 L- l; }$ e# H8 d, b        }
, e& D+ F. b* [7 I1 K}" h4 O# `  z% y0 @: [  D9 p0 n

+ r: ?9 T# L! D) D# T' sBOOL CWndAutoFood:rocess()
- g  w9 Q; P6 J& M{. _6 }; [3 `; k/ [  ]2 B7 p0 y
        if( bStart )0 t3 Z( J; I& W: {7 Q9 ~* e/ |
        {
; h9 e" J, q0 r" I) V* }                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )7 w5 n) [& r  z+ U2 @
                {
4 U9 K  H  Z; z, K6 C# Q" S                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
+ D, _+ }+ g% ^, p                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );1 I! U1 x' k0 M# |% e, P
                }else{- N- O! n9 g* c) Z, @
                        bStart = FALSE;
! A8 r$ _  H0 o- U                        m_pItemElem = NULL;
" L! c4 M2 h8 f; F- o$ m! p# t                }- _- ^& s" U: `9 _
        }( r, x4 {3 v8 w0 Q, Q( K
        return TRUE;' o  r0 K9 O0 M% X$ U& N; Q5 ^
}8 e, v2 U6 R1 H4 E
7 H0 W& Q2 u3 b5 A  h% {7 e4 ]
登录视频废话:
% i1 N# d$ I$ W9 U  {% v- p) m尾翼:
6 ~: [% {. \" ]# a
4 h$ o- d1 f5 H. b" z/ x& j4 z代码:
1 b! a. c! w4 `0 X
3 R4 a; Y& _# u6 z+ y. @void CWorld::SetLight( BOOL bLight )$ e" C8 J  k5 R' q5 v
durch- q$ u( }3 c4 s9 w, Y* V/ Q
Code:' C+ R3 \. ~% E2 ^: u
void CWorld::SetLight( BOOL bLight )
( k* s" H* g5 v1 Z1 h& F{* U$ P) v- K4 U) w* t( Y6 M
        //ACE("SetLight %d \n", bLight);( R& }. m/ i$ @' d- H& d, j9 }9 T
        9 a* u, W& Y. O
#ifndef  __WORLDSERVER & {* X+ n  c- r8 I0 V3 E$ f& D
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);* D+ g# G) k8 ?) I. N
        CLight* pLight = NULL;
) e# Z- ?4 |/ ~1 B3 H0 D. p7 D( N) Y0 H- r2 u
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
& V6 n2 Z/ {9 h1 M0 j! `7 B) l# n) B# A3 q% C0 c4 G
        pLight = GetLight( "direction" );& K, H% j) b- P: Y, X) @  `& [0 @
# z# X! n5 |  l6 z( B) c7 x
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 Y5 g9 B+ y+ B3 f* {- X        if( g_pPlayer ){
" |# n. [* p2 [8 F! Y                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );  v/ Z5 ^# e  v+ W2 J
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
6 J/ a( K; ?$ F9 ?4 T5 J+ B  j                {( p0 i6 b0 o& U% x# j! B" A
                        if( pLight )
8 o3 K/ P# j1 }# s7 v% l                        {; I' ]! I) l8 j8 l
                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];# T% z0 t3 z! y
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
! }! O: q3 h  s. e/ W! A! f6 x+ C                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
8 V" m; S" s9 Q# e  P/ `9 F  E% x4 `. D( D! r
                                pLight->Specular.r = 2.0f;
& U+ N  p( h9 _# a                                pLight->Specular.g = 2.0f;
7 t7 G- A) R2 J                                pLight->Specular.b = 2.0f;
% F' F) J4 W3 F3 v* @& N        4 j) W( Z. ^" Q, w* Z( F
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
5 |" ~% E- {% v$ z3 d; z% }                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
! d- Y* Y2 C5 ?- D                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];# x' N+ d$ }- U: L2 y
       
5 P+ \2 D/ y1 p) S+ ]                                HookUpdateLight( pLight ); 7 o2 F  a9 [8 ?2 M! Z# E2 a/ Q
  A* z% l( K" E8 S" j
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
1 p  N1 n) A/ ?" X               
! D0 Y  ]% g1 f1 M                                pLight->Diffuse.r *= 1.2f;
0 A) @3 t" C7 i                                pLight->Diffuse.g *= 1.2f;
6 }2 Y4 J5 X3 W3 G# {                                pLight->Diffuse.b *= 1.2f;
) Q+ [- i, H; l; h
' D/ E3 ~* e* {7 Q$ }                                pLight->Ambient.r *= 0.8f;9 {" W8 u4 v7 {# Z+ d
                                pLight->Ambient.g *= 0.8f;
: h: ?6 E" q* r7 E$ ]0 i                                pLight->Ambient.b *= 0.8f;
% f% H1 B! p, E7 D# T' o, v       
2 {7 q5 f& M8 O; X* o1 }                                memcpy( &m_light, pLight, sizeof( m_light ) );! W- J! t4 H; a' x
. ^8 D2 @6 O* q3 ?
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);% \  X+ ?6 [0 A& r
                                D3DXVec3Normalize(&(vecSun),&(vecSun));
7 h, ~7 t( S4 s( k& b                                 pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z ); 0 A# T: a; k1 A8 c3 M: B. R
                                pLight->Appear( m_pd3dDevice, TRUE );1 v$ G9 b; S1 [7 C7 S4 z
                ) H" r7 h: }: z5 a2 a
                                DWORD dwR, dwG, dwB;5 P" W, ]) O; ?/ g0 u9 o6 v
                                dwR = (DWORD)( pLight->Ambient.r * 255 );( G/ R& D2 \5 e8 b9 M0 X) R7 M, f
                                dwG = (DWORD)( pLight->Ambient.g * 255 );2 l( Q6 i# ^2 d( a+ |
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
8 f0 e$ C+ c' h& T2 Z6 n                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );' F% P0 G, f8 H  M! k0 A* F
                        }
: F- {% V3 Q: m3 ~" U6 B" i                }
7 A5 @/ z! F; u" R, o5 T/ y; K/ |3 h  R        }" t) S# V& T: E3 ^% F
        else
, m  c. l% O- E% C% \#endif
6 ~5 I$ I) K* }  J- X. e
$ N% X, j$ m) c. `& N        if( m_bIsIndoor )
- S; {1 h- Q% ]1 ?/ F. B6 Z, Y6 t        {
7 @$ `, w( I: s                if( pLight )0 I8 l, u; y7 B6 M
                {                " \5 o6 J1 e  [' P
                        // à??μ oˉè* 4 }& Z' M+ V/ ^1 V* N5 {& w* D
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
+ R( B  q0 S; n* K+ j                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;, A8 |+ @! _) A1 g5 K5 S- E" t
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
2 j  T' W- [/ D2 l$ l  ~- }3 B, Y' c
                        // oˉè* ??à?
, S3 H/ j  C. C! E7 G                        pLight->Specular.r = 1.0f;: @5 {# h* h. b* {7 K
                        pLight->Specular.g = 1.0f;
* N2 S% P: c/ }- c7 y; b# k0 m7 x                        pLight->Specular.b = 1.0f;
) B/ k- h9 j9 e+ e, d7 U: \                        // àü?? oˉè* ) E5 c- v+ M: ]
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
; E- \, R& H; K* ]; F" j1 Y, s                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
8 w5 @3 q; d  m% N3 \9 R                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;
0 Q+ b: W6 H9 E/ r8 \# N
. c" w4 ?% o- m, B' X4 w                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.4 [! Q2 J) @! b: @1 U$ {
                        {7 x- \. m, @& m6 X8 g- j8 x
                                pLight->Diffuse.r *= 0.6f;
: `7 C- P0 l* h                                pLight->Diffuse.g *= 0.6f;7 M. M( t3 B/ w! w
                                pLight->Diffuse.b *= 0.6f;
7 y7 b; {2 Y7 z# u$ x                                pLight->Ambient.r *= 0.7f;  M8 ]' ^7 T/ J1 Q7 @0 K6 N& T
                                pLight->Ambient.g *= 0.7f;: O9 F$ f+ W* {6 H1 T
                                pLight->Ambient.b *= 0.7f;  U& T" t" V4 V6 p  L: o: T
                        }
7 a1 J9 ~7 h* }5 D8 e+ ?! Q6 k- x" @$ c1 Y- K& h! Q( C* B) f
#if __VER >= 15 // __BS_CHANGING_ENVIR& a, H" R7 T7 m- ]. ^
                        if( g_pPlayer )# Q. ]& V/ K+ A. K& ?
                                HookUpdateLight( pLight );
* R) F% K5 H6 r0 V#endif" R  @/ Z0 r0 q9 U/ J
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
) A9 L  K7 Q# \" k& j3 {4 P, q; B$ k) g* W; ^8 t& J
                        pLight->Diffuse.r  += 0.1f;! Z( E: m8 C3 f& \3 c) R( C+ k) m
                        pLight->Diffuse.g  += 0.1f;7 v7 L( z5 j* X( U0 [5 I
                        pLight->Diffuse.b  += 0.1f;
7 g8 u9 S9 l8 G/ t; Q                        // oˉè* ??à? ( ~6 D# y$ B" [# I  {0 v& ^0 E. h2 g
                        pLight->Specular.r = 2.0f;/ J6 _5 U+ q4 I0 I6 v
                        pLight->Specular.g = 2.0f;
4 m9 y/ ]  O5 Q' h( Y$ W0 d                        pLight->Specular.b = 2.0f;
2 R6 F4 f& B- l& W5 p( L                        // á?oˉ
5 t9 ]* @9 O0 U9 n0 |% }, {2 ?7 x2 O                        pLight->Ambient.r  *= 0.9f;. |2 L, b, m$ o" L( J$ z
                        pLight->Ambient.g  *= 0.9f;
+ x5 a- `1 F7 ?7 L9 f' B: w                        pLight->Ambient.b  *= 0.9f;
, X! K7 c1 H. E$ M- z* \/ M9 ]( }- _& G% D. Y( s
                        memcpy( &m_light, pLight, sizeof( m_light ) );" ^, i0 @9 j5 H2 |  H
                       
3 t: s- b  _+ e; S7 |8 }7 E8 E                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );4 T8 {% }/ G) m1 c+ a3 n* c% n$ {
                        pLight->Appear( m_pd3dDevice, TRUE );
' |  l: e2 J) e1 u       
7 e+ T- W' h5 F' y0 J' H                        DWORD dwR, dwG, dwB;
/ ]8 T% S, ]$ H8 g: m- t9 A                        dwR = (DWORD)( pLight->Ambient.r * 255 );7 z5 z% e1 ^( Y+ N5 h  g
                        dwG = (DWORD)( pLight->Ambient.g * 255 );" Y  l* e  F& O2 [; {- [
                        dwB = (DWORD)( pLight->Ambient.b * 255 );3 U$ L% g- P! D+ r4 D% Y3 Z
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );5 U% E. X- |- k5 M- k8 M( J7 v/ c
                }# g2 [- q+ @# ^9 u
        }1 h7 h/ Q0 y4 p6 X0 E' P
        else3 z' w- `1 e  x4 T: }2 V
        {
( L" \3 ~* j# Y$ P                if( pLight )
+ b3 g7 T) O% Z$ [( e+ u                {
+ [# H, B: T3 |1 d% b4 }               
9 @( w6 C7 `5 j" G* O                        int nHour = 8, nMin = 0;4 a* Q/ N- }; S7 V: [+ Z  X6 K3 K
        #ifdef __CLIENT. l$ e8 z1 ?. m2 N2 x
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
/ O- Q9 @3 A0 }% D- m6 ~                        nHour = g_GameTimer.m_nHour;
& V9 y2 I- `  ]                        nMin  = g_GameTimer.m_nMin ;- u7 v- H+ Z+ u- j5 f, n% I- O% Z6 q
        #else
7 f# B; K, r' p8 f                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
6 u9 o8 a8 g! n( |6 {                        if( m_nLightType == 1 )" x7 c: `$ }3 I1 P$ i: B
                                nHour = m_nLightHour;% J! a& G: ~  j4 I2 J- i: Q
        #endif" y0 n. G8 Z% v
                        nHour--;" J9 o/ |* G, L4 q' I; W
                        if( nHour < 0 ) nHour = 0;2 \* ]9 k1 k/ G1 d$ T4 F
                        if( nHour > 23 ) nHour = 23;7 D+ _3 R' K; y, O; L
; Z/ A. @8 X0 C% U
                        //if( m_bFixedHour )
. c! k; I. Z7 @2 L$ ^/ F3 W) [  `                        //        nHour = m_nFixedHour, nMin = 0;
# b. n- W3 O* t8 E/ q, E( A                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];; L( }+ u9 \4 }) l
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
& c7 C  e! `2 h; z, [
( V. f- V5 L6 ]% _                        //m_lightColor = lightColorPrv;% U7 s! u5 q' C2 D' ]; T( Q
                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;) C6 u+ e: }; G% b3 N! _. S5 R
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;9 ]% h4 N$ Q1 w0 d3 J8 i/ ~% Y; A
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
* W- ^' S0 c! w                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
8 V6 s1 C8 K) r. T                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
9 o# K* j3 E! @                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
& J* F+ \1 ?8 v4 C                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)+ u8 O2 }$ h4 J3 d; h9 X1 t- h

* O/ J2 O9 \+ K  A' |1 E                        // à??μ oˉè*
; S# o: b. X& p4 T. E                        pLight->Diffuse.r  = lightColorPrv.r1;
0 l" b. t2 j- t. o: y9 p                        pLight->Diffuse.g  = lightColorPrv.g1;
4 q0 o# J( t1 X, n) D& @                        pLight->Diffuse.b  = lightColorPrv.b1;
8 y( @" G! \! V                        // oˉè* ??à?
3 w8 E+ @# \; y9 B! z: \4 Q                        pLight->Specular.r = 1.0f;
$ Q+ P- c* m/ g9 U# I6 S7 J7 h                        pLight->Specular.g = 1.0f;7 z: z* @& f, y8 W
                        pLight->Specular.b = 1.0f;! M7 W' \# A# k. A! Y; f: B4 {* @& v
                        // àü?? oˉè* 0 Q5 Y% Q2 t4 j) p1 u$ I. J
                        pLight->Ambient.r  = lightColorPrv.r2;
8 {( Q7 H( i% c' X( |/ U! K                        pLight->Ambient.g  = lightColorPrv.g2;: @; o# w/ Q) M9 b8 @
                        pLight->Ambient.b  = lightColorPrv.b2;
- t- ^' k( F" N6 F4 R4 H+ \! s* ^% F( D3 n4 ]2 D/ D  {& O' A8 T
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.# |9 v; r5 Z6 Z
                        {9 E, T5 D$ g( e& f
                                pLight->Diffuse.r *= 0.6f;7 r8 F- z: [9 ^; y; ?
                                pLight->Diffuse.g *= 0.6f;( C4 l* f- b8 n! @1 e& a3 ^
                                pLight->Diffuse.b *= 0.6f;
* }6 z& q4 P+ e1 U                                pLight->Ambient.r *= 0.7f;$ f0 k6 f) W3 ^( {4 I$ s- ]" W$ B
                                pLight->Ambient.g *= 0.7f;9 u% q/ Y1 n7 X# `' X( ?" c
                                pLight->Ambient.b *= 0.7f;
, @3 n/ W% A' s1 s; _' _; o: F; ?8 C                        }+ B3 _: F: {2 s) {. l8 @9 V" H/ u# V
                        9 y  e  g# X! c! [, f% u, L' L7 }: j
#if __VER >= 15 // __BS_CHANGING_ENVIR  w5 s% f1 j* ]7 N* d
                        if( g_pPlayer )! ~$ n: j& C0 W& M$ p2 o
                                HookUpdateLight( pLight ); ; m  M3 W, u( L  m7 t
#endif) p) F' @: ^* k% f
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );) a7 b( K$ s) x! S1 {
% w7 a2 V5 |8 k* t$ c
#ifdef __YENV
. f5 A# D9 z/ w5 z/ D3 Z/ G                        pLight->Diffuse.r  *= 1.1f;. b$ h! d6 T7 X% e
                        pLight->Diffuse.g  *= 1.1f;; x6 V" o0 ?( }7 r
                        pLight->Diffuse.b  *= 1.1f;
: U4 X+ b, N/ ]  F3 J! F                        // oˉè* ??à? # n! j5 b' L5 {
                        pLight->Specular.r = 2.0f;
, Y9 `! i+ R: D# C/ W! S3 ]                        pLight->Specular.g = 2.0f;: S) D* |0 A2 d. X: M9 a+ y
                        pLight->Specular.b = 2.0f;
1 b. b7 `  I% Q$ W                        // á?oˉ
% a( T, Y+ A4 B& o                        pLight->Ambient.r  *= 1.0f;2 q% u, n& K' _8 D# Z
                        pLight->Ambient.g  *= 1.0f;
: s* g7 l) B/ l+ p  f9 ?+ E" ~                        pLight->Ambient.b  *= 1.0f;7 @) j2 O: M' A% T: V1 H0 K" G! ~
#else //__YENV
- N+ D% h# p% e5 R* v                        pLight->Diffuse.r  *= 1.1f;
5 w3 n. i# Q6 i3 z6 o; B; f; d& l                        pLight->Diffuse.g  *= 1.1f;$ L% e7 Y+ K) K- y
                        pLight->Diffuse.b  *= 1.1f;0 f" ^' e" I; t- I
                        // oˉè* ??à?
0 v6 g2 P0 j9 u$ I4 C# `                        pLight->Specular.r = 2.0f;& E* |5 }. ~  Y. W/ j
                        pLight->Specular.g = 2.0f;
4 H2 m- ~. H# d1 H7 Y7 D) V                        pLight->Specular.b = 2.0f;
' @" w; r. I2 E/ }, u& F0 I                        // á?oˉ " s( ?2 T8 V6 }& @
                        pLight->Ambient.r  *= 0.9f;
) l" f/ S7 L9 ?; S                        pLight->Ambient.g  *= 0.9f;6 J4 ^* i( L+ H
                        pLight->Ambient.b  *= 0.9f;
5 |6 e- C% P* m! t0 z; u4 F" X#endif //__YENV
8 a: E9 n7 l# u% D5 j; h/ ?                        - |9 v0 o3 r, W0 Z1 K% W
                        memcpy( &m_light, pLight, sizeof( m_light ) );
; ]# X! T  a2 o. q. R2 P. N                        " t6 V5 N- {4 V$ O, A( m& x6 i0 c3 p
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
' B' j! F9 C; L# K# v  F- H                        D3DXMATRIX  matTemp;
) |3 D1 t2 J! S- F& u$ Y* N. F" e( Q                        static const float CONS_VAL = 3.1415926f / 180.f;5 o- g" B  U! \  q* I4 t# ^: ]
0 I: B% M! d) J- M) Z
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);: E8 Z; X/ v! q
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);4 W0 |8 C2 [6 A. d/ _" N
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); * r8 o9 n* k  @/ P7 Z. q9 f2 H9 R
                        pLight->Appear( m_pd3dDevice, TRUE );& K5 R, u' H  I) T8 k/ i. w

" [' K) Y+ S4 i4 o                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
5 p/ {* ~3 Z; p9 Q% ]3 u" }                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));+ [( M" X; \5 u" j5 A1 c
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
/ v# E$ M- F: I" l! N) i- m$ x* B6 w" Q% Z: S3 F
                        DWORD dwR, dwG, dwB;
: t/ T; m. D$ [( k& E: J                        dwR = (DWORD)( pLight->Ambient.r * 255 );
% J& T; S3 \. x; r* {                        dwG = (DWORD)( pLight->Ambient.g * 255 );
+ y/ {% m* A4 k6 ^* v7 |0 U                        dwB = (DWORD)( pLight->Ambient.b * 255 );( e) v' T2 r# e/ i9 N" o& w5 z* `
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
# x, A1 Y$ l+ A" S8 y& a                }
' i# o/ r2 m4 o1 j; Z! W7 i+ O        }
  }# {1 V$ m2 L3 q! G3 `1 G7 {' p9 G+ A- b2 P3 u" `$ _  u
        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
& T+ r! H, ^, U        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) );
) T/ E7 v& y0 u, p" p        ::SetLight( bLight );
! [: ]( a1 N0 |3 W# Y% D& S& {; D8 l: W0 [
        // ±ao? ?D?í???ó á¤à? 2 O, O; k- |7 g  ?
        m_pd3dDevice->SetMaterial( &m_baseMaterial );+ x" L) w; E/ z' E+ W* X5 B* W# \
       
# o% }' g/ U" l3 P, f6 n#endif // not WORLDSERVER
8 q% d! j6 k! [4 H}2 u/ k' [. C2 Z& y7 v
并更换& [4 v3 p" O: J
Code:+ q* L/ Q8 E: u/ u+ I8 V1 C  @
__FLYFF_INITPAGE_EXT
' @6 N7 u  d6 }( O9 ~8 n定义
6 b% O4 N* S! r+ N8 d- {+ M" q. \8 n" T* a5 X7 Q

) X2 B$ [$ M: x- Q
) E8 l, q0 V" x$ Y6 Z( Z5 x$ u$ o' V& ?8 Q( H' N* q" B
现在终于删除我的狗屁加速...) f7 J* Z- w4 v: Z
" A6 a+ t( {0 I4 V) V9 G
4 Z7 m* |4 F2 K+ {- T2 ]: l

) d+ h: l: X; I. o0 t& F$ c: X: V- H




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