aboutsummaryrefslogtreecommitdiff
path: root/go/game/targets.go
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fischer@muhq.space>2023-02-15 16:41:29 +0100
committerFlorian Fischer <florian.fischer@muhq.space>2025-01-27 16:43:50 +0100
commitf9fef6046fdc6895d5eaa7fc15d9b4f4a02becae (patch)
tree7f3ffdd01af02d60c78ea65bafa75384cf140aac /go/game/targets.go
parent0edb119b497bf1283f976693b02e044033d4de08 (diff)
downloadmuhqs-game-f9fef6046fdc6895d5eaa7fc15d9b4f4a02becae.tar.gz
muhqs-game-f9fef6046fdc6895d5eaa7fc15d9b4f4a02becae.zip
replace Fatalf with Panicf
Panicf includes a stacktrace and causes a debugger to halt.
Diffstat (limited to 'go/game/targets.go')
-rw-r--r--go/game/targets.go24
1 files changed, 12 insertions, 12 deletions
diff --git a/go/game/targets.go b/go/game/targets.go
index 440d8922..2ef88665 100644
--- a/go/game/targets.go
+++ b/go/game/targets.go
@@ -97,18 +97,18 @@ func (d *TargetDesc) requirement() TargetRequirement {
tokens := strings.SplitN(d.req, "-", 2)
min, err := strconv.Atoi(tokens[0])
if err != nil {
- log.Fatalf("failed to parse target requirement %s: %v", d.req, err)
+ log.Panicf("failed to parse target requirement %s: %v", d.req, err)
}
max, err := strconv.Atoi(tokens[1])
if err != nil {
- log.Fatalf("failed to parse target requirement %s: %v", d.req, err)
+ log.Panicf("failed to parse target requirement %s: %v", d.req, err)
}
return TargetRequirement{min, max}
}
x, err := strconv.Atoi(d.req)
if err != nil {
- log.Fatalf("failed to parse target requirement %s: %v", d.req, err)
+ log.Panicf("failed to parse target requirement %s: %v", d.req, err)
}
return TargetRequirement{x, x}
}
@@ -231,7 +231,7 @@ func enemyPermanentTargetConstraint(action Action) TargetConstraintFunc {
case Permanent:
sourceController = source.Controller()
default:
- log.Fatalf("Unhandled source type %T in enemyPermanentTargetConstraint", source)
+ log.Panicf("Unhandled source type %T in enemyPermanentTargetConstraint", source)
}
return func(t interface{}) (err error) {
@@ -270,7 +270,7 @@ func posFromTileOrPermanent(tileOrPermanent interface{}) Position {
case Permanent:
return obj.Tile().Position
default:
- log.Fatalf("Unhandled source type %T in posFromTileOrPermanent", tileOrPermanent)
+ log.Panicf("Unhandled source type %T in posFromTileOrPermanent", tileOrPermanent)
return INVALID_POSITION()
}
}
@@ -321,7 +321,7 @@ func parsePermanentTargetConstraint(desc string, s *State, action Action) []Targ
tokens := strings.SplitN(desc, " in range ", 2)
r, err := strconv.Atoi(tokens[1])
if err != nil {
- log.Fatalf("Invalid range %s in target constraint %s", tokens[1], desc)
+ log.Panicf("Invalid range %s in target constraint %s", tokens[1], desc)
}
constraints = append(constraints, rangeTargetConstraint(action.Source(), r))
}
@@ -340,7 +340,7 @@ func parseUnitTargetConstraint(desc string, s *State, action Action) []TargetCon
tokens := strings.SplitN(desc, " in range ", 2)
r, err := strconv.Atoi(tokens[1])
if err != nil {
- log.Fatalf("Invalid range %s in target constraint %s", tokens[1], desc)
+ log.Panicf("Invalid range %s in target constraint %s", tokens[1], desc)
}
constraints = append(constraints, rangeTargetConstraint(action.Source(), r))
}
@@ -366,7 +366,7 @@ func relaxedTileTarget(action Action, t interface{}) *Tile {
case *Unit:
return t.Tile()
default:
- log.Fatalf("Not handled target type %T", t)
+ log.Panicf("Not handled target type %T", t)
}
return nil
@@ -405,7 +405,7 @@ func parseTileTargetConstraint(desc string, s *State, action Action) []TargetCon
if strings.Contains(desc, "spawn") {
if player == nil {
- log.Fatalf("Not implemented spawn tile constraint for %T", action)
+ log.Panicf("Not implemented spawn tile constraint for %T", action)
}
constraints = append(constraints, func(t interface{}) (err error) {
@@ -422,7 +422,7 @@ func parseTileTargetConstraint(desc string, s *State, action Action) []TargetCon
tile := relaxedTileTarget(action, t)
if card == nil {
- log.Fatalf("Not implemented availability tile constraint for %T", action)
+ log.Panicf("Not implemented availability tile constraint for %T", action)
}
if tile.IsAvailableForCard(card) {
@@ -480,7 +480,7 @@ func parseCardTargetConstraint(desc string, s *State, action Action) []TargetCon
strings.Contains(desc, "discard pile") {
if player == nil {
- log.Fatalf("Not implemented PileOfCards constraint for %T", action)
+ log.Panicf("Not implemented PileOfCards constraint for %T", action)
}
var pocs []PileOfCards
@@ -534,6 +534,6 @@ func targetCandidates(desc string, s *State) []interface{} {
return utils.TypedSliceToInterfaceSlice(s.Map.AllTiles())
}
- log.Fatalf("Unimplemented target options for %s", desc)
+ log.Panicf("Unimplemented target options for %s", desc)
return nil
}