# HG changeset patch # User Mike Pavone # Date 1342402656 25200 # Node ID b0d89ee419c1ee0630bd2eaf9d54a70fa3f8234b # Parent cf534157ef2f1b008bbce65d51915a453cc98e7c Add maximum moves check diff -r cf534157ef2f -r b0d89ee419c1 src/sim.tp --- a/src/sim.tp Sun Jul 15 18:32:58 2012 -0700 +++ b/src/sim.tp Sun Jul 15 18:37:36 2012 -0700 @@ -130,6 +130,7 @@ _nextGrid <- #[] _robot <- null _ended <- false + _maxmoves <- in_width * in_height _succeeded <- false ret <- #{ @@ -250,11 +251,14 @@ } swapGrids: } + abort <- { + _ended <- true + addPoints: (_robot collected) * 25 + } advance <- :roboCmd { if: roboCmd = "A" { - _ended <- true moves append: roboCmd - addPoints: (_robot collected) * 25 + abort } if: (not: _ended) { @@ -262,6 +266,9 @@ score <- score - 1 moves append: roboCmd doUpdate: + if: (moves length) >= _maxmoves { + abort + } } self }