Ejemplo n.º 1
0
        public override void onPlayerTileChange(PlayerTileChangeEvent Event)
        {
            int player = ((Player)Event.Sender).whoAmi;
            var sender = Event.Sender;

            if (Waiting1.ContainsKey(player) && Waiting1[player])
            {
                if (!Pos1.ContainsKey(player))
                {
                    Pos1.Add(player, Event.Position);
                }
                Pos1[player] = Event.Position;
                sender.sendMessage("Position 1 set (" + Event.Position.X + ", " + Event.Position.Y + ")");
                Waiting1[player] = false;
                Waiting2[player] = false;
                Event.Cancelled  = true;
                return;
            }
            if (Waiting1.ContainsKey(player) && Waiting2[player])
            {
                if (!Pos2.ContainsKey(player))
                {
                    Pos2.Add(player, Event.Position);
                }
                Pos2[player] = Event.Position;
                sender.sendMessage("Position 2 set (" + Event.Position.X + ", " + Event.Position.Y + ")");
                Waiting1[player] = false;
                Waiting2[player] = false;
                Event.Cancelled  = true;
                return;
            }
            return;
        }
Ejemplo n.º 2
0
        public override void onPlayerTileChange(PlayerTileChangeEvent Event)
        {
            Player player    = Server.GetPlayerByName(Event.Sender.Name);
            bool   lobby     = player.PluginData.ContainsKey("lobby") ? (bool)player.PluginData["lobby"] : false;
            bool   validated = player.PluginData.ContainsKey("validated") ? (bool)player.PluginData["validated"] : false;

            Program.tConsole.WriteLine("Tile Type: " + Event.Tile.Type.ToString());

            if ((lobby || validated) && player.Op)
            {
                if (lobby)
                {
                    lobbyPoint            = (int)Event.Position.X + "," + (int)Event.Position.Y;
                    properties.LobbyPoint = lobbyPoint;
                    properties.Save(true);
                    player.sendMessage("You have set the lobby point", chatColor);
                }
                else if (validated)
                {
                    validatedPoint            = (int)Event.Position.X + "," + (int)Event.Position.Y;
                    properties.ValidatedPoint = validatedPoint;
                    properties.Save(true);
                    player.sendMessage("You have set the validated point", chatColor);
                }

                Event.Cancelled                = true;
                player.PluginData["lobby"]     = false;
                player.PluginData["validated"] = false;
            }
            else
            {
                if (Event.Tile.Type != 29 || !banPiggyBanks)
                {
                    Event.Cancelled = CancelEvent(Event.Sender.Name);
                }

                if (Event.Tile.Type == 97 && banSafes)
                {
                    player.sendMessage("Safes are banned on this server", chatColor);
                    Event.Cancelled = true;
                }

                base.onPlayerTileChange(Event);

                if (Event.Tile.Type == 29 && banPiggyBanks)
                {
                    for (int i = (int)Event.Position.X; i <= (int)Event.Position.X + 1; i++)
                    {
                        Terraria_Server.WorldMod.WorldModify.KillTile(i, (int)Event.Position.Y);
                        Terraria_Server.WorldMod.WorldModify.meteor(i, (int)Event.Position.Y);
                        NetMessage.SendTileSquare(Server.GetPlayerByName(Event.Sender.Name).whoAmi, i, (int)Event.Position.Y, 1);
                        player.sendMessage("Piggy banks are banned on this server", chatColor);
                    }
                }
            }
        }
Ejemplo n.º 3
0
        public override void onPlayerTileChange(PlayerTileChangeEvent Event)
        {
            int player = ((Player)Event.Sender).whoAmi;
            var region = IsPointInRegion(Event.Position);

            if (region != null && !IsPlayerRegionMember(player, region))
            {
                Event.Sender.sendMessage("This area is protected!");
                Event.Cancelled = true;
                return;
            }
            return;
        }