飞飞世界论坛

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

修复交换错误

[复制链接]

197

主题

203

帖子

1078

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1078
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 ( T2 ~! R& O/ N: n1 I
I posted this because someone kinda posted a youtube thingy about it :O.
# |! R+ P  [) n  }4 Y# b4 ~
( Q' [3 S# a, Q- P  [8 w. u' \Find this in DPSrv.cpp @ worldserver
2 W& X/ c2 L* _) k/ b
% [$ ?$ E9 l/ r+ r9 Q& X, f. L* UCode:
/ H2 a( E0 @, `; j" c/ p8 L" Evoid CDPSrvr::OnDoEquip( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE lpBuf, u_long uBufSize )
3 d! v  D# ^. Z{$ x% F; u4 R# K: r
        DWORD nId;
4 z- E; j+ y6 p/ H, w! n        int nPart;
- l( ~3 w3 c1 a# J2 }3 `
6 v! \, i1 Q: a7 W' _        ar >> nId;" p+ T" K9 g7 E
        ar >> nPart;                & @. s) [8 ]8 [9 A0 e
        # @% X2 A, Y6 R* ~3 d
        if( nPart >= MAX_HUMAN_PARTS )       
1 |# B7 X0 u: J' I  m* ]/ H# I                return;
: a# m8 `1 W5 o9 D7 a, T
( {2 C/ H- S2 c' t! i& ?        CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );And put this under it
6 s  x  q, b1 }$ G0 q* W( u6 x! l& M3 }. z3 w3 s* k, ~- J- `* t
5 r( K- |$ c$ J/ D/ ?0 I" @
Code:
! e! |& ?4 I3 u, F0 I#ifdef __QUGET_SWAP_FIX
# c! A+ r, Y$ Y8 X3 A2 Z
7 ^* |0 T+ @& c% w6 I                                if( pUser->GetHitPoint() >  pUser->GetMaxHitPoint() )
( `( S4 S2 v0 R3 ^2 Y" p6 ~. p; |1 a) f                                         pUser->SetHitPoint( pUser->GetMaxHitPoint());+ |& t. ^! G; h- N1 V& O. ~* d' Q

+ h5 X% y+ F8 F/ z8 Q/ E. S% T                                if( pUser->GetManaPoint() >  pUser->GetMaxManaPoint() )& x! Q, O$ @2 W/ c0 @3 E% u1 k9 q7 b
                                         pUser->SetManaPoint( pUser->GetMaxManaPoint() );
/ c8 R2 _& ~$ ~, F9 U: u& o3 R- L
. u; A3 t. A1 l' f* E( A  ]7 F                                if( pUser->GetFatiguePoint() >  pUser->GetMaxFatiguePoint() )
, Z8 j' C/ T% \! n3 U" {7 Y                                         pUser->SetFatiguePoint( pUser->GetMaxFatiguePoint() );% Z* h1 |- A& [4 X9 }

$ i4 L4 n& C0 C1 |+ }' ^3 M* {#endiffind this in function void CDPClient::OnDoEquip( OBJID objid, CAr & ar ) @ DPClient.cpp
: T" B8 v" G% band add under
& d" w1 z1 `- n. }2 U; f  _0 {) a  r3 k: w8 X2 D0 e8 ~+ |7 w7 \
Code:
, d, k) p$ q5 s* Y# w" q! |+ h' Aif( g_WndMng.m_pWndBeautyShop && g_WndMng.m_pWndBeautyShop->m_pModel )' G; ]" o5 b0 B
                        {
. P- ~  Y/ p6 z. A2 E                                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 );
/ P  x( O8 S+ Y! Q                        }this6 a2 ^0 [7 ~- P3 X$ j( V

8 ^2 R# V' `  t, v3 W% cCode:
9 h, B( G, X* P% s' s5 W* ~* \#ifdef __QUGET_SWAP_FIX
. G9 P, g  A" X! ]; z- O  o: `                                if( pPlayer->GetHitPoint() >  pPlayer->GetMaxHitPoint() )
4 I* ~' l/ F- k7 |$ {                                         pPlayer->SetHitPoint( pPlayer->GetMaxHitPoint());- f! k' ]& J. G1 |

! l! ~# f+ S4 e                                if( pPlayer->GetManaPoint() >  pPlayer->GetMaxManaPoint() )) @7 ^+ M1 W8 x7 u
                                         pPlayer->SetManaPoint( pPlayer->GetMaxManaPoint() );
: `+ z+ B5 b# @$ S* M1 w* j, Q0 ~* g' Z
                                if( pPlayer->GetFatiguePoint() >  pPlayer->GetMaxFatiguePoint() )
. r+ W, H" g, x4 g* e! K                                         pPlayer->SetFatiguePoint( pPlayer->GetMaxFatiguePoint() );: H/ {0 c3 R# `) m# S7 s

/ |9 p7 A& G) p! y3 s7 R#endifand then define __QUGET_SWAP_FIX in versioncommon.h @neuz and worldserver
  s, M1 l1 |3 O/ r- X# v( z+ J3 K: d% o5 U. E  K

; }, }! u& o0 Z  ?4 f6 Z: ~: d. G  J

相关帖子

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-22 19:57 , Processed in 0.067693 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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