Mudlet-GUI-Paket ohne Neuladen der Shells aktualisieren.

Die Versionsnummer und die Download-URL kommt aus einem
Objekt, was man separat neuladen kann.

Change-Id: I2f06710577c36dc9e427760a33022b99a47b91c3
diff --git a/std/player/protocols/gmcp.c b/std/player/protocols/gmcp.c
index 676dde4..f3b7f04 100644
--- a/std/player/protocols/gmcp.c
+++ b/std/player/protocols/gmcp.c
@@ -294,8 +294,14 @@
   // TODO: Mudlet pruefen und aendern!
   // *grrrrr*
   if (!data)
-    send_telnet_neg_str(sprintf("%c%c%s", SB, TELOPT_GMCP,
-             "Client.GUI 1\nhttp://mg.mud.de/download/testgui.mpackage"), 1);
+  {
+    <int|string>* version = (__DIR__"mudlet_gui")->current_version();
+    if (version)
+    {
+      send_telnet_neg_str(sprintf("%c%c%s", SB, TELOPT_GMCP,
+             sprintf("Client.GUI %d\n%s",version[1],version[0])), 1);
+    }
+  }
 
   // Zur Zeit passiert hier weiter nix, spaeter mal Core.Goodbye senden.
 }
diff --git a/std/player/protocols/mudlet_gui.c b/std/player/protocols/mudlet_gui.c
new file mode 100644
index 0000000..12feb45
--- /dev/null
+++ b/std/player/protocols/mudlet_gui.c
@@ -0,0 +1,9 @@
+#pragma strong_types,rtt_checks,no_clone,no_inherit,no_shadow
+
+// Liefert die URL zum Download und die aktuelle Version des
+// MorgenGrauen.mpackage fuer Mudlet.
+public <int|string>* current_version()
+{
+  return ({"https://mg.mud.de/download/MorgenGrauen.mpackage", 2});
+}
+