public void Load() { foreach (KeyBind Inputkey in Keylist) { Inputkey.RequireAlt = Reader.ReadByte(Inputkey.function.ToString(), "RequireAlt", Inputkey.RequireAlt); Inputkey.RequireShift = Reader.ReadByte(Inputkey.function.ToString(), "RequireShift", Inputkey.RequireShift); Inputkey.RequireTilde = Reader.ReadByte(Inputkey.function.ToString(), "RequireTilde", Inputkey.RequireTilde); Inputkey.RequireCtrl = Reader.ReadByte(Inputkey.function.ToString(), "RequireCtrl", Inputkey.RequireCtrl); string Input = Reader.ReadString(Inputkey.function.ToString(), "RequireKey", Inputkey.Key.ToString()); Enum.TryParse(Input, out Inputkey.Key); } }
public static void Load() { EnvirPath = Reader.ReadString("Paths", "Envir", EnvirPath); MapPath = Reader.ReadString("Paths", "Maps", MapPath); ExportPath = Reader.ReadString("Paths", "Export", ExportPath); NPCPath = Reader.ReadString("Paths", "NPCs", NPCPath); QuestPath = Reader.ReadString("Paths", "Quests", QuestPath); DropPath = Reader.ReadString("Paths", "Drops", DropPath); DatabaseVersion = Reader.ReadInt32("Database", "Version", DatabaseVersion); CustomDatabaseVersion = Reader.ReadInt32("Database", "CustomVersion", CustomDatabaseVersion); ToolVersion = Reader.ReadDouble("Tool", "CurrentVersion", ToolVersion); DatabasePath = Reader.ReadString("Paths", "Database", DatabasePath); CredxGold = Reader.ReadInt16("Config", "CreditXGold", CredxGold); LoadRandomItemStats(); LoadMines(); }
public static void ReadIni <T>(InIReader reader) where T : class, new() { Type objType = typeof(T); //取属性上的自定义特性 foreach (FieldInfo fieldInfo in objType.GetFields()) { object[] objAttrs = fieldInfo.GetCustomAttributes(typeof(IniAttribute), true); if (objAttrs.Length <= 0) { continue; } IniAttribute attr = objAttrs[0] as IniAttribute; if (attr == null) { continue; } if (Reader.FindValue(attr.Section, fieldInfo.Name) == null) { continue; } if (fieldInfo.FieldType == typeof(bool)) { bool value = reader.ReadBoolean(attr.Section, fieldInfo.Name, false); fieldInfo.SetValue(null, value); } else if (fieldInfo.FieldType == typeof(int)) { int value = reader.ReadInt32(attr.Section, fieldInfo.Name, 0); fieldInfo.SetValue(null, value); } else if (fieldInfo.FieldType == typeof(string)) { string value = reader.ReadString(attr.Section, fieldInfo.Name, ""); fieldInfo.SetValue(null, value); } } }
public GuildBuffInfo(InIReader reader, int i) { Id = reader.ReadInt32("Buff-" + i.ToString(), "Id",0); Icon = reader.ReadInt32("Buff-" + i.ToString(), "Icon", 0); name = reader.ReadString("Buff-" + i.ToString(), "Name",""); LevelRequirement = reader.ReadByte("Buff-" + i.ToString(), "LevelReq",0); PointsRequirement = reader.ReadByte("Buff-" + i.ToString(), "PointsReq",1); TimeLimit = reader.ReadInt32("Buff-" + i.ToString(), "TimeLimit",0);; ActivationCost = reader.ReadInt32("Buff-" + i.ToString(), "ActivationCost",0); BuffAc = reader.ReadByte("Buff-" + i.ToString(), "BuffAc",0); BuffMac = reader.ReadByte("Buff-" + i.ToString(), "BuffMAC",0); BuffDc = reader.ReadByte("Buff-" + i.ToString(), "BuffDc",0); BuffMc = reader.ReadByte("Buff-" + i.ToString(), "BuffMc",0); BuffSc = reader.ReadByte("Buff-" + i.ToString(), "BuffSc",0); BuffMaxHp = reader.ReadInt32("Buff-" + i.ToString(), "BuffMaxHp",0); BuffMaxMp = reader.ReadInt32("Buff-" + i.ToString(), "BuffMaxMp",0); BuffMineRate = reader.ReadByte("Buff-" + i.ToString(), "BuffMineRate",0); BuffGemRate = reader.ReadByte("Buff-" + i.ToString(), "BuffGemRate",0); BuffFishRate = reader.ReadByte("Buff-" + i.ToString(), "BuffFishRate",0); BuffExpRate = reader.ReadByte("Buff-" + i.ToString(), "BuffExpRate",0); BuffCraftRate = reader.ReadByte("Buff-" + i.ToString(), "BuffCraftRate",0); BuffSkillRate = reader.ReadByte("Buff-" + i.ToString(), "BuffSkillRate",0); BuffHpRegen = reader.ReadByte("Buff-" + i.ToString(), "BuffHpRegen",0); BuffMPRegen = reader.ReadByte("Buff-" + i.ToString(), "BuffMpRegen",0); BuffAttack = reader.ReadByte("Buff-" + i.ToString(), "BuffAttack",0); BuffDropRate = reader.ReadByte("Buff-" + i.ToString(), "BuffDropRate",0); BuffGoldRate = reader.ReadByte("Buff-" + i.ToString(), "BuffGoldRate",0); }
public static void Load() { //Languahe GameLanguage.LoadClientLanguage(@".\Language.ini"); if (!Directory.Exists(DataPath)) { Directory.CreateDirectory(DataPath); } if (!Directory.Exists(MapPath)) { Directory.CreateDirectory(MapPath); } if (!Directory.Exists(SoundPath)) { Directory.CreateDirectory(SoundPath); } //Graphics FullScreen = Reader.ReadBoolean("Graphics", "FullScreen", FullScreen); Borderless = Reader.ReadBoolean("Graphics", "Borderless", Borderless); TopMost = Reader.ReadBoolean("Graphics", "AlwaysOnTop", TopMost); FPSCap = Reader.ReadBoolean("Graphics", "FPSCap", FPSCap); Resolution = Reader.ReadInt32("Graphics", "Resolution", Resolution); DebugMode = Reader.ReadBoolean("Graphics", "DebugMode", DebugMode); //Network UseConfig = Reader.ReadBoolean("Network", "UseConfig", UseConfig); if (UseConfig) { IPAddress = Reader.ReadString("Network", "IPAddress", IPAddress); Port = Reader.ReadInt32("Network", "Port", Port); } //Logs LogErrors = Reader.ReadBoolean("Logs", "LogErrors", LogErrors); LogChat = Reader.ReadBoolean("Logs", "LogChat", LogChat); //Sound Volume = Reader.ReadByte("Sound", "Volume", Volume); SoundOverLap = Reader.ReadInt32("Sound", "SoundOverLap", SoundOverLap); MusicVolume = Reader.ReadByte("Sound", "Music", MusicVolume); //Game AccountID = Reader.ReadString("Game", "AccountID", AccountID); Password = Reader.ReadString("Game", "Password", Password); SkillMode = Reader.ReadBoolean("Game", "SkillMode", SkillMode); SkillBar = Reader.ReadBoolean("Game", "SkillBar", SkillBar); //SkillSet = Reader.ReadBoolean("Game", "SkillSet", SkillSet); Effect = Reader.ReadBoolean("Game", "Effect", Effect); LevelEffect = Reader.ReadBoolean("Game", "LevelEffect", Effect); DropView = Reader.ReadBoolean("Game", "DropView", DropView); NameView = Reader.ReadBoolean("Game", "NameView", NameView); HPView = Reader.ReadBoolean("Game", "HPMPView", HPView); ModeView = Reader.ReadBoolean("Game", "ModeView", ModeView); FontName = Reader.ReadString("Game", "FontName", FontName); TransparentChat = Reader.ReadBoolean("Game", "TransparentChat", TransparentChat); DisplayDamage = Reader.ReadBoolean("Game", "DisplayDamage", DisplayDamage); TargetDead = Reader.ReadBoolean("Game", "TargetDead", TargetDead); ExpandedBuffWindow = Reader.ReadBoolean("Game", "ExpandedBuffWindow", ExpandedBuffWindow); DuraView = Reader.ReadBoolean("Game", "DuraWindow", DuraView); for (int i = 0; i < SkillbarLocation.Length / 2; i++) { SkillbarLocation[i, 0] = Reader.ReadInt32("Game", "Skillbar" + i.ToString() + "X", SkillbarLocation[i, 0]); SkillbarLocation[i, 1] = Reader.ReadInt32("Game", "Skillbar" + i.ToString() + "Y", SkillbarLocation[i, 1]); } //Chat ShowNormalChat = Reader.ReadBoolean("Chat", "ShowNormalChat", ShowNormalChat); ShowYellChat = Reader.ReadBoolean("Chat", "ShowYellChat", ShowYellChat); ShowWhisperChat = Reader.ReadBoolean("Chat", "ShowWhisperChat", ShowWhisperChat); ShowLoverChat = Reader.ReadBoolean("Chat", "ShowLoverChat", ShowLoverChat); ShowMentorChat = Reader.ReadBoolean("Chat", "ShowMentorChat", ShowMentorChat); ShowGroupChat = Reader.ReadBoolean("Chat", "ShowGroupChat", ShowGroupChat); ShowGuildChat = Reader.ReadBoolean("Chat", "ShowGuildChat", ShowGuildChat); //Filters FilterNormalChat = Reader.ReadBoolean("Filter", "FilterNormalChat", FilterNormalChat); FilterWhisperChat = Reader.ReadBoolean("Filter", "FilterWhisperChat", FilterWhisperChat); FilterShoutChat = Reader.ReadBoolean("Filter", "FilterShoutChat", FilterShoutChat); FilterSystemChat = Reader.ReadBoolean("Filter", "FilterSystemChat", FilterSystemChat); FilterLoverChat = Reader.ReadBoolean("Filter", "FilterLoverChat", FilterLoverChat); FilterMentorChat = Reader.ReadBoolean("Filter", "FilterMentorChat", FilterMentorChat); FilterGroupChat = Reader.ReadBoolean("Filter", "FilterGroupChat", FilterGroupChat); FilterGuildChat = Reader.ReadBoolean("Filter", "FilterGuildChat", FilterGuildChat); //AutoPatcher P_Patcher = Reader.ReadBoolean("Launcher", "Enabled", P_Patcher); P_Host = Reader.ReadString("Launcher", "Host", P_Host); P_PatchFileName = Reader.ReadString("Launcher", "PatchFile", P_PatchFileName); P_NeedLogin = Reader.ReadBoolean("Launcher", "NeedLogin", P_NeedLogin); P_Login = Reader.ReadString("Launcher", "Login", P_Login); P_Password = Reader.ReadString("Launcher", "Password", P_Password); P_AutoStart = Reader.ReadBoolean("Launcher", "AutoStart", P_AutoStart); P_ServerName = Reader.ReadString("Launcher", "ServerName", P_ServerName); P_BrowserAddress = Reader.ReadString("Launcher", "Browser", P_BrowserAddress); if (!P_Host.EndsWith("/")) { P_Host += "/"; } if (P_Host.StartsWith("www.", StringComparison.OrdinalIgnoreCase)) { P_Host = P_Host.Insert(0, "http://"); } if (P_BrowserAddress.StartsWith("www.", StringComparison.OrdinalIgnoreCase)) { P_BrowserAddress = P_BrowserAddress.Insert(0, "http://"); } }
public static void LoadGuildSettings() { if (!File.Exists(ConfigPath + @".\GuildSettings.ini")) { Guild_CreationCostList.Add(new ItemVolume(){Amount = 1000000}); Guild_CreationCostList.Add(new ItemVolume(){ItemName = "WoomaHorn",Amount = 1}); return; } InIReader reader = new InIReader(ConfigPath + @".\GuildSettings.ini"); Guild_RequiredLevel = reader.ReadByte("Guilds", "MinimumLevel", Guild_RequiredLevel); Guild_ExpRate = reader.ReadFloat("Guilds", "ExpRate", Guild_ExpRate); Guild_PointPerLevel = reader.ReadByte("Guilds", "PointPerLevel", Guild_PointPerLevel); Guild_WarTime = reader.ReadInt64("Guilds", "WarTime", Guild_WarTime); Guild_WarCost = reader.ReadUInt32("Guilds", "WarCost", Guild_WarCost); int i = 0; while (reader.ReadUInt32("Required-" + i.ToString(),"Amount",0) != 0) { Guild_CreationCostList.Add(new ItemVolume() { ItemName = reader.ReadString("Required-" + i.ToString(), "ItemName", ""), Amount = reader.ReadUInt32("Required-" + i.ToString(), "Amount", 0) } ); i++; } i = 0; while (reader.ReadInt64("Exp", "Level-" + i.ToString(), -1) != -1) { Guild_ExperienceList.Add(reader.ReadInt64("Exp", "Level-" + i.ToString(), 0)); i++; } i = 0; while (reader.ReadInt32("Cap", "Level-" + i.ToString(), -1) != -1) { Guild_MembercapList.Add(reader.ReadInt32("Cap", "Level-" + i.ToString(), 0)); i++; } byte TotalBuffs = reader.ReadByte("Guilds", "TotalBuffs", 0); for (i = 0; i < TotalBuffs; i++) { Guild_BuffList.Add(new GuildBuffInfo(reader, i)); } }
public static void LoadMines() { if (!File.Exists(ConfigPath + @".\Mines.ini")) { MineSetList.Add(new MineSet(1)); MineSetList.Add(new MineSet(2)); SaveMines(); return; } InIReader reader = new InIReader(ConfigPath + @".\Mines.ini"); int i = 0; MineSet Mine; while (reader.ReadByte("Mine" + i.ToString(), "SpotRegenRate", 255) != 255) { Mine = new MineSet(); Mine.Name = reader.ReadString("Mine" + i.ToString(), "Name", Mine.Name); Mine.SpotRegenRate = reader.ReadByte("Mine" + i.ToString(), "SpotRegenRate", Mine.SpotRegenRate); Mine.MaxStones = reader.ReadByte("Mine" + i.ToString(), "MaxStones", Mine.MaxStones); Mine.HitRate = reader.ReadByte("Mine" + i.ToString(), "HitRate", Mine.HitRate); Mine.DropRate = reader.ReadByte("Mine" + i.ToString(), "DropRate", Mine.DropRate); Mine.TotalSlots = reader.ReadByte("Mine" + i.ToString(), "TotalSlots", Mine.TotalSlots); int j = 0; while (reader.ReadByte("Mine" + i.ToString(), "D" + j.ToString() + "-MinSlot", 255) != 255) { Mine.Drops.Add(new MineDrop() { ItemName = reader.ReadString("Mine" + i.ToString(), "D" + j.ToString() + "-ItemName", ""), MinSlot = reader.ReadByte("Mine" + i.ToString(), "D" + j.ToString() + "-MinSlot", 255), MaxSlot = reader.ReadByte("Mine" + i.ToString(), "D" + j.ToString() + "-MaxSlot", 255), MinDura = reader.ReadByte("Mine" + i.ToString(), "D" + j.ToString() + "-MinDura", 255), MaxDura = reader.ReadByte("Mine" + i.ToString(), "D" + j.ToString() + "-MaxDura", 255), BonusChance = reader.ReadByte("Mine" + i.ToString(), "D" + j.ToString() + "-BonusChance", 255), MaxBonusDura = reader.ReadByte("Mine" + i.ToString(), "D" + j.ToString() + "-MaxBonusDura", 255) }); j++; } MineSetList.Add(Mine); i++; } }
public static void LoadRefine() { if (!File.Exists(ConfigPath + @".\RefineSystem.ini")) { SaveRefine(); return; } InIReader reader = new InIReader(ConfigPath + @".\RefineSystem.ini"); OnlyRefineWeapon = reader.ReadBoolean("Config", "OnlyRefineWeapon", OnlyRefineWeapon); RefineBaseChance = reader.ReadByte("Config", "BaseChance", RefineBaseChance); RefineTime = reader.ReadInt32("Config", "Time", RefineTime); RefineIncrease = reader.ReadByte("Config", "StatIncrease", RefineIncrease); RefineCritChance = reader.ReadByte("Config", "CritChance", RefineCritChance); RefineCritIncrease = reader.ReadByte("Config", "CritIncrease", RefineCritIncrease); RefineWepStatReduce = reader.ReadByte("Config", "WepStatReducedChance", RefineWepStatReduce); RefineItemStatReduce = reader.ReadByte("Config", "ItemStatReducedChance", RefineItemStatReduce); RefineCost = reader.ReadInt32("Config", "RefineCost", RefineCost); RefineOreName = reader.ReadString("Ore", "OreName", RefineOreName); }
public static void LoadFishing() { if (!File.Exists(ConfigPath + @".\FishingSystem.ini")) { SaveFishing(); return; } InIReader reader = new InIReader(ConfigPath + @".\FishingSystem.ini"); FishingAttempts = reader.ReadInt32("Rates", "Attempts", FishingAttempts); FishingSuccessStart = reader.ReadInt32("Rates", "SuccessStart", FishingSuccessStart); FishingSuccessMultiplier = reader.ReadInt32("Rates", "SuccessMultiplier", FishingSuccessMultiplier); FishingDelay = reader.ReadInt64("Rates", "Delay", FishingDelay); FishingMobSpawnChance = reader.ReadInt32("Rates", "MonsterSpawnChance", FishingMobSpawnChance); FishingMonster = reader.ReadString("Game", "Monster", FishingMonster); }
public static void Load() { if (!Directory.Exists(DataPath)) { Directory.CreateDirectory(DataPath); } if (!Directory.Exists(MapPath)) { Directory.CreateDirectory(MapPath); } if (!Directory.Exists(SoundPath)) { Directory.CreateDirectory(SoundPath); } //Graphics FullScreen = Reader.ReadBoolean("Graphics", "FullScreen", FullScreen); TopMost = Reader.ReadBoolean("Graphics", "AlwaysOnTop", TopMost); FPSCap = Reader.ReadBoolean("Graphics", "FPSCap", FPSCap); HighResolution = Reader.ReadBoolean("Graphics", "HighResolution", HighResolution); DebugMode = Reader.ReadBoolean("Graphics", "DebugMode", DebugMode); //Network UseConfig = Reader.ReadBoolean("Network", "UseConfig", UseConfig); if (UseConfig) { IPAddress = Reader.ReadString("Network", "IPAddress", IPAddress); Port = Reader.ReadInt32("Network", "Port", Port); } //Logs LogErrors = Reader.ReadBoolean("Logs", "LogErrors", LogErrors); LogChat = Reader.ReadBoolean("Logs", "LogChat", LogChat); //Sound Volume = Reader.ReadByte("Sound", "Volume", Volume); SoundOverLap = Reader.ReadInt32("Sound", "SoundOverLap", SoundOverLap); //Game AccountID = Reader.ReadString("Game", "AccountID", AccountID); Password = Reader.ReadString("Game", "Password", Password); SkillMode = Reader.ReadBoolean("Game", "SkillMode", SkillMode); SkillBar = Reader.ReadBoolean("Game", "SkillBar", SkillBar); SkillSet = Reader.ReadBoolean("Game", "SkillSet", SkillSet); Effect = Reader.ReadBoolean("Game", "Effect", Effect); LevelEffect = Reader.ReadBoolean("Game", "LevelEffect", Effect); DropView = Reader.ReadBoolean("Game", "DropView", DropView); NameView = Reader.ReadBoolean("Game", "NameView", NameView); HPView = Reader.ReadBoolean("Game", "HPMPView", HPView); FontName = Reader.ReadString("Game", "FontName", FontName); TransparentChat = Reader.ReadBoolean("Game", "TransparentChat", TransparentChat); //Chat ShowNormalChat = Reader.ReadBoolean("Chat", "ShowNormalChat", ShowNormalChat); ShowYellChat = Reader.ReadBoolean("Chat", "ShowYellChat", ShowYellChat); ShowWhisperChat = Reader.ReadBoolean("Chat", "ShowWhisperChat", ShowWhisperChat); ShowLoverChat = Reader.ReadBoolean("Chat", "ShowLoverChat", ShowLoverChat); ShowMentorChat = Reader.ReadBoolean("Chat", "ShowMentorChat", ShowMentorChat); ShowGroupChat = Reader.ReadBoolean("Chat", "ShowGroupChat", ShowGroupChat); ShowGuildChat = Reader.ReadBoolean("Chat", "ShowGuildChat", ShowGuildChat); //Filters FilterNormalChat = Reader.ReadBoolean("Filter", "FilterNormalChat", FilterNormalChat); FilterWhisperChat = Reader.ReadBoolean("Filter", "FilterWhisperChat", FilterWhisperChat); FilterShoutChat = Reader.ReadBoolean("Filter", "FilterShoutChat", FilterShoutChat); FilterSystemChat = Reader.ReadBoolean("Filter", "FilterSystemChat", FilterSystemChat); FilterLoverChat = Reader.ReadBoolean("Filter", "FilterLoverChat", FilterLoverChat); FilterMentorChat = Reader.ReadBoolean("Filter", "FilterMentorChat", FilterMentorChat); FilterGroupChat = Reader.ReadBoolean("Filter", "FilterGroupChat", FilterGroupChat); FilterGuildChat = Reader.ReadBoolean("Filter", "FilterGuildChat", FilterGuildChat); }
public CustomAI LoadCustomAI(string mobName) { if (mobName.Length <= 0) return null; try { InIReader Reader = new InIReader(@".\Custom\Unique AIs\" + mobName + ".ini"); CustomAI mobAI = new CustomAI(); mobAI.Name = mobName; #region Loading the Bools mobAI.SetXY = Reader.ReadBoolean("Bools", "SetXY", mobAI.SetXY); mobAI.MapSpecific = Reader.ReadBoolean("Bools", "MapSpecific", mobAI.MapSpecific); mobAI.AnnounceSpawn = Reader.ReadBoolean("Bools", "AnnounceSpawn", mobAI.AnnounceSpawn); mobAI.AnnounceDrop = Reader.ReadBoolean("Bools", "AnnounceDrop", mobAI.AnnounceDrop); mobAI.AnnounceDeath = Reader.ReadBoolean("Bools", "AnnounceDeath", mobAI.AnnounceDeath); mobAI.UseMassAttack = Reader.ReadBoolean("Bools", "UseMassAttack", mobAI.UseMassAttack); mobAI.UseSpecialAttack = Reader.ReadBoolean("Bools", "UseSpecialAttack", mobAI.UseSpecialAttack); mobAI.UseMeleeAttack = Reader.ReadBoolean("Bools", "UseMeleeAttack", mobAI.UseMeleeAttack); mobAI.UseRangeAttack = Reader.ReadBoolean("Bools", "UseRangeAttack", mobAI.UseRangeAttack); mobAI.UseMagicAttack = Reader.ReadBoolean("Bools", "UseMagicAttack", mobAI.UseMagicAttack); mobAI.Target = Reader.ReadBoolean("Bools", "Target", mobAI.Target); mobAI.UseKillTimer = Reader.ReadBoolean("Bools", "UseKillTimer", mobAI.UseKillTimer); mobAI.IgnorePets = Reader.ReadBoolean("Bools", "IgnorePets", mobAI.IgnorePets); mobAI.DamagePetsMore = Reader.ReadBoolean("Bools", "DamagePetsMore", mobAI.DamagePetsMore); mobAI.CanPara = Reader.ReadBoolean("Bools", "CanPara", mobAI.CanPara); mobAI.CanGreen = Reader.ReadBoolean("Bools", "CanGreen", mobAI.CanGreen); mobAI.CanRed = Reader.ReadBoolean("Bools", "CanRed", mobAI.CanRed); mobAI.Spawn_Slaves = Reader.ReadBoolean("Bools", "SpawnSlaves", mobAI.Spawn_Slaves); #endregion #region Loading the Kill Timer if (mobAI.UseKillTimer) { mobAI.KillTimer = Reader.ReadString("Strings", "KillTimer", mobAI.KillTimer); if (mobAI.killTimer.Length > 0) { string[] timeString = mobAI.KillTimer.Split(' '); string[] dateString = timeString[0].Split('-'); dateString[0] = dateString[0].Replace("(", ""); mobAI.LastKillDay = Convert.ToInt32(dateString[0]); mobAI.LastKillMonth = Convert.ToInt32(dateString[1]); mobAI.LastKillYear = Convert.ToInt32(dateString[2]); dateString[1] = dateString[1].Replace("(", ""); dateString[1] = dateString[1].Replace(")", ""); string[] tempString = timeString[1].Split(':'); if (tempString[0].Contains("(")) tempString[0] = tempString[0].Replace("(", ""); if (tempString[1].Contains(")")) tempString[1] = tempString[1].Replace(")", ""); mobAI.LastKillHour = Convert.ToInt32(tempString[0]); mobAI.LastKillMinute = Convert.ToInt32(tempString[1]); } mobAI.RespawnDay = Reader.ReadInt32("Ints", "RespawnDays", mobAI.RespawnDay); mobAI.RespawnMonth = Reader.ReadInt32("Ints", "RespawnMonths", mobAI.RespawnMonth); mobAI.RespawnYear = Reader.ReadInt32("Ints", "RespawnYears", mobAI.RespawnYear); mobAI.RespawnHour = Reader.ReadInt32("Ints", "RespawnHours", mobAI.RespawnHour); mobAI.RespawnMinute = Reader.ReadInt32("Ints", "RespawnMinutes", mobAI.RespawnMinute); } #endregion if (mobAI.MapSpecific) mobAI.MapName = Reader.ReadString("Strings", "MapName", mobAI.MapName); #region Loading the announcers if (mobAI.AnnounceSpawn) mobAI.SpawnMessage = Reader.ReadString("Strings", "SpawnMessage", mobAI.SpawnMessage); if (mobAI.AnnounceDeath) mobAI.DeadMessage = Reader.ReadString("Strings", "DeathMessage", mobAI.DeadMessage); if (mobAI.AnnounceDrop) mobAI.ItemMessage = Reader.ReadString("Strings", "ItemMessage", mobAI.ItemMessage); #endregion if (SetXY) { mobAI.MapX = Reader.ReadInt32("Ints", "MapX", mobAI.MapX); mobAI.MapY = Reader.ReadInt32("Ints", "MapY", mobAI.MapY); } #region Loading the Attacks if (mobAI.UseMassAttack) { mobAI.MassAttackEffect = Reader.ReadInt32("Ints", "MassAttackEffect", mobAI.MassAttackEffect); mobAI.MassAttackDamage = Reader.ReadInt32("Damage", "MassAttackDamage", mobAI.MassAttackDamage); } if (mobAI.UseSpecialAttack) { mobAI.SpecialAttackEffect = Reader.ReadInt32("Ints", "SpecialAttackEffect", mobAI.SpecialAttackEffect); mobAI.SpecialAttackDamage = Reader.ReadInt32("Damage", "SpecialAttackDamage", mobAI.SpecialAttackDamage); } if (mobAI.UseMeleeAttack) { mobAI.MeleeAttackEffect = Reader.ReadInt32("Ints", "MeleeAttackEffect", mobAI.MeleeAttackEffect); mobAI.MeleeAttackDamage = Reader.ReadInt32("Damage", "MeleeAttackDamage", mobAI.MeleeAttackDamage); } if (mobAI.UseRangeAttack) { mobAI.RangeAttackEffect = Reader.ReadInt32("Ints", "RangeAttackEffect", mobAI.RangeAttackEffect); mobAI.RangeAttackDamage = Reader.ReadInt32("Damage", "RangeAttackDamage", mobAI.RangeAttackDamage); } if (mobAI.UseMagicAttack) { mobAI.MagicAttackEffect = Reader.ReadInt32("Ints", "MagicAttackEffect", mobAI.MagicAttackEffect); mobAI.MagicAttackDamage = Reader.ReadInt32("Damage", "MagicAttackDamage", mobAI.MagicAttackDamage); } if (mobAI.Target) { mobAI.TargetClass = Reader.ReadInt32("Strings", "TargetClass", mobAI.TargetClass); //Default = Warrior mobAI.TargetedClass = (MirClass)mobAI.TargetClass; mobAI.TargetAttackDamage = Reader.ReadInt32("Damage", "TargetDamage", mobAI.TargetAttackDamage); } if (mobAI.DamagePetsMore) mobAI.PetAttackDamage = Reader.ReadInt32("Damage", "PetDamage", mobAI.PetAttackDamage); #endregion #region Loading the Slaves Spawns if (mobAI.Spawn_Slaves) { for (int i = 0; i < 4; i++) { SpawnSlaves monsters = new SpawnSlaves(); monsters.Name = Reader.ReadString("Slaves", "Slave" + i, monsters.Name); monsters.Count = Reader.ReadInt32("Slaves", "SlaveCount" + i, monsters.Count); mobAI.Slaves.Add(monsters); } } #endregion #region Loading the Item Drops mobAI.ItemCount = Reader.ReadInt32("Ints", "ItemCount", mobAI.ItemCount); if (mobAI.ItemCount > 0) { for (int i = 0; i < mobAI.ItemCount; i++) { DropItemsWithAnnounce items = new DropItemsWithAnnounce(); items.Name = Reader.ReadString("Items", "Item" + i, items.Name); items.Chance = Reader.ReadInt32("Items", "ItemChance" + i, items.Chance); mobAI.Drops.Add(items); } } #endregion #region Loading the current location mobAI.CurrentMap = Reader.ReadString("States", "CurrentMap", CurrentMap); mobAI.CurrentX = Reader.ReadInt32("States", "CurrentX", CurrentX); mobAI.CurrentY = Reader.ReadInt32("States", "CurrentY", CurrentY); #endregion return mobAI; } catch { SMain.Enqueue("Error with loading config"); return null; } }
public static void Load() { if (!Directory.Exists(DataPath)) { Directory.CreateDirectory(DataPath); } if (!Directory.Exists(MapPath)) { Directory.CreateDirectory(MapPath); } if (!Directory.Exists(SoundPath)) { Directory.CreateDirectory(SoundPath); } //Graphics FullScreen = Reader.ReadBoolean("Graphics", "FullScreen", FullScreen); TopMost = Reader.ReadBoolean("Graphics", "AlwaysOnTop", TopMost); FPSCap = Reader.ReadBoolean("Graphics", "FPSCap", FPSCap); Resolution = Reader.ReadInt32("Graphics", "Resolution", Resolution); DebugMode = Reader.ReadBoolean("Graphics", "DebugMode", DebugMode); //Network UseConfig = Reader.ReadBoolean("Network", "UseConfig", UseConfig); if (UseConfig) { IPAddress = Reader.ReadString("Network", "IPAddress", IPAddress); /* * if (IPAddress != "game.edens-elite.co.uk") * IPAddress = "game.edens-elite.co.uk"; */ Port = Reader.ReadInt32("Network", "Port", Port); } //Logs LogErrors = Reader.ReadBoolean("Logs", "LogErrors", LogErrors); LogChat = Reader.ReadBoolean("Logs", "LogChat", LogChat); //Sound Volume = Reader.ReadByte("Sound", "Volume", Volume); SoundOverLap = Reader.ReadInt32("Sound", "SoundOverLap", SoundOverLap); MusicVolume = Reader.ReadByte("Sound", "Music", MusicVolume); //Game AccountID = Reader.ReadString("Game", "AccountID", AccountID); Password = Reader.ReadString("Game", "Password", Password); SkillMode = Reader.ReadBoolean("Game", "SkillMode", SkillMode); SkillBar = Reader.ReadBoolean("Game", "SkillBar", SkillBar); Effect = Reader.ReadBoolean("Game", "Effect", Effect); LevelEffect = Reader.ReadBoolean("Game", "LevelEffect", Effect); DropView = Reader.ReadBoolean("Game", "DropView", DropView); NameView = Reader.ReadBoolean("Game", "NameView", NameView); HPView = Reader.ReadBoolean("Game", "HPMPView", HPView); FontName = Reader.ReadString("Game", "FontName", FontName); TransparentChat = Reader.ReadBoolean("Game", "TransparentChat", TransparentChat); DisplayDamage = Reader.ReadBoolean("Game", "DisplayDamage", DisplayDamage); TargetDead = Reader.ReadBoolean("Game", "TargetDead", TargetDead); DuraView = Reader.ReadBoolean("Game", "DuraWindow", DuraView); ServerTimeZone = Reader.ReadString("Game", "ServerTimeZone", ServerTimeZone); MonsterName = Reader.ReadBoolean("Game", "MonsterName", MonsterName); //Ice DropEffect = Reader.ReadBoolean("Game", "DropEffect", DropEffect); //Ice for (int i = 0; i < SkillbarLocation.Length / 2; i++) { SkillbarLocation[i, 0] = Reader.ReadInt32("Game", "Skillbar" + i.ToString() + "X", SkillbarLocation[i, 0]); SkillbarLocation[i, 1] = Reader.ReadInt32("Game", "Skillbar" + i.ToString() + "Y", SkillbarLocation[i, 1]); } //Chat ShowNormalChat = Reader.ReadBoolean("Chat", "ShowNormalChat", ShowNormalChat); ShowYellChat = Reader.ReadBoolean("Chat", "ShowYellChat", ShowYellChat); ShowWhisperChat = Reader.ReadBoolean("Chat", "ShowWhisperChat", ShowWhisperChat); ShowLoverChat = Reader.ReadBoolean("Chat", "ShowLoverChat", ShowLoverChat); ShowMentorChat = Reader.ReadBoolean("Chat", "ShowMentorChat", ShowMentorChat); ShowGroupChat = Reader.ReadBoolean("Chat", "ShowGroupChat", ShowGroupChat); ShowGuildChat = Reader.ReadBoolean("Chat", "ShowGuildChat", ShowGuildChat); //Filters FilterNormalChat = Reader.ReadBoolean("Filter", "FilterNormalChat", FilterNormalChat); FilterWhisperChat = Reader.ReadBoolean("Filter", "FilterWhisperChat", FilterWhisperChat); FilterShoutChat = Reader.ReadBoolean("Filter", "FilterShoutChat", FilterShoutChat); FilterSystemChat = Reader.ReadBoolean("Filter", "FilterSystemChat", FilterSystemChat); FilterLoverChat = Reader.ReadBoolean("Filter", "FilterLoverChat", FilterLoverChat); FilterMentorChat = Reader.ReadBoolean("Filter", "FilterMentorChat", FilterMentorChat); FilterGroupChat = Reader.ReadBoolean("Filter", "FilterGroupChat", FilterGroupChat); FilterGuildChat = Reader.ReadBoolean("Filter", "FilterGuildChat", FilterGuildChat); //AutoPatcher P_Patcher = Reader.ReadBoolean("Launcher", "Enabled", P_Patcher); P_Host = Reader.ReadString("Launcher", "Host", P_Host); P_PatchFileName = Reader.ReadString("Launcher", "PatchFile", P_PatchFileName); P_NeedLogin = Reader.ReadBoolean("Launcher", "NeedLogin", P_NeedLogin); P_Login = Reader.ReadString("Launcher", "Login", P_Login); P_Password = Reader.ReadString("Launcher", "Password", P_Password); P_AutoStart = Reader.ReadBoolean("Launcher", "AutoStart", P_AutoStart); P_ServerName = Reader.ReadString("Launcher", "ServerName", P_ServerName); P_BrowserAddress = Reader.ReadString("Launcher", "Browser", P_BrowserAddress); if (C_WebLink.StartsWith("www.", StringComparison.OrdinalIgnoreCase)) { C_WebLink = C_WebLink.Insert(0, "http://"); } if (!P_Host.EndsWith("/")) { P_Host += "/"; } if (P_Host.StartsWith("www.", StringComparison.OrdinalIgnoreCase)) { P_Host = P_Host.Insert(0, "http://"); } if (P_BrowserAddress.StartsWith("www.", StringComparison.OrdinalIgnoreCase)) { P_BrowserAddress = P_BrowserAddress.Insert(0, "http://"); } if (C_DonateLink.StartsWith("www.", StringComparison.OrdinalIgnoreCase)) { C_DonateLink = C_DonateLink.Insert(0, "http://"); } MissIndicator = Reader.ReadBoolean("Custom", "MissIndicator", MissIndicator); DamageIndicator = Reader.ReadBoolean("Custom", "DamageIndicator", DamageIndicator); MagicDamageIndicator = Reader.ReadBoolean("Custom", "MagicDamageIndicator", MagicDamageIndicator); CriticalIndicator = Reader.ReadBoolean("Custom", "CriticalIndicator", CriticalIndicator); HealIndicator = Reader.ReadBoolean("Custom", "HealIndicator", HealIndicator); ManaRecovIndicator = Reader.ReadBoolean("Custom", "ManaRecovIndicator", ManaRecovIndicator); BossHPBar = Reader.ReadBoolean("Custom", "BossHPBar", BossHPBar); MobLightEffect = Reader.ReadBoolean("Custom", "MobLightEffect", MobLightEffect); }
static Settings() { Main.EnqueueMessage("Loading Config file."); if (File.Exists(ConfigPath)) { InIReader IReader = new InIReader(ConfigPath); //Path MapPath = IReader.ReadString("Path", "MapPath", MapPath); LogPath = IReader.ReadString("Path", "LogPath", LogPath); ClientPath = IReader.ReadString("Path", "ClientPath", ClientPath); //Database SQLServer = IReader.ReadString("Database", "SQLServer", SQLServer); SQLDatabase = IReader.ReadString("Database", "SQLDatabase", SQLDatabase); SQLUserID = IReader.ReadString("Database", "SQLUserID", SQLUserID); SQLPassword = IReader.ReadString("Database", "SQLPassword", SQLPassword); //Network IPAddress = IReader.ReadString("Network", "IPAddress", IPAddress); Port = IReader.ReadInt32("Network", "Port", Port); TimeOut = IReader.ReadInt64("Network", "TimeOut", TimeOut); MaxUser = IReader.ReadInt32("Network", "MaxUser", MaxUser); ReLogTime = IReader.ReadDouble("Network", "ReLogTime", ReLogTime); //Security CheckVersion = IReader.ReadBoolean("Security", "CheckVersion", CheckVersion); //Permission AllowNewAccount = IReader.ReadBoolean("Permission", "AllowNewAccount", AllowNewAccount); AllowChangePassword = IReader.ReadBoolean("Permission", "AllowChangePassword", AllowChangePassword); AllowLogin = IReader.ReadBoolean("Permission", "AllowLogin", AllowLogin); AllowNewCharacter = IReader.ReadBoolean("Permission", "AllowNewCharacter", AllowNewCharacter); AllowDeleteCharacter = IReader.ReadBoolean("Permission", "AllowDeleteCharacter", AllowDeleteCharacter); AllowStartGame = IReader.ReadBoolean("Permission", "AllowStartGame", AllowStartGame); //Game DropRange = IReader.ReadInt32("Game", "DropRange", DropRange); DropStackSize = IReader.ReadInt32("Game", "DropStackSize", DropStackSize); ItemTimeOut = IReader.ReadInt32("Game", "ItemTimeOut", ItemTimeOut); ExpRate = IReader.ReadSingle("Game", "ExpRate", ExpRate); DropRate = IReader.ReadSingle("Game", "DropRate", DropRate); StartLevel = IReader.ReadByte("Game", "StartLevel", StartLevel); StartGold = IReader.ReadInt64("Game", "StartGold", StartGold); if (ExpRate <= 0) { ExpRate = 1; } if (StartLevel <= 0) { StartLevel = 1; } Main.EnqueueMessage("Config file loaded."); } else { Main.EnqueueMessage("Config file not found, creating Config file."); Save(); } LoadVersion(); LoadExperienceList(); }