public override void Execute(ref ConsoleSystem.Arg Arguments, ref string[] ChatArguments) { if (ChatArguments.Length == 3) { float n, n2, n3; bool b = float.TryParse(ChatArguments[0], out n); bool b2 = float.TryParse(ChatArguments[1], out n2); bool b3 = float.TryParse(ChatArguments[2], out n3); if (b && b2 && b3) { Fougerite.Player plr = Fougerite.Server.Cache[Arguments.argUser.userID]; if (plr != null) { plr.TeleportTo(n, n2, n3); Util.sayUser(Arguments.argUser.networkPlayer, Core.Name, "You have teleported to the coords!"); return; } } } string playerName = string.Join(" ", ChatArguments).Trim(new char[] { ' ', '"' }); if (playerName == string.Empty) { Util.sayUser(Arguments.argUser.networkPlayer, Core.Name, "Teleport Usage: /tpto playerName"); return; } List <string> list = new List <string>(); list.Add("ToTarget"); foreach (PlayerClient client in PlayerClient.All) { if (client.netUser.displayName.ToUpperInvariant().Contains(playerName.ToUpperInvariant())) { if (client.netUser.displayName.Equals(playerName, StringComparison.OrdinalIgnoreCase)) { Arguments.Args = new string[] { Arguments.argUser.displayName, client.netUser.displayName }; teleport.toplayer(ref Arguments); Util.sayUser(Arguments.argUser.networkPlayer, Core.Name, "You have teleported to " + client.netUser.displayName); return; } list.Add(client.netUser.displayName); } } if (list.Count != 0) { Util.sayUser(Arguments.argUser.networkPlayer, Core.Name, ((list.Count - 1)).ToString() + " Player" + (((list.Count - 1) > 1) ? "s" : "") + " were found: "); for (int j = 1; j < list.Count; j++) { Util.sayUser(Arguments.argUser.networkPlayer, Core.Name, j + " - " + list[j]); } Util.sayUser(Arguments.argUser.networkPlayer, Core.Name, "0 - Cancel"); Util.sayUser(Arguments.argUser.networkPlayer, Core.Name, "Please enter the number matching the player you were looking for."); tpWaitList[Arguments.argUser.userID] = list; } else { Util.sayUser(Arguments.argUser.networkPlayer, Core.Name, "No player found with the name: " + playerName); } }
private void OnPlayerSpawned(Fougerite.Player player, SpawnEvent se) { if (RespawnFlagKillList.Contains(player.SteamID)) { player.TeleportTo(RespawnFlags[player.SteamID]); RespawnFlagKillList.Remove(player.SteamID); } }
public void Spawned(RoyaleUser pl, SpawnEvent se) { if (!inlobby.Contains(pl.UID)) { if (ds.ContainsKey("LobbySpawn", "spawn")) { Vector3 pos = (Vector3)ds.Get("LobbySpawn", "spawn"); pl.TeleportTo(pos); inlobby.Add(pl.UID); pl.MessageFrom("BattleRoyale", "Teleported to lobby"); } } }
public void TeleporterBehaviour_Teleport(uint id) { var teleporter = TeleporterSettings.GetTeleporterFromID(id); if (SpawnManager.SpawnedObjects.TryGetValue(id, out var spawnableObjectBehaviour)) { if (Vector3.Distance(FougeritePlayer.Location, spawnableObjectBehaviour.transform.position) <= teleporter.Radius) { FougeritePlayer.TeleportTo(teleporter.GetPosition()); } } }
public virtual void UseItem(IInventoryItem inventoryItem) { var player = new Fougerite.Player(inventoryItem.controller.playerClient); player.TeleportTo(new Vector3(6636.035f, 348.0485f, -4385.647f)); int num = 1; if (inventoryItem.Consume(ref num)) { inventoryItem.inventory.RemoveItem(inventoryItem.slot); } else { inventoryItem.inventory.MarkSlotDirty(inventoryItem.slot); } }
public virtual void UseItem(IInventoryItem inventoryItem) { var player = new Fougerite.Player(inventoryItem.controller.playerClient); player.TeleportTo(new Vector3(6660.546f, 353.1123f, -3852.007f)); int num = 1; if (inventoryItem.Consume(ref num)) { inventoryItem.inventory.RemoveItem(inventoryItem.slot); } else { inventoryItem.inventory.MarkSlotDirty(inventoryItem.slot); } }
public virtual void UseItem(IInventoryItem inventoryItem) { var player = new Fougerite.Player(inventoryItem.controller.playerClient); player.TeleportTo(new Vector3(6077.474f, 376.276f, -3578.096f)); int num = 1; if (inventoryItem.Consume(ref num)) { inventoryItem.inventory.RemoveItem(inventoryItem.slot); } else { inventoryItem.inventory.MarkSlotDirty(inventoryItem.slot); } }
public void DamagePlayer(Fougerite.Player pl) { if (pl.Health <= 10f) { pl.TeleportTo(pl.Location.x + 15f, pl.Location.y + 300f, pl.Location.z + 15f); pl.MessageFrom(Name, blue + "========================"); pl.MessageFrom(Name, yellow + "DO NOT SPAM in the Shop"); pl.MessageFrom(Name, red + "You get Killed !!"); pl.MessageFrom(Name, blue + "========================"); } else { pl.Damage(10f); pl.MessageFrom(Name, red + "Penality " + blue + " -10 Healt"); } return; }
public static void LoadPlayer(Fougerite.Player player, bool firstLogin) { string lang = LanguageComponent.LanguageComponent.GetPlayerLangOrDefault(player); User user = Data.Globals.usersOnline.Find(x => x.Name == player.Name); if (user != null) { if (user.BannedPlayer == 1) { char ch = '☢'; player.Notice(ch.ToString(), LanguageComponent.LanguageComponent.getMessage("account_banned", lang), 4f); player.Disconnect(); } if (player.UID != user.SteamID) { Vector3 position = new Vector3(user.XPos, user.YPos, user.ZPos); player.TeleportTo(position); } if (!firstLogin) { //LoadInventory(player); //ShareCommand command = ChatCommand.GetCommand("share") as ShareCommand; //command.AddDoors(user.SteamID, player); } else { player.Inventory.RemoveItem(30); player.Inventory.RemoveItem(31); player.Inventory.RemoveItem(32); player.Inventory.AddItemTo("Stone Hatchet", 30, 1); player.Inventory.AddItemTo("Bandage", 31, 3); player.Inventory.AddItemTo("Cooked Chicken Breast", 32, 3); } } else { player.SendClientMessage(LanguageComponent.LanguageComponent.getMessage("error_0102", lang)); } UnFreezePlayer(player); }
public void OnPlayerSpawned(Fougerite.Player player, SpawnEvent se) { if (player != null) { if (DataStore.GetInstance().Get("tpfriendautoban", player.UID) != null) { DataStore.GetInstance().Remove("tpfriendautoban", player.UID); } if (DataStore.GetInstance().Get("homesystemautoban", player.UID) != null) { DataStore.GetInstance().Remove("homesystemautoban", player.UID); } if (DataStore.GetInstance().Get("DeathMSGBAN", player.UID) != null) { Vector3 loc = (Vector3)DataStore.GetInstance().Get("DeathMSGBAN", player.UID); player.TeleportTo(loc); player.MessageFrom(DeathMSGName, green + tpbackmsg); DataStore.GetInstance().Remove("DeathMSGBAN", player.UID); } } }
public void OnCommand(Fougerite.Player player, string cmd, string[] args) { if (player.Admin || player.Moderator) { if (cmd == "ahelp") { player.MessageFrom(Name, "[color #42b3f5]/duty /unduty /warn /delwarn /hp "); player.MessageFrom(Name, "[color #42b3f5]/mtp /mtpback /ann /wipebar /wipeshelt "); player.MessageFrom(Name, "[color #42b3f5]/kick /ban /unban /rbban /rbunban /unbanip /mute /unmute "); return; } if (cmd == "duty") { if (!DataStore.GetInstance().ContainsKey("AdminDuty", player.SteamID)) { DataStore.GetInstance().Add("AdminDuty", player.SteamID, 0); player.Inventory.ClearArmor(); player.Inventory.AddItemTo("Invisible Helmet", 36, 1); player.Inventory.AddItemTo("Invisible Vest", 37, 1); player.Inventory.AddItemTo("Invisible Pants", 38, 1); player.Inventory.AddItemTo("Invisible Boots", 39, 1); player.Inventory.AddItem("Uber Hatchet", 1); Server.GetServer().BroadcastFrom(Name, "[color #42b3f5]Admin [color #f5e042]" + player.Name + " [color #42b3f5]is now [color #45f542]On Duty!"); } else { player.MessageFrom(Name, "[color #42b3f5]You are already OnDuty!!!"); } } if (cmd == "unduty") { if (DataStore.GetInstance().ContainsKey("AdminDuty", player.SteamID)) { DataStore.GetInstance().Remove("AdminDuty", player.SteamID); player.Inventory.ClearArmor(); player.Inventory.RemoveItem("Invisible Helmet", 1); player.Inventory.RemoveItem("Invisible Vest", 1); player.Inventory.RemoveItem("Invisible Pants", 1); player.Inventory.RemoveItem("Invisible Boots", 1); player.Inventory.RemoveItem("Uber Hatchet", 1); Server.GetServer().BroadcastFrom(Name, "[color #42b3f5]Admin [color #f5e042]" + player.Name + " [color #42b3f5]is now [color #f55142]Off Duty!"); } else { player.MessageFrom(Name, "[color #42b3f5]You are [color #f55142]not [color #42b3f5]On Duty!!!"); } } if (cmd == "warn") { if (args.Length == 0) { player.MessageFrom(Name, "[color #f55142]Syntax:[color #42b3f5] /warn PlayerName"); return; } else { Fougerite.Player playertor = FindSimilarPlayer(player, args); if (playertor == null) { return; } if (!DataStore.GetInstance().ContainsKey("warn", playertor.SteamID)) { DataStore.GetInstance().Add("warn", playertor.SteamID, 0); Server.GetServer().Broadcast("[color #42b3f5]Admin/Mod [color #f5e042]" + player.Name + "[color #42b3f5] Warned [color #f5e042] " + playertor.Name + "![color #f5e042](1/2)"); string logtext = player.Name + " Warned " + playertor.Name + "!(1/2)"; Log(logtext, "Warn"); return; } else { DataStore.GetInstance().Remove("warn", playertor.SteamID); Server.GetServer().Broadcast("[color #42b3f5]Admin/Mod [color #f5e042]" + player.Name + "[color #42b3f5] Warned[color #f5e042] " + playertor.Name + "![color red]Kicked (2/2)"); string logtext = player.Name + " Warned " + playertor.Name + "!Kicked (2/2)"; Log(logtext, "Warn"); playertor.Disconnect(); } } } if (cmd == "delwarn") { if (args.Length == 0) { player.MessageFrom(Name, "[color #f55142]Syntax:[color #42b3f5] /delwarn PlayerName"); return; } else { Fougerite.Player playertor = FindSimilarPlayer(player, args); if (playertor == null) { return; } if (DataStore.GetInstance().ContainsKey("warn", playertor.SteamID)) { DataStore.GetInstance().Remove("warn", playertor.SteamID); Server.GetServer().Broadcast("[color #42b3f5]Admin/Mod [color #f5e042]" + player.Name + " [color #42b3f5]Deleted [color #f5e042] " + playertor.Name + " [color #42b3f5]Warns![color #f5e042](0/2)"); string logtext = player.Name + " Deleted " + playertor.Name + " Warns!"; Log(logtext, "DeleteWarn"); return; } else { player.MessageFrom(Name, "[color #42b3f5]This Player [color #f55142]Doesn't [color #42b3f5]have any Warn!"); return; } } } if (cmd == "hp") { if (args.Length == 0) { player.MessageFrom(Name, "[color #f55142]Syntax:[color #42b3f5] /hp PlayerName"); return; } else { Fougerite.Player playertor = FindSimilarPlayer(player, args); if (playertor == null) { return; } player.MessageFrom(Name, playertor.Name + " HP : " + playertor.Health); string logtext = player.Name + " Used /HP On " + playertor.Name + ""; Log(logtext, "HP"); } } if (cmd == "mtp") { if (args.Length == 0) { player.MessageFrom(Name, "[color #f55142]Syntax:[color #42b3f5] /mtp PlayerName"); return; } else { if (DataStore.GetInstance().ContainsKey("AdminDuty", player.SteamID)) { Fougerite.Player playertor = FindSimilarPlayer(player, args); if (playertor == null) { return; } if (playertor.Moderator) { player.MessageFrom("AntiAbuse", "[color #42b3f5]You [color #f55142]Can't [color #42b3f5]Teleport to another Mods!"); return; } RecuperaListaDeClanes(); if (SonDeElMismoClan(player.SteamID, GetClanName(playertor.SteamID))) { player.MessageFrom("AntiAbuse", "[color #42b3f5]You [color #f55142]Can't [color #42b3f5]Teleport to your Clanmates!"); return; } if (!DataStore.GetInstance().ContainsKey("ModeratorLastLoc", player.UID)) { DataStore.GetInstance().Add("ModeratorLastLoc", player.UID, player.Location.ToString()); } player.TeleportTo(playertor, 1.5f, false); player.Notice("You have Teleported to " + playertor.Name + ""); player.InventoryNotice("Checkpoint Saved!"); playertor.Notice("Admin " + player.Name + " Teleported to You!"); string logtext = player.Name + " Teleported To " + playertor.Name + " !LOC: " + playertor.X + " " + playertor.Y + " " + playertor.Z + " "; Log(logtext, "Teleports"); } else { player.MessageFrom(Name, "[color #42b3f5]You are [color #f55142]not [color #42b3f5]OnDuty!!!"); } } } if (cmd == "mtpback") { if (DataStore.GetInstance().ContainsKey("ModeratorLastLoc", player.UID) && !DataStore.GetInstance().ContainsKey("HGIG", player.UID)) { var location = StringToVector3(DataStore.GetInstance().Get("ModeratorLastLoc", player.UID).ToString()); player.SafeTeleportTo(location, false); DataStore.GetInstance().Remove("ModeratorLastLoc", player.UID); player.Notice("You Teleported Back to your Checkpoint!"); string logtext = "Admin " + player.Name + " Teleported to his Checkpoint!"; Log(logtext, "Teleports"); } else { player.Notice("You Don't have any save Checkpoint or You Are in HungerGame!"); } } if (cmd == "ann") { if (args.Length == 0) { player.MessageFrom(Name, "[color #f55142]Syntax:[color #42b3f5] /ann TEXT"); } else { Server.GetServer().BroadcastNotice(string.Join(" ", args)); string logtext = player.Name + " /ann ==> : " + string.Join(" ", args); Log(logtext, "Announce"); } } if (cmd == "wipeshelt") { int c = 0; foreach (var x in World.GetWorld().Entities) { if (x.Name.ToLower().Contains("shelter")) { x.Destroy(); c++; } } Server.GetServer().BroadcastFrom("AntiLag", "[color #42b3f5]Admin/Mod [color #f5e042]" + player.Name + " [color #42b3f5]Deleted [color red] " + c + " [color #42b3f5]Shelters"); string logtext = player.Name + " Deleted " + c + " Shelters"; Log(logtext, "Shelter"); } if (cmd == "wipebar") { int c = 0; foreach (var x in World.GetWorld().Entities) { if (x.Name.ToLower().Contains("barricade")) { x.Destroy(); c++; } } Server.GetServer().BroadcastFrom("AntiLag", "[color #42b3f5]Admin/Mod [color #f5e042]" + player.Name + " [color #42b3f5]Deleted [color red] " + c + " [color #42b3f5]Barricades"); string logtext = player.Name + " Deleted " + c + " Barricades"; Log(logtext, "Barricade"); } } }
public void Command(User pl, string cmd, string[] args) { if(cmd == "esshelp") { pl.Message("Fougerite-Essentials " + Version + " by ice cold"); pl.Message("/help - see all commands"); pl.Message("/rules - see all the rules"); pl.Message("/info - See info about this plugin"); pl.Message("/friendhelp - See all information about the friends system"); pl.Message("/sharehelp - See all help about the share system"); if(EnableHome) { pl.Message("/home - See all help about the home system"); } if(EnableRemove) { pl.Message("/remove - Enables/disables remover tool"); } if(Enabletpr) { pl.Message("/tpr name - sends teleport request to that user"); pl.Message("/tpa - Accepts an teleport reqequest"); } if(EnableWarps) { pl.Message("/warphelp - See all the help for the warping system"); } if(pl.Admin || pl.Moderator) { pl.Message("/prod - Shows the owner of the object you are looking at"); pl.Message("/country player - Shows from which country a player comes"); pl.Message("/download url filename - downloads that object and put it in the the Downloaded folder EXAMPLE: (/download http://myitem.com myitem.zip)"); pl.Message("/addnewspawn - adds a new spawns to the overwrite spawn list"); } } else if(cmd == "country") { if(pl.Admin || pl.Moderator) { if(args.Length != 1) { pl.Message("Usage /country player"); return; } User target = Server.GetServer().FindPlayer(args[0]); if(target == null) { pl.Message("Couldn't find the target user"); return; } string country = PlayerDatabase.GetSetting(target.SteamID, "Country"); pl.Message("[color #ffb90f]" + target.Name + " is located from [color #c1ffc1]" + country); } } else if(cmd == "download") { if(pl.Admin) { if(args.Length != 2) { pl.Message("Usage /download url filename - EXAMPLE: (/download http://myitem.com myitem.zip)"); return; } using (WebClient web = new WebClient()) { web.DownloadFileAsync(new Uri(args[0]), Util.GetRootFolder() + "\\Save\\Fougerite-Essentials\\Downloaded\\" + args[1]); pl.Message("[color #00ced1]Downloading " + args[1] + " to downloaded folder"); } } } else if(cmd == "addnewspawn") { if(pl.Admin) { if(EnableNewSpawns) { string[] c = SpawnsOverwrite.EnumSection("SpawnLocations"); string co = (Convert.ToInt32(c[c.Length - 1]) + 1).ToString(); SpawnsOverwrite.AddSetting("SpawnLocations", co, pl.Location.ToString()); SpawnsOverwrite.Save(); } } } else if(cmd == "warphelp") { pl.Message("Fougerite-Essentials WarpSystem by ice cold"); pl.Message("/warp name - Warps you to that location"); pl.Message("/warps - See all the current warps"); if(pl.Admin) { pl.Message("/warp_set Name"); pl.Message("/warp_remove Name"); } } else if(cmd == "warp") { if(args.Length != 1) { pl.Message("Usage /warp name"); return; } if(Warps.ContainsSetting("Warps", args[0])) { if (pl.Admin) { Vector3 loc = Util.GetUtil().ConvertStringToVector3(Warps.GetSetting("Warps", args[0])); pl.TeleportTo(loc); pl.Message("[color#00bfff]Warped to " + args[0]); } else { if(!warpcd.Contains(pl.UID)) { var dict = new Dictionary<string, object>(); dict["pl"] = pl; warpcd.Add(pl.UID); Warpcooldown(WarpCooldown * 1000, dict).Start(); Warpdelaytimer(WarpDelay * 1000, dict).Start(); string message = WarpDelayMessage.Replace("{warpname}", args[0]); } else { pl.Message(WarpCooldownMessage); } } } } else if(cmd == "warps") { pl.Message("WarpsList"); string[] l = Warps.EnumSection("Warps"); foreach(var num in l) { pl.Message(num); } } else if(cmd == "warp_set") { if(pl.Admin) { if(args.Length != 1) { pl.Message("Usage /warp_set Name"); return; } if(Warps.ContainsSetting("Warps", args[0])) { pl.Message("There is already a warp with the name " + args[0]); return; } Warps.AddSetting("Warps", args[0], pl.Location.ToString()); Warps.Save(); pl.Message("Warp saved"); } } else if(cmd == "warp_remove") { if(pl.Admin) { if(args.Length != 1) { pl.Message("Usage /warp_remove Name"); return; } if(!Warps.ContainsSetting("Warps", args[0])) { pl.Message("There is no warp with the name " + args[0]); return; } Warps.DeleteSetting("Warps", args[0]); Warps.Save(); pl.Message("The warp " + args[0] + " has been succesfully removed"); } } else if(cmd == "help") { if(EnableHelp) { foreach (var h in HelpList.EnumSection("Help")) { string d = HelpList.GetSetting("Help", h); pl.MessageFrom("Help", d); } } } else if(cmd == "rules") { if(EnableRules) { foreach (var r in RulesList.EnumSection("Rules")) { string d = RulesList.GetSetting("Help", r); pl.MessageFrom("Help", d); } } } else if(cmd == "info") { pl.MessageFrom(Name, "[color #87cefa][Fougerite-Essentials " + Version + " plugin brought by ice cold"); pl.MessageFrom(Name, "[color #20b2aa]Wanna support ice cold? https://www.patreon.com/uberrust"); pl.MessageFrom(Name, "[color #8470ff]You can download this plugin at "); } else if(cmd == "friendhelp") { pl.Message("[Fougerite-Essentials] Friends system brought by ice cold"); pl.Message("/addfriend Name - ads player to your friends list"); pl.Message("/unfriend Name - Unfriend someone"); pl.Message("/friends - See all your friends"); } else if(cmd == "sharehelp") { pl.Message("[Fougerite-Essentials] Share system brought by ice cold"); pl.Message("/share Name - Door/structure share the player"); pl.Message("/unshare Name - unshare someone"); pl.Message("/sharelist - See all the people you have shared"); } else if(cmd == "addfriend") { if(EnableFriendsSystem) { if (args.Length != 1) { pl.Message("Usage /addfriend Name"); return; } User target = Server.GetServer().FindPlayer(args[0]); if (target == null) { pl.Message("Couldn't find the target user"); return; } if (friends.ContainsSetting(pl.SteamID, target.SteamID)) { string message = AlreadyFriendedMessage.Replace("{friend}", target.Name); pl.Message(message); return; } string me = AddFriendMessage.Replace("{friend}", target.Name); pl.Message(me); friends.AddSetting(pl.SteamID, target.SteamID, target.Name); friends.Save(); } } else if(cmd == "unfriend") { if(EnableShareSystem) { if (args.Length != 1) { pl.Message("Usage /unfriend Name"); return; } User target = Server.GetServer().FindPlayer(args[0]); if(target == null) { pl.Message("Couldn't find the target user"); return; } if(!friends.ContainsSetting(pl.SteamID, target.SteamID)) { pl.Message(target.Name + " Isnt in your friends list"); return; } friends.DeleteSetting(pl.SteamID, target.SteamID); friends.Save(); string message = UnfriendMessage.Replace("{target}", target.Name); pl.Message(message); friends.DeleteSetting(pl.SteamID, target.SteamID); friends.Save(); } } else if(cmd == "friends") { if(EnableFriendsSystem) { pl.Message("===FriendsList==="); foreach (var id in friends.EnumSection(pl.SteamID)) { string m = friends.GetSetting(pl.SteamID, id); pl.Message("_ " + m); } } } else if(cmd == "share") { if(EnableShareSystem) { if(args.Length != 1) { pl.Message("Usage /share Name"); return; } User target = Server.GetServer().FindPlayer(args[0]); if (target == null) { pl.Message("Couldn't find the target user"); return; } if(share.ContainsSetting(pl.SteamID, target.SteamID)) { string message = AlreadySharedMessage.Replace("{player}", target.Name); pl.Message(message); return; } share.AddSetting(pl.SteamID, target.SteamID, target.Name); share.Save(); string me = SharedMessage.Replace("{player}", target.Name); pl.Message(me); } } else if(cmd == "unshare") { if(EnableShareSystem) { if(args.Length != 1) { pl.Message("Usage /unshare Name"); return; } User target = Server.GetServer().FindPlayer(args[0]); if(target == null) { pl.Message("Couldn't find the target user"); return; } if(!share.ContainsSetting(pl.SteamID, target.SteamID)) { pl.Message("You are not sharing with " + target.Name); return; } share.DeleteSetting(pl.SteamID, target.SteamID); share.Save(); string message = UnSharedMessage.Replace("{player}", target.Name); pl.Message(message); } } else if(cmd == "sharelist") { if(EnableShareSystem) { pl.Message("===ShareList==="); foreach(var id in share.EnumSection(pl.SteamID)) { string m = share.GetSetting(pl.SteamID, id); pl.Message("- " + m); } } } else if(cmd == "prod") { if(pl.Admin || pl.Moderator) { cachedCharacter = pl.PlayerClient.rootControllable.idMain.GetComponent<Character>(); if (!MeshBatchPhysics.Raycast(cachedCharacter.eyesRay, out cachedRaycast, out cachedBoolean, out cachedhitInstance)) { pl.Message("He Hello thats the sky bro"); return; } if(cachedhitInstance != null) { cachedCollider = cachedhitInstance.physicalColliderReferenceOnly; if (cachedCollider == null) { pl.Message("Sorry but i cannot prod that"); return; } cachedStructure = cachedCollider.GetComponent<StructureComponent>(); if (cachedStructure != null && cachedStructure._master != null) { cachedMaster = cachedStructure._master; var name = PlayerDatabase.GetSetting(cachedMaster.ownerID.ToString(), "Name"); pl.Message(string.Format("{object} - {ID} - {name}", cachedStructure.gameObject.name, cachedMaster.ownerID.ToString(), name == null ? "Unknown" : name.ToString())); } } else { cachedDeployable = cachedRaycast.collider.GetComponent<DeployableObject>(); if(cachedDeployable != null) { var name = PlayerDatabase.GetSetting(cachedMaster.ownerID.ToString(), "Name"); pl.Message(string.Format("{object} - {ID} - {name}", cachedDeployable.gameObject.name, cachedDeployable.ownerID.ToString(), name == null ? cachedDeployable.ownerName.ToString() : name.ToString())); } } pl.Message("Failed to prod " + cachedRaycast.collider.gameObject.name); } } else if(cmd == "home") { if(EnableHome) { if(args.Length != 1) { pl.Message("[Fougerite-Essentials] Home system brought by ice cold"); if(!SleepingHome) { pl.Message("/home Name - teleports you the home"); pl.Message("/sethome Name - Enabled sethome mode (hit a foundation or ceiling to save your home)"); pl.Message("/delhome Name - Deletes that home"); pl.Message("/homes - Shows the list of homes"); } else { pl.Message("/homeon - Enables home mode (place a Sleepingbag or Bed to save that as your current home)"); pl.Message("/gohome - Teleports you to your sleepingBag or Bed"); } } else { if(!SleepingHome) { if(!homecd.Contains(pl.UID)) { if (StructureHome.ContainsSetting(pl.SteamID, args[0])) { var homeloc = StructureHome.GetSetting(pl.SteamID, args[0]); var dict = new Dictionary<string, object>(); dict["pl"] = pl; dict["homeloc"] = homeloc; HomeTimer(HomeDelay * 1000, dict).Start(); string message = HomeDelayMessage.Replace("{home}", args[0]).Replace("{delay}", HomeDelay.ToString()); pl.Message(message); HomeCooldown(HomeCooldown * 1000, dict).Start(); homecd.Add(pl.UID); } else { string message = NoHomeMessage.Replace("{home}", args[0]); pl.Message(message); } } else { string message = HomeCooldownMessage.Replace("{cooldown}", HomeCooldown.ToString()); pl.Message(message); } } } } } else if(cmd == "sethome") { if(EnableHome) { if(!homemode.Contains(pl.UID)) { if (args.Length != 1) { pl.Message("Usage /sethome Name"); return; } string[] l = StructureHome.EnumSection(pl.SteamID); if ((Convert.ToBoolean(l.Length == MaxHomes))) { pl.Message(MaxHomesMessage); } else { homemode.Add(pl.UID); pl.Message("Sethome mode activated hit a foundation/ceiling to set your home"); homenum.Add(pl.UID, args[0]); } } else { pl.Message("Please do /homestop first"); } } } else if(cmd == "") }