本帖最后由 longlongz 于 2018-12-9 22:01 编辑 
来自群组: Citrus Studio
BossShopPro - 老板商店Pro
[INFO]
部分内容因为没有必要&技术不够而被删除了
[CONTENT]
附属插件 | Addons [2445]
开发者工具 | API [2744]
问题解答&帮助 | FAQ&Help [1468]
条件 | Condition [2147]
配置 | Configuration [5044] [√]
物品对比 | Item Comparision [607]
物品数据 | ItemData [1684]
已知错误 | Known Issues [192]
占位符/变量 | Placeholders [727]
-动态占位符/变量 [NULL]
价格类型 | Price Types [771]
奖励类型 | Reward Types [1508]
服务器Ping | Serverpinging [1678]
[Statistics&Translator]
翻译者: longlongz
统计字数: >23942字
来自群组: Citrus Studio
之前的搬运贴都停更了,终于有人接坑
是没有编辑完么?  感觉意义不明啊
12个小时。。这有点久了·
BossShopPro
Known Issues | 已知错误
字数统计: 192字
在Paper端中对玩家头颅无法使用占位符
这个bug会在最快的时间被修复。
BossShopPro 会在最开始加载时设置头颅的皮肤主人。Paper貌似不允许设置头颅的皮肤为一个占位符因为占位符不是一个有效的玩家,当一个玩家通过商店的所有占位符被代替为一个数值,#setOwner返回会在被使用时会返回false。因为Paper不接受头颅的皮肤因为占位符没有东西可以代替。计划修复:储存头颅皮肤变量为一个外部的结构。当玩家通过商店时,外部结构会决定透露是否会被改变
 本帖最后由 longlongz 于 2018-12-15 15:38 编辑 
当商店物品的价格为一个物品时,玩家需要使用这些物品来兑换定义的奖励
例子:
NinjaPotion:
PriceType: item
Price: #价格
- - type:EMERALD #类型:绿宝石
- amount:5#数量:4
[...]
在这个例子中,玩家需要之斧5个绿宝石来获得一个NinjaPotion.
在例子中,玩家的兑换原材料不一定需要与所需材料完全相同: 例如物品带有额外的描述或自定义的名称也同样会被接受。另外,你可以定义物品被接收(出售)所要的额外的属性(除材料外)。
物品放在哪里才能接受呢?
所有在背包、装备栏内的物品都能被接受。
类型/Id (材料)
这必须是与兑换原材料的id一致的
耐久值
如果物品是一个工具/护甲/武器并且配置选项中"AllowSellingDamagedItems" 为true时,耐久值(武器磨损值)就会被忽略.
如果不是的话,这就必须与兑换原物品一致。例如羊毛需要相同颜色,所以就需要不同的副ID(耐久度)。
自定义名称
如果兑换原物品的名字被定义,玩家就必须使用带有相同名称的物品才能兑换奖励物品,不然会被无视。
自定义描述
如果兑换原物品,玩家的物品就必须要带有相同的描述(只要包括描述,所以可以添加额外的行列),不然玩家的物品会被无视。例子:
Code (Text):
Price:
- - type:DIAMOND_SWORD
- lore1:品质: 史诗
这个例子中,只有带有“品质:史诗”的钻石剑才能被接收,额外的行数不会影响到接收.
其他
药水效果,附魔和其他物品数据商店物品和玩家物品需要有相同属性才会接收玩家的物品。
注:如果你想要玩家可以出售药水的话,你可以使用"potion":
potion:<药水效果>#<延长效果 true/false>#<升级? <true/false>
(ItemData) 这允许创建原版药水,而不是可以创建完全自定义药水效果的"potioneffect" (自定义等级/时长).
BossShopPro
Item Comparison | 物品对比
字数统计: 607字
当商店物品的价格为一个物品时,玩家需要使用这些物品来兑换定义的奖励
例子:
NinjaPotion:
PriceType: item
Price: #价格
- - type:EMERALD #类型:绿宝石
- amount:5#数量:4
[...]
在这个例子中,玩家需要之斧5个绿宝石来获得一个NinjaPotion.
在例子中,玩家的兑换原材料不一定需要与所需材料完全相同: 例如物品带有额外的描述或自定义的名称也同样会被接受。另外,你可以定义物品被接收(出售)所要的额外的属性(除材料外)。
物品放在哪里才能接受呢?
所有在背包、装备栏内的物品都能被接受。
类型/Id (材料)
这必须是与兑换原材料的id一致的
耐久值
如果物品是一个工具/护甲/武器并且配置选项中"AllowSellingDamagedItems" 为true时,耐久值(武器磨损值)就会被忽略.
如果不是的话,这就必须与兑换原物品一致。例如羊毛需要相同颜色,所以就需要不同的副ID(耐久度)。
自定义名称
如果兑换原物品的名字被定义,玩家就必须使用带有相同名称的物品才能兑换奖励物品,不然会被无视。
自定义描述
如果兑换原物品,玩家的物品就必须要带有相同的描述(只要包括描述,所以可以添加额外的行列),不然玩家的物品会被无视。例子:
Code (Text):
Price:
- - type:DIAMOND_SWORD
- lore1:品质: 史诗
这个例子中,只有带有“品质:史诗”的钻石剑才能被接收,额外的行数不会影响到接收.
其他
药水效果,附魔和其他物品数据商店物品和玩家物品需要有相同属性才会接收玩家的物品。
注:如果你想要玩家可以出售药水的话,你可以使用"potion":
potion:<药水效果>#<延长效果 true/false>#<升级? <true/false>
(ItemData) 这允许创建原版药水,而不是可以创建完全自定义药水效果的"potioneffect" (自定义等级/时长).
BossShopPro
Price Types | 价格类型
字数统计: 771字
每一个商品都有特定的价钱,玩家需要支付特定的价钱才能够获得这些商品. 有很多种价钱可以被选择. 通过 Addons(附属插件)可以定义更多种价钱.
计算帮助: 每一个数类的价格类型都支持原始数字的简单计算(除了占位符). 举例:
计算帮助: 每一个数类的价格类型都支持原始数字的简单计算(除了占位符). 举例:
- PriceType: money
 
- Price: 120 * 64
金钱
需要玩家支付的一定的金钱. 所以必须要有Vault这个插件. 当倍数使用计算时,被取走的钱会自动按倍数计算. 显示商品的金钱售价只需要用 '%price%'占位符就可以了.
示例:
-     PriceType: money
 
- Price: 500
免费
你可以使用 'PriceType: nothing'来决定哪些商品是可以免费获得的. 这对于打开新的GUI,饰品和指令的物品很有用.
示例:
- PriceType: nothing
点数
拿玩家的点数. 被支持的点数有下列 (如果有其他想要支持的插件请发信息告知我):
-        PlayerPoints
-        CommandPoints
-        Enjin
-        PointsAPI
-        TokenEnchant
-        Jobs
-        MySQL-Tokens
-        VotingPlugin
-        Kingdoms
-        MySQLTokens
当倍数计算时,被取走的点数会自动按倍数计算.显示玩家被拿走的点数只需要用 '%price%'占位符.
示例:
示例:
-     PriceType: points
 
- Price: 750
物品
一个或者多个物品.在 here查看物品信息.
一件物品的示例:
-     PriceType: item
 
-     Price:
 
-     - - type:DIAMOND
 
- - amount:5
多件物品的示例:
-     PriceType: item
 
-     Price:
 
-     - - type:WOOL
 
-       - amount:10
 
-       - durability:14
 
-     - - type:WOOL
 
-       - amount:10
 
-       - durability:11
 
-     - - type:WOOL
 
-       - amount:10
 
-       - durability:4
 
-     - - type:WOOL
 
-       - amount:10
 
- - durability:5
如果物品没有被定义名称或描述的话,插件可以接受任何相同的物品。 当设置物品了描述或者名称时,只有与条件完全符合的物品才会被BossShopPro接受.
ItemAll
卖出所有同类型的物品.
第一个例子:
ItemAll
卖出所有同类型的物品.
第一个例子:
-     PriceType: itemall
 
-     Price:
 
-     - type:DIAMOND
 
-     RewardType: money
 
- Reward: 60
在这个例子里面,玩家每卖出一个钻石就可以立刻获得60金币
第二个例子::
第二个例子::
-     PriceType: itemall
 
-     Price:
 
-     - type:LOG
 
-     - durability:1
 
-     RewardType: points
 
- Reward: 2
ItemAll只能和数字类型的奖励一起运作 (比如钱,点数和经验). 选择一个物品当做售价 (数量会自动被设置为1) 每当出售该物品就会获得奖励.
经验
拿走玩家的经验或等级(可以在配置中选择扣除经验or等级)。 在使用倍数计算时,被取走的经验会自动按倍数计算.显示扣除的经验/等级数可以使用 '%price%'占位符来显示.
示例:
-     PriceType: exp
 
- Price: 25
BossShopPro
Placeholder | 占位符
字数统计: 727字
支持的占位符:
- %player% - 玩家名
 
- %name% - 玩家名
 
- %displayname% - 玩家昵称
 
- %balance% - 玩家所有金钱数
 
- %balancepoints% - 玩家所有点数
 
- %world% - 玩家所在的世界
 
- %itemname% - 关联物品的昵称
 
- %amount% - 商店物品的数量
 
- %material% - 菜单物品的材料 (使用纯净名称如果你在使用 Language Utils library)
 
- %item_in_hand% - 玩家主手中的物品 "Plain material name:" 实用的条件
 
 
- %shop% - 关联商店的id
 
- %shopdisplayname% - 关联商店的名称
 
- %page% - 当前的商店页数 (Tip: 可以使用商店名称显示)
 
- %maxpage% - 当前商店的最大页数
 
 
- %shopitemname% - 关联物品的名称
 
- %price% - 关联物品的价格 (在这里甚至连列出来的物品都能被完美展示)
 
- %reward% - 关联物品将获得的奖励
 
 
- %left% - 可以在商店物品被购买时显示;会显示玩家购买后所剩下的"价格类型"余额。例如"PriceType: money"就会在购买时显示所剩的金钱数
 
 
- %input% - 最新的玩家input输入。
在这里查看 https://www.spigotmc.org/wiki/bossshoppro-configuration/ -> 更多关于输入的详细请在"高级选项"中查看
 
因为PlaceholderAPI 支持无限的占位符 (自动侦测)
注: 使用PlaceholderAPI 占位符是切记设置 PlaceholderAPI 正确!
符号(可以在任何地方被使用):
注: 使用PlaceholderAPI 占位符是切记设置 PlaceholderAPI 正确!
符号(可以在任何地方被使用):
符号Error 请看原贴对照 https://www.spigotmc.org/wiki/bossshoppro-placeholders/
- [<3] -> ? -> ★
 
- [] -> ?
 
- [o] -> ●
 
- [v] -> ?
 
- [+] -> ?
 
- [x] -> ?
 
- [%] -> ?
 
- [%%] -> ?
 
- [radioactive] -> ?
 
- [peace] -> ?
 
- [moon] -> ?
 
- [crown] -> ?
 
- [note] -> ?
 
- [snowman] -> ?
 
- [tools] -> ?
 
- [swords] -> ?
 
- [warn] -> ?
 
- [left] -> ←
 
- [right] -> →
 
- [up] -> ↑
 
- [down] -> ↓
 
- [block] -> █
 
- [and] -> &
 
- [colon] -> :
 
- [hashtag] -> #
侧注: 你可以使用几乎所有的 UTF-8 字符、符号在BossShopPro 配置文件和商店 (只要这些字符可以再这个minecraft版本里被识别). 符号占位符会让生活变得简单许多:). 
在物品简介里使用井号会导致换行.当你想要展示井号时请使用 "[hashtag]" 以防止换行.
了解更多有关于Serverpinging 和相关的占位符在 here.
计算
除了普通的占位符, BossShopPro 还支持文字里的计算: 把你想要计算的放到这样的括号里: '{ }'. 你可以放置占位符和普通物品 比如. 在计算括号里面. PlaceholderAPI占位符也是被支持的.
示例:
在物品简介里使用井号会导致换行.当你想要展示井号时请使用 "[hashtag]" 以防止换行.
了解更多有关于Serverpinging 和相关的占位符在 here.
计算
除了普通的占位符, BossShopPro 还支持文字里的计算: 把你想要计算的放到这样的括号里: '{ }'. 你可以放置占位符和普通物品 比如. 在计算括号里面. PlaceholderAPI占位符也是被支持的.
示例:
- {10/5+8}
这个公式会直接得出 10.
- {%balance%*4}
这会使玩家的金钱数量乘以4.
你不可以使用"Reward" 或者 "Price". 如果你想要奖励或者价格能作用于多人游戏 (Configuration -> config.yml).
注: 目前只有基础算法被支持. 像这种有括号的 '(10+5)*2'暂时还不被支持. 以下的算法是被支持的:
你不可以使用"Reward" 或者 "Price". 如果你想要奖励或者价格能作用于多人游戏 (Configuration -> config.yml).
注: 目前只有基础算法被支持. 像这种有括号的 '(10+5)*2'暂时还不被支持. 以下的算法是被支持的:
-        +
-        -
-        *
-        /
-        ^
特别好的教程,感谢分享
介绍一下,bbs有个[ page]和[index]可以把多个帖子放到一页里,你可以试一试
longlongz 发表于 2018-12-5 01:50
BossShopProItem Comparison | 物品对比字数统计: 607字
当商店物品的价格为一个物品时,玩家需要使用这些 ...
potion:<药水效果>#<永久效果? true/false>#<升级? <true/false>
我觉得这里的“永久效果”应该指的是“延长效果”
谢谢分享   
这个是高手啊 有点厉害的