飞飞世界论坛

标题: 修复交换错误 [打印本页]

作者: admin    时间: 2016-1-10 03:43
标题: 修复交换错误
Hi I fixed the swap bug a long time ago it got tested on my server and it worked
" H9 C* d$ X: N2 b( S4 F& j4 [I posted this because someone kinda posted a youtube thingy about it :O.
1 ]0 s* g  ?- r
* s' A" v2 K! b+ _7 t. P( E1 eFind this in DPSrv.cpp @ worldserver
+ b  G! `/ E' F: q
' @: ~# S! k: i( H9 ZCode:( r; t7 l2 ~) R5 m6 n3 w& ~
void CDPSrvr::OnDoEquip( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize )
+ q( Q$ ?$ b/ l0 ?* C4 ~' t5 U5 T{4 W) d- a+ |2 d# Q' |
        DWORD nId;
* O, Z! o) x8 {# R+ o! x        int nPart;0 l1 w" I( N9 R' A
# p! v* Y8 y# s
        ar >> nId;
' H. S0 w" d2 X9 E! H/ d3 y        ar >> nPart;               
3 [" L( t3 e$ ~6 ]; E( F( q! b        # x$ l* R" H: G9 V) o
        if( nPart >= MAX_HUMAN_PARTS )        " Q5 C- Y( ^, v% S
                return;
* g* j% f, b1 u) l
) Z/ x% `* J! j1 c* Q  @        CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );And put this under it3 {* m, b1 S  L/ j, u

% D; b3 J# v' w- A$ R( c# l8 y- |* r2 Q9 N% a3 g
Code:/ B3 }# g" j1 U4 M
#ifdef __QUGET_SWAP_FIX! i/ [9 `, o( R* K# `/ E
7 N0 g, M2 Q* |
                                if( pUser->GetHitPoint() >  pUser->GetMaxHitPoint() ); x' _9 O$ }# v2 n! ]& }  v8 h
                                         pUser->SetHitPoint( pUser->GetMaxHitPoint());; z+ P* n  x" U# g  o: g

9 y, b) a4 u* k; W+ B+ W0 R                                if( pUser->GetManaPoint() >  pUser->GetMaxManaPoint() )
( c4 m2 M9 Z! N( C+ c3 [1 T2 A                                         pUser->SetManaPoint( pUser->GetMaxManaPoint() );/ `4 W  d* R3 Q, A3 _" g& ]( _
" U5 f4 G/ \) t: b
                                if( pUser->GetFatiguePoint() >  pUser->GetMaxFatiguePoint() )" c( Q8 q! Y) C' O! m
                                         pUser->SetFatiguePoint( pUser->GetMaxFatiguePoint() );* r) U1 N; Q! w* @
! ]5 {3 Z5 T1 s" M7 {4 h
#endiffind this in function void CDPClient::OnDoEquip( OBJID objid, CAr & ar ) @ DPClient.cpp' _% ~7 f+ Z" ~- W
and add under5 J: z( v$ ?7 c  O* U' H  |

. g. z6 m1 g1 @- w6 w+ o( MCode:
8 c, {6 ~' p+ w; c% p1 Rif( g_WndMng.m_pWndBeautyShop && g_WndMng.m_pWndBeautyShop->m_pModel )! @' k' d& H2 j( u
                        {
! ^) c- x, b$ S, p9 Y9 S; H                                CMover::UpdateParts( pPlayer->GetSex(), pPlayer->m_dwSkinSet, pPlayer->m_dwFace, pPlayer->m_dwHairMesh, pPlayer->m_dwHeadMesh, pPlayer->m_aEquipInfo, g_WndMng.m_pWndBeautyShop->m_pModel, &pPlayer->m_Inventory );/ F& Y% \9 Z1 F2 l& \, d" |
                        }this
& V" x; o$ ]* W* D$ N/ e- A0 R) I9 Q; _, e: d9 d0 [
Code:
; K. H# E' l( F, o* J* r& e/ v#ifdef __QUGET_SWAP_FIX
: A# F- O$ P; U8 o% v" ?- D                                if( pPlayer->GetHitPoint() >  pPlayer->GetMaxHitPoint() ), w7 n7 I5 d% N
                                         pPlayer->SetHitPoint( pPlayer->GetMaxHitPoint());9 l5 X% u7 x7 Y( J1 {
5 q% l; n% `1 \' s
                                if( pPlayer->GetManaPoint() >  pPlayer->GetMaxManaPoint() )7 ]  n+ {. H6 o7 @" H1 ]( r0 n
                                         pPlayer->SetManaPoint( pPlayer->GetMaxManaPoint() );; S( A" |" E  i* T& b0 I; G
; s( z# K# q. N: w5 x2 B
                                if( pPlayer->GetFatiguePoint() >  pPlayer->GetMaxFatiguePoint() )( ?9 u/ T6 t* w% D0 y, ^
                                         pPlayer->SetFatiguePoint( pPlayer->GetMaxFatiguePoint() );
! _- h# t4 A& B" S
) ~, `1 J  D9 g, B6 x& e#endifand then define __QUGET_SWAP_FIX in versioncommon.h @neuz and worldserver
: U* P& Q' S2 X# h' ]6 [6 P
1 x: i8 n5 w* k7 k1 S: n3 f+ R* i8 `: v





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