Merge branch 'master' of ssh://184.154.0.242:7999/min/mineplex into HEAD
Conflicts: Plugins/Mineplex.Core/src/mineplex/core/gadget/gadgets/ParticleBlizzard.java
This commit is contained in:
parent
0e7dec919d
commit
98b614848d
@ -7,7 +7,9 @@ import java.io.InputStreamReader;
|
||||
import java.net.URL;
|
||||
import java.nio.charset.Charset;
|
||||
import java.security.cert.X509Certificate;
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
import java.util.UUID;
|
||||
|
||||
import javax.net.ssl.HostnameVerifier;
|
||||
import javax.net.ssl.HttpsURLConnection;
|
||||
@ -17,6 +19,7 @@ import javax.net.ssl.TrustManager;
|
||||
import javax.net.ssl.X509TrustManager;
|
||||
|
||||
import mineplex.core.MiniPlugin;
|
||||
import mineplex.core.chat.command.ChatSlowCommand;
|
||||
import mineplex.core.preferences.PreferencesManager;
|
||||
import mineplex.core.recharge.Recharge;
|
||||
import mineplex.core.updater.event.UpdateEvent;
|
||||
@ -57,9 +60,10 @@ public class Chat extends MiniPlugin
|
||||
//private String _authName = "";
|
||||
private String _serverName;
|
||||
|
||||
private int _chatSlow = 0;
|
||||
private long _silenced = 0;
|
||||
|
||||
private NautHashMap<String, String> _playerLastMessage = new NautHashMap<String, String>();
|
||||
private HashMap<UUID, MessageData> _playerLastMessage = new HashMap<UUID, MessageData>();
|
||||
|
||||
public Chat(JavaPlugin plugin, CoreClientManager clientManager, PreferencesManager preferences, String serverName)
|
||||
{
|
||||
@ -84,6 +88,23 @@ public class Chat extends MiniPlugin
|
||||
{
|
||||
addCommand(new SilenceCommand(this));
|
||||
addCommand(new BroadcastCommand(this));
|
||||
addCommand(new ChatSlowCommand(this));
|
||||
}
|
||||
|
||||
public void setChatSlow(int seconds, boolean inform)
|
||||
{
|
||||
if (seconds < 0)
|
||||
seconds = 0;
|
||||
|
||||
_chatSlow = seconds;
|
||||
|
||||
if (inform)
|
||||
{
|
||||
if (seconds == 0)
|
||||
UtilServer.broadcast(F.main("Chat", "Chat Slow is now disabled"));
|
||||
else
|
||||
UtilServer.broadcast(F.main("Chat", "Chat slow is now enabled with a cooldown of " + F.time(seconds + " seconds")));
|
||||
}
|
||||
}
|
||||
|
||||
public void Silence(long duration, boolean inform)
|
||||
@ -290,17 +311,26 @@ public class Chat extends MiniPlugin
|
||||
UtilPlayer.message(sender, F.main("Chat", "You are sending messages too fast."));
|
||||
event.setCancelled(true);
|
||||
}
|
||||
else if (_playerLastMessage.containsKey(sender.getUniqueId()))
|
||||
{
|
||||
MessageData lastMessage = _playerLastMessage.get(sender.getUniqueId());
|
||||
long chatSlowTime = 1000L * _chatSlow;
|
||||
long timeDiff = System.currentTimeMillis() - lastMessage.getTimeSent();
|
||||
if (timeDiff < chatSlowTime && !_clientManager.Get(sender).GetRank().Has(Rank.HELPER))
|
||||
{
|
||||
UtilPlayer.message(sender, F.main("Chat", "Chat slow enabled. Please wait " + F.time(UtilTime.convertString(chatSlowTime - timeDiff, 1, UtilTime.TimeUnit.FIT))));
|
||||
event.setCancelled(true);
|
||||
}
|
||||
else if (!_clientManager.Get(sender).GetRank().Has(Rank.MODERATOR) &&
|
||||
_playerLastMessage.containsKey(sender.getName()) &&
|
||||
_playerLastMessage.get(sender.getName()).equalsIgnoreCase(event.getMessage()))
|
||||
lastMessage.getMessage().equalsIgnoreCase(event.getMessage()))
|
||||
{
|
||||
UtilPlayer.message(sender, F.main("Chat", "You can't repeat the same message."));
|
||||
event.setCancelled(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
_playerLastMessage.put(sender.getName(), event.getMessage());
|
||||
}
|
||||
|
||||
if (!event.isCancelled())
|
||||
_playerLastMessage.put(sender.getUniqueId(), new MessageData(event.getMessage()));
|
||||
}
|
||||
|
||||
public String hasher(JSONArray hasharray, String message)
|
||||
@ -530,6 +560,6 @@ public class Chat extends MiniPlugin
|
||||
@EventHandler
|
||||
public void playerQuit(PlayerQuitEvent event)
|
||||
{
|
||||
_playerLastMessage.remove(event.getPlayer().getName());
|
||||
_playerLastMessage.remove(event.getPlayer().getUniqueId());
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,28 @@
|
||||
package mineplex.core.chat;
|
||||
|
||||
public class MessageData
|
||||
{
|
||||
private String _message;
|
||||
private long _timeSent;
|
||||
|
||||
public MessageData(String message)
|
||||
{
|
||||
this(message, System.currentTimeMillis());
|
||||
}
|
||||
|
||||
public MessageData(String message, long timeSent)
|
||||
{
|
||||
_message = message;
|
||||
_timeSent = timeSent;
|
||||
}
|
||||
|
||||
public String getMessage()
|
||||
{
|
||||
return _message;
|
||||
}
|
||||
|
||||
public long getTimeSent()
|
||||
{
|
||||
return _timeSent;
|
||||
}
|
||||
}
|
@ -0,0 +1,51 @@
|
||||
package mineplex.core.chat.command;
|
||||
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import mineplex.core.chat.Chat;
|
||||
import mineplex.core.command.CommandBase;
|
||||
import mineplex.core.common.Rank;
|
||||
import mineplex.core.common.util.F;
|
||||
import mineplex.core.common.util.UtilPlayer;
|
||||
|
||||
public class ChatSlowCommand extends CommandBase<Chat>
|
||||
{
|
||||
public ChatSlowCommand(Chat plugin)
|
||||
{
|
||||
super(plugin, Rank.SNR_MODERATOR, "chatslow");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void Execute(Player caller, String[] args)
|
||||
{
|
||||
if (args != null && args.length == 1)
|
||||
{
|
||||
try
|
||||
{
|
||||
int seconds = Integer.parseInt(args[0]);
|
||||
|
||||
if (seconds < 0)
|
||||
{
|
||||
UtilPlayer.message(caller, F.main("Chat", "Seconds must be a positive integer"));
|
||||
return;
|
||||
}
|
||||
|
||||
Plugin.setChatSlow(seconds, true);
|
||||
UtilPlayer.message(caller, F.main("Chat", "Set chat slow to " + F.time(seconds + " seconds")));
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
showUsage(caller);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
showUsage(caller);
|
||||
}
|
||||
}
|
||||
|
||||
private void showUsage(Player caller)
|
||||
{
|
||||
UtilPlayer.message(caller, F.main("Chat", "Usage: /chatslow <seconds>"));
|
||||
}
|
||||
}
|
@ -12,6 +12,7 @@ import mineplex.core.updater.event.UpdateEvent;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.EventPriority;
|
||||
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
|
||||
import org.bukkit.event.player.PlayerQuitEvent;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
@ -25,6 +26,8 @@ public class LagMeter extends MiniPlugin
|
||||
private double _ticksPerSecondAverage;
|
||||
private long _lastAverage;
|
||||
|
||||
private long _lastTick = 0;
|
||||
|
||||
private HashSet<Player> _monitoring = new HashSet<Player>();
|
||||
|
||||
public LagMeter(JavaPlugin plugin, CoreClientManager clientManager)
|
||||
|
@ -518,7 +518,7 @@ public class HubManager extends MiniClientPlugin<HubClient>
|
||||
UtilTabTitle.setHeaderAndFooter(player, " ", "Visit " + C.cGreen + "www.mineplex.com" + ChatColor.RESET + " for News, Forums and Shop");
|
||||
|
||||
//Public Message
|
||||
if (_clientManager.Get(player).GetRank() != Rank.OWNER)
|
||||
if (_clientManager.Get(player).GetRank() != Rank.LEGEND)
|
||||
event.setJoinMessage(null);
|
||||
else
|
||||
{
|
||||
|
@ -58,7 +58,7 @@ public class ParkourManager extends MiniPlugin
|
||||
|
||||
private HashSet<ParkourData> _parkour = new HashSet<ParkourData>();
|
||||
|
||||
private Location _snakeParkourReturn;
|
||||
//private Location _snakeParkourReturn;
|
||||
private Location _lavaParkourReturn;
|
||||
private WeakHashMap<Player, Location> _lavaLocation = new WeakHashMap<Player, Location>();
|
||||
private WeakHashMap<Player, Long> _lavaTimer = new WeakHashMap<Player, Long>();
|
||||
@ -94,19 +94,19 @@ public class ParkourManager extends MiniPlugin
|
||||
}, 4000, new Location(Manager.GetSpawn().getWorld(), -93,67,38),
|
||||
new Location(Manager.GetSpawn().getWorld(), -86,100,42), new Location(Manager.GetSpawn().getWorld(), -120,50,-17)));
|
||||
|
||||
_parkour.add(new ParkourSnake("Snake Parkour", new String[]
|
||||
{
|
||||
"This parkour requires incredible timing",
|
||||
"and great agility! Some say it was created",
|
||||
"by the devil as a cruel joke!"
|
||||
}, 8000, new Location(Manager.GetSpawn().getWorld(), 22,70,-54),
|
||||
new Location(Manager.GetSpawn().getWorld(), 35,-200,-90), new Location(Manager.GetSpawn().getWorld(), -30,250,-46)));
|
||||
// _parkour.add(new ParkourSnake("Snake Parkour", new String[]
|
||||
// {
|
||||
// "This parkour requires incredible timing",
|
||||
// "and great agility! Some say it was created",
|
||||
// "by the devil as a cruel joke!"
|
||||
// }, 8000, new Location(Manager.GetSpawn().getWorld(), 22,70,-54),
|
||||
// new Location(Manager.GetSpawn().getWorld(), 35,-200,-90), new Location(Manager.GetSpawn().getWorld(), -30,250,-46)));
|
||||
|
||||
_lavaParkourReturn = new Location(Manager.GetSpawn().getWorld(), -89.5,68,36.5);
|
||||
_lavaParkourReturn.setYaw(90);
|
||||
|
||||
_snakeParkourReturn = new Location(Manager.GetSpawn().getWorld(), 16.5,72,-52.5);
|
||||
_snakeParkourReturn.setYaw(180);
|
||||
//_snakeParkourReturn = new Location(Manager.GetSpawn().getWorld(), 16.5,72,-52.5);
|
||||
//_snakeParkourReturn.setYaw(180);
|
||||
}
|
||||
|
||||
public boolean isParkourMode(Player player)
|
||||
@ -259,24 +259,24 @@ public class ParkourManager extends MiniPlugin
|
||||
event.getEntity().teleport(_lavaParkourReturn);
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.HIGHEST)
|
||||
public void snakeReturn(EntityDamageEvent event)
|
||||
{
|
||||
if (event.getCause() != DamageCause.VOID)
|
||||
return;
|
||||
|
||||
if (!(event.getEntity() instanceof Player))
|
||||
return;
|
||||
|
||||
Player player = (Player)event.getEntity();
|
||||
|
||||
if (!isParkourMode(player))
|
||||
return;
|
||||
|
||||
event.getEntity().eject();
|
||||
event.getEntity().leaveVehicle();
|
||||
event.getEntity().teleport(_snakeParkourReturn);
|
||||
}
|
||||
// @EventHandler(priority = EventPriority.HIGHEST)
|
||||
// public void snakeReturn(EntityDamageEvent event)
|
||||
// {
|
||||
// if (event.getCause() != DamageCause.VOID)
|
||||
// return;
|
||||
//
|
||||
// if (!(event.getEntity() instanceof Player))
|
||||
// return;
|
||||
//
|
||||
// Player player = (Player)event.getEntity();
|
||||
//
|
||||
// if (!isParkourMode(player))
|
||||
// return;
|
||||
//
|
||||
// event.getEntity().eject();
|
||||
// event.getEntity().leaveVehicle();
|
||||
// event.getEntity().teleport(_snakeParkourReturn);
|
||||
// }
|
||||
|
||||
@EventHandler
|
||||
public void lavaBlockReturn(UpdateEvent event)
|
||||
@ -458,14 +458,14 @@ public class ParkourManager extends MiniPlugin
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void snakeUpdate(UpdateEvent event)
|
||||
{
|
||||
if (event.getType() != UpdateType.FASTER)
|
||||
return;
|
||||
|
||||
for (ParkourData parkour : _parkour)
|
||||
if (parkour instanceof ParkourSnake)
|
||||
((ParkourSnake)parkour).Update();
|
||||
}
|
||||
// @EventHandler
|
||||
// public void snakeUpdate(UpdateEvent event)
|
||||
// {
|
||||
// if (event.getType() != UpdateType.FASTER)
|
||||
// return;
|
||||
//
|
||||
// for (ParkourData parkour : _parkour)
|
||||
// if (parkour instanceof ParkourSnake)
|
||||
// ((ParkourSnake)parkour).Update();
|
||||
// }
|
||||
}
|
||||
|
@ -228,7 +228,7 @@ public class WorldManager extends MiniPlugin
|
||||
@EventHandler
|
||||
public void UpdateWeather(UpdateEvent event)
|
||||
{
|
||||
if (event.getType() != UpdateType.TICK)
|
||||
if (event.getType() != UpdateType.SEC)
|
||||
return;
|
||||
|
||||
World world = UtilWorld.getWorld("world");
|
||||
|
@ -13,6 +13,7 @@ import mineplex.core.common.util.UtilEvent;
|
||||
import mineplex.core.common.util.UtilGear;
|
||||
import mineplex.core.common.util.UtilPlayer;
|
||||
import mineplex.core.common.util.UtilServer;
|
||||
import mineplex.core.common.util.UtilWorld;
|
||||
import mineplex.core.disguise.DisguiseManager;
|
||||
import mineplex.core.npc.NpcManager;
|
||||
import mineplex.minecraft.game.core.combat.CombatManager;
|
||||
@ -103,6 +104,8 @@ public class DamageManager extends MiniPlugin
|
||||
//New Event
|
||||
NewDamageEvent(damagee, damager, projectile, event.getCause(), event.getDamage(), true, false, false, null, null, preCancel);
|
||||
|
||||
System.out.println(UtilEnt.getName(damagee) + " by " + event.getCause() + " at " + UtilWorld.locToStr(damagee.getLocation()));
|
||||
|
||||
event.setCancelled(true);
|
||||
}
|
||||
|
||||
|
@ -9,9 +9,11 @@ import java.util.UUID;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Color;
|
||||
import org.bukkit.GameMode;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.OfflinePlayer;
|
||||
import org.bukkit.Sound;
|
||||
import org.bukkit.craftbukkit.v1_7_R4.entity.CraftEntity;
|
||||
import org.bukkit.craftbukkit.v1_7_R4.entity.CraftPlayer;
|
||||
import org.bukkit.entity.EntityType;
|
||||
@ -39,6 +41,7 @@ import mineplex.core.chat.Chat;
|
||||
import mineplex.core.common.Rank;
|
||||
import mineplex.core.common.util.C;
|
||||
import mineplex.core.common.util.F;
|
||||
import mineplex.core.common.util.UtilFirework;
|
||||
import mineplex.core.common.util.UtilGear;
|
||||
import mineplex.core.common.util.UtilInv;
|
||||
import mineplex.core.common.util.UtilPlayer;
|
||||
@ -562,7 +565,18 @@ public class ArcadeManager extends MiniPlugin implements IRelation
|
||||
public void MessageJoin(PlayerJoinEvent event)
|
||||
{
|
||||
if (_game == null || _game.AnnounceJoinQuit)
|
||||
event.setJoinMessage(F.sys("Join", event.getPlayer().getName()));
|
||||
{
|
||||
Player player = event.getPlayer();
|
||||
|
||||
if (_clientManager.Get(player).GetRank() != Rank.LEGEND)
|
||||
event.setJoinMessage(null);
|
||||
else
|
||||
{
|
||||
event.setJoinMessage(C.cGreen + C.Bold + "Legend " + player.getName() + " has joined!");
|
||||
UtilFirework.playFirework(player.getEyeLocation(), org.bukkit.FireworkEffect.Type.BALL_LARGE, Color.LIME, true, true);
|
||||
player.getWorld().playSound(player.getEyeLocation(), Sound.WITHER_SPAWN, 2f, 1f);
|
||||
}
|
||||
}
|
||||
else
|
||||
event.setJoinMessage(null);
|
||||
}
|
||||
|
@ -112,7 +112,7 @@ public class Draw extends SoloGame
|
||||
|
||||
_words = new String[]
|
||||
{
|
||||
"Bird", "Volcano", "Love", "Dance", "Hair", "Glasses", "Domino", "Dice", "Computer", "Top Hat", "Beard", "Wind", "Rain", "Minecraft", "Push", "Fighting", "Juggle", "Clown", "Miner", "Creeper", "Ghast", "Spider", "Punch", "Roll", "River", "Desert", "Cold", "Pregnant", "Photo", "Quick", "Mario", "Luigi", "Bridge", "Turtle", "Door Knob", "Mineplex", "Binoculars", "Telescope", "Planet", "Mountain Bike", "Moon", "Comet", "Flower", "Squirrel", "Horse Riding", "Chef", "Elephant", "Yoshi", "Shotgun", "Pistol", "James Bond", "Money", "Salt and Pepper", "Truck", "Helicopter", "Hot Air Balloon", "Sprout", "Yelling", "Muscles", "Skinny", "Zombie", "Lava", "Snake", "Motorbike", "Whale", "Boat", "Letterbox", "Window", "Lollipop", "Handcuffs", "Police", "Uppercut", "Windmill", "Eyepatch", "Campfire", "Rainbow", "Storm", "Pikachu", "Charmander", "Tornado", "Crying", "King", "Hobo", "Worm", "Snail", "XBox", "Playstation", "Nintendo", "Duck", "Pull", "Dinosaur", "Alligator", "Ankle", "Angel", "Acorn", "Bread", "Booty", "Bacon", "Crown", "Donut", "Drill", "Crack", "Leash", "Magic", "Wizard", "Igloo", "Plant", "Screw", "Rifle", "Puppy", "Stool", "Stamp", "Letter", "Witch", "Zebra", "Wagon", "Compass", "Watch", "Clock", "Time", "Cyclops", "Coconut", "Hang", "Penguin", "Confused", "Bucket", "Lion", "Rubbish", "Spaceship", "Bowl", "Shark", "Pizza", "Pyramid", "Dress", "Pants", "Shorts", "Boots", "Boy", "Girl", "Math", "Sunglasses", "Frog", "Chair", "Cake", "Grapes", "Kiss", "Snorlax", "Earth", "Spaghetti", "Couch", "Family", "Milk", "Blood", "Pig", "Giraffe", "Mouse", "Couch", "Fat", "Chocolate", "Camel", "Cheese", "Beans", "Water", "Chicken", "Cannibal", "Zipper", "Book", "Swimming", "Horse", "Paper", "Toaster", "Television", "Hammer", "Piano", "Sleeping", "Yawn", "Sheep", "Night", "Chest", "Lamp", "Redstone", "Grass", "Plane", "Ocean", "Lake", "Melon", "Pumpkin", "Gift", "Fishing", "Pirate", "Lightning", "Stomach", "Belly Button", "Fishing Rod", "Iron Ore", "Diamonds", "Emeralds", "Nether Portal", "Ender Dragon", "Rabbit", "Harry Potter", "Torch", "Light", "Battery", "Zombie Pigman", "Telephone", "Tent", "Hand", "Traffic Lights", "Anvil", "Tail", "Umbrella", "Piston", "Skeleton", "Spikes", "Bridge", "Bomb", "Spoon", "Rainbow", "Staircase", "Poop", "Dragon", "Fire", "Apple", "Shoe", "Squid", "Cookie", "Tooth", "Camera", "Sock", "Monkey", "Unicorn", "Smile", "Pool", "Rabbit", "Cupcake", "Pancake", "Princess", "Castle", "Flag", "Planet", "Stars", "Camp Fire", "Rose", "Spray", "Pencil", "Ice Cream", "Toilet", "Moose", "Bear", "Beer", "Batman", "Eggs", "Teapot", "Golf Club", "Tennis Racket", "Shield", "Crab", "Pot of Gold", "Cactus", "Television", "Pumpkin Pie", "Chimney", "Stable", "Nether", "Wither", "Beach", "Stop Sign", "Chestplate", "Pokeball", "Christmas Tree", "Present", "Snowflake", "Laptop", "Superman", "Football", "Basketball", "Creeper", "Tetris", "Jump", "Ninja", "Baby", "Troll Face", "Grim Reaper", "Temple", "Explosion", "Vomit", "Ants", "Barn", "Burn", "Baggage", "Frisbee", "Iceberg", "Sleeping", "Dream", "Snorlax", "Balloons", "Elevator", "Alligator", "Bikini", "Butterfly", "Bumblebee", "Pizza", "Jellyfish", "Sideburns", "Speedboat", "Treehouse", "Water Gun", "Drink", "Hook", "Dance", "Fall", "Summer", "Autumn", "Spring", "Winter", "Night Time", "Galaxy", "Sunrise", "Sunset", "Picnic", "Snowflake", "Holding Hands", "America", "Laptop", "Anvil", "Bagel", "Bench", "Cigar", "Darts", "Muffin", "Queen", "Wheat", "Dolphin", "Scarf", "Swing", "Thumb", "Tomato", "Alcohol", "Armor", "Alien", "Beans", "Cheek", "Phone", "Keyboard", "Orange", "Calculator", "Paper", "Desk", "Disco", "Elbow", "Drool", "Giant", "Golem", "Grave", "Llama", "Moose", "Party", "Panda", "Plumber", "Salsa", "Salad", "Skunk", "Skull", "Stump", "Sugar", "Ruler", "Bookcase", "Hamster", "Soup", "Teapot", "Towel", "Waist", "Archer", "Anchor", "Bamboo", "Branch", "Booger", "Carrot", "Cereal", "Coffee", "Wolf", "Crayon", "Finger", "Forest", "Hotdog", "Burger", "Obsidian", "Pillow", "Swing", "YouTube", "Farm", "Rain", "Cloud", "Frozen", "Garbage", "Music", "Twitter", "Facebook", "Santa Hat", "Rope", "Neck", "Sponge", "Sushi", "Noodles", "Soup", "Tower", "Berry", "Capture", "Prison", "Robot", "Trash", "School", "Skype", "Snowman", "Crowd", "Bank", "Mudkip", "Joker", "Lizard", "Tiger", "Royal", "Erupt", "Wizard", "Stain", "Cinema", "Notebook", "Blanket", "Paint", "Guard", "Astronaut" , "Slime" , "Mansion" , "Radar" , "Thorn" , "Tears" , "Tiny" , "Candy" , "Pepsi" , "Flint" , "Draw My Thing" , "Rice" , "Shout" , "Prize" , "Skirt" , "Thief" , "Syrup" , "Kirby" , "Brush" , "Violin",
|
||||
"Bird", "Volcano", "Love", "Dance", "Hair", "Glasses", "Domino", "Dice", "Computer", "Top Hat", "Beard", "Wind", "Rain", "Minecraft", "Push", "Fighting", "Juggle", "Clown", "Miner", "Creeper", "Ghast", "Spider", "Punch", "Roll", "River", "Desert", "Cold", "Pregnant", "Photo", "Quick", "Mario", "Luigi", "Bridge", "Turtle", "Door Knob", "Mineplex", "Binoculars", "Telescope", "Planet", "Mountain Bike", "Moon", "Comet", "Flower", "Squirrel", "Horse Riding", "Chef", "Elephant", "Yoshi", "Shotgun", "Pistol", "James Bond", "Money", "Salt and Pepper", "Truck", "Helicopter", "Hot Air Balloon", "Sprout", "Yelling", "Muscles", "Skinny", "Zombie", "Lava", "Snake", "Motorbike", "Whale", "Boat", "Letterbox", "Window", "Lollipop", "Handcuffs", "Police", "Uppercut", "Windmill", "Eyepatch", "Campfire", "Rainbow", "Storm", "Pikachu", "Charmander", "Tornado", "Crying", "King", "Hobo", "Worm", "Snail", "XBox", "Playstation", "Nintendo", "Duck", "Pull", "Dinosaur", "Alligator", "Ankle", "Angel", "Acorn", "Bread", "Booty", "Bacon", "Crown", "Donut", "Drill", "Leash", "Magic", "Wizard", "Igloo", "Plant", "Screw", "Rifle", "Puppy", "Stool", "Stamp", "Letter", "Witch", "Zebra", "Wagon", "Compass", "Watch", "Clock", "Time", "Cyclops", "Coconut", "Hang", "Penguin", "Confused", "Bucket", "Lion", "Rubbish", "Spaceship", "Bowl", "Shark", "Pizza", "Pyramid", "Dress", "Pants", "Shorts", "Boots", "Boy", "Girl", "Math", "Sunglasses", "Frog", "Chair", "Cake", "Grapes", "Kiss", "Snorlax", "Earth", "Spaghetti", "Couch", "Family", "Milk", "Blood", "Pig", "Giraffe", "Mouse", "Couch", "Fat", "Chocolate", "Camel", "Cheese", "Beans", "Water", "Chicken", "Cannibal", "Zipper", "Book", "Swimming", "Horse", "Paper", "Toaster", "Television", "Hammer", "Piano", "Sleeping", "Yawn", "Sheep", "Night", "Chest", "Lamp", "Redstone", "Grass", "Plane", "Ocean", "Lake", "Melon", "Pumpkin", "Gift", "Fishing", "Pirate", "Lightning", "Stomach", "Belly Button", "Fishing Rod", "Iron Ore", "Diamonds", "Emeralds", "Nether Portal", "Ender Dragon", "Rabbit", "Harry Potter", "Torch", "Light", "Battery", "Zombie Pigman", "Telephone", "Tent", "Hand", "Traffic Lights", "Anvil", "Tail", "Umbrella", "Piston", "Skeleton", "Spikes", "Bridge", "Bomb", "Spoon", "Rainbow", "Staircase", "Poop", "Dragon", "Fire", "Apple", "Shoe", "Squid", "Cookie", "Tooth", "Camera", "Sock", "Monkey", "Unicorn", "Smile", "Pool", "Rabbit", "Cupcake", "Pancake", "Princess", "Castle", "Flag", "Planet", "Stars", "Camp Fire", "Rose", "Spray", "Pencil", "Ice Cream", "Toilet", "Moose", "Bear", "Beer", "Batman", "Eggs", "Teapot", "Golf Club", "Tennis Racket", "Shield", "Crab", "Pot of Gold", "Cactus", "Television", "Pumpkin Pie", "Chimney", "Stable", "Nether", "Wither", "Beach", "Stop Sign", "Chestplate", "Pokeball", "Christmas Tree", "Present", "Snowflake", "Laptop", "Superman", "Football", "Basketball", "Creeper", "Tetris", "Jump", "Ninja", "Baby", "Troll Face", "Grim Reaper", "Temple", "Explosion", "Vomit", "Ants", "Barn", "Burn", "Baggage", "Frisbee", "Iceberg", "Sleeping", "Dream", "Snorlax", "Balloons", "Elevator", "Alligator", "Bikini", "Butterfly", "Bumblebee", "Pizza", "Jellyfish", "Sideburns", "Speedboat", "Treehouse", "Water Gun", "Drink", "Hook", "Dance", "Fall", "Summer", "Autumn", "Spring", "Winter", "Night Time", "Galaxy", "Sunrise", "Sunset", "Picnic", "Snowflake", "Holding Hands", "America", "Laptop", "Anvil", "Bagel", "Bench", "Cigar", "Darts", "Muffin", "Queen", "Wheat", "Dolphin", "Scarf", "Swing", "Thumb", "Tomato", "Alcohol", "Armor", "Alien", "Beans", "Cheek", "Phone", "Keyboard", "Orange", "Calculator", "Paper", "Desk", "Disco", "Elbow", "Drool", "Giant", "Golem", "Grave", "Llama", "Moose", "Party", "Panda", "Plumber", "Salsa", "Salad", "Skunk", "Skull", "Stump", "Sugar", "Ruler", "Bookcase", "Hamster", "Soup", "Teapot", "Towel", "Waist", "Archer", "Anchor", "Bamboo", "Branch", "Booger", "Carrot", "Cereal", "Coffee", "Wolf", "Crayon", "Finger", "Forest", "Hotdog", "Burger", "Obsidian", "Pillow", "Swing", "YouTube", "Farm", "Rain", "Cloud", "Frozen", "Garbage", "Music", "Twitter", "Facebook", "Santa Hat", "Rope", "Neck", "Sponge", "Sushi", "Noodles", "Soup", "Tower", "Berry", "Capture", "Prison", "Robot", "Trash", "School", "Skype", "Snowman", "Crowd", "Bank", "Mudkip", "Joker", "Lizard", "Tiger", "Royal", "Erupt", "Wizard", "Stain", "Cinema", "Notebook", "Blanket", "Paint", "Guard", "Astronaut" , "Slime" , "Mansion" , "Radar" , "Thorn" , "Tears" , "Tiny" , "Candy" , "Pepsi" , "Flint" , "Draw My Thing" , "Rice" , "Shout" , "Prize" , "Skirt" , "Thief" , "Syrup" , "Kirby" , "Brush" , "Violin",
|
||||
};
|
||||
|
||||
_tools = new HashSet<Tool>();
|
||||
|
Loading…
Reference in New Issue
Block a user