Fixed fuse 80 subtick calc order problem with failsafe
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful
Dieser Commit ist enthalten in:
Ursprung
680f9d8b3f
Commit
a116f7e4b1
@ -113,9 +113,9 @@ public class TraceRecorder implements Listener {
|
||||
public void stopRecording(Region region) {
|
||||
TraceRecordingWrapper wrappedTrace = activeTraces.getOrDefault(region, null);
|
||||
if (wrappedTrace == null) return;
|
||||
System.out.println(wrappedTrace);
|
||||
|
||||
wrappedTrace.finalizeRecording();
|
||||
|
||||
activeTraces.remove(region);
|
||||
for (TNTPrimed tnt : trackedTNT.getOrDefault(region, Collections.emptyList())) {
|
||||
historyMap.remove(tnt);
|
||||
@ -132,6 +132,7 @@ public class TraceRecorder implements Listener {
|
||||
Iterator<TNTPrimed> iter = trackedTNT.getOrDefault(region, Collections.emptyList()).iterator();
|
||||
while (iter.hasNext()) {
|
||||
TNTPrimed tnt = iter.next();
|
||||
if (tnt.getFuseTicks() == 80) continue;
|
||||
TNTPoint record = record(tnt, wrappedTrace, Collections.emptyList());
|
||||
if (record == null) {
|
||||
iter.remove();
|
||||
@ -156,6 +157,7 @@ public class TraceRecorder implements Listener {
|
||||
*/
|
||||
private TNTPoint record(TNTPrimed tntPrimed, TraceRecordingWrapper wrappedTrace, List<Block> destroyedBlocks) {
|
||||
List<TNTPoint> history = historyMap.getOrDefault(tntPrimed, new ArrayList<>());
|
||||
|
||||
// Failsave for tnt entering unloaded chunks
|
||||
if (tntPrimed.isDead() || history.size() > 0 && history.get(history.size() - 1).getFuse() == tntPrimed.getFuseTicks()) {
|
||||
return null;
|
||||
|
@ -1,5 +1,5 @@
|
||||
name: BauSystem
|
||||
authors: [Lixfel, YoyoNow, Chaoscaot, Zeanon]
|
||||
authors: [ Lixfel, YoyoNow, Chaoscaot, Zeanon, D4rkr34lm ]
|
||||
version: "2.0"
|
||||
depend: [ WorldEdit, SpigotCore ]
|
||||
load: POSTWORLD
|
||||
|
In neuem Issue referenzieren
Einen Benutzer sperren