冒险岛单机论坛,冒险岛交流论坛,最新冒险岛

 找回密码
 立即注册
查看: 4008|回复: 25

冒险岛修复商店购买负数

  [复制链接]
  • TA的每日心情
    开心
    2024-11-6 23:36
  • 签到天数: 319 天

    [LV.8]以坛为家I

    427

    主题

    840

    帖子

    8万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    85363
    发表于 4 天前 | 显示全部楼层 |阅读模式
    此修复方法是防止使用负数进行购买商店物品,并且购买金额不减反增的问题



    首先,先找到源码内MapleShop.java


    找到buy这个函数


    在一个判断内有个一变量
    1. final int price = GameConstants.isRechargable(itemId) ? item.getPrice() : (item.getPrice() * quantity);
    复制代码


    首先要把int型改成一个long型
    就变成以下
    1. final long price = GameConstants.isRechargable(itemId) ? item.getPrice() : (long) item.getPrice() * quantity;
    复制代码


    同时还需要加一个判断在下面

    1. if(price <= 0 || price >= Integer.MAX_VALUE){
    2.             c.sendPacket(MaplePacketCreator.confirmShopTransaction((byte)0));
    3.             c.sendPacket(MaplePacketCreator.enableActions());
    4.             return;
    5.         }
    复制代码


    然后会发现以下-price会变成红色
    1. c.getPlayer().gainMeso(-price, false);
    复制代码


    毕竟gainMeso是给金币,里面定义的是int型,其实给值强转回int型就可以了
    1. c.getPlayer().gainMeso((int)-price, false);
    复制代码

    还有不严谨的,请各位多多提意见!
    哎...今天够累的,签到来了1...
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    202

    帖子

    404

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    404
    发表于 4 天前 | 显示全部楼层
    赞赞赞
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    179

    帖子

    358

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    358
    发表于 4 天前 | 显示全部楼层
    挺不错
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    200

    帖子

    402

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    402
    发表于 4 天前 | 显示全部楼层
    学习交流
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    185

    帖子

    371

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    371
    发表于 3 天前 | 显示全部楼层
    挺不错
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    176

    帖子

    353

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    353
    发表于 3 天前 | 显示全部楼层
    学习交流
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    189

    帖子

    378

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    378
    发表于 3 天前 | 显示全部楼层
    路过,支持一下啦
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    191

    帖子

    383

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    383
    发表于 3 天前 | 显示全部楼层
    顶顶
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    197

    帖子

    395

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    395
    发表于 3 天前 | 显示全部楼层
    有空来试试,支持下
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    193

    帖子

    386

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    386
    发表于 3 天前 | 显示全部楼层
    顶顶多好
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    173

    帖子

    346

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    346
    发表于 3 天前 | 显示全部楼层
    好样的
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    177

    帖子

    355

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    355
    发表于 3 天前 | 显示全部楼层
    支持支持
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    184

    帖子

    370

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    370
    发表于 3 天前 | 显示全部楼层
    难得一见的好帖
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    179

    帖子

    359

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    359
    发表于 3 天前 | 显示全部楼层
    过来看看
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    175

    帖子

    351

    积分

    中级会员

    Rank: 3Rank: 3

    积分
    351
    发表于 3 天前 | 显示全部楼层
    学习交流
    回复

    使用道具 举报

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

    本版积分规则

    |网站地图

    免责声明:论坛资源来源网络公开渠道,如有侵权,请及时告知,联系删除! 邮箱: 3591663665 @qq.com

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