summaryrefslogtreecommitdiff
path: root/NET/worlds/network/sessionExitCmd.java
diff options
context:
space:
mode:
Diffstat (limited to 'NET/worlds/network/sessionExitCmd.java')
-rw-r--r--NET/worlds/network/sessionExitCmd.java37
1 files changed, 37 insertions, 0 deletions
diff --git a/NET/worlds/network/sessionExitCmd.java b/NET/worlds/network/sessionExitCmd.java
new file mode 100644
index 0000000..0caf036
--- /dev/null
+++ b/NET/worlds/network/sessionExitCmd.java
@@ -0,0 +1,37 @@
+package NET.worlds.network;
+
+public class sessionExitCmd extends propCmd {
+ public static final byte SESSIONEXITCMD = 7;
+
+ public sessionExitCmd() {
+ this._commandType = 7;
+ }
+
+ public sessionExitCmd(OldPropertyList propList) {
+ this._commandType = 7;
+ this._propList = propList;
+ }
+
+ @Override
+ void process(WorldServer serv) throws Exception {
+ assert serv.getState() == 16;
+
+ netProperty _error = this._propList.elementAt(0);
+
+ try {
+ int errorval = Integer.parseInt(_error.value());
+ if (errorval != 0) {
+ throw new VarErrorException(errorval);
+ }
+ } catch (NumberFormatException var4) {
+ System.err.println("appInitCmd: couldn't parse VAR_ERROR = " + _error.value());
+ }
+
+ serv.setState(17);
+ }
+
+ @Override
+ public String toString(WorldServer serv) {
+ return "SESSEXIT " + this._propList;
+ }
+}