Added Bedwars game

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

2
.gitignore vendored
View File

@ -1,4 +1,6 @@
# ---> Java
*.gradle
# Compiled class file
*.class

View File

@ -1,2 +1,2 @@
#Sat Sep 17 10:47:42 CEST 2022
#Sun Sep 25 23:37:55 CEST 2022
gradle.version=7.4

6
.idea/misc.xml generated
View File

@ -4,11 +4,7 @@
<pattern value="eu.mhsl.minenet.minigames.util.InventoryItemAlignment.ItemOffset" method="getX" />
</component>
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="JavadocGenerationManager">
<option name="OUTPUT_DIRECTORY" value="$PROJECT_DIR$/docs" />
<option name="LOCALE" value="de_DE" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" project-jdk-name="openjdk-17 (3)" project-jdk-type="JavaSDK">
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="corretto-17" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

1
.idea/vcs.xml generated
View File

@ -2,5 +2,6 @@
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

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();
}
}