diff --git a/RPGRegions.iml b/RPGRegions.iml index 7b5f8ad..9e3ad85 100644 --- a/RPGRegions.iml +++ b/RPGRegions.iml @@ -1,6 +1,6 @@ - + diff --git a/api/src/main/java/net/islandearth/rpgregions/rewards/MessageReward.java b/api/src/main/java/net/islandearth/rpgregions/rewards/MessageReward.java new file mode 100644 index 0000000..7c28724 --- /dev/null +++ b/api/src/main/java/net/islandearth/rpgregions/rewards/MessageReward.java @@ -0,0 +1,28 @@ +package net.islandearth.rpgregions.rewards; + +import org.bukkit.ChatColor; +import org.bukkit.entity.Player; + +import java.util.List; + +/** + * Reward to send messages to the player. More complex messages can use the tellraw command in {@link ConsoleCommandReward}. + */ +public class MessageReward extends DiscoveryReward { + + private final List messages; + + public MessageReward(List messages) { + this.messages = messages; + } + + @Override + public void award(Player player) { + messages.forEach(message -> player.sendMessage(ChatColor.translateAlternateColorCodes('&', message))); + } + + @Override + public String getName() { + return "Message"; + } +} diff --git a/gradle.properties b/gradle.properties index 0c75b50..0609716 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,2 +1,2 @@ pluginGroup=net.islandearth -pluginVersion=1.2.0 +pluginVersion=1.2.1 diff --git a/rpgregions/src/main/java/net/islandearth/rpgregions/managers/RPGRegionsManagers.java b/rpgregions/src/main/java/net/islandearth/rpgregions/managers/RPGRegionsManagers.java index 733976f..d25b3fc 100644 --- a/rpgregions/src/main/java/net/islandearth/rpgregions/managers/RPGRegionsManagers.java +++ b/rpgregions/src/main/java/net/islandearth/rpgregions/managers/RPGRegionsManagers.java @@ -14,6 +14,7 @@ import net.islandearth.rpgregions.rewards.ConsoleCommandReward; import net.islandearth.rpgregions.rewards.DiscoveryReward; import net.islandearth.rpgregions.rewards.ExperienceReward; import net.islandearth.rpgregions.rewards.ItemReward; +import net.islandearth.rpgregions.rewards.MessageReward; import net.islandearth.rpgregions.rewards.PlayerCommandReward; import net.islandearth.rpgregions.utils.ItemStackBuilder; import net.islandearth.rpgregions.utils.XMaterial; @@ -64,6 +65,7 @@ public class RPGRegionsManagers { rewards.add(new ItemReward(new ItemStack(XMaterial.IRON_BARS.parseMaterial()))); rewards.add(new PlayerCommandReward("say I discovered a region!")); rewards.add(new ConsoleCommandReward("say Server sees you discovered a region!")); + rewards.add(new MessageReward(Collections.singletonList("&aExample message as a reward"))); List effects = new ArrayList<>(); if (!plugin.isLegacyServer()) effects.add(new PotionRegionEffect( new PotionEffect(PotionEffectType.GLOWING, 100, 1, true, true, true),