Skip to content

Commit 7081ef9

Browse files
committed
アイテムを拾うことできなように
1 parent 1184006 commit 7081ef9

File tree

1 file changed

+21
-2
lines changed

1 file changed

+21
-2
lines changed

src/main/java/com/github/elic0de/thejpspit/listener/EventListener.java

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,21 @@
55
import com.github.elic0de.thejpspit.nms.PacketManager;
66
import com.github.elic0de.thejpspit.player.PitPlayer;
77
import com.github.elic0de.thejpspit.player.PitPlayerManager;
8+
import java.math.BigDecimal;
89
import java.util.Optional;
910
import org.bukkit.Bukkit;
1011
import org.bukkit.GameMode;
1112
import org.bukkit.Location;
1213
import org.bukkit.Material;
14+
import org.bukkit.entity.EntityType;
1315
import org.bukkit.entity.Player;
1416
import org.bukkit.event.EventHandler;
1517
import org.bukkit.event.Listener;
1618
import org.bukkit.event.block.Action;
1719
import org.bukkit.event.entity.EntityDamageByEntityEvent;
1820
import org.bukkit.event.entity.EntityDamageEvent;
1921
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
22+
import org.bukkit.event.entity.EntityPickupItemEvent;
2023
import org.bukkit.event.entity.EntityRegainHealthEvent;
2124
import org.bukkit.event.entity.FoodLevelChangeEvent;
2225
import org.bukkit.event.entity.PlayerDeathEvent;
@@ -26,6 +29,7 @@
2629
import org.bukkit.event.player.PlayerItemConsumeEvent;
2730
import org.bukkit.event.player.PlayerItemDamageEvent;
2831
import org.bukkit.event.player.PlayerJoinEvent;
32+
import org.bukkit.event.player.PlayerPickupItemEvent;
2933
import org.bukkit.event.player.PlayerQuitEvent;
3034
import org.bukkit.inventory.EquipmentSlot;
3135
import org.bukkit.potion.PotionEffect;
@@ -161,15 +165,30 @@ private void onEntityRegainHealth(EntityRegainHealthEvent event) {
161165
}
162166
}
163167

168+
@EventHandler
169+
public void onPickUp(EntityPickupItemEvent event) {
170+
if (event.getEntityType() != EntityType.PLAYER) return;
171+
final Player player = (Player) event.getEntity();
172+
final PitPlayer pitPlayer = PitPlayerManager.getPitPlayer(player);
173+
174+
// 金の延べ棒だったらコインを追加する
175+
if (event.getItem().getItemStack().getType() == Material.GOLD_INGOT) {
176+
TheJpsPit.getInstance().getEconomyHook().ifPresent(economyHook -> economyHook.takeMoney(pitPlayer, BigDecimal.valueOf(0)));
177+
return;
178+
}
179+
180+
event.setCancelled(true);
181+
}
182+
164183
@EventHandler
165184
public void onXpGain(PlayerExpChangeEvent event) {
166185
event.setAmount(0);
167186
}
168187

169188
@EventHandler
170189
public void on(PlayerInteractEvent event) {
171-
/*final PitPlayer pitPlayer = PitPlayerManager.getPitPlayer(event.getPlayer());
172-
pitPlayer.increaseStreaks();*/
190+
final PitPlayer pitPlayer = PitPlayerManager.getPitPlayer(event.getPlayer());
191+
pitPlayer.increaseStreaks();
173192
if (event.getHand() != EquipmentSlot.HAND) {
174193
return;
175194
}

0 commit comments

Comments
 (0)