🐛 Fixed fighters keep fighting at 0 hp #24
Reference in New Issue
Block a user
Delete Branch "bug/enemy_die"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Fixed a bug where fighters keep attacking despite being dead at 0 HP.
Zwei kleinere Nachfragen, sonst alles juti 👍
@@ -348,0 +354,4 @@{if (f.IsDead()){HappeningData.fighterTurn.Remove(f);Ich gehe zwar davon aus, dass du das getestet hast und es keine Fehler wirft, aber zur Sicherheit, weil ich mich gewundert habe: Wenn fighterTurn ein IEnumerable ist und du in der foreach-Schleife etwas daraus entfernst, kann das nicht zu exceptions führen? Hätte ich jetzt erwartet.
Ist auch oft so. Deshalb habe ich
GetEnumeratorso implementiert, dass er erst eineListaus den Einträgen erstellt und dann den Enumerator der Liste zurückgibt@@ -97,0 +101,4 @@public IEnumerator<FightWorld.Fighter> GetEnumerator(){if (_currentNode == null) return Enumerable.Empty<FightWorld.Fighter>().GetEnumerator();Sehe ich da was falsch oder ist das ein Loop?
Wenn currentnode == null, dann wird Enumerable.GetEnumerator ( Zeile 119) und darin dann wieder GetEnumerator (Zeile 102) aufgerufen und so weiter. Oder ist das noch ein anderer Overload, der da aufgerufen wird?
Again, ich gehe schon davon aus, dass du das getestet hast und ich da irgendwas übersehe, aber ich frage lieber zur Sicherheit immer nach.
Hier wird
Enumerable.Empty<...>.GetEnumerator()aufgerufen. DasEmptyist nen Statischer member von derEnumerableKlasse. (NichtIEnumerable)