summaryrefslogtreecommitdiff
path: root/YWD/src/main/java/fyresmodjam/commands
diff options
context:
space:
mode:
Diffstat (limited to 'YWD/src/main/java/fyresmodjam/commands')
-rwxr-xr-xYWD/src/main/java/fyresmodjam/commands/CommandCraftingStats.java152
-rwxr-xr-xYWD/src/main/java/fyresmodjam/commands/CommandCurrentBlessing.java84
-rwxr-xr-xYWD/src/main/java/fyresmodjam/commands/CommandCurrentDisadvantage.java81
-rwxr-xr-xYWD/src/main/java/fyresmodjam/commands/CommandCurrentWorldTask.java106
-rwxr-xr-xYWD/src/main/java/fyresmodjam/commands/CommandKillStats.java156
-rwxr-xr-xYWD/src/main/java/fyresmodjam/commands/CommandWeaponStats.java155
6 files changed, 734 insertions, 0 deletions
diff --git a/YWD/src/main/java/fyresmodjam/commands/CommandCraftingStats.java b/YWD/src/main/java/fyresmodjam/commands/CommandCraftingStats.java
new file mode 100755
index 0000000..aecf4d5
--- /dev/null
+++ b/YWD/src/main/java/fyresmodjam/commands/CommandCraftingStats.java
@@ -0,0 +1,152 @@
+package fyresmodjam.commands;
+
+import java.util.List;
+
+import fyresmodjam.handlers.NewPacketHandler;
+import fyresmodjam.misc.ConfigData;
+import fyresmodjam.misc.EntityStatHelper;
+import net.minecraft.command.ICommand;
+import net.minecraft.command.ICommandSender;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+
+public class CommandCraftingStats implements ICommand {
+
+ @Override
+ public int compareTo(Object arg0) {
+ return 0;
+ }
+
+ @Override
+ public String getCommandName() {
+ return "craftingKnowledge";
+ }
+
+ @Override
+ public String getCommandUsage(ICommandSender icommandsender) {
+ return "commands.craftingKnowledge.usage";
+ }
+
+ @Override
+ public List getCommandAliases() {
+ return null;
+ }
+
+ @Override
+ public void processCommand(ICommandSender icommandsender,
+ String[] astring) {
+ int page = astring.length > 0
+ ? Integer.parseInt(astring[0]) - 1
+ : 0, maxPage = 0;
+ if (icommandsender instanceof EntityPlayer) {
+ EntityPlayer entityplayer = (EntityPlayer) icommandsender;
+
+ String message = "\u00A7c\u00A7oCrafting stats not enabled.";
+
+ if (ConfigData.enableCraftingStats) {
+ message = "@Crafting Knowledge:";
+
+ if (entityplayer.getEntityData()
+ .hasKey("CraftingStats")) {
+ NBTTagCompound craftingStats = entityplayer
+ .getEntityData()
+ .getCompoundTag("CraftingStats");
+
+ String trackedItems = craftingStats
+ .hasKey("TrackedItemList")
+ ? craftingStats.getString(
+ "TrackedItemList")
+ : "";
+
+ if (trackedItems != null
+ && trackedItems.length() > 0) {
+ String[] trackedItemList = trackedItems
+ .split(";");
+
+ maxPage = Math.max(0,
+ (craftingStats.func_150296_c()
+ .size()
+ - 1)
+ / 4);
+ if (page > maxPage) {
+ page = maxPage;
+ }
+ if (page < 0) {
+ page = 0;
+ }
+
+ message = "@Crafting Knowledge (page "
+ + (page + 1)
+ + "/"
+ + (maxPage + 1)
+ + "):";
+
+ int count = 0, skip = 0;
+ for (String item : trackedItemList) {
+ if (skip < page * 4) {
+ skip++;
+ continue;
+ }
+
+ int kills = craftingStats
+ .getInteger(item);
+
+ int last = 0;
+ for (int i = 0; i < EntityStatHelper.killCount.length; i++) {
+ if (kills >= EntityStatHelper.killCount[i]
+ * 2) {
+ last = i;
+ continue;
+ } else {
+ break;
+ }
+ }
+
+ message += "@\u00A7b "
+ + EntityStatHelper.knowledge[last]
+ + " "
+ + item.toLowerCase()
+ + " smith\u00A73 ("
+ + kills
+ + " craft(s)"
+ + (last < EntityStatHelper.knowledge.length
+ - 1 ? ", " + (EntityStatHelper.killCount[last + 1] * 2 - kills + " craft(s) to next rank)") : ")");
+ count++;
+
+ if (count >= 4) {
+ break;
+ }
+ }
+ }
+ } else {
+ message += "@ You've yet to learn anything.";
+ }
+ }
+
+ NewPacketHandler.SEND_MESSAGE.sendToPlayer(
+ entityplayer, message);
+ }
+ }
+
+ @Override
+ public boolean canCommandSenderUseCommand(
+ ICommandSender icommandsender) {
+ return true;
+ }
+
+ @Override
+ public List addTabCompletionOptions(ICommandSender icommandsender,
+ String[] astring) {
+ return null;
+ }
+
+ @Override
+ public boolean isUsernameIndex(String[] astring, int i) {
+ return false;
+ }
+
+ public int getRequiredPermissionLevel() {
+ return 0;
+ }
+
+}
diff --git a/YWD/src/main/java/fyresmodjam/commands/CommandCurrentBlessing.java b/YWD/src/main/java/fyresmodjam/commands/CommandCurrentBlessing.java
new file mode 100755
index 0000000..09b82df
--- /dev/null
+++ b/YWD/src/main/java/fyresmodjam/commands/CommandCurrentBlessing.java
@@ -0,0 +1,84 @@
+package fyresmodjam.commands;
+
+import java.util.List;
+
+import fyresmodjam.blessings.BlessingUtils;
+import fyresmodjam.blessings.Blessing;
+import fyresmodjam.handlers.NewPacketHandler;
+import net.minecraft.command.ICommand;
+import net.minecraft.command.ICommandSender;
+import net.minecraft.entity.player.EntityPlayer;
+
+public class CommandCurrentBlessing implements ICommand {
+
+ @Override
+ public int compareTo(Object arg0) {
+ return 0;
+ }
+
+ @Override
+ public String getCommandName() {
+ return "currentBlessing";
+ }
+
+ @Override
+ public String getCommandUsage(ICommandSender icommandsender) {
+ return "commands.currentBlessing.usage";
+ }
+
+ @Override
+ public List getCommandAliases() {
+ return null;
+ }
+
+ @Override
+ public void processCommand(ICommandSender icommandsender,
+ String[] astring) {
+ if (icommandsender instanceof EntityPlayer) {
+ EntityPlayer entityplayer = (EntityPlayer) icommandsender;
+
+ boolean hasBlessing = BlessingUtils
+ .hasBlessing(entityplayer);
+
+ String blessingMsg = "";
+
+ if (hasBlessing) {
+ Blessing bless = BlessingUtils
+ .getBlessingInstance(
+ entityplayer);
+
+ blessingMsg = String.format(
+ "§eCurrent Blessing - §o%s\n%s",
+ bless.customName(),
+ bless.description());
+ } else {
+ blessingMsg = "You don't currently have a blessing";
+ }
+
+ NewPacketHandler.SEND_MESSAGE.sendToPlayer(
+ entityplayer, blessingMsg);
+ }
+ }
+
+ @Override
+ public boolean canCommandSenderUseCommand(
+ ICommandSender icommandsender) {
+ return true;
+ }
+
+ @Override
+ public List addTabCompletionOptions(ICommandSender icommandsender,
+ String[] astring) {
+ return null;
+ }
+
+ @Override
+ public boolean isUsernameIndex(String[] astring, int i) {
+ return false;
+ }
+
+ public int getRequiredPermissionLevel() {
+ return 0;
+ }
+
+}
diff --git a/YWD/src/main/java/fyresmodjam/commands/CommandCurrentDisadvantage.java b/YWD/src/main/java/fyresmodjam/commands/CommandCurrentDisadvantage.java
new file mode 100755
index 0000000..0ab796d
--- /dev/null
+++ b/YWD/src/main/java/fyresmodjam/commands/CommandCurrentDisadvantage.java
@@ -0,0 +1,81 @@
+package fyresmodjam.commands;
+
+import java.util.List;
+
+import fyresmodjam.handlers.CommonTickHandler;
+import fyresmodjam.handlers.NewPacketHandler;
+import fyresmodjam.worldgen.FyresWorldData;
+import net.minecraft.command.ICommand;
+import net.minecraft.command.ICommandSender;
+import net.minecraft.entity.player.EntityPlayer;
+
+public class CommandCurrentDisadvantage implements ICommand {
+
+ @Override
+ public int compareTo(Object arg0) {
+ return 0;
+ }
+
+ @Override
+ public String getCommandName() {
+ return "currentDisadvantage";
+ }
+
+ @Override
+ public String getCommandUsage(ICommandSender icommandsender) {
+ return "commands.currentDisadvantage.usage";
+ }
+
+ @Override
+ public List getCommandAliases() {
+ return null;
+ }
+
+ @Override
+ public void processCommand(ICommandSender icommandsender,
+ String[] astring) {
+ if (icommandsender instanceof EntityPlayer) {
+ EntityPlayer entityplayer = (EntityPlayer) icommandsender;
+
+ int index = -1;
+ for (int i = 0; i < FyresWorldData.validDisadvantages.length; i++) {
+ if (FyresWorldData.validDisadvantages[i]
+ .equals(CommonTickHandler.worldData
+ .getDisadvantage())) {
+ index = i;
+ break;
+ }
+ }
+ NewPacketHandler.SEND_MESSAGE.sendToPlayer(
+ entityplayer,
+ "\u00A7eWorld disadvantage: "
+ + CommonTickHandler.worldData
+ .getDisadvantage()
+ + (index == -1 ? ""
+ : " (" + FyresWorldData.disadvantageDescriptions[index]
+ + ")"));
+ }
+ }
+
+ @Override
+ public boolean canCommandSenderUseCommand(
+ ICommandSender icommandsender) {
+ return true;
+ }
+
+ @Override
+ public List addTabCompletionOptions(ICommandSender icommandsender,
+ String[] astring) {
+ return null;
+ }
+
+ @Override
+ public boolean isUsernameIndex(String[] astring, int i) {
+ return false;
+ }
+
+ public int getRequiredPermissionLevel() {
+ return 0;
+ }
+
+}
diff --git a/YWD/src/main/java/fyresmodjam/commands/CommandCurrentWorldTask.java b/YWD/src/main/java/fyresmodjam/commands/CommandCurrentWorldTask.java
new file mode 100755
index 0000000..34db008
--- /dev/null
+++ b/YWD/src/main/java/fyresmodjam/commands/CommandCurrentWorldTask.java
@@ -0,0 +1,106 @@
+package fyresmodjam.commands;
+
+import java.util.List;
+
+import fyresmodjam.handlers.CommonTickHandler;
+import fyresmodjam.handlers.NewPacketHandler;
+import fyresmodjam.worldgen.FyresWorldData;
+import net.minecraft.command.ICommand;
+import net.minecraft.command.ICommandSender;
+import net.minecraft.entity.player.EntityPlayer;
+
+public class CommandCurrentWorldTask implements ICommand {
+
+ @Override
+ public int compareTo(Object arg0) {
+ return 0;
+ }
+
+ @Override
+ public String getCommandName() {
+ return "currentGoal";
+ }
+
+ @Override
+ public String getCommandUsage(ICommandSender icommandsender) {
+ return "commands.currentGoal.usage";
+ }
+
+ @Override
+ public List getCommandAliases() {
+ return null;
+ }
+
+ @Override
+ public void processCommand(ICommandSender icommandsender,
+ String[] astring) {
+ if (icommandsender instanceof EntityPlayer) {
+ EntityPlayer entityplayer = (EntityPlayer) icommandsender;
+
+ String name = CommonTickHandler.worldData.currentTask
+ .equals("Kill") ? FyresWorldData.validMobNames[CommonTickHandler.worldData.currentTaskID]
+ : FyresWorldData.validItems[CommonTickHandler.worldData.currentTaskID]
+ .getDisplayName();
+
+ if (CommonTickHandler.worldData.currentTaskAmount > 1) {
+ if (name.contains("Block")) {
+ if (name.contains("Block")) {
+ name = name.replace(
+ "Block",
+ "Blocks")
+ .replace("block",
+ "blocks");
+ }
+ } else {
+ name += "s";
+ }
+ }
+
+ NewPacketHandler.SEND_MESSAGE.sendToPlayer(
+ entityplayer,
+ "\u00A7eWorld goal: "
+ + CommonTickHandler.worldData.currentTask
+ + " "
+ + CommonTickHandler.worldData.currentTaskAmount
+ + " " + name
+ + ". ("
+ + CommonTickHandler.worldData.progress
+ + " "
+ + CommonTickHandler.worldData.currentTask
+ + "ed)");
+
+ NewPacketHandler.SEND_MESSAGE.sendToPlayer(
+ entityplayer,
+ "\u00A7f Reward: "
+ + CommonTickHandler.worldData.rewardLevels
+ + " Experience Levels");
+
+ NewPacketHandler.SEND_MESSAGE.sendToPlayer(
+ entityplayer,
+ "\u00A7eGoals completed: "
+ + CommonTickHandler.worldData.tasksCompleted);
+ }
+ }
+
+ @Override
+ public boolean canCommandSenderUseCommand(
+ ICommandSender icommandsender) {
+ return true;
+ }
+
+ @Override
+ public List addTabCompletionOptions(ICommandSender icommandsender,
+ String[] astring) {
+ return null;
+ }
+
+ @Override
+ public boolean isUsernameIndex(String[] astring, int i) {
+ return false;
+ }
+
+ public int getRequiredPermissionLevel() {
+ return 0;
+ }
+
+}
diff --git a/YWD/src/main/java/fyresmodjam/commands/CommandKillStats.java b/YWD/src/main/java/fyresmodjam/commands/CommandKillStats.java
new file mode 100755
index 0000000..582f38c
--- /dev/null
+++ b/YWD/src/main/java/fyresmodjam/commands/CommandKillStats.java
@@ -0,0 +1,156 @@
+package fyresmodjam.commands;
+
+import java.util.List;
+
+import fyresmodjam.handlers.NewPacketHandler;
+import fyresmodjam.misc.ConfigData;
+import fyresmodjam.misc.EntityStatHelper;
+import net.minecraft.command.ICommand;
+import net.minecraft.command.ICommandSender;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+
+public class CommandKillStats implements ICommand {
+
+ @Override
+ public int compareTo(Object arg0) {
+ return 0;
+ }
+
+ @Override
+ public String getCommandName() {
+ return "creatureKnowledge";
+ }
+
+ @Override
+ public String getCommandUsage(ICommandSender icommandsender) {
+ return "commands.creatureKnowledge.usage";
+ }
+
+ @Override
+ public List getCommandAliases() {
+ return null;
+ }
+
+ @Override
+ public void processCommand(ICommandSender icommandsender,
+ String[] astring) {
+ int page = astring.length > 0
+ ? Integer.parseInt(astring[0]) - 1
+ : 0, maxPage = 0;
+
+ if (icommandsender instanceof EntityPlayer) {
+ EntityPlayer entityplayer = (EntityPlayer) icommandsender;
+
+ String message = "\u00A7c\u00A7oMob kill stats not enabled.";
+
+ if (ConfigData.enableMobKillStats) {
+ message = "@Creature Knowledge:";
+
+ if (entityplayer.getEntityData()
+ .hasKey("KillStats")) {
+ NBTTagCompound killStats = entityplayer
+ .getEntityData()
+ .getCompoundTag("KillStats");
+
+ String trackedMobs = killStats
+ .hasKey("TrackedMobList")
+ ? killStats.getString(
+ "TrackedMobList")
+ : "";
+
+ if (trackedMobs != null
+ && trackedMobs.length() > 0) {
+ String[] trackedMobList = trackedMobs
+ .split(";");
+
+ maxPage = Math.max(0,
+ (killStats.func_150296_c()
+ .size()
+ - 1)
+ / 4);
+ if (page > maxPage) {
+ page = maxPage;
+ }
+ if (page < 0) {
+ page = 0;
+ }
+
+ message = "@Creature Knowledge (page "
+ + (page + 1)
+ + "/"
+ + (maxPage + 1)
+ + "):";
+
+ int count = 0, skip = 0;
+ for (String mob : trackedMobList) {
+ if (skip < page * 4) {
+ skip++;
+ continue;
+ }
+
+ int kills = killStats
+ .getInteger(mob);
+
+ int last = 0;
+ for (int i = 0; i < EntityStatHelper.killCount.length; i++) {
+ if (kills >= EntityStatHelper.killCount[i]) {
+ last = i;
+ continue;
+ } else {
+ break;
+ }
+ }
+
+ message += "@\u00A7b "
+ + EntityStatHelper.knowledge[last]
+ + " "
+ + mob.toLowerCase()
+ + " slayer\u00A73 "
+ + (last > 0 ? "+"
+ + EntityStatHelper.damageBonusString[last]
+ + "% damage bonus ("
+ : "(")
+ + kills
+ + " kill(s)"
+ + (last < EntityStatHelper.knowledge.length
+ - 1 ? ", " + (EntityStatHelper.killCount[last + 1] - kills + " kill(s) to next rank)") : ")");
+ count++;
+
+ if (count >= 4) {
+ break;
+ }
+ }
+ }
+ } else {
+ message += "@ You've yet to learn anything.";
+ }
+ }
+
+ NewPacketHandler.SEND_MESSAGE.sendToPlayer(
+ entityplayer, message);
+ }
+ }
+
+ @Override
+ public boolean canCommandSenderUseCommand(
+ ICommandSender icommandsender) {
+ return true;
+ }
+
+ @Override
+ public List addTabCompletionOptions(ICommandSender icommandsender,
+ String[] astring) {
+ return null;
+ }
+
+ @Override
+ public boolean isUsernameIndex(String[] astring, int i) {
+ return false;
+ }
+
+ public int getRequiredPermissionLevel() {
+ return 0;
+ }
+
+}
diff --git a/YWD/src/main/java/fyresmodjam/commands/CommandWeaponStats.java b/YWD/src/main/java/fyresmodjam/commands/CommandWeaponStats.java
new file mode 100755
index 0000000..95c91f7
--- /dev/null
+++ b/YWD/src/main/java/fyresmodjam/commands/CommandWeaponStats.java
@@ -0,0 +1,155 @@
+package fyresmodjam.commands;
+
+import java.util.List;
+
+import fyresmodjam.handlers.NewPacketHandler;
+import fyresmodjam.misc.ConfigData;
+import fyresmodjam.misc.EntityStatHelper;
+import net.minecraft.command.ICommand;
+import net.minecraft.command.ICommandSender;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.nbt.NBTTagCompound;
+
+public class CommandWeaponStats implements ICommand {
+
+ @Override
+ public int compareTo(Object arg0) {
+ return 0;
+ }
+
+ @Override
+ public String getCommandName() {
+ return "weaponKnowledge";
+ }
+
+ @Override
+ public String getCommandUsage(ICommandSender icommandsender) {
+ return "commands.weaponKnowledge.usage";
+ }
+
+ @Override
+ public List getCommandAliases() {
+ return null;
+ }
+
+ @Override
+ public void processCommand(ICommandSender icommandsender,
+ String[] astring) {
+ int page = astring.length > 0
+ ? Integer.parseInt(astring[0]) - 1
+ : 0, maxPage = 0;
+ if (icommandsender instanceof EntityPlayer) {
+ EntityPlayer entityplayer = (EntityPlayer) icommandsender;
+
+ String message = "\u00A7c\u00A7oWeapon kill stats not enabled.";
+
+ if (ConfigData.enableWeaponKillStats) {
+ message = "@Weapon Knowledge:";
+
+ if (entityplayer.getEntityData()
+ .hasKey("WeaponStats")) {
+ NBTTagCompound itemStats = entityplayer
+ .getEntityData()
+ .getCompoundTag("WeaponStats");
+
+ String trackedItems = itemStats
+ .hasKey("TrackedItemList")
+ ? itemStats.getString(
+ "TrackedItemList")
+ : "";
+
+ if (trackedItems != null
+ && trackedItems.length() > 0) {
+ String[] trackedItemList = trackedItems
+ .split(";");
+
+ maxPage = Math.max(0,
+ (itemStats.func_150296_c()
+ .size())
+ / 4);
+ if (page > maxPage) {
+ page = maxPage;
+ }
+ if (page < 0) {
+ page = 0;
+ }
+
+ message = "@Weapon Knowledge (page "
+ + (page + 1)
+ + "/"
+ + (maxPage + 1)
+ + "):";
+
+ int count = 0, skip = 0;
+ for (String item : trackedItemList) {
+ if (skip < page * 4) {
+ skip++;
+ continue;
+ }
+
+ int kills = itemStats
+ .getInteger(item);
+
+ int last = 0;
+ for (int i = 0; i < EntityStatHelper.killCount.length; i++) {
+ if (kills >= EntityStatHelper.killCount[i]
+ * 2) {
+ last = i;
+ continue;
+ } else {
+ break;
+ }
+ }
+
+ message += "@\u00A7b "
+ + EntityStatHelper.knowledge[last]
+ + " "
+ + item.toLowerCase()
+ + " user\u00A73 "
+ + (last > 0 ? "+"
+ + EntityStatHelper.damageBonusString[last]
+ + "% damage bonus ("
+ : "(")
+ + kills
+ + " kill(s)"
+ + (last < EntityStatHelper.knowledge.length
+ - 1 ? ", " + (EntityStatHelper.killCount[last + 1] * 2 - kills + " kill(s) to next rank)") : ")");
+ count++;
+
+ if (count >= 4) {
+ break;
+ }
+ }
+ }
+ } else {
+ message += "@ You've yet to learn anything.";
+ }
+ }
+
+ NewPacketHandler.SEND_MESSAGE.sendToPlayer(
+ entityplayer, message);
+ }
+ }
+
+ @Override
+ public boolean canCommandSenderUseCommand(
+ ICommandSender icommandsender) {
+ return true;
+ }
+
+ @Override
+ public List addTabCompletionOptions(ICommandSender icommandsender,
+ String[] astring) {
+ return null;
+ }
+
+ @Override
+ public boolean isUsernameIndex(String[] astring, int i) {
+ return false;
+ }
+
+ public int getRequiredPermissionLevel() {
+ return 0;
+ }
+
+}