创建商店
本插件支持不同类型的管理员与玩家商店,它们在交易与设置方式上各有不同。
本插件还支持不同种类的方块,可以决定商店在世界内的显示样式。
商店类型
默认可用的管理员商店类型:目前只有管理员商店一种。
默认可用的玩家商店类型:出售(selling)、购买(buying)、交易(trading)、复印(book)。
每种商店的设置方法略有不同。详见设置管理员商店和设置玩家商店章节。
若要创建指定类型的商店,玩家首先需要拥有创建它们的权限。详见权限列表章节。但是,一般情况下几乎不需要手动配置权限:非 OP 玩家默认可以创建所有类型的商店。但若要创建玩家商店,他们还需要拥有商店创建物品(shop-creation-item
)(见设置玩家商店章节)。
物体类型
物体类型为商店在世界中的显示形式,例如默认的村民实体。
默认可用的物体类型为:告示牌(sign)、贴在墙上的告示牌(hanging-sign)、NPC(如 Citizens 插件提供的),或是支持且在配置中启用的所有实体的名称。
两种告示牌的使用方式与实体商店大致相似。唯一不同的是生成商店时会生成一个告示牌而不是实体。
每种物体类型都有对应的创建权限节点。详见权限列表章节。默认情况下,玩家可以设置所有实体类型,也能设置两种告示牌。
另外,每种物体类型均可在配置文件中强制禁用。详见配置文本章节。部分物体可能默认禁用。
可用实体类型
理论上每种实体都可用于本插件的交易。但是,不是所有实体类型都会正常运作:有些行为可能奇怪但无害,而另一些则会让你的服务器或存档损坏。
因此,只有小部分经过测试的实体默认启用。
若你想要尝试(后果自负)让某种实体用于交易,你需要在配置文本中手动启用。你可以在 Spigot 文档中找到所有可用的实体类型(注意:此列表包含了所有服务器已知的实体,但本插件目前只能使用生物类实体)。
另外,这些实体也需要玩家拥有对应的权限才可使用:shopkeeper.entity.<实体类型>
(或 shiopkeeper.entity.*
,表示能够使用启用的所有实体)。示例:shopkeeper.entity.villager
。
默认情况下,玩家有权限使用所有启用的实体(即拥有权限 shopkeeper.entity.*
)。
每个用于本插件实体的 AI 均会被覆写,使得它们固定在原地且无法受到伤害。它也会让实体在偏离原位时几秒后传送或重生回去。
若你想要使用其他类型的实体,试试看我们与 Citizens 插件联动的内容!你可以在这里找到更多有关信息。
创建管理员商店
管理员商店拥有不限量的库存,且没有物品交易限制。
若要创建管理员商店,只需在看向(非箱子类)方块时输入命令 /shopkeeper [物体类型]
即可。这之后,一个商店就会在当前看向的方块位置上生成。
创建玩家商店
玩家商店会从指定箱子中获取库存。
商店创建物品
若要创建一个玩家商店,你需要拿着商店创建物品(shop-creation-item
),默认情况下是名称为 &aShopkeeper
的村民刷怪蛋(详见配置)。
作为管理员,你可以通过命令 /shopkeeper give
获取创建物品。若你想要其他玩家能够创建自己的商店,你就需要自行设置获取该物品的方式。最直接的方法就是在诸如主城的地方设置一个管理员商店,然后向玩家出售商店创建物品。也可以将商店创建物品作为实体的掉落物,或是将其修改为原版可获取的某个物品。
不建议直接给予玩家 /shopkeeper give
命令的权限,因为它一般仅供管理员使用(类似原版的 give
命令),且很难防止玩家对其的滥用。
通过商店创建物品创建玩家商店
在手中拿着商店创建物品后,它会在聊天栏显示创建商店的步骤。
首先,确保你没有看向任何方块。例如对着天上右键,即可在不同的商店类型之间切换(出售、收购、交易、复印)。你也可以按 Shift+右键来切换生成的实体种类(村民、告示牌、女巫等)。
之后,右键点击箱子(或者其他支持的容器)来选中它,然后右键点击其他方块将交易商店放置在该位置。
通过命令创建玩家商店
若在配置文本中(设置项 create-player-shop-with-command
,默认禁用)启用,你也可以使用命令 /shopkeeper [商店类型] [物体类型]
在看向箱子时创建玩家商店。这会让交易商店生成在箱子的一侧。
若你在执行此命令时看向了非箱子类方块(或者其他支持的容器),且你没有指定商店类型,则插件会为你创建一个管理员商店。
[商店类型]
与 [物体类型]
是可选参数。若未指定,则生成的交易商店会取决于你的选择(通过右键在商店创建物品切换的商店类型),或者默认值。