Skip to content

Commit

Permalink
Made setFlySpeed and setWalkSpeed usable on server
Browse files Browse the repository at this point in the history
  • Loading branch information
hamusuke0323 committed May 14, 2021
1 parent aa4dea5 commit 7c0771b
Show file tree
Hide file tree
Showing 10 changed files with 230 additions and 198 deletions.
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ org.gradle.jvmargs=-Xmx1G

fabric_version=0.34.0+1.16

mod_version = 1.2
mod_version = 1.3
maven_group = com.hamusuke
archives_base_name = fly-command-mod
1 change: 1 addition & 0 deletions src/main/java/com/hamusuke/flycommod/Main.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ public class Main implements ModInitializer {

public void onInitialize() {
Registry.register(Registry.ITEM, new Identifier(MOD_ID, "flying_stick"), FLYING_STICK);

CommandRegistrationCallback.EVENT.register((dispatcher, dedicated) -> {
CommandFlying.register(dispatcher);
CommandEntityAbilities.register(dispatcher);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,33 @@
import net.minecraft.text.TranslatableText;

import java.util.Collection;
import java.util.stream.Collectors;

public class CommandEntityAbilities {
public static void register(CommandDispatcher<ServerCommandSource> dispatcher) {
LiteralArgumentBuilder<ServerCommandSource> literalargumentbuilder = CommandManager.literal("entityabilities").requires((permission) -> permission.hasPermissionLevel(2));
LiteralArgumentBuilder<ServerCommandSource> literalArgumentBuilder = CommandManager.literal("entityabilities").requires((permission) -> permission.hasPermissionLevel(2));

literalargumentbuilder.then(CommandManager.argument("targets", EntityArgumentType.entities()).then(CommandManager.literal("noGravity").then(CommandManager.argument("boolean", BoolArgumentType.bool()).executes((command) -> noGravity(command.getSource(), EntityArgumentType.getEntities(command, "targets"), BoolArgumentType.getBool(command, "boolean"))))));
literalArgumentBuilder.then(CommandManager.argument("targets", EntityArgumentType.entities()).then(CommandManager.literal("noGravity").then(CommandManager.argument("boolean", BoolArgumentType.bool()).executes((command) -> {
boolean flag = BoolArgumentType.getBool(command, "boolean");
return noGravity(command.getSource(), EntityArgumentType.getEntities(command, "targets").stream().filter(entity -> entity.hasNoGravity() != flag).collect(Collectors.toList()), flag);
}))));

literalargumentbuilder.then(CommandManager.argument("targets", EntityArgumentType.entities()).then(CommandManager.literal("setGlowing").then(CommandManager.argument("boolean", BoolArgumentType.bool()).executes((command) -> setGlowing(command.getSource(), EntityArgumentType.getEntities(command, "targets"), BoolArgumentType.getBool(command, "boolean"))))));
literalArgumentBuilder.then(CommandManager.argument("targets", EntityArgumentType.entities()).then(CommandManager.literal("setGlowing").then(CommandManager.argument("boolean", BoolArgumentType.bool()).executes((command) -> {
boolean flag = BoolArgumentType.getBool(command, "boolean");
return setGlowing(command.getSource(), EntityArgumentType.getEntities(command, "targets").stream().filter(entity -> entity.isGlowing() != flag).collect(Collectors.toList()), flag);
}))));

literalargumentbuilder.then(CommandManager.argument("targets", EntityArgumentType.entities()).then(CommandManager.literal("setInvulnerable").then(CommandManager.argument("boolean", BoolArgumentType.bool()).executes((command) -> setInvulnerable(command.getSource(), EntityArgumentType.getEntities(command, "targets"), BoolArgumentType.getBool(command, "boolean"))))));
literalArgumentBuilder.then(CommandManager.argument("targets", EntityArgumentType.entities()).then(CommandManager.literal("setInvulnerable").then(CommandManager.argument("boolean", BoolArgumentType.bool()).executes((command) -> {
boolean flag = BoolArgumentType.getBool(command, "boolean");
return setInvulnerable(command.getSource(), EntityArgumentType.getEntities(command, "targets").stream().filter(entity -> entity.isInvulnerable() != flag).collect(Collectors.toList()), flag);
}))));

literalargumentbuilder.then(CommandManager.argument("targets", EntityArgumentType.entities()).then(CommandManager.literal("setInvisible").then(CommandManager.argument("boolean", BoolArgumentType.bool()).executes((command) -> setInvisible(command.getSource(), EntityArgumentType.getEntities(command, "targets"), BoolArgumentType.getBool(command, "boolean"))))));
literalArgumentBuilder.then(CommandManager.argument("targets", EntityArgumentType.entities()).then(CommandManager.literal("setInvisible").then(CommandManager.argument("boolean", BoolArgumentType.bool()).executes((command) -> {
boolean flag = BoolArgumentType.getBool(command, "boolean");
return setInvisible(command.getSource(), EntityArgumentType.getEntities(command, "targets").stream().filter(entity -> entity.isInvisible() != flag).collect(Collectors.toList()), flag);
}))));

dispatcher.register(literalargumentbuilder);
dispatcher.register(literalArgumentBuilder);
}

private static int noGravity(ServerCommandSource source, Collection<? extends Entity> entities, boolean flag) {
Expand All @@ -36,7 +49,7 @@ private static int noGravity(ServerCommandSource source, Collection<? extends En

if (entities.size() == 1) {
source.sendFeedback(new TranslatableText("hamusuke.command.entityabilities.success.nogravity." + flag + ".single", entities.iterator().next().getDisplayName()), true);
} else if (entities.size() > 1) {
} else {
source.sendFeedback(new TranslatableText("hamusuke.command.entityabilities.success.nogravity." + flag + ".multiple", entities.size()), true);
}

Expand All @@ -48,7 +61,7 @@ private static int setGlowing(ServerCommandSource source, Collection<? extends E

if (entities.size() == 1) {
source.sendFeedback(new TranslatableText("hamusuke.command.entityabilities.success.setglowing." + flag + ".single", entities.iterator().next().getDisplayName()), true);
} else if (entities.size() > 1) {
} else {
source.sendFeedback(new TranslatableText("hamusuke.command.entityabilities.success.setglowing." + flag + ".multiple", entities.size()), true);
}

Expand All @@ -60,7 +73,7 @@ private static int setInvulnerable(ServerCommandSource source, Collection<? exte

if (entities.size() == 1) {
source.sendFeedback(new TranslatableText("hamusuke.command.entityabilities.success.setinvulnerable." + flag + ".single", entities.iterator().next().getDisplayName()), true);
} else if (entities.size() > 1) {
} else {
source.sendFeedback(new TranslatableText("hamusuke.command.entityabilities.success.setinvulnerable." + flag + ".multiple", entities.size()), true);
}

Expand All @@ -72,7 +85,7 @@ private static int setInvisible(ServerCommandSource source, Collection<? extends

if (entities.size() == 1) {
source.sendFeedback(new TranslatableText("hamusuke.command.entityabilities.success.invisible." + flag + ".single", entities.iterator().next().getDisplayName()), true);
} else if (entities.size() > 1) {
} else {
source.sendFeedback(new TranslatableText("hamusuke.command.entityabilities.success.invisible." + flag + ".multiple", entities.size()), true);
}

Expand Down
Loading

0 comments on commit 7c0771b

Please sign in to comment.