fix bug in "fix wall/reflect" and sanitize enums
enums are not required to start at 0. now make it explicit where the later code expects specific values.