Capture, adds to count, opens DF...etc
The only issue I'm having is the /realm window.
It displays the keeps twice, rather than once. And when I capture a keep, both will change.
Feels like a duplicate command somewhere, but when I looked under /realm command under "Commands > Player > realm.cs"
I cant find anything there that would duplicate the name.
- Code: Select all
using DOL.GS.PacketHandler; using System.Collections; using System.Collections.Generic; using DOL.Language; using DOL.GS.Keeps; using DOL.GS.ServerRules; namespace DOL.GS.Commands { [CmdAttribute( "&realm", ePrivLevel.Player, "Displays the current realm status.", "/realm")] public class RealmCommandHandler : AbstractCommandHandler, ICommandHandler { /* Realm status * * Albion Keeps: * Caer Benowyc: OwnerRealm (Guild) * Caer Berkstead: OwnerRealm (Guild) * Caer Erasleigh: OwnerRealm (Guild) * Caer Boldiam: OwnerRealm (Guild) * Caer Sursbrooke: OwnerRealm (Guild) * Caer Hurbury: OwnerRealm (Guild) * Caer Renaris: OwnerRealm (Guild) * * Midgard Keeps: * Bledmeer Faste: OwnerRealm (Guild) * Notmoor Faste: OwnerRealm (Guild) * Hlidskialf Faste: OwnerRealm (Guild) * Blendrake Faste: OwnerRealm (Guild) * Glenlock Faste: OwnerRealm (Guild) * Fensalir Faste: OwnerRealm (Guild) * Arvakr Faste: OwnerRealm (Guild) * * Hibernia Keeps: * Dun Chrauchon: OwnerRealm (Guild) * Dun Crimthainn: OwnerRealm (Guild) * Dun Bolg: OwnerRealm (Guild) * Dun na nGed: OwnerRealm (Guild) * Dun da Behnn: OwnerRealm (Guild) * Dun Scathaig: OwnerRealm (Guild) * Dun Ailinne: OwnerRealm (Guild) * * Darkness Falls: DFOwnerRealm * * Type '/relic' to display the relic status. */ public void OnCommand(GameClient client, string[] args) { if (IsSpammingCommand(client.Player, "realm")) return; string albKeeps = ""; string midKeeps = ""; string hibKeeps = ""; ICollection<AbstractGameKeep> keepList = GameServer.KeepManager.GetFrontierKeeps(); foreach (AbstractGameKeep keep in keepList) { if (keep is GameKeep) { switch (keep.OriginalRealm) { case eRealm.Albion: albKeeps += KeepStringBuilder(keep); break; case eRealm.Hibernia: hibKeeps += KeepStringBuilder(keep); break; case eRealm.Midgard: midKeeps += KeepStringBuilder(keep); break; } } } var realmInfo = new List<string>(); realmInfo.Add(LanguageMgr.GetTranslation(client.Account.Language, "Scripts.Players.Realm.AlbKeeps") + ":"); realmInfo.Add(albKeeps); realmInfo.Add(LanguageMgr.GetTranslation(client.Account.Language, "Scripts.Players.Realm.MidKeeps") + ":"); realmInfo.Add(midKeeps); realmInfo.Add(LanguageMgr.GetTranslation(client.Account.Language, "Scripts.Players.Realm.HibKeeps") + ":"); realmInfo.Add(hibKeeps); realmInfo.Add(LanguageMgr.GetTranslation(client.Account.Language, "Scripts.Players.Realm.DarknessFalls") + ": " + GlobalConstants.RealmToName(DFEnterJumpPoint.DarknessFallOwner)); realmInfo.Add(" "); realmInfo.Add(LanguageMgr.GetTranslation(client.Account.Language, "Scripts.Players.Realm.UseRelicCommand")); client.Out.SendCustomTextWindow(LanguageMgr.GetTranslation(client.Account.Language, "Scripts.Players.Realm.Title"), realmInfo); } private string KeepStringBuilder(AbstractGameKeep keep) { string buffer = ""; buffer += keep.Name + ": " + GlobalConstants.RealmToName(keep.Realm); if (keep.Guild != null) { buffer += " (" + keep.Guild.Name + ")"; } buffer += "\n"; return buffer; } } }