Fixing Loader String Double Activation #159
@ -83,5 +83,5 @@ public class Detoloader {
|
|||||||
public static final int WOODEN_BUTTON = 30;
|
public static final int WOODEN_BUTTON = 30;
|
||||||
public static final int PRESSURE_PLATE = 20;
|
public static final int PRESSURE_PLATE = 20;
|
||||||
public static final int NOTE_BLOCK = 1;
|
public static final int NOTE_BLOCK = 1;
|
||||||
public static final int TRIPWIRE = 10;
|
public static final int TRIPWIRE = 20;
|
||||||
|
|||||||
}
|
}
|
||||||
|
@ -21,6 +21,7 @@ package de.steamwar.bausystem.world;
|
|||||||
|
|
||||||
import de.steamwar.bausystem.BauSystem;
|
import de.steamwar.bausystem.BauSystem;
|
||||||
import de.steamwar.core.Core;
|
import de.steamwar.core.Core;
|
||||||
YoyoNow
hat
Könntest du alle Sachen auf das neuere Version System umstellen aus dieser Klasse? Damit dieser Import vllt noch weggeht? Könntest du alle Sachen auf das neuere Version System umstellen aus dieser Klasse? Damit dieser Import vllt noch weggeht?
Chaoscaot
hat
Nope, sind zwei separate PR. Nope, sind zwei separate PR.
YoyoNow
hat
Dann mach dafür gleich einen eigenen PR auf Dann mach dafür gleich einen eigenen PR auf
|
|||||||
|
import de.steamwar.core.VersionedCallable;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
@ -64,6 +65,7 @@ public class AutoLoader extends IAutoLoader implements Listener {
|
|||||||
private int waitTicks;
|
private int waitTicks;
|
||||||
private ListIterator<LoaderAction> lastAction;
|
private ListIterator<LoaderAction> lastAction;
|
||||||
private boolean setup;
|
private boolean setup;
|
||||||
|
private Location lastLocation;
|
||||||
|
|
||||||
private AutoLoader(Player player){
|
private AutoLoader(Player player){
|
||||||
this.player = player;
|
this.player = player;
|
||||||
@ -163,28 +165,28 @@ public class AutoLoader extends IAutoLoader implements Listener {
|
|||||||
if (event.getPlayer().isSneaking())
|
if (event.getPlayer().isSneaking())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if(!setup || !event.getPlayer().equals(player))
|
if (!setup || !event.getPlayer().equals(player))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
Detoloader detoloader = null;
|
Detoloader detoloader = VersionedCallable.call(
|
||||||
switch(Core.getVersion()){
|
new VersionedCallable<>(() -> AutoLoader_12.onPlayerInteractLoader(event), 12),
|
||||||
case 15:
|
new VersionedCallable<>(() -> AutoLoader_15.onPlayerInteractLoader(event), 15));
|
||||||
YoyoNow
hat
Was willst du machen, wenn du keinen hast? also nicht Version größer gleich 12 Was willst du machen, wenn du keinen hast? also nicht Version größer gleich 12
Chaoscaot
hat
Dann hat Spieler Pech gehabt, wir haben nur 1.12 und 1.15 Server, als ist das nicht anzunehmen. Dann hat Spieler Pech gehabt, wir haben nur 1.12 und 1.15 Server, als ist das nicht anzunehmen.
|
|||||||
detoloader = AutoLoader_15.onPlayerInteractLoader(event);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
detoloader = AutoLoader_12.onPlayerInteractLoader(event);
|
|
||||||
|
|
||||||
}
|
if (detoloader == null || detoloader.getActivation() < 0) return;
|
||||||
YoyoNow
hat
Die Lambdas kann man in eine Zeile machen, ist lesbarer, siehe oben Die Lambdas kann man in eine Zeile machen, ist lesbarer, siehe oben
|
|||||||
if(detoloader == null || detoloader.getActivation() < 0) return;
|
|
||||||
if(detoloader.useActive)
|
if (lastLocation != null && lastLocation.distance(event.getClickedBlock().getLocation()) <= 1) return;
|
||||||
YoyoNow
hat
Kann der detoloader wirklich null sein? Kann der detoloader wirklich null sein?
Chaoscaot
hat
Theoretisch nein, praktisch Ja Theoretisch nein, praktisch Ja
|
|||||||
|
|
||||||
|
if (detoloader.useActive) {
|
||||||
new IAutoLoader.RedstoneActivation(this, event.getClickedBlock().getLocation()
|
new IAutoLoader.RedstoneActivation(this, event.getClickedBlock().getLocation()
|
||||||
YoyoNow
hat
Klammern weg! Und hinter dem if ein ' ' space Klammern weg! Und hinter dem if ein ' ' space
|
|||||||
, detoloader.getActivation() == 0 ? getLastActivation() : detoloader.getActivation()
|
, detoloader.getActivation() == 0 ? getLastActivation() : detoloader.getActivation()
|
||||||
YoyoNow
hat
Ich würde hier die ',' immer in die Zeile davor schmeißen Ich würde hier die ',' immer in die Zeile davor schmeißen
Chaoscaot
hat
Gehört nicht zum PR. Gehört nicht zum PR.
YoyoNow
hat
Dann mach dafür gleich einen eigenen PR auf Dann mach dafür gleich einen eigenen PR auf
|
|||||||
, detoloader.isActive());
|
, detoloader.isActive());
|
||||||
else
|
} else {
|
||||||
new IAutoLoader.TemporaryActivation(this, event.getClickedBlock().getLocation()
|
new IAutoLoader.TemporaryActivation(this, event.getClickedBlock().getLocation()
|
||||||
YoyoNow
hat
Um diesen Block bitte geschweifte Klammern, weil dort mehrere Zeilen (durch die Umbrüche) drinstehen, genauso beim else. Sonst ist das nicht so gut zum lesen. Des weiteren bitte hinter dem if ein ' ' space Um diesen Block bitte geschweifte Klammern, weil dort mehrere Zeilen (durch die Umbrüche) drinstehen, genauso beim else. Sonst ist das nicht so gut zum lesen. Des weiteren bitte hinter dem if ein ' ' space
|
|||||||
, detoloader.getActivation());
|
, detoloader.getActivation());
|
||||||
YoyoNow
hat
Ich würde hier die ‘,’ immer in die Zeile davor schmeißen Ich würde hier die ‘,’ immer in die Zeile davor schmeißen
Chaoscaot
hat
Gehört nicht zum PR. Gehört nicht zum PR.
YoyoNow
hat
Dann mach dafür gleich einen eigenen PR auf Dann mach dafür gleich einen eigenen PR auf
|
|||||||
|
}
|
||||||
print(detoloader.addBack ? "§e" + detoloader.getBlock() + " betätigt" :
|
print(detoloader.addBack ? "§e" + detoloader.getBlock() + " betätigt" :
|
||||||
detoloader.getBlock(), detoloader.addBack);
|
detoloader.getBlock(), detoloader.addBack);
|
||||||
|
lastLocation = event.getClickedBlock().getLocation();
|
||||||
}
|
}
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
|
Warum genau hast du hier oben die Zahl geändert?