| 96 | } |
| 97 | |
| 98 | void Blackboard::setOutput(ActionNode const& node, LuaTable const& output) { |
| 99 | for (auto p : node.output) { |
| 100 | auto out = p.second.second; |
| 101 | if (auto boardKey = out.first) { |
| 102 | set(p.second.first, *boardKey, output.get<LuaValue>(p.first)); |
| 103 | |
| 104 | if (out.second) |
| 105 | m_ephemeral.add({p.second.first, *boardKey}); |
| 106 | } |
| 107 | } |
| 108 | } |
| 109 | |
| 110 | Set<pair<NodeParameterType, String>> Blackboard::takeEphemerals() { |
| 111 | return take(m_ephemeral); |