飞飞世界论坛

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

作者: admin    时间: 2016-1-10 03:46
标题: 自动饮血和登录视频
食品车:
+ o3 x: l# }2 o- {2 L尾翼:" u1 R0 h( W2 P! }/ E

$ F. f# Q( K2 ]+ D. `- |3 m9 p代码:
) T% k* ^2 E4 t# ]; E% CCWndAutoFood::CWndAutoFood()6 q: x  n: T* J
{8 t  Q" x- g2 C% R3 l, v
        m_pItemElem = NULL;
+ ~. r1 I; e# U) a1 n        m_pTexture = NULL;
3 R3 a5 }, l( N, |1 e# Z- }        bStart = FALSE;" @' d5 e1 O% P5 [! l7 P) O
}$ P4 v; j9 m. U2 c' U$ O' @$ [

6 p2 }/ [, D" A3 v2 \. ]CWndAutoFood::~CWndAutoFood()
' A8 t* n5 F& C6 P9 d; [+ G) R{% C# \# z* K. C. Z* b4 c/ W9 V
        AfxMessageBox( "AutoFood ist gestorben " );, X1 O  ?& }" l; g4 R3 U6 n  o: r
}
, ~/ d* V. l8 ]0 K9 r2 ~BOOL CWndAutoFood::Initialize( CWndBase* pWndParent, DWORD nType )8 }) N& V! R4 K! s
{
$ L% H3 Z) D+ Z: }6 @6 Q) u        return InitDialog( g_Neuz.GetSafeHwnd(), APP_AUTOFEED, WBS_MODAL, CPoint( 0, 0 ), pWndParent );
& R1 ?5 _5 a$ T7 f+ i}) ^& h- _' B: S) S. ]# z# `2 w

" ^5 g" d) k8 w! M% E3 v" l  a& TBOOL CWndAutoFood::OnDropIcon( LPSHORTCUT pShortcut, CPoint point ). a0 \6 ?8 v: P7 o: _; Q' q
{
6 J! R9 v5 {6 y5 ?; r        LPWNDCTRL pWndCtrl = GetWndCtrl( WIDC_CUSTOM1 );& R) x* p* y4 C) P& |
        CRect rect = pWndCtrl->rect;
6 f; ~8 ~3 \! R8 F        if( rect && rect.PtInRect( point ) )* \  l  n- A3 ~( l  Q
        {
2 |9 b: T& g0 Z% i5 P- [" T                CItemElem *pItemElem = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );0 Z, E4 q0 {1 z9 b- B0 \8 w( }
                if( pItemElem && pItemElem->GetProp() && pItemElem->GetProp()->dwItemKind2 == IK2_FOOD )
; r, k5 A# l" _2 X& B2 S* a* v                {
( G# a( ^3 h9 j5 S( ^- T" w                        if( m_pItemElem )
1 ~3 n& L/ G, x+ Y                        {( U# F: u; N8 X3 J8 d
                                m_pItemElem = NULL;/ \1 m# A7 G0 b' i4 F
                        }
6 t" h4 k$ u+ ^                        m_pItemElem = pItemElem;
/ R; v% |4 @6 J! Z+ m1 j" \& v3 u                        m_pTexture = CWndBase::m_textureMng.AddTexture( D3DDEVICE, MakePath( DIR_ITEM, m_pItemElem->GetProp()->szIcon ), 0xffff00ff );
, k0 T5 k. c, J) O5 T" H; ^                }else{; L" b/ X/ S3 y* _* M
                        SetForbid( TRUE );
4 P! f; I: w, R1 s  T" K, R7 k                }
/ z0 g" ~$ u9 G        }else{- e' ]5 M: x# K$ L
                SetForbid( TRUE );* x. u7 t6 o5 u/ V) A, j
        }. h$ P( Z6 V0 x" n; Z5 u+ W  @
        return TRUE;
" w& P# M$ S2 U. K: H# o}
- n% P7 V$ v; {
( n" B! ~2 a  s/ ZBOOL CWndAutoFood::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )- z: ^# [* J4 |; r
{% `1 P  u) H  {) R4 P. |
        switch( nID )  |$ Y6 I8 Y) _# H% g* ]9 f
        {
, [* f+ w9 ~. A/ t( n- L* R: S        case WIDC_BUTTON3:
2 o4 w* k3 K+ ~5 j+ O                {7 d, J: \& K2 d$ d9 P
                        bStart = TRUE;
- p5 {4 ?% _4 F+ e4 }& R2 P                        break;
3 D4 S! A) F. G/ B3 S* O                }
' h& t1 z$ M* T4 v        case WIDC_BUTTON4:4 ]3 h! g5 d. \+ f' ?
                {
# k) x7 i/ b3 V  w2 j3 q( Q% C% B                        bStart = FALSE;+ N1 ~2 {4 S# [  s0 I! p; l  N' S
                        break;
# |. h: U4 B5 u3 K- i7 O. y                }
7 A. W; N% |! J# b2 j        }$ O( |5 p. u- M) P1 p+ F) I# W' i% o
        return CWndNeuz::OnChildNotify( message, nID, pLResult );  V& D  f) j/ R# Q; }$ y
}       
* W0 J4 U9 S9 D8 M" Ivoid CWndAutoFood::OnDraw( C2DRender* p2DRender )6 E9 m6 d# K3 |% g& j& Q7 A
{
; H/ f4 W& P* A' ~        CWndButton* pBtn = (CWndButton*)GetDlgItem( WIDC_BUTTON3 );3 X( X' W. a/ i
        if( bStart || !m_pItemElem )) b' B9 [) `' {7 W+ P; x. a& d
        {
' H$ {4 Q2 T4 s$ x; Q  f% V. _, y                pBtn->EnableWindow( FALSE );( f' l3 S7 r8 a' ?  b* p" e
        }else. @' y2 P4 k/ A9 L# y1 v% s# S
                pBtn->EnableWindow( TRUE );
7 |& I' x/ t" I3 q' a- A- ?6 ?        if( m_pTexture )) t1 A' B8 V( r/ A5 y! D+ d
        {3 G8 ~" [' e, }+ [8 o5 q) [+ M& b
                LPWNDCTRL wndCtrl = GetWndCtrl( WIDC_CUSTOM1 );
4 V/ U) x+ W, ~3 q2 ?4 [( y7 v                if( wndCtrl && wndCtrl->rect )/ K) N1 {- [* _$ X6 x
                {1 Z* M/ P1 `! G* @& L
                        m_pTexture->Render( p2DRender, CPoint( wndCtrl->rect.left, wndCtrl->rect.top ) );1 [! [5 D( d) z: @2 E5 u
                }
: |  H' H6 c6 G1 r0 f        }+ _4 R7 _6 S; p' i' h; V
}' h0 z+ M  t0 `9 ^# s

% H! b3 N) g+ {+ I& u. `- NBOOL CWndAutoFood:rocess()
8 O3 l, U* T" D2 Z/ P{
1 Q! ^3 R% O8 L1 @! i* Z1 j3 U' y        if( bStart )/ W- E' |: G1 c2 y; [
        {
0 ?: E6 l+ n* \3 h2 r0 s: w1 F                if( m_pItemElem && m_pItemElem->GetProp() && m_pItemElem->m_nItemNum > 0 )/ K2 }' j1 r9 a
                {
, a& `* \  n9 K) B' V  u                        if( g_pPlayer->m_cooltimeMgr.CanUse(g_pPlayer->m_cooltimeMgr.GetGroup( m_pItemElem->GetProp() ) ) && m_pItemElem->GetProp()->nAdjParamVal1 + g_pPlayer->GetHitPoint() <= g_pPlayer->GetMaxHitPoint() )
. A2 b2 {: X0 l" {: V! W                                g_DPlay.SendDoUseItem( MAKELONG( ITYPE_ITEM, m_pItemElem->m_dwObjId ), NULL_ID, m_pItemElem->GetProp()->dwParts );, P- M, O: P% e9 l. O; d& V- L  }
                }else{# Y% ~# B2 R$ _. N" \- r' K
                        bStart = FALSE;0 l* l" j( N" B( i7 B) J/ b5 D& j5 Y
                        m_pItemElem = NULL;3 }- e* W/ ]" D4 W. j
                }
- k& j' B0 X/ X: z- K+ J        }: s$ ?2 ]! K4 }" E5 [, v) n
        return TRUE;
6 F! g1 x" u2 \% k& F}) C; I/ r6 C  d$ u' K
' }9 U, h: U1 }" b/ }: N
登录视频废话:
- G( d4 d. s4 S+ z4 S6 L* G% e尾翼:' R3 s# f2 B8 d3 |( ]$ U
' v$ F# b8 I' K2 r
代码:% ~5 n) U& k) O6 L  U
; j; L" m4 K/ M8 U5 f7 ^
void CWorld::SetLight( BOOL bLight )
+ C. h0 d: a0 S1 [; c" w$ Ldurch0 y: _5 M" F  n3 K( }5 ?
Code:" ~- ^. @' |5 `6 e1 }
void CWorld::SetLight( BOOL bLight )
, k5 K1 u3 X) f5 @) J0 ?/ j& D3 c{
! g5 |! M# b/ {7 @# `- \: |        //ACE("SetLight %d \n", bLight);1 [& i8 K( {1 ^2 _, F
       
' o( G, X: s: y2 p* w6 c#ifndef  __WORLDSERVER 1 s& D  ?/ ~. T
        DWORD dwAmbient = D3DCOLOR_ARGB( 0,0,0,0);% Q+ y. M+ r! J0 O; z( ?/ Q: h
        CLight* pLight = NULL;- B# C- j& g7 m# h
& u0 e2 H) [, ~( u
        D3DXVECTOR3 vPos = ( CObj::GetActiveObj() != NULL ? CObj::GetActiveObj()->GetPos() : D3DXVECTOR3( 0, 0, 0 ) );8 i& B, H, f+ P+ A, I

7 J7 O1 b. H" L: _        pLight = GetLight( "direction" );
$ d3 u; J$ ^  j! T" k/ @6 k% D5 J. d
#if __VER >= 15 // __BS_CHANGING_ENVIR' X+ z" x% i) ^1 g: \7 t* j/ b
        if( g_pPlayer ){
4 n# b% D7 @& ~. @                ENVIR_INFO* pInfo = GetInContinent( g_pPlayer->GetPos( ) );3 Z; V* W' C, u  t- y- ~/ y6 h
                if( pInfo && m_kCurContinent._bUseEnvir )                // ′??ú ?èàì°í ′??úá¤o??| àì???ò °??ì?? !!! D" g& h7 M( i0 @3 {" k6 ~+ q
                {
; L# S# \4 C( K0 w; U+ \/ ~; f                        if( pLight ): q8 i# e3 U; o# b
                        {
/ \* k: a8 v% D1 d3 W# s                                pLight->Ambient.r =  pInfo->_fAmbient[ 0 ];
) z. m; p! E' R( o+ V, o' @. d                                pLight->Ambient.g =  pInfo->_fAmbient[ 1 ];
; G( O4 g! `' Y" Y                                pLight->Ambient.b =  pInfo->_fAmbient[ 2 ];+ y$ e8 z9 e( m0 I  L5 F9 ]  N
& i/ U: [3 |9 T" _5 v
                                pLight->Specular.r = 2.0f;; o% O' q0 y( T0 m# `( W
                                pLight->Specular.g = 2.0f;4 t; `- ]( A* k9 w. X; k/ y; N
                                pLight->Specular.b = 2.0f;7 J8 {* I, O: A# r7 K: @
        9 u3 D+ R) L8 v" i+ w; G1 W' M
                                pLight->Diffuse.r = pInfo->_fDiffuse[ 0 ];2 m9 x* i# q& p+ N) f# a8 N
                                pLight->Diffuse.g = pInfo->_fDiffuse[ 1 ];
$ J  O7 X, e5 ^$ U: b) s* j9 I                                pLight->Diffuse.b = pInfo->_fDiffuse[ 2 ];& y* Z4 p2 g- t8 j9 Y  j
        , m% T9 X7 O/ F! l9 {* j* W1 D
                                HookUpdateLight( pLight );
+ T7 R' _. H* \- D2 S
: C4 B0 T# v" g( P                                memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );4 L+ ^( m1 M# Y* e2 L3 T  \
                ) J; }5 p9 @) [* t
                                pLight->Diffuse.r *= 1.2f;
* \$ M1 p" E2 p& ~                                pLight->Diffuse.g *= 1.2f;
/ M! R1 l: F" H) V6 T% [/ I                                pLight->Diffuse.b *= 1.2f;
, S. T4 q* Q3 _3 g& f. I
7 R8 _0 c: R2 x; R! O! c' N                                pLight->Ambient.r *= 0.8f;
* H, |  K( A3 `6 ]6 q4 G! x                                pLight->Ambient.g *= 0.8f;
0 H- J. R9 o8 w  p3 l& H5 a9 K  T( A                                pLight->Ambient.b *= 0.8f;* r& s) _7 r5 [+ [- J) q, p
        0 R" ?- o  {8 a4 |' Y- H
                                memcpy( &m_light, pLight, sizeof( m_light ) );, p: P# R" g, X3 O" h- K# v

4 s  s) ]8 J' E+ V# s) q$ d2 j$ v                                D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);: o/ D6 B0 }9 y+ P0 ?* B; m
                                D3DXVec3Normalize(&(vecSun),&(vecSun));  s: r) P9 a1 S# K
                                pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
. [8 t% I0 U4 g' l7 S                                 pLight->Appear( m_pd3dDevice, TRUE );
1 R: O' U" I7 B# F                $ ?, o0 n3 J. d  C
                                DWORD dwR, dwG, dwB;
9 k; K/ \6 t/ ^0 ?, n                                dwR = (DWORD)( pLight->Ambient.r * 255 );
" X6 Z4 |8 E, B9 A* ^- b7 z( K                                dwG = (DWORD)( pLight->Ambient.g * 255 );0 R# [6 e, Q) `: Q/ M
                                dwB = (DWORD)( pLight->Ambient.b * 255 );
3 M# t: t% [% }% x                                dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );
' g1 Q# P- h( m2 l, Q# |                        }
' R; m- @# I  p$ n- F0 E& f7 q                }
. o+ V9 R" C7 ]3 F3 i        }# @) A6 g" p* {4 d3 N
        else6 p% d  U7 N/ O9 u$ b; {- F) v; M
#endif . N! U3 r# W8 e" n, J& U

3 q. B& J0 \1 n! G0 g        if( m_bIsIndoor )7 ]4 p) r4 }) ^# z" S3 a: V9 e, R
        {* X3 k; f/ t* v7 P; o6 J
                if( pLight )
3 ]0 B$ [/ e# w/ {+ }& X                {                + R8 w( r$ U9 w1 ]
                        // à??μ oˉè*
, b+ J' p  U8 H0 m- Q: H  R  r) p                        pLight->Diffuse.r = ((m_dwDiffuse>>16) & 0xff) / 255.f;* j4 i& b. N: j& ?" b' ]+ z2 i# N; z
                        pLight->Diffuse.g = ((m_dwDiffuse>>8) & 0xff)  / 255.f;. A& I, q' I; K# Q) v
                        pLight->Diffuse.b = ((m_dwDiffuse) & 0xff)     / 255.f;
9 w; K$ \" m; T8 R& Q
- K9 `( e3 w0 e) ]: k. V7 T) U, {                        // oˉè* ??à?
0 X! Z2 o! ^3 p0 Z$ O1 d                        pLight->Specular.r = 1.0f;1 }& j' g1 ^1 G9 U, I( a, K& D1 B  }
                        pLight->Specular.g = 1.0f;* B' i% {# o4 O" [
                        pLight->Specular.b = 1.0f;
5 d. c2 J( t6 ?9 w8 v( X! d                        // àü?? oˉè* $ ~1 [* }" o) k" D0 B* t8 J
                        pLight->Ambient.r  = ((m_dwAmbient>>16) & 0xff) / 255.f;
5 Y, b0 Z2 y. y' N/ d" J$ W% x( S                        pLight->Ambient.g  = ((m_dwAmbient>>8) & 0xff)  / 255.f;
3 k# ]0 C2 C9 g                        pLight->Ambient.b  = ((m_dwAmbient) & 0xff)     / 255.f;( v8 z- q8 x0 \8 \+ m
5 l5 f9 K6 I- k
                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.) @5 b+ X4 r$ |# i
                        {8 N2 Y! J# e. t- ]4 [/ K. r+ F
                                pLight->Diffuse.r *= 0.6f;
; d$ W$ ~- n6 R. f# Z8 H                                pLight->Diffuse.g *= 0.6f;: A5 `2 W8 `8 T" L
                                pLight->Diffuse.b *= 0.6f;: J) B2 g- k$ s% ^4 }
                                pLight->Ambient.r *= 0.7f;
6 n% B! ?$ P: C0 k; i3 }                                pLight->Ambient.g *= 0.7f;  U# P. |3 z6 n
                                pLight->Ambient.b *= 0.7f;5 s( C8 N  l$ {8 w6 v
                        }9 q& F. n3 V5 J; l1 m9 Y( E# ~

8 q* k5 \' W  N( M$ H" G#if __VER >= 15 // __BS_CHANGING_ENVIR
$ r) q1 @% s) m8 v                        if( g_pPlayer )
0 g+ g: X4 Y, ~9 k; X                                HookUpdateLight( pLight );
! S8 l% o& E* F9 G; L* E#endif
( d. I9 U1 k) q: R' r, m! }+ @2 Y                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );
+ J6 w, ^3 q9 E8 Z1 K
+ B) c/ B/ |: f                        pLight->Diffuse.r  += 0.1f;
( O! J- L" ]! x) z* h; _+ g, h% B                        pLight->Diffuse.g  += 0.1f;3 A& T% t( Y+ L2 Z5 [) Y
                        pLight->Diffuse.b  += 0.1f;
* z; `+ _4 d) `- l                        // oˉè* ??à?
, g; |! t3 g/ i  |- y8 ^" ~                        pLight->Specular.r = 2.0f;' m: u0 B/ g, x4 |2 i
                        pLight->Specular.g = 2.0f;6 }' R' S+ o2 J$ A7 d; }1 J
                        pLight->Specular.b = 2.0f;8 B7 i; o) V( Z
                        // á?oˉ 8 g& I- M) m8 S" T
                        pLight->Ambient.r  *= 0.9f;
) v# u+ W; a$ G! l+ r0 F: p  U                        pLight->Ambient.g  *= 0.9f;: k' Z! `6 J4 G# X$ V6 C2 n, a/ @5 F7 b+ ~
                        pLight->Ambient.b  *= 0.9f;
3 d$ v7 j' \6 L7 C% |; E& m' _3 Q4 r  Z( K- ]9 q/ c3 E3 V7 u
                        memcpy( &m_light, pLight, sizeof( m_light ) );
+ w8 }; j. x5 e                       
  O, ?1 Z8 M, m# E/ m                        pLight->SetDir( m_v3LightDir.x, m_v3LightDir.y, m_v3LightDir.z );/ t% F5 t7 a3 _' ~% X' k
                        pLight->Appear( m_pd3dDevice, TRUE );
2 c4 o* m9 R- [8 ^  F       
- S: B! l* `4 f% f  L, o: o                        DWORD dwR, dwG, dwB;
- T- L4 F( L' B: G2 w, ~                        dwR = (DWORD)( pLight->Ambient.r * 255 );0 M2 Z3 x8 M( A* ]
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
2 C% V  _: @% P1 m                        dwB = (DWORD)( pLight->Ambient.b * 255 );
0 W$ l! @2 d% N6 b4 x- K( T$ w+ g; t                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );0 g5 J, a% i, \; Z% K' |
                }
+ Z/ i4 X" q1 C, a! [9 B4 h        }
" w0 q  a2 a+ U' {, |% G; ]        else
! @7 M6 S* L( V) r5 X        {
. s: P! L" p2 K                if( pLight )0 X; [  ^/ h) E
                {
1 l- |& P' ?4 H0 A% ]$ b               
' w! v0 h; @( m+ T                        int nHour = 8, nMin = 0;$ x* l; W; n5 Q! f2 ^
        #ifdef __CLIENT, n: @( w5 c$ S: B! h/ I- t; C- m5 P
                        // ???óàì?e??′? ??°£à? g_GameTimer???* °?á???′ù. $ b0 Z: a6 O' W4 O1 |+ E% Y
                        nHour = g_GameTimer.m_nHour;7 [; i  R; n: `$ Q
                        nMin  = g_GameTimer.m_nMin ;  u; c; L, j$ ]
        #else
4 I+ a+ R* l! [/ d( W                        // o??o??′? ??°£à? m_nLightHour???* °?á???′ù.0 z9 P+ b& Z( n
                        if( m_nLightType == 1 ), [* ]( R6 l8 T. w1 A
                                nHour = m_nLightHour;
' p/ S, m' ^/ o        #endif
, H+ g( ]2 v% `6 ^! |+ X                        nHour--;1 t: |6 Q% ^0 F( c
                        if( nHour < 0 ) nHour = 0;
) @9 v( ~9 o; t0 M( `                        if( nHour > 23 ) nHour = 23;
' J. h; H# w/ ?" {- U9 Z! |; C
# L# M  K% |7 j' {1 R                        //if( m_bFixedHour )
: c& e3 @6 _9 T                        //        nHour = m_nFixedHour, nMin = 0;
- ^  B' g( r* v" B) v                        LIGHTCOLOR lightColorPrv = m_k24Light[ ( nHour - 1 == -1 ) ? 23 : nHour - 1 ];8 d; q% f+ F3 s% e2 A% D
                        LIGHTCOLOR lightColor = m_k24Light[ nHour ];4 i( I- t6 J; T( ~$ r9 ?
$ B. Z6 x1 Q4 i, w, ^1 C" R) C
                        //m_lightColor = lightColorPrv;
8 c( P2 F% ^  W4 a/ R2 c' y& u# H                        lightColorPrv.r1 += ( lightColor.r1 - lightColorPrv.r1) * nMin / 60;1 M, j- {2 t  W" d; H
                        lightColorPrv.g1 += ( lightColor.g1 - lightColorPrv.g1) * nMin / 60;8 |6 I! H" W* O" F
                        lightColorPrv.b1 += ( lightColor.b1 - lightColorPrv.b1) * nMin / 60;. Q; n: p3 u! C6 I
                        lightColorPrv.r2 += ( lightColor.r2 - lightColorPrv.r2) * nMin / 60;
' C: n5 Z: Q" ?% P9 H                        lightColorPrv.g2 += ( lightColor.g2 - lightColorPrv.g2) * nMin / 60;
$ }, e6 l) k$ A, f+ K. \# E( v                        lightColorPrv.b2 += ( lightColor.b2 - lightColorPrv.b2) * nMin / 60;
9 H: x4 r1 K2 c. C# ^                        // 60(minMax) : 15(curMin) = 0.5(colorDistant) : x(curCol)
- w$ z0 V" [; Q1 {7 K4 ?; P9 a& X& w. I
                        // à??μ oˉè* 5 r* e, I% C0 b0 v, T8 i0 z0 g
                        pLight->Diffuse.r  = lightColorPrv.r1;
; C& s; Q2 Z5 b7 m0 U                        pLight->Diffuse.g  = lightColorPrv.g1;' X/ |* v3 n+ D5 O+ x0 J
                        pLight->Diffuse.b  = lightColorPrv.b1;
5 C- L, W" P! f; u( C                        // oˉè* ??à?
7 r; {7 Y8 R/ u                        pLight->Specular.r = 1.0f;
7 t$ A2 b& p! b1 \' }: B2 F. W                        pLight->Specular.g = 1.0f;4 o. G; m: U' i
                        pLight->Specular.b = 1.0f;
% A0 _- p! ?/ S) S% k2 w                        // àü?? oˉè* * h# S, T  K4 f9 g! e3 T& k
                        pLight->Ambient.r  = lightColorPrv.r2;) B; c% D% C/ \4 k
                        pLight->Ambient.g  = lightColorPrv.g2;
6 F/ F+ i% u; X+ @8 u                        pLight->Ambient.b  = lightColorPrv.b2;
( t& _; [2 s6 p- I
7 Z( z! F! ]8 q: |* L                        if( g_Option.m_nBloom )                // ???t?? ?é??àì ??á?à?à??? á??íà? á? 3???áà?? ??′ù. ?è±×?ˉ?é 3ê1? 1à??.
, o2 z& X, K% g+ c1 Y" n                        {; C" l" `3 D! z% m1 j. h' n
                                pLight->Diffuse.r *= 0.6f;
& s$ z6 Y9 Y/ r: Y                                pLight->Diffuse.g *= 0.6f;3 z% I6 `5 `; A  S  t
                                pLight->Diffuse.b *= 0.6f;
' @: I  |) d4 f' Z                                pLight->Ambient.r *= 0.7f;  m0 l9 _# g$ Z+ \! W+ f/ S  f
                                pLight->Ambient.g *= 0.7f;. t* r5 a, C; H8 V) k
                                pLight->Ambient.b *= 0.7f;( G1 n) a5 }# S+ Z7 W8 X
                        }
/ v; U; u  \4 a                       
& |% ]* m# e$ l#if __VER >= 15 // __BS_CHANGING_ENVIR
4 }5 \+ ~# C6 S- z% t/ A                        if( g_pPlayer )
; c4 S% ]/ O6 T* h- C                                HookUpdateLight( pLight );
! a5 [$ P' W# v) ^#endif
! v7 U# W# b! a( w& _" z1 {# @, ?                        memcpy( &m_lightFogSky, pLight, sizeof( m_lightFogSky ) );. G+ z% N% J- \! \- |, ]7 A

7 K* f# ^6 |7 i& Q#ifdef __YENV8 F# A- f; C0 b
                        pLight->Diffuse.r  *= 1.1f;7 Z+ Z% T( I0 p4 W$ W; i
                        pLight->Diffuse.g  *= 1.1f;
& t6 O: n& a; B4 y; j3 `% l                        pLight->Diffuse.b  *= 1.1f;2 T! `0 x* c: Q4 Q1 I: {' g0 F
                        // oˉè* ??à?
& K/ h4 c. \7 Q                        pLight->Specular.r = 2.0f;- k$ M7 [" N( O% m" y
                        pLight->Specular.g = 2.0f;; }+ B$ h4 D4 D  P" T* R
                        pLight->Specular.b = 2.0f;: U8 Q: \3 \1 b" }" |
                        // á?oˉ . C( F5 F1 \/ A$ U1 o4 d
                        pLight->Ambient.r  *= 1.0f;" l# J1 z% q/ @" O
                        pLight->Ambient.g  *= 1.0f;
9 b+ n6 f% ~2 j9 B                        pLight->Ambient.b  *= 1.0f;, O/ w( {; [( U: `# v" f
#else //__YENV
* \+ L: b5 ~3 p$ a' a% k& V                        pLight->Diffuse.r  *= 1.1f;
2 j( k0 R" d; S. q                        pLight->Diffuse.g  *= 1.1f;
1 W: p- @5 D: u0 g0 A' `                        pLight->Diffuse.b  *= 1.1f;" q  Z4 n+ f6 r& Q! T5 g- ^
                        // oˉè* ??à? : a- O8 i& l/ Y7 ?3 }
                        pLight->Specular.r = 2.0f;
0 [$ [  j  k4 M. B                        pLight->Specular.g = 2.0f;
8 _: h; g# d1 d                        pLight->Specular.b = 2.0f;# Z( o+ t* b" a6 P1 c. P. x
                        // á?oˉ
3 G- t! z- ~/ O" l. P+ [. f                        pLight->Ambient.r  *= 0.9f;
. W+ L0 h4 h4 \- w                        pLight->Ambient.g  *= 0.9f;# b3 m/ X1 `% f8 \; M
                        pLight->Ambient.b  *= 0.9f;  L5 h$ l* c& K
#endif //__YENV
+ N( R2 x0 N6 M9 j2 W' I: J. Q& @                        ; ?( O! p" Q' X+ e
                        memcpy( &m_light, pLight, sizeof( m_light ) );0 n* [; s. ]: r- p9 }8 P- o( v
                        % Y5 f5 g2 K1 W6 ^2 _6 c  {: H
                        D3DXVECTOR3 vecSun=D3DXVECTOR3( 0.0f, 0.0f,1.0f);1 [( u& q0 s+ A. }5 {' w
                        D3DXMATRIX  matTemp;
- c6 B8 f* u! |* [$ z( r) s( [                        static const float CONS_VAL = 3.1415926f / 180.f;" D7 K- C4 f5 ]! o
* {& [: S+ w( [
                        D3DXMatrixRotationX( &matTemp,(m_skyBox.m_fSunAngle +180)*CONS_VAL);+ E. Z9 o! U8 l1 f+ ]0 [
                        D3DXVec3TransformCoord(&vecSun,&vecSun,&matTemp);- t4 y# ~; V0 j; t: m, m
                        pLight->SetDir( vecSun.x, vecSun.y, vecSun.z );
8 w; r2 B! g! b' I1 Q                        pLight->Appear( m_pd3dDevice, TRUE );# l) g( F: V3 e* C

6 i! C2 B' L. X0 W" `                        //        D3DXVECTOR3 vecSun = D3DXVECTOR3( 0.0f, 0.5f,0.5f);8 K+ Y& B- Z. O* W
                        //        D3DXVec3Normalize(&(vecSun),&(vecSun));
2 d: n' |. D6 k                        //        pLight->SetDir( -vecSun.x, -vecSun.y, -vecSun.z );
' H; B1 ^1 x7 i1 E
7 W. ?8 Z; E0 q: x. d3 r. _                        DWORD dwR, dwG, dwB;! _0 n, {" l  {/ ~
                        dwR = (DWORD)( pLight->Ambient.r * 255 );% D4 w( I" ^/ C7 D/ h
                        dwG = (DWORD)( pLight->Ambient.g * 255 );
- L+ n3 s3 F, }$ W; g: s+ p" B                        dwB = (DWORD)( pLight->Ambient.b * 255 );
8 `3 R$ V9 ^# Q" O% m: K                        dwAmbient = D3DCOLOR_ARGB( 255, dwR, dwG, dwB );                       
2 K5 k. S( A' \                }
# ]" c4 h7 ~5 @6 I  l; N; L        }- L# ^6 k( |/ O* |* b: e1 F

: @: y) }4 R# e# s        m_pd3dDevice->SetRenderState( D3DRS_LIGHTING, bLight );//m_bViewLight );
+ C$ _. K3 T% ]        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) );
/ F5 H& |" x' p5 ]3 n/ o( Y! k        ::SetLight( bLight );) I0 S; j. v6 Y: i& }

% W$ u  E- Y* r7 G5 @        // ±ao? ?D?í???ó á¤à?
2 M# p" f, K/ w        m_pd3dDevice->SetMaterial( &m_baseMaterial );
2 ]& }  z& Z/ m& W- F; d8 u        9 ~7 Y' L% Q+ c
#endif // not WORLDSERVER
/ R6 m5 g0 ^( J}
( E: S; J. V: S. q# j& T8 u5 q+ e并更换
6 W8 _4 U. E6 u1 n# L0 i; vCode:
9 J. h& h4 f5 U+ Y3 i__FLYFF_INITPAGE_EXT
( R" w; _) X0 y/ _: h! j定义
0 f9 g. P4 H4 n  O8 ^7 M2 r0 a0 z" o" k' [+ P" t
% f7 F" q5 `7 c" H& B5 F

, B) C: g4 {( b9 C5 }3 {3 {$ X9 Y
现在终于删除我的狗屁加速...$ P. I; {; X+ Q" [3 \
9 z( u3 M; A; H) P3 x7 L

0 t- k% K" B6 ?+ |' Q
$ l$ p- g  v  l- e. p




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