Mercurial > repos > icfp2012
changeset 36:814e3d482ad3
Make navigable a property of the cell type so I can use it in lifter
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Sun, 15 Jul 2012 11:07:11 -0700 |
parents | 8e8903cc0997 |
children | 2dc785f67327 |
files | src/sim.tp |
diffstat | 1 files changed, 6 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/src/sim.tp Sun Jul 15 10:52:50 2012 -0700 +++ b/src/sim.tp Sun Jul 15 11:07:11 2012 -0700 @@ -18,11 +18,17 @@ makeCellTypes <- { typedict <- dict linear new <- :idStr { + cannav <- if: idStr = " " {true} else: { + if: idStr = "." {true} else: { + if: idStr = "\\" {true} else: { + if: idStr = "O" {true} else: { + false }}}} ret <- #{ id <- (idStr byte: 0) string <- idStr isrobot <- { false } eq <- :other { id = (other id) } + navigable <- { cannav } } typedict set: (ret id) ret ret @@ -69,15 +75,6 @@ x <- xPrime y <- yPrime } - - navigable <- :cur { - // need "any" and "all" functions... - if: (cur eq: empty) {true} else: { - if: (cur eq: earth) {true} else: { - if: (cur eq: lambda) {true} else: { - if: (cur eq: openLift) {true} else: { - false }}}} - } consequenceOf <- :cur { if: (cur eq: lambda) {collected <- collected + 1}