mirror of
https://github.com/AsgardEternal/squad-js-map-vote.git
synced 2025-01-23 23:03:51 -06:00
updateNextMap
This commit is contained in:
parent
12607a3d2e
commit
c8370673d5
10
mapvote.js
10
mapvote.js
@ -396,9 +396,11 @@ export default class MapVote extends DiscordBasePlugin {
|
|||||||
}
|
}
|
||||||
if (!skipSetNextMap) {
|
if (!skipSetNextMap) {
|
||||||
const nextMap = randomElement(cpyWinners);
|
const nextMap = randomElement(cpyWinners);
|
||||||
const baseDataExist = this && this.options && this.server && this.server.players && this.server.nextLayer && this.server.nextLayer.layerid;
|
const baseDataExist = this && this.server;
|
||||||
if (!baseDataExist || this.server.nextLayer.layerid != nextMap)
|
const layerDataExist = this.server.nextLayer && this.server.nextLayer.layerid;
|
||||||
|
if (baseDataExist && (!layerDataExist || this.server.nextLayer.layerid != nextMap))
|
||||||
this.server.rcon.execute(`AdminSetNextLayer ${nextMap}`);
|
this.server.rcon.execute(`AdminSetNextLayer ${nextMap}`);
|
||||||
|
else console.log("[MapVote][1] Bad data (this/this.server). Next layer not set to prevent errors.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -468,7 +470,7 @@ export default class MapVote extends DiscordBasePlugin {
|
|||||||
);
|
);
|
||||||
for (let i = 1; i <= maxOptions; i++) {
|
for (let i = 1; i <= maxOptions; i++) {
|
||||||
let l, maxtries = 10;
|
let l, maxtries = 10;
|
||||||
do l = randomElement(all_layers); while ((rnd_layers.find(lf => lf.layerid == l.layerid) || rnd_layers.filter(lf => lf.map.name == l.map.name).length > (this.options.allowedSameMapEntries-1)) && --maxtries >= 0)
|
do l = randomElement(all_layers); while ((rnd_layers.find(lf => lf.layerid == l.layerid) || rnd_layers.filter(lf => lf.map.name == l.map.name).length > (this.options.allowedSameMapEntries - 1)) && --maxtries >= 0)
|
||||||
if (maxtries > 0) {
|
if (maxtries > 0) {
|
||||||
rnd_layers.push(l);
|
rnd_layers.push(l);
|
||||||
this.nominations[ i ] = l.layerid
|
this.nominations[ i ] = l.layerid
|
||||||
@ -493,7 +495,7 @@ export default class MapVote extends DiscordBasePlugin {
|
|||||||
const cls = cl.split('_');
|
const cls = cl.split('_');
|
||||||
const fLayers = sanitizedLayers.filter((l) => ((cls[ 0 ] == "*" || l.layerid.toLowerCase().startsWith(cls[ 0 ])) && (l.gamemode.toLowerCase().startsWith(cls[ 1 ]) || (!cls[ 1 ] && [ 'RAAS', 'AAS', 'INVASION' ].includes(l.gamemode.toUpperCase()))) && (!cls[ 2 ] || l.version.toLowerCase().startsWith("v" + cls[ 2 ].replace(/v/gi, '')))));
|
const fLayers = sanitizedLayers.filter((l) => ((cls[ 0 ] == "*" || l.layerid.toLowerCase().startsWith(cls[ 0 ])) && (l.gamemode.toLowerCase().startsWith(cls[ 1 ]) || (!cls[ 1 ] && [ 'RAAS', 'AAS', 'INVASION' ].includes(l.gamemode.toUpperCase()))) && (!cls[ 2 ] || l.version.toLowerCase().startsWith("v" + cls[ 2 ].replace(/v/gi, '')))));
|
||||||
let l, maxtries = 10;
|
let l, maxtries = 10;
|
||||||
do l = randomElement(fLayers); while ((rnd_layers.filter(lf => lf.map.name == l.map.name).length > (this.options.allowedSameMapEntries-1)) && --maxtries >= 0)
|
do l = randomElement(fLayers); while ((rnd_layers.filter(lf => lf.map.name == l.map.name).length > (this.options.allowedSameMapEntries - 1)) && --maxtries >= 0)
|
||||||
if (l) {
|
if (l) {
|
||||||
rnd_layers.push(l);
|
rnd_layers.push(l);
|
||||||
this.nominations[ i ] = l.layerid
|
this.nominations[ i ] = l.layerid
|
||||||
|
Loading…
x
Reference in New Issue
Block a user