Refactored entire action engine
Triggers needed action context to function outside of the action engine proper, so now it's been abstracted into its own class
This commit is contained in:
@@ -7,7 +7,7 @@ import note from './applyPropertyByType/applyNote.js';
|
||||
import roll from './applyPropertyByType/applyRoll.js';
|
||||
import savingThrow from './applyPropertyByType/applySavingThrow.js';
|
||||
import toggle from './applyPropertyByType/applyToggle.js';
|
||||
import applyTriggers from '/imports/api/engine/actions/applyTriggers.js';
|
||||
import { applyNodeTriggers } from '/imports/api/engine/actions/applyTriggers.js';
|
||||
|
||||
const applyPropertyByType = {
|
||||
action,
|
||||
@@ -22,9 +22,9 @@ const applyPropertyByType = {
|
||||
toggle,
|
||||
};
|
||||
|
||||
export default function applyProperty(node, opts, ...rest) {
|
||||
applyTriggers(node, opts, 'before');
|
||||
opts.scope[`#${node.node.type}`] = node.node;
|
||||
applyPropertyByType[node.node.type]?.(node, opts, ...rest);
|
||||
applyTriggers(node, opts, 'after');
|
||||
export default function applyProperty(node, actionContext, ...rest) {
|
||||
applyNodeTriggers(node, actionContext, 'before');
|
||||
actionContext.scope[`#${node.node.type}`] = node.node;
|
||||
applyPropertyByType[node.node.type]?.(node, actionContext, ...rest);
|
||||
applyNodeTriggers(node, actionContext, 'after');
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user