@bot-shiki/koishi-plugin-werewolf
Version:
Touhou werewolf game
35 lines (34 loc) • 1.38 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const _1 = require(".");
const utils_1 = require("../utils");
class MamizouAction extends _1.ExpertAction {
identity = 'mamizou';
target;
async callback() {
if (this.game.weather === 'kaisei') {
this.target = null;
return this.player.pause(60000, (0, utils_1.t)('character.mamizou.action-kaisei'));
}
const output = [];
if (this.game.weather === 'baiu') {
output.push((0, utils_1.t)('character.mamizou.action-baiu'));
}
else {
output.push((0, utils_1.t)('character.mamizou.action'));
}
this.target = await this.character.select(c => ({
disabled: c.isDead || c === this.target,
labels: [
...c === this.target ? [(0, utils_1.t)('character.mamizou.is-last')] : [],
],
}), 60000, true);
if (!this.target)
return this.player.send((0, utils_1.t)('character.mamizou.cancel'));
if (this.retsujitsu())
return this.player.send((0, utils_1.t)('weather.retsujitsu.hint'));
utils_1.logger.debug('mamizou target: %s', this.target.identity);
await this.player.send((0, utils_1.t)('character.mamizou.success', [this.target.player.name]));
}
}
exports.default = MamizouAction;