飞飞世界论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 16934|回复: 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 8 E2 o) N5 y# O/ U6 r
I posted this because someone kinda posted a youtube thingy about it :O.
) p2 A8 g5 o% P- c+ G1 m# Z  _( D$ Q0 }# A3 ]6 O. ]
Find this in DPSrv.cpp @ worldserver
0 ]* ?( T& D+ ]: E' x& |3 f0 r9 K
4 _* I1 N  `: D. ]* c/ @Code:
& S$ \: h" N8 s( d: s: svoid CDPSrvr::OnDoEquip( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize )% U3 T1 ~6 W" i8 f% |
{
; v& e4 U1 D" g: @$ W6 f: l        DWORD nId;
% y; K" ?& }, W0 N        int nPart;; [$ [7 t) l$ b, z7 m& w( q, G* E* f3 ?

# P  z2 l  [+ p* I        ar >> nId;6 S. g9 P! T& {7 t* O) [. }0 ]4 [
        ar >> nPart;               
$ x- }) Y3 r; I/ {4 i       
# g, u6 E, @9 U8 l+ X; a        if( nPart >= MAX_HUMAN_PARTS )       
3 g% n& @4 Y7 y3 D. o  Z& U+ |- }! R                return;8 H: R) [1 |# z% h4 \8 J$ q
4 [' c" r& ?: f! S3 x; p
        CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );And put this under it
, p: x" }' O0 l' M  _
/ i: z" |7 Y) a: |, v9 t0 z% x7 Z: {0 U" d1 F: ^+ Q# C
Code:0 P8 ~& R* D6 a+ S" C1 V5 S
#ifdef __QUGET_SWAP_FIX
2 J2 y; H* e  K* Z% s  P! r: Y0 K! _' |' r- _- ?
                                if( pUser->GetHitPoint() >  pUser->GetMaxHitPoint() )4 G  |+ u6 B, v. }
                                         pUser->SetHitPoint( pUser->GetMaxHitPoint());
8 ?( }, @* o1 }! x& ^5 S- _" G8 b. P! O, p. Y9 ?8 Q. H
                                if( pUser->GetManaPoint() >  pUser->GetMaxManaPoint() ): h5 T* o# X( }, M. j
                                         pUser->SetManaPoint( pUser->GetMaxManaPoint() );
9 B* D* E5 ]% E& L0 f
9 V* w# k/ _2 y3 `                                if( pUser->GetFatiguePoint() >  pUser->GetMaxFatiguePoint() )
5 [1 T% M2 `, O8 B9 V( D5 r4 U                                         pUser->SetFatiguePoint( pUser->GetMaxFatiguePoint() );
1 Q* H5 X6 k7 C# a/ R2 M! V  \3 W* q4 ^7 F, u! R! F% Q' y4 q5 E8 [
#endiffind this in function void CDPClient::OnDoEquip( OBJID objid, CAr & ar ) @ DPClient.cpp1 R; k5 \6 r4 V1 @5 W4 p& W6 b2 L
and add under6 ~% R; O( C5 Z6 V( V5 e) Q3 V# l0 l0 n

: x( R0 q- ?- z* R- {Code:
( r; P( q9 x7 I. Q" M' X* Sif( g_WndMng.m_pWndBeautyShop && g_WndMng.m_pWndBeautyShop->m_pModel )
, H2 }" [/ J, {& d                        {
& \% R; k  @7 N                                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 );
4 c6 g% w4 o. n& c                        }this9 @/ ~+ d: P8 I6 T# U3 ?1 H1 [
6 w$ y/ Z# l$ W  U) L
Code:
% O- P/ n4 b* G( [7 n" e#ifdef __QUGET_SWAP_FIX* R9 p8 c/ s3 X. ~8 ]! C
                                if( pPlayer->GetHitPoint() >  pPlayer->GetMaxHitPoint() )4 \" Q; d6 l; Q* P; _6 g5 s
                                         pPlayer->SetHitPoint( pPlayer->GetMaxHitPoint());
# `8 \1 y4 i$ L# A6 A7 C. ^5 K8 ~- x* _4 U
                                if( pPlayer->GetManaPoint() >  pPlayer->GetMaxManaPoint() )
0 L7 g! A+ l% t7 Z                                         pPlayer->SetManaPoint( pPlayer->GetMaxManaPoint() );
- ~5 s9 w* D7 W( [: n
9 o; V& U1 r/ S* _                                if( pPlayer->GetFatiguePoint() >  pPlayer->GetMaxFatiguePoint() )
0 _; Q) ]* N0 H- ?8 U2 M                                         pPlayer->SetFatiguePoint( pPlayer->GetMaxFatiguePoint() );
& G# ~% F" ~) S% {2 I
6 N' X& W: a+ t2 J+ w4 Q& b- C6 R7 u#endifand then define __QUGET_SWAP_FIX in versioncommon.h @neuz and worldserver & R7 k0 E  ]& J3 E$ I2 G2 Z1 c
! Y( y* w( k& M* ^- l: t

6 o, T" D% z: I8 ^$ @( r

相关帖子

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-13 16:44 , Processed in 0.097588 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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