"use strict"; // Boundary for forced-action planning. The concrete forced-queue implementation // remains in tarinai_forced_behavior.js / tarinai_needs_items.js; this module // gives the need planner a stable dependency point. (function (global) { function hasPending(tarinai, actionId = "") { if (!tarinai) return false; if (typeof tarinai.hasForcedBehavior === "function") return tarinai.hasForcedBehavior(actionId); return false; } function prepare(tarinai, dt = 0) { return Boolean(tarinai && !tarinai.dead && hasPending(tarinai)); } global.TarinaiForcedActionPlannerSystem = Object.freeze({ hasPending, prepare, }); })(typeof window !== "undefined" ? window : globalThis);