SquadJS/squad-server/plugins/auto-tk-warn.js

42 lines
981 B
JavaScript
Raw Normal View History

2020-10-12 16:12:36 -05:00
import BasePlugin from './base-plugin.js';
export default class AutoTKWarn extends BasePlugin {
static get description() {
return 'The <code>AutoTkWarn</code> plugin will automatically warn players with a message when they teamkill.';
}
static get defaultEnabled() {
return true;
}
static get optionsSpecification() {
return {
message: {
required: false,
description: 'The message to warn players with.',
default: 'Please apologise for ALL TKs in ALL chat!'
}
};
}
2020-12-03 08:16:07 -06:00
constructor(server, options, connectors) {
super(server, options, connectors);
2020-10-12 16:12:36 -05:00
2020-12-03 08:16:07 -06:00
this.onTeamkill = this.onTeamkill.bind(this);
}
2020-12-08 06:13:53 -06:00
async mount() {
2020-12-03 08:16:07 -06:00
this.server.on('TEAMKILL', this.onTeamkill);
}
2020-12-08 06:13:53 -06:00
async unmount() {
2020-12-03 08:16:07 -06:00
this.server.removeEventListener('TEAMKILL', this.onTeamkill);
}
async onTeamkill(info) {
2021-01-28 14:13:53 -06:00
if (!info.attacker) return;
2020-12-03 08:16:07 -06:00
await this.server.rcon.warn(info.attacker.steamID, this.options.message);
2020-10-12 16:12:36 -05:00
}
}