public static Dictionary <String, String> LoadTexts(ProgressBarCallBack callback) { Dictionary <String, String> texts = new Dictionary <string, string>(); string fileContent = DecryptFile(TEXTS_PATH, AMUDE_CRYPTO_KEY); XmlDocument doc = new XmlDocument(); doc.Load(XmlReader.Create(new StringReader(fileContent))); XmlElement mapElement = doc.DocumentElement; foreach (XmlNode text in mapElement.GetElementsByTagName("text")) { String key = text.Attributes["key"].InnerText; StringBuilder content = new StringBuilder(); foreach (XmlNode paragraph in text.ChildNodes) { content.AppendLine(paragraph.InnerText); } content.Replace("\r", ""); texts.Add(key, content.ToString()); } callback(Constants.CONFIG_FILES_COUNT); return(texts); }
public static void Load(ProgressBarCallBack callback) { callback(Constants.CONFIG_FILES_COUNT); characters = new ProtectedDictionary <String, Character>(); environment = new ProtectedDictionary <String, Entity>(); projectiles = new ProtectedDictionary <String, Entity>(); specialAbilities = new ProtectedDictionary <SpecialAbility, Animation>(); terrains = new ProtectedDictionary <String, Terrain>(); texts = IO.LoadTexts(callback); Dictionary <String, Terrain> loadedTerrains = IO.LoadTerrains(); foreach (KeyValuePair <String, Terrain> kv in loadedTerrains) { terrains.Add(kv.Key, kv.Value); } Dictionary <String, Entity> loadedEnvironment = IO.LoadEnvironment(callback); foreach (KeyValuePair <String, Entity> kv in loadedEnvironment) { environment.Add(kv.Key, kv.Value); } Dictionary <String, Entity> loadedProjectiles = IO.LoadProjectiles(callback); foreach (KeyValuePair <String, Entity> kv in loadedProjectiles) { projectiles.Add(kv.Key, kv.Value); } Dictionary <SpecialAbility, Animation> loadedSpecialAbilities; loadedSpecialAbilities = IO.LoadSpecialAbilities(callback); foreach (KeyValuePair <SpecialAbility, Animation> kv in loadedSpecialAbilities) { specialAbilities.Add(kv.Key, kv.Value); } Dictionary <String, Character> loadedCharacters = IO.LoadCharacters(callback); foreach (KeyValuePair <String, Character> kv in loadedCharacters) { characters.Add(kv.Key, kv.Value); } }
private static Dictionary <String, Entity> LoadEntities(String path, ProgressBarCallBack callback) { Dictionary <String, Entity> entities = new Dictionary <String, Entity>(); DirectoryInfo dir = new DirectoryInfo(Environment.CurrentDirectory + "/" + path); foreach (FileInfo fileInfo in dir.GetFiles()) { string fileContent = DecryptFile(fileInfo.FullName, AMUDE_CRYPTO_KEY); XmlDocument doc = new XmlDocument(); doc.Load(XmlReader.Create(new StringReader(fileContent))); Entity entity = LoadEntity(doc); entities.Add(entity.RootName, entity); callback(Constants.CONFIG_FILES_COUNT); } return(entities); }
public static Dictionary <String, Character> LoadCharacters(ProgressBarCallBack callback) { Dictionary <String, Character> characters = new Dictionary <String, Character>(); DirectoryInfo dir = new DirectoryInfo(Environment.CurrentDirectory + "/" + CHARACTER_DIR); foreach (FileInfo fileInfo in dir.GetFiles()) { string fileContent = DecryptFile(fileInfo.FullName, AMUDE_CRYPTO_KEY); XmlDocument doc = new XmlDocument(); doc.Load(XmlReader.Create(new StringReader(fileContent))); Character character = LoadCharacter(doc); characters.Add(character.RootName, character); callback(Constants.CONFIG_FILES_COUNT); } return(characters); }
public void Initialize(Amude game) { using (Screen.LoadScreen loadScreen = new Screen.LoadScreen()) { loadScreen.Visible = true; ProgressBarCallBack callback = loadScreen.GetProgressBarCallBack(); this.game = game; IO.Initialize(game.Content); IO.VerifyConfigFiles(); Bundle.Load(callback); Player player = new Player(IPAddress.Loopback); players.Add(player.IPAddress, player); loadScreen.Dispose(); } }
public static Dictionary <SpecialAbility, Animation> LoadSpecialAbilities(ProgressBarCallBack callback) { Dictionary <SpecialAbility, Animation> specialAbilities = new Dictionary <SpecialAbility, Animation>(); DirectoryInfo dir = new DirectoryInfo(Environment.CurrentDirectory + "/" + SPECIALABILITY_DIR); foreach (FileInfo fileInfo in dir.GetFiles()) { string fileContent = DecryptFile(fileInfo.FullName, AMUDE_CRYPTO_KEY); XmlDocument doc = new XmlDocument(); doc.Load(XmlReader.Create(new StringReader(fileContent))); KeyValuePair <SpecialAbility, Animation> kv = LoadSpecialAbility(doc); specialAbilities.Add(kv.Key, kv.Value); callback(Constants.CONFIG_FILES_COUNT); } return(specialAbilities); }
public static Dictionary <String, Entity> LoadProjectiles(ProgressBarCallBack callback) { return(LoadEntities(PROJECTILE_DIR, callback)); }
public static Dictionary <String, Entity> LoadEnvironment(ProgressBarCallBack callback) { return(LoadEntities(ENVIRONMENT_DIR, callback)); }