|
5 | 5 | import com.github.elic0de.thejpspit.nms.PacketManager; |
6 | 6 | import com.github.elic0de.thejpspit.player.PitPlayer; |
7 | 7 | import com.github.elic0de.thejpspit.player.PitPlayerManager; |
| 8 | +import java.math.BigDecimal; |
8 | 9 | import java.util.Optional; |
9 | 10 | import org.bukkit.Bukkit; |
10 | 11 | import org.bukkit.GameMode; |
11 | 12 | import org.bukkit.Location; |
12 | 13 | import org.bukkit.Material; |
| 14 | +import org.bukkit.entity.EntityType; |
13 | 15 | import org.bukkit.entity.Player; |
14 | 16 | import org.bukkit.event.EventHandler; |
15 | 17 | import org.bukkit.event.Listener; |
16 | 18 | import org.bukkit.event.block.Action; |
17 | 19 | import org.bukkit.event.entity.EntityDamageByEntityEvent; |
18 | 20 | import org.bukkit.event.entity.EntityDamageEvent; |
19 | 21 | import org.bukkit.event.entity.EntityDamageEvent.DamageCause; |
| 22 | +import org.bukkit.event.entity.EntityPickupItemEvent; |
20 | 23 | import org.bukkit.event.entity.EntityRegainHealthEvent; |
21 | 24 | import org.bukkit.event.entity.FoodLevelChangeEvent; |
22 | 25 | import org.bukkit.event.entity.PlayerDeathEvent; |
|
26 | 29 | import org.bukkit.event.player.PlayerItemConsumeEvent; |
27 | 30 | import org.bukkit.event.player.PlayerItemDamageEvent; |
28 | 31 | import org.bukkit.event.player.PlayerJoinEvent; |
| 32 | +import org.bukkit.event.player.PlayerPickupItemEvent; |
29 | 33 | import org.bukkit.event.player.PlayerQuitEvent; |
30 | 34 | import org.bukkit.inventory.EquipmentSlot; |
31 | 35 | import org.bukkit.potion.PotionEffect; |
@@ -161,15 +165,30 @@ private void onEntityRegainHealth(EntityRegainHealthEvent event) { |
161 | 165 | } |
162 | 166 | } |
163 | 167 |
|
| 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 | + |
164 | 183 | @EventHandler |
165 | 184 | public void onXpGain(PlayerExpChangeEvent event) { |
166 | 185 | event.setAmount(0); |
167 | 186 | } |
168 | 187 |
|
169 | 188 | @EventHandler |
170 | 189 | 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(); |
173 | 192 | if (event.getHand() != EquipmentSlot.HAND) { |
174 | 193 | return; |
175 | 194 | } |
|
0 commit comments