飞飞世界论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 16436|回复: 0
打印 上一主题 下一主题

修复交换错误

[复制链接]

197

主题

203

帖子

1086

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1086
QQ
跳转到指定楼层
楼主
发表于 2016-1-10 03:43:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Hi I fixed the swap bug a long time ago it got tested on my server and it worked & c5 x" G' r# y& \
I posted this because someone kinda posted a youtube thingy about it :O.5 E7 n4 Q: v0 @
7 n% ]) H- ^/ s. l: a$ a5 C) u
Find this in DPSrv.cpp @ worldserver
2 _, n( @9 I4 K: p' z# b1 M( D" g" j) q* w1 U* S. g2 @( d5 o
Code:
& y5 f# b  @: T# e( U/ Qvoid CDPSrvr::OnDoEquip( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize )
2 H5 n# j8 q' k# i' g4 \, f$ M{" S2 c. U9 I, E2 k* P, y# J. M
        DWORD nId;
; S" q* m5 i) o7 Y1 a        int nPart;% n$ h- {0 }) T. X) t: Y* @$ s
. D7 W2 l( r: z0 D7 U
        ar >> nId;
9 V: x$ v" K: J( h5 [, Z8 _        ar >> nPart;               
# k, ^* R8 Q& K/ l       
: p  w6 M( t  k; s" C9 K" l6 b0 d* `        if( nPart >= MAX_HUMAN_PARTS )       
: Z4 J$ s- g7 n4 x+ H7 K                return;3 M3 b2 b9 ^# S7 `
5 x5 ?, Y: ]* Q7 T: q
        CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );And put this under it
0 Z; H- Q$ g/ R9 D' K: m: R, F4 j. X, f$ _4 t! K8 x" b5 K( ]( M) ^: _
/ b) S1 [% j2 U0 U1 v
Code:$ A3 H3 n0 h. u: X) e) @
#ifdef __QUGET_SWAP_FIX8 `' y% [* M/ J9 Z3 s9 z" d& ]5 f

( _8 w- S8 T8 U% I5 a$ \; ^7 N( m6 f                                if( pUser->GetHitPoint() >  pUser->GetMaxHitPoint() )/ Y) ^+ [2 @& G4 C" s3 I4 H6 T
                                         pUser->SetHitPoint( pUser->GetMaxHitPoint());& i, H' ~4 e" P3 r5 X3 f: X
5 p/ G9 B6 J% c- C
                                if( pUser->GetManaPoint() >  pUser->GetMaxManaPoint() )% |; x3 A# h2 }& |  z
                                         pUser->SetManaPoint( pUser->GetMaxManaPoint() );( w1 J2 J! l# J* t/ l7 }
7 l5 W% }4 V( G' @. ?- X* }
                                if( pUser->GetFatiguePoint() >  pUser->GetMaxFatiguePoint() )& l' w. U' i' h+ X
                                         pUser->SetFatiguePoint( pUser->GetMaxFatiguePoint() );
# J( @4 y. I. r' D/ w9 d3 w6 G; R9 |' K3 B$ w7 [& x
#endiffind this in function void CDPClient::OnDoEquip( OBJID objid, CAr & ar ) @ DPClient.cpp5 S7 e& P- X5 y9 N6 h
and add under# c3 {2 G: J9 V% B$ D3 m- E

. H9 n' T8 H! q! [. oCode:9 `/ _+ C, t4 Q. |  j$ C* o
if( g_WndMng.m_pWndBeautyShop && g_WndMng.m_pWndBeautyShop->m_pModel ); C* l! w' o6 N$ W
                        {; t' W8 T& B- r  F4 L  A
                                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 );
# G, ~; C% Z: e1 S# f" N8 P; Y                        }this
$ O6 z0 q; }) d3 T7 f. ~; p" x, M! A
8 w( v8 I3 a* A- J% bCode:
2 u& t% Y! L& v" F#ifdef __QUGET_SWAP_FIX- i4 b% j& d. m; y# f
                                if( pPlayer->GetHitPoint() >  pPlayer->GetMaxHitPoint() )# Q( b0 }/ ^, w( C0 Z3 S7 O% J5 x7 D
                                         pPlayer->SetHitPoint( pPlayer->GetMaxHitPoint());
- t1 Y3 L+ e4 b) r
- L  i  S; Q* r. L                                if( pPlayer->GetManaPoint() >  pPlayer->GetMaxManaPoint() )
2 c) I4 \& \+ X% r; v& K9 b0 Y6 D1 ]                                         pPlayer->SetManaPoint( pPlayer->GetMaxManaPoint() );
+ L( |4 I+ X; x- J) d
$ m: }9 w$ d" n! [& O7 z                                if( pPlayer->GetFatiguePoint() >  pPlayer->GetMaxFatiguePoint() )1 {/ r$ U+ `, f* h& F
                                         pPlayer->SetFatiguePoint( pPlayer->GetMaxFatiguePoint() );: i* @* Q0 I! U' q& r; q1 G% ?

3 I. F3 E$ r& i+ M8 W5 Y* L& g#endifand then define __QUGET_SWAP_FIX in versioncommon.h @neuz and worldserver
6 V! b( Z9 s% j& M
" |& C- m0 b9 Z3 V& b6 m! ?" Z! l; `3 j

相关帖子

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|飞飞世界技术论坛  

GMT+8, 2025-12-11 13:42 , Processed in 0.064084 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表