A VM instruction that attempts to move a hack forwards by one cell in the playfield.

The blocks that makeup a hakk are not allowed to overlap in the arena, nor are hakks allowed to move outside of the arena. If the move request causes an overlap, or causes the hakk to go out of bounds, then it will fail and store 0. If the move succeeds, it will store 1.

Usage Edit

movef: {store}

hakkML Example Edit

name: movef_example
  entry: {name: 'main', loc: [0, 1]}
    - rem: attempt to move forward, store the result in core.0
    - movef: core.0
    - je: [core.0, 1, yes]
    - out: 'Move did not succeed.'
    - exit: 0
    - lbl: yes
    - out: 'Move succeeded.'
    - exit: 0