飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
/ c. k: d0 E+ a& V  R6 c' k尾翼:
( X+ w( f: B" J( \
8 v: A: E2 X2 @8 g% D代码:) \! M1 {; Q$ C; g. Y: {1 i  v6 b
CWndAutoFood::CWndAutoFood()
( v- @2 G! H+ M: q( Z{
  c% `, |2 ?  ]        m_pItemElem = NULL;: `4 a* t' t+ D- \
        m_pTexture = NULL;
- p5 ~; Z- T8 Y: G' q8 z        bStart = FALSE;
& U) w* b8 \# O8 ]9 K7 b}+ ]7 e6 z  h) S' z/ ]( e6 [

0 [8 `5 N% Z8 X& S: P3 J7 W4 R5 mCWndAutoFood::~CWndAutoFood()9 a8 n' M& u& F, o
{3 @4 v0 x1 f! q
        AfxMessageBox( "AutoFood ist gestorben " );- `* c5 d1 D" P; \
}/ D0 U' \- ^! O% I: I' N  i, w
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )" j% w& G7 H4 x& V0 N4 e
{" W6 L6 J: i7 @9 P! o2 [
        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
% u. A7 h& e% W) K# x6 }9 P}2 f2 C- o3 r! t$ G  H6 I  Y
3 m; m/ W( B( e0 R; j" a
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
! S; ^3 n( g+ `6 l3 F/ v{
  |* j& V0 [; E: d* _        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );0 y; A5 @4 f6 f' B, \+ C
        CRect rect = pWndCtrl->rect;. ]4 ?) b- i5 x1 s* k
        if( rect && rect.PtInRect( point ) )
3 ~6 \7 N3 G0 y        {
4 ], k/ M# K" P" C* G' Z! r                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
: K+ ^8 m) ^: y9 \) \0 W                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )+ I3 a4 c8 Z+ g$ ~  v$ n0 U- g1 K
                {. j4 m# `+ [5 G$ c- v5 R0 g- m
                        if( m_pItemElem )
% R. q$ l: [0 @9 S1 E2 L& s                        {7 N$ x1 O4 R) t8 Q# I
                                m_pItemElem = NULL;
$ {& O  z5 K/ T' r; l                        }
" q3 e0 M' P7 [* h: w6 G( w                        m_pItemElem = pItemElem;4 F3 i4 E! \( h2 y  h- T* A0 C
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );$ c5 g( a" ?: x; B: C
                }else{
% q( m& I( D6 O% o) r$ m                        SetForbid( TRUE );6 i2 @' E; U! I/ P5 }- c
                }
6 j  t0 U: R" _* @/ Q7 G        }else{6 l  v* F* q$ C
                SetForbid( TRUE );
: v6 l& `' Y, H0 b; I        }) s+ @5 l0 z2 p: e' r" t- j* k$ H
        return TRUE;
0 Y5 m( C, o1 n9 j! g8 m& A}
  y5 ~1 Z0 S- t8 P$ r! m6 Y3 Y
  W+ x; q2 ^7 \' }5 jBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
6 h& Z! ^8 y  a1 n. w{/ ?' l6 \0 _( d- a
        switch( nID )
4 J- F4 p/ E; U        {5 `4 z( A$ C1 D7 I
        case WIDC_BUTTON3:; [8 z/ r- c, Z8 |
                {
: G; w, {2 `: V! ^2 w8 G$ o, h6 {                        bStart = TRUE;; }- {" n+ ^- N8 F6 A
                        break;0 @7 C' b; A; V8 G+ I  O2 K
                }
6 X- l5 u2 h/ c, n4 I6 @2 [' |        case WIDC_BUTTON4:
, f) E0 A2 Q* Y$ X) C: [& x                {
3 \( u4 m/ H5 O( H                        bStart = FALSE;4 \9 s! r3 Z  M) L5 }
                        break;# f  x$ j' r! N/ y& ^- \+ D' a7 w7 {
                }
9 b( u3 M1 k  U5 e% Y        }
# G1 ~$ z2 ~/ \3 `3 A3 r+ p        return CWndNeuz::OnChildNotify( message, nID, pLResult );2 ?3 V8 y2 q8 q' s* ^- b
}       
. `( M; U0 j: kvoid CWndAutoFood::OnDraw( C2DRender* p2DRender )+ x5 Q1 \; i2 I8 Y7 t* r6 N9 l; h
{8 p' V+ C7 H8 u' K6 L
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );
$ J4 Y3 u7 G! F+ V, N1 Y5 r        if( bStart || !m_pItemElem )/ p8 J: b/ J$ x- {* i1 X
        {
+ O# |, s1 i. Z! l                pBtn->EnableWindow( FALSE );
, S! u; y: i. a) A% C; Z' I1 b        }else
7 x9 [  _! H! o) ]. Y* @                pBtn->EnableWindow( TRUE );
7 ^1 W  m/ X  S1 |, ~( \        if( m_pTexture )6 q& c' L' V  q1 ?% Z7 ~
        {
9 W" V* {4 {9 ?$ v4 z1 Z3 J) C                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
" N# ~# X/ F$ O2 K, t' @  @                if( wndCtrl && wndCtrl->rect )# ^" q/ N/ r5 K
                {
3 |: o& ^( D, Z4 k' n5 W' K; n                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
. N/ G8 F+ j+ I- m* z4 z) _' Q                }, a  K3 B8 K+ e: W( U
        }
; U" u$ v: t' b9 Q) h! ~/ h" g9 o}  x; b4 ?, |& P% Z" r

1 C! D6 _7 I1 gBOOL CWndAutoFood:rocess()7 }* U4 Y  _6 b
{
+ i: b9 p% M! l* c7 X" g: a4 ?        if( bStart )
( N! k8 @" n. z. k6 k# ]) j        {, J! P& @& b$ d7 E6 d5 Z; s
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )
! k5 k$ X- ?/ R5 |) d" ^4 N                {) \' ^( v( t( 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() )8 x+ E, `( |  p# T
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
! e2 Y* _- j- P                }else{$ G( ~2 w4 q* r& q
                        bStart = FALSE;5 K3 @7 q# V/ \) s9 o
                        m_pItemElem = NULL;
. k8 K( `  N7 J7 g                }5 E+ W* c/ c, i1 x8 m
        }
$ K2 t, @& s% n7 C3 y        return TRUE;" u8 J: L3 ^. ^6 s3 u
}, X& ]  W+ X- y, K) Y% j$ @# a
6 c+ t5 p! d; M, R: y# H( d. X/ x
登录视频废话:
0 B3 j" D/ z' p2 R  c$ c4 s尾翼:
$ ?. D5 N6 ~$ a; Z3 Y5 E) @  n7 z, a
代码:0 P1 {# b0 }1 ]9 v9 }9 [2 r& v
6 q* v+ C/ }8 y* R: u" H1 a
void CWorld::SetLight( BOOL bLight )8 W0 e+ i' Q* L; G/ [% z. X
durch6 t+ P* V) o: r2 J: ~' [  X3 A2 u$ d
Code:
; N, K( D% y6 J! O& j+ y3 _void CWorld::SetLight( BOOL bLight )' X& d$ x9 T4 C0 Y9 D
{4 e+ ]  F( E; a' `; P' [
        //ACE("SetLight %d \n", bLight);6 O2 D, l& m+ s3 j) w
       
" C- Q0 A# u( g0 @0 r#ifndef  __WORLDSERVER
+ r/ W8 B; _" I, C" c0 M7 F        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);
1 e6 v/ x$ H# f        CLight* pLight = NULL;
3 Q# l( R) c7 O- m' k1 h; y' p2 ]$ c) T8 F% v! @+ O8 H3 j7 H
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );
: U6 y$ J$ x) z1 \3 C. K# j7 F( h+ k' W5 \! ]
        pLight = GetLight( "direction" );
/ P6 d4 }& F* ]& j0 \
" m" D# H4 d+ ?; l. A5 k4 |* o2 B#if __VER >= 15 // __BS_CHANGING_ENVIR7 s. e& {5 h+ r8 o
        if( g_pPlayer ){
# K, Z  r/ D2 S% p                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );
9 Q& n7 s6 r% ?' u3 N8 Q                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!/ H; q) l$ s! f8 r( R; B$ k+ v
                {
( j/ E" N* X$ T) p* k: {                        if( pLight )
3 v9 {( M; A3 `' s                        {
# n) |- f$ v' i- i* c4 e2 Z                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
2 X. N2 t. T2 M* g                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];" a5 ^" t4 X. B+ f" c* X
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];
. \0 R4 E# t  l& m( y) `. {2 O9 C9 Q& j  w5 w) o
                                pLight->Specular.r = 2.0f;5 C. r1 P* [! T5 J' T! v% |
                                pLight->Specular.g = 2.0f;
' l! P+ M6 O; g                                pLight->Specular.b = 2.0f;# o1 W1 k  {( G3 @% G# a7 z' k; N0 q
       
# ]% f0 w" a$ Q" s: V" d8 _" P; h" X                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];8 s& Z/ m- t2 v
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
3 `' c3 k6 ^5 _. H, {- f                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];. F% r# m" `6 L" o3 K# z; l7 E
       
2 B# t, h  L1 B9 H+ k. V5 K3 B                                HookUpdateLight( pLight ); : Y0 l  V, I4 c$ u% O5 C* P1 M
! _8 M) l1 O' g. V
                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
. K% W$ M' o- I* |7 u5 }, R7 T               
1 h! w6 y- W# e) [" f2 ^  K5 e! ~                                pLight->Diffuse.r *= 1.2f;( H3 \# F+ o4 y! v/ f
                                pLight->Diffuse.g *= 1.2f;
7 h$ I3 n; {! z& J# W+ d- A0 _8 a- j                                pLight->Diffuse.b *= 1.2f;* P1 N8 q' J' M/ G
. n/ ^* Y: B8 j  Q6 G. h# A( B' K
                                pLight->Ambient.r *= 0.8f;, g3 O# ]; R) v! K
                                pLight->Ambient.g *= 0.8f;- @# M; I" x, {1 W0 f0 D
                                pLight->Ambient.b *= 0.8f;! y, q5 N% s& f% w
       
. }& Y' C  B$ \; r2 k" x4 L                                memcpy( &m_light, pLight, sizeof( m_light ) );
" H1 O0 P$ q! b; ^6 V1 A( D& c( _
                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
& E; K% V) K8 E5 i2 f                                 D3DXVec3Normalize(&(vecSun),&(vecSun));8 W7 J* q  S* k7 A9 K+ D/ W
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
" a$ l4 k9 g2 R2 C                                 pLight->Appear( m_pd3dDevice, TRUE );' p# |6 S; u; ]3 k8 l, x
                7 \" ?9 a: s. T2 Y2 M* Z( O' `0 F6 G& m
                                DWORD dwR, dwG, dwB;2 D4 u! f& V, B' _3 q
                                dwR = (DWORD)( pLight->Ambient.r * 255 );
6 e# [( P7 o* W: R. U0 [8 L                                dwG = (DWORD)( pLight->Ambient.g * 255 );$ a0 A) a1 ~$ u3 y1 ~$ O
                                dwB = (DWORD)( pLight->Ambient.b * 255 );0 Q4 c" h8 J% f
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
4 z9 P/ L( t! P8 b; n3 ?& ^                        }
$ n8 z3 b8 W+ M- K/ |                }
& T6 y6 i  G7 A# g) I0 D! o' z        }
6 |/ g! n& T; ?, [+ O        else/ _" u/ X9 }4 C7 [+ ?. x. m
#endif
5 c+ o& S% c5 U) z7 @# U% W" K6 M# i# q: L
        if( m_bIsIndoor )
2 X3 w+ }' Y8 B9 I        {3 f! z" X9 I4 j' ?; x. ~; O( H
                if( pLight )
; n; Y2 r( D1 T; C4 ^$ v* g# S- C                {               
) s! a& @7 }4 \                        // à??μ oˉè* 4 f4 `- S9 c: x( A9 z" c. P7 Y
                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;. z: \8 r, k' M) y( t7 [3 g& @
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
" @; ~# g% g0 J* E3 U+ }1 i; E                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
7 _' Q- p  c. x! ]6 K1 `6 P# N4 f1 T2 m* x% D
                        // oˉè* ??à?
7 A! o+ n& n; y* x. G- \                        pLight->Specular.r = 1.0f;2 U* X  W2 i0 K# {$ n
                        pLight->Specular.g = 1.0f;
. p+ e, t( D1 D; G# `+ A7 x! ]                        pLight->Specular.b = 1.0f;. f/ G' s5 ?) }* d/ {
                        // àü?? oˉè* " k7 ]& h/ U" b2 g" F. [
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
. p) [+ c* g" w/ R/ H  J                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;# }3 b0 T+ [9 v4 I' z
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;8 U- e+ m) l$ ^
4 c* e0 I5 ~7 X2 Y: i4 W2 c/ d$ a1 A
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.; f* y: K3 v6 v5 q" k$ F7 A
                        {& V6 w( @" u' C: X6 v! N( N
                                pLight->Diffuse.r *= 0.6f;, h/ h1 q% T- C" X9 G8 |
                                pLight->Diffuse.g *= 0.6f;
5 t0 l. E' n/ r- h4 C( T' D                                pLight->Diffuse.b *= 0.6f;
$ ?- H6 m& p) y                                pLight->Ambient.r *= 0.7f;
1 {  s0 J0 K0 Y                                pLight->Ambient.g *= 0.7f;
0 x9 l5 l' }; Q- L" |' [5 n  A+ D                                pLight->Ambient.b *= 0.7f;
4 X, E0 h( E3 I" b' l9 n" Z                        }, `6 \" U0 G) n% Z  T  x
, G% y# j" L5 D7 u2 p
#if __VER >= 15 // __BS_CHANGING_ENVIR
7 V6 [' ~3 H9 ], x                        if( g_pPlayer )2 n9 s  i! X! R7 S; ]
                                HookUpdateLight( pLight );7 m; G8 V1 y. |. N$ j  }
#endif$ R  L# R: u' r2 e/ h7 s
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );' O) L2 C1 N& F- i1 r3 R5 E0 g
. e! ^$ E3 g: ?, S
                        pLight->Diffuse.r  += 0.1f;2 U( M) |3 \4 D( U; H8 a
                        pLight->Diffuse.g  += 0.1f;
3 k' s/ L( v' \) i0 g                        pLight->Diffuse.b  += 0.1f;
+ P9 A1 S8 y; [) `  @* }$ {; W                        // oˉè* ??à? 1 G+ I5 s) h" s2 u$ z% ]
                        pLight->Specular.r = 2.0f;
5 |. b8 k6 U% V6 [4 n0 N4 A                        pLight->Specular.g = 2.0f;
, f5 b& Q0 J* a9 Z$ I* P                        pLight->Specular.b = 2.0f;: {9 i7 i* i2 V8 d. q+ u7 G
                        // á?oˉ " i0 q& z9 A: v) I; s
                        pLight->Ambient.r  *= 0.9f;3 g6 v+ B; Q' p1 L( S2 P3 w
                        pLight->Ambient.g  *= 0.9f;
8 P) P) e/ I9 b' D% E                        pLight->Ambient.b  *= 0.9f;7 h8 N9 R0 O6 b7 {
, N% t+ j. r8 u  c- g" }  p2 Z
                        memcpy( &m_light, pLight, sizeof( m_light ) );8 h! o4 }  u" k/ f, P+ z
                        6 S( ~# C2 \; h1 {! ^
                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );7 |7 b8 H8 L' Q3 U, ^. T
                        pLight->Appear( m_pd3dDevice, TRUE );8 J/ q% Z1 {/ O, K) z  b5 I
       
, P$ N/ ^& g: e+ \3 _: ?/ S" l                        DWORD dwR, dwG, dwB;9 D; C5 X# R  Y9 F0 L
                        dwR = (DWORD)( pLight->Ambient.r * 255 );
: A9 e4 J, u, B% A+ v5 y6 [- @                        dwG = (DWORD)( pLight->Ambient.g * 255 );3 y! B" @# X5 E% }2 y' p
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
" w/ x5 u5 I8 B7 R' E9 D$ U/ j                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );4 d# p5 r% L& @
                }, H6 s1 |$ ~% s8 ^
        }
2 v; g* s! s8 Q# V1 `7 r        else
0 u  @* `9 `) T0 {# t        {
+ |5 u% I/ P$ a/ g) d4 |# @* h                if( pLight ): z* H, [* \5 ~1 d3 H9 V% R0 g
                {
7 C+ F! d/ ]7 ~8 S/ o6 o               
1 w2 i8 B( p) k0 z3 o' p* C                        int nHour = 8, nMin = 0;. n6 A! Z/ V3 G5 Q6 h/ v9 N
        #ifdef __CLIENT
" W  y/ t8 J4 S1 E                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
) g3 O+ K# x* x                        nHour = g_GameTimer.m_nHour;
9 O7 a8 U3 x  Q1 m# m: [) T                        nMin  = g_GameTimer.m_nMin ;" J7 l8 B) n* g: P2 {' M
        #else  x3 k) w; K6 _2 V1 [( i/ C
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.
! F* w* l: i/ z7 D2 Y' f" U" W$ o1 [                        if( m_nLightType == 1 )
" `! ]1 q+ F; w% H1 f. E% U% b2 K                                nHour = m_nLightHour;3 o  e3 n! A3 G. K  Q( Y
        #endif5 t( K( p' z$ I+ l
                        nHour--;4 r1 M2 y4 o8 H  L6 @
                        if( nHour < 0 ) nHour = 0;& B4 S) `  y3 v5 c
                        if( nHour > 23 ) nHour = 23;
# v9 Z$ a& _6 R6 F0 k4 _$ _
& _$ J  m3 w1 ?& J                        //if( m_bFixedHour )
) f! i/ x. p5 {8 S+ [                        //        nHour = m_nFixedHour, nMin = 0;
) M% A/ [9 F# [4 z/ ^/ D                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];1 q# V5 p) `' u9 ^6 M
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];
- R! k! X7 O" Q+ e
/ U% `  E' y5 {. L) w8 G: H7 ^9 u                        //m_lightColor = lightColorPrv;
5 ?4 j: |/ w* S" x8 N                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;
8 F/ X+ J  i; Z( B2 M+ T                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;6 b, V% R9 N! }& \
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;
+ R* S, m7 I  V, w& F                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;3 ]. N# }, k# O) J  H& N. M* v( \
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
3 i4 b, {4 ?# F8 r6 G6 |                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
+ S# m! l! c1 t                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
: v- ?/ A( s" L7 _0 g+ k4 n# }7 |5 f: @+ a1 S% o8 Y8 w
                        // à??μ oˉè* + g! h; f5 k0 \4 m+ q, D7 n
                        pLight->Diffuse.r  = lightColorPrv.r1;8 R! W# n$ O% Y- E9 g: ~) K& M) G4 y  s
                        pLight->Diffuse.g  = lightColorPrv.g1;* f& l# S$ q+ n" `+ _0 R0 U6 O
                        pLight->Diffuse.b  = lightColorPrv.b1;. S' o& t* d& G& f8 ^& x" t/ g$ d0 T
                        // oˉè* ??à?
; ~# f- Q! V! H4 ?                        pLight->Specular.r = 1.0f;# G- _6 e6 ]& _' M3 }: \6 ?
                        pLight->Specular.g = 1.0f;
) c) _% v7 |* n+ N                        pLight->Specular.b = 1.0f;
# p- T. }5 D5 H4 _7 r                        // àü?? oˉè*
9 H. }5 Y7 ?# F8 E; n                        pLight->Ambient.r  = lightColorPrv.r2;, k& W' W( e, m+ e
                        pLight->Ambient.g  = lightColorPrv.g2;
  G% Q9 e0 B7 V) b0 t                        pLight->Ambient.b  = lightColorPrv.b2;
& ]- ]/ A3 H/ j7 q4 M) K% G6 p5 F' b% l7 V. \
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
4 S0 L% s8 O! Q7 N                        {( O: K; G; ~" n6 P' S
                                pLight->Diffuse.r *= 0.6f;* T+ ]) Z/ d- @
                                pLight->Diffuse.g *= 0.6f;
+ w0 I  L' J$ g8 ]6 S0 S" l, E                                pLight->Diffuse.b *= 0.6f;
: @* m" e, c* m; \                                pLight->Ambient.r *= 0.7f;
; ]1 f" B, ]! ^2 M                                pLight->Ambient.g *= 0.7f;8 D* ~* R$ A3 {! x( X* s# }
                                pLight->Ambient.b *= 0.7f;
) C4 Q2 N$ J& J% R% {! A                        }8 {1 Q) u! V1 K: M
                        : s0 {  I& t) |' O
#if __VER >= 15 // __BS_CHANGING_ENVIR
$ s! z0 L3 _: Z                        if( g_pPlayer )8 N! J0 Z. b% p  D
                                HookUpdateLight( pLight );
' u) s1 Z' f0 F+ |$ P1 O7 z! w#endif
5 t$ f/ T( n+ \8 G                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );% W0 p9 V, }- }; k2 o
4 f$ g  w9 S+ k; f/ S
#ifdef __YENV* W0 {* ~; J& r* k
                        pLight->Diffuse.r  *= 1.1f;
: @% |, ~2 M% t/ V: V6 N                        pLight->Diffuse.g  *= 1.1f;
% R$ N; x% G. M* \) k% X* Q, K                        pLight->Diffuse.b  *= 1.1f;" x* ~0 a$ {5 J! F3 _! H
                        // oˉè* ??à?
7 c$ o0 z; T1 i: p/ z# L                        pLight->Specular.r = 2.0f;
4 |  |0 O) x. U; H                        pLight->Specular.g = 2.0f;; U1 ~8 L! E7 |" T* H/ Y3 n' J
                        pLight->Specular.b = 2.0f;
; {; R$ s2 O1 H, f                        // á?oˉ
: ^  b' F; G. h9 l8 f) |                        pLight->Ambient.r  *= 1.0f;# s; x& f& t. @0 v
                        pLight->Ambient.g  *= 1.0f;% I  v$ h$ `' r
                        pLight->Ambient.b  *= 1.0f;$ ~" \+ z7 z: W' |+ d
#else //__YENV
7 |6 d, F9 G+ m2 A# {% L: G                        pLight->Diffuse.r  *= 1.1f;6 L3 i( v$ w" {
                        pLight->Diffuse.g  *= 1.1f;# C( _* D0 X/ c
                        pLight->Diffuse.b  *= 1.1f;3 L% V5 \* z% y
                        // oˉè* ??à? * s3 `% r( c# h
                        pLight->Specular.r = 2.0f;
2 j* B+ i! s' `: l                        pLight->Specular.g = 2.0f;
0 p( o% P- O* W9 y- D: {                        pLight->Specular.b = 2.0f;1 P+ x6 K& f3 E4 d$ E0 ~/ _
                        // á?oˉ 1 c! l3 l! F: A& `1 a7 W
                        pLight->Ambient.r  *= 0.9f;
; V% F7 S( l% R: y$ ~                        pLight->Ambient.g  *= 0.9f;
9 Y" |5 r1 K( G! U! j, @- A# u* o                        pLight->Ambient.b  *= 0.9f;
) D8 v! S- i3 H; B; f/ E, v#endif //__YENV
0 \" B& x0 _: \8 z& C% c                       
/ P& V/ c- Q* Q  J* f                        memcpy( &m_light, pLight, sizeof( m_light ) );
2 s( R: G2 P1 s                       
1 l/ l( x/ V# M9 v                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);8 S  G6 W8 j$ k$ G' P
                        D3DXMATRIX  matTemp;
( k) g4 M4 ~" s4 ?                        static const float CONS_VAL = 3.1415926f / 180.f;
$ X7 ^4 W; H+ n1 A% l1 Q" a  W2 N. O. `" e4 Z& n% D0 W! B5 w& X( @
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);, _6 t- I$ b/ E# H' j9 f6 U  U0 I
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);
$ S. M1 p* Q$ K0 A8 h5 ~                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z ); $ ?& g; Y  w, }% d5 a( _
                        pLight->Appear( m_pd3dDevice, TRUE );9 c3 k7 W& r$ Y0 C6 H

  x- D) v  t5 M+ q, k* _. x                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
: O+ J9 B& v5 \! S( k, U- w                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
$ l5 J# O, x+ K' b( A5 Y                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
* m6 E, u: ]/ P2 e9 ]
8 ~+ n3 M( @! T$ H                        DWORD dwR, dwG, dwB;# Y8 N* ]+ ^  d' k+ b
                        dwR = (DWORD)( pLight->Ambient.r * 255 );- O5 y9 d( X! J2 M+ V
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
( V8 I) y* E' x- x# c                        dwB = (DWORD)( pLight->Ambient.b * 255 );
8 U0 ~# F2 e! ]                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        ! X2 L/ n" Z0 R7 ~
                }
" D0 D5 Y8 A! D        }, Q$ e+ @6 D% \3 ]2 t" G

# \& W) x; S$ Y% @        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
' h2 O( `' Q# H1 s, C        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) );
* ?0 F6 H7 x( N# e- A5 K        ::SetLight( bLight );& m' n* x( ^5 `$ B

! }# W# d* S" p$ p; @4 ?/ m        // ±ao? ?D?í???ó á¤à? 3 _: ~/ U$ w- Z+ O3 ^- P
        m_pd3dDevice->SetMaterial( &m_baseMaterial );$ h+ t; D/ K: k, i# ^3 V! [% |
       
+ Y: _# C+ S1 r% t8 M#endif // not WORLDSERVER
! r& J* I8 X' h( u}
  F4 R) ], b" G) ~# Q并更换7 F3 b; [3 ]) V
Code:
( j6 e* }- }/ W4 H5 V4 }( v* x__FLYFF_INITPAGE_EXT* t2 ?* c( J0 n; A0 f
定义9 _1 `) Q- A' c' t( n; b8 Q
+ {8 D% u" t) p  J0 f4 {

! u( H' ?+ K$ J, O( _6 H! p; M  r+ c2 @* `
4 X0 P3 A6 @6 H2 X
现在终于删除我的狗屁加速...1 l+ w# Q! V4 }. d7 W& F( Y  Q8 h
' H+ d5 a1 l+ B5 a. _! |; X2 x# L

% y# p1 m! P+ Z2 A6 {) r* \- g4 r
* K9 A, J! c, a




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