Added Bedwars game

This commit is contained in:
2022-10-10 14:40:13 +02:00
parent 89aca9bd98
commit bf4d8b97ed
14 changed files with 63 additions and 7 deletions

View File

@ -1,6 +1,7 @@
package eu.mhsl.minenet.minigames.instance.game;
import eu.mhsl.minenet.minigames.instance.game.minigame.config.GameFactory;
import eu.mhsl.minenet.minigames.instance.game.minigame.types.bedwars.BedwarsFactory;
import eu.mhsl.minenet.minigames.instance.game.minigame.types.deathcube.DeathcubeFactory;
import eu.mhsl.minenet.minigames.instance.game.minigame.types.minerun.MinerunFactory;
import eu.mhsl.minenet.minigames.instance.game.minigame.types.stickfight.StickFightFactory;
@ -10,7 +11,8 @@ public enum GameList {
DEATHCUBE(new DeathcubeFactory(), GameType.OTHER),
STICKFIGHT(new StickFightFactory(), GameType.PVP),
MINERUN(new MinerunFactory(), GameType.PVE),
TRAFFICLIGHTRACE(new TrafficLightRaceFactory(), GameType.OTHER);
TRAFFICLIGHTRACE(new TrafficLightRaceFactory(), GameType.OTHER),
BEDWARS(new BedwarsFactory(), GameType.PVP);
private final GameFactory factory;
private final GameType type;

View File

@ -0,0 +1,10 @@
package eu.mhsl.minenet.minigames.instance.game.minigame.types.bedwars;
import eu.mhsl.minenet.minigames.instance.Dimension;
import eu.mhsl.minenet.minigames.instance.game.minigame.Minigame;
public class Bedwars extends Minigame {
public Bedwars() {
super(Dimension.OVERWORLD.DIMENSION, "Bedwars");
}
}

View File

@ -0,0 +1,45 @@
package eu.mhsl.minenet.minigames.instance.game.minigame.types.bedwars;
import eu.mhsl.minenet.minigames.instance.game.minigame.Minigame;
import eu.mhsl.minenet.minigames.instance.game.minigame.config.ConfigManager;
import eu.mhsl.minenet.minigames.instance.game.minigame.config.GameFactory;
import eu.mhsl.minenet.minigames.instance.game.minigame.config.Option;
import eu.mhsl.minenet.minigames.instance.game.minigame.config.restriction.RestrictionHandler;
import eu.mhsl.minenet.minigames.instance.game.minigame.config.restriction.common.MinimalPlayeramountGameRestriction;
import eu.mhsl.minenet.minigames.message.component.TranslatedComponent;
import net.minestom.server.item.Material;
import java.util.Map;
public class BedwarsFactory implements GameFactory {
@Override
public TranslatedComponent name() {
return TranslatedComponent.byId("game_Bedwars#name");
}
@Override
public ConfigManager configuration() {
return null;
}
@Override
public RestrictionHandler globalRestrictions() {
return new RestrictionHandler()
.addRestriction(new MinimalPlayeramountGameRestriction(2));
}
@Override
public Material symbol() {
return Material.RED_BED;
}
@Override
public TranslatedComponent description() {
return TranslatedComponent.byId("game_Bedwars#description");
}
@Override
public Minigame manufacture(Map<String, Option<?>> configuration) {
return new Bedwars();
}
}