@erikyuzwa/rogue-punk
Version:
a JavaScript library to help you build your roguelike adventures
33 lines (32 loc) • 823 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Emitter = void 0;
const Glyph_1 = require("./Glyph");
class Emitter extends Glyph_1.Glyph {
constructor(options) {
super(options);
this.name = options.name || '';
this.listeners = {};
}
setName(name) {
this.name = name;
}
getName() {
return this.name;
}
toString() {
return this.name;
}
raiseEvent(event) {
if (!this.listeners[event]) {
return;
}
const args = Array.prototype.slice.call(arguments, 1);
const results = [];
for (const i in this.listeners[event]) {
results.push(this.listeners[event][i].apply(this, args));
}
return results;
}
}
exports.Emitter = Emitter;