diff --git a/pom.xml b/pom.xml
index fa43060..f52f871 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,9 +4,64 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
- me.nikl
+ me.nikl.gamebox.games
logicpuzzles
- 2.1.0
+ LogicPuzzles
+ jar
+ 3.0.0-beta
+ Spend some time with brain teasers
+
+
+
+ nikl-repo
+ http://repo.nikl.me/artifactory/public
+
+
+
+
+ https://github.com/NiklasEi/logic-puzzles-for-gamebox
+ git@github.com:NiklasEi/logic-puzzles-for-gamebox.git
+
+
+
+ clean package
+ ${project.name}
+ src/main/java
+ target
+
+
+ .
+ true
+ ${basedir}/src/main/resources
+
+ **/*.yml
+
+
+
+
+
+ maven-compiler-plugin
+ 3.6.0
+
+ 1.8
+ 1.8
+
+
+
+ org.codehaus.mojo
+ buildnumber-maven-plugin
+ 1.4
+
+
+ validate
+
+ create-timestamp
+
+
+
+
+
+
@@ -15,36 +70,30 @@
nikl-repo
- https://repo.nikl.me/artifactory/repositories
+ http://repo.nikl.me/artifactory/public
-
org.bukkit
bukkit
- 1.12.2-R0.1-SNAPSHOT
+ 1.14.1-R0.1-SNAPSHOT
provided
-
me.nikl
- gamebox-core
- 2.1.4
+ gamebox
+ ${gamebox.version}
provided
-
- clean package
- ${project.artifactId}
-
-
1.8
1.8
UTF-8
UTF-8
+ 3.0.0-beta.2
-
\ No newline at end of file
+
diff --git a/src/main/java/me/nikl/logicpuzzles/ExtendedInventory.java b/src/main/java/me/nikl/logicpuzzles/ExtendedInventory.java
new file mode 100644
index 0000000..6f529a9
--- /dev/null
+++ b/src/main/java/me/nikl/logicpuzzles/ExtendedInventory.java
@@ -0,0 +1,22 @@
+package me.nikl.logicpuzzles;
+
+import org.bukkit.inventory.Inventory;
+import org.bukkit.inventory.ItemStack;
+
+public class ExtendedInventory {
+ private Inventory upperInventory;
+ private Inventory lowerInventory;
+
+ public ExtendedInventory(Inventory upperInventory, Inventory lowerInventory) {
+ this.upperInventory = upperInventory;
+ this.lowerInventory = lowerInventory;
+ }
+
+ public void setItem(int slot, ItemStack item) {
+ if (slot >= upperInventory.getSize()) {
+ lowerInventory.setItem(slot - upperInventory.getSize() + 9, item);
+ } else {
+ upperInventory.setItem(slot, item);
+ }
+ }
+}
diff --git a/src/main/java/me/nikl/logicpuzzles/LogicPuzzles.java b/src/main/java/me/nikl/logicpuzzles/LogicPuzzles.java
index 5631656..4a56bd9 100644
--- a/src/main/java/me/nikl/logicpuzzles/LogicPuzzles.java
+++ b/src/main/java/me/nikl/logicpuzzles/LogicPuzzles.java
@@ -1,35 +1,26 @@
package me.nikl.logicpuzzles;
-import me.nikl.gamebox.GameBox;
-import me.nikl.gamebox.Module;
-import org.bukkit.Bukkit;
-import org.bukkit.plugin.Plugin;
-import org.bukkit.plugin.java.JavaPlugin;
+import me.nikl.gamebox.module.GameBoxModule;
+import me.nikl.logicpuzzles.sudoku.Sudoku;
+import me.nikl.logicpuzzles.threeinarow.ThreeInARow;
/**
* Created by Niklas
*
* Main class of the GameBox game Sudoku
*/
-public class LogicPuzzles extends JavaPlugin{
+public class LogicPuzzles extends GameBoxModule {
public static final String SUDOKU = "sudoku";
public static final String THREE_IN_A_ROW = "threeinarow";
- private GameBox gameBox;
@Override
public void onEnable(){
- Plugin plugin = Bukkit.getPluginManager().getPlugin("GameBox");
- if(plugin == null || !plugin.isEnabled()){
- getLogger().warning(" GameBox was not found! Disabling LogicPuzzles...");
- Bukkit.getPluginManager().disablePlugin(this);
- return;
- }
- gameBox = (GameBox) plugin;
- new Module(gameBox, SUDOKU
- , "me.nikl.logicpuzzles.sudoku.Sudoku"
- , this, SUDOKU, "su");
- new Module(gameBox, THREE_IN_A_ROW
- , "me.nikl.logicpuzzles.threeinarow.ThreeInARow"
- , this, THREE_IN_A_ROW, "tiar");
+ registerGame(SUDOKU, Sudoku.class, "su");
+ registerGame(THREE_IN_A_ROW, ThreeInARow.class, "tiar");
+ }
+
+ @Override
+ public void onDisable() {
+
}
}
diff --git a/src/main/java/me/nikl/logicpuzzles/sudoku/Sudoku.java b/src/main/java/me/nikl/logicpuzzles/sudoku/Sudoku.java
index cbd7c32..3cc811d 100644
--- a/src/main/java/me/nikl/logicpuzzles/sudoku/Sudoku.java
+++ b/src/main/java/me/nikl/logicpuzzles/sudoku/Sudoku.java
@@ -27,7 +27,6 @@ public void loadSettings() {
gameSettings.setGameType(GameSettings.GameType.SINGLE_PLAYER);
gameSettings.setGameGuiSize(54);
gameSettings.setHandleClicksOnHotbar(false);
- gameSettings.setGameBoxMinimumVersion("2.1.4");
}
@Override
@@ -39,4 +38,4 @@ public void loadLanguage() {
public void loadGameManager() {
gameManager = new SudokuGameManager(this);
}
-}
\ No newline at end of file
+}
diff --git a/src/main/java/me/nikl/logicpuzzles/sudoku/SudokuGame.java b/src/main/java/me/nikl/logicpuzzles/sudoku/SudokuGame.java
index a3d1ad6..f0ff10d 100644
--- a/src/main/java/me/nikl/logicpuzzles/sudoku/SudokuGame.java
+++ b/src/main/java/me/nikl/logicpuzzles/sudoku/SudokuGame.java
@@ -3,7 +3,7 @@
import me.nikl.gamebox.GameBoxSettings;
import me.nikl.gamebox.nms.NmsFactory;
import me.nikl.gamebox.utility.Sound;
-import org.bukkit.Material;
+import me.nikl.logicpuzzles.ExtendedInventory;
import org.bukkit.entity.Player;
import org.bukkit.event.inventory.InventoryAction;
import org.bukkit.event.inventory.InventoryClickEvent;
@@ -24,7 +24,8 @@ public class SudokuGame {
private String ruleKey;
private boolean playSounds, wasWon = false;
private SudokuLanguage lang;
- private Inventory inventory;
+ //private Inventory inventory;
+ private ExtendedInventory inventory;
private Player player;
private Sound won = Sound.VILLAGER_YES, click = Sound.CLICK;
private float volume = 0.5f, pitch= 1f;
@@ -36,8 +37,6 @@ public class SudokuGame {
private BitSet tips = new BitSet(81);
private ItemStack resetButton;
private String puzzle;
- private long lastRestartClick = System.currentTimeMillis() - 100000;
- private final int resetButtonSlot = 22;
public SudokuGame(SudokuGameRules rule, Sudoku game, Player player, boolean playSounds, String puzzle, Map cover, Map tip, Map number){
this.game = game;
@@ -53,20 +52,10 @@ public SudokuGame(SudokuGameRules rule, Sudoku game, Player player, boolean play
// create inventory
String title = lang.GAME_TITLE.replace("%score%", String.valueOf(score));
- if(GameBoxSettings.checkInventoryLength && title.length() > 32){
- title = "Title is too long!";
- }
- this.inventory = game.createInventory(81, title);
+ Inventory upperInventory = game.createInventory(54, title);
+ this.inventory = new ExtendedInventory(upperInventory, player.getInventory());
buildStartingGrid();
- player.openInventory(inventory);
- if(rule.hasRestartButton()) {
- resetButton = new ItemStack(Material.LEVER);
- ItemMeta meta = resetButton.getItemMeta();
- meta.setDisplayName(lang.RESTART_NAME);
- meta.setLore(lang.RESTART_LORE);
- resetButton.setItemMeta(meta);
- player.getInventory().setItem(resetButtonSlot, resetButton);
- }
+ player.openInventory(upperInventory);
}
private void loadNumberTiles(Map number) {
@@ -92,7 +81,7 @@ private void buildStartingGrid() {
char value;
ItemStack tip;
ItemMeta meta;
- for(int slot = 0; slot < inventory.getSize(); slot++){
+ for(int slot = 0; slot < 81; slot++){
x = (slot%9)/3 + 1;
y = (slot/9)/3;
value = puzzle.charAt(slot);
@@ -154,23 +143,10 @@ private boolean isWon() {
public void onClick(InventoryClickEvent inventoryClickEvent) {
if(inventoryClickEvent.getCurrentItem() == null) return;
if(wasWon) return;
- if(inventoryClickEvent.getRawSlot() > 81 && inventoryClickEvent.getSlot() == resetButtonSlot){
- long now = System.currentTimeMillis();
- game.debug("reset click...");
- if(now - lastRestartClick > 1000){
- lastRestartClick = now;
- } else {
- gridNumbers = new int[81];
- buildStartingGrid();
- if (playSounds) player.playSound(player.getLocation(), Sound.BURP.bukkitSound(), volume, pitch);
- lastRestartClick = now - 1000000;
- }
- return;
- }
- int slot = inventoryClickEvent.getSlot();
+ int slot = inventoryClickEvent.getRawSlot();
- // if the bit set is set for the slot it is a tip
+ // if the bit is set for the slot it is a tip
if(tips.get(slot)) return;
int x = (slot%9)/3;
diff --git a/src/main/java/me/nikl/logicpuzzles/sudoku/SudokuGameManager.java b/src/main/java/me/nikl/logicpuzzles/sudoku/SudokuGameManager.java
index 0104fb8..f0e50ab 100644
--- a/src/main/java/me/nikl/logicpuzzles/sudoku/SudokuGameManager.java
+++ b/src/main/java/me/nikl/logicpuzzles/sudoku/SudokuGameManager.java
@@ -87,25 +87,25 @@ private void loadItems() {
for (int i = 1; i < 10; i++){
if(!game.getConfig().isConfigurationSection("items.grid." + i)){
Bukkit.getConsoleSender().sendMessage(lang.PREFIX + ChatColor.RED + " items.grid." + i + " section missing in config");
- cover.put(i, new ItemStack(Material.STAINED_GLASS_PANE, 1));
- tip.put(i, new ItemStack(Material.HARD_CLAY, i));
- number.put(i, new ItemStack(Material.WOOL, i));
+ cover.put(i, new ItemStack(Material.LIGHT_GRAY_STAINED_GLASS_PANE, 1));
+ tip.put(i, new ItemStack(Material.CLAY, i));
+ number.put(i, new ItemStack(Material.WHITE_WOOL, i));
continue;
}
- tipItem = ItemStackUtility.getItemStack(items.getString(i + "." + "tip" + ".materialData", "HARD_CLAY"));
- coverItem = ItemStackUtility.getItemStack(items.getString(i + "." + "cover" + ".materialData", "STAINED_GLASS_PANE"));
- numberItem = ItemStackUtility.getItemStack(items.getString(i + "." + "number" + ".materialData", "WOOL"));
+ tipItem = ItemStackUtility.getItemStack(items.getString(i + "." + "tip" + ".materialData", "CLAY"));
+ coverItem = ItemStackUtility.getItemStack(items.getString(i + "." + "cover" + ".materialData", "LIGHT_GRAY_STAINED_GLASS_PANE"));
+ numberItem = ItemStackUtility.getItemStack(items.getString(i + "." + "number" + ".materialData", "WHITE_WOOL"));
if(tipItem == null){
- tipItem = new ItemStack(Material.HARD_CLAY, 1);
+ tipItem = new ItemStack(Material.CLAY, 1);
game.warn(ChatColor.RED.toString() + i + "." + "tip" + ".materialData" + " not valid material");
}
if(coverItem == null){
- coverItem = new ItemStack(Material.STAINED_GLASS_PANE, 1);
+ coverItem = new ItemStack(Material.LIGHT_GRAY_STAINED_GLASS_PANE, 1);
game.warn(ChatColor.RED.toString() + i + "." + "cover" + ".materialData" + " not valid material");
}
if(numberItem == null){
- numberItem = new ItemStack(Material.WOOL, 1);
+ numberItem = new ItemStack(Material.WHITE_WOOL, 1);
game.warn(ChatColor.RED.toString() + i + "." + "number" + ".materialData" + " not valid material");
}
ItemMeta meta = tipItem.getItemMeta();
@@ -189,10 +189,9 @@ public void removeFromGame(UUID uuid) {
public void loadGameRules(ConfigurationSection buttonSec, String buttonID) {
double cost = buttonSec.getDouble("cost", 0.);
boolean saveStats = buttonSec.getBoolean("saveStats", false);
- boolean restartButton = buttonSec.getBoolean("restartButton", true);
int token = buttonSec.getInt("token", 0);
int money = buttonSec.getInt("money", 0);
- gameTypes.put(buttonID, new SudokuGameRules(buttonID, cost, money, token, restartButton, saveStats));
+ gameTypes.put(buttonID, new SudokuGameRules(buttonID, cost, money, token, saveStats));
}
@Override
@@ -218,6 +217,5 @@ public void onGameEnd(Player winner, String key) {
} else {
winner.sendMessage((lang.PREFIX + lang.GAME_WON));
}
- game.onGameWon(winner, rule, 1);
}
}
diff --git a/src/main/java/me/nikl/logicpuzzles/sudoku/SudokuGameRules.java b/src/main/java/me/nikl/logicpuzzles/sudoku/SudokuGameRules.java
index 72293a6..dc1ab59 100644
--- a/src/main/java/me/nikl/logicpuzzles/sudoku/SudokuGameRules.java
+++ b/src/main/java/me/nikl/logicpuzzles/sudoku/SudokuGameRules.java
@@ -9,14 +9,7 @@
* Game rules container for Sudoku
*/
public class SudokuGameRules extends GameRuleRewards {
- private boolean restartButton;
-
- public SudokuGameRules(String key, double cost, int reward, int tokens, boolean restartButton, boolean saveStats){
+ public SudokuGameRules(String key, double cost, int reward, int tokens, boolean saveStats){
super(key, saveStats, SaveType.WINS, cost, reward, tokens);
- this.restartButton = restartButton;
- }
-
- public boolean hasRestartButton() {
- return restartButton;
}
}
diff --git a/src/main/java/me/nikl/logicpuzzles/threeinarow/ThreeInARow.java b/src/main/java/me/nikl/logicpuzzles/threeinarow/ThreeInARow.java
index fd32046..57ea9fb 100644
--- a/src/main/java/me/nikl/logicpuzzles/threeinarow/ThreeInARow.java
+++ b/src/main/java/me/nikl/logicpuzzles/threeinarow/ThreeInARow.java
@@ -3,9 +3,9 @@
import me.nikl.gamebox.GameBox;
import me.nikl.gamebox.game.Game;
import me.nikl.gamebox.game.GameSettings;
-import me.nikl.logicpuzzles.LogicPuzzles;
import me.nikl.gamebox.utility.ItemStackUtility;
import me.nikl.gamebox.utility.StringUtility;
+import me.nikl.logicpuzzles.LogicPuzzles;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
@@ -36,13 +36,13 @@ public void init() {
}
private void loadItems() {
- blueTile = loadItem("game.blueTile", "wool:11");
- whiteTile = loadItem("game.whiteTile", "wool");
- blueTileTip = loadItem("game.blueTileTip", "stained_clay:11");
- whiteTileTip = loadItem("game.whiteTileTip", "stained_clay");
- wrongHelpItem = loadItem("game.wrongHelpItem", "stained_glass_pane:14");
- correctHelpItem = loadItem("game.correctHelpItem", "stained_glass_pane:13");
- backGround = loadItem("game.backGround", "stained_glass_pane:7");
+ blueTile = loadItem("game.blueTile", "BLUE_WOOL");
+ whiteTile = loadItem("game.whiteTile", "WHITE_WOOL");
+ blueTileTip = loadItem("game.blueTileTip", "BLUE_CONCRETE");
+ whiteTileTip = loadItem("game.whiteTileTip", "WHITE_CONCRETE");
+ wrongHelpItem = loadItem("game.wrongHelpItem", "ORANGE_STAINED_GLASS_PANE");
+ correctHelpItem = loadItem("game.correctHelpItem", "GREEN_STAINED_GLASS_PANE");
+ backGround = loadItem("game.backGround", "GRAY_STAINED_GLASS_PANE");
}
private ItemStack loadItem(String path, String defaultMaterial) {
@@ -67,7 +67,6 @@ public void loadSettings() {
gameSettings.setGameType(GameSettings.GameType.SINGLE_PLAYER);
gameSettings.setHandleClicksOnHotbar(false);
gameSettings.setGameGuiSize(54);
- gameSettings.setGameBoxMinimumVersion("2.1.4");
}
@Override
diff --git a/src/main/java/me/nikl/logicpuzzles/threeinarow/TiarGame.java b/src/main/java/me/nikl/logicpuzzles/threeinarow/TiarGame.java
index 5693164..2f4d550 100644
--- a/src/main/java/me/nikl/logicpuzzles/threeinarow/TiarGame.java
+++ b/src/main/java/me/nikl/logicpuzzles/threeinarow/TiarGame.java
@@ -2,6 +2,7 @@
import me.nikl.gamebox.nms.NmsFactory;
import me.nikl.gamebox.utility.Sound;
+import me.nikl.logicpuzzles.ExtendedInventory;
import org.bukkit.entity.Player;
import org.bukkit.event.inventory.ClickType;
import org.bukkit.event.inventory.InventoryClickEvent;
@@ -18,7 +19,7 @@
* Created by nikl on 25.02.18.
*/
public class TiarGame {
- private Inventory inventory;
+ private ExtendedInventory extendedInventory;
private TiarLanguage language;
private ThreeInARow game;
private TiarRules rule;
@@ -37,9 +38,10 @@ public TiarGame(ThreeInARow threeInARow, TiarRules rules, Player player, String
this.game = threeInARow;
backGround = this.game.getBackGround();
this.rule = rules;
- this.inventory = threeInARow.createInventory(54 + 9, language.GAME_TITLE);
+ Inventory upperInventory = threeInARow.createInventory(54, language.GAME_TITLE);
+ this.extendedInventory = new ExtendedInventory(upperInventory, player.getInventory());
prepareInventory(game);
- player.openInventory(inventory);
+ player.openInventory(upperInventory);
}
private void prepareInventory(String game) {
@@ -54,13 +56,13 @@ private void prepareInventory(String game) {
}
if (character == '1') {
grid[gridSlot] = 1;
- inventory.setItem(gridToInventory(gridSlot), this.game.getWhiteTileTip());
+ extendedInventory.setItem(gridToInventory(gridSlot), this.game.getWhiteTileTip());
tipSlots.add(gridToInventory(gridSlot));
continue;
}
if (character == '2') {
grid[gridSlot] = 2;
- inventory.setItem(gridToInventory(gridSlot), this.game.getBlueTileTip());
+ extendedInventory.setItem(gridToInventory(gridSlot), this.game.getBlueTileTip());
tipSlots.add(gridToInventory(gridSlot));
}
}
@@ -68,11 +70,12 @@ private void prepareInventory(String game) {
}
private void placeBackGround() {
- for (int i = 0; i < 7; i++) {
- inventory.setItem(i, backGround);
- inventory.setItem(i*9, backGround);
- inventory.setItem(i*9 + 8, backGround);
- inventory.setItem(i*9 + 7, backGround);
+ extendedInventory.setItem(60, backGround);
+ for (int i = 0; i < 9; i++) {
+ extendedInventory.setItem(i + 63, backGround);
+ extendedInventory.setItem(i + 72, backGround);
+ extendedInventory.setItem(i*9 + 8, backGround);
+ extendedInventory.setItem(i*9 + 7, backGround);
}
}
@@ -98,13 +101,14 @@ private void updateColumnHelpItem(int column) {
if (grid[row*6 + column] == 1) white++;
if (grid[row*6 + column] == 2) blue++;
}
+ int helpItemSlot = column + 54;
if (blue == 3 && white == 3) {
- helpItems.put(column + 1, game.getCorrectHelpItem());
- inventory.setItem(column + 1, game.getCorrectHelpItem());
+ helpItems.put(helpItemSlot, game.getCorrectHelpItem());
+ extendedInventory.setItem(helpItemSlot, game.getCorrectHelpItem());
return;
}
- helpItems.put(column + 1, createHelpItem(white, blue));
- inventory.setItem(column + 1, helpItems.get(column + 1));
+ helpItems.put(helpItemSlot, createHelpItem(white, blue));
+ extendedInventory.setItem(helpItemSlot, helpItems.get(helpItemSlot));
}
private ItemStack createHelpItem(int white, int blue) {
@@ -128,47 +132,48 @@ private void updateRowHelpItem(int row) {
if (grid[row*6 + column] == 1) white++;
if (grid[row*6 + column] == 2) blue++;
}
+ int helpItemSlot = row * 9 + 6;
if (blue == 3 && white == 3) {
- helpItems.put(gridToInventory(row*6 + 5) + 1, game.getCorrectHelpItem());
- inventory.setItem(gridToInventory(row*6 + 5) + 1, game.getCorrectHelpItem());
+ helpItems.put(helpItemSlot, game.getCorrectHelpItem());
+ extendedInventory.setItem(helpItemSlot, game.getCorrectHelpItem());
return;
}
- helpItems.put(gridToInventory(row*6 + 5) + 1, createHelpItem(white, blue));
- inventory.setItem(gridToInventory(row*6 + 5) + 1, helpItems.get(gridToInventory(row*6 + 5) + 1));
+ helpItems.put(helpItemSlot, createHelpItem(white, blue));
+ extendedInventory.setItem(helpItemSlot, helpItems.get(helpItemSlot));
}
private int gridToInventory(int gridSlot) {
int row = gridSlot / 6;
int column = gridSlot % 6;
- return 9 + row * 9 + column + 1;
+ return row * 9 + column;
}
private int inventoryToGrid (int inventorySlot) {
int row = inventorySlot / 9;
int column = inventorySlot % 9;
- if (row == 0 || column == 0 || column > 6 || row > 6) return -1;
- return (row - 1)*6 + column - 1;
+ if (column > 5 || row > 5) return -1;
+ return (row)*6 + column;
}
- private void clickSlot(int inventorySlot) {
+ private void clickSlot(int inventorySlot, boolean rightClick) {
int gridSlot = inventoryToGrid(inventorySlot);
if (gridSlot < 0) return;
if (tipSlots.contains(inventorySlot)) return;
game.playSound(player, click);
- grid[gridSlot] = (grid[gridSlot] + 1) % 3;
+ grid[gridSlot] = (grid[gridSlot] + (rightClick ? -1 : 1)) % 3;
updateGridSlot(gridSlot);
}
private void updateGridSlot(int gridSlot) {
switch (grid[gridSlot]) {
case 0:
- inventory.setItem(gridToInventory(gridSlot), null);
+ extendedInventory.setItem(gridToInventory(gridSlot), null);
break;
case 1:
- inventory.setItem(gridToInventory(gridSlot), game.getWhiteTile());
+ extendedInventory.setItem(gridToInventory(gridSlot), game.getWhiteTile());
break;
case 2:
- inventory.setItem(gridToInventory(gridSlot), game.getBlueTile());
+ extendedInventory.setItem(gridToInventory(gridSlot), game.getBlueTile());
break;
}
updateHelpItem(gridSlot);
@@ -176,7 +181,7 @@ private void updateGridSlot(int gridSlot) {
public boolean onClick(InventoryClickEvent inventoryClickEvent) {
if (inventoryClickEvent.getClick() == ClickType.DOUBLE_CLICK || finished) return true;
- clickSlot(inventoryClickEvent.getSlot());
+ clickSlot(inventoryClickEvent.getRawSlot(), inventoryClickEvent.getClick() == ClickType.RIGHT);
if (isFinished()) {
game.onGameWon(player, rule, 1);
NmsFactory.getNmsUtility().updateInventoryTitle(player, language.GAME_TITLE_WON);
diff --git a/src/main/resources/games/sudoku/config.yml b/src/main/resources/games/sudoku/config.yml
index 4dd1a64..85b0ef9 100644
--- a/src/main/resources/games/sudoku/config.yml
+++ b/src/main/resources/games/sudoku/config.yml
@@ -26,7 +26,7 @@ langFile: "default"
gameBox:
mainButton:
# define the Material and data for the button (format: 'material:data')
- materialData: "wool:4"
+ materialData: "YELLOW_WOOL"
# display name of the button
displayName: "&3Sudoku"
# lore of the button
@@ -35,7 +35,7 @@ gameBox:
- "&1The famous logic game"
gameButtons:
saveStats:
- materialData: "stained_clay:3"
+ materialData: "LIGHT_BLUE_CONCRETE"
displayName: "&a&lSudoku"
lore:
- ""
@@ -49,16 +49,13 @@ gameBox:
cost: 20
token: 1
money: 30
- # option for restart button
- # default is true
- restartButton: true
# if true the best score of this button is saved
saveStats: true
topListButtons:
# use the same key as the game you want to display the top list for
# for that button 'saveStats' must be true (see above)
saveStats:
- materialData: "stained_clay:11"
+ materialData: "BLUE_CONCRETE"
displayName: "&a&lTop list"
lore:
- ""
@@ -99,91 +96,91 @@ items:
grid:
'1':
cover:
- materialData: "stained_glass_pane:11"
+ materialData: "BLUE_STAINED_GLASS_PANE"
displayName: "&1"
tip:
- materialData: "stained_clay:11"
+ materialData: "BLUE_CONCRETE"
displayName: "&1&l&n%value%"
number:
- materialData: "wool:11"
+ materialData: "BLUE_WOOL"
displayName: "&1%value%"
'2':
cover:
- materialData: "stained_glass_pane"
+ materialData: "WHITE_STAINED_GLASS_PANE"
displayName: "&f"
tip:
- materialData: "stained_clay"
+ materialData: "WHITE_CONCRETE"
displayName: "&f&l&n%value%"
number:
- materialData: "wool"
+ materialData: "WHITE_WOOL"
displayName: "&f%value%"
'3':
cover:
- materialData: "stained_glass_pane:11"
+ materialData: "BLUE_STAINED_GLASS_PANE"
displayName: "&1"
tip:
- materialData: "stained_clay:11"
+ materialData: "BLUE_CONCRETE"
displayName: "&1&l&n%value%"
number:
- materialData: "wool:11"
+ materialData: "BLUE_WOOL"
displayName: "&1%value%"
'4':
cover:
- materialData: "stained_glass_pane"
+ materialData: "WHITE_STAINED_GLASS_PANE"
displayName: "&f"
tip:
- materialData: "stained_clay"
+ materialData: "WHITE_CONCRETE"
displayName: "&f&l&n%value%"
number:
- materialData: "wool"
+ materialData: "WHITE_WOOL"
displayName: "&f%value%"
'5':
cover:
- materialData: "stained_glass_pane:11"
+ materialData: "BLUE_STAINED_GLASS_PANE"
displayName: "&1"
tip:
- materialData: "stained_clay:11"
+ materialData: "BLUE_CONCRETE"
displayName: "&1&l&n%value%"
number:
- materialData: "wool:11"
+ materialData: "BLUE_WOOL"
displayName: "&1%value%"
'6':
cover:
- materialData: "stained_glass_pane"
+ materialData: "WHITE_STAINED_GLASS_PANE"
displayName: "&f"
tip:
- materialData: "stained_clay"
+ materialData: "WHITE_CONCRETE"
displayName: "&f&l&n%value%"
number:
- materialData: "wool"
+ materialData: "WHITE_WOOL"
displayName: "&f%value%"
'7':
cover:
- materialData: "stained_glass_pane:11"
+ materialData: "BLUE_STAINED_GLASS_PANE"
displayName: "&1"
tip:
- materialData: "stained_clay:11"
+ materialData: "BLUE_CONCRETE"
displayName: "&1&l&n%value%"
number:
- materialData: "wool:11"
+ materialData: "BLUE_WOOL"
displayName: "&1%value%"
'8':
cover:
- materialData: "stained_glass_pane"
+ materialData: "WHITE_STAINED_GLASS_PANE"
displayName: "&f"
tip:
- materialData: "stained_clay"
+ materialData: "WHITE_CONCRETE"
displayName: "&f&l&n%value%"
number:
- materialData: "wool"
+ materialData: "WHITE_WOOL"
displayName: "&f%value%"
'9':
cover:
- materialData: "stained_glass_pane:11"
+ materialData: "BLUE_STAINED_GLASS_PANE"
displayName: "&1"
tip:
- materialData: "stained_clay:11"
+ materialData: "BLUE_CONCRETE"
displayName: "&1&l&n%value%"
number:
- materialData: "wool:11"
+ materialData: "BLUE_WOOL"
displayName: "&1%value%"
diff --git a/src/main/resources/games/threeinarow/config.yml b/src/main/resources/games/threeinarow/config.yml
index 32f690c..7bd49c9 100644
--- a/src/main/resources/games/threeinarow/config.yml
+++ b/src/main/resources/games/threeinarow/config.yml
@@ -15,7 +15,7 @@ langFile: "default"
gameBox:
mainButton:
# define the Material and data for the button (format: 'material:data')
- materialData: "wool:11"
+ materialData: "BLUE_WOOL"
# display name of the button
displayName: "&3Three In A Row"
# lore of the button
@@ -24,7 +24,7 @@ gameBox:
- "&1Japanese logic game"
gameButtons:
saveStats:
- materialData: "stained_clay:3"
+ materialData: "WHITE_CONCRETE"
displayName: "&a&lThree In A Row"
lore:
- ""
@@ -48,7 +48,7 @@ gameBox:
# use the same key as the game you want to display the top list for
# for that button 'saveStats' must be true (see above)
saveStats:
- materialData: "stained_clay:11"
+ materialData: "BLUE_CONCRETE"
displayName: "&a&lTop list"
lore:
- ""
@@ -73,37 +73,37 @@ economy:
game:
blueTile:
- materialData: "wool:11"
+ materialData: "BLUE_WOOL"
displayName: "&1Blue tile"
whiteTile:
- materialData: "wool"
+ materialData: "WHITE_WOOL"
displayName: "&rWhite tile"
blueTileTip:
- materialData: "stained_clay:11"
+ materialData: "BLUE_CONCRETE"
displayName: "&1Blue tile"
lore:
- ""
- "&cThis cannot be changed"
whiteTileTip:
- materialData: "stained_clay"
+ materialData: "WHITE_CONCRETE"
displayName: "&rWhite tile"
lore:
- ""
- "&cThis cannot be changed"
wrongHelpItem:
- materialData: "stained_glass_pane:14"
+ materialData: "ORANGE_STAINED_GLASS_PANE"
displayName: "&4&lIncomplete:"
lore:
- ""
- "Blue: %blue_count%/3"
- "White: %white_count%/3"
correctHelpItem:
- materialData: "stained_glass_pane:13"
+ materialData: "GREEN_STAINED_GLASS_PANE"
displayName: "&a&lComplete!"
lore:
- ""
- "Blue: 3/3"
- "White: 3/3"
backGround:
- materialData: "stained_glass_pane:7"
- displayName: "&a"
\ No newline at end of file
+ materialData: "GRAY_STAINED_GLASS_PANE"
+ displayName: "&a"
diff --git a/src/main/resources/module.yml b/src/main/resources/module.yml
new file mode 100644
index 0000000..324d1dd
--- /dev/null
+++ b/src/main/resources/module.yml
@@ -0,0 +1,10 @@
+id: ${project.artifactId}
+version: ${project.version}
+authors: ["Niklas Eicker"]
+name: ${project.name}
+description: ${project.description}
+sourceUrl: ${project.scm.url}
+updatedAt: !!java.lang.Long ${timestamp}
+dependencies:
+ - id: gamebox
+ versionConstrain: ">= ${gamebox.version}"
diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml
deleted file mode 100644
index 5b92eb9..0000000
--- a/src/main/resources/plugin.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-name: LogicPuzzles
-author: Nikl
-main: me.nikl.logicpuzzles.LogicPuzzles
-version: 2.1.0
-website: nikl.me
-depend: [GameBox]
\ No newline at end of file