飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:7 c3 l# L- B' X& F0 U
尾翼:
( a3 q" u6 @& r- u8 M! x/ j: O
1 ?/ z. |9 s0 ?3 S代码:
& Y# _3 k9 S& ?5 j! T; D, {CWndAutoFood::CWndAutoFood()
- x1 m% S3 d* `; B# r' X$ z- l{
+ X$ _/ G7 x. A( n2 q        m_pItemElem = NULL;% t% U( R' f( B0 k0 G% @
        m_pTexture = NULL;
, z. l% B6 o* k- g        bStart = FALSE;1 }4 X. I. M2 i1 U# x% B
}7 \; g2 J. d" ^5 D0 M: |- ]& L  E& k

& \6 e7 N2 O) [# g0 bCWndAutoFood::~CWndAutoFood()
/ y# ~' o3 B" T+ p  l$ G% U& N{
# y! i% C' M: g! m" {        AfxMessageBox( "AutoFood ist gestorben " );: Z- Q3 V" d9 i9 P: A- v5 A" c
}  m; b: i! V* _0 [7 f: F: J
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )5 V$ C) ]+ y) F7 @, H6 U, y
{
1 S* f3 R+ N$ i0 F        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );3 e; Q' d; ~. U, W# L( g
}& g2 p7 F2 l2 d3 r) Z! H) {

+ f8 t( U0 h8 w# @8 R6 GBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
0 g# A- k. s0 a5 I{, ^2 G+ G5 |' m9 @1 x- E
        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
% L" W. g5 V7 S4 p8 z) X; B        CRect rect = pWndCtrl->rect;" p& ~# ^& p4 W7 \1 _/ z
        if( rect && rect.PtInRect( point ) )- o8 B3 {; `7 a) ?2 H
        {  c" I/ S5 x9 _5 x
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
5 _1 B$ P, K$ I/ D- f                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
% s& U7 o4 m1 z  E! X: L                {
6 e7 m6 E! n1 ^! h                        if( m_pItemElem )
4 j+ D1 I% {" m                        {
$ w1 H/ O! y* b( P( `4 N- p9 }' t; L                                m_pItemElem = NULL;
0 b, T& d; L% V8 E/ D) p: K+ J                        }5 {9 h  L% j: |; b. y2 c+ W5 Q
                        m_pItemElem = pItemElem;
2 X; `) h  r9 u( ~5 ?                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
4 {+ ^1 O" {0 \4 E! u                }else{
0 m+ O4 @4 S* U$ L4 c$ m/ k2 k                        SetForbid( TRUE );
4 K  V! v6 z; v( J" [                }
0 H- S) K4 i+ N) a        }else{
. u4 H& X4 h# c" y- d0 p" w* [                SetForbid( TRUE );
/ y, o$ c! T5 H. K8 r. b/ s4 i" ]        }
3 V3 M7 n5 }' C) d7 y- Z        return TRUE;
2 E. E4 x) P! ^9 T: g}/ g0 E+ K4 @7 n* }

( Q) Z6 ^" J6 jBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
9 ~/ u) K0 M) a0 ]  G{& ~" A, g) S5 H% J( G4 D8 c& K6 }
        switch( nID ): L! f1 t3 L, g
        {9 ^1 o& m3 T5 ~. |2 g& D: I
        case WIDC_BUTTON3:& ]6 P1 G5 O: X0 U  V
                {2 w1 D& _/ z0 s7 ^- Q' x
                        bStart = TRUE;9 ~7 x: ?3 H. r  o; n
                        break;
" v# y* |- ~2 D; k8 v% R+ h/ n                }
& L5 c9 t2 h0 O3 T        case WIDC_BUTTON4:' U1 l, d3 G. C( N  u
                {
3 ]. L# \( L% x                        bStart = FALSE;7 x  M! o# w0 g6 H8 R6 c7 Z
                        break;9 J. m0 s9 F% w  z% n+ l* ?
                }7 f* G' U# f& c7 M: Y
        }4 D& k6 {1 q0 e. c5 d& T( w2 M+ K
        return CWndNeuz::OnChildNotify( message, nID, pLResult );
/ j4 o+ n8 P/ Y- I}        0 c9 q* J5 `! I$ V
void CWndAutoFood::OnDraw( C2DRender* p2DRender )  N/ `& Y$ ?/ G: G* V+ J% Z
{8 ~" A2 Y. K9 N# r0 H
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
$ [( u( L1 k8 B* D3 @9 S        if( bStart || !m_pItemElem )2 P4 ?( I. A9 k" g/ m
        {
3 o* f+ i% A7 y  d0 i                pBtn->EnableWindow( FALSE );
; ^$ ?% W. W5 C5 A5 U$ j        }else) S7 s% [. l4 G+ `3 A$ I
                pBtn->EnableWindow( TRUE );
0 T3 R4 ~" j* Y7 r9 \6 f) [        if( m_pTexture )
( E7 a7 ]2 f9 Q        {
! E5 d( G! W9 p                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );2 ^$ z6 W9 h$ V: C6 {' u1 z' B
                if( wndCtrl && wndCtrl->rect )! l7 I9 y! c) n$ {
                {
6 S( x: C- z, _0 d; z                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );: ]( _6 A- M, f( W& W
                }( k; R8 t+ {7 I  I9 L  r' T- R* n7 q
        }
; _$ |9 y" {  I- `}
; A  q  ]5 m- H3 m+ u# _
  a2 c3 u/ F% Z* y, X3 o; zBOOL CWndAutoFood:rocess()) |) J% p* E0 ]  r5 u* _% j, K
{
: t, F. r' m+ Y; u) x5 P. ]# r        if( bStart )
7 v3 D# {0 W! d9 a1 t        {1 A- {, }. E$ |" `
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )5 F7 O: E" c# ~3 G
                {
9 ~1 b( B6 l5 b% A% H, m' B                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() ). ^+ W3 M! v3 [+ @6 `+ @
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
: P) b/ u% v/ X8 d: H* s' \                }else{8 i  N' a  y( R8 m3 r  R0 B# r8 I
                        bStart = FALSE;
+ h6 x% }2 e2 C! {7 v                        m_pItemElem = NULL;7 F1 z# M9 m) d- l
                }
# n+ ?$ X( a5 V: W8 R        }
, ]6 R# C5 [) M  ~9 r        return TRUE;
2 C; o5 u$ E. q) I2 a( m, P}
* w6 r6 }( m! H, u  [( u. T- J, f+ v/ c+ H' ^+ z- {' z& _! K4 z) K
登录视频废话:
0 i: i2 h! s: C7 x0 G尾翼:
2 ~2 W8 _  ~% g; {7 v! X2 h4 k
代码:
& B* W5 r5 `& C9 d9 q( T5 @* L: q5 _
void CWorld::SetLight( BOOL bLight )( c9 ~+ s$ S5 D) O" @0 W/ j
durch6 e) T0 y4 p& J% @+ @' w
Code:
9 R7 X) ?5 ~" G3 B- ~& e0 svoid CWorld::SetLight( BOOL bLight )
& j- E3 X2 ~. Q* B4 r& F9 v9 E{
5 W; |9 \- p: O7 V        //ACE("SetLight %d \n", bLight);
) c3 m: w  R$ G' w8 l5 B% N! p       
) |3 r- h& G; x  M$ S#ifndef  __WORLDSERVER & w4 ?( N" l% V: {0 Z6 s
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);! t. p6 a& X6 Q0 H+ l& M
        CLight* pLight = NULL;  X0 e" Y/ f' ?2 N7 s( ?

5 g* N- g: G' x. ]8 _% z        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
8 h" B, i8 b6 R! m1 b" g+ `/ Z7 c9 @
1 H, i+ U1 n' t9 Z/ X& t0 f2 q        pLight = GetLight( "direction" );
+ Z3 {% l: {* V9 i  K& Z1 [# S6 J% q0 _/ g! z! V9 ^3 K) \
#if __VER >= 15 // __BS_CHANGING_ENVIR
" W0 S0 R' O! `; F' i+ q4 k        if( g_pPlayer ){
+ v0 T" ^# |2 Q  Q* @                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );& a4 l& [) [2 A- z- t/ b9 K
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!
' Q3 H# Q% Y  a6 n2 ~- Q9 a, M& T                {$ T9 B1 i- y' F. m2 v  @
                        if( pLight )
# c# A. v6 X- A0 y9 t$ n9 G( }                        {
7 q2 j% _& @; [/ g5 p                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
+ i4 ^6 ?- `- a* k2 L/ l9 Z6 j                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
/ h; c' F% M1 F                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
: p+ O. P' t# g" e, {) y5 Y' X8 i9 n7 P) t$ J* q
                                pLight->Specular.r = 2.0f;9 B! i2 P5 M  o5 f7 L5 ]
                                pLight->Specular.g = 2.0f;0 f$ g2 Q3 ?& r( m! _& G
                                pLight->Specular.b = 2.0f;: q- I9 O3 }) ^- P. {) d5 Q# X, f
        - M5 W- q/ H5 A2 \, z9 U3 C$ Y) e( ?: [
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];$ _3 o; B$ Y% z1 b9 j* @
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
' y3 D" V1 J" U& }# |                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];! T' J' x" h6 b. @: e, p
        / W( u& w; R7 N* O
                                HookUpdateLight( pLight );
0 a7 E0 r+ S' H
$ [) f5 l- }* J, _4 l( [: x4 \                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. V  x, c# O) J/ h$ x5 r                0 ]2 \+ }" r& K8 |; |, B
                                pLight->Diffuse.r *= 1.2f;; J; T% x. ?1 c- z
                                pLight->Diffuse.g *= 1.2f;
0 _; B# I' s% E: i                                pLight->Diffuse.b *= 1.2f;/ s1 s. {$ Y) d6 @
. w! V5 P* T0 ]3 ~! {: s  I5 }
                                pLight->Ambient.r *= 0.8f;
& W' c, a" D8 d                                pLight->Ambient.g *= 0.8f;
) D* g2 V. e6 n& e1 \) h                                pLight->Ambient.b *= 0.8f;
$ I6 i( A9 g4 i/ H: E  p" M- v        * c' j) p5 q( E$ O
                                memcpy( &m_light, pLight, sizeof( m_light ) );
6 N: k4 h) w- @5 V* ^3 o/ Y! b' k; S, N% x, q$ D/ a9 M
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);: F( F  D3 f% W2 C# H- P* q
                                D3DXVec3Normalize(&(vecSun),&(vecSun));8 b3 f0 C2 E8 x+ T$ V1 p: `, m
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
1 {# }! [! d$ o6 i% w. [$ v                                 pLight->Appear( m_pd3dDevice, TRUE );3 I% p- z. l: H( C/ B2 F' s
               
+ ~  v: I8 D" h2 y6 w, B                                DWORD dwR, dwG, dwB;
7 N6 ?; n$ `, V* u1 V" x. n. ~, R                                dwR = (DWORD)( pLight->Ambient.r * 255 );
* A  c' H6 Q% Z3 h+ R. r; o. g                                dwG = (DWORD)( pLight->Ambient.g * 255 );
7 O  p7 r, B% @) j8 F) V. J7 I                                dwB = (DWORD)( pLight->Ambient.b * 255 );: I. R1 e, }: v
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );$ F$ N  P" D" O0 u& [% h
                        }9 N* |$ K; c! K
                }
! s. R* }& @4 S5 `$ h. U        }5 {: b' E0 U# K% U- p
        else; E% e6 i1 W# x3 ~2 P% x- E% x
#endif
! D1 \" t! \3 O4 N0 F) H! R* M3 ^' I. s2 Q4 K
        if( m_bIsIndoor )
$ x  s% ?7 m! N. f        {
$ V' d" \$ Q2 b5 L' ^" M6 `* l/ |                if( pLight )" w6 O3 A" m  y% w9 D
                {                . p, \- r5 ]. v" s( a4 a2 H/ u1 b1 x
                        // à??μ oˉè*
* n0 K, s1 U% q                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;
8 d- W9 o$ i- n! X, {- {, X0 A+ _& d                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;/ r% u& h- G# E) V4 j% j) t
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;1 Y8 w& I* A/ m

9 S! `" x/ H& _                        // oˉè* ??à? , C; |9 I8 X3 w+ b) m
                        pLight->Specular.r = 1.0f;
* z# T0 |8 z/ k  z2 [9 U                        pLight->Specular.g = 1.0f;
, Y1 s$ t% C$ M1 c2 G                        pLight->Specular.b = 1.0f;) w- `) O9 g. }. |
                        // àü?? oˉè* 5 H, O% k3 h# q; W
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
$ Y1 A5 y: @5 o8 M( W& ]( t                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
. {% y/ Q' f& C4 S                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;) k. a) p  c# N0 N3 b

  G6 r5 L2 a% C$ C                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.: \, W! F' H9 f* J6 n
                        {' j- T! \2 ^1 Y/ g7 f0 b( F
                                pLight->Diffuse.r *= 0.6f;
! f( b% C1 ^+ G' V. `7 P! |. v+ o4 F                                pLight->Diffuse.g *= 0.6f;
& k6 @# h, l( [5 T                                pLight->Diffuse.b *= 0.6f;! a5 d, U2 j* Q  Z
                                pLight->Ambient.r *= 0.7f;/ S! S, D8 H: m. `6 g) B8 v
                                pLight->Ambient.g *= 0.7f;$ r( S( |8 H. S' d0 j  `" z
                                pLight->Ambient.b *= 0.7f;
# Z3 n0 C9 u7 K$ |7 a: T- r0 P                        }/ o- A* l3 ]3 P& [" ~
# D" s# n- ~6 {0 ?
#if __VER >= 15 // __BS_CHANGING_ENVIR
1 r; w: [# g% Z$ c( |                        if( g_pPlayer )
9 w% b$ |+ ]: i7 t                                HookUpdateLight( pLight );# `; K) F$ S8 B/ T, J$ Y+ n
#endif
, @! U4 P* }6 i- N" U                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ |: v$ D8 x7 J2 L# l3 r7 F' D# g
- ]2 M6 |: ]" \/ D( Z3 x                        pLight->Diffuse.r  += 0.1f;
1 Z- Z+ Q  ]) ?                        pLight->Diffuse.g  += 0.1f;* L& R6 K; I" i. x
                        pLight->Diffuse.b  += 0.1f;
( D- @3 X# I. m5 A1 B- Z- E                        // oˉè* ??à? ' y1 g8 n) H0 Z# L6 w
                        pLight->Specular.r = 2.0f;
% s7 S6 m% e$ k" A+ o3 h8 z" ~                        pLight->Specular.g = 2.0f;
& G& W# d/ S( I* z                        pLight->Specular.b = 2.0f;; p5 G9 l% Y0 c% T! z+ R0 c3 g' Q
                        // á?oˉ ) x; X; e- |. W* I- L
                        pLight->Ambient.r  *= 0.9f;; X  s# j! D1 m' J* h3 w& g
                        pLight->Ambient.g  *= 0.9f;
2 I+ i0 I# W1 O5 J$ _' V) o; ^4 @2 I6 c                        pLight->Ambient.b  *= 0.9f;
, ~7 X# K" G1 h- e
* O8 D% R+ s, D5 x) w0 A  k- m                        memcpy( &m_light, pLight, sizeof( m_light ) );, `0 z; n" k/ {% w. E# r& H! _
                        ( r8 t# u. Q! P6 S9 S
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );7 _) K! L+ L* R2 @% W
                        pLight->Appear( m_pd3dDevice, TRUE );
+ D$ U6 @1 V6 s4 B& i7 N/ q1 P       
5 m5 w  \! e% T! g7 y# `* ]                        DWORD dwR, dwG, dwB;
/ a0 k% G* S1 _$ V4 X! y; G                        dwR = (DWORD)( pLight->Ambient.r * 255 );
" a) l# g# Z/ Y% \: e                        dwG = (DWORD)( pLight->Ambient.g * 255 );
% e( {3 Z7 N2 {* s" o+ k                        dwB = (DWORD)( pLight->Ambient.b * 255 );, X7 h* P  g- @* T+ G
                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 H  u7 _1 R# q                }+ D' ~- w! E1 R2 A8 R8 P8 D
        }
+ ?1 j. p$ x4 A5 `        else0 V+ ?( t$ e, b: L/ r
        {% W) d8 G6 G0 [$ A) Z
                if( pLight )7 |& O( u* C* R  e
                {
1 o% K0 V& j- R7 `1 k7 P                - W% _7 ~" e$ P$ E, a4 C
                        int nHour = 8, nMin = 0;! E/ r* Z  J; M1 N+ S
        #ifdef __CLIENT
! E) t) R+ w7 a( w% V# b3 B* ~0 p4 H                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. ) e1 h. W$ A( _, {0 m+ E
                        nHour = g_GameTimer.m_nHour;
; Z9 U, t7 {9 W- V                        nMin  = g_GameTimer.m_nMin ;8 H$ g( P# l2 D6 p8 x. _; T# T
        #else' g9 E; I4 S9 s: C( K1 v
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.. V7 y- O- i& a6 P1 U; |$ X0 [
                        if( m_nLightType == 1 )% b# _3 F0 P2 c" P% p, j9 t! C
                                nHour = m_nLightHour;
: S  K" F9 k* n$ c" f$ T        #endif/ k' K& {6 x5 C$ a4 l; i0 d' _# g
                        nHour--;& j  F8 u. d5 g  d4 N( {( T
                        if( nHour < 0 ) nHour = 0;
! A2 O2 }: E# U                        if( nHour > 23 ) nHour = 23;" Y- F5 R0 `$ r, x0 U7 a
( I% d& H, f+ l) @  s
                        //if( m_bFixedHour )- Y  n8 j. k5 r/ i. W) k
                        //        nHour = m_nFixedHour, nMin = 0;6 M$ o  h7 g1 N4 ?
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];# v; V* P1 ]- i/ u+ l- H, G
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
% ^& }# e* y- m2 [8 Z
& Z! Q' `2 P) N9 X4 s7 q3 A% ^                        //m_lightColor = lightColorPrv;
1 A1 V6 k! G) m7 j                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;# l. y( q; B. t: U/ ?; ^
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;4 o! r6 x8 |. v5 F
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;# `3 _# l: p, b0 U
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;4 L- T- M; F2 K( F; J/ i' a
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;) f! U; K, F( y5 u! r) E
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
7 x: X( ?+ C& i( x8 n                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)- t2 ~# j& Q' C6 f) F! v
; P- J8 x9 V6 `0 _' ?1 n5 n0 S
                        // à??μ oˉè* 9 `( g4 ]' V- U: C
                        pLight->Diffuse.r  = lightColorPrv.r1;
6 z' p# h( K9 j* p* L                        pLight->Diffuse.g  = lightColorPrv.g1;3 ^2 f8 X: A5 s5 i: U1 E4 P
                        pLight->Diffuse.b  = lightColorPrv.b1;
: A, M+ Z. ~2 z, I                        // oˉè* ??à? . R2 V! M$ t$ ?
                        pLight->Specular.r = 1.0f;& D, d0 p; `: d# K& S: O  K1 P
                        pLight->Specular.g = 1.0f;% r" C+ e* t! m  z- u" ]
                        pLight->Specular.b = 1.0f;
0 A, l) ~3 H5 n7 k6 ?. C2 Q8 N) ~                        // àü?? oˉè* 3 ]+ H" a  \9 @+ m  E8 {
                        pLight->Ambient.r  = lightColorPrv.r2;  p+ Q& g( k4 W9 w' b9 U
                        pLight->Ambient.g  = lightColorPrv.g2;; w9 ?3 }% Q5 r9 _; r2 Y1 X# c$ y2 Z
                        pLight->Ambient.b  = lightColorPrv.b2;& u" z% C! ]+ T4 R* R6 J
# m' ^) Z/ t2 Z. r' [
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, V8 X) x2 @6 @7 s                        {3 V# Q+ t. E& Q6 R8 P
                                pLight->Diffuse.r *= 0.6f;% F* q9 y. g8 c: [/ w- H
                                pLight->Diffuse.g *= 0.6f;6 O9 \8 g% f& ?! O2 b( D
                                pLight->Diffuse.b *= 0.6f;- w9 A  s1 L0 ?& e
                                pLight->Ambient.r *= 0.7f;( [: V& B8 C" c# z* Q
                                pLight->Ambient.g *= 0.7f;' I1 {" h  [" B) Y6 c9 `/ X& n
                                pLight->Ambient.b *= 0.7f;
4 b0 N( X) E7 ]3 I                        }* \) K" j% B% M) g2 ~, r
                        4 a/ N; c+ e) b" A
#if __VER >= 15 // __BS_CHANGING_ENVIR
  O- Q& y2 }$ c7 f$ J& l6 g" @                        if( g_pPlayer )
7 i/ u$ B* @' O$ |9 V2 s" h* Q                                HookUpdateLight( pLight ); 3 p8 o+ S2 h5 G
#endif
" E- f  ~' A( u$ p# E, z& X                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
5 p9 ^8 j+ S6 K2 O, \' D- J2 ?6 j# s/ c7 @: U6 n7 x" Z2 g
#ifdef __YENV
3 v: A; I- f, ]                        pLight->Diffuse.r  *= 1.1f;
& W- y% @, x" {' h) F! f                        pLight->Diffuse.g  *= 1.1f;
+ P8 Q+ M0 h% m/ w                        pLight->Diffuse.b  *= 1.1f;9 r8 {4 ]9 {" C  v
                        // oˉè* ??à? ) Q1 P) V: @" d; e" Q
                        pLight->Specular.r = 2.0f;
9 {6 T6 x! F9 B5 W3 `8 o0 Q                        pLight->Specular.g = 2.0f;
2 N' H; |  i- ~" X* q. R6 L2 }/ N                        pLight->Specular.b = 2.0f;( t( o1 a4 `. q& }1 ~2 N9 l
                        // á?oˉ ) n/ j" ~' A/ E- g+ W
                        pLight->Ambient.r  *= 1.0f;
  I4 e) i8 R! _  T1 z1 _                        pLight->Ambient.g  *= 1.0f;
0 h; h2 a0 t8 ~9 }8 i                        pLight->Ambient.b  *= 1.0f;+ M: {! y& X4 N7 s
#else //__YENV" I' n  _8 A8 t; J/ J2 P
                        pLight->Diffuse.r  *= 1.1f;
9 C" H! P/ w8 s+ [5 J                        pLight->Diffuse.g  *= 1.1f;
7 _8 z7 l: O. A/ _% ?( A; c                        pLight->Diffuse.b  *= 1.1f;
- J$ Q3 ~& D+ n: J/ Z8 l* W8 T2 H                        // oˉè* ??à? # e$ K6 u. S/ O: b& t; J
                        pLight->Specular.r = 2.0f;
# W$ n, ]3 {+ O                        pLight->Specular.g = 2.0f;6 s4 h$ J! ?/ O: c' |3 [2 c1 X2 C. [
                        pLight->Specular.b = 2.0f;
# r2 T9 K* I+ a7 h                        // á?oˉ
( {& k4 Q0 B0 T8 C0 w& t                        pLight->Ambient.r  *= 0.9f;
/ K4 Z7 d. I# [7 ~0 f6 S" _                        pLight->Ambient.g  *= 0.9f;
# W$ @1 B# v% L% D) K                        pLight->Ambient.b  *= 0.9f;
) X1 h% g& ]. b#endif //__YENV % p3 F8 g7 z$ o+ i2 [( P0 |
                        , \% x& P$ F# j% t$ v$ C
                        memcpy( &m_light, pLight, sizeof( m_light ) );
, t+ ~- V/ e! V9 P                       
# B3 G. {: P" h                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);
0 J; _6 x2 W2 Y: Q4 S" I                        D3DXMATRIX  matTemp;
3 b; m- W  z* m) y                        static const float CONS_VAL = 3.1415926f / 180.f;
1 U4 O+ J0 y1 S/ _6 V& G
, B' N7 {) y8 `) V! q% l$ @1 F% P; t                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);6 p, t& u4 q9 ~9 t) z
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);* V: ~6 i8 E7 D% d" Q
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
: p6 ~8 _1 F, u* f* R                        pLight->Appear( m_pd3dDevice, TRUE );% p& n3 f7 w- K6 B+ x% {
. O3 Y) u) O. m0 k" d+ C) D
                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
9 H; x3 ^9 d* J& ]6 ?                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));! W% `( U4 d; M0 Z) X# @% |. H
                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
' V) [- f  k- \, z& O8 r8 W
, `+ i3 \, a6 z& T                        DWORD dwR, dwG, dwB;0 s. o+ ^; B0 U* P1 v  ?. e
                        dwR = (DWORD)( pLight->Ambient.r * 255 );) e" {! K7 L2 u! J
                        dwG = (DWORD)( pLight->Ambient.g * 255 );" _. g2 m1 R" q9 e8 j/ [+ S
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
5 B# B( C) x$ R                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        # m5 {8 V6 g# m% ?3 I9 ^( D1 X& N
                }
' j6 e& g8 p& W) i# U2 F5 D! R        }
: }3 V! ~. v/ x
3 H& v4 n9 p. Z, ~; V1 h) K! k        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
9 F! _: X* a; X        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 a& t7 h* Q6 b  Z( ^7 f8 N        ::SetLight( bLight );
; x$ n3 k/ f: |- I2 f% [# q  X+ \- s  X$ ]1 W) s2 s& P8 @5 W
        // ±ao? ?D?í???ó á¤à? % L4 ^+ u$ w( k' f8 o, q
        m_pd3dDevice->SetMaterial( &m_baseMaterial );; A/ z  j, P9 I6 |, J
        . S+ K4 ^6 P0 m2 L6 {
#endif // not WORLDSERVER  Z" {8 [9 X0 [; n: w  }
}5 ^( ]2 n2 j* `; R: _: n! V
并更换+ e, [5 P& U. u4 B) ]
Code:. w: ?; x1 o1 `/ @& t
__FLYFF_INITPAGE_EXT% Z( T+ v, O* M1 n, B+ P
定义
; X# o" R8 o. d- Q- x2 X+ M, _1 H9 _7 ^+ R5 m5 {3 h

8 l% \. R0 g/ n1 o6 c( V! i6 b. d8 a& R+ L# m

% I4 m( G: `+ R5 q% p( Q- O现在终于删除我的狗屁加速...! `$ V3 F* Z/ F1 r- j: g
# r8 h$ E" a4 u* s* R

+ n- S! }- U0 g, o
. B& m7 D! V3 H4 h' k6 @3 h




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