nodito
Version:
Una librería para aprender juegos por turnos en node.
36 lines • 1.22 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const ClientMessage_1 = require("./ClientMessage");
class JoinRoom extends ClientMessage_1.ClientMessage {
constructor() {
super(...arguments);
this.type = "joinRoom";
}
exec(message, sender) {
const room = this.game.rooms.find(message.roomId);
if (!room) {
sender.send({ type: "genericAlert", message: "¡La sala ya no existe!" });
this.game.throttledSendRooms();
return;
}
const inRoom = this.game.rooms.findByPlayer(sender);
if (room.isReady() && !room.find(sender)) {
sender.send({ type: "genericAlert", message: "¡La sala ya está llena!" });
this.game.throttledSendRooms();
return;
}
if (inRoom && inRoom.getId() !== message.roomId) {
inRoom.remove(sender);
if (inRoom.empty()) {
this.game.rooms.remove(inRoom);
}
}
room.add(sender);
if (room.isReady()) {
room.start();
}
this.game.throttledSendRooms();
}
}
exports.JoinRoom = JoinRoom;
//# sourceMappingURL=JoinRoom.js.map