Tore out the old engine, left some wounds
This commit is contained in:
33
app/imports/api/engine/oldActions/applyToggle.js
Normal file
33
app/imports/api/engine/oldActions/applyToggle.js
Normal file
@@ -0,0 +1,33 @@
|
||||
import evaluateString from '/imports/api/creature/computation/afterComputation/evaluateString.js';
|
||||
|
||||
export default function applyToggle({
|
||||
prop,
|
||||
creature,
|
||||
actionContext,
|
||||
log,
|
||||
}){
|
||||
let scope = {
|
||||
...creature.variables,
|
||||
...actionContext,
|
||||
};
|
||||
if (Number.isFinite(+prop.condition)){
|
||||
return !!+prop.condition;
|
||||
}
|
||||
var {result} = evaluateString({
|
||||
string: prop.condition,
|
||||
scope,
|
||||
fn: 'reduce'
|
||||
});
|
||||
if (result.constructor.name === 'ErrorNode') {
|
||||
log.content.push({
|
||||
name: 'Toggle error',
|
||||
value: result.toString(),
|
||||
});
|
||||
return false;
|
||||
}
|
||||
log.content.push({
|
||||
name: prop.name || 'Toggle',
|
||||
value: prop.condition + ' = ' + result.toString(),
|
||||
});
|
||||
return !!result.value;
|
||||
}
|
||||
Reference in New Issue
Block a user