UNPKG

werewolf-core

Version:

Are you a WEREWOLF?

58 lines (57 loc) 2.07 kB
"use strict"; var package_1 = require('../package'); var events = require('../event'); var priority = require('../priority'); var diereason = require('../lib/diereason'); var mediumevent = require('./medium.event'); var ROLE_MEDIUM = 'core.medium'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = package_1.initPackage({ role: ROLE_MEDIUM, roleInit: function (pl) { pl.results = []; pl.shown = -1; return pl; }, playerProducers: (_a = {}, _a[ROLE_MEDIUM] = (_b = {}, _b[events.EVENT_DIE] = [{ priority: priority.DIE_HANDLER, handler: function (_a) { var runner = _a.runner, player = _a.player, players = _a.players, event = _a.event; var event2 = event; if (event2.prevented !== true && event2.reason === diereason.LYNCH) { var pl = players.get(event2.on); if (pl && pl.dead && pl.dead_reason === diereason.LYNCH) { runner.addEvent(mediumevent.initDoMediumEvent({ from: player.id, to: event2.on, })); } } }, }], _b ), _a ), actions: (_c = {}, _c[mediumevent.EVENT_DO_MEDIUM] = function (_a) { var runner = _a.runner, players = _a.players, event = _a.event; var event2 = event; var medium = players.get(event2.from); if (medium) { var e = runner.runEvent(mediumevent.initQueryMediumEvent({ from: event2.from, to: event2.to, })); medium.results.push({ to: e.to, result: e.result, }); } }, _c ), }); var _a, _b, _c;