| | 插件介绍 |  | | | 一,前言 |  | RT 起初打算录制视频,然而口齿不清,口含大*,所以算了
 
 该插件附带两种附属经济:
 依靠Vault的Vault货币
 依靠PlayerPoints的点券货币
 都可以在GlobalShop/MoneyAPI/XXX/config.yml下更改名称,但请谨慎修改
 不小心删除默认jar,重新创建的方法为删除MoneyAPI文件夹
 |  | 二,特性 |  | 1.跨服支持 |  | 2.多经济支持: 只要你会简单的写出个能在mc后台打印Hello World的jar插件,你便能(大概)写出多经济
 只要你想,或只要你想
 |  | 3.实时刷新: 界面的刷新基本上是每秒的(可配置)
 完美查看最新低价,高价,指定经济类型的商品
 |  | 4.拥有上架有效期,收件箱有效期: 防止数据量过多,各种奇葩商品没人买,死尸玩家买完物品后不拿走等情况
 |  | 5.90%以上的文本显示都可进行编辑 |  | 6.界面按钮材质可进行自定义 |  | 7.可指定上架的物品有效期,只要你想,上架有效期1秒都行←_← |  | 三,命令(图片形式) |  | 普通玩家 |  |  |  | 管理员 |  |  |  | 四,权限 |  | GlobalShop.use: 默认玩家拥有
 商店,货币筛选,收件箱等界面的使用权限,对于被小黑屋的人,可以取消他的这个权限
 |  | GlobalShop.ShopUnlimited: 默认op拥有
 商店的无限数量创建权限,无限的商品被购买上架者不会获得任何收益
 |  | GlobalShop.ShopTime: 默认op拥有
 商店的有效时间自定义权限
 |  | GlobalShop.OpenHim: 默认op拥有
 为他人打开商店的权限: /gs open 名称
 |  | 非固定权限,可能随着附属经济插件变更而变更: GlobalShop.MoneyAPI.附属经济插件名称:
 默认op拥有
 可用某种货币的权限,例如附属经济插件的名称为Vault,那么他只有拥有GlobalShop.MoneyAPI.Vault才能上架Vault的物品
 |  | 五,配置文件 |  | 正式版更新了配置文件的读取相关,如果你的配置文件无法正常载入: 
 | 查看config.yml是什么编码,并在plugins/GlobalShop文件夹下面新建一个Encoding.yml,内容为: config: '编码',例如config.yml是UTF-8编码,则内容为config: 'UTF-8',然后重启服务器即可_(:з」∠)_
 | 
 |  | | 
 复制代码#使用的语言文件
Language: 'zh_CN'
#多服务器模式,启用为ture
#该模式下将会随时判断Mysql中是否存在指定物品
#适用于多个服务器共用一个表(商店)的情况
#当多个服务器共用一个表(商店)时没启用该选项
#将会导致一个商品可被多个服务器分别购买一次
MultiServer: false
#多服务器模式名称,填后请勿更改
ServerName: 'Default'
#商品信息详情(购买者,上架者,价格等)显示在物品介绍最上方还是最下方
#true代表最上方,false代表最下方
ShowType: true
#玩家可上架的物品数量
#格式为:权限名:可上架数量
#其中-1为无限制
#其中权限名无需,也不能加前缀
#例如Default:100
#的权限整体名称为
#GlobalShop.SellLimit.Default
#此外,GlobalShop.SellLimit.Default权限默认玩家拥有
SellLimit:
  - 'Default:100'
  - 'VIP:200'
  - 'OP:-1'
#上架商品的有效期,时间单位秒,0和以下代表永久有效,直到被购买
InvalidTime: 172800
#每个物品到收件箱的有效期,时间单位秒
#当玩家购买(出售的物品被购买)时,收件箱会新增物品
#物品拥有X秒的有效期,过期后自动销毁数据,防止储存,死尸玩家的数据过多
#↑说了那么多并没有什么卵用
#简单的说就是每个新的物品到收件箱时必须在X秒内拿出来,否则就没了
InvalidItem: 2592000
#GUI刷新时间,单位为刻,20刻=1秒
#至少1
GUIUpdateTick: 20
#物品数据刷新时间,单位为刻,20刻=1秒
#至少1
ItemUpdateTick: 20
#商品卖出,被下架等新消息获取时间,单位为刻
#至少1
InfoUpdateTick: 20
#当数据库开启时,失效物品检测间隔
#他在数据库没开启时,怎么填都没有用,单位为刻
MysqlItemCheckTime: 100
#失效物品检测间隔是否开启
#当你是多个服务器共用一个商店时
#只需要一个服务器开启此选项
#为毛?你觉得多个服务器共同检测,使用cpu和内存使用得那么爽么
MysqlItemCheckEnable: true
#上架所收手续费
#手续费为上架价格的百分之X
#例如上架价格100
#所收手续费为:
#100*0.01=手续费(1)
#设置为0代表不启用
SellTax: 0.01
#是否启用Mysql
#当启用Mysql时且多个服务器共用一个表(商店),你必须启用MultiServer选项以及填写ServerName选项保证ServerName不重复
Mysql:
  Enable: false
  Database: mc
  Host: localhost
  Port: 3306
  User: root
  Password: 123
  #表名
  Table: 'GlobalShop'
 | 
 |  | 六,语言文件 |  | 简化帖子内容,请安装插件后打开plugins/GlobalShop/Language文件夹内查看 |  | 七,使用图片 |  |  |  | 八,下载地址 |  | 附属经济及附属插件(插件本体已附带附属经济) 密码:
 本体:
 
  GlobalShop-1.1.7.6-SNAPSHOT-out.jar
(191.93 KB, 下载次数: 1128, 售价: 40 粒金粒) 
 |  | 九,附属经济插件的使用,开发 |  | 使用: 放入plugins/GlobalShop/MoneyAPI文件夹内,重启服务器即可
 |  | 开发: ←_←想了想还是懒得教,自己反编译相关附属插件和看文档吧
 |  | 赞助列表 |  | a103060  100RMB nuo13260  12.26RMB  留言:楼下没段位(楼主:楼下他男枪贼6带我飞,0/6)
 匿名(转账留言:楼上青铜三)  6.66RMB
 未知  0.10RMB
 未知  0.05RMB(留言:楼上的?都比我高(这真是转账留言...这个?是什么鬼我也不知道))
 abc956812056  1.0RMB
 Ys幽少 101RMB
 大力水手 8.88RMB
 994712697 66RMB
 (支付宝)宅宅蛙基金 11.11RMB
 (支付宝)M_Dawb 10.00RMB
 (支付宝)龙风暴 1.00RMB
 (支付宝)虚无世界 1.00RMB
 (QQ转账)(119***3129) 1.00RMB
 (QQ转账)(257***0691) 1.00RMB
 (QQ转账)(113***5770) 2.00RMB
 (支付宝)(千州食品) 9.90RMB
 (支付宝)原点(12862***41) 99.00RMB
 (QQ红包)思情华意(1125***14) 10.00RMB
 (**)未知  2.00RMB
 (**)花开花落无尽轮回(5197***65)  50.00RMB
 
 |  | 赞助: |  | 
  如果您觉得我的插件有用,并且想表达一下支持的话,也许您可以选择以下方式进行赞助:
 
  
 |  | 更新日志 |  | 2016年11月15日: 
 | GlobalShopVaultAPI附属经济插件更新至1.1,修复部分服务器无法扣钱,加钱的bug | 
 |  | 2016年11月16日: 
 | GlobalShop更新至beta1.1 beta1.1版本的GlobalShop不支持beta1.0版本的物品(非商品数据)
 使用文件储存方式的请删除
 GlobalShop/ItemData文件夹内的Items文件夹
 使用Mysql储存方式的请删除
 表名(默认GlobalShop)_ItemData表
 | 
 |  | 2016年11月20日: 
 | GlobalShop更新至1.1.2,为API加了ItemSellEvent事件 GlobalShopPlayerPointsAPI附属经济插件更新至1.1,修复部分服务器初始化异常,导致无法使用的错误
 | 
 |  | 2016年11月23日: 
 | GlobalShop更新至1.1.3: 修复了下架时有一定几率导致下架X次的bug
 该bug发生于:
 到期后下架一半时又进行了下一次判断导致重复下架
 前往网盘自行下载修复版本
 (调高config.yml的ItemUpdateTick也可以解决)
 | 
 |  | 2016年11月27日: 
 | GlobalShopVaultAPI更新至1.2: 为GlobalShopVaultAPI增加了手续费功能
 
 (其实之前就更新了←_←,也上传了但文件名称是GlobalShopPlayerPoints1.2,也忘记更新更新记录了,所以就当现在更新吧)
 | 
 |  | 2016年12月06日: 
 | GlobalShop更新至beta1.1.4,修复了103L所反馈的bug: [15:52:35 ERROR]: Error occurred while enabling GlobalShop vbeta1.1.3 (Is it up to date?)
 java.lang.InternalError: Malformed class name
 at java.lang.Class.getSimpleName(Class.java:1330) ~[?:1.8.0_92]
 at java.lang.Class.isAnonymousClass(Class.java:1411) ~[?:1.8.0_92]
 at co.aikar.timings.SpigotTimings.getPluginTaskTimings(SpigotTimings.java:57) ~[paperspigot-1.8.8_rpg1.jar:git-PaperSpigot-20cd938-75593ab]
 at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftTask.<init>(CraftTask.java:42) ~[paperspigot-1.8.8_rpg1.jar:git-PaperSpigot-20cd938-75593ab]
 at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftScheduler.runTaskTimer(CraftScheduler.java:132) ~[paperspigot-1.8.8_rpg1.jar:git-PaperSpigot-20cd938-75593ab]
 at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftScheduler.scheduleSyncRepeatingTask(CraftScheduler.java:119) ~[paperspigot-1.8.8_rpg1.jar:git-PaperSpigot-20cd938-75593ab]
 at com.github.a810587921.GlobalShop.Main.iIIIIIiIIi(f:216) ~[?:?]
 at com.github.a810587921.GlobalShop.Main.onEnable(f:54) ~[?:?]
 ......
 内置的GlobalShopPlayerPointsAPI更新至了1.1,因为有较多的人无法正常使用1.0版本
 修复了部分服务端无法正常读取配置文件的问题,如果你的配置文件无法正常载入:
 转码config.yml为GBK或GB2312
 并在plugins/GlobalShop文件夹下面新建一个readConfig.txt文件,内容随意
 重启服务器即可解决
 新增了商店界面的提示:
 为介绍按钮位置增加了货币数量的显示,因此语言文件需要更新:
 1.1.4之前版本的语言文件需要删除语言文件或在语言文件增加(红色部分为增加):
 #介绍信息,用于教程,显示玩家货币等
 gui.button.info: -
 - &6货币信息: %api%
 - &6&l介绍
 - &e&l如何上架物品:
 - &e&l/gs sell <货币> <价格> [数量(可选)]
 - &e上架手中的物品
 - &e&l例如: /gs sell vault 100
 - &e上架我手中的物品,用Vault的货币
 - &e由于没填数量,则上架手中的物品当前数量
 - &e&l我该如何确定货币类型:
 - &e&l/gs listapi查看可用货币类型
 #货币信息,用于gui.button.info信息项
 #%Vault%的意思为从Vault附属经济插件里获取玩家拥有的金币
 #%点劵%同理,%XXX%里面的内容取决于附属经济插件在/gs listapi里面显示了什么
 gui.button.info.api: -
 - &6%Vault%
 - &6%点劵%
 | 
 |  | 2016年12月13日: 
 | GlobalShop更新至beta1.1.5 啊←_←,按理来说应该正式版了,只不过感觉还是缺了什么(脑子内有想法,身体很懒)
 修复了beta1.1.4的介绍按钮不显示的问题
 更新了内置的PlayerPointsAPI至1.2,修复了部分异常
 更新了内置的VaultAPI至1.2,增加了手续费,其实都有的←_←,只不过之前是在网盘没内置
 | 
 |  | 2016年12月17日: 
 | GlobalShop更新至beta1.1.6: 为经济附属的使用权限完善了一下
 经济的使用权限固定为了:
 GlobalShop.MoneyAPI.经济插件名称
 什么?你不懂?想直接知道?
 那么在开启服务器的时候,附属经济XXX载入完成后
 下一条信息为他的使用权限
 | 
 |  | 2016年12月23日(正式版的更新): 
 | GlobalShop更新至正式版1.0: 优化了一下储存方式,但并不用删配置文件
 如果你没有beta版本的商品数据,那么,请放心的更改附属经济的名称吧,一分钟改一次都没问题←_←
 如果有,尝试运行个几个月再改附属经济插件的名称?
 为商品信息的显示方式增加了最下面显示的方式:
 之前的显示方式固定为:
 商品信息
 Lore
 现在可以选择
 Lore
 商品信息了
 为上架商品的数量增加了限制,现在可以自定义玩家可上架的商品数量了
 商品被购买,时间到期,被op强制下架,上架者都会收到消息为收件箱,货币选择的GUI增加了返回按钮
 插件开启时会打一条广告
 现在可以自定义配置文件读取时的编码了
 自定义的方式为:
 在GlobalShop文件夹下新建一个Encoding.yml
 如果里面没有内容,将默认GBK编码,如果无Encoding.yml,默认系统编码
 如果里面的内容为:
 config: '编码'
 则会采取该编码进行读取,示例:
 config: 'UTF-8'
 下面是上面改动后相关的配置文件,语言文件更改(觉得麻烦就直接删了config.yml和语言文件)
 config.yml增加了:
 语言文件增加了:复制代码#商品信息详情(购买者,上架者,价格等)显示在物品介绍最上方还是最下方
#true代表最上方,false代表最下方
ShowType: true
#玩家可上架的物品数量
#格式为:权限名:可上架数量
#其中-1为无限制
#其中权限名无需,也不能加前缀
#例如Default:100
#的权限整体名称为
#GlobalShop.SellLimit.Default
#此外,GlobalShop.SellLimit.Default权限默认玩家拥有
SellLimit:
  - 'Default:100'
  - 'VIP:200'
  - 'OP:-1'
首先是/gs settexture的指令←_←,item和money的GUI增加了back项
 -#op提示
 command.op: -
 - &6&l==========&2&l<>&6&l代表必填,&2&l[]&6&l代表选填==========
 - &a/gs help [命令名称]  &6查看命令列表|指定命令帮助
 - &a/gs open [玩家]  让自己(他人)打开商店
 - &a/gs listapi  &6查看可用货币类型
 - &a/gs sell <货币类型> <价格> [数量] [-u] [-t时间(秒)]
 - &6    出售物品 -u代表无限,填-u前必须填数量
 - &6    -t代表时间,商品有效期,-1代表永久有效
 - &6    示例: /gs sell vault 100 64 -u -t-1
 - &a/gs settexture <shop|item|money> <按钮>  设置指定GUI的按钮材质为手上的物品:
 - &6shop的按钮有:
 - &eup        上一页
 - &enext      下一页
 - &einfo       介绍(上一页旁边)
 - &enowinfo 重置,商店信息(最后一行中间一格)
 - &eitem      收件箱(介绍旁边)
 - &emax      从大到小排序
 - &emin       从小到大排序
 - &eapi        货币筛选
 - &eme        查看我出售的物品(改变为头时在新版本会显示玩家的头的皮肤材质)
 - &6item的按钮有:
 - &eup
 - &enext
 - &enowinfo
 - &e额外的back按钮
 - &6money跟item一样
 以及:
 
 复制代码#返回商店
item.button.back: -
- &6返回商店
#返回按钮
moneyGUI.button.back: -
- &a返回商店
#卖出
iteminfo.sell: &a你的%item%被%buy%购买,你获得了%get%%api%
#过期被下架
iteminfo.invalid: &a你有一件商品被下架,因为他过期了←_←
#被op下架
iteminfo.remove: &a你的商品%item%被管理员%admin%强制下架了
PlayerPoints附属经济更新至1.3:
 @x1023755348
 为它增加了收税功能,配置文件自己看Vault最新版←_←
 其实就是多个
 Tax: 值
 具体自己删配置文件或看Vault←_←
 GlobalShopPlayerPoints1.3没有在网盘里,在本体(GlobalShop_v1.0)jar里!!
 GlobalShopPlayerPoints1.3没有在网盘里,在本体(GlobalShop_v1.0)jar里!!
 GlobalShopPlayerPoints1.3没有在网盘里,在本体(GlobalShop_v1.0)jar里!!
 | 
 |  | 2016年12月28日: 
 | GlobalShop更新至正式版1.1: 大幅度改善Mysql相关数据储存方式,但并不需要做任何改动,自动导入旧数据:
 地址
 为商品加入了上架手续费功能
 上架时根据价格收取手续费方能上架:
 地址
 检测物品失效(Mysql)转为了异线程操作
 修复了一个bug,该bug使得收件箱,商品的有效期是毫秒并不是秒
 修复了(地址)所说的bug
 非第一次使用1.1版本,你需要更新config.yml和语言文件:
 config增加的内容:
 复制代码#当数据库开启时,失效物品检测间隔
#他在数据库没开启时,怎么填都没有用
#此外,间隔单位是秒,并不是刻
MysqlItemCheckTime: 5
#上架所收手续费
#手续费为上架价格的百分之X
#例如上架价格100
#所收手续费为:
#100*0.01=手续费(1)
#设置为0代表不启用
SellTax: 0.01
 语言文件增加的内容:
 
 复制代码command.sell.notax: &a你上架这个物品需要%tax%手续费,你没有那么多的%api%
command.sell.tax: &a你上架这个物品被扣除了%tax%%api%手续费
 | 
 |  | 2016年12月31日: 
 | GlobalShop更新至正式版1.1.1 可能修复了199L所反馈的bug
 因为多服务器下只有一个服务器需要检测物品失效,所以
 配置文件增加了:
 
 复制代码#失效物品检测间隔是否开启
#当你是多个服务器共用一个商店时
#只需要一个服务器开启此选项
#为毛?你觉得多个服务器共同检测,使用cpu和内存使用得那么爽么
MysqlItemCheckEnable: true
 配置文件的MysqlItemCheckTime的时间单位修改为了刻 | 
 |  | 2017年3月8日: 
 | GlobalShop更新至正式版1.1.2:
 修复了商店,邮箱只能显示两页物品的bug
 修复了附属插件改显示名称后无法筛选货币类型的bug
 现在下架时间和销毁时间已经正常为秒数了
 | 
 |  | 2017年3月25日: 
 | GlobalShop更新至1.1.3:
 修复了某些情况下,语言文件会重新复原的bug
 修复了某些情况下,会导致版本识别出错导致后台无限报错的bug
 修复了SellLimit的一些组为-1时无法生效的bugGlobalShop自带的PlayerPoints附属经济更新到了1.4
 为API增加了ItemSellEvent
 GlobalShopPlayerPoints更新至1.4:
 修复了无法兼容某些版本的bug
 为GlobalShop增加了一个额外的插件(不是附属经济,放plugins):
 NOSellLoreItemToGlobalShop:
 他可以让含有指定lore的物品无法被上架,请前往网盘下载
 警告,他所需要的版本至少是1.1.3版本(正式版,也就是2017年3月25日更新的版本)
 
 | 
 |  | 2017年5月7日: 
 | GlobalShop更新至正式版1.1.4: 修复GlobalShop1.1.3的收件箱ShowType无效的问题
 
 | 
 |  | 2018年3月29日: | GlobalShop更新至正式版1.1.5:
 修复某种情况下可能会刷物品的bug,请务必更新至此版本!
 修复ShowType某种情况下无效的问题
 | 
 |  | 2018年4月15日 GlobalShop更新至正式版1.1.6
 修复极其罕见的情况下会刷物品的bug,请务必更新至此版本
 语言文件(zh_CN.lang)在最下面换行,增加内容:
 
 复制代码#购买订单提交
iteminfo.commit: &e购买订单确认中...
#订单支付失败,商品被其他人购买
iteminfo.failed: &4购买失败,该商品已经被其他人购买
#订单支付成功
iteminfo.done: &e订单购买成功
 |  | 2018年5月13日 
 | GlobalShop更新至正式版1.1.7
 修复了无限数量的商品购买一次后仍然会移除的问题
 
 | 
 |  | 2018年6月19日 
 | GlobalShop更新至正式版1.1.7.1
 修复货币不允许上架时提示扣手续费的问题(实际上并没有扣)
 
 | 
 |  | 2018年7月6日GlobalShop更新至正式版1.1.7.2
 修复另外一种情况下会刷物品的bug及修复部分插件兼容性
 务必更新至此版本
 
 |  | 2018年7月7日 GlobalShop更新至正式版1.1.7.3
 疑似修复疑似未解决的修物品bug
 为商店加了点击频率限制
 
 
 |  | 2019年6月17日 GlobalShop更新至正式版1.1.7.4
 修复了99%的内存泄漏问题
 新增:
 删除旧mod时不存在的物品会在商店变更为"失效物品"且在下次物品检测时会自动清理
 务必更新至此版本
 
 
 |  | 2021年5月10日 GlobalShop更新至1.1.7.6版本
 为API的ItemSellEvent增加了一个价格获取,仅能被获取无法被设置,设置了也无用
 PS: 1.1.7.5修复了啥我也忘记了
 
 |  | 内容,无视我,我只是一个模板 
 
 |  | 已知BUG |  | 1.1.1版本存在着只能显示两页物品的bug,近期将会修复=== 修复于 2017年3月8日 |  | 常见报错解决方案(截图来自于反馈bug的其中之一) |  | |  该报错为config.yml无法正常读取,编码问题:
 
 查看config.yml是什么编码,并在GlobalShop文件夹下新建一个Encoding.yml
 内容为:
 config: '编码'
 例如config.yml的编码是UTF-8
 内容为:
 config: 'UTF-8'
 统一回复一下配置文件的报错
 
 | 
 |  | | 开服后无限报错?请先卸载本插件看看是否无报错,如果没有了报错,则是本插件的问题: 尝试更换ProtocolLib版本,如果尝试过多个ProtocolLib版本还无法解决,欢迎反馈bug
 
 | 
 | 
 | 
 | 
 |