Add ID Commands to Dialogs and Quests

This commit is contained in:
Kam committed 2023-06-23 12:43:44 -04:00
1 parent 50e584213a
commit c51db5e893
2 files changed
+53

No files matched your search

@@ -1,5 +1,6 @@
package kamkeel.command;
import java.util.Collection;
import java.util.List;
import net.minecraft.command.CommandBase;
@@ -11,9 +12,11 @@ import noppes.npcs.client.EntityUtil;
import noppes.npcs.controllers.DialogController;
import noppes.npcs.controllers.PlayerDataController;
import noppes.npcs.controllers.QuestController;
import noppes.npcs.controllers.data.Dialog;
import noppes.npcs.controllers.data.DialogOption;
import noppes.npcs.controllers.data.PlayerData;
import noppes.npcs.controllers.data.Quest;
import noppes.npcs.entity.EntityDialogNpc;
public class DialogCommand extends CommandKamkeelBase {
@@ -120,4 +123,28 @@ public class DialogCommand extends CommandKamkeelBase {
NoppesUtilServer.openDialog(player, npc, dialog, 0);
sendResult(sender, String.format("Displayed Dialog \u00A7e%d\u00A77 to Player '\u00A7b%s\u00A77'", diagid, player.getCommandSenderName()));
}
@SubCommand(
desc = "Find dialog id number by its name",
usage = "<dialog name>"
)
public void id(ICommandSender sender, String args[]) throws CommandException {
if(args.length == 0){
sendError(sender, "Please provide a name for the dialog");
return;
}
String dialogName = String.join(" ", args).toLowerCase();
final Collection<Dialog> quests = DialogController.instance.dialogs.values();
int count = 0;
for(Dialog dialog : quests){
if(dialog.getName().toLowerCase().contains(dialogName)){
sendResult(sender, String.format("Dialog \u00A7e%d\u00A77 - \u00A7c'%s'", dialog.id, dialog.getName()));
count++;
}
}
if(count == 0){
sendResult(sender, String.format("No Dialog found with name: \u00A7c'%s'", dialogName));
}
}
}
@@ -1,5 +1,6 @@
package kamkeel.command;
import java.util.Collection;
import java.util.List;
import net.minecraft.command.CommandException;
@@ -12,6 +13,7 @@ import noppes.npcs.controllers.PlayerDataController;
import noppes.npcs.controllers.QuestController;
import noppes.npcs.controllers.data.PlayerData;
import noppes.npcs.controllers.data.Quest;
import noppes.npcs.controllers.data.QuestCategory;
import noppes.npcs.controllers.data.QuestData;
public class QuestCommand extends CommandKamkeelBase {
@@ -173,6 +175,30 @@ public class QuestCommand extends CommandKamkeelBase {
sendResult(sender, String.format("Removed Quest \u00A7e%d\u00A77 for Player '\u00A7b%s\u00A77'", questid, playerdata.playername));
}
}
@SubCommand(
desc = "Find quest id number by its name",
usage = "<quest name>"
)
public void id(ICommandSender sender, String args[]) throws CommandException {
if(args.length == 0){
sendError(sender, "Please provide a name for the quest");
return;
}
String catName = String.join(" ", args).toLowerCase();
final Collection<Quest> quests = QuestController.instance.quests.values();
int count = 0;
for(Quest quest : quests){
if(quest.getName().toLowerCase().contains(catName)){
sendResult(sender, String.format("Quest \u00A7e%d\u00A77 - \u00A7c'%s'", quest.id, quest.getName()));
count++;
}
}
if(count == 0){
sendResult(sender, String.format("No Quest found with name: \u00A7c'%s'", catName));
}
}
@SubCommand(
desc="reload quests from disk",