配置 - 高级选项

如何设置不同种类的动作?

这很容易!只需复制您的价格、奖励和知识线并修改路径:

将您要使用的点击类型的名称添加到路径的末尾。 示例:

可能的点击类型:

配置示例

  1. Diamonds:
  2.   MenuItem:
  3. - type:DIAMOND
  4. - amount:5
  5. - name:&95 Diamonds
  6. - 'lore1:&eClick &2left &eto buy &c%reward% &efor &c%price%&e.'
  7. - 'lore2:&eClick &2right &eto sell &c%price_right% &efor &c%reward_right%&e.'
  8.   RewardType: ITEM
  9.   Reward:
  10. - - type:DIAMOND
  11. - amount:5
  12.   PriceType: MONEY
  13.   Price: 5000
  14.   Message: '&eYou bought %reward%! Money left: &c%left%'
  15.   RewardType_right: MONEY
  16.   Reward_right: 2500
  17.   PriceType_right: ITEM
  18.   Price_right:
  19. - - type:DIAMOND

在这种情况下,玩家将通过左键单击购买钻石并通过右键单击出售钻石。

您可以使用占位符 %reward_<clicktype>% 和 %price_<clicktype>% 来显示操作的奖励和价格。

或者,您可以通过将“ExtraPermission_<clicktype>”添加到您的商店项目来为不同的点击类型添加独立的额外权限。例如“ExtraPermission_right:BossShop.itemshop.apple.rightclick”。

其他可能的设置

您可以将以下设置添加到主 config.yml、任何商店和任何商店物品:

这些设置由它们的子级继承:例如,如果您在主 config.yml 中设置“CloseShopAfterPurchase:true”,则所有商店物品都将受到它的影响。现在,如果您为单个商店设置“CloseShopAfterPurchase:false”,则该商店中的每个商店物品的设置都将被禁用。

声音设置也可以继承。您可以将以下属性添加到任何商店或商店物品,以使他们和他们的子项使用新的声音:

  1. Sound:
  2.   Shopitem:
  3.   Click: 'UI_BUTTON_CLICK:1:1'
  4.   Purchase: 'ENTITY_PLAYER_LEVELUP:1:1.8'
  5.   NoPermission: 'ENTITY_BLAZE_DEATH:1:1'
  6.   NotEnoughMoney: 'ENTITY_SHULKER_HURT:1:0.8'

以下声音属性可以添加到任何商店:

  1. Sound:
  2.   Shop:
  3.   ChangePage: 'UI_BUTTON_CLICK:0.2:1'
  4.   ChangeShop: 'BLOCK_CHEST_OPEN:0.2:1'
  5.   Open: 'ENTITY_ELDER_GUARDIAN_CURSE:1:1.8'
  6.   Close: ''

声音的格式为“<声音名称>:<音量>:<音高>”。您可以通过将声音设置为“”来关闭声音。您可以在此处找到所有可用的声音名称。

以下可选设置可以添加到任何商店(但不是 shopitem): InventoryRows : <amount of rows> - 此设置允许增加库存的大小,而无需将商店物品添加到底行

玩家输入 (略)

配置技巧

有几个技巧可以让设置商店更容易。例如,如果您出售物品,您通常会创建一个物品作为奖励,您会创建另一个物品作为 MenuItem,对吗?

有一种简单的方法可以避免创建两个相同的项目:您可以使用占位符 '%rewarditem_<id>%' 和 '%priceitem_<id>%' 以使您的 MenuItem 导入给定项目的外观.

示例 1:

  1. GodApple:
  2.   MenuItem:
  3. - '%rewarditem_1%'
  4.   - 'lore:&cPrice: %price%'
  5.   RewardType: ITEM
  6.   Reward:
  7. - - type:GOLDEN_APPLE
  8. - amount:1
  9. - Durability:1
  10.   PriceType: MONEY
  11.   Price: 10000
  12.   Message: '&eYou bought 1 %itemname%! &eMoney left: &c%left%'
  13.   ExtraPermission: ''

在此示例中,MenuItem 使用第一个奖励项目的外观(反正只有一个)。这样神苹果只需要设置一次。

示例 2:

  1. bow_ranger:
  2.   MenuItem:
  3. - '%rewarditem_2%'
  4. - lore:&cCosts %price%.
  5.   RewardType: ITEM
  6.   Reward:
  7. - - amount:16
  8. - type:ARROW
  9. - - name:&2&lRanger Bow
  10. - amount:1
  11. - type:BOW
  12. - enchantment:ARROW_DAMAGE#7
  13. - enchantment:ARROW_KNOCKBACK#10
  14.   PriceType: EXP
  15.   Price: 30
  16.   Message: '&2You以 &c%price%&2 的价格购买了新武器。
  17.   ExtraPermission: ''
  18.   InventoryLocation: 14

在这种情况下,奖励包括一些箭和一把复杂的弓。因为 MenuItem 不应该看起来像箭头,而应该像弓,我们在这里使用 '%rewarditem_2%'(弓是奖励列表的第二项)。

如果您想要更多类似这样的技巧,我建议您查看 Addon TrickyShops

一件商品的不同 RewardTypes/Pricetypes

可以使用以下一种或多种类型:

使用示例:

RewardType AND

  1. DifferentRewardTypesAND:
  2.   MenuItem:
  3.   - 'lore:&aReward: %reward% #&cPrice: %price%'
  4. - name:&9Money, Items and Exp
  5. - amount:1
  6. - type:TNT
  7.   RewardType: AND
  8.   Reward:
  9.   RewardType1: ITEM
  10.   Reward1:
  11. - - amount:7
  12. - type:TNT
  13.   RewardType2: money
  14.   Reward2: 50
  15.   RewardType3: exp
  16.   Reward3: 20
  17.   PriceType: NOTHING
  18.   Message: '&eYou received %reward%.'
  19.   ExtraPermission: ''
  20.   InventoryLocation: 0

PriceType AND

  1. DifferentPriceTypesAND:
  2.   MenuItem:
  3. - type:DIAMOND
  4. - amount:5
  5. - name:&95 Diamonds
  6. - 'lore1:&eBuy %reward% for %price%.'
  7.   RewardType: ITEM
  8.   Reward:
  9. - - type:DIAMOND
  10. - amount:5
  11.   PriceType: AND
  12.   Price:
  13.   PriceType1: MONEY
  14.   Price1: 50.0
  15.   PriceType2: POINTS
  16.   Price2: 10
  17.   Message: '&eYou bought %reward%! Balances left: &c%left%'
  18.   InventoryLocation: 0

PriceType OR

  1. DifferentPriceTypesOR:
  2.   MenuItem:
  3. - type:DIAMOND
  4. - amount:5
  5. - name:&95 Diamonds
  6. - 'lore1:&eBuy %reward% for %price%.'
  7.   RewardType: ITEM
  8.   Reward:
  9. - - type:DIAMOND
  10. - amount:5
  11.   PriceType: OR
  12.   Price:
  13.   PriceType1: MONEY
  14.   Price1: 50.0
  15.   PriceType2: POINTS
  16.   Price2: 10
  17.   Message: '&eYou bought %reward%! Balance left: &c%left%'
  18.   InventoryLocation: 0

当然,这些类型可以堆叠,如以下结构示例所示:

在此示例中,玩家需要支付钻石和 1000 钱或 50 点。