summaryrefslogtreecommitdiffstats
path: root/EssentialsUpdate/src/net/ess3/update/states/UpdateOrInstallation.java
diff options
context:
space:
mode:
authorementalo <ementalodev@gmx.co.uk>2012-07-17 12:26:55 +0100
committerementalo <ementalodev@gmx.co.uk>2012-07-17 14:21:03 +0100
commita661bce7b3de3f53e2b7b79c1283f0affa6fe9c3 (patch)
tree2aa10b6300f6c8d3cb2b298c124180fade74857a /EssentialsUpdate/src/net/ess3/update/states/UpdateOrInstallation.java
parent3c385e69271dfe8530fadc3f67e13ee495e4b0e1 (diff)
parent9f05e43ecf8e6e1a8fcaef757678e762f0d82573 (diff)
downloadEssentials-a661bce7b3de3f53e2b7b79c1283f0affa6fe9c3.tar
Essentials-a661bce7b3de3f53e2b7b79c1283f0affa6fe9c3.tar.gz
Essentials-a661bce7b3de3f53e2b7b79c1283f0affa6fe9c3.tar.lz
Essentials-a661bce7b3de3f53e2b7b79c1283f0affa6fe9c3.tar.xz
Essentials-a661bce7b3de3f53e2b7b79c1283f0affa6fe9c3.zip
Merge of server-layer branch
Diffstat (limited to 'EssentialsUpdate/src/net/ess3/update/states/UpdateOrInstallation.java')
-rw-r--r--EssentialsUpdate/src/net/ess3/update/states/UpdateOrInstallation.java61
1 files changed, 61 insertions, 0 deletions
diff --git a/EssentialsUpdate/src/net/ess3/update/states/UpdateOrInstallation.java b/EssentialsUpdate/src/net/ess3/update/states/UpdateOrInstallation.java
new file mode 100644
index 000000000..c7bd5127a
--- /dev/null
+++ b/EssentialsUpdate/src/net/ess3/update/states/UpdateOrInstallation.java
@@ -0,0 +1,61 @@
+package net.ess3.update.states;
+
+import net.ess3.update.UpdateCheck;
+import net.ess3.update.UpdateCheck;
+import org.bukkit.entity.Player;
+
+
+public class UpdateOrInstallation extends AbstractState
+{
+ private final transient UpdateCheck updateCheck;
+ private transient boolean update = false;
+
+ public UpdateOrInstallation(final StateMap stateMap, final UpdateCheck updateCheck)
+ {
+ super(stateMap);
+ this.updateCheck = updateCheck;
+ }
+
+ @Override
+ public boolean guessAnswer()
+ {
+ if (getUpdateCheck().isEssentialsInstalled())
+ {
+ update = true;
+ }
+ return update;
+ }
+
+ @Override
+ public AbstractState getNextState()
+ {
+ return update ? getState(Changelog.class) : getState(EssentialsChat.class);
+ }
+
+ @Override
+ public void askQuestion(final Player sender)
+ {
+ sender.sendMessage("Thank you for choosing Essentials.");
+ sender.sendMessage("The following installation wizard will guide you through the installation of Essentials.");
+ sender.sendMessage("Your answers will be saved for a later update.");
+ sender.sendMessage("Please answer the messages with yes or no, if not otherwise stated.");
+ sender.sendMessage("Write bye/exit/quit if you want to exit the wizard at anytime.");
+ sender.sendMessage("Type ok to continue...");
+ }
+
+ @Override
+ public boolean reactOnAnswer(final String answer)
+ {
+ return answer.equalsIgnoreCase("ok") || answer.equalsIgnoreCase("k") || answer.equalsIgnoreCase("continue");
+ }
+
+ public UpdateCheck getUpdateCheck()
+ {
+ return updateCheck;
+ }
+
+ public boolean isUpdate()
+ {
+ return update;
+ }
+}