Gold-Fixes: Carousel ohne Einkommensrunde, Streak-Gold nur bei PvP
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -144,11 +144,11 @@ class Game:
|
|||||||
is_pvp = rnd["kind"] == "pvp"
|
is_pvp = rnd["kind"] == "pvp"
|
||||||
for p in self._alive():
|
for p in self._alive():
|
||||||
won = results.get(p.name, False)
|
won = results.get(p.name, False)
|
||||||
# Nur PvP zählt für Streak und Siegbonus; PvE friert die Streak ein.
|
# Nur PvP zählt für Streak, Streak-Gold und Siegbonus.
|
||||||
if is_pvp:
|
if is_pvp:
|
||||||
p.streak = max(p.streak, 0) + 1 if won else min(p.streak, 0) - 1
|
p.streak = max(p.streak, 0) + 1 if won else min(p.streak, 0) - 1
|
||||||
p.gold += economy.round_income(
|
p.gold += economy.round_income(
|
||||||
p.gold, p.streak, is_pvp and won, rnd["label"], self.cfg
|
p.gold, p.streak if is_pvp else 0, is_pvp and won, rnd["label"], self.cfg
|
||||||
)
|
)
|
||||||
p.level, p.xp = economy.apply_xp(
|
p.level, p.xp = economy.apply_xp(
|
||||||
p.level, p.xp, self.cfg["xp"]["passive_per_round"], self.cfg
|
p.level, p.xp, self.cfg["xp"]["passive_per_round"], self.cfg
|
||||||
@@ -225,11 +225,9 @@ class Game:
|
|||||||
self.idx += 1
|
self.idx += 1
|
||||||
if self.round["kind"] != "carousel":
|
if self.round["kind"] != "carousel":
|
||||||
break
|
break
|
||||||
|
# Carousel ist keine eigene Einkommensrunde — nur Loot, Unit und XP.
|
||||||
for p in self._alive():
|
for p in self._alive():
|
||||||
self._carousel(p)
|
self._carousel(p)
|
||||||
p.gold += economy.round_income(
|
|
||||||
p.gold, p.streak, False, self.round["label"], self.cfg
|
|
||||||
)
|
|
||||||
p.level, p.xp = economy.apply_xp(
|
p.level, p.xp = economy.apply_xp(
|
||||||
p.level, p.xp, self.cfg["xp"]["passive_per_round"], self.cfg
|
p.level, p.xp, self.cfg["xp"]["passive_per_round"], self.cfg
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user