diff --git a/pom.xml b/pom.xml index 590e215..340f0f8 100644 --- a/pom.xml +++ b/pom.xml @@ -117,6 +117,10 @@ Essentials http://repo.ess3.net/content/repositories/essrel/ + + projectlombok.org + http://projectlombok.org/mavenrepo + @@ -129,7 +133,7 @@ org.spigotmc spigot-api - 1.11-R0.1-SNAPSHOT + 1.12-R0.1-SNAPSHOT provided @@ -154,7 +158,7 @@ com.github.milkbowl VaultAPI - master-SNAPSHOT + master-SNAPSHOT provided @@ -167,5 +171,12 @@ D4J-OAuth master-SNAPSHOT + + + org.projectlombok + lombok + 1.16.16 + provided + diff --git a/src/main/java/buttondevteam/discordplugin/DiscordConnectedPlayer.java b/src/main/java/buttondevteam/discordplugin/DiscordConnectedPlayer.java new file mode 100644 index 0000000..0ac9e14 --- /dev/null +++ b/src/main/java/buttondevteam/discordplugin/DiscordConnectedPlayer.java @@ -0,0 +1,1854 @@ +package buttondevteam.discordplugin; + +import java.net.InetSocketAddress; +import java.util.Collection; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.UUID; + +import org.bukkit.Achievement; +import org.bukkit.Effect; +import org.bukkit.EntityEffect; +import org.bukkit.GameMode; +import org.bukkit.Instrument; +import org.bukkit.Location; +import org.bukkit.Material; +import org.bukkit.Note; +import org.bukkit.Particle; +import org.bukkit.Server; +import org.bukkit.Sound; +import org.bukkit.SoundCategory; +import org.bukkit.Statistic; +import org.bukkit.WeatherType; +import org.bukkit.World; +import org.bukkit.advancement.Advancement; +import org.bukkit.advancement.AdvancementProgress; +import org.bukkit.attribute.Attribute; +import org.bukkit.attribute.AttributeInstance; +import org.bukkit.block.Block; +import org.bukkit.block.PistonMoveReaction; +import org.bukkit.conversations.Conversation; +import org.bukkit.conversations.ConversationAbandonedEvent; +import org.bukkit.entity.Entity; +import org.bukkit.entity.EntityType; +import org.bukkit.entity.Player; +import org.bukkit.entity.Projectile; +import org.bukkit.entity.Villager; +import org.bukkit.event.entity.EntityDamageEvent; +import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause; +import org.bukkit.inventory.EntityEquipment; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.InventoryView; +import org.bukkit.inventory.InventoryView.Property; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.MainHand; +import org.bukkit.inventory.Merchant; +import org.bukkit.inventory.PlayerInventory; +import org.bukkit.map.MapView; +import org.bukkit.metadata.MetadataValue; +import org.bukkit.permissions.Permission; +import org.bukkit.permissions.PermissionAttachment; +import org.bukkit.permissions.PermissionAttachmentInfo; +import org.bukkit.plugin.Plugin; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import org.bukkit.scoreboard.Scoreboard; +import org.bukkit.util.Vector; + +public class DiscordConnectedPlayer implements Player { + + @Override + public void closeInventory() { + } + + @Override + public int getCooldown(Material arg0) { + return 0; + } + + @Override + public Inventory getEnderChest() { + // TODO Auto-generated method stub + return null; + } + + @Override + public int getExpToLevel() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public GameMode getGameMode() { + // TODO Auto-generated method stub + return null; + } + + @Override + public PlayerInventory getInventory() { + // TODO Auto-generated method stub + return null; + } + + @Override + public ItemStack getItemInHand() { + // TODO Auto-generated method stub + return null; + } + + @Override + public ItemStack getItemOnCursor() { + // TODO Auto-generated method stub + return null; + } + + @Override + public MainHand getMainHand() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getName() { + // TODO Auto-generated method stub + return null; + } + + @Override + public InventoryView getOpenInventory() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Entity getShoulderEntityLeft() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Entity getShoulderEntityRight() { + // TODO Auto-generated method stub + return null; + } + + @Override + public int getSleepTicks() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public boolean hasCooldown(Material arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isBlocking() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isHandRaised() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isSleeping() { + // TODO Auto-generated method stub + return false; + } + + @Override + public InventoryView openEnchanting(Location arg0, boolean arg1) { + // TODO Auto-generated method stub + return null; + } + + @Override + public InventoryView openInventory(Inventory arg0) { + // TODO Auto-generated method stub + return null; + } + + @Override + public void openInventory(InventoryView arg0) { + // TODO Auto-generated method stub + + } + + @Override + public InventoryView openMerchant(Villager arg0, boolean arg1) { + // TODO Auto-generated method stub + return null; + } + + @Override + public InventoryView openMerchant(Merchant arg0, boolean arg1) { + // TODO Auto-generated method stub + return null; + } + + @Override + public InventoryView openWorkbench(Location arg0, boolean arg1) { + // TODO Auto-generated method stub + return null; + } + + @Override + public void setCooldown(Material arg0, int arg1) { + // TODO Auto-generated method stub + + } + + @Override + public void setGameMode(GameMode arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setItemInHand(ItemStack arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setItemOnCursor(ItemStack arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setShoulderEntityLeft(Entity arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setShoulderEntityRight(Entity arg0) { + // TODO Auto-generated method stub + + } + + @Override + public boolean setWindowProperty(Property arg0, int arg1) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean addPotionEffect(PotionEffect arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean addPotionEffect(PotionEffect arg0, boolean arg1) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean addPotionEffects(Collection arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public Collection getActivePotionEffects() { + // TODO Auto-generated method stub + return null; + } + + @Override + public boolean getCanPickupItems() { + // TODO Auto-generated method stub + return false; + } + + @Override + public EntityEquipment getEquipment() { + // TODO Auto-generated method stub + return null; + } + + @Override + public double getEyeHeight() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public double getEyeHeight(boolean arg0) { + // TODO Auto-generated method stub + return 0; + } + + @Override + public Location getEyeLocation() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Player getKiller() { + // TODO Auto-generated method stub + return null; + } + + @Override + public double getLastDamage() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public List getLastTwoTargetBlocks(HashSet arg0, int arg1) { + // TODO Auto-generated method stub + return null; + } + + @Override + public List getLastTwoTargetBlocks(Set arg0, int arg1) { + // TODO Auto-generated method stub + return null; + } + + @Override + public Entity getLeashHolder() throws IllegalStateException { + // TODO Auto-generated method stub + return null; + } + + @Override + public List getLineOfSight(Set arg0, int arg1) { + // TODO Auto-generated method stub + return null; + } + + @Override + public int getMaximumAir() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public int getMaximumNoDamageTicks() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public int getNoDamageTicks() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public PotionEffect getPotionEffect(PotionEffectType arg0) { + // TODO Auto-generated method stub + return null; + } + + @Override + public int getRemainingAir() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public boolean getRemoveWhenFarAway() { + // TODO Auto-generated method stub + return false; + } + + @Override + public Block getTargetBlock(HashSet arg0, int arg1) { + // TODO Auto-generated method stub + return null; + } + + @Override + public Block getTargetBlock(Set arg0, int arg1) { + // TODO Auto-generated method stub + return null; + } + + @Override + public boolean hasAI() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean hasLineOfSight(Entity arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean hasPotionEffect(PotionEffectType arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isCollidable() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isGliding() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isLeashed() { + // TODO Auto-generated method stub + return false; + } + + @Override + public void removePotionEffect(PotionEffectType arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setAI(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setCanPickupItems(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setCollidable(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setGliding(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setLastDamage(double arg0) { + // TODO Auto-generated method stub + + } + + @Override + public boolean setLeashHolder(Entity arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public void setMaximumAir(int arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setMaximumNoDamageTicks(int arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setNoDamageTicks(int arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setRemainingAir(int arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setRemoveWhenFarAway(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public AttributeInstance getAttribute(Attribute arg0) { + // TODO Auto-generated method stub + return null; + } + + @Override + public boolean addPassenger(Entity arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean addScoreboardTag(String arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean eject() { + // TODO Auto-generated method stub + return false; + } + + @Override + public int getEntityId() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public float getFallDistance() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public int getFireTicks() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public double getHeight() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public EntityDamageEvent getLastDamageCause() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Location getLocation() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Location getLocation(Location arg0) { + // TODO Auto-generated method stub + return null; + } + + @Override + public int getMaxFireTicks() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public List getNearbyEntities(double arg0, double arg1, double arg2) { + // TODO Auto-generated method stub + return null; + } + + @Override + public Entity getPassenger() { + // TODO Auto-generated method stub + return null; + } + + @Override + public List getPassengers() { + // TODO Auto-generated method stub + return null; + } + + @Override + public PistonMoveReaction getPistonMoveReaction() { + // TODO Auto-generated method stub + return null; + } + + @Override + public int getPortalCooldown() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public Set getScoreboardTags() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Server getServer() { + // TODO Auto-generated method stub + return null; + } + + @Override + public int getTicksLived() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public EntityType getType() { + // TODO Auto-generated method stub + return null; + } + + @Override + public UUID getUniqueId() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Entity getVehicle() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Vector getVelocity() { + // TODO Auto-generated method stub + return null; + } + + @Override + public double getWidth() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public World getWorld() { + // TODO Auto-generated method stub + return null; + } + + @Override + public boolean hasGravity() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isCustomNameVisible() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isDead() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isEmpty() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isGlowing() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isInsideVehicle() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isInvulnerable() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isOnGround() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isSilent() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isValid() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean leaveVehicle() { + // TODO Auto-generated method stub + return false; + } + + @Override + public void playEffect(EntityEffect arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void remove() { + // TODO Auto-generated method stub + + } + + @Override + public boolean removePassenger(Entity arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean removeScoreboardTag(String arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public void setCustomNameVisible(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setFallDistance(float arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setFireTicks(int arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setGlowing(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setGravity(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setInvulnerable(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setLastDamageCause(EntityDamageEvent arg0) { + // TODO Auto-generated method stub + + } + + @Override + public boolean setPassenger(Entity arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public void setPortalCooldown(int arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setSilent(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setTicksLived(int arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setVelocity(Vector arg0) { + // TODO Auto-generated method stub + + } + + @Override + public boolean teleport(Location arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean teleport(Entity arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean teleport(Location arg0, TeleportCause arg1) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean teleport(Entity arg0, TeleportCause arg1) { + // TODO Auto-generated method stub + return false; + } + + @Override + public List getMetadata(String arg0) { + // TODO Auto-generated method stub + return null; + } + + @Override + public boolean hasMetadata(String arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public void removeMetadata(String arg0, Plugin arg1) { + // TODO Auto-generated method stub + + } + + @Override + public void setMetadata(String arg0, MetadataValue arg1) { + // TODO Auto-generated method stub + + } + + @Override + public void sendMessage(String arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void sendMessage(String[] arg0) { + // TODO Auto-generated method stub + + } + + @Override + public PermissionAttachment addAttachment(Plugin arg0) { + // TODO Auto-generated method stub + return null; + } + + @Override + public PermissionAttachment addAttachment(Plugin arg0, int arg1) { + // TODO Auto-generated method stub + return null; + } + + @Override + public PermissionAttachment addAttachment(Plugin arg0, String arg1, boolean arg2) { + // TODO Auto-generated method stub + return null; + } + + @Override + public PermissionAttachment addAttachment(Plugin arg0, String arg1, boolean arg2, int arg3) { + // TODO Auto-generated method stub + return null; + } + + @Override + public Set getEffectivePermissions() { + // TODO Auto-generated method stub + return null; + } + + @Override + public boolean hasPermission(String arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean hasPermission(Permission arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isPermissionSet(String arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isPermissionSet(Permission arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public void recalculatePermissions() { + // TODO Auto-generated method stub + + } + + @Override + public void removeAttachment(PermissionAttachment arg0) { + // TODO Auto-generated method stub + + } + + @Override + public boolean isOp() { + // TODO Auto-generated method stub + return false; + } + + @Override + public void setOp(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public String getCustomName() { + // TODO Auto-generated method stub + return null; + } + + @Override + public void setCustomName(String arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void damage(double arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void damage(double arg0, Entity arg1) { + // TODO Auto-generated method stub + + } + + @Override + public double getHealth() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public double getMaxHealth() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public void resetMaxHealth() { + // TODO Auto-generated method stub + + } + + @Override + public void setHealth(double arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setMaxHealth(double arg0) { + // TODO Auto-generated method stub + + } + + @Override + public T launchProjectile(Class arg0) { + // TODO Auto-generated method stub + return null; + } + + @Override + public T launchProjectile(Class arg0, Vector arg1) { + // TODO Auto-generated method stub + return null; + } + + @Override + public void abandonConversation(Conversation arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void abandonConversation(Conversation arg0, ConversationAbandonedEvent arg1) { + // TODO Auto-generated method stub + + } + + @Override + public void acceptConversationInput(String arg0) { + // TODO Auto-generated method stub + + } + + @Override + public boolean beginConversation(Conversation arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isConversing() { + // TODO Auto-generated method stub + return false; + } + + @Override + public long getFirstPlayed() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public long getLastPlayed() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public Player getPlayer() { + // TODO Auto-generated method stub + return null; + } + + @Override + public boolean hasPlayedBefore() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isBanned() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isOnline() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isWhitelisted() { + // TODO Auto-generated method stub + return false; + } + + @Override + public void setWhitelisted(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public Map serialize() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Set getListeningPluginChannels() { + // TODO Auto-generated method stub + return null; + } + + @Override + public void sendPluginMessage(Plugin arg0, String arg1, byte[] arg2) { + // TODO Auto-generated method stub + + } + + @Override + public void awardAchievement(Achievement arg0) { + // TODO Auto-generated method stub + + } + + @Override + public boolean canSee(Player arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public void chat(String arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void decrementStatistic(Statistic arg0) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void decrementStatistic(Statistic arg0, int arg1) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void decrementStatistic(Statistic arg0, Material arg1) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void decrementStatistic(Statistic arg0, EntityType arg1) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void decrementStatistic(Statistic arg0, Material arg1, int arg2) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void decrementStatistic(Statistic arg0, EntityType arg1, int arg2) { + // TODO Auto-generated method stub + + } + + @Override + public InetSocketAddress getAddress() { + // TODO Auto-generated method stub + return null; + } + + @Override + public AdvancementProgress getAdvancementProgress(Advancement arg0) { + // TODO Auto-generated method stub + return null; + } + + @Override + public boolean getAllowFlight() { + // TODO Auto-generated method stub + return false; + } + + @Override + public Location getBedSpawnLocation() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Location getCompassTarget() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getDisplayName() { + // TODO Auto-generated method stub + return null; + } + + @Override + public float getExhaustion() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public float getExp() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public float getFlySpeed() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public int getFoodLevel() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public double getHealthScale() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public int getLevel() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public String getLocale() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getPlayerListName() { + // TODO Auto-generated method stub + return null; + } + + @Override + public long getPlayerTime() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public long getPlayerTimeOffset() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public WeatherType getPlayerWeather() { + // TODO Auto-generated method stub + return null; + } + + @Override + public float getSaturation() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public Scoreboard getScoreboard() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Entity getSpectatorTarget() { + // TODO Auto-generated method stub + return null; + } + + @Override + public int getStatistic(Statistic arg0) throws IllegalArgumentException { + // TODO Auto-generated method stub + return 0; + } + + @Override + public int getStatistic(Statistic arg0, Material arg1) throws IllegalArgumentException { + // TODO Auto-generated method stub + return 0; + } + + @Override + public int getStatistic(Statistic arg0, EntityType arg1) throws IllegalArgumentException { + // TODO Auto-generated method stub + return 0; + } + + @Override + public int getTotalExperience() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public float getWalkSpeed() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public void giveExp(int arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void giveExpLevels(int arg0) { + // TODO Auto-generated method stub + + } + + @Override + public boolean hasAchievement(Achievement arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public void hidePlayer(Player arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void incrementStatistic(Statistic arg0) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void incrementStatistic(Statistic arg0, int arg1) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void incrementStatistic(Statistic arg0, Material arg1) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void incrementStatistic(Statistic arg0, EntityType arg1) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void incrementStatistic(Statistic arg0, Material arg1, int arg2) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void incrementStatistic(Statistic arg0, EntityType arg1, int arg2) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public boolean isFlying() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isHealthScaled() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isPlayerTimeRelative() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isSleepingIgnored() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isSneaking() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isSprinting() { + // TODO Auto-generated method stub + return false; + } + + @Override + public void kickPlayer(String arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void loadData() { + // TODO Auto-generated method stub + + } + + @Override + public boolean performCommand(String arg0) { + // TODO Auto-generated method stub + return false; + } + + @Override + public void playEffect(Location arg0, Effect arg1, int arg2) { + // TODO Auto-generated method stub + + } + + @Override + public void playEffect(Location arg0, Effect arg1, T arg2) { + // TODO Auto-generated method stub + + } + + @Override + public void playNote(Location arg0, byte arg1, byte arg2) { + // TODO Auto-generated method stub + + } + + @Override + public void playNote(Location arg0, Instrument arg1, Note arg2) { + // TODO Auto-generated method stub + + } + + @Override + public void playSound(Location arg0, Sound arg1, float arg2, float arg3) { + // TODO Auto-generated method stub + + } + + @Override + public void playSound(Location arg0, String arg1, float arg2, float arg3) { + // TODO Auto-generated method stub + + } + + @Override + public void playSound(Location arg0, Sound arg1, SoundCategory arg2, float arg3, float arg4) { + // TODO Auto-generated method stub + + } + + @Override + public void playSound(Location arg0, String arg1, SoundCategory arg2, float arg3, float arg4) { + // TODO Auto-generated method stub + + } + + @Override + public void removeAchievement(Achievement arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void resetPlayerTime() { + // TODO Auto-generated method stub + + } + + @Override + public void resetPlayerWeather() { + // TODO Auto-generated method stub + + } + + @Override + public void resetTitle() { + // TODO Auto-generated method stub + + } + + @Override + public void saveData() { + // TODO Auto-generated method stub + + } + + @Override + public void sendBlockChange(Location arg0, Material arg1, byte arg2) { + // TODO Auto-generated method stub + + } + + @Override + public void sendBlockChange(Location arg0, int arg1, byte arg2) { + // TODO Auto-generated method stub + + } + + @Override + public boolean sendChunkChange(Location arg0, int arg1, int arg2, int arg3, byte[] arg4) { + // TODO Auto-generated method stub + return false; + } + + @Override + public void sendMap(MapView arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void sendRawMessage(String arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void sendSignChange(Location arg0, String[] arg1) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void sendTitle(String arg0, String arg1) { + // TODO Auto-generated method stub + + } + + @Override + public void sendTitle(String arg0, String arg1, int arg2, int arg3, int arg4) { + // TODO Auto-generated method stub + + } + + @Override + public void setAllowFlight(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setBedSpawnLocation(Location arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setBedSpawnLocation(Location arg0, boolean arg1) { + // TODO Auto-generated method stub + + } + + @Override + public void setCompassTarget(Location arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setDisplayName(String arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setExhaustion(float arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setExp(float arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setFlySpeed(float arg0) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void setFlying(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setFoodLevel(int arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setHealthScale(double arg0) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void setHealthScaled(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setLevel(int arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setPlayerListName(String arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setPlayerTime(long arg0, boolean arg1) { + // TODO Auto-generated method stub + + } + + @Override + public void setPlayerWeather(WeatherType arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setResourcePack(String arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setResourcePack(String arg0, byte[] arg1) { + // TODO Auto-generated method stub + + } + + @Override + public void setSaturation(float arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setScoreboard(Scoreboard arg0) throws IllegalArgumentException, IllegalStateException { + // TODO Auto-generated method stub + + } + + @Override + public void setSleepingIgnored(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setSneaking(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setSpectatorTarget(Entity arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setSprinting(boolean arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setStatistic(Statistic arg0, int arg1) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void setStatistic(Statistic arg0, Material arg1, int arg2) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void setStatistic(Statistic arg0, EntityType arg1, int arg2) { + // TODO Auto-generated method stub + + } + + @Override + public void setTexturePack(String arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setTotalExperience(int arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void setWalkSpeed(float arg0) throws IllegalArgumentException { + // TODO Auto-generated method stub + + } + + @Override + public void showPlayer(Player arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void spawnParticle(Particle arg0, Location arg1, int arg2) { + // TODO Auto-generated method stub + + } + + @Override + public void spawnParticle(Particle arg0, Location arg1, int arg2, T arg3) { + // TODO Auto-generated method stub + + } + + @Override + public void spawnParticle(Particle arg0, double arg1, double arg2, double arg3, int arg4) { + // TODO Auto-generated method stub + + } + + @Override + public void spawnParticle(Particle arg0, double arg1, double arg2, double arg3, int arg4, T arg5) { + // TODO Auto-generated method stub + + } + + @Override + public void spawnParticle(Particle arg0, Location arg1, int arg2, double arg3, double arg4, double arg5) { + // TODO Auto-generated method stub + + } + + @Override + public void spawnParticle(Particle arg0, Location arg1, int arg2, double arg3, double arg4, double arg5, + T arg6) { + // TODO Auto-generated method stub + + } + + @Override + public void spawnParticle(Particle arg0, Location arg1, int arg2, double arg3, double arg4, double arg5, + double arg6) { + // TODO Auto-generated method stub + + } + + @Override + public void spawnParticle(Particle arg0, double arg1, double arg2, double arg3, int arg4, double arg5, double arg6, + double arg7) { + // TODO Auto-generated method stub + + } + + @Override + public void spawnParticle(Particle arg0, Location arg1, int arg2, double arg3, double arg4, double arg5, + double arg6, T arg7) { + // TODO Auto-generated method stub + + } + + @Override + public void spawnParticle(Particle arg0, double arg1, double arg2, double arg3, int arg4, double arg5, + double arg6, double arg7, T arg8) { + // TODO Auto-generated method stub + + } + + @Override + public void spawnParticle(Particle arg0, double arg1, double arg2, double arg3, int arg4, double arg5, double arg6, + double arg7, double arg8) { + // TODO Auto-generated method stub + + } + + @Override + public void spawnParticle(Particle arg0, double arg1, double arg2, double arg3, int arg4, double arg5, + double arg6, double arg7, double arg8, T arg9) { + // TODO Auto-generated method stub + + } + + @Override + public void stopSound(Sound arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void stopSound(String arg0) { + // TODO Auto-generated method stub + + } + + @Override + public void stopSound(Sound arg0, SoundCategory arg1) { + // TODO Auto-generated method stub + + } + + @Override + public void stopSound(String arg0, SoundCategory arg1) { + // TODO Auto-generated method stub + + } + + @Override + public void updateInventory() { + // TODO Auto-generated method stub + + } + + @Override + public Spigot spigot() { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/src/main/java/buttondevteam/discordplugin/DiscordPlayerSender.java b/src/main/java/buttondevteam/discordplugin/DiscordPlayerSender.java index de9caea..6dc64af 100644 --- a/src/main/java/buttondevteam/discordplugin/DiscordPlayerSender.java +++ b/src/main/java/buttondevteam/discordplugin/DiscordPlayerSender.java @@ -1,33 +1,15 @@ package buttondevteam.discordplugin; -import java.net.InetSocketAddress; -import java.util.*; -import org.bukkit.*; -import org.bukkit.attribute.Attribute; -import org.bukkit.attribute.AttributeInstance; -import org.bukkit.block.Block; -import org.bukkit.conversations.Conversation; -import org.bukkit.conversations.ConversationAbandonedEvent; import org.bukkit.entity.*; -import org.bukkit.event.entity.EntityDamageEvent; -import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause; -import org.bukkit.inventory.*; -import org.bukkit.inventory.InventoryView.Property; -import org.bukkit.map.MapView; -import org.bukkit.metadata.MetadataValue; -import org.bukkit.permissions.*; -import org.bukkit.plugin.Plugin; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; -import org.bukkit.scoreboard.Scoreboard; +import org.bukkit.projectiles.ProjectileSource; import org.bukkit.util.Vector; +import lombok.experimental.Delegate; import sx.blah.discord.handle.obj.IChannel; import sx.blah.discord.handle.obj.IUser; -@SuppressWarnings("deprecation") public class DiscordPlayerSender extends DiscordSenderBase implements Player { - private Player player; + private @Delegate(excludes = ProjectileSource.class) Player player; public DiscordPlayerSender(IUser user, IChannel channel, Player player) { super(user, channel); @@ -35,1482 +17,12 @@ public class DiscordPlayerSender extends DiscordSenderBase implements Player { } @Override - public boolean isPermissionSet(String name) { - return player.isPermissionSet(name); + public T launchProjectile(Class arg0) { + return player.launchProjectile(arg0); } @Override - public boolean isPermissionSet(Permission perm) { - return this.player.isPermissionSet(perm); - } - - @Override - public boolean hasPermission(String name) { - return player.hasPermission(name); - } - - @Override - public boolean hasPermission(Permission perm) { - return this.player.hasPermission(perm); - } - - @Override - public PermissionAttachment addAttachment(Plugin plugin, String name, boolean value) { - return player.addAttachment(plugin, name, value); - } - - @Override - public PermissionAttachment addAttachment(Plugin plugin) { - return player.addAttachment(plugin); - } - - @Override - public PermissionAttachment addAttachment(Plugin plugin, String name, boolean value, int ticks) { - return player.addAttachment(plugin, name, value, ticks); - } - - @Override - public PermissionAttachment addAttachment(Plugin plugin, int ticks) { - return player.addAttachment(plugin, ticks); - } - - @Override - public void removeAttachment(PermissionAttachment attachment) { - player.removeAttachment(attachment); - } - - @Override - public void recalculatePermissions() { - player.recalculatePermissions(); - } - - @Override - public Set getEffectivePermissions() { - return player.getEffectivePermissions(); - } - - @Override - public boolean isOp() { - return player.isOp(); - } - - @Override - public void setOp(boolean value) { - player.setOp(value); - } - - @Override - public Server getServer() { - return Bukkit.getServer(); - } - - @Override - public String getName() { - return player.getName(); - } - - // Find: " (\w+)\(\) \{\s+\/\/ TO\DO Auto-generated method stub\s+return null;" - Replace: " $1() { return player.$1();" - @Override - public String getDisplayName() { - return player.getDisplayName(); - } - - // Find: " (\w+)\((\w+) (\w+)\) \{\s+\/\/ TO\DO Auto-generated method stub\s" - Replace: " $1($2 $3) { player.$1($3);" - @Override - public void setDisplayName(String name) { - player.setDisplayName(name); - } - - @Override - public String getPlayerListName() { - return player.getPlayerListName(); - } - - @Override - public void setPlayerListName(String name) { - player.setPlayerListName(name); - } - - @Override - public void setCompassTarget(Location loc) { - player.setCompassTarget(loc); - } - - @Override - public Location getCompassTarget() { - return player.getCompassTarget(); - } - - @Override - public InetSocketAddress getAddress() { - return player.getAddress(); - } - - @Override - public void sendRawMessage(String message) { - player.sendRawMessage(message); - } - - @Override - public void kickPlayer(String message) { - player.kickPlayer(message); - } - - @Override - public void chat(String msg) { - player.chat(msg); - } - - @Override - public boolean performCommand(String command) { - return player.performCommand(command); - } - - // Find: " (\w+)\(\) \{\s+\/\/ TO\DO Auto-generated method stub\s+return false;" - Replace: " $1() { return player.$1();" - @Override - public boolean isSneaking() { - return player.isSneaking(); - } - - @Override - public void setSneaking(boolean sneak) { - player.setSneaking(sneak); - } - - @Override - public boolean isSprinting() { - return player.isSprinting(); - } - - @Override - public void setSprinting(boolean sprinting) { - player.setSprinting(sprinting); - } - - @Override - public void saveData() { - player.saveData(); - } - - @Override - public void loadData() { - player.loadData(); - } - - @Override - public void setSleepingIgnored(boolean isSleeping) { - player.setSleepingIgnored(isSleeping); - } - - @Override - public boolean isSleepingIgnored() { - return player.isSleepingIgnored(); - } - - // Find: " (\w+)\((\w+) (\w+), (\w+) (\w+), (\w+) (\w+)\) \{\s+\/\/ TO\DO Auto-generated method stub\s" - Replace: " $1($2 $3, $4 $5, $6 $7) { player.$1($3, $5, $7);" - @Override - public void playNote(Location loc, byte instrument, byte note) { - player.playNote(loc, instrument, note); - } - - @Override - public void playNote(Location loc, Instrument instrument, Note note) { - player.playNote(loc, instrument, note); - } - - // Find: " (\w+)\((\w+) (\w+), (\w+) (\w+), (\w+) (\w+), (\w+) (\w+)\) \{\s+\/\/ TO\DO Auto-generated method stub\s" - Replace: " $1($2 $3, $4 $5, $6 $7, $8 $9) { player.$1($3, $5, $7, $9);" - @Override - public void playSound(Location location, Sound sound, float volume, float pitch) { - player.playSound(location, sound, volume, pitch); - } - - @Override - public void playSound(Location location, String sound, float volume, float pitch) { - player.playSound(location, sound, volume, pitch); - } - - // Find: " (\w+)\((\w+) (\w+), (\w+) (\w+), (\w+) (\w+), (\w+) (\w+), (\w+) (\w+)\) \{\s+\/\/ TO\DO Auto-generated method stub\s" - Replace: " $1($2 $3, $4 $5, $6 $7, $8 $9, $10 $11) { - // player.$1($3, $5, $7, $9, $11);" - @Override - public void playSound(Location location, Sound sound, SoundCategory category, float volume, float pitch) { - player.playSound(location, sound, category, volume, pitch); - } - - @Override - public void playSound(Location location, String sound, SoundCategory category, float volume, float pitch) { - player.playSound(location, sound, category, volume, pitch); - } - - @Override - public void stopSound(Sound sound) { - player.stopSound(sound); - } - - @Override - public void stopSound(String sound) { - player.stopSound(sound); - } - - @Override - public void stopSound(Sound sound, SoundCategory category) { - player.stopSound(sound, category); - } - - @Override - public void stopSound(String sound, SoundCategory category) { - player.stopSound(sound, category); - } - - @Override - public void playEffect(Location loc, Effect effect, int data) { - player.playEffect(loc, effect, data); - } - - @Override - public void playEffect(Location loc, Effect effect, T data) { - player.playEffect(loc, effect, data); - } - - @Override - public void sendBlockChange(Location loc, Material material, byte data) { - player.sendBlockChange(loc, material, data); - } - - // Find: " (\w+)\((\w+) (\w+), (\w+) (\w+), (\w+) (\w+), (\w+) (\w+), (\w+) (\w+), (\w+) (\w+)\) \{\s+\/\/ TO\DO Auto-generated method stub\s" - Replace: " $1($2 $3, $4 $5, $6 $7, $8 $9, $10 $11, - // $12 $13) { player.$1($3, $5, $7, $9, $11, $13);" - - @Override - public boolean sendChunkChange(Location loc, int sx, int sy, int sz, byte[] data) { - return player.sendChunkChange(loc, sx, sy, sz, data); - } - - @Override - public void sendBlockChange(Location loc, int material, byte data) { - player.sendBlockChange(loc, material, data); - } - - @Override - public void sendSignChange(Location loc, String[] lines) throws IllegalArgumentException { - player.sendSignChange(loc, lines); - } - - @Override - public void sendMap(MapView map) { - player.sendMap(map); - } - - // Find: " (\w+)\(\) \{\s+\/\/ TO\DO Auto-generated method stub\s" - Replace: " $1() { player.$1();" - @Override - public void updateInventory() { - player.updateInventory(); - } - - @Override - public void awardAchievement(Achievement achievement) { - player.awardAchievement(achievement); - } - - @Override - public void removeAchievement(Achievement achievement) { - player.removeAchievement(achievement); - } - - @Override - public boolean hasAchievement(Achievement achievement) { - return player.hasAchievement(achievement); - } - - @Override - public void incrementStatistic(Statistic statistic) throws IllegalArgumentException { - player.incrementStatistic(statistic); - } - - @Override - public void decrementStatistic(Statistic statistic) throws IllegalArgumentException { - player.decrementStatistic(statistic); - } - - // Find: " (\w+)\((\w+) (\w+), (\w+) (\w+)\)(.+)\{\s+\/\/ TO\DO Auto-generated method stub\s" - Replace: " $1($2 $3, $4 $5) $6 { player.$1($3, $5);" - @Override - public void incrementStatistic(Statistic statistic, int amount) throws IllegalArgumentException { - player.incrementStatistic(statistic, amount); - } - - @Override - public void decrementStatistic(Statistic statistic, int amount) throws IllegalArgumentException { - player.decrementStatistic(statistic, amount); - } - - @Override - public void setStatistic(Statistic statistic, int newValue) throws IllegalArgumentException { - player.setStatistic(statistic, newValue); - } - - @Override - public int getStatistic(Statistic statistic) throws IllegalArgumentException { - return player.getStatistic(statistic); - } - - @Override - public void incrementStatistic(Statistic statistic, Material material) throws IllegalArgumentException { - player.incrementStatistic(statistic, material); - } - - @Override - public void decrementStatistic(Statistic statistic, Material material) throws IllegalArgumentException { - player.decrementStatistic(statistic, material); - } - - @Override - public int getStatistic(Statistic statistic, Material material) throws IllegalArgumentException { - return player.getStatistic(statistic, material); - } - - // Find: " (\w+)\((\w+) (\w+), (\w+) (\w+), (\w+) (\w+)\)(.+)\{\s+\/\/ TO\DO Auto-generated method stub\s" - Replace: " $1($2 $3, $4 $5, $6 $7) $8 { player.$1($3, $5, $7);" - @Override - public void incrementStatistic(Statistic statistic, Material material, int amount) throws IllegalArgumentException { - player.incrementStatistic(statistic, material, amount); - } - - @Override - public void decrementStatistic(Statistic statistic, Material material, int amount) throws IllegalArgumentException { - player.decrementStatistic(statistic, material, amount); - } - - @Override - public void setStatistic(Statistic statistic, Material material, int newValue) throws IllegalArgumentException { - player.setStatistic(statistic, material, newValue); - } - - @Override - public void incrementStatistic(Statistic statistic, EntityType entityType) throws IllegalArgumentException { - player.incrementStatistic(statistic, entityType); - } - - @Override - public void decrementStatistic(Statistic statistic, EntityType entityType) throws IllegalArgumentException { - player.decrementStatistic(statistic, entityType); - } - - @Override - public int getStatistic(Statistic statistic, EntityType entityType) throws IllegalArgumentException { - return player.getStatistic(statistic, entityType); - } - - @Override - public void incrementStatistic(Statistic statistic, EntityType entityType, int amount) - throws IllegalArgumentException { - player.incrementStatistic(statistic, entityType, amount); - } - - @Override - public void decrementStatistic(Statistic statistic, EntityType entityType, int amount) { - player.decrementStatistic(statistic, entityType, amount); - } - - @Override - public void setStatistic(Statistic statistic, EntityType entityType, int newValue) { - player.setStatistic(statistic, entityType, newValue); - } - - /** - * Find: " (\w+)\((\w+) (\w+), (\w+) (\w+)\) \{\s+\/\/ TO\DO Auto-generated method stub\s" - Replace: " $1($2 $3, $4 $5) { player.$1($3, $5);" - */ - @Override - public void setPlayerTime(long time, boolean relative) { - player.setPlayerTime(time, relative); - } - - @Override - public long getPlayerTime() { - return player.getPlayerTime(); - } - - @Override - public long getPlayerTimeOffset() { - return player.getPlayerTimeOffset(); - } - - @Override - public boolean isPlayerTimeRelative() { - return player.isPlayerTimeRelative(); - } - - @Override - public void resetPlayerTime() { - player.resetPlayerTime(); - } - - @Override - public void setPlayerWeather(WeatherType type) { - player.setPlayerWeather(type); - } - - @Override - public WeatherType getPlayerWeather() { - return player.getPlayerWeather(); - } - - @Override - public void resetPlayerWeather() { - player.resetPlayerWeather(); - } - - @Override - public void giveExp(int amount) { - player.giveExp(amount); - } - - @Override - public void giveExpLevels(int amount) { - player.giveExpLevels(amount); - } - - @Override - public float getExp() { - return player.getExp(); - } - - @Override - public void setExp(float exp) { - player.setExp(exp); - } - - @Override - public int getLevel() { - return player.getLevel(); - } - - @Override - public void setLevel(int level) { - player.setLevel(level); - } - - @Override - public int getTotalExperience() { - return player.getTotalExperience(); - } - - @Override - public void setTotalExperience(int exp) { - player.setTotalExperience(exp); - } - - @Override - public float getExhaustion() { - return player.getExhaustion(); - } - - @Override - public void setExhaustion(float value) { - player.setExhaustion(value); - } - - @Override - public float getSaturation() { - return player.getSaturation(); - } - - @Override - public void setSaturation(float value) { - player.setSaturation(value); - } - - @Override - public int getFoodLevel() { - return player.getFoodLevel(); - } - - @Override - public void setFoodLevel(int value) { - player.setFoodLevel(value); - } - - @Override - public Location getBedSpawnLocation() { - return player.getBedSpawnLocation(); - } - - @Override - public void setBedSpawnLocation(Location location) { - player.setBedSpawnLocation(location); - } - - @Override - public void setBedSpawnLocation(Location location, boolean force) { - player.setBedSpawnLocation(location, force); - } - - @Override - public boolean getAllowFlight() { - return player.getAllowFlight(); - } - - @Override - public void setAllowFlight(boolean flight) { - player.setAllowFlight(flight); - } - - @Override - public void hidePlayer(Player player) { - player.hidePlayer(player); - } - - @Override - public void showPlayer(Player player) { - player.showPlayer(player); - } - - @Override - public boolean canSee(Player player) { - return player.canSee(player); - } - - @Override - public boolean isOnGround() { - return player.isOnGround(); - } - - @Override - public boolean isFlying() { - return player.isFlying(); - } - - @Override - public void setFlying(boolean value) { - player.setFlying(value); - } - - @Override - public void setFlySpeed(float value) throws IllegalArgumentException { - player.setFlySpeed(value); - } - - @Override - public void setWalkSpeed(float value) throws IllegalArgumentException { - player.setWalkSpeed(value); - } - - // Find: "\{\s+(.+)\s+return (?:(?:0)|(?:null)|(?:false));" - Replace: "{ return $1" - @Override - public float getFlySpeed() { - return player.getFlySpeed(); - } - - @Override - public float getWalkSpeed() { - return player.getWalkSpeed(); - } - - @Override - public void setTexturePack(String url) { - player.setTexturePack(url); - } - - @Override - public void setResourcePack(String url) { - player.setResourcePack(url); - } - - @Override - public Scoreboard getScoreboard() { - return player.getScoreboard(); - } - - @Override - public void setScoreboard(Scoreboard scoreboard) throws IllegalArgumentException, IllegalStateException { - player.setScoreboard(scoreboard); - } - - @Override - public boolean isHealthScaled() { - return player.isHealthScaled(); - } - - @Override - public void setHealthScaled(boolean scale) { - player.setHealthScaled(scale); - } - - // Find: " (\w+)\((\w+) (\w+)\)(.+)\{\s+\/\/ TO\DO Auto-generated method stub\s" - Replace: " $1($2 $3) $4 { player.$1($3);" - @Override - public void setHealthScale(double scale) throws IllegalArgumentException { - player.setHealthScale(scale); - } - - @Override - public double getHealthScale() { - return player.getHealthScale(); - } - - @Override - public Entity getSpectatorTarget() { - return player.getSpectatorTarget(); - } - - @Override - public void setSpectatorTarget(Entity entity) { - player.setSpectatorTarget(entity); - } - - @Override - public void sendTitle(String title, String subtitle) { - player.sendTitle(title, subtitle); - } - - @Override - public void resetTitle() { - player.resetTitle(); - } - - @Override - public void spawnParticle(Particle particle, Location location, int count) { - player.spawnParticle(particle, location, count); - } - - @Override - public void spawnParticle(Particle particle, double x, double y, double z, int count) { - player.spawnParticle(particle, x, y, z, count); - } - - @Override - public void spawnParticle(Particle particle, Location location, int count, T data) { - player.spawnParticle(particle, location, count, data); - } - - // Find: " (\w+)\((\w+) (\w+), (\w+) (\w+), (\w+) (\w+), (\w+) (\w+), (\w+) (\w+), (\w+) (\w+)\) \{\s+\/\/ TO\DO Auto-generated method stub\s" - Replace: " $1($2 $3, $4 $5, $6 $7, $8 $9, $10 $11, - // $12 $13) { player.$1($3, $5, $7, $9, $11, $13);" - @Override - public void spawnParticle(Particle particle, double x, double y, double z, int count, T data) { - player.spawnParticle(particle, x, y, z, count, data); - } - - @Override - public void spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY, - double offsetZ) { - player.spawnParticle(particle, location, count, offsetX, offsetY, offsetZ); - } - - @Override - public void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, - double offsetY, double offsetZ) { - player.spawnParticle(particle, offsetX, y, z, count, offsetX, offsetY, offsetZ); - } - - @Override - public void spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY, - double offsetZ, T data) { - player.spawnParticle(particle, location, count, data); - } - - @Override - public void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, - double offsetY, double offsetZ, T data) { - player.spawnParticle(particle, x, y, z, count, offsetX, offsetY, offsetZ, data); - } - - @Override - public void spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY, - double offsetZ, double extra) { - player.spawnParticle(particle, location, count, offsetX, offsetY, offsetZ, extra); - } - - @Override - public void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, - double offsetY, double offsetZ, double extra) { - player.spawnParticle(particle, x, y, z, count, offsetX, offsetY, offsetZ, extra); - } - - @Override - public void spawnParticle(Particle particle, Location location, int count, double offsetX, double offsetY, - double offsetZ, double extra, T data) { - player.spawnParticle(particle, location, count, offsetX, offsetY, offsetZ, extra, data); - } - - @Override - public void spawnParticle(Particle particle, double x, double y, double z, int count, double offsetX, - double offsetY, double offsetZ, double extra, T data) { - player.spawnParticle(particle, x, y, z, count, offsetX, offsetY, offsetZ, extra, data); - } - - @Override - public Spigot spigot() { - return player.spigot(); - } - - @Override - public PlayerInventory getInventory() { - return player.getInventory(); - } - - @Override - public Inventory getEnderChest() { - return player.getEnderChest(); - } - - @Override - public MainHand getMainHand() { - return player.getMainHand(); - } - - @Override - public boolean setWindowProperty(Property prop, int value) { - return player.setWindowProperty(prop, value); - } - - @Override - public InventoryView getOpenInventory() { - return player.getOpenInventory(); - } - - @Override - public InventoryView openInventory(Inventory inventory) { - return player.openInventory(inventory); - } - - @Override - public InventoryView openWorkbench(Location location, boolean force) { - return player.openWorkbench(location, force); - } - - @Override - public InventoryView openEnchanting(Location location, boolean force) { - return player.openEnchanting(location, force); - } - - @Override - public void openInventory(InventoryView inventory) { - player.openInventory(inventory); - } - - @Override - public InventoryView openMerchant(Villager trader, boolean force) { - return player.openMerchant(trader, force); - } - - @Override - public InventoryView openMerchant(Merchant merchant, boolean force) { - return player.openMerchant(merchant, force); - } - - @Override - public void closeInventory() { - player.closeInventory(); - } - - @Override - public ItemStack getItemInHand() { - return player.getItemInHand(); - } - - @Override - public void setItemInHand(ItemStack item) { - player.setItemInHand(item); - } - - @Override - public ItemStack getItemOnCursor() { - return player.getItemOnCursor(); - } - - @Override - public void setItemOnCursor(ItemStack item) { - player.setItemOnCursor(item); - } - - @Override - public boolean isSleeping() { - return player.isSleeping(); - } - - @Override - public int getSleepTicks() { - return player.getSleepTicks(); - } - - @Override - public GameMode getGameMode() { - return player.getGameMode(); - } - - @Override - public void setGameMode(GameMode mode) { - player.setGameMode(mode); - } - - @Override - public boolean isBlocking() { - return player.isBlocking(); - } - - @Override - public boolean isHandRaised() { - return player.isHandRaised(); - } - - @Override - public int getExpToLevel() { - return player.getExpToLevel(); - } - - @Override - public double getEyeHeight() { - return player.getEyeHeight(); - } - - @Override - public double getEyeHeight(boolean ignoreSneaking) { - return player.getEyeHeight(ignoreSneaking); - } - - @Override - public Location getEyeLocation() { - return player.getEyeLocation(); - } - - @Override - public List getLineOfSight(HashSet transparent, int maxDistance) { - return player.getLineOfSight(transparent, maxDistance); - } - - @Override - public List getLineOfSight(Set transparent, int maxDistance) { - return player.getLineOfSight(transparent, maxDistance); - } - - @Override - public Block getTargetBlock(HashSet transparent, int maxDistance) { - return player.getTargetBlock(transparent, maxDistance); - } - - @Override - public Block getTargetBlock(Set transparent, int maxDistance) { - return player.getTargetBlock(transparent, maxDistance); - } - - @Override - public List getLastTwoTargetBlocks(HashSet transparent, int maxDistance) { - return player.getLastTwoTargetBlocks(transparent, maxDistance); - } - - @Override - public List getLastTwoTargetBlocks(Set transparent, int maxDistance) { - return player.getLastTwoTargetBlocks(transparent, maxDistance); - } - - @Override - public int getRemainingAir() { - return player.getRemainingAir(); - } - - @Override - public void setRemainingAir(int ticks) { - player.setRemainingAir(ticks); - } - - @Override - public int getMaximumAir() { - return player.getMaximumAir(); - } - - @Override - public void setMaximumAir(int ticks) { - player.setMaximumAir(ticks); - } - - @Override - public int getMaximumNoDamageTicks() { - return player.getMaximumNoDamageTicks(); - } - - @Override - public void setMaximumNoDamageTicks(int ticks) { - player.setMaximumNoDamageTicks(ticks); - } - - @Override - public double getLastDamage() { - return player.getLastDamage(); - } - - @Override - public int _INVALID_getLastDamage() { - return player._INVALID_getLastDamage(); - } - - @Override - public void setLastDamage(double damage) { - player.setLastDamage(damage); - } - - @Override - public void _INVALID_setLastDamage(int damage) { - player._INVALID_setLastDamage(damage); - } - - @Override - public int getNoDamageTicks() { - return player.getNoDamageTicks(); - } - - @Override - public void setNoDamageTicks(int ticks) { - player.setNoDamageTicks(ticks); - } - - @Override - public Player getKiller() { - return player.getKiller(); - } - - @Override - public boolean addPotionEffect(PotionEffect effect) { - return player.addPotionEffect(effect); - } - - @Override - public boolean addPotionEffect(PotionEffect effect, boolean force) { - return player.addPotionEffect(effect, force); - } - - @Override - public boolean addPotionEffects(Collection effects) { - return player.addPotionEffects(effects); - } - - @Override - public boolean hasPotionEffect(PotionEffectType type) { - return player.hasPotionEffect(type); - } - - @Override - public PotionEffect getPotionEffect(PotionEffectType type) { - return player.getPotionEffect(type); - } - - @Override - public void removePotionEffect(PotionEffectType type) { - player.removePotionEffect(type); - } - - @Override - public Collection getActivePotionEffects() { - return player.getActivePotionEffects(); - } - - @Override - public boolean hasLineOfSight(Entity other) { - return player.hasLineOfSight(other); - } - - @Override - public boolean getRemoveWhenFarAway() { - return player.getRemoveWhenFarAway(); - } - - @Override - public void setRemoveWhenFarAway(boolean remove) { - player.setRemoveWhenFarAway(remove); - } - - @Override - public EntityEquipment getEquipment() { - return player.getEquipment(); - } - - @Override - public void setCanPickupItems(boolean pickup) { - player.setCanPickupItems(pickup); - } - - @Override - public boolean getCanPickupItems() { - return player.getCanPickupItems(); - } - - @Override - public boolean isLeashed() { - return player.isLeashed(); - } - - @Override - public Entity getLeashHolder() throws IllegalStateException { - return player.getLeashHolder(); - } - - @Override - public boolean setLeashHolder(Entity holder) { - return player.setLeashHolder(holder); - } - - @Override - public boolean isGliding() { - return player.isGliding(); - } - - @Override - public void setGliding(boolean gliding) { - player.setGliding(gliding); - } - - @Override - public void setAI(boolean ai) { - player.setAI(ai); - } - - @Override - public boolean hasAI() { - return player.hasAI(); - } - - @Override - public void setCollidable(boolean collidable) { - player.setCollidable(collidable); - } - - @Override - public boolean isCollidable() { - return player.isCollidable(); - } - - @Override - public AttributeInstance getAttribute(Attribute attribute) { - return player.getAttribute(attribute); - } - - @Override - public Location getLocation() { - return player.getLocation(); - } - - @Override - public Location getLocation(Location loc) { - return player.getLocation(loc); - } - - @Override - public void setVelocity(Vector velocity) { - player.setVelocity(velocity); - } - - @Override - public Vector getVelocity() { - return player.getVelocity(); - } - - @Override - public World getWorld() { - return player.getWorld(); - } - - @Override - public boolean teleport(Location location) { - return player.teleport(location); - } - - @Override - public boolean teleport(Location location, TeleportCause cause) { - return player.teleport(location, cause); - } - - @Override - public boolean teleport(Entity destination) { - return player.teleport(destination); - } - - @Override - public boolean teleport(Entity destination, TeleportCause cause) { - return player.teleport(destination, cause); - } - - @Override - public List getNearbyEntities(double x, double y, double z) { - return player.getNearbyEntities(x, y, z); - } - - @Override - public int getEntityId() { - return player.getEntityId(); - } - - @Override - public int getFireTicks() { - return player.getFireTicks(); - } - - @Override - public int getMaxFireTicks() { - return player.getMaxFireTicks(); - } - - @Override - public void setFireTicks(int ticks) { - player.setFireTicks(ticks); - } - - @Override - public void remove() { - player.remove(); - } - - @Override - public boolean isDead() { - return player.isDead(); - } - - @Override - public boolean isValid() { - return player.isValid(); - } - - @Override - public Entity getPassenger() { - return player.getPassenger(); - } - - @Override - public boolean setPassenger(Entity passenger) { - return player.setPassenger(passenger); - } - - @Override - public boolean isEmpty() { - return player.isEmpty(); - } - - @Override - public boolean eject() { - return player.eject(); - } - - @Override - public float getFallDistance() { - return player.getFallDistance(); - } - - @Override - public void setFallDistance(float distance) { - player.setFallDistance(distance); - } - - @Override - public void setLastDamageCause(EntityDamageEvent event) { - player.setLastDamageCause(event); - } - - @Override - public EntityDamageEvent getLastDamageCause() { - return player.getLastDamageCause(); - } - - @Override - public UUID getUniqueId() { - return player.getUniqueId(); - } - - @Override - public int getTicksLived() { - return player.getTicksLived(); - } - - @Override - public void setTicksLived(int value) { - player.setTicksLived(value); - } - - @Override - public void playEffect(EntityEffect type) { - player.playEffect(type); - } - - @Override - public EntityType getType() { - return player.getType(); - } - - @Override - public boolean isInsideVehicle() { - return player.isInsideVehicle(); - } - - @Override - public boolean leaveVehicle() { - return player.leaveVehicle(); - } - - @Override - public Entity getVehicle() { - return player.getVehicle(); - } - - @Override - public void setCustomNameVisible(boolean flag) { - player.setCustomNameVisible(flag); - } - - @Override - public boolean isCustomNameVisible() { - return player.isCustomNameVisible(); - } - - @Override - public void setGlowing(boolean flag) { - player.setGlowing(flag); - } - - @Override - public boolean isGlowing() { - return player.isGlowing(); - } - - @Override - public void setInvulnerable(boolean flag) { - player.setInvulnerable(flag); - } - - @Override - public boolean isInvulnerable() { - return player.isInvulnerable(); - } - - @Override - public boolean isSilent() { - return player.isSilent(); - } - - @Override - public void setSilent(boolean flag) { - player.setSilent(flag); - } - - @Override - public boolean hasGravity() { - return player.hasGravity(); - } - - @Override - public void setGravity(boolean gravity) { - player.setGravity(gravity); - } - - @Override - public int getPortalCooldown() { - return player.getPortalCooldown(); - } - - @Override - public void setPortalCooldown(int cooldown) { - player.setPortalCooldown(cooldown); - } - - @Override - public Set getScoreboardTags() { - return player.getScoreboardTags(); - } - - @Override - public boolean addScoreboardTag(String tag) { - return player.addScoreboardTag(tag); - } - - @Override - public boolean removeScoreboardTag(String tag) { - return player.removeScoreboardTag(tag); - } - - @Override - public void setMetadata(String metadataKey, MetadataValue newMetadataValue) { - player.setMetadata(metadataKey, newMetadataValue); - } - - @Override - public List getMetadata(String metadataKey) { - return player.getMetadata(metadataKey); - } - - @Override - public boolean hasMetadata(String metadataKey) { - return player.hasMetadata(metadataKey); - } - - @Override - public void removeMetadata(String metadataKey, Plugin owningPlugin) { - player.removeMetadata(metadataKey, owningPlugin); - } - - @Override - public String getCustomName() { - return player.getCustomName(); - } - - @Override - public void setCustomName(String name) { - player.setCustomName(name); - } - - @Override - public void damage(double amount) { - player.damage(amount); - } - - @Override - public void _INVALID_damage(int amount) { - player._INVALID_damage(amount); - } - - @Override - public void damage(double amount, Entity source) { - player.damage(amount, source); - } - - @Override - public void _INVALID_damage(int amount, Entity source) { - player._INVALID_damage(amount, source); - } - - @Override - public double getHealth() { - return player.getHealth(); - } - - @Override - public int _INVALID_getHealth() { - return player._INVALID_getHealth(); - } - - @Override - public void setHealth(double health) { - player.setHealth(health); - } - - @Override - public void _INVALID_setHealth(int health) { - player._INVALID_setHealth(health); - } - - @Override - public double getMaxHealth() { - return player.getMaxHealth(); - } - - @Override - public int _INVALID_getMaxHealth() { - return player._INVALID_getMaxHealth(); - } - - @Override - public void setMaxHealth(double health) { - player.setMaxHealth(health); - } - - @Override - public void _INVALID_setMaxHealth(int health) { - player._INVALID_setMaxHealth(health); - } - - @Override - public void resetMaxHealth() { - player.resetMaxHealth(); - } - - @Override - public T launchProjectile(Class projectile) { - return player.launchProjectile(projectile); - } - - @Override - public T launchProjectile(Class projectile, Vector velocity) { - return player.launchProjectile(projectile, velocity); - } - - @Override - public boolean isConversing() { - return player.isConversing(); - } - - @Override - public void acceptConversationInput(String input) { - player.acceptConversationInput(input); - } - - @Override - public boolean beginConversation(Conversation conversation) { - return player.beginConversation(conversation); - } - - @Override - public void abandonConversation(Conversation conversation) { - player.abandonConversation(conversation); - } - - @Override - public void abandonConversation(Conversation conversation, ConversationAbandonedEvent details) { - player.abandonConversation(conversation, details); - } - - @Override - public boolean isOnline() { - return player.isOnline(); - } - - @Override - public boolean isBanned() { - return player.isBanned(); - } - - @Override - public void setBanned(boolean banned) { - player.setBanned(banned); - } - - @Override - public boolean isWhitelisted() { - return player.isWhitelisted(); - } - - @Override - public void setWhitelisted(boolean value) { - player.setWhitelisted(value); - } - - @Override - public Player getPlayer() { - return player.getPlayer(); - } - - @Override - public long getFirstPlayed() { - return player.getFirstPlayed(); - } - - @Override - public long getLastPlayed() { - return player.getLastPlayed(); - } - - @Override - public boolean hasPlayedBefore() { - return player.hasPlayedBefore(); - } - - @Override - public Map serialize() { - return player.serialize(); - } - - @Override - public void sendPluginMessage(Plugin source, String channel, byte[] message) { - player.sendPluginMessage(source, channel, message); - } - - @Override - public Set getListeningPluginChannels() { - return player.getListeningPluginChannels(); - } - - @Override - public void sendTitle(String arg0, String arg1, int arg2, int arg3, int arg4) { - player.sendTitle(arg0, arg1, arg2, arg3, arg4); - + public T launchProjectile(Class arg0, Vector arg1) { + return player.launchProjectile(arg0, arg1); } } diff --git a/src/main/java/buttondevteam/discordplugin/DiscordPlugin.java b/src/main/java/buttondevteam/discordplugin/DiscordPlugin.java index 0d269bc..ab4485c 100644 --- a/src/main/java/buttondevteam/discordplugin/DiscordPlugin.java +++ b/src/main/java/buttondevteam/discordplugin/DiscordPlugin.java @@ -27,8 +27,8 @@ import sx.blah.discord.api.internal.json.objects.EmbedObject; import sx.blah.discord.handle.impl.events.ReadyEvent; import sx.blah.discord.handle.obj.*; import sx.blah.discord.util.*; +import sx.blah.discord.util.RequestBuffer.IRequest; import sx.blah.discord.util.RequestBuffer.IVoidRequest; -import sx.blah.discord.util.RequestBuffer.RequestFuture; public class DiscordPlugin extends JavaPlugin implements IListener { private static final String SubredditURL = "https://www.reddit.com/r/ChromaGamers"; @@ -148,27 +148,14 @@ public class DiscordPlugin extends JavaPlugin implements IListener { "You could make a religion out of this"); } } - /*IDiscordOAuth doa = new DiscordOAuthBuilder(dc).withClientID("226443037893591041") - .withClientSecret(getConfig().getString("appsecret")) - .withRedirectUrl("https://" + (TBMCCoreAPI.IsTestServer() ? "localhost" : "server.figytuna.com") - + ":8081/callback") - .withScopes(Scope.IDENTIFY).withHttpServerOptions(new HttpServerOptions().setPort(8081)) - .withSuccessHandler((rc, user) -> { - rc.response().headers().add("Location", - "https://" + (TBMCCoreAPI.IsTestServer() ? "localhost" : "server.figytuna.com") - + ":8080/login?type=discord&" + rc.request().query()); - rc.response().setStatusCode(303); - rc.response().end("Redirecting"); - rc.response().close(); - }).withFailureHandler(rc -> { - rc.response().headers().add("Location", - "https://" + (TBMCCoreAPI.IsTestServer() ? "localhost" : "server.figytuna.com") - + ":8080/login?type=discord&" + rc.request().query()); - rc.response().setStatusCode(303); - rc.response().end("Redirecting"); - rc.response().close(); - }).build(); - getLogger().info("Auth URL: " + doa.buildAuthUrl());*/ + /* + * IDiscordOAuth doa = new DiscordOAuthBuilder(dc).withClientID("226443037893591041") .withClientSecret(getConfig().getString("appsecret")) .withRedirectUrl("https://" + + * (TBMCCoreAPI.IsTestServer() ? "localhost" : "server.figytuna.com") + ":8081/callback") .withScopes(Scope.IDENTIFY).withHttpServerOptions(new HttpServerOptions().setPort(8081)) + * .withSuccessHandler((rc, user) -> { rc.response().headers().add("Location", "https://" + (TBMCCoreAPI.IsTestServer() ? "localhost" : "server.figytuna.com") + ":8080/login?type=discord&" + * + rc.request().query()); rc.response().setStatusCode(303); rc.response().end("Redirecting"); rc.response().close(); }).withFailureHandler(rc -> { rc.response().headers().add("Location", + * "https://" + (TBMCCoreAPI.IsTestServer() ? "localhost" : "server.figytuna.com") + ":8080/login?type=discord&" + rc.request().query()); rc.response().setStatusCode(303); + * rc.response().end("Redirecting"); rc.response().close(); }).build(); getLogger().info("Auth URL: " + doa.buildAuthUrl()); + */ } catch (Exception e) { TBMCCoreAPI.SendException("An error occured while enabling DiscordPlugin!", e); } @@ -317,30 +304,18 @@ public class DiscordPlugin extends JavaPlugin implements IListener { /** * Performs Discord actions, retrying when ratelimited. May return null if action fails too many times or in safe mode. */ - public static > T perform(DiscordSupplier action) - throws DiscordException, MissingPermissionsException { - for (int i = 0; i < 20; i++) - try { - if (SafeMode) - return null; - return action.get(); - } catch (RateLimitException e) { - try { - Thread.sleep(e.getRetryDelay() > 0 ? e.getRetryDelay() : 10); - } catch (InterruptedException e1) { - e1.printStackTrace(); - } - } - return null; + public static T perform(IRequest action) { + if (SafeMode) + return null; + return RequestBuffer.request(action).get(); // Let the pros handle this } /** * Performs Discord actions, retrying when ratelimited. */ - public static RequestFuture perform(IVoidRequest action) - throws DiscordException, MissingPermissionsException { + public static Void perform(IVoidRequest action) { if (SafeMode) return null; - return RequestBuffer.request(action); // Let the pros handle this + return RequestBuffer.request(action).get(); // Let the pros handle this } } diff --git a/src/main/java/buttondevteam/discordplugin/DiscordSender.java b/src/main/java/buttondevteam/discordplugin/DiscordSender.java index 9942973..81a414b 100644 --- a/src/main/java/buttondevteam/discordplugin/DiscordSender.java +++ b/src/main/java/buttondevteam/discordplugin/DiscordSender.java @@ -97,9 +97,12 @@ public class DiscordSender extends DiscordSenderBase implements CommandSender { @Override public String getName() { - if (user == null) - return "Discord user"; - return name == null ? user.getDisplayName(DiscordPlugin.mainServer) : name; + return name == null ? user == null ? "Discord user" : user.getDisplayName(DiscordPlugin.mainServer) : name; + } + + @Override + public Spigot spigot() { + return new CommandSender.Spigot(); } } diff --git a/src/main/java/buttondevteam/discordplugin/playerfaker/DiscordEntity.java b/src/main/java/buttondevteam/discordplugin/playerfaker/DiscordEntity.java new file mode 100644 index 0000000..b17048a --- /dev/null +++ b/src/main/java/buttondevteam/discordplugin/playerfaker/DiscordEntity.java @@ -0,0 +1,317 @@ +package buttondevteam.discordplugin.playerfaker; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.UUID; + +import org.bukkit.Bukkit; +import org.bukkit.EntityEffect; +import org.bukkit.Location; +import org.bukkit.Server; +import org.bukkit.World; +import org.bukkit.block.PistonMoveReaction; +import org.bukkit.entity.Entity; +import org.bukkit.event.entity.EntityDamageEvent; +import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause; +import org.bukkit.metadata.MetadataValue; +import org.bukkit.permissions.PermissibleBase; +import org.bukkit.permissions.ServerOperator; +import org.bukkit.plugin.Plugin; +import org.bukkit.util.Vector; + +import buttondevteam.discordplugin.DiscordSenderBase; +import lombok.Getter; +import lombok.Setter; +import lombok.experimental.Delegate; +import sx.blah.discord.handle.obj.IChannel; +import sx.blah.discord.handle.obj.IUser; + +@Getter +@Setter +public abstract class DiscordEntity extends DiscordSenderBase implements Entity { + protected DiscordEntity(IUser user, IChannel channel, int entityId, UUID uuid) { + super(user, channel); + this.entityId = entityId; + uniqueId = uuid; + } + + private HashMap metadata = new HashMap(); + + @Delegate + private PermissibleBase perm = new PermissibleBase(new ServerOperator() { + private @Getter @Setter boolean op; + }); + + private Location location; + private Vector velocity; + private final int entityId; + private EntityDamageEvent lastDamageCause; + private final Set scoreboardTags = new HashSet(); + private final UUID uniqueId; + + @Override + public void setMetadata(String metadataKey, MetadataValue newMetadataValue) { + metadata.put(metadataKey, newMetadataValue); + } + + @Override + public List getMetadata(String metadataKey) { + return Arrays.asList(metadata.get(metadataKey)); // Who needs multiple data anyways + } + + @Override + public boolean hasMetadata(String metadataKey) { + return metadata.containsKey(metadataKey); + } + + @Override + public void removeMetadata(String metadataKey, Plugin owningPlugin) { + metadata.remove(metadataKey); + } + + @Override + public Location getLocation(Location loc) { + if (loc != null) { + loc.setWorld(getWorld()); + loc.setX(location.getX()); + loc.setY(location.getY()); + loc.setZ(location.getZ()); + loc.setYaw(location.getYaw()); + loc.setPitch(location.getPitch()); + } + + return loc; + } + + @Override + public double getHeight() { + return 0; + } + + @Override + public double getWidth() { + return 0; + } + + @Override + public boolean isOnGround() { + return false; + } + + @Override + public World getWorld() { + return location.getWorld(); + } + + @Override + public boolean teleport(Location location) { + this.location = location; + return true; + } + + @Override + public boolean teleport(Location location, TeleportCause cause) { + this.location = location; + return true; + } + + @Override + public boolean teleport(Entity destination) { + this.location = destination.getLocation(); + return true; + } + + @Override + public boolean teleport(Entity destination, TeleportCause cause) { + this.location = destination.getLocation(); + return true; + } + + @Override + public List getNearbyEntities(double x, double y, double z) { + return Arrays.asList(); + } + + @Override + public int getFireTicks() { + return 0; + } + + @Override + public int getMaxFireTicks() { + return 0; + } + + @Override + public void setFireTicks(int ticks) { + } + + @Override + public void remove() { + } + + @Override + public boolean isDead() { // Impossible to kill + return false; + } + + @Override + public boolean isValid() { + return true; + } + + @Override + public Server getServer() { + return Bukkit.getServer(); + } + + @Override + public Entity getPassenger() { + return null; + } + + @Override + public boolean setPassenger(Entity passenger) { + return false; + } + + @Override + public List getPassengers() { + return Arrays.asList(); + } + + @Override + public boolean addPassenger(Entity passenger) { + return false; + } + + @Override + public boolean removePassenger(Entity passenger) { // Don't support passengers + return false; + } + + @Override + public boolean isEmpty() { + return true; + } + + @Override + public boolean eject() { + return false; + } + + @Override + public float getFallDistance() { + return 0; + } + + @Override + public void setFallDistance(float distance) { + } + + @Override + public int getTicksLived() { + return 1; + } + + @Override + public void setTicksLived(int value) { + } + + @Override + public void playEffect(EntityEffect type) { + } + + @Override + public boolean isInsideVehicle() { + return false; + } + + @Override + public boolean leaveVehicle() { + return false; + } + + @Override + public Entity getVehicle() { // Don't support vehicles + return null; + } + + @Override + public void setCustomNameVisible(boolean flag) { + } + + @Override + public boolean isCustomNameVisible() { + return true; + } + + @Override + public void setGlowing(boolean flag) { + } + + @Override + public boolean isGlowing() { + return false; + } + + @Override + public void setInvulnerable(boolean flag) { + } + + @Override + public boolean isInvulnerable() { + return true; + } + + @Override + public boolean isSilent() { + return true; + } + + @Override + public void setSilent(boolean flag) { + } + + @Override + public boolean hasGravity() { + return false; + } + + @Override + public void setGravity(boolean gravity) { + } + + @Override + public int getPortalCooldown() { + return 0; + } + + @Override + public void setPortalCooldown(int cooldown) { + } + + @Override + public boolean addScoreboardTag(String tag) { + return scoreboardTags.add(tag); + } + + @Override + public boolean removeScoreboardTag(String tag) { + return scoreboardTags.remove(tag); + } + + @Override + public PistonMoveReaction getPistonMoveReaction() { + return PistonMoveReaction.IGNORE; + } + + @Override + public Entity.Spigot spigot() { + return new Entity.Spigot(); + } + +} diff --git a/src/main/java/buttondevteam/discordplugin/playerfaker/DiscordHumanEntity.java b/src/main/java/buttondevteam/discordplugin/playerfaker/DiscordHumanEntity.java new file mode 100644 index 0000000..eab863b --- /dev/null +++ b/src/main/java/buttondevteam/discordplugin/playerfaker/DiscordHumanEntity.java @@ -0,0 +1,205 @@ +package buttondevteam.discordplugin.playerfaker; + +import java.util.UUID; + +import org.bukkit.GameMode; +import org.bukkit.Location; +import org.bukkit.Material; +import org.bukkit.entity.Entity; +import org.bukkit.entity.EntityType; +import org.bukkit.entity.HumanEntity; +import org.bukkit.entity.Villager; +import org.bukkit.inventory.Inventory; +import org.bukkit.inventory.InventoryView; +import org.bukkit.inventory.InventoryView.Property; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.MainHand; +import org.bukkit.inventory.Merchant; +import org.bukkit.inventory.PlayerInventory; + +import sx.blah.discord.handle.obj.IChannel; +import sx.blah.discord.handle.obj.IUser; + +public abstract class DiscordHumanEntity extends DiscordLivingEntity implements HumanEntity { + protected DiscordHumanEntity(IUser user, IChannel channel, int entityId, UUID uuid) { + super(user, channel, entityId, uuid); + } + + @Override + public PlayerInventory getInventory() { // TODO + return null; + } + + @Override + public Inventory getEnderChest() { + // TODO Auto-generated method stub + return null; + } + + @Override + public MainHand getMainHand() { + return MainHand.RIGHT; + } + + @Override + public boolean setWindowProperty(Property prop, int value) { + return false; + } + + @Override + public InventoryView getOpenInventory() { + // TODO Auto-generated method stub + return null; + } + + @Override + public InventoryView openInventory(Inventory inventory) { + // TODO Auto-generated method stub + return null; + } + + @Override + public InventoryView openWorkbench(Location location, boolean force) { + // TODO Auto-generated method stub + return null; + } + + @Override + public InventoryView openEnchanting(Location location, boolean force) { + // TODO Auto-generated method stub + return null; + } + + @Override + public void openInventory(InventoryView inventory) { + // TODO Auto-generated method stub + + } + + @Override + public InventoryView openMerchant(Villager trader, boolean force) { + // TODO Auto-generated method stub + return null; + } + + @Override + public InventoryView openMerchant(Merchant merchant, boolean force) { + // TODO Auto-generated method stub + return null; + } + + @Override + public void closeInventory() { + // TODO Auto-generated method stub + + } + + @Override + public ItemStack getItemInHand() { + // TODO Auto-generated method stub + return null; + } + + @Override + public void setItemInHand(ItemStack item) { + // TODO Auto-generated method stub + + } + + @Override + public ItemStack getItemOnCursor() { + // TODO Auto-generated method stub + return null; + } + + @Override + public void setItemOnCursor(ItemStack item) { + // TODO Auto-generated method stub + + } + + @Override + public boolean hasCooldown(Material material) { + // TODO Auto-generated method stub + return false; + } + + @Override + public int getCooldown(Material material) { + // TODO Auto-generated method stub + return 0; + } + + @Override + public void setCooldown(Material material, int ticks) { + // TODO Auto-generated method stub + + } + + @Override + public boolean isSleeping() { + // TODO Auto-generated method stub + return false; + } + + @Override + public int getSleepTicks() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public GameMode getGameMode() { + // TODO Auto-generated method stub + return null; + } + + @Override + public void setGameMode(GameMode mode) { + // TODO Auto-generated method stub + + } + + @Override + public boolean isBlocking() { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isHandRaised() { + // TODO Auto-generated method stub + return false; + } + + @Override + public int getExpToLevel() { + // TODO Auto-generated method stub + return 0; + } + + @Override + public Entity getShoulderEntityLeft() { + // TODO Auto-generated method stub + return null; + } + + @Override + public void setShoulderEntityLeft(Entity entity) { + // TODO Auto-generated method stub + + } + + @Override + public Entity getShoulderEntityRight() { + // TODO Auto-generated method stub + return null; + } + + @Override + public void setShoulderEntityRight(Entity entity) { + // TODO Auto-generated method stub + + } + +} diff --git a/src/main/java/buttondevteam/discordplugin/playerfaker/DiscordLivingEntity.java b/src/main/java/buttondevteam/discordplugin/playerfaker/DiscordLivingEntity.java new file mode 100644 index 0000000..23f2601 --- /dev/null +++ b/src/main/java/buttondevteam/discordplugin/playerfaker/DiscordLivingEntity.java @@ -0,0 +1,303 @@ +package buttondevteam.discordplugin.playerfaker; + +import java.util.Arrays; +import java.util.Collection; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.UUID; + +import org.bukkit.Location; +import org.bukkit.Material; +import org.bukkit.attribute.Attribute; +import org.bukkit.attribute.AttributeInstance; +import org.bukkit.block.Block; +import org.bukkit.entity.Entity; +import org.bukkit.entity.LivingEntity; +import org.bukkit.entity.Player; +import org.bukkit.entity.Projectile; +import org.bukkit.inventory.EntityEquipment; +import org.bukkit.inventory.ItemStack; +import org.bukkit.potion.PotionEffect; +import org.bukkit.potion.PotionEffectType; +import org.bukkit.util.Vector; + +import lombok.Getter; +import lombok.Setter; +import sx.blah.discord.handle.obj.IChannel; +import sx.blah.discord.handle.obj.IUser; + +public abstract class DiscordLivingEntity extends DiscordEntity implements LivingEntity { + + protected DiscordLivingEntity(IUser user, IChannel channel, int entityId, UUID uuid) { + super(user, channel, entityId, uuid); + } + + private @Getter EntityEquipment equipment = new DiscordEntityEquipment(this); + + @Getter + @Setter + private static class DiscordEntityEquipment implements EntityEquipment { + + private float leggingsDropChance; + private ItemStack leggings; + private float itemInOffHandDropChance; + private ItemStack itemInOffHand; + private float itemInMainHandDropChance; + private ItemStack itemInMainHand; + private float itemInHandDropChance; + private ItemStack itemInHand; + private float helmetDropChance; + private ItemStack helmet; + private float chestplateDropChance; + private ItemStack chestplate; + private float bootsDropChance; + private ItemStack boots; + private ItemStack[] armorContents = new ItemStack[0]; // TODO + private final Entity holder; + + public DiscordEntityEquipment(Entity holder) { + this.holder = holder; + } + + @Override + public void clear() { + armorContents = new ItemStack[0]; + } + } + + @Override + public AttributeInstance getAttribute(Attribute attribute) { // We don't support any attribute + return null; + } + + @Override + public void damage(double amount) { + } + + @Override + public void damage(double amount, Entity source) { + } + + @Override + public double getHealth() { + return getMaxHealth(); + } + + @Override + public void setHealth(double health) { + } + + @Override + public double getMaxHealth() { + return 100; + } + + @Override + public void setMaxHealth(double health) { + } + + @Override + public void resetMaxHealth() { + } + + @Override + public T launchProjectile(Class projectile) { + return null; + } + + @Override + public T launchProjectile(Class projectile, Vector velocity) { + return null; + } + + @Override + public double getEyeHeight() { + return 0; + } + + @Override + public double getEyeHeight(boolean ignoreSneaking) { + return 0; + } + + @Override + public Location getEyeLocation() { + return getLocation(); + } + + @Override + public List getLineOfSight(Set transparent, int maxDistance) { + return Arrays.asList(); + } + + @Override + public Block getTargetBlock(HashSet transparent, int maxDistance) { + return null; + } + + @Override + public Block getTargetBlock(Set transparent, int maxDistance) { + return null; + } + + @Override + public List getLastTwoTargetBlocks(HashSet transparent, int maxDistance) { + return Arrays.asList(); + } + + @Override + public List getLastTwoTargetBlocks(Set transparent, int maxDistance) { + return Arrays.asList(); + } + + @Override + public int getRemainingAir() { + return 100; + } + + @Override + public void setRemainingAir(int ticks) { + } + + @Override + public int getMaximumAir() { + return 100; + } + + @Override + public void setMaximumAir(int ticks) { + } + + @Override + public int getMaximumNoDamageTicks() { + return 100; + } + + @Override + public void setMaximumNoDamageTicks(int ticks) { + } + + @Override + public double getLastDamage() { + return 0; + } + + @Override + public void setLastDamage(double damage) { + } + + @Override + public int getNoDamageTicks() { + return 100; + } + + @Override + public void setNoDamageTicks(int ticks) { + } + + @Override + public Player getKiller() { + return null; + } + + @Override + public boolean addPotionEffect(PotionEffect effect) { + return false; + } + + @Override + public boolean addPotionEffect(PotionEffect effect, boolean force) { + return false; + } + + @Override + public boolean addPotionEffects(Collection effects) { + return false; + } + + @Override + public boolean hasPotionEffect(PotionEffectType type) { + return false; + } + + @Override + public PotionEffect getPotionEffect(PotionEffectType type) { + return null; + } + + @Override + public void removePotionEffect(PotionEffectType type) { + } + + @Override + public Collection getActivePotionEffects() { + return Arrays.asList(); + } + + @Override + public boolean hasLineOfSight(Entity other) { + return false; + } + + @Override + public boolean getRemoveWhenFarAway() { + return false; + } + + @Override + public void setRemoveWhenFarAway(boolean remove) { + } + + @Override + public void setCanPickupItems(boolean pickup) { + } + + @Override + public boolean getCanPickupItems() { + return false; + } + + @Override + public boolean isLeashed() { + return false; + } + + @Override + public Entity getLeashHolder() throws IllegalStateException { + throw new IllegalStateException(); + } + + @Override + public boolean setLeashHolder(Entity holder) { + return false; + } + + @Override + public boolean isGliding() { + return false; + } + + @Override + public void setGliding(boolean gliding) { + } + + @Override + public void setAI(boolean ai) { + } + + @Override + public boolean hasAI() { + return false; + } + + @Override + public void setCollidable(boolean collidable) { + } + + @Override + public boolean isCollidable() { + return false; + } + +}