/// <summary> /// load all keeps from the DB /// </summary> /// <returns></returns> public virtual bool Load() { // first check the regions we manage foreach (Region r in WorldMgr.Regions.Values) { if (r.IsFrontier) { m_frontierRegionsList.Add(r.ID); } } // default to NF if no frontier regions found if (m_frontierRegionsList.Count == 0) { m_frontierRegionsList.Add(DEFAULT_FRONTIERS_REGION); } ClothingMgr.LoadTemplates(); //Dinberg - moved this here, battlegrounds must be loaded before keepcomponents are. LoadBattlegroundCaps(); if (!ServerProperties.Properties.LOAD_KEEPS) { return(true); } lock (m_keepList.SyncRoot) { m_keepList.Clear(); var keeps = GameServer.Database.SelectAllObjects <DBKeep>(); foreach (DBKeep datakeep in keeps) { Region keepRegion = WorldMgr.GetRegion(datakeep.Region); if (keepRegion == null) { continue; } AbstractGameKeep keep; if ((datakeep.KeepID >> 8) != 0 || ((datakeep.KeepID & 0xFF) > 150)) { keep = keepRegion.CreateGameKeepTower(); } else { keep = keepRegion.CreateGameKeep(); } keep.Load(datakeep); RegisterKeep(datakeep.KeepID, keep); } // This adds owner keeps to towers / portal keeps foreach (AbstractGameKeep keep in m_keepList.Values) { GameKeepTower tower = keep as GameKeepTower; if (tower != null) { int index = tower.KeepID & 0xFF; GameKeep ownerKeep = GetKeepByID(index) as GameKeep; if (ownerKeep != null) { ownerKeep.AddTower(tower); } tower.Keep = ownerKeep; tower.OwnerKeepID = index; if (tower.OwnerKeepID < 10) { log.WarnFormat("Tower.OwnerKeepID < 10 for KeepID {0}. Doors on this tower will not be targetable! ({0} & 0xFF < 10). Choose a different KeepID to correct this issue.", tower.KeepID); } } } if (ServerProperties.Properties.USE_NEW_KEEPS == 2) { log.ErrorFormat("ServerProperty USE_NEW_KEEPS is actually set to 2 but it is no longer used. Loading as if he were 0 but please set to 0 or 1 !"); } // var keepcomponents = default(IList<DBKeepComponent>); Why was this done this way rather than being strictly typed? IList <DBKeepComponent> keepcomponents = null; if (ServerProperties.Properties.USE_NEW_KEEPS == 0 || ServerProperties.Properties.USE_NEW_KEEPS == 2) { keepcomponents = DOLDB <DBKeepComponent> .SelectObjects(DB.Column(nameof(DBKeepComponent.Skin)).IsLessThan(20)); } else if (ServerProperties.Properties.USE_NEW_KEEPS == 1) { keepcomponents = DOLDB <DBKeepComponent> .SelectObjects(DB.Column(nameof(DBKeepComponent.Skin)).IsGreatherThan(20)); } if (keepcomponents != null) { keepcomponents .GroupBy(x => x.KeepID) .AsParallel() .ForAll(components => { foreach (DBKeepComponent component in components) { AbstractGameKeep keep = GetKeepByID(component.KeepID); if (keep == null) { //missingKeeps = true; continue; } GameKeepComponent gamecomponent = keep.CurrentRegion.CreateGameKeepComponent(); gamecomponent.LoadFromDatabase(component, keep); keep.KeepComponents.Add(gamecomponent); } }); } /*if (missingKeeps && log.IsWarnEnabled) * { * log.WarnFormat("Some keeps not found while loading components, possibly old/new keeptypes."); * }*/ if (m_keepList.Count != 0) { foreach (AbstractGameKeep keep in m_keepList.Values) { if (keep.KeepComponents.Count != 0) { keep.KeepComponents.Sort(); } } } LoadHookPoints(); log.Info("Loaded " + m_keepList.Count + " keeps successfully"); } if (ServerProperties.Properties.USE_KEEP_BALANCING) { UpdateBaseLevels(); } if (ServerProperties.Properties.USE_LIVE_KEEP_BONUSES) { KeepBonusMgr.UpdateCounts(); } return(true); }
/// <summary> /// load all keeps from the DB /// </summary> /// <returns></returns> public static bool Load() { ClothingMgr.LoadTemplates(); //Dinberg - moved this here, battlegrounds must be loaded before keepcomponents are. LoadBattlegroundCaps(); if (!ServerProperties.Properties.LOAD_KEEPS) return true; lock (m_keeps.SyncRoot) { m_keeps.Clear(); var keeps = GameServer.Database.SelectAllObjects<DBKeep>(); foreach (DBKeep datakeep in keeps) { if (WorldMgr.GetRegion(datakeep.Region) == null) continue; //Dinberg - checking whether the keep is old or new. //The only way to do this is to examine the database entries for hookpoints and thus determine //in this manner whether the keep is old, new or 'both'. A keep will be 'both' if it is found to //have components of both sets, which is possible. bool isOld = false; bool isNew = false; //I don't want to touch the loading order of hookpoints, as i think they may depend on the //assumption keeps and towers are linked before population. So we will settle for a second //query. It's on server start, so it wont impact running performance. var currentKeepComponents = GameServer.Database.SelectObjects<DBKeepComponent>("`KeepID` = '" + datakeep.KeepID + "'"); //Pass through, and depending on the outcome of the components, determine the 'age' of the keep. foreach (DBKeepComponent dum in currentKeepComponents) { if (dum.Skin >= 0 && dum.Skin <= 20) //these are the min/max ids for old keeps. isOld = true; if (dum.Skin > 20) //any skinID greater than this are ids for new keeps. isNew = true; } //Now, consult server properties to decide our plan! //Quote: ServerProperties.cs //"use_new_keeps", "Keeps to load. 0 for Old Keeps, 1 for new keeps, 2 for both.", 2 if (ServerProperties.Properties.USE_NEW_KEEPS == 0 && isNew) continue; if (ServerProperties.Properties.USE_NEW_KEEPS == 1 && isOld) continue; //If we've got this far, we are permitted to load as per normal! AbstractGameKeep keep; if ((datakeep.KeepID >> 8) != 0) { keep = new GameKeepTower(); } else { keep = new GameKeep(); } keep.Load(datakeep); m_keeps.Add(datakeep.KeepID, keep); } // This adds owner keeps to towers / portal keeps foreach (AbstractGameKeep keep in m_keeps.Values) { GameKeepTower tower = keep as GameKeepTower; if (tower != null) { int index = tower.KeepID & 0xFF; GameKeep ownerKeep = getKeepByID(index) as GameKeep; if (ownerKeep != null) { ownerKeep.AddTower(tower); } tower.Keep = ownerKeep; } } bool missingKeeps = false; var keepcomponents = GameServer.Database.SelectAllObjects<DBKeepComponent>(); foreach (DBKeepComponent component in keepcomponents) { // if use old keeps don't try to load new components if (ServerProperties.Properties.USE_NEW_KEEPS == 0 && IsNewKeepComponent(component.Skin)) continue; // if use new keeps don't try and load old components if (ServerProperties.Properties.USE_NEW_KEEPS == 1 && !IsNewKeepComponent(component.Skin)) continue; AbstractGameKeep keep = getKeepByID(component.KeepID); if (keep == null) { missingKeeps = true; continue; } GameKeepComponent gamecomponent = new GameKeepComponent(); gamecomponent.LoadFromDatabase(component, keep); keep.KeepComponents.Add(gamecomponent); } if (missingKeeps && Logger.IsWarnEnabled) { Logger.WarnFormat("Some keeps not found while loading components, possibly old/new keeptype; see server properties"); } if (m_keeps.Count != 0) { foreach (AbstractGameKeep keep in m_keeps.Values) { if (keep.KeepComponents.Count != 0) keep.KeepComponents.Sort(); } } LoadHookPoints(); Logger.Info("Loaded " + m_keeps.Count + " keeps successfully"); } if (ServerProperties.Properties.USE_KEEP_BALANCING) UpdateBaseLevels(); if (ServerProperties.Properties.USE_LIVE_KEEP_BONUSES) KeepBonusMgr.UpdateCounts(); return true; }
public void OnCommand(GameClient client, string[] args) { if (args.Length == 1) { DisplaySyntax(client); return; } AbstractGameKeep myKeep = (AbstractGameKeep)client.Player.TempProperties.getProperty<object>(TEMP_KEEP_LAST, null); if (myKeep == null) myKeep = GameServer.KeepManager.GetKeepCloseToSpot(client.Player.CurrentRegionID, client.Player, 10000); switch (args[1]) { #region FastCreate case "fastcreate": { #region DisplayTemplates if (args.Length < 5) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.FastCreate.TypeOfKeep")); int i = 1; foreach (string str in Enum.GetNames(typeof(eKeepTypes))) { DisplayMessage(client, "#" + i + ": " + str); i++; } return; } #endregion DisplayTemplates int keepType = 0; int keepID = 0; string keepName = "New Keep"; try { keepType = Convert.ToInt32(args[2]); keepID = Convert.ToInt32(args[3]); keepName = String.Join(" ", args, 4, args.Length - 4); } catch { DisplayMessage(client, "Invalid parameter for Keep Type, Keep ID, or Keep Name"); return; } if ((keepID >> 8) != 0 || GameServer.KeepManager.Keeps[keepID] != null) { DisplayMessage(client, "KeepID must be unused and less than 256."); return; } string createInfo = client.Player.Name + ";" + string.Format("/keep fastcreate {0} {1} {2}", keepType, keepID, keepName); GameKeep keep = new GameKeep(); keep.DBKeep = new DBKeep(createInfo); keep.Name = keepName; keep.KeepID = keepID; keep.Level = (byte)ServerProperties.Properties.STARTING_KEEP_LEVEL; keep.BaseLevel = 50; keep.Realm = client.Player.Realm; keep.Region = client.Player.CurrentRegionID; keep.X = client.Player.X; keep.Y = client.Player.Y; keep.Z = client.Player.Z; keep.Heading = client.Player.Heading; if ((int)keepType < 8) { keep.KeepType = (AbstractGameKeep.eKeepType)keepType; } else { keep.KeepType = 0; } log.Debug("Keep creation: starting"); // TODO: Add keep component to list in keep class // SQL to grab current keep components from a DB that works. Replace keepID with the one you want to edit here. // Values below taken from Storm with working old style keeps // select concat(ID, ', ', skin, ', ', x, ', ', y, ', ', heading, ', ', height, ', ', health) as keepcomponent from keepcomponent where keepid = ### order by id; GameKeepComponent keepComp = null; switch ((eKeepTypes)keepType) { #region DunCrauchonBledmeerFasteCaerBenowyc case eKeepTypes.DunCrauchonBledmeerFasteCaerBenowyc: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 2, 251, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 1, 4, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 8, 250, 251, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 8, 7, 251, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 2, 8, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 1, 249, 254, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 7, 8, 255, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 7, 249, 1, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 9, 2, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 13, 248, 4, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 2, 249, 7, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 1, 8, 5, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 8, 7, 8, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 8, 250, 8, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 2, 6, 9, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 1, 253, 9, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(17, 9, 3, 10, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(18, 9, 0, 10, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(19, 10, 4, 7, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(20, 14, 2, 9, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion DunCrauchonBledmeerFasteCaerBenowyc #region DunCrimthainnNottmoorFasteCaerBerkstead case eKeepTypes.DunCrimthainnNottmoorFasteCaerBerkstead: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 1, 4, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 2, 251, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 8, 7, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 8, 250, 250, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 7, 250, 253, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 7, 7, 251, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 1, 7, 254, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 1, 6, 1, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 1, 5, 4, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 249, 0, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 9, 249, 3, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 4, 7, 7, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 0, 8, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 9, 3, 8, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 10, 251, 6, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 9, 253, 8, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(17, 5, 250, 7, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(18, 20, 250, 4, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(19, 13, 249, 6, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion DunCrimthainnNottmoorFasteCaerBerkstead #region DunBolgHlidskialfFasteCaerErasleigh case eKeepTypes.DunBolgHlidskialfFasteCaerErasleigh: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 253, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 4, 246, 247, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 3, 3, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 9, 248, 253, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 9, 248, 3, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 7, 249, 0, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 248, 6, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 9, 248, 9, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 1, 250, 247, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 248, 250, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 255, 10, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 13, 2, 10, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 3, 6, 8, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 7, 6, 5, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 7, 3, 249, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 2, 4, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 2, 5, 255, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(17, 2, 6, 2, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(18, 10, 250, 8, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(19, 4, 249, 13, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(20, 2, 5, 9, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(21, 2, 252, 10, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(22, 20, 249, 6, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion DunBolgHlidskialfFasteCaerErasleigh #region DunnGedGlenlockFasteCaerBoldiam case eKeepTypes.DunnGedGlenlockFasteCaerBoldiam: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 3, 250, 246, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 2, 5, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 9, 9, 250, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 6, 254, 247, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 251, 243, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 0, 255, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 4, 8, 246, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 9, 248, 255, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 9, 248, 2, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 2, 249, 5, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 4, 250, 9, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 1, 253, 7, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 1, 0, 8, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 1, 3, 9, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 4, 7, 9, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 1, 8, 253, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 1, 7, 0, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(17, 1, 6, 3, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(18, 1, 5, 6, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(19, 10, 250, 4, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(20, 1, 249, 249, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(21, 13, 248, 252, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(22, 20, 249, 2, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion DunnGedGlenlockFasteCaerBoldiam #region DundaBehnnBlendrakeFasteCaerSursbrooke case eKeepTypes.DundaBehnnBlendrakeFasteCaerSursbrooke: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 4, 11, 247, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 9, 5, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 0, 252, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 9, 2, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 9, 249, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 4, 245, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 247, 253, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 9, 247, 0, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 9, 12, 251, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 12, 254, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 4, 14, 4, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 4, 248, 7, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 9, 251, 5, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 7, 254, 4, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 2, 10, 5, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 1, 1, 5, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 7, 4, 5, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(17, 9, 8, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(18, 9, 12, 1, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(19, 9, 247, 3, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(20, 13, 7, 6, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(21, 10, 10, 252, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(22, 17, 6, 250, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion DundaBehnnBlendrakeFasteCaerSursbrooke #region DunScathaigFensalirFasteCaerRenaris case eKeepTypes.DunScathaigFensalirFasteCaerRenaris: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 9, 251, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 9, 4, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 4, 247, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 7, 246, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 249, 252, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 249, 255, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 9, 8, 250, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 9, 8, 253, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 7, 7, 0, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 7, 250, 2, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 13, 8, 3, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 9, 8, 6, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 249, 5, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 9, 249, 8, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 4, 10, 9, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 4, 250, 12, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(17, 9, 6, 10, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(18, 9, 253, 10, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(19, 9, 0, 10, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(20, 9, 3, 10, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(21, 10, 3, 8, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(22, 18, 252, 6, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion DunScathaigFensalirFasteCaerRenaris #region DunAilinneArvakrFasteCaerHurbury case eKeepTypes.DunAilinneArvakrFasteCaerHurbury: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 6, 4, 247, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 6, 253, 247, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 4, 8, 243, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 9, 248, 249, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 3, 250, 246, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 3, 7, 246, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 4, 246, 246, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 9, 248, 252, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 7, 249, 255, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 248, 2, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 7, 6, 9, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 9, 9, 247, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 9, 250, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 7, 8, 253, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 9, 9, 0, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 7, 8, 3, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(17, 1, 8, 6, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(18, 2, 249, 8, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(19, 7, 253, 9, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(20, 13, 3, 10, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(21, 3, 7, 9, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(22, 9, 248, 5, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(23, 3, 250, 9, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(24, 9, 0, 10, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(25, 10, 251, 6, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(26, 14, 249, 4, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion DunAilinneArvakrFasteCaerHurbury #region FortBrolorn case eKeepTypes.FortBrolorn: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 3, 5, 255, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 3, 251, 255, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 3, 250, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 3, 6, 3, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 8, 2, 10, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 253, 9, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 252, 254, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 9, 3, 7, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 9, 255, 254, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 6, 251, 6, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 6, 5, 6, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 2, 6, 0, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 1, 250, 2, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 2, 254, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 8, 254, 10, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 19, 1, 11, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion FortBrolorn #region BG1_4 case eKeepTypes.BG1_4: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 1, 251, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 2, 4, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 4, 7, 245, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 247, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 249, 251, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 8, 249, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 7, 7, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 7, 250, 254, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 8, 255, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 249, 1, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 4, 10, 2, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 4, 250, 5, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 6, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 9, 253, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 9, 3, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 9, 0, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion BG1_4 #region ClaimBG5_9 case eKeepTypes.ClaimBG5_9: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 5, 5, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 5, 251, 249, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 7, 251, 255, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 9, 250, 252, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 9, 6, 250, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 7, 5, 253, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 6, 0, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 5, 5, 3, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 9, 4, 4, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 1, 252, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 2, 2, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 9, 1, 4, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 9, 254, 4, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 5, 251, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 9, 250, 2, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 19, 255, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion ClaimBG5_9 #region BG5_9 case eKeepTypes.BG5_9: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 1, 251, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 2, 4, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 4, 7, 245, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 247, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 249, 251, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 8, 249, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 7, 7, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 7, 250, 254, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 8, 255, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 249, 1, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 4, 10, 2, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 4, 250, 5, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 6, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 9, 253, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 9, 3, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 9, 0, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion BG5_9 #region CaerClaret case eKeepTypes.CaerClaret: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 252, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 4, 4, 249, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 4, 250, 252, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 9, 252, 255, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 9, 252, 2, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 5, 253, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 5, 0, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 4, 253, 6, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 9, 0, 4, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 4, 7, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 3, 4, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion CaerClaret #region BG10_14 case eKeepTypes.BG10_14: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 1, 251, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 2, 4, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 4, 7, 245, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 247, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 249, 251, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 8, 249, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 7, 7, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 7, 250, 254, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 8, 255, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 249, 1, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 4, 10, 2, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 4, 250, 5, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 6, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 9, 253, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 9, 3, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 9, 0, 3, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion BG10_14 #region CKBG15_19 case eKeepTypes.CKBG15_19: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 4, 247, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 4, 007, 247, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 4, 250, 010, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 4, 010, 007, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 0, 254, 251, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 2, 004, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 1, 251, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 1, 253, 008, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 2, 006, 008, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 000, 009, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 003, 009, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 1, 007, 251, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 1, 250, 006, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 2, 250, 253, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 2, 007, 004, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 0, 004, 006, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 9, 007, 254, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(17, 9, 007, 001, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(18, 9, 250, 003, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(19, 9, 250, 000, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion CKBG15_19 #region BG15_19 case eKeepTypes.BG15_19: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 1, 251, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 2, 004, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 4, 007, 245, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 247, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 249, 251, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 008, 249, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 7, 007, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 7, 250, 254, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 008, 255, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 249, 001, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 4, 010, 002, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 4, 250, 005, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 006, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 9, 253, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 9, 003, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 9, 000, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion BG15_19 #region CKBG20_24 case eKeepTypes.CKBG20_24: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 253, 251, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 9, 3, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 9, 250, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 9, 6, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 246, 251, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 4, 9, 248, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 248, 254, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 9, 10, 255, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 9, 10, 002, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 248, 001, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 248, 004, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 9, 10, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 9, 10, 5, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 248, 7, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 4, 249, 11, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 4, 12, 8, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 9, 255, 9, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(17, 9, 5, 9, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(18, 9, 8, 9, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(19, 9, 252, 9, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(20, 9, 2, 9, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(21, 10, 253, 005, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion CKBG20_24 #region BG20_24 case eKeepTypes.BG20_24: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 1, 251, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 2, 004, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 4, 007, 245, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 247, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 249, 251, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 008, 249, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 7, 007, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 7, 250, 254, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 008, 255, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 249, 001, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 4, 010, 002, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 4, 250, 005, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 006, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 9, 253, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 9, 003, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 9, 000, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion BG20_24 #region CKBG25_29 case eKeepTypes.CKBG25_29: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 9, 251, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 9, 004, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 9, 003, 007, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 9, 000, 007, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 246, 005, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 011, 003, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 4, 247, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 4, 007, 246, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 4, 247, 009, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 4, 013, 006, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 1, 249, 252, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 1, 248, 255, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 1, 247, 002, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 2, 008, 250, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 2, 009, 253, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 2, 010, 000, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(17, 2, 009, 007, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(18, 2, 253, 007, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(19, 1, 006, 007, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(20, 1, 250, 007, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(21, 10, 006, 253, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion CKBG25_29 #region BG25_29 case eKeepTypes.BG25_29: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 1, 251, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 2, 004, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 4, 007, 245, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 247, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 249, 251, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 008, 249, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 7, 007, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 7, 250, 254, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 008, 255, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 249, 001, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 4, 010, 002, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 4, 250, 005, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 006, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 9, 253, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 9, 003, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 9, 000, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion BG25_29 #region CKBG30_34 case eKeepTypes.CKBG30_34: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 255, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 9, 005, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 9, 252, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 9, 249, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 008, 247, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 4, 245, 250, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 247, 253, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 9, 247, 003, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 9, 247, 000, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 009, 251, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 009, 254, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 1, 008, 001, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 1, 007, 004, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 2, 248, 006, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 3, 249, 007, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 3, 006, 007, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 7, 252, 007, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(17, 7, 005, 007, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(18, 9, 255, 008, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(19, 9, 002, 008, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(20, 10, 250, 004, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion CKBG30_34 #region BG30_34 case eKeepTypes.BG30_34: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 1, 251, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 2, 004, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 4, 007, 245, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 247, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 249, 251, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 008, 249, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 7, 007, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 7, 250, 254, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 008, 255, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 249, 001, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 4, 010, 002, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 4, 250, 005, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 006, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 9, 253, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 9, 003, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 9, 000, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion BG30_34 #region CKBG35_39 case eKeepTypes.CKBG35_39: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 9, 251, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 9, 004, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 4, 007, 246, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 247, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 008, 250, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 249, 252, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 9, 249, 255, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 9, 008, 253, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 008, 003, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 7, 250, 002, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 7, 007, 000, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 9, 249, 005, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 10, 253, 253, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 9, 008, 006, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 9, 249, 008, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 4, 010, 009, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(17, 4, 250, 012, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(18, 9, 253, 010, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(19, 9, 006, 010, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(20, 7, 003, 009, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(21, 7, 000, 009, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion CKBG35_39 #region BG35_39 case eKeepTypes.BG35_39: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 1, 251, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 2, 004, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 4, 007, 245, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 247, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 249, 251, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 008, 249, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 7, 007, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 7, 250, 254, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 008, 255, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 249, 001, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 4, 010, 002, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 4, 250, 005, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 006, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 9, 253, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 9, 003, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 9, 000, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion BG35_39 #region TBG35_39 case eKeepTypes.TBG35_39: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 11, 253, 004, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion TBG35_39 #region TestCKBG40_44 case eKeepTypes.TestCKBG40_44: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 004, 247, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 9, 001, 246, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 9, 251, 246, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 9, 248, 246, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 7, 254, 247, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 4, 244, 247, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 5, 010, 247, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 9, 246, 250, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 9, 246, 253, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 011, 248, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 011, 254, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 9, 011, 001, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 7, 247, 000, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 7, 010, 251, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 4, 013, 004, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 6, 009, 007, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 6, 249, 007, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(17, 3, 006, 008, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(18, 3, 252, 008, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(19, 9, 255, 009, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(20, 9, 005, 009, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(21, 7, 002, 008, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(22, 4, 248, 007, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(23, 2, 247, 003, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(24, 10, 254, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion TestCKBG40_44 #region TestBG40_44 case eKeepTypes.TestBG40_44: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 1, 251, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 2, 004, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 4, 007, 245, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 247, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 249, 251, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 008, 249, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 7, 007, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 7, 250, 254, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 008, 255, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 249, 001, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 4, 010, 002, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 4, 250, 005, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 006, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 9, 253, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 9, 003, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 9, 000, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion TestBG40_44 #region TestTBG40_44 case eKeepTypes.TestTBG40_44: { keep.KeepComponents.Add(keepComp); keepComp.LoadFromDatabase(new DBKeepComponent(0, 11, 253, 004, 0, 0, 3200, keep.KeepID, createInfo), keep); keepComp = new GameKeepComponent(); break; } #endregion TestTBG40_44 #region CKBG40_44 case eKeepTypes.CKBG40_44: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 004, 247, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 9, 001, 246, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 9, 251, 246, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 9, 248, 246, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 7, 254, 247, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 4, 244, 247, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 5, 010, 247, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 9, 246, 250, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 9, 246, 253, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 011, 248, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 011, 254, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 9, 011, 001, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 7, 247, 000, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 7, 010, 251, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 4, 013, 004, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 6, 009, 007, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 6, 249, 007, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(17, 3, 006, 008, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(18, 3, 252, 008, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(19, 9, 255, 009, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(20, 9, 005, 009, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(21, 7, 002, 008, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(22, 4, 248, 007, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(23, 2, 247, 003, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(24, 10, 254, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion CKBG40_44 #region BG40_44 case eKeepTypes.BG40_44: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 0, 254, 249, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(1, 1, 251, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(2, 2, 004, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(3, 4, 007, 245, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(4, 4, 247, 248, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(5, 9, 249, 251, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(6, 9, 008, 249, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(7, 7, 007, 252, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(8, 7, 250, 254, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(9, 9, 008, 255, 3, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(10, 9, 249, 001, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(11, 4, 010, 002, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(12, 4, 250, 005, 1, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(13, 9, 006, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(14, 9, 253, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(15, 9, 003, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(16, 9, 000, 003, 2, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion BG40_44 #region TBG40_44 case eKeepTypes.TBG40_44: { keepComp = new GameKeepComponent(); keepComp.LoadFromDatabase(new DBKeepComponent(0, 11, 253, 004, 0, 0, 3200, keep.KeepID, createInfo), keep); keep.KeepComponents.Add(keepComp); break; } #endregion TBG40_44 #region Default default: DisplayMessage(client, "Wrong type of keep"); return; #endregion Default } log.Debug("Keep creation: used keep type " + ((eKeepTypes)keepType)); client.Player.TempProperties.setProperty(TEMP_KEEP_LAST, keep); foreach (GameKeepComponent comp in keep.KeepComponents) { if (comp.InternalID != null) DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.FastCreate.CompCreated", comp.InternalID, comp.Keep.KeepID)); comp.Health = comp.MaxHealth; } DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.FastCreate.KeepCreated")); log.Debug("Keep creation: check of components complete"); foreach (GameClient c in WorldMgr.GetClientsOfRegion(client.Player.CurrentRegionID)) { c.Out.SendKeepInfo(keep); foreach (GameKeepComponent keepComponent in keep.KeepComponents) { c.Out.SendKeepComponentInfo(keepComponent); } } log.Debug("Keep creation: complete, saving"); keep.SaveIntoDatabase(); break; } #endregion FastCreate #region TowerCreate case "towercreate": { if (args.Length < 5) { DisplaySyntax(client); return; } int keepid = -1; if (!int.TryParse(args[2], out keepid)) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.TowerCreate.InvalidKeepID")); return; } if (GameServer.KeepManager.GetKeepByID(keepid) != null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.TowerCreate.KeepIDExists", keepid)); return; } // Most // // Since the KeepManager consider a KeepID higher than 255 as a Tower KeepID // We must check that the client is not trying to create a tower with a lower KeepID if ((keepid >> 8) == 0) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.TowerCreate.WrongKeepID", keepid)); return; } byte baseLevel = 50; if (!byte.TryParse(args[3], out baseLevel)) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.TowerCreate.InvalidBaseLev")); return; } string keepName = String.Join(" ", args, 4, args.Length - 4); string createInfo = client.Player.Name + ";" + string.Format("/keep towercreate {0} {1} {2}", keepid, baseLevel, keepName); DBKeep keep = new DBKeep(createInfo); keep.Name = keepName; keep.KeepID = keepid; keep.Level = 0; keep.Region = client.Player.CurrentRegionID; keep.X = client.Player.X; keep.Y = client.Player.Y; keep.Z = client.Player.Z; keep.Heading = client.Player.Heading; keep.BaseLevel = baseLevel; GameServer.Database.AddObject(keep); DBKeepComponent towerComponent = new DBKeepComponent(0, (int)GameKeepComponent.eComponentSkin.Tower, 0, 0, 0, 0, 3200, keep.KeepID, client.Player.Name + ";/keep towercreate"); GameServer.Database.AddObject(towerComponent); GameKeepTower k = new GameKeepTower(); k.Load(keep); new GameKeepComponent().LoadFromDatabase(towerComponent); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.TowerCreate.CreatedSaved")); //send the creation packets foreach (GameClient c in WorldMgr.GetClientsOfRegion(client.Player.CurrentRegionID)) { c.Out.SendKeepInfo(k); c.Out.SendKeepComponentUpdate(k, false); foreach (GameKeepComponent keepComponent in k.KeepComponents) { c.Out.SendKeepComponentInfo(keepComponent); c.Out.SendKeepComponentDetailUpdate(keepComponent); } } break; } #endregion TowerCreate #region Create case "create": { if (args.Length < 6) { DisplaySyntax(client); return; } int keepid = 0; try { keepid = Convert.ToInt32(args[2]); } catch { DisplaySyntax(client); return; } if (GameServer.KeepManager.GetKeepByID(keepid) != null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.TowerCreate.KeepIDExists", keepid)); return; } // Most // // Since the KeepManager consider a KeepID lower than 256 as a keep KeepID // We must check that the client is not trying to create a keep with a higher KeepID if ((keepid >> 8) != 0) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.TowerCreate.WrongKeepID", keepid)); return; } byte baselevel = 0; try { baselevel = Convert.ToByte(args[3]); } catch { DisplaySyntax(client); return; } int radius = 0; try { radius = Convert.ToInt32(args[4]); } catch { DisplaySyntax(client); return; } string keepName = String.Join(" ", args, 5, args.Length - 5); string createInfo = client.Player.Name + ";" + string.Format("/keep create {0} {1} {2} {3}", keepid, baselevel, radius, keepName); DBKeep keep = new DBKeep(createInfo); keep.Name = keepName; keep.KeepID = keepid; keep.Level = 0; keep.Region = client.Player.CurrentRegionID; keep.X = client.Player.X; keep.Y = client.Player.Y; keep.Z = client.Player.Z; keep.Heading = client.Player.Heading; keep.BaseLevel = baselevel; GameServer.Database.AddObject(keep); GameKeep k = new GameKeep(); k.Load(keep); if (radius > 0) k.Area.ChangeRadius(radius); foreach (IDoor door in client.Player.GetDoorsInRadius(3000)) { (door as GameObject).RemoveFromWorld(); GameKeepDoor d = new GameKeepDoor(); d.CurrentRegionID = (ushort)keep.Region; d.Name = door.Name; d.Heading = (ushort)door.Heading; d.X = door.X; d.Y = door.Y; d.Z = door.Z; d.Level = 0; d.Model = 0xFFFF; d.DoorID = door.DoorID; d.State = eDoorState.Closed; DoorMgr.RegisterDoor(d); d.AddToWorld(); d.Component = new GameKeepComponent(); d.Component.Keep = k; d.Component.Keep.Doors[d.DoorID] = this; d.Health = d.MaxHealth; d.StartHealthRegeneration(); (door as GameObject).Delete(); } client.Player.TempProperties.setProperty(TEMP_KEEP_LAST, k); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.FastCreate.KeepCreated")); //send the creation packets foreach (GameClient c in WorldMgr.GetClientsOfRegion(client.Player.CurrentRegionID)) { c.Out.SendKeepInfo(k); foreach (GameKeepComponent keepComponent in k.KeepComponents) { c.Out.SendKeepComponentInfo(keepComponent); } } GameServer.KeepManager.RegisterKeep(k.KeepID, k); break; } #endregion Create #region Remove case "remove": { KeepArea karea = null; foreach (AbstractArea area in client.Player.CurrentAreas) { if (area is KeepArea) { karea = area as KeepArea; break; } } if (karea == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Remove.YourNotInAKeepArea")); return; } karea.Keep.Remove(karea); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Remove.KeepUnloaded")); break; } #endregion Remove #region Name case "name": { if (args.Length < 3) { DisplaySyntax(client); return; } if (myKeep == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Remove.MustCreateKeepFirst")); return; } myKeep.Name = String.Join(" ", args, 2, args.Length - 2); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Remove.YouChangeKeepName", myKeep.Name)); break; } #endregion Name #region KeepID case "keepid": { if (args.Length < 3) { DisplaySyntax(client); return; } if (myKeep == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Remove.MustCreateKeepFirst")); return; } int keepid = 0; try { keepid = Convert.ToInt32(args[2]); } catch { DisplaySyntax(client); return; } myKeep.KeepID = keepid; DisplayMessage(client, "You change the id of the current keep to " + keepid); break; } #endregion KeepID #region Level case "level": { if (args.Length < 3) { DisplaySyntax(client); return; } if (myKeep == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Remove.MustCreateKeepFirst")); return; } byte keepLevel = 0; try { keepLevel = Convert.ToByte(args[2]); } catch { DisplaySyntax(client); return; } myKeep.ChangeLevel(keepLevel); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Level.YouChangeKeepLevel", keepLevel)); break; } #endregion Level #region BaseLevel case "baselevel": { if (args.Length < 3) { DisplaySyntax(client); return; } if (myKeep == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Remove.MustCreateKeepFirst")); return; } byte keepLevel = 0; try { keepLevel = Convert.ToByte(args[2]); } catch { DisplaySyntax(client); return; } myKeep.DBKeep.BaseLevel = keepLevel; myKeep.ChangeLevel(myKeep.Level); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.BaseLevel.YouChangeBaseLev", keepLevel)); break; } #endregion BaseLevel #region Realm case "realm": { if (args.Length < 3) { DisplaySyntax(client); return; } if (myKeep == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Remove.MustCreateKeepFirst")); return; } eRealm realm = eRealm.None; try { realm = (eRealm)Convert.ToByte(args[2]); } catch { DisplaySyntax(client); return; } myKeep.Reset(realm); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Realm.YouChangeKeepRealm", GlobalConstants.RealmToName(realm))); break; } #endregion Realm #region Radius case "radius": { if (args.Length < 3) { DisplaySyntax(client); return; } if (myKeep == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Remove.MustCreateKeepFirst")); return; } int radius = 0; try { radius = Convert.ToInt32(args[2]); } catch { DisplaySyntax(client); return; } myKeep.Area.ChangeRadius(radius); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Radius.YouChangeKeepRadius", radius)); break; } #endregion Radius #region Save case "save": { if (myKeep == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Remove.MustCreateKeepFirst")); return; } myKeep.SaveIntoDatabase(); DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Save.KeepSavedInDatabase")); break; } #endregion Save #region AddTeleport case "addteleporter": { GameKeepComponent component = client.Player.TargetObject as GameKeepComponent; if (component != null) { DBKeepPosition pos = PositionMgr.CreatePosition(typeof(FrontiersPortalStone), 0, client.Player, Guid.NewGuid().ToString(), component); PositionMgr.AddPosition(pos); PositionMgr.FillPositions(); } else { FrontiersPortalStone stone = new FrontiersPortalStone(); stone.CurrentRegion = client.Player.CurrentRegion; stone.X = client.Player.X; stone.Y = client.Player.Y; stone.Z = client.Player.Z; stone.Heading = client.Player.Heading; stone.SaveIntoDatabase(); stone.AddToWorld(); } DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.AddTeleport.StoneAdded")); break; } #endregion AddTeleport #region AddBanner case "addbanner": { GameKeepBanner.eBannerType bannerType = GameKeepBanner.eBannerType.Realm; if (args.Length > 2) { switch (args[2].ToLower()) { case "realm": bannerType = GameKeepBanner.eBannerType.Realm; break; case "guild": bannerType = GameKeepBanner.eBannerType.Guild; break; default: return; } } GameKeepComponent component = client.Player.TargetObject as GameKeepComponent; if (component != null) { DBKeepPosition pos = PositionMgr.CreatePosition(typeof(GameKeepBanner), 0, client.Player, Guid.NewGuid().ToString(), component); pos.TemplateType = (int)bannerType; GameServer.Database.SaveObject(pos); PositionMgr.AddPosition(pos); PositionMgr.FillPositions(); } else { GameKeepBanner banner = new GameKeepBanner(); banner.BannerType = bannerType; banner.CurrentRegion = client.Player.CurrentRegion; banner.X = client.Player.X; banner.Y = client.Player.Y; banner.Z = client.Player.Z; banner.Heading = client.Player.Heading; banner.SaveIntoDatabase(); foreach (AbstractArea area in banner.CurrentAreas) { if (area is KeepArea) { AbstractGameKeep keep = (area as KeepArea).Keep; banner.Component = new GameKeepComponent(); banner.Component.Keep = keep; banner.Component.Keep.Banners.Add(banner.InternalID, banner); break; } } if (banner.Component.Keep.Guild != null) banner.ChangeGuild(); else banner.ChangeRealm(); banner.AddToWorld(); } DisplayMessage(client, "Banner added!"); break; } #endregion Addbanner #region Move case "move": { if (client.Account.PrivLevel < 3) return; if (myKeep == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Remove.MustCreateKeepFirst")); return; } if (args.Length < 3) { // simple move to player location myKeep.X = client.Player.X; myKeep.Y = client.Player.Y; myKeep.Z = client.Player.Z; myKeep.Heading = client.Player.Heading; } else if (args.Length < 4) { DisplayMessage(client, "/keep move [direction] [amount]"); return; } else { string direction = args[2]; int amount = Convert.ToInt32(args[3]); switch (direction.ToLower()) { case "x": myKeep.X += amount; break; case "y": myKeep.Y += amount; break; case "z": myKeep.Z += amount; break; case "h": if (amount < 0 && myKeep.Heading - Math.Abs(amount) < 0) { int diff = myKeep.Heading - Math.Abs(amount); myKeep.Heading = (ushort)(4095 + diff); } else { myKeep.Heading += (ushort)amount; } if (myKeep.Heading > 4095) { myKeep.Heading = (ushort)(myKeep.Heading - 4095); } break; default: break; } } foreach (GameClient c in WorldMgr.GetClientsOfRegion(client.Player.CurrentRegionID)) { c.Out.SendKeepRemove(myKeep); c.Out.SendKeepInfo(myKeep); foreach (GameKeepComponent keepComponent in myKeep.KeepComponents) { c.Out.SendKeepComponentInfo(keepComponent); c.Out.SendKeepComponentDetailUpdate(keepComponent); } } DisplayMessage(client, "Keep moved. Don't forget to '/keep save' your changes."); break; } #endregion Move #region SkinType case "skintype": { if (myKeep == null) { DisplayMessage(client, LanguageMgr.GetTranslation(client.Account.Language, "GMCommands.Keep.Remove.MustCreateKeepFirst")); return; } try { byte skinType = Convert.ToByte(args[2]); if (skinType < 3) { myKeep.DBKeep.KeepSkinType = (eKeepSkinType)skinType; DisplayMessage(client, "Keep skin type changed to " + myKeep.DBKeep.KeepSkinType + ". Don't forget to '/keep save' your changes."); } else { DisplayMessage(client, "/keep skintype [0 = any, 1 = old, 2 = new]"); } } catch { DisplayMessage(client, "/keep skintype [0 = any, 1 = old, 2 = new]"); } break; } #endregion Move #region Default default: { DisplaySyntax(client); break; } #endregion Default } }
/// <summary> /// load all keeps from the DB /// </summary> /// <returns></returns> public virtual bool Load() { // first check the regions we manage foreach (Region r in WorldMgr.Regions.Values) { if (r.IsFrontier) { m_frontierRegionsList.Add(r.ID); } } // default to NF if no frontier regions found if (m_frontierRegionsList.Count == 0) { m_frontierRegionsList.Add(DEFAULT_FRONTIERS_REGION); } ClothingMgr.LoadTemplates(); //Dinberg - moved this here, battlegrounds must be loaded before keepcomponents are. LoadBattlegroundCaps(); if (!ServerProperties.Properties.LOAD_KEEPS) { return(true); } lock (m_keepList.SyncRoot) { m_keepList.Clear(); var keeps = GameServer.Database.SelectAllObjects <DBKeep>(); foreach (DBKeep datakeep in keeps) { Region keepRegion = WorldMgr.GetRegion(datakeep.Region); if (keepRegion == null) { continue; } //Dinberg - checking whether the keep is old or new. //The only way to do this is to examine the database entries for hookpoints and thus determine //in this manner whether the keep is old, new or 'both'. A keep will be 'both' if it is found to //have components of both sets, which is possible. bool hasOldComponents = false; bool hasNewComponents = false; //I don't want to touch the loading order of hookpoints, as i think they may depend on the //assumption keeps and towers are linked before population. So we will settle for a second //query. It's on server start, so it wont impact running performance. var currentKeepComponents = GameServer.Database.SelectObjects <DBKeepComponent>("`KeepID` = '" + datakeep.KeepID + "'"); //Pass through, and depending on the outcome of the components, determine the 'age' of the keep. foreach (DBKeepComponent comp in currentKeepComponents) { if (comp.Skin >= 0 && comp.Skin <= 20) //these are the min/max ids for old keeps. { hasOldComponents = true; } if (comp.Skin > 20) //any skinID greater than this are ids for new keeps. { hasNewComponents = true; } } if (datakeep.KeepSkinType != eKeepSkinType.Any) { if (datakeep.KeepSkinType == eKeepSkinType.New && hasNewComponents == false) { continue; } else if (datakeep.KeepSkinType == eKeepSkinType.Old && hasOldComponents == false) { continue; } } else { // Use server properties to determine correct keep to load //"use_new_keeps", "Keeps to load. 0 for Old Keeps, 1 for new keeps, 2 for both.", 2 if (ServerProperties.Properties.USE_NEW_KEEPS == 0 && !hasOldComponents) { continue; } if (ServerProperties.Properties.USE_NEW_KEEPS == 1 && !hasNewComponents) { continue; } } //If we've got this far, we are permitted to load as per normal! AbstractGameKeep keep; if ((datakeep.KeepID >> 8) != 0 || ((datakeep.KeepID & 0xFF) > 150)) { keep = keepRegion.CreateGameKeepTower(); } else { keep = keepRegion.CreateGameKeep(); } keep.Load(datakeep); RegisterKeep(datakeep.KeepID, keep); } // This adds owner keeps to towers / portal keeps foreach (AbstractGameKeep keep in m_keepList.Values) { GameKeepTower tower = keep as GameKeepTower; if (tower != null) { int index = tower.KeepID & 0xFF; GameKeep ownerKeep = GetKeepByID(index) as GameKeep; if (ownerKeep != null) { ownerKeep.AddTower(tower); } tower.Keep = ownerKeep; tower.OwnerKeepID = index; if (tower.OwnerKeepID < 10) { log.WarnFormat("Tower.OwnerKeepID < 10 for KeepID {0}. Doors on this tower will not be targetable! ({0} & 0xFF < 10). Choose a different KeepID to correct this issue.", tower.KeepID); } } } bool missingKeeps = false; var keepcomponents = GameServer.Database.SelectAllObjects <DBKeepComponent>(); foreach (DBKeepComponent component in keepcomponents) { AbstractGameKeep keep = GetKeepByID(component.KeepID); if (keep == null) { missingKeeps = true; continue; } if (keep.DBKeep.KeepSkinType != eKeepSkinType.Any) { if (keep.DBKeep.KeepSkinType == eKeepSkinType.New && IsNewKeepComponent(component.Skin) == false) { continue; } else if (keep.DBKeep.KeepSkinType == eKeepSkinType.Old && IsNewKeepComponent(component.Skin)) { continue; } } else { // if use old keeps don't try to load new components if (ServerProperties.Properties.USE_NEW_KEEPS == 0 && IsNewKeepComponent(component.Skin)) { continue; } // if use new keeps don't try and load old components if (ServerProperties.Properties.USE_NEW_KEEPS == 1 && !IsNewKeepComponent(component.Skin)) { continue; } } GameKeepComponent gamecomponent = keep.CurrentRegion.CreateGameKeepComponent(); gamecomponent.LoadFromDatabase(component, keep); keep.KeepComponents.Add(gamecomponent); } if (missingKeeps && log.IsWarnEnabled) { log.WarnFormat("Some keeps not found while loading components, possibly old/new keeptypes."); } if (m_keepList.Count != 0) { foreach (AbstractGameKeep keep in m_keepList.Values) { if (keep.KeepComponents.Count != 0) { keep.KeepComponents.Sort(); } } } LoadHookPoints(); log.Info("Loaded " + m_keepList.Count + " keeps successfully"); } if (ServerProperties.Properties.USE_KEEP_BALANCING) { UpdateBaseLevels(); } if (ServerProperties.Properties.USE_LIVE_KEEP_BONUSES) { KeepBonusMgr.UpdateCounts(); } return(true); }