not bad
This commit is contained in:
parent
2741b93dea
commit
434f07cc4e
103 changed files with 8387 additions and 8152 deletions
|
|
@ -41,8 +41,6 @@
|
|||
if (!id) throw new TypeError("ActionSpec.id is required");
|
||||
|
||||
// Public lifecycle: canStart -> selectTarget -> start -> tick -> finish/fail -> text.
|
||||
// Legacy hooks (`condition`, `run`, `update`) remain accepted so old code can be
|
||||
// migrated incrementally, but newly migrated actions should use the lifecycle names.
|
||||
const spec = {
|
||||
...input,
|
||||
id,
|
||||
|
|
@ -59,12 +57,9 @@
|
|||
};
|
||||
|
||||
const originalCanStart = hasOwnFn(input, "canStart") ? input.canStart : null;
|
||||
const originalCondition = hasOwnFn(input, "condition") ? input.condition : null;
|
||||
const originalSelectTarget = hasOwnFn(input, "selectTarget") ? input.selectTarget : null;
|
||||
const originalStart = hasOwnFn(input, "start") ? input.start : null;
|
||||
const originalRun = hasOwnFn(input, "run") ? input.run : null;
|
||||
const originalTick = hasOwnFn(input, "tick") ? input.tick : null;
|
||||
const originalUpdate = hasOwnFn(input, "update") ? input.update : null;
|
||||
const originalFinish = hasOwnFn(input, "finish") ? input.finish : null;
|
||||
const originalFail = hasOwnFn(input, "fail") ? input.fail : null;
|
||||
const originalText = hasOwnFn(input, "text") ? input.text : null;
|
||||
|
|
@ -76,19 +71,16 @@
|
|||
|
||||
spec.canStart = function canStart(tarinai, world, ctx = {}) {
|
||||
if (originalCanStart) return Boolean(originalCanStart.call(spec, tarinai, world, ctx));
|
||||
if (originalCondition) return Boolean(originalCondition.call(spec, tarinai, world, ctx));
|
||||
return true;
|
||||
};
|
||||
|
||||
spec.start = function start(tarinai, world, ctx = {}) {
|
||||
if (originalStart) return originalStart.call(spec, tarinai, world, ctx);
|
||||
if (originalRun) return originalRun.call(spec, tarinai, world, ctx);
|
||||
return true;
|
||||
};
|
||||
|
||||
spec.tick = function tick(tarinai, world, dt = 0, needs = null, ctx = {}) {
|
||||
if (originalTick) return originalTick.call(spec, tarinai, world, dt, needs, ctx);
|
||||
if (originalUpdate) return originalUpdate.call(spec, tarinai, world, dt, needs, ctx);
|
||||
return undefined;
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue