/// <summary> /// Aktualisiert die Objektrefferenzen, die beim erzeugen des Objektes noch nicht vorhanden waren /// </summary> public void updateData(GameData data) { need_tech = new List<Tech>(); string[] split1 = need_tech_temp.Split(new String[] { ", " }, StringSplitOptions.None); foreach (string id in split1) { if (id != "") { int id2 = int.Parse(id); need_tech.Add(data.getTech(id2)); } } race = new List<Race>(); string[] split2 = race_temp.Split(new String[] { ", " }, StringSplitOptions.None); foreach (string id in split2) { if (id != "") { int id2 = int.Parse(id); race.Add(data.getRace(id2)); } } skills = new List<Skill>(); string[] split3 = skills_temp.Split(new String[] { ", " }, StringSplitOptions.None); foreach (string id in split3) { if (id != "") { int id2 = int.Parse(id); skills.Add(data.getSkill(id2)); } } }
/// <summary> /// Aktualisiert die Objektrefferenzen, die beim erzeugen des Objektes noch nicht vorhanden waren /// </summary> public void updateData(GameData data) { if (updateto_temp != 0) { updateto = data.getStationType(updateto_temp); } buildship = new List<ShipClass>(); string[] split = buildship_temp.Split(new String[] { ", " }, StringSplitOptions.RemoveEmptyEntries); foreach (string id in split) { if (id != "") { int id2 = int.Parse(id); ShipClass add = data.getShipType(id2); if (add != null) buildship.Add(add); } } /* buildtroop = new List<TroopClass>(); string[] split2 = buildtroop_temp.Split(new String[] { ", " }, StringSplitOptions.RemoveEmptyEntries); foreach (string id in split2) { if (id != "") { int id2 = int.Parse(id); TroopClass add = data.getTroopType(id2); if (add != null) buildtroop.Add(add); } } */ need_tech = new List<Tech>(); string[] split3 = need_tech_temp.Split(new String[] { ", " }, StringSplitOptions.None); foreach (string id in split3) { if (id != "") { int id2 = int.Parse(id); need_tech.Add(data.getTech(id2)); } } race = new List<Race>(); string[] split4 = race_temp.Split(new String[] { ", " }, StringSplitOptions.None); foreach (string id in split4) { if (id != "") { int id2 = int.Parse(id); race.Add(data.getRace(id2)); } } //TODO: Skills, etc. skills = new List<Skill>(); string[] split5 = skills_temp.Split(new String[] { ", " }, StringSplitOptions.None); foreach (string id in split5) { if (id != "") { int id2 = int.Parse(id); skills.Add(data.getSkill(id2)); } } need = new System.Collections.Hashtable(); string[] need_split = need_temp.Split(new string[] { ", " }, StringSplitOptions.None); string[] need_count = need_count_temp.Split(new String[] { ", " }, StringSplitOptions.None); for (int i = 0; i < need_split.Length; i++) { if ((need_count[i] != "") && (need_split[i] != "")) { need.Add(data.getStationType(int.Parse(need_split[i])), int.Parse(need_count[i])); } } }
public void main() { try { int serverPort = int.Parse(config["TCP/port"]); network = new TCP(serverPort, "GamePW"); network.OnTextRecieved += new TCP.TextRecievedEvent(TCP_TextRecieved); network.OnClientConnected += new TCP.ClientConnectedEvent(TCP_ClientConnected); network.OnError += new TCP.TCPErrorEvent(TCP_Error); network.OnClientDisconnected += new TCP.ClientDisconnectedEvent(TCP_ClientDisconnected); log("Lade Spiel Daten ... "); string filepath = config["Game/GameDataPath"] + "GameData.dat"; if (!File.Exists(filepath)) { Console.WriteLine("Game Data Datei nicht gefunden!"); close = true; return; } game = new GameData(filepath); log("Spiel Dateien erfolgreich geparsed"); modulmanager = new ModulManager(this); log("Modul Manager erfolgreich gestartet"); printStatistics(); // log("Server bereit für Anfragen ..."); // TestUser User user = new User(1, "test", "4", game.getRace(1)); user.password = "******"; user.encryptPassword(); addUser(user); log("Lade Map-Daten bitte warten..."); modulmanager.map.load(config["Game/Map/File"]); } catch (Exception ex) { log("Fehler: " + ex.Message); close = true; } }