HeadCommands.java 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package me.km.snuviscript.commands;
  2. import me.hammerle.snuviscript.code.ScriptManager;
  3. import me.km.networking.ModPacketHandler;
  4. import me.km.permissions.Permissions;
  5. import me.km.snuviscript.Scripts;
  6. import static me.km.snuviscript.commands.CommandUtils.doForGroup;
  7. import net.minecraft.entity.player.ServerPlayerEntity;
  8. import net.minecraft.server.MinecraftServer;
  9. public class HeadCommands {
  10. public static void registerFunctions(ScriptManager sm, Scripts scripts, Permissions perms,
  11. MinecraftServer server) {
  12. sm.registerConsumer("head.add", (sc, in) -> {
  13. byte id = in[1].getByte(sc);
  14. String name = in[2].getString(sc);
  15. float x = in[3].getFloat(sc);
  16. float y = in[4].getFloat(sc);
  17. float width = in[5].getFloat(sc);
  18. float height = in[6].getFloat(sc);
  19. doForGroup(server, scripts, perms, in[0].get(sc), sc, p -> {
  20. ModPacketHandler.sendToHead((ServerPlayerEntity) p, (byte) 1, id, name, x, y, width,
  21. height);
  22. });
  23. });
  24. sm.registerConsumer("head.remove", (sc, in) -> {
  25. byte id = in[1].getByte(sc);
  26. doForGroup(server, scripts, perms, in[0].get(sc), sc, p -> {
  27. ModPacketHandler.sendToHead((ServerPlayerEntity) p, (byte) 2, id, "", 0.0f, 0.0f,
  28. 0.0f, 0.0f);
  29. });
  30. });
  31. sm.registerConsumer("head.reset", (sc, in) -> {
  32. doForGroup(server, scripts, perms, in[0].get(sc), sc, p -> {
  33. ModPacketHandler.sendToHead((ServerPlayerEntity) p, (byte) 3, (byte) -1, "", 0.0f,
  34. 0.0f, 0.0f, 0.0f);
  35. });
  36. });
  37. }
  38. }