|
12 | 12 |
|
13 | 13 | public class UtilFly {
|
14 | 14 |
|
15 |
| - public static ArrayList<FPlayer> playersFlying; |
| 15 | + public static ArrayList<FPlayer> playersFlying = SavageFactions.playersFlying; |
16 | 16 |
|
17 |
| - static { |
18 |
| - playersFlying = SavageFactions.playersFlying; |
19 |
| - } |
| 17 | + public static void run() { |
| 18 | + if (!SavageFactions.plugin.getConfig().getBoolean("enable-faction-flight")) |
| 19 | + return; |
20 | 20 |
|
21 |
| - public UtilFly() { |
| 21 | + playersFlying.clear(); |
| 22 | + |
| 23 | + Bukkit.getScheduler().scheduleSyncRepeatingTask(SavageFactions.plugin, () -> { |
| 24 | + for (FPlayer fp : playersFlying) { |
| 25 | + if (fp != null) |
| 26 | + fp.checkIfNearbyEnemies(); |
| 27 | + } |
| 28 | + }, 0, SavageFactions.plugin.getConfig().getInt("fly-task-interval", 10)); |
22 | 29 | }
|
23 | 30 |
|
24 |
| - public static void run() { |
25 |
| - if (SavageFactions.plugin.getConfig().getBoolean("enable-faction-flight")) { |
26 |
| - playersFlying.clear(); |
27 |
| - Bukkit.getScheduler().scheduleSyncRepeatingTask(SavageFactions.plugin, new Runnable() { |
28 |
| - public void run() { |
29 |
| - Iterator var2 = UtilFly.playersFlying.iterator(); |
30 |
| - |
31 |
| - while (var2.hasNext()) { |
32 |
| - FPlayer fp = (FPlayer) var2.next(); |
33 |
| - if (fp != null) { |
34 |
| - fp.checkIfNearbyEnemies(); |
35 |
| - } |
36 |
| - } |
| 31 | + public static void setFly(FPlayer fp, boolean fly, boolean silent, boolean damage) { |
| 32 | + if (!SavageFactions.plugin.getConfig().getBoolean("enable-faction-flight")) |
| 33 | + return; |
37 | 34 |
|
38 |
| - } |
39 |
| - }, 0L, (long) SavageFactions.plugin.getConfig().getInt("fly-task-interval", 10)); |
| 35 | + fp.getPlayer().setAllowFlight(fly); |
| 36 | + fp.getPlayer().setFlying(fly); |
| 37 | + fp.setFlying(fly); |
| 38 | + |
| 39 | + if (fly) { |
| 40 | + playersFlying.add(fp); |
| 41 | + } else { |
| 42 | + playersFlying.remove(fp); |
40 | 43 | }
|
41 |
| - } |
42 | 44 |
|
43 |
| - public static void setFly(FPlayer fp, boolean fly, boolean silent, boolean damage) { |
44 |
| - if (SavageFactions.plugin.getConfig().getBoolean("enable-faction-flight")) { |
45 |
| - fp.getPlayer().setAllowFlight(fly); |
46 |
| - fp.getPlayer().setFlying(fly); |
47 |
| - fp.setFlying(fly); |
48 |
| - if (fly) { |
49 |
| - playersFlying.add(fp); |
| 45 | + if (!silent) { |
| 46 | + if (!damage) { |
| 47 | + fp.msg(TL.COMMAND_FLY_CHANGE, fly ? "enabled" : "disabled"); |
50 | 48 | } else {
|
51 |
| - playersFlying.remove(fp); |
| 49 | + fp.msg(TL.COMMAND_FLY_DAMAGE); |
52 | 50 | }
|
53 |
| - |
54 |
| - if (!silent) { |
55 |
| - if (!damage) { |
56 |
| - fp.msg(TL.COMMAND_FLY_CHANGE, fly ? "enabled" : "disabled"); |
57 |
| - } else { |
58 |
| - fp.msg(TL.COMMAND_FLY_DAMAGE); |
59 |
| - } |
60 |
| - } |
61 |
| - |
62 |
| - setFallDamage(fp, fly, damage); |
63 | 51 | }
|
| 52 | + |
| 53 | + setFallDamage(fp, fly, damage); |
64 | 54 | }
|
65 | 55 |
|
66 | 56 | public static void checkFly(FPlayer me, Faction factionTo) {
|
67 |
| - if (SavageFactions.plugin.getConfig().getBoolean("enable-faction-flight")) { |
68 |
| - if (!me.isAdminBypassing() || !me.isFlying()) { |
69 |
| - Relation relationTo; |
70 |
| - if (!me.isFlying()) { |
71 |
| - if (me.isAdminBypassing()) { |
72 |
| - setFly(me, true, false, false); |
73 |
| - return; |
74 |
| - } |
75 |
| - |
76 |
| - if (factionTo == me.getFaction() && me.getPlayer().hasPermission("factions.fly")) { |
77 |
| - setFly(me, true, false, false); |
78 |
| - } else { |
79 |
| - relationTo = factionTo.getRelationTo(me); |
80 |
| - if (factionTo.isWilderness() && me.canflyinWilderness() || factionTo.isWarZone() && me.canflyinWarzone() || factionTo.isSafeZone() && me.canflyinSafezone() || relationTo == Relation.ENEMY && me.canflyinEnemy() || relationTo == Relation.ALLY && me.canflyinAlly() || relationTo == Relation.TRUCE && me.canflyinTruce() || relationTo == Relation.NEUTRAL && me.canflyinNeutral()) { |
81 |
| - setFly(me, true, false, false); |
82 |
| - } |
83 |
| - } |
84 |
| - } else { |
85 |
| - relationTo = factionTo.getRelationTo(me); |
86 |
| - if (factionTo.equals(me.getFaction()) && !me.getPlayer().hasPermission("factions.fly") || factionTo.isWilderness() && !me.canflyinWilderness() || factionTo.isWarZone() && !me.canflyinWarzone() || factionTo.isSafeZone() && !me.canflyinSafezone() || relationTo == Relation.ENEMY && !me.canflyinEnemy() || relationTo == Relation.ALLY && !me.canflyinAlly() || relationTo == Relation.TRUCE && !me.canflyinTruce() || relationTo == Relation.NEUTRAL && !me.canflyinNeutral()) { |
87 |
| - setFly(me, false, false, false); |
88 |
| - } |
89 |
| - } |
| 57 | + if (!SavageFactions.plugin.getConfig().getBoolean("enable-faction-flight")) |
| 58 | + return; |
| 59 | + |
| 60 | + if (me.isAdminBypassing() && me.isFlying()) |
| 61 | + return; |
| 62 | + |
| 63 | + if (!me.isFlying()) { |
| 64 | + if (me.isAdminBypassing()) { |
| 65 | + UtilFly.setFly(me, true, false, false); |
| 66 | + return; |
| 67 | + } |
90 | 68 |
|
| 69 | + if (factionTo == me.getFaction() && me.getPlayer().hasPermission("factions.fly")) { |
| 70 | + UtilFly.setFly(me, true, false, false); |
| 71 | + } else { |
| 72 | + Relation relationTo = factionTo.getRelationTo(me); |
| 73 | + if ((factionTo.isWilderness() && me.canflyinWilderness()) || (factionTo.isWarZone() && me.canflyinWarzone()) |
| 74 | + || (factionTo.isSafeZone() && me.canflyinSafezone()) || (relationTo == Relation.ENEMY && me.canflyinEnemy()) |
| 75 | + || (relationTo == Relation.ALLY && me.canflyinAlly()) || (relationTo == Relation.TRUCE && me.canflyinTruce()) |
| 76 | + || (relationTo == Relation.NEUTRAL && me.canflyinNeutral())) { |
| 77 | + UtilFly.setFly(me, true, false, false); |
| 78 | + } |
| 79 | + } |
| 80 | + } else { |
| 81 | + Relation relationTo = factionTo.getRelationTo(me); |
| 82 | + if ((factionTo.equals(me.getFaction()) && !me.getPlayer().hasPermission("factions.fly")) |
| 83 | + || (factionTo.isWilderness() && !me.canflyinWilderness()) || (factionTo.isWarZone() && !me.canflyinWarzone()) |
| 84 | + || (factionTo.isSafeZone() && !me.canflyinSafezone()) || (relationTo == Relation.ENEMY && !me.canflyinEnemy()) |
| 85 | + || (relationTo == Relation.ALLY && !me.canflyinAlly()) || (relationTo == Relation.TRUCE && !me.canflyinTruce()) |
| 86 | + || (relationTo == Relation.NEUTRAL && !me.canflyinNeutral())) { |
| 87 | + UtilFly.setFly(me, false, false, false); |
91 | 88 | }
|
92 | 89 | }
|
93 | 90 | }
|
94 | 91 |
|
95 |
| - public static void setFallDamage(final FPlayer fp, boolean fly, boolean damage) { |
| 92 | + public static void setFallDamage(FPlayer fp, boolean fly, boolean damage) { |
96 | 93 | if (!fly) {
|
97 | 94 | if (!damage) {
|
98 |
| - fp.sendMessage(TL.COMMAND_FLY_COOLDOWN.toString().replace("{amount}", String.valueOf(SavageFactions.plugin.getConfig().getInt("fly-falldamage-cooldown", 3)))); |
| 95 | + fp.sendMessage(TL.COMMAND_FLY_COOLDOWN.toString().replace("{amount}", SavageFactions.plugin.getConfig().getInt("fly-falldamage-cooldown", 3) + "")); |
99 | 96 | }
|
100 | 97 |
|
101 | 98 | int cooldown = SavageFactions.plugin.getConfig().getInt("fly-falldamage-cooldown", 3);
|
102 | 99 | if (cooldown > 0) {
|
103 | 100 | fp.setTakeFallDamage(false);
|
104 |
| - Bukkit.getScheduler().runTaskLater(SavageFactions.plugin, new Runnable() { |
105 |
| - public void run() { |
106 |
| - fp.setTakeFallDamage(true); |
107 |
| - } |
108 |
| - }, 20L * (long) cooldown); |
| 101 | + Bukkit.getScheduler().runTaskLater(SavageFactions.plugin, () -> fp.setTakeFallDamage(true), 20L * cooldown); |
109 | 102 | }
|
110 | 103 | }
|
111 |
| - |
112 | 104 | }
|
113 | 105 | }
|
114 | 106 |
|
| 107 | + |
0 commit comments