public void removeGlobalWarp(Player player, string warpName)
        {
            Passport passport = passportManager.getPassport(player);
            // must be logged in to remove a global warp
            if (passport == null) {
                player.sendMessage("Error: Must be logged in to Passport to remove a global warp.", 255, 255f, 0f, 0f);
                return;
            }

            if (!globalWarpExists(warpName)) {
                player.sendMessage("Error: Global warp <" + warpName + "> does not exist.", 255, 255f, 0f, 0f);
                return;
            }

            User user = passport.getUser();
            Warp warp = null;
            globalWarpList.TryGetValue(warpName, out warp);

            // only allow if they own the warp
            if (globalOwnershipEnforced && !warp.owner.Equals(user.username)) {
                player.sendMessage("Error: Cannot delete global warp you do not own.", 255, 255f, 0f, 0f);
                warpDrivePlugin.Log(player.Name + " attempted to remove warp <" + warpName + "> unsuccessfully.");
                return;
            }

            globalWarpList.Remove(warpName);
            vault.store(globalWarpList);
            player.sendMessage("Global warp <" + warpName + "> removed.", 255, 0f, 255f, 255f);
            warpDrivePlugin.Log("<" + user.username + ">[" + player.Name + "] removed warp " + warpName);
        }
Example #2
0
 public static void DeleteHouse(string PlayerName, string HouseName, Player Deleter)
 {
     int playerIndex = House.plugin.GetPlayerHouseIndex(PlayerName);
     if (playerIndex < 0)
     {
         Deleter.sendMessage("Invalid player", House.plugin.chatColor);
     }
     else
     {
         int playerHouseIndex = House.plugin.GetPlayerHouseIndex(PlayerName);
         if (playerHouseIndex < 0)
         {
             if (PlayerName == Deleter.Name)
             {
                 Deleter.sendMessage("You have no houses to delete", House.plugin.chatColor);
             }
             else
             {
                 Deleter.sendMessage("There are no houses to delete for " + PlayerName, House.plugin.chatColor);
             }
         }
         else
         {
             int coordsIndex = House.plugin.GetHouseCoordsIndexByName(PlayerName, HouseName);
             if (coordsIndex < 0)
                 Deleter.sendMessage("There is no house called " + HouseName, House.plugin.chatColor);
             else
             {
                 House.plugin.playerHouses[playerHouseIndex].Houses.RemoveAt(coordsIndex);
                 Deleter.sendMessage("You've deleted the house called " + HouseName, House.plugin.chatColor);
             }
         }
     }
 }
Example #3
0
        //the following is taken and modified from Commands.cs from TDSM source. Thanks guys!!! ;)
        public bool highlightsearch(Player player, string nameOrID)
        {
            List<ItemInfo> itemlist;

            if (Server.TryFindItemByName(nameOrID, out itemlist) && itemlist.Count > 0)
            {
                if (itemlist.Count > 1)
                {
                    player.sendMessage("There were " + itemlist.Count + " Items found regarding the specified name");
                    return false;
                }

                foreach (ItemInfo id in itemlist)
                    highlightID = id.Type;
            }
            else
            {
                player.sendMessage("There were no Items found regarding the specified Item Id/Name");
                return false;
            }

            return true;
        }
Example #4
0
        public void SetPlayerValid(Player InPlayer, bool Teleport = false)
        {
            validPlayers[InPlayer.Name] = true;

            if (Teleport)
                TeleportPlayerToPoint(InPlayer, VALIDATED);

            SavePlayerData(InPlayer, false);
            InPlayer.sendMessage(validatedMessage, chatColor);
        }
Example #5
0
 public static void TeleportToHouse(string PlayerName, string HouseName, Player Teleporter)
 {
     int playerIndex = House.plugin.GetPlayerHouseIndex(PlayerName);
     if (playerIndex < 0)
     {
         Teleporter.sendMessage("Invalid player", House.plugin.chatColor);
     }
     else
     {
         if (House.plugin.properties.PlayersCanTeleport || Teleporter.Op)
         {
             int houseIndex = House.plugin.GetHouseCoordsIndexByName(PlayerName, HouseName);
             if (houseIndex < 0)
             {
                 if (PlayerName == Teleporter.Name)
                     Teleporter.sendMessage("You don't have a house called " + HouseName, House.plugin.chatColor);
                 else
                     Teleporter.sendMessage(PlayerName + " doesn't have a house called " + HouseName, House.plugin.chatColor);
             }
             else
             {
                 Teleporter.sendMessage("Teleporting to " + HouseName, House.plugin.chatColor);
                 PlayerHouseCoords pHC = House.plugin.playerHouses[House.plugin.GetPlayerHouseIndex(PlayerName)].Houses[houseIndex];
                 if (pHC.TeleportPoint.X > 0 && pHC.TeleportPoint.Y > 0)
                     Teleporter.Teleport(pHC.TeleportPoint.X * 16, pHC.TeleportPoint.Y * 16);
                 else
                     Teleporter.Teleport(((pHC.TopLeft.X * 16) + (pHC.BottomRight.X * 16)) / 2,
                                           ((pHC.TopLeft.Y * 16) + (pHC.BottomRight.Y * 16)) / 2);
             }
         }
         else
             Teleporter.sendMessage("Only OPs can teleport to houses", House.plugin.chatColor);
     }
 }
 // Warps the player to the warp
 private void warpPlayerTo(Player player, Warp warp)
 {
     player.teleportTo(warp.loc.X, warp.loc.Y);
     player.sendMessage("Warped to " + warp.type + " warp <" + warp.name + ">.", 255, 0f, 255f, 255f);
     warpDrivePlugin.Log(player.Name + " used /warp " + warp.name);
 }
        public void writePersonalWarp(Player player, string warpName)
        {
            Passport passport = passportManager.getPassport(player);

            // must be logged in to save a personal warp
            if (passport == null) {
                player.sendMessage("Error: Must be logged in to Passport to create a personal warp.", 255, 255f, 0f, 0f);
                return;
            }

            if (personalWarpExists(player, warpName)) {
                player.sendMessage("Error: Personal warp <" + warpName + "> exists.", 255, 255f, 0f, 0f);
                return;
            }

            User user = passport.getUser();
            Warp warp = new Warp();
            warp.type = WarpType.PERSONAL;
            warp.name = warpName;
            warp.owner = user.username; // use Account username here
            warp.loc.X = player.Location.X;
            warp.loc.Y = player.Location.Y;

            WarpList personalWarpList = getPersonalWarpList(player);
            try {
                personalWarpList.Add(warp.name, warp);
                vault.store(personalWarpList);
            } catch (Exception e) {

            }

            player.sendMessage("Personal warp <" + warpName + "> created.", 255, 0f, 255f, 255f);
            warpDrivePlugin.Log(player.Name + " created personal warp " + warpName + " at " + warp.loc.X + "," + warp.loc.Y);
        }
        public void writeGlobalWarp(Player player, string warpName)
        {
            Passport passport = passportManager.getPassport(player);

            // must be logged in to save a personal warp
            if (passport == null) {
                player.sendMessage("Error: Must be logged in to Passport to create a global warp.", 255, 255f, 0f, 0f);
                return;
            }

            if (globalWarpExists(warpName)) {
                player.sendMessage("Error: Global warp <" + warpName + "> exists.", 255, 255f, 0f, 0f);
                return;
            }

            User user = passport.getUser();
            Warp warp = new Warp();
            warp.type = WarpType.GLOBAL;
            warp.name = warpName;
            warp.owner = user.username;
            warp.loc.X = player.Location.X;
            warp.loc.Y = player.Location.Y;

            globalWarpList.Add(warpName, warp);
            vault.store(globalWarpList);
            player.sendMessage("Global warp <" + warpName + "> created.", 255, 0f, 255f, 255f);
            warpDrivePlugin.Log(player.Name + " created global warp " + warpName + " at " + warp.loc.X + "," + warp.loc.Y);
        }
        public void warp(Player player, string warpName)
        {
            warpDrivePlugin.Log("Attempting to warp [" + player.Name + "] to <" + warpName + ">");

            Warp warp = null;

            // always try personal warp first
            // must be logged in to warp to personal warp
            Passport passport = passportManager.getPassport(player);
            if (passport != null) {
                User user = passport.getUser();
                WarpList personalWarpList = getPersonalWarpList(player);
                if (personalWarpList != null && personalWarpList.ContainsKey(warpName)) {
                    personalWarpList.TryGetValue(warpName, out warp);
                }
            }

            // if we fail to find a personal warp, look in the global warps
            if (warp == null) {
                globalWarpList.TryGetValue(warpName, out warp);
            }

            if (warp != null) {
                warpPlayerTo(player, warp);
            } else {
                player.sendMessage("Error: warp <" + warpName + "> does not exist.", 255, 255f, 0f, 0f);
            }
        }
 // Sends a list of all valid warp locations to the player
 public void sendWarpList(Player player)
 {
     sendGlobalWarpList(player);
     player.sendMessage("", 255, 0f, 255f, 255f);
     sendPersonalWarpList(player);
 }
        // Sends a list of all valid personal warp locations to the player
        public void sendPersonalWarpList(Player player)
        {
            Passport passport = passportManager.getPassport(player);
            if (passport != null) {
                player.sendMessage("Available personal warps:", 255, 0f, 255f, 255f);
                WarpList personalWarpList = getPersonalWarpList(player);
                String warpList = "";
                if (personalWarpList != null) {
                    foreach (KeyValuePair<string, Warp> pair in personalWarpList.getWarps()) {
                        warpList += pair.Key + ", ";
                    }
                    // cut off trailing comma and whitespace
                    if (warpList.Length >= 2) {
                        warpList = warpList.Substring(0, warpList.Length - 2);
                    }

                    player.sendMessage(warpList, 255, 0f, 255f, 255f);
                }
            } else {
                player.sendMessage("Personal warps only available when logged in to Passport.", 255, 0f, 255f, 255f);
            }
        }
        // Sends a list of all valid global warp locations to the player
        public void sendGlobalWarpList(Player player)
        {
            player.sendMessage("Available global warps:", 255, 0f, 255f, 255f);
            String warpList = "";
            foreach (KeyValuePair<string, Warp> pair in globalWarpList.getWarps()) {
                warpList += pair.Key + ", ";
            }

            // cut off trailing comma and whitespace
            if (warpList.Length >= 2) {
                warpList = warpList.Substring(0, warpList.Length - 2);
            }

            player.sendMessage(warpList, 255, 0f, 255f, 255f);
        }
Example #13
0
 private static void SendMessage(Player InPlayer, String message)
 {
     if (InPlayer != null)
         InPlayer.sendMessage(message, Login.plugin.chatColor);
     else
         Program.tConsole.WriteLine(message);
 }