SteamWar/FightSystem
Archiviert
13
1

RedstoneWincondition #274

Geschlossen
YoyoNow möchte 18 Commits von RedstoneWincondition nach master mergen
Nur Änderungen aus Commit 2e7228835b werden angezeigt - Alle Commits anzeigen

Datei anzeigen

@ -31,7 +31,8 @@ public class WinconditionRelativeRedstonePercent extends PercentWincondition imp
public void enable() { public void enable() {
super.enable(); super.enable();
teamMap.forEach((team, percent) -> { teamMap.forEach((team, percent) -> {
percent.currentBlocks = 0; percent.totalBlocks = 0;
percent.currentBlocks = 1;
YoyoNow markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Richt mir ein bisschen nach Code-Duplication, bitte auslagern, dass der Code nur einmal da ist.

Richt mir ein bisschen nach Code-Duplication, bitte auslagern, dass der Code nur einmal da ist.
}); });
} }
}; };
@ -56,14 +57,23 @@ public class WinconditionRelativeRedstonePercent extends PercentWincondition imp
return Config.Blocks.contains(block.getType()); return Config.Blocks.contains(block.getType());
} }
YoyoNow markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Liest sich wie Code-Duplication, evtl PercentWincondition PrintableWincondition extenden lassen und dann eine default-Implementierung im Interface (Formatierung dürfte für alle 3 Prozentsysteme gleich sein)

Liest sich wie Code-Duplication, evtl PercentWincondition PrintableWincondition extenden lassen und dann eine default-Implementierung im Interface (Formatierung dürfte für alle 3 Prozentsysteme gleich sein)
public class TeamPercent extends PercentWincondition.TeamPercent { public class TeamPercent extends StateDependentTeamPercent {
public TeamPercent(FightTeam team) { public TeamPercent(FightTeam team) {
super(team); super(team, Winconditions.RELATIVE_REDSTONE_PERCENT);
YoyoNow markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Den Listener kannst du weglassen, was möchtest du damit überhaupt? Es sind eh nur die zyklischen Prüfungen relevant.

Den Listener kannst du weglassen, was möchtest du damit überhaupt? Es sind eh nur die zyklischen Prüfungen relevant.
Veraltet
Review

Nein, wenn ein Block plaziert wurde, darf man keine Prozente zurückbekommen.

Nein, wenn ein Block plaziert wurde, darf man keine Prozente zurückbekommen.
Veraltet
Review

Dann wäre allerdings der explosionsbasierte Messansatz besser als der zeitbasiert prüfende.

Dann wäre allerdings der explosionsbasierte Messansatz besser als der zeitbasiert prüfende.
}
@Override
public void enable() {
totalBlocks = currentBlocks(); totalBlocks = currentBlocks();
currentBlocks = totalBlocks; currentBlocks = totalBlocks;
} }
@Override
public void disable() {
YoyoNow markierte diese Unterhaltung als gelöst Veraltet
Veraltet
Review

Der Code hier liest sich wie Copy+Paste aus der RelativeWincondition. Codeduplication bitte entfernen (aka generalisieren)

Der Code hier liest sich wie Copy+Paste aus der RelativeWincondition. Codeduplication bitte entfernen (aka generalisieren)
}
private void check(EntityExplodeEvent event) { private void check(EntityExplodeEvent event) {
if (!team.getExtendRegion().inRegion(event.getEntity().getLocation())) { if (!team.getExtendRegion().inRegion(event.getEntity().getLocation())) {
return; return;