public static List <string> LoadPendingZonedMaps(PMDCP.DatabaseConnector.MySql.MySql database, int quantity) { var results = new List <string>(); var query = "SELECT MapID FROM map_data WHERE ((ZoneID = 0 OR ZoneID IS NULL) AND MapID LIKE 's%') ORDER BY CONVERT(SUBSTRING(MapID, 2, CHARACTER_LENGTH(MapID)), SIGNED INTEGER) LIMIT " + quantity; foreach (var row in database.RetrieveRowsEnumerable(query)) { results.Add(row["MapID"].ValueString); } return(results); }
public static IEnumerable <MissionEnemyData> LoadMissionEnemyData(PMDCP.DatabaseConnector.MySql.MySql database, int difficulty) { string query = "SELECT mission_enemy.NpcNum " + "FROM mission_enemy " + "WHERE mission_enemy.Rank = \'" + difficulty + "\' " + "ORDER BY mission_enemy.EnemyIndex"; foreach (DataColumnCollection column in database.RetrieveRowsEnumerable(query)) { MissionEnemyData data = new MissionEnemyData(); data.NpcNum = column["NpcNum"].ValueString.ToInt(); yield return(data); } }
public static IEnumerable <MissionRewardData> LoadMissionRewardData(PMDCP.DatabaseConnector.MySql.MySql database, int difficulty) { string query = "SELECT mission_reward.ItemNum, mission_reward.ItemAmount, mission_reward.ItemTag " + "FROM mission_reward " + "WHERE mission_reward.Rank = \'" + difficulty + "\' " + "ORDER BY mission_reward.RewardIndex"; foreach (DataColumnCollection column in database.RetrieveRowsEnumerable(query)) { MissionRewardData data = new MissionRewardData(); data.ItemNum = column["ItemNum"].ValueString.ToInt(); data.ItemAmount = column["ItemAmount"].ValueString.ToInt(); data.ItemTag = column["ItemTag"].ValueString; yield return(data); } }
public static List <ZoneResource> LoadZoneResources(PMDCP.DatabaseConnector.MySql.MySql database, int zoneID) { var results = new List <ZoneResource>(); var query = "SELECT num, name FROM npc WHERE zone_id = " + zoneID; foreach (var row in database.RetrieveRowsEnumerable(query)) { results.Add(new ZoneResource() { Num = row["num"].ValueString.ToInt(), Name = row["name"].ValueString, Type = ZoneResourceType.NPCs }); } return(results); }
public static List <ZoneResource> LoadZoneResources(PMDCP.DatabaseConnector.MySql.MySql database, int zoneID) { var results = new List <ZoneResource>(); var query = "SELECT MapID, Name FROM map_data WHERE ZoneID = " + zoneID + " AND MapID LIKE 's%'"; foreach (var row in database.RetrieveRowsEnumerable(query)) { results.Add(new ZoneResource() { Num = row["MapID"].ValueString.Trim('s').ToInt(), Name = row["Name"].ValueString, Type = ZoneResourceType.Maps }); } return(results); }
public static void LoadEvo(int evoNum, PMDCP.DatabaseConnector.MySql.MySql database) { if (evolution.Evolutions.ContainsKey(evoNum) == false) { evolution.Evolutions.Add(evoNum, new Evolution()); } string query = "SELECT name, " + "species, " + "is_sandboxed " + "FROM evolution WHERE evolution.num = \'" + evoNum + "\'"; DataColumnCollection row = database.RetrieveRow(query); if (row != null) { evolution[evoNum].Name = row["name"].ValueString; evolution[evoNum].Species = row["species"].ValueString.ToInt(); evolution[evoNum].IsSandboxed = row["is_sandboxed"].ValueString.ToBool(); } query = "SELECT branch, " + "name, " + "species, " + "req_script, " + "data1, " + "data2, " + "data3 " + "FROM evolution_branch WHERE evolution_branch.num = \'" + evoNum + "\'"; foreach (DataColumnCollection columnCollection in database.RetrieveRowsEnumerable(query)) { int tradeNum = columnCollection["branch"].ValueString.ToInt(); EvolutionBranch newBranch = new EvolutionBranch(); newBranch.Name = columnCollection["name"].ValueString; newBranch.NewSpecies = columnCollection["species"].ValueString.ToInt(); newBranch.ReqScript = columnCollection["req_script"].ValueString.ToInt(); newBranch.Data1 = columnCollection["data1"].ValueString.ToInt(); newBranch.Data2 = columnCollection["data2"].ValueString.ToInt(); newBranch.Data3 = columnCollection["data3"].ValueString.ToInt(); evolution[evoNum].Branches.Add(newBranch); } }
public static void LoadShop(int shopNum, PMDCP.DatabaseConnector.MySql.MySql database) { if (shops.Shops.ContainsKey(shopNum) == false) { shops.Shops.Add(shopNum, new Shop()); } string query = "SELECT name, " + "greeting, " + "farewell, " + "is_sandboxed, " + "zone_id " + "FROM shop WHERE shop.num = \'" + shopNum + "\'"; DataColumnCollection row = database.RetrieveRow(query); if (row != null) { shops[shopNum].Name = row["name"].ValueString; shops[shopNum].JoinSay = row["greeting"].ValueString; shops[shopNum].LeaveSay = row["farewell"].ValueString; shops[shopNum].IsSandboxed = row["is_sandboxed"].ValueString.ToBool(); shops[shopNum].ZoneID = row["zone_id"].ValueString.ToInt(); } query = "SELECT trade_num, " + "item, " + "cost_num, " + "cost_val " + "FROM shop_trade WHERE shop_trade.num = \'" + shopNum + "\'"; foreach (DataColumnCollection columnCollection in database.RetrieveRowsEnumerable(query)) { int tradeNum = columnCollection["trade_num"].ValueString.ToInt(); shops[shopNum].Items[tradeNum].GetItem = columnCollection["item"].ValueString.ToInt(); shops[shopNum].Items[tradeNum].GiveItem = columnCollection["cost_num"].ValueString.ToInt(); shops[shopNum].Items[tradeNum].GiveValue = columnCollection["cost_val"].ValueString.ToInt(); } }
public static void LoadNpc(int npcNum, PMDCP.DatabaseConnector.MySql.MySql database) { if (npcs.Npcs.ContainsKey(npcNum) == false) { npcs.Npcs.Add(npcNum, new Npc()); } string query = "SELECT name, " + "attack_say, " + "attack_say_2, " + "attack_say_3, " + "species, " + "form, " + "behavior, " + "shiny_chance, " + "dawn_spawn, " + "day_spawn, " + "dusk_spawn, " + "night_spawn, " + "ai_script, " + "recruit_rate, " + "move1, " + "move2, " + "move3, " + "move4, " + "is_sandboxed, " + "zone_id, " + "spawn_direction, " + "spawn_weather, " + "story, " + "shop, " + "death_story " + "FROM npc WHERE npc.num = \'" + npcNum + "\'"; DataColumnCollection row = database.RetrieveRow(query); if (row != null) { npcs[npcNum].Name = row["name"].ValueString; npcs[npcNum].AttackSay = row["attack_say"].ValueString; npcs[npcNum].AttackSay2 = row["attack_say_2"].ValueString; npcs[npcNum].AttackSay3 = row["attack_say_3"].ValueString; npcs[npcNum].Species = row["species"].ValueString.ToInt(); npcs[npcNum].Form = row["form"].ValueString.ToInt(); npcs[npcNum].Behavior = (Enums.NpcBehavior)row["behavior"].ValueString.ToInt(); npcs[npcNum].ShinyChance = row["shiny_chance"].ValueString.ToInt(); npcs[npcNum].SpawnsAtDawn = row["dawn_spawn"].ValueString.ToBool(); npcs[npcNum].SpawnsAtDay = row["day_spawn"].ValueString.ToBool(); npcs[npcNum].SpawnsAtDusk = row["dusk_spawn"].ValueString.ToBool(); npcs[npcNum].SpawnsAtNight = row["night_spawn"].ValueString.ToBool(); npcs[npcNum].AIScript = row["ai_script"].ValueString; npcs[npcNum].RecruitRate = row["recruit_rate"].ValueString.ToInt(); npcs[npcNum].Moves[0] = row["move1"].ValueString.ToInt(); npcs[npcNum].Moves[1] = row["move2"].ValueString.ToInt(); npcs[npcNum].Moves[2] = row["move3"].ValueString.ToInt(); npcs[npcNum].Moves[3] = row["move4"].ValueString.ToInt(); npcs[npcNum].IsSandboxed = row["is_sandboxed"].ValueString.ToBool(); npcs[npcNum].ZoneID = row["zone_id"].ValueString.ToInt(); npcs[npcNum].SpawnDirection = (Enums.Direction)row["spawn_direction"].ValueString.ToInt(); npcs[npcNum].SpawnWeather = (Enums.Weather)row["spawn_weather"].ValueString.ToInt(); npcs[npcNum].Story = row["story"].ValueString.ToInt(); npcs[npcNum].Shop = row["shop"].ValueString.ToInt(); npcs[npcNum].DeathStory = row["death_story"].ValueString.ToInt(); } query = "SELECT drop_num, " + "item_num, " + "item_val, " + "tag, " + "chance " + "FROM npc_drop WHERE npc_drop.npc_num = \'" + npcNum + "\'"; foreach (DataColumnCollection columnCollection in database.RetrieveRowsEnumerable(query)) { int dropNum = columnCollection["drop_num"].ValueString.ToInt(); npcs[npcNum].Drops[dropNum].ItemNum = columnCollection["item_num"].ValueString.ToInt(); npcs[npcNum].Drops[dropNum].ItemValue = columnCollection["item_val"].ValueString.ToInt(); npcs[npcNum].Drops[dropNum].Tag = columnCollection["tag"].ValueString; npcs[npcNum].Drops[dropNum].Chance = columnCollection["chance"].ValueString.ToInt(); } }
public static void LoadDungeon(int dungeonNum, PMDCP.DatabaseConnector.MySql.MySql database) { Dungeon dungeon = new Dungeon(); string query = "SELECT name, " + "rescue, " + "is_sandboxed, " + "zone_id " + "FROM dungeon WHERE dungeon.num = \'" + dungeonNum + "\'"; DataColumnCollection row = database.RetrieveRow(query); if (row != null) { dungeon.Name = row["name"].ValueString; dungeon.AllowsRescue = row["rescue"].ValueString.ToBool(); dungeon.IsSandboxed = row["is_sandboxed"].ValueString.ToBool(); dungeon.ZoneID = row["zone_id"].ValueString.ToInt(); } query = "SELECT map_id, " + "difficulty, " + "boss_map " + "FROM dungeon_smap WHERE dungeon_smap.num = \'" + dungeonNum + "\'"; foreach (DataColumnCollection columnCollection in database.RetrieveRowsEnumerable(query)) { int mapID = columnCollection["map_id"].ValueString.ToInt(); StandardDungeonMap sMap = new StandardDungeonMap(); sMap.MapNum = mapID; sMap.Difficulty = (Enums.JobDifficulty)columnCollection["difficulty"].ValueString.ToInt(); sMap.IsBadGoalMap = columnCollection["boss_map"].ValueString.ToBool(); dungeon.StandardMaps.Add(sMap); } query = "SELECT rdungeon_num, " + "rdungeon_floor, " + "difficulty, " + "boss_map " + "FROM dungeon_rmap WHERE dungeon_rmap.num = \'" + dungeonNum + "\'"; foreach (DataColumnCollection columnCollection in database.RetrieveRowsEnumerable(query)) { int dungeonIndex = columnCollection["rdungeon_num"].ValueString.ToInt(); int dungeonFloor = columnCollection["rdungeon_floor"].ValueString.ToInt(); RandomDungeonMap rMap = new RandomDungeonMap(); rMap.RDungeonIndex = dungeonIndex; rMap.RDungeonFloor = dungeonFloor; rMap.Difficulty = (Enums.JobDifficulty)columnCollection["difficulty"].ValueString.ToInt(); rMap.IsBadGoalMap = columnCollection["boss_map"].ValueString.ToBool(); dungeon.RandomMaps.Add(rMap); } query = "SELECT script_key, " + "script_args " + "FROM dungeon_script WHERE dungeon_script.num = \'" + dungeonNum + "\'"; foreach (DataColumnCollection columnCollection in database.RetrieveRowsEnumerable(query)) { int scriptKey = columnCollection["script_key"].ValueString.ToInt(); string scriptArgs = columnCollection["script_args"].ValueString; dungeon.ScriptList.Add(scriptKey, scriptArgs); } dungeons.Dungeons.Add(dungeonNum, dungeon); }