飞飞世界论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 16309|回复: 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 4 J% R4 K/ K4 W, i: t9 X- [
I posted this because someone kinda posted a youtube thingy about it :O.
9 o0 b$ l" p# V2 s0 I' U0 ^2 F3 [+ \( h; V/ C# X7 [
Find this in DPSrv.cpp @ worldserver
; p2 A2 f7 t1 V7 `: r
8 t2 U4 T6 _2 QCode:' r- I; \9 v  a( f9 C& W
void CDPSrvr::OnDoEquip( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize )# g" R# F. ], L0 u- U) c& ^
{, w% h9 D. O9 I3 P, Z
        DWORD nId;. O* w+ \/ e; ]% A( F' Q
        int nPart;
: R; d# n! g. q& J1 H. ~8 p8 L3 ]" j  _$ b, [1 T" C
        ar >> nId;9 n8 N" L0 k- ?7 C% P) s: u
        ar >> nPart;               
: N* o9 [% _- O. ~6 ^       
1 d8 C6 _' F1 V4 z        if( nPart >= MAX_HUMAN_PARTS )       
( J4 p  d6 t( A7 s                return;7 i; B! N. }3 X4 @" A- t

% x6 j* i5 W5 m  [" ^" {* b        CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );And put this under it
; ?& O5 b, ^- z! ]1 F* O* }( t  t; b

7 e: ?( Y4 V, u$ t* [9 WCode:# y7 Q6 q: k+ j  h, m- P# c
#ifdef __QUGET_SWAP_FIX0 }- |5 o+ _. J& x% {7 w3 {

7 @. B$ {8 U, c# I7 [; A2 K* v$ s                                if( pUser->GetHitPoint() >  pUser->GetMaxHitPoint() )
4 B1 _) B! g; n5 w                                         pUser->SetHitPoint( pUser->GetMaxHitPoint());: q: s( k) W9 W' M* l5 |
. S, G+ h2 g/ z* [
                                if( pUser->GetManaPoint() >  pUser->GetMaxManaPoint() ). H6 ]7 G' U' _# p: S! [- ?8 d1 q
                                         pUser->SetManaPoint( pUser->GetMaxManaPoint() );
2 p* d1 S) R7 m) d6 d
1 ^- X% N: g: m+ ]7 s6 A5 F$ F                                if( pUser->GetFatiguePoint() >  pUser->GetMaxFatiguePoint() )" D2 ?1 k+ T0 [7 v
                                         pUser->SetFatiguePoint( pUser->GetMaxFatiguePoint() );
5 V3 A  l  E2 g6 Q/ M: b; }9 u
- A5 t: N# A9 B7 J! v$ P* X: E#endiffind this in function void CDPClient::OnDoEquip( OBJID objid, CAr & ar ) @ DPClient.cpp% }, e4 `$ |( h) R
and add under
9 i" x# B7 {) u8 }( ^
" v0 V3 C, I8 b$ |* |Code:6 t+ ^  b8 m" H3 v
if( g_WndMng.m_pWndBeautyShop && g_WndMng.m_pWndBeautyShop->m_pModel )5 |5 A9 O/ ?  T9 f- y
                        {. A* }" O) p+ F& a  W" R: b+ G
                                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 );
! Z; `4 X* T+ [6 B8 Z$ Y                        }this& p, z. e2 i1 e

; u, v# [: @0 s1 jCode:
' `) f; }6 Y1 b' a/ y( q. |/ @#ifdef __QUGET_SWAP_FIX
; [. h! i2 @3 W                                if( pPlayer->GetHitPoint() >  pPlayer->GetMaxHitPoint() )
1 c; z% H0 X" d7 L                                         pPlayer->SetHitPoint( pPlayer->GetMaxHitPoint());( y. l: i1 Y4 Z7 H
, s2 ]. d: s* I* C1 w/ R
                                if( pPlayer->GetManaPoint() >  pPlayer->GetMaxManaPoint() )
7 r3 `8 r) f1 b2 T+ l                                         pPlayer->SetManaPoint( pPlayer->GetMaxManaPoint() );- b- f) }5 `/ ]( X
6 @! V. G$ u, P, ?: Y* n; m; p0 m/ |
                                if( pPlayer->GetFatiguePoint() >  pPlayer->GetMaxFatiguePoint() )
- l" p9 q: l( O* \$ t: r                                         pPlayer->SetFatiguePoint( pPlayer->GetMaxFatiguePoint() );* i& p8 I% e; S8 a4 ~

" Q% `# B9 [0 G2 h#endifand then define __QUGET_SWAP_FIX in versioncommon.h @neuz and worldserver
5 e( z/ E' X6 {! a2 U  Q% s, I4 W1 z- N' u7 U+ o+ m$ Z

& H- ?, l6 I4 |

相关帖子

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-4 06:48 , Processed in 0.062125 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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