|
| 1 | +package be4rjp.sclat.listener |
1 | 2 |
|
2 | | -package be4rjp.sclat.listener; |
3 | | - |
4 | | -import be4rjp.sclat.api.player.PlayerData; |
5 | | -import be4rjp.sclat.api.team.Team; |
6 | | -import be4rjp.sclat.data.DataMgr; |
7 | | -import be4rjp.sclat.manager.DeathMgr; |
8 | | -import java.util.ArrayList; |
9 | | -import java.util.List; |
10 | | -import org.bukkit.GameMode; |
11 | | -import org.bukkit.Location; |
12 | | -import org.bukkit.Material; |
13 | | -import org.bukkit.block.Block; |
14 | | -import org.bukkit.block.BlockFace; |
15 | | -import org.bukkit.entity.Player; |
| 3 | +import be4rjp.sclat.data.DataMgr.blockDataMap |
| 4 | +import be4rjp.sclat.data.DataMgr.getPlayerData |
| 5 | +import be4rjp.sclat.manager.DeathMgr |
| 6 | +import org.bukkit.GameMode |
| 7 | +import org.bukkit.Material |
| 8 | +import org.bukkit.block.Block |
| 9 | +import org.bukkit.block.BlockFace |
| 10 | +import org.bukkit.entity.Player |
16 | 11 |
|
17 | 12 | /** |
18 | 13 | * |
19 | 14 | * @author Be4rJP |
20 | 15 | */ |
21 | | -public class SquidListenerMgr { |
22 | | - public static void CheckOnInk(Player player) { |
23 | | - PlayerData data = DataMgr.getPlayerData(player); |
24 | | - if (!data.isInMatch()) |
25 | | - return; |
26 | | - Location loc = player.getLocation(); |
27 | | - Block playerblock = player.getLocation().getBlock(); |
28 | | - Block b1 = loc.add(0, -0.5, 0).getBlock(); |
29 | | - Block b2 = player.getLocation().getBlock().getRelative(BlockFace.NORTH); |
30 | | - Block b3 = player.getLocation().getBlock().getRelative(BlockFace.EAST); |
31 | | - Block b4 = player.getLocation().getBlock().getRelative(BlockFace.SOUTH); |
32 | | - Block b5 = player.getLocation().getBlock().getRelative(BlockFace.WEST); |
33 | | - |
34 | | - List<Block> list = new ArrayList<>(); |
35 | | - list.add(b1); |
36 | | - list.add(b2); |
37 | | - list.add(b3); |
38 | | - list.add(b4); |
39 | | - list.add(b5); |
| 16 | +object SquidListenerMgr { |
| 17 | + fun checkOnInk(player: Player) { |
| 18 | + val data = getPlayerData(player) |
| 19 | + if (!data!!.isInMatch()) return |
| 20 | + val loc = player.getLocation() |
| 21 | + val playerblock = player.getLocation().getBlock() |
| 22 | + val b1 = loc.add(0.0, -0.5, 0.0).getBlock() |
| 23 | + val b2 = player.getLocation().getBlock().getRelative(BlockFace.NORTH) |
| 24 | + val b3 = player.getLocation().getBlock().getRelative(BlockFace.EAST) |
| 25 | + val b4 = player.getLocation().getBlock().getRelative(BlockFace.SOUTH) |
| 26 | + val b5 = player.getLocation().getBlock().getRelative(BlockFace.WEST) |
40 | 27 |
|
41 | | - if (playerblock.getType() == Material.WATER && player.getGameMode().equals(GameMode.ADVENTURE)) |
42 | | - DeathMgr.PlayerDeathRunnable(player, player, "water"); |
| 28 | + val list: MutableList<Block> = ArrayList<Block>() |
| 29 | + list.add(b1) |
| 30 | + list.add(b2) |
| 31 | + list.add(b3) |
| 32 | + list.add(b4) |
| 33 | + list.add(b5) |
43 | 34 |
|
44 | | - try { |
45 | | - if (data.match.getMapData().getVoidY() != 0) { |
46 | | - if (player.getLocation().getY() <= data.match.getMapData().getVoidY()) { |
47 | | - DeathMgr.PlayerDeathRunnable(player, player, "fall"); |
48 | | - } |
49 | | - } |
50 | | - } catch (Exception e) { |
51 | | - } |
| 35 | + if (playerblock.getType() == Material.WATER && player.getGameMode() == GameMode.ADVENTURE) { |
| 36 | + DeathMgr.PlayerDeathRunnable( |
| 37 | + player, |
| 38 | + player, |
| 39 | + "water", |
| 40 | + ) |
| 41 | + } |
52 | 42 |
|
53 | | - // if(!DataMgr.getBlockDataMap().containsKey(b2) || |
54 | | - // !DataMgr.getBlockDataMap().containsKey(b3) || |
55 | | - // !DataMgr.getBlockDataMap().containsKey(b4) || |
56 | | - // !DataMgr.getBlockDataMap().containsKey(b5) || |
57 | | - // !DataMgr.getBlockDataMap().containsKey(b1)) |
58 | | - // return; |
| 43 | + try { |
| 44 | + if (data.match.mapData!!.voidY != 0) { |
| 45 | + if (player.getLocation().getY() <= data.match.mapData!!.voidY) { |
| 46 | + DeathMgr.PlayerDeathRunnable(player, player, "fall") |
| 47 | + } |
| 48 | + } |
| 49 | + } catch (e: Exception) { |
| 50 | + } |
59 | 51 |
|
60 | | - Team team = DataMgr.getPlayerData(player).team; |
61 | | - Material p = Material.getMaterial(data.team.getTeamColor().concrete.toString() + "_POWDER"); |
| 52 | + // if(!DataMgr.getBlockDataMap().containsKey(b2) || |
| 53 | + // !DataMgr.getBlockDataMap().containsKey(b3) || |
| 54 | + // !DataMgr.getBlockDataMap().containsKey(b4) || |
| 55 | + // !DataMgr.getBlockDataMap().containsKey(b5) || |
| 56 | + // !DataMgr.getBlockDataMap().containsKey(b1)) |
| 57 | + // return; |
| 58 | + val team = getPlayerData(player)!!.team |
| 59 | + val p = |
| 60 | + Material.getMaterial( |
| 61 | + data.team.teamColor!! |
| 62 | + .concrete |
| 63 | + .toString() + "_POWDER", |
| 64 | + ) |
62 | 65 |
|
63 | | - for (Block block : list) { |
64 | | - if (!block.equals(b1)) { |
65 | | - if (DataMgr.getBlockDataMap().containsKey(block)) { |
66 | | - if (DataMgr.getBlockDataMap().get(block).team == data.team) { |
67 | | - if (!data.getIsSquid() || block.getType().equals(Material.AIR)) |
68 | | - continue; |
69 | | - data.setIsOnInk(true); |
70 | | - player.setAllowFlight(true); |
71 | | - player.setFlying(true); |
72 | | - return; |
73 | | - } |
74 | | - } |
75 | | - } else { |
76 | | - if (DataMgr.getBlockDataMap().containsKey(block)) { |
77 | | - if (DataMgr.getBlockDataMap().get(block).team == data.team) { |
78 | | - if (!data.getIsSquid() || block.getType().equals(Material.AIR)) |
79 | | - continue; |
80 | | - data.setIsOnInk(true); |
81 | | - if (!data.getIsUsingJetPack()) { |
82 | | - player.setAllowFlight(false); |
83 | | - player.setFlying(false); |
84 | | - } |
85 | | - return; |
86 | | - } |
87 | | - } |
88 | | - } |
89 | | - } |
| 66 | + for (block in list) { |
| 67 | + if (block != b1) { |
| 68 | + if (blockDataMap.containsKey(block)) { |
| 69 | + if (blockDataMap.get(block)!!.team == data.team) { |
| 70 | + if (!data.getIsSquid() || block.getType() == Material.AIR) continue |
| 71 | + data.setIsOnInk(true) |
| 72 | + player.setAllowFlight(true) |
| 73 | + player.setFlying(true) |
| 74 | + return |
| 75 | + } |
| 76 | + } |
| 77 | + } else { |
| 78 | + if (blockDataMap.containsKey(block)) { |
| 79 | + if (blockDataMap.get(block)!!.team == data.team) { |
| 80 | + if (!data.getIsSquid() || block.getType() == Material.AIR) continue |
| 81 | + data.setIsOnInk(true) |
| 82 | + if (!data.getIsUsingJetPack()) { |
| 83 | + player.setAllowFlight(false) |
| 84 | + player.setFlying(false) |
| 85 | + } |
| 86 | + return |
| 87 | + } |
| 88 | + } |
| 89 | + } |
| 90 | + } |
90 | 91 |
|
91 | | - data.setIsOnInk(false); |
92 | | - if (!data.getIsUsingJetPack()) { |
93 | | - player.setAllowFlight(false); |
94 | | - player.setFlying(false); |
95 | | - } |
96 | | - } |
| 92 | + data.setIsOnInk(false) |
| 93 | + if (!data.getIsUsingJetPack()) { |
| 94 | + player.setAllowFlight(false) |
| 95 | + player.setFlying(false) |
| 96 | + } |
| 97 | + } |
97 | 98 | } |
0 commit comments