fuck you super there is development

This commit is contained in:
ZeroEpoch1969
2019-07-10 19:13:57 -07:00
parent 6b8cab5005
commit 591b8644cb
22 changed files with 341 additions and 14 deletions

View File

@ -0,0 +1,61 @@
package me.totalfreedom.totalfreedommod.fun;
import java.util.HashMap;
import me.totalfreedom.totalfreedommod.FreedomService;
import me.totalfreedom.totalfreedommod.TotalFreedomMod;
import org.bukkit.ChatColor;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.player.PlayerResourcePackStatusEvent;
import static org.bukkit.event.player.PlayerResourcePackStatusEvent.Status;
public class CurseListener extends FreedomService
{
public HashMap<Player, Player> cursedPlayers = new HashMap<Player, Player>();
public CurseListener(TotalFreedomMod plugin)
{
super(plugin);
}
@Override
protected void onStart()
{
}
@Override
protected void onStop()
{
}
@EventHandler(priority = EventPriority.MONITOR)
public void onResourcePackStatus(PlayerResourcePackStatusEvent event)
{
Player player = event.getPlayer();
PlayerResourcePackStatusEvent.Status cursed = event.getStatus();
Player cursedBy = cursedPlayers.get(player);
if (cursed.equals(Status.ACCEPTED))
{
cursedBy.sendMessage(ChatColor.GREEN + "Casting curse on " + player.getName() + "...");
}
else if (cursed.equals(Status.DECLINED))
{
cursedBy.sendMessage(ChatColor.RED + "Failed to start cast on " + player.getName() + "!");
cursedPlayers.remove(player);
}
else if (cursed.equals(Status.SUCCESSFULLY_LOADED))
{
cursedBy.sendMessage(ChatColor.GREEN + "Successfully cursed + " + player.getName() + "!");
cursedPlayers.remove(player);
}
else if (cursed.equals(Status.FAILED_DOWNLOAD))
{
cursedBy.sendMessage(ChatColor.RED + "Failed to cast curse on " + player.getName() + "!");
cursedPlayers.remove(player);
}
}
}

View File

@ -9,6 +9,9 @@ import me.totalfreedom.totalfreedommod.config.ConfigEntry;
import me.totalfreedom.totalfreedommod.player.FPlayer;
import me.totalfreedom.totalfreedommod.util.DepreciationAggregator;
import me.totalfreedom.totalfreedommod.util.FUtil;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.Entity;
import org.bukkit.event.entity.ProjectileHitEvent;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.Sound;
@ -25,6 +28,8 @@ import org.bukkit.util.Vector;
public class ItemFun extends FreedomService
{
public List<Player> explosivePlayers = new ArrayList<Player>();
private final Random random = new Random();
public ItemFun(TotalFreedomMod plugin)
@ -271,6 +276,25 @@ public class ItemFun extends FreedomService
}
}
@EventHandler
public void onProjectileHit(ProjectileHitEvent event)
{
Entity entity = event.getEntity();
Arrow arrow = null;
if (entity instanceof Arrow)
{
arrow = (Arrow)entity;
}
if (arrow != null && (arrow.getShooter() instanceof Player))
{
if (explosivePlayers.contains((Player)arrow.getShooter()))
{
arrow.getLocation().getWorld().createExplosion(arrow.getLocation().getX(), arrow.getLocation().getY(), arrow.getLocation().getZ(), ConfigEntry.EXPLOSIVE_RADIUS.getDouble().floatValue(), false, ConfigEntry.ALLOW_EXPLOSIONS.getBoolean());
arrow.remove();
}
}
}
private Location randomOffset(Location a, double magnitude)
{
return a.clone().add(randomDoubleRange(-1.0, 1.0) * magnitude, randomDoubleRange(-1.0, 1.0) * magnitude, randomDoubleRange(-1.0, 1.0) * magnitude);