werewolf-core
Version:
Are you a WEREWOLF?
42 lines (41 loc) • 1.27 kB
JavaScript
;
var priority = require('../priority');
exports.CHOICE_SEER = 'core.seer';
exports.SEER_RESULT_NONE = 'seeresult.none';
exports.SEER_RESULT_HUMAN = 'seerresult.human';
exports.SEER_RESULT_WEREWOLF = 'seerresult.werewolf';
exports.EVENT_QUERY_SEER = 'core.seer.query.seer';
function initQuerySeerEvent(obj) {
var from = obj.from, to = obj.to;
return {
type: exports.EVENT_QUERY_SEER,
from: from,
to: to,
result: exports.SEER_RESULT_HUMAN,
};
}
exports.initQuerySeerEvent = initQuerySeerEvent;
exports.EVENT_GETFORTUNE = 'core.seer.getfortune';
function initGetfortuneEvent(obj) {
var from = obj.from, to = obj.to;
return {
type: exports.EVENT_GETFORTUNE,
from: from,
to: to,
};
}
exports.initGetfortuneEvent = initGetfortuneEvent;
function seerEffect(role, result) {
return [{
priority: priority.QUERY_RESULT_INIT,
handler: function (_a) {
var players = _a.players, event = _a.event;
var event2 = event;
var pl = players.get(event2.to);
if (pl && pl.type === role) {
event2.result = result;
}
},
}];
}
exports.seerEffect = seerEffect;