飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:6 w# ^! ^; v8 R  _* x4 |
尾翼:
. r+ g9 W& N% E5 ]+ s& o  h
  v; S2 p& I2 P) X( P# U  W代码:  w, L* e; N8 `. A/ Q1 b
CWndAutoFood::CWndAutoFood()3 m) Q1 {' c) A( y
{, |* Y1 X- b4 E+ m
        m_pItemElem = NULL;0 K/ m, d# W, T; l6 {/ N3 f: `( m
        m_pTexture = NULL;
! z$ M# {8 @0 F0 u/ H- w        bStart = FALSE;
3 I: `! R/ {9 y4 k}
$ E( ~  v4 j1 J! w, M; b$ m! p
/ k/ N( ~; e! o- nCWndAutoFood::~CWndAutoFood()0 e8 r& ?; ^) ?  S1 ^+ E' Y/ Z
{
0 y% a, m; s" [2 y        AfxMessageBox( "AutoFood ist gestorben " );
: R' ~7 k, ?; H/ c3 m4 d* s+ C, E}7 ^+ K' E- n  D- w7 q. l- R
BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )
3 u+ T* s0 ^# b6 ]& p2 m* o7 J{
- X7 E% w' u( z, W! Z% Y        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
" S9 i4 i4 o1 v. K5 P}6 Q  m: K( _3 n7 O
" D$ N7 L" v! c/ ?
BOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )' M8 t5 t, |2 [. m
{
8 V5 j" \) u  n* i4 T' U, J: D& |! L        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );  n4 i* P$ R( d% x5 Y, F' X
        CRect rect = pWndCtrl->rect;  ^+ v' \: \0 a9 K- b5 m) p! `
        if( rect && rect.PtInRect( point ) )4 S- ?" j6 K; o4 W, p9 _# ]& S" V$ \
        {2 p6 A# p7 u; \% c$ b. K5 g
                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
. y/ b; U( w7 I% k' o; a                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )$ n; E, Q: i/ y' ?
                {
$ e$ E* W* O! K) g                        if( m_pItemElem )* f% x; ?8 j% l$ j- V1 l  v
                        {0 k; j8 L. D' t% Z
                                m_pItemElem = NULL;: o- \; h4 [- N7 f2 K  ?2 x7 \- y
                        }
8 ]% q' `( c7 h, z                        m_pItemElem = pItemElem;! r8 k1 r) ?, V% J) A# g/ |
                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
! C/ R4 @% z2 {: _& R                }else{
2 n: r" y: Q- i( H                        SetForbid( TRUE );9 @4 a" r& x" v0 R
                }) P1 f) |! o3 V/ l
        }else{. y# o2 y1 o$ J: B) P
                SetForbid( TRUE );! T' h4 f+ ]5 _% ]; B1 }
        }
& I* ^6 ]( H7 o" H" I$ [! c        return TRUE;9 e$ P$ Y3 _9 X
}; C: K" X" G, Q0 X
# T/ N2 T0 N/ ?9 s# \
BOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
* V8 q( D/ [6 M8 G+ T9 S" `{
. {$ D3 ?! n/ U        switch( nID )
# t. w! c5 g) u; u+ I; x        {
4 B; A3 y# @6 s1 l# {9 [+ n' D        case WIDC_BUTTON3:( I5 S! C! `% }9 v* j) P. \' }
                {
# H" p3 r7 u3 S- X- v3 s/ B0 d+ S                        bStart = TRUE;
! d$ `! h8 O5 M  c7 @7 ?                        break;
  r6 @, x- F! |. m" v# ]; D9 a                }
2 v, Q; ?! a, V8 v+ n1 A. }        case WIDC_BUTTON4:9 h5 s. `- Z! X% |" \2 o  s
                {
1 y% b; h5 q3 \                        bStart = FALSE;
8 t- |6 v; `2 z) `                        break;; ?5 F+ Q1 J2 C# e
                }
8 p' x# s6 @4 c1 j: ^! T        }
, M. Z. p, o. Y6 Q4 B& }' t4 x        return CWndNeuz::OnChildNotify( message, nID, pLResult );" B# W: `5 }* s( S/ Y2 G; M5 ~4 j
}        % a% n' }; y5 [" z6 u0 }: t8 P& C
void CWndAutoFood::OnDraw( C2DRender* p2DRender )1 A5 v# e! ^- Z( L; N* s* R
{) o  M) J  B$ W! X8 C- @
        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );* O3 u" _/ g0 V: @
        if( bStart || !m_pItemElem )
2 S! h, R$ Q; C: q& A9 v        {
2 Y- g, ?6 Y& l; P1 [" n                pBtn->EnableWindow( FALSE );4 D. b5 S. u1 H6 s: P  ^# `0 M
        }else( Q8 K& ~$ T, b# A/ y1 D: p) }
                pBtn->EnableWindow( TRUE );6 K  p3 t6 a4 m) _! f- |
        if( m_pTexture ), ~! B9 R1 N% e  I& \
        {7 b3 I# }# ^5 |$ K' D6 M
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );/ b9 E, {' B1 s# s5 O# _4 _
                if( wndCtrl && wndCtrl->rect )# R/ y0 }! N* ]" V  ~' y, H6 a
                {; w6 T0 y/ }0 e2 s, @
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );
. l2 j1 n0 X; k# {                }
* q  M" s& x6 \8 g        }) @2 `  l' h/ r. d. l
}0 P/ K* c" D9 n, w% S3 s2 _

: G* q- B& Y# b( LBOOL CWndAutoFood:rocess()
$ y; u3 l2 ~+ B7 [{# C* Q' X/ D) z9 J# L
        if( bStart )* \! x0 a8 Y5 O; ?% [* X( `
        {6 b* x$ I9 u5 u' _$ j& ^& N4 ?
                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )6 k! J$ n" Y2 ], D/ `3 V
                {: s8 a8 {! B0 K  }$ s) p
                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )$ _: X( j- |2 R+ o6 Y7 I
                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );
/ c% W( q1 L3 A' B8 b                }else{
4 I+ ]5 y$ r5 L# P, p: A                        bStart = FALSE;
$ V5 u# }# [% Z7 h                        m_pItemElem = NULL;' e" v: R+ A( _2 M7 c2 o) c
                }
7 |! C. d8 P- ?) \/ y        }  r( x% B* ^6 }$ R5 \( K' J; g
        return TRUE;: @# ]" O3 v! s9 `
}
* q0 ~- }6 N. S' ?. U6 U/ @9 L! n) O$ Y% h7 Q
登录视频废话:6 s( X, f  l* C' @
尾翼:' `$ t4 L6 o4 L) K3 ^4 l

4 X* Q# a$ ?2 }代码:
7 A4 q: a: }( ]/ k# Q( y4 [2 [( y; z; Y
void CWorld::SetLight( BOOL bLight )5 t3 @0 {4 Y' d
durch
/ m& f. `" R3 h: ~7 YCode:. }2 E2 o& x1 A8 b& ~! g9 l
void CWorld::SetLight( BOOL bLight )% v8 L# j; I' l. M! c, ^( f  @
{, D( J3 |+ Y. X5 x; t- r0 f0 w
        //ACE("SetLight %d \n", bLight);
& g! D. `  g5 @- a' R       
" {* E/ q9 R( L#ifndef  __WORLDSERVER
3 V% i9 b: O) k' M( e        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);  h9 i1 O! i  R5 p( p" W" V
        CLight* pLight = NULL;
! A1 i+ V4 c  C" q
4 w8 y0 W& ~" t8 J6 M        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );, K; k  E$ @5 H- l
, N9 p( [% A3 c4 t- D" K7 G
        pLight = GetLight( "direction" );
' k1 F. O% C9 ^$ V4 h) N: {, J- [- q8 `
#if __VER >= 15 // __BS_CHANGING_ENVIR3 W; W$ k2 c& b' [# u; o
        if( g_pPlayer ){
6 q; B5 O+ n% D! W                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );- |4 n: r, x& y2 {
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!3 F% c; K4 |$ F& f6 D) c- o
                {
8 A' l# m; Y( f" t                        if( pLight )
+ g3 M/ B1 T0 Y  B$ c6 u                        {
$ s/ B0 e, a6 e. d; K- l                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];. A$ x0 j3 i/ ]7 ]' [# V  i3 S
                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];' C& z, g; _% l& x0 w8 g! s
                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];+ B1 m! e* m3 D4 W$ q4 O0 J! g  \' s
' b# V* t- R4 h0 T/ P) _
                                pLight->Specular.r = 2.0f;
" Y4 k& f& t* K" o, m. R* k                                pLight->Specular.g = 2.0f;6 ^# O6 H( B4 o  \; {& o
                                pLight->Specular.b = 2.0f;
) M6 z4 j5 G+ F. ]  |# D       
2 `4 o/ ^8 p4 y                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];
; |% X. e7 u. H! d& v8 c0 c, ?) H9 I                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];% h* _3 G+ @4 H& C' u4 d2 S
                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];
6 e# J+ s( q6 O) K        9 u( C) \' y  r  U
                                HookUpdateLight( pLight ); 8 c' z4 O' D5 p( l9 }* N+ v

8 q2 ^7 w" h4 P% ~3 t                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );3 n( |% y+ {' Y+ A8 E7 X
                ) [" M- K1 W! ?( k
                                pLight->Diffuse.r *= 1.2f;
7 g% h& m1 y. z                                pLight->Diffuse.g *= 1.2f;
" a  x& z* U% a  ^7 i$ U4 l                                pLight->Diffuse.b *= 1.2f;
+ X3 J! r1 H. X
; F1 ?" l; s# `; q" w$ X! j* A                                pLight->Ambient.r *= 0.8f;
7 A6 {+ y" I3 G+ g5 @# B                                pLight->Ambient.g *= 0.8f;! h! v0 r# i0 e5 Z
                                pLight->Ambient.b *= 0.8f;
+ f: @, f  J0 ?, V8 F* y0 ^        ) \. M. E8 Z7 e
                                memcpy( &m_light, pLight, sizeof( m_light ) );
, q0 ]. `) I# j8 {: @3 q
( ~  e7 Y3 V7 \9 Y* d                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);
) W" p7 N- K. z                                 D3DXVec3Normalize(&(vecSun),&(vecSun));3 W, a" }9 x; T1 f
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
9 f& w. V; m& D  G* i                                 pLight->Appear( m_pd3dDevice, TRUE );& i! `& y) c/ H) D# e/ F
               
4 \! B0 ]7 g. e) h7 d+ ~8 w                                DWORD dwR, dwG, dwB;
9 i3 P9 a2 z  t4 v! X                                dwR = (DWORD)( pLight->Ambient.r * 255 );
+ Z  d7 ~2 V1 u. r6 Z                                dwG = (DWORD)( pLight->Ambient.g * 255 );
# P( B6 b! I% q/ K0 L                                dwB = (DWORD)( pLight->Ambient.b * 255 );6 J+ q' l. O* s7 ]' ^% K
                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );6 q7 [+ M, _- n8 E5 F/ P( u# K
                        }
& l- }& p  ]2 D9 v3 o. Q! P6 g                }+ W# G- x, C. q9 `
        }$ C% x6 W2 I# h  s7 g
        else
0 Y& O4 Q3 r# ]2 q8 E) b#endif ( p- ?& }1 l, ~5 |+ f; ?3 @

4 d& w0 e7 `" b" g        if( m_bIsIndoor )# O: Z5 @  U) l
        {
  A7 |. ]- U, K; P% i& W3 M% c                if( pLight )0 _& l! q1 a: O- u4 i2 y6 r
                {                - H  Q( n" A! ?' h
                        // à??μ oˉè*
. w# t7 ~+ _! w, V) `                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;! s& h* ~4 p& w( ?2 a  R% V4 U- ]9 F. d  l
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;
* R8 b- {, D5 R$ l7 Y9 R) ]                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
5 p' l* }1 m/ D# z& @$ v* x# [1 v' \
7 K1 J. Q; i. U0 ^2 ?                        // oˉè* ??à?
( n4 q/ N7 M& ~% H3 E                        pLight->Specular.r = 1.0f;/ G6 {/ h: _% m) n! s6 p9 Q
                        pLight->Specular.g = 1.0f;
3 m$ ?+ e( P: d; W8 Q& T/ Q                        pLight->Specular.b = 1.0f;! f  w; X6 T. K( l* M8 o& a# W
                        // àü?? oˉè*
" U% w- `7 e6 o1 r                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;0 \' H, f9 w7 g1 J1 k8 F
                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;2 i0 s* [5 c! K/ i5 s5 S
                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;) b; m+ m$ T' j: k% x; W( h+ {3 j
5 `) S9 @$ g. y+ W7 y
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
1 q; F3 A) y: e9 r7 X9 Y2 }( c                        {
7 E; b6 |( O" R2 g+ }/ J7 S                                pLight->Diffuse.r *= 0.6f;
1 `) _$ {: b  t, _9 ]- y                                pLight->Diffuse.g *= 0.6f;
! g# C# q- A/ h9 t7 U                                pLight->Diffuse.b *= 0.6f;1 N* T% c6 p. J# e9 ~( ^
                                pLight->Ambient.r *= 0.7f;) T! w+ n0 w6 u& S9 n+ k
                                pLight->Ambient.g *= 0.7f;% [+ N0 X. o) n% r6 F
                                pLight->Ambient.b *= 0.7f;
- V4 e+ L; a8 x  `8 |                        }+ K$ t, C0 ]& C9 Y+ O; r
; F1 c+ O. }5 D- T* Y( H+ H
#if __VER >= 15 // __BS_CHANGING_ENVIR6 }- \$ v6 C$ Z" G2 t
                        if( g_pPlayer )
$ Q& u  z4 ^& p/ n) E# h9 }                                HookUpdateLight( pLight );+ T5 P! {, {+ u1 ^; Y) B/ z$ a
#endif
+ }* S9 a. X0 l6 u. y, D1 d, m                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );. X8 F/ v2 g. x2 ?

, `- `) |2 ]5 ~- g+ P                        pLight->Diffuse.r  += 0.1f;0 b4 z/ u. d# a5 E% Q: {0 g
                        pLight->Diffuse.g  += 0.1f;9 c! O/ O9 u# S$ n: x
                        pLight->Diffuse.b  += 0.1f;
* D. q& u- ?  o* V1 j+ t" t, T                        // oˉè* ??à? 9 `$ C7 J9 ]0 W- K4 ]/ [: D+ S
                        pLight->Specular.r = 2.0f;1 M5 g: B$ `0 I& Q
                        pLight->Specular.g = 2.0f;# }" e6 @) h1 K4 X
                        pLight->Specular.b = 2.0f;; S6 y7 k, B9 t; T" |" x8 _$ }4 d' @
                        // á?oˉ , m( N& F0 v' e7 z0 D
                        pLight->Ambient.r  *= 0.9f;
: [7 b, E  M3 y* H$ v9 @. H1 \                        pLight->Ambient.g  *= 0.9f;1 @" O. v" D2 C( C% @
                        pLight->Ambient.b  *= 0.9f;
' W- c& V6 l: Y& P. H
$ W  M$ k4 r2 N7 C5 ]5 v; E                        memcpy( &m_light, pLight, sizeof( m_light ) );
) N# C7 K  f! N( y9 P5 O                       
) x5 O3 K7 J+ _  T% G0 C5 ?% I                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );
  i! G) |% m- X* R- Q2 @                        pLight->Appear( m_pd3dDevice, TRUE );
, M+ o7 i& k0 ^3 K+ Z$ F       
* Y4 N& x. `4 S                        DWORD dwR, dwG, dwB;/ e9 P. N  E' q# d' p
                        dwR = (DWORD)( pLight->Ambient.r * 255 );0 G$ h& [, U, j
                        dwG = (DWORD)( pLight->Ambient.g * 255 );% J; u2 d3 Y- U) O. c" L5 N
                        dwB = (DWORD)( pLight->Ambient.b * 255 );
0 ^7 b3 |& i5 m6 `- C& |                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
. o0 Y( V/ C9 ^; V                }
; }; y, P% h6 o7 O3 f        }+ a8 ^/ ^( q% ?9 ~
        else9 [8 Z0 r: ?6 @8 W  _$ i8 {
        {
, C- M# `# X2 _                if( pLight )% A$ e" @- L2 a
                {
0 J2 a2 O' ?" a3 y' m3 C0 O8 T               
' O' _+ ]0 E2 I: I7 T2 _) E                        int nHour = 8, nMin = 0;0 j8 I7 P* T9 @: |
        #ifdef __CLIENT
' O8 Q0 D7 f) Z' k2 Y                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù.
, _6 O$ M" v+ r4 f& Y5 O                        nHour = g_GameTimer.m_nHour;* h' c; d! m- O
                        nMin  = g_GameTimer.m_nMin ;
9 ?7 M- f8 [1 A        #else: \1 G/ I* X, E# U. Y. k- u6 Z
                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.9 _2 @. r: I/ U9 F2 s4 s* y- A% W% q
                        if( m_nLightType == 1 )
1 a1 I! z, l; V9 ~                                nHour = m_nLightHour;
9 v! `; n$ k0 a9 e        #endif  Y4 c9 e( ~; b) `/ `7 S% I
                        nHour--;0 @# }- F& [, o* b# A# G0 Q  g% F
                        if( nHour < 0 ) nHour = 0;
7 F  e' D  F9 Z  C                        if( nHour > 23 ) nHour = 23;
/ x2 Q# x! k$ P+ p4 \$ j  P; q- {! Q& |0 M$ t
                        //if( m_bFixedHour )
; l, ~6 \4 m* l; |& J( o/ C& m                        //        nHour = m_nFixedHour, nMin = 0;  F5 n& B+ v1 J( k! x/ U0 O
                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];
# K$ T% i" D% j  K' t" e( b                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];7 C3 q1 `! Z. c, H" m( J+ V- U

* \, @( f0 B3 J4 t8 |. t& k$ ~                        //m_lightColor = lightColorPrv;
1 j7 x& M& A! d9 {5 u: d                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;; C6 V# ~. ?7 q8 W) u! y
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;& b7 v; ^/ I' a& q: R
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;* b- {2 P( R  T7 ]7 y$ d
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;# Q- `: w1 o% ^- H- `; B1 ?- }
                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;. b/ E3 I6 ^9 B- Z0 }/ A
                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
/ G! E4 l5 M2 |; ]7 b                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
7 v# i$ m6 n0 }/ e- q( ]3 e
( I5 P. w8 K+ G: l$ H8 ~                        // à??μ oˉè*
( N7 F' i( H# Q0 F5 _# ?& z& U                        pLight->Diffuse.r  = lightColorPrv.r1;
. l6 K& _  q3 Z5 Y1 \( X) B) q                        pLight->Diffuse.g  = lightColorPrv.g1;
! W6 c; J2 `1 D" G% H                        pLight->Diffuse.b  = lightColorPrv.b1;
7 Q# L+ N5 @6 z+ E                        // oˉè* ??à? # y+ h, C8 X' Q2 r
                        pLight->Specular.r = 1.0f;  n, F$ a: L1 X  g( s4 j
                        pLight->Specular.g = 1.0f;
" y4 c, c# Y' k# P8 D! z                        pLight->Specular.b = 1.0f;. \) j. m, f- T# n6 w! ^$ }
                        // àü?? oˉè*
4 L$ H9 v- }7 |& W9 [. X4 Q2 I                        pLight->Ambient.r  = lightColorPrv.r2;
' ]5 s! d7 e* C- B8 h! k                        pLight->Ambient.g  = lightColorPrv.g2;( J" b! C9 e" |
                        pLight->Ambient.b  = lightColorPrv.b2;
' I) [4 g8 X9 [
8 v5 n4 \4 ~: d- s) d* H( x8 [                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.; @% N+ T6 a% O+ @
                        {
0 K6 @* m. V' `/ E% Z                                pLight->Diffuse.r *= 0.6f;
; H9 m4 K9 u5 T& h) |- c- a                                pLight->Diffuse.g *= 0.6f;
: s; q2 `0 k7 }& P( S                                pLight->Diffuse.b *= 0.6f;7 T5 b! X4 h- i$ i: U6 \7 U
                                pLight->Ambient.r *= 0.7f;
, S3 O4 O- ^7 g                                pLight->Ambient.g *= 0.7f;
# _& q$ w& _5 U& I% b& A+ ?                                pLight->Ambient.b *= 0.7f;- H+ n3 {* ^# V" B; n6 ]% ]% c
                        }
, M1 z9 i/ n& z% \9 X& |) Y; c4 R! T                        # E" N. k# O/ v) C
#if __VER >= 15 // __BS_CHANGING_ENVIR
  s& J" U& |$ x# ^4 Z( j4 i( m                        if( g_pPlayer )0 |1 Z' a$ E6 |
                                HookUpdateLight( pLight );
1 |6 e3 G. s# R/ e3 M' C0 a  w5 _#endif- v6 \* O3 H0 Y3 e3 I
                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );/ V) Z) {+ \, W1 q: ]

% t& |# |* b3 {  ?#ifdef __YENV) |% v  I1 s, Y5 F8 x& o5 v5 b
                        pLight->Diffuse.r  *= 1.1f;' E: `) G0 ?4 `/ [* g
                        pLight->Diffuse.g  *= 1.1f;- x9 F) q2 p  n. L$ G+ u% w
                        pLight->Diffuse.b  *= 1.1f;  Q8 W1 X/ z' ~$ g
                        // oˉè* ??à? / B- z  s7 Z0 z8 i
                        pLight->Specular.r = 2.0f;0 ]# s4 J7 R# \# R- [
                        pLight->Specular.g = 2.0f;  f+ j8 v, M* A% a5 G; ^
                        pLight->Specular.b = 2.0f;
+ n, D, Z4 @7 ~4 ?                        // á?oˉ 2 @$ F1 G( R) M- M  v: D; p
                        pLight->Ambient.r  *= 1.0f;" H8 O( M& h3 M) V
                        pLight->Ambient.g  *= 1.0f;8 ?( C$ K! R  u$ G; Q' ~& m
                        pLight->Ambient.b  *= 1.0f;8 E; Y( y- D% [: A7 p$ H8 M1 r
#else //__YENV
! @; R) N' m+ F8 I7 i) \7 ?9 t! c                        pLight->Diffuse.r  *= 1.1f;# b! j- Z8 m% y; O: C
                        pLight->Diffuse.g  *= 1.1f;
' r. H- }) s* c0 A; K$ w                        pLight->Diffuse.b  *= 1.1f;
( `2 G- O' r( n+ o3 A                        // oˉè* ??à? 8 k$ }" X* Q, n0 c5 k3 i2 P7 c
                        pLight->Specular.r = 2.0f;8 ~* ^! O  ?1 c7 z( L+ y
                        pLight->Specular.g = 2.0f;
7 ?4 ~0 L6 u9 B, y: Y6 t                        pLight->Specular.b = 2.0f;( `* v9 J* e, j
                        // á?oˉ * v% y+ j* X* u* J/ v8 v' Y0 V
                        pLight->Ambient.r  *= 0.9f;2 a5 ]: d$ y+ Q  @
                        pLight->Ambient.g  *= 0.9f;" e' s; Y/ u) _1 M
                        pLight->Ambient.b  *= 0.9f;
3 e7 o, i% f2 p$ V! `; p" Q* p8 H#endif //__YENV
- y+ I1 c/ C  D) A' _                        - I4 X6 |; Z  a( Q& g
                        memcpy( &m_light, pLight, sizeof( m_light ) );
6 T* `/ w4 E5 f: f$ T. F( n                       
' _7 E4 U. y! U% P6 T9 [" c- u                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);' i& Y2 [8 ~, E) _0 |
                        D3DXMATRIX  matTemp;. m+ n* Q% X. s
                        static const float CONS_VAL = 3.1415926f / 180.f;! Y9 I/ V% a3 L+ J7 W, |

' Q4 O- W& ], j2 a  Y                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);; O& h6 v: O& B4 T' S/ C8 [1 Y$ S
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);8 J( P% x0 u# S& c3 ?' m0 y2 v6 b
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
# P/ \' K" U& v3 {! B& N" o                        pLight->Appear( m_pd3dDevice, TRUE );
4 z! k. A* C6 g/ p- Q) ^7 Z1 t+ H: i- k
8 a, ]( D% ?' W                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);# a2 n" n3 S7 \, W0 P1 {
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
2 E; m0 ?8 F1 P( b- u                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
2 D1 z7 s- R# z  u6 m
" L# Q2 i# G7 `4 \, k% [  ~                        DWORD dwR, dwG, dwB;
8 w* X  v7 f" F! m' C/ L0 h                        dwR = (DWORD)( pLight->Ambient.r * 255 );) R& V2 \; ?! ^7 O5 u
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
; b" ^3 c8 l# l! [                        dwB = (DWORD)( pLight->Ambient.b * 255 );
& O2 ^1 x) J  U' }                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                        ; {+ g* Z3 e& F9 [
                }$ g; \. P$ I- B) Y3 H' `9 A
        }* |% i6 a/ C+ b

/ b( c' M# [, V4 @0 I, g' x        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
) ^5 C% {5 p& l* X; W3 s! L8 s        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) );
2 `1 q6 K, n# z& f9 u        ::SetLight( bLight );
  N/ q/ B8 X8 f/ d/ v3 b( h
. w4 u3 {4 D7 i% `% d        // ±ao? ?D?í???ó á¤à? 1 I# P* }2 c- [. ?, L0 H
        m_pd3dDevice->SetMaterial( &m_baseMaterial );; B8 g) c: U6 G  ^$ {; v8 |
       
3 E0 X: n6 ]/ M1 T6 _#endif // not WORLDSERVER6 b6 G2 y4 j3 n* T/ y) h$ }& Z! H
}( ]) F4 j8 x" G6 Y8 X
并更换
) C, D) a" x/ L" SCode:
2 {' f/ T) N2 ~# {% Y$ p__FLYFF_INITPAGE_EXT
! p) Z4 c+ K+ i5 t( z定义
* o0 P: W/ m: N2 O0 ]5 s5 b
' F9 k* P) l8 u4 g2 f: M* e
* E3 y. w8 ]* P% d
0 b6 B% V$ _- i. Z! K: b1 G' K$ q- G  w* e
现在终于删除我的狗屁加速...6 |: Q) q8 _4 ?; ~- _4 R( o3 C& f

9 L4 a# R3 i4 {) F  N9 T( D; i7 |, R3 S; o

/ h7 r# Y& K7 Q" Z




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