From 8323707d3a2945f8fbd4d4e925a04d1eb6f0a3b7 Mon Sep 17 00:00:00 2001 From: sanine Date: Sat, 11 Nov 2023 14:14:30 -0600 Subject: prevent movement when frozen and allow seeing past the lattice edge --- src/simulation/actions.js | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/simulation/actions.js') diff --git a/src/simulation/actions.js b/src/simulation/actions.js index 78345ce..4ee17d8 100644 --- a/src/simulation/actions.js +++ b/src/simulation/actions.js @@ -6,6 +6,7 @@ const threshold = 0.5; const move_forward = { size: 1, propose: (world, agent, head) => { + if (agent.flags.frozen === true) { return []; } if (head[0] > threshold) { const dx = { n: 0, e: 1, s: 0, w: -1 }[agent.flags.orientation]; const dy = { n: -1, e: 0, s: 1, w: 0 }[agent.flags.orientation]; @@ -26,6 +27,7 @@ const move_forward = { const move_backward = { size: 1, propose: (world, agent, head) => { + if (agent.flags.frozen === true) { return []; } if (head[0] > threshold) { const dx = { n: 0, e: 1, s: 0, w: -1 }[agent.flags.orientation]; const dy = { n: -1, e: 0, s: 1, w: 0 }[agent.flags.orientation]; @@ -46,6 +48,7 @@ const move_backward = { const turn_left = { size: 1, propose: (world, agent, head) => { + if (agent.flags.frozen === true) { return []; } if (head[0] > threshold) { const orientation = { n: 'w', e: 'n', s: 'e', w: 's' }[agent.flags.orientation]; return [{ @@ -64,6 +67,7 @@ const turn_left = { const turn_right = { size: 1, propose: (world, agent, head) => { + if (agent.flags.frozen === true) { return []; } if (head[0] > threshold) { const orientation = { n: 'e', e: 's', s: 'w', w: 'n' }[agent.flags.orientation]; return [{ -- cgit v1.2.1