Skip to content

Commit

Permalink
🐛 fix(AngelGem): fix #3, made Angel Gem confirm that it was the sourc…
Browse files Browse the repository at this point in the history
…e of flight
  • Loading branch information
ProfElements committed Jan 2, 2021
1 parent 11dad38 commit fc82651
Showing 1 changed file with 15 additions and 6 deletions.
21 changes: 15 additions & 6 deletions src/main/java/me/profelements/dynatech/items/tools/AngelGem.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,13 @@

import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;

import org.apache.commons.lang.Validate;
import org.bukkit.ChatColor;
import org.bukkit.GameMode;
import org.bukkit.entity.Item;
import org.bukkit.entity.Player;
import org.bukkit.event.player.PlayerDropItemEvent;
Expand All @@ -22,8 +25,9 @@

public class AngelGem extends SlimefunItem {

private boolean enabledPlayer = false;

private float flySpeed = 0.1f;
private boolean flightEnabled = false;

public AngelGem(Category category, SlimefunItemStack item, RecipeType recipeType, ItemStack[] recipe) {
super(category, item, recipeType, recipe);
Expand All @@ -36,10 +40,13 @@ private ItemDropHandler onItemDrop() {

@Override
public boolean onItemDrop(PlayerDropItemEvent e, Player p, Item item) {
p.setFlying(false);
p.setAllowFlight(false);
p.setFlySpeed(0.1f);
p.setFallDistance(0.0f);
if (enabledPlayer && e.getPlayer().getGameMode() != GameMode.CREATIVE) {
e.getPlayer().setFlying(false);
e.getPlayer().setAllowFlight(false);
e.getPlayer().setFlySpeed(0.1f);
e.getPlayer().setFallDistance(0.0f);
enabledPlayer = false;
}
return true;
}

Expand All @@ -50,17 +57,19 @@ private ItemUseHandler onRightClick() {
return new ItemUseHandler() {
@Override
public void onRightClick(PlayerRightClickEvent e) {
if (e.getPlayer().isSneaking() && e.getPlayer().getAllowFlight()) {
if (e.getPlayer().isSneaking()) {
e.getPlayer().setFlying(false);
e.getPlayer().setAllowFlight(false);
e.getPlayer().setFallDistance(0f);
e.getItem().setItemMeta(updateLore(e.getItem(), e.getPlayer()));
enabledPlayer = false;
}
if (!e.getPlayer().getAllowFlight()) {
e.getPlayer().setAllowFlight(true);
setFlySpeed(0.10f);
e.getPlayer().setFlySpeed(getFlySpeed());
e.getItem().setItemMeta(updateLore(e.getItem(), e.getPlayer()));
enabledPlayer = true;
} else {
if (getFlySpeed() < 1f) {
setFlySpeed(getFlySpeed() + 0.10f);
Expand Down

0 comments on commit fc82651

Please sign in to comment.