parent
c37b23b71a
commit
29a98733b7
6 changed files with 175 additions and 2 deletions
@ -0,0 +1,47 @@ |
||||
package xyz.mineconomia.mineconomiacore.commands; |
||||
|
||||
import org.bukkit.ChatColor; |
||||
import org.bukkit.block.Sign; |
||||
import org.bukkit.command.Command; |
||||
import org.bukkit.command.CommandSender; |
||||
import org.bukkit.command.TabExecutor; |
||||
import org.bukkit.entity.Player; |
||||
import org.jetbrains.annotations.NotNull; |
||||
import org.jetbrains.annotations.Nullable; |
||||
import xyz.mineconomia.mineconomiacore.handlers.SignHandler; |
||||
|
||||
import java.util.List; |
||||
|
||||
import static xyz.mineconomia.mineconomiacore.MineconomiaCore.getArgs; |
||||
|
||||
public class editSign implements TabExecutor { |
||||
@Override |
||||
public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, @NotNull String[] args) { |
||||
StringBuilder argsString = new StringBuilder(); |
||||
for (String ss : args) { |
||||
argsString.append(ChatColor.translateAlternateColorCodes('&', ss)).append(" "); |
||||
} |
||||
List<String> pArgs = getArgs(argsString.toString()); |
||||
if (pArgs.size() != 2){ |
||||
commandSender.sendMessage(ChatColor.RED + "špatný počet argumentů"); |
||||
return false; |
||||
} |
||||
Player player = (Player) commandSender; |
||||
|
||||
if (!(player.getTargetBlock(null, 5).getState() instanceof Sign sign)){ |
||||
|
||||
commandSender.sendMessage(ChatColor.RED + "musíš se dívat na cedulku"); |
||||
return false; |
||||
} |
||||
sign.setLine(Integer.parseInt(pArgs.get(0))-1, pArgs.get(1)); |
||||
commandSender.sendMessage(ChatColor.GREEN + "Cedulka upravena"); |
||||
sign.update(); |
||||
return false; |
||||
} |
||||
|
||||
@Nullable |
||||
@Override |
||||
public List<String> onTabComplete(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, @NotNull String[] strings) { |
||||
return List.of(); |
||||
} |
||||
} |
||||
@ -0,0 +1,48 @@ |
||||
package xyz.mineconomia.mineconomiacore.commands; |
||||
|
||||
import org.bukkit.ChatColor; |
||||
import org.bukkit.block.Sign; |
||||
import org.bukkit.command.Command; |
||||
import org.bukkit.command.CommandSender; |
||||
import org.bukkit.command.TabExecutor; |
||||
import org.bukkit.entity.Player; |
||||
import org.jetbrains.annotations.NotNull; |
||||
import org.jetbrains.annotations.Nullable; |
||||
import xyz.mineconomia.mineconomiacore.handlers.SignHandler; |
||||
|
||||
import java.util.List; |
||||
|
||||
import static xyz.mineconomia.mineconomiacore.MineconomiaCore.getArgs; |
||||
|
||||
public class setSign implements TabExecutor { |
||||
@Override |
||||
public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, @NotNull String[] args) { |
||||
|
||||
StringBuilder argsString = new StringBuilder(); |
||||
for (String ss : args) { |
||||
argsString.append(ChatColor.translateAlternateColorCodes('&', ss)).append(" "); |
||||
} |
||||
List<String> pArgs = getArgs(argsString.toString()); |
||||
if (pArgs.size() != 4){ |
||||
commandSender.sendMessage(ChatColor.RED + "špatný počet argumentů"); |
||||
return false; |
||||
} |
||||
Player player = (Player) commandSender; |
||||
|
||||
if (!(player.getTargetBlock(null, 5).getState() instanceof Sign sign)){ |
||||
|
||||
commandSender.sendMessage(ChatColor.RED + "musíš se dívat na cedulku"); |
||||
return false; |
||||
} |
||||
SignHandler.changeSignText(sign, pArgs.get(0), pArgs.get(1), pArgs.get(2), pArgs.get(3)); |
||||
commandSender.sendMessage(ChatColor.GREEN + "Cedulka nastavena"); |
||||
sign.update(); |
||||
return false; |
||||
} |
||||
|
||||
@Nullable |
||||
@Override |
||||
public List<String> onTabComplete(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, @NotNull String[] strings) { |
||||
return List.of(); |
||||
} |
||||
} |
||||
@ -0,0 +1,19 @@ |
||||
package xyz.mineconomia.mineconomiacore.events; |
||||
|
||||
import org.bukkit.ChatColor; |
||||
import org.bukkit.event.EventHandler; |
||||
import org.bukkit.event.Listener; |
||||
import org.bukkit.event.block.SignChangeEvent; |
||||
|
||||
|
||||
import java.util.Objects; |
||||
|
||||
public class signComplete implements Listener { |
||||
@EventHandler |
||||
public void signCreate(SignChangeEvent event){ |
||||
|
||||
for (int i = 0; 4 > i; i++){ |
||||
event.setLine(i, ChatColor.translateAlternateColorCodes('&', Objects.requireNonNull(event.getLine(i)))); |
||||
} |
||||
} |
||||
} |
||||
@ -0,0 +1,35 @@ |
||||
package xyz.mineconomia.mineconomiacore.events; |
||||
|
||||
import org.bukkit.Particle; |
||||
import org.bukkit.Sound; |
||||
import org.bukkit.entity.*; |
||||
import org.bukkit.event.EventHandler; |
||||
import org.bukkit.event.Listener; |
||||
import org.bukkit.event.player.PlayerInteractEntityEvent; |
||||
import org.bukkit.inventory.EquipmentSlot; |
||||
|
||||
public class toggleFrame implements Listener { |
||||
@EventHandler |
||||
public void frameToggle(PlayerInteractEntityEvent event){ |
||||
Entity entity = event.getRightClicked(); |
||||
Player player = event.getPlayer(); |
||||
if (entity.getType() != EntityType.ITEM_FRAME){ |
||||
return; |
||||
} |
||||
|
||||
if (!player.isSneaking()){ |
||||
return; |
||||
} |
||||
event.setCancelled(true); |
||||
if (event.getHand() == EquipmentSlot.OFF_HAND) { |
||||
return; |
||||
} |
||||
ItemFrame itemFrame = (ItemFrame) entity; |
||||
itemFrame.setVisible(!itemFrame.isVisible()); |
||||
player.playSound(itemFrame, Sound.ITEM_HOE_TILL, 100, 1); |
||||
player.spawnParticle(Particle.EXPLOSION_NORMAL, itemFrame.getLocation(), 0); |
||||
|
||||
|
||||
|
||||
} |
||||
} |
||||
Loading…
Reference in new issue