Hallo zusammen,
ich versuche seit bereits einer Woche eine funktionierende Animation für meinen
einarmigen Banditen zu erstellen. Die Idee ist, das alle fünf Reihen gleichzeitig beginnen zu drehen. Danach sollen nacheinander die erste zweite und so weiter erst langsamer werden und dann schließlich nacheinander stoppen.
Hier ist die meine Klasse EinarmigerBanditGUI:
Ich wünsche mir definitiv nicht eine komplette Lösung, nur einen kleinen Anstupser. Ich denke, dass ich es mit einem Bukkit Runnable machen muss, stehe bei denen aber komplett auf dem Schlauch. Solltet ihr noch etwas benötigen lasst es mich gerne wissen.
Viele Grüße
Nachtrag:
Es handelt sich hier um ein Minecraft Plugin (Spigot).
ich versuche seit bereits einer Woche eine funktionierende Animation für meinen
einarmigen Banditen zu erstellen. Die Idee ist, das alle fünf Reihen gleichzeitig beginnen zu drehen. Danach sollen nacheinander die erste zweite und so weiter erst langsamer werden und dann schließlich nacheinander stoppen.
Hier ist die meine Klasse EinarmigerBanditGUI:
Java:
package net.tim.gambleplugin.guis;
import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
import org.bukkit.plugin.Plugin;
import java.util.ArrayList;
public class EinarmigerBanditGUI {
Material[] einarmigerBanditItems = {Material.COAL_BLOCK, Material.IRON_BLOCK, Material.GOLD_BLOCK, Material.DIAMOND_BLOCK, Material.EMERALD_BLOCK, Material.NETHERITE_BLOCK};
Material[][] slotMachine = new Material[5][5];
private final Plugin plugin;
Inventory gui;
public EinarmigerBanditGUI(Plugin plugin){
this.plugin = plugin;
}
public void openEinarmigerBanditGUI(Player player){
gui = Bukkit.createInventory(null, 45, "Einarmiger Bandit");
//Exit button
ItemStack exit = new ItemStack(Material.BARRIER);
ItemMeta exitMeta = exit.getItemMeta();
exitMeta.setDisplayName("Exit");
exitMeta.setLore(null);
exit.setItemMeta(exitMeta);
gui.setItem(34, exit);
//Spin button
ItemStack spin = new ItemStack(Material.OAK_BUTTON);
ItemMeta spinMeta = spin.getItemMeta();
spinMeta.setDisplayName("Spin");
spinMeta.setLore(new ArrayList<>() {{add("Click to spin the slot machine.");}{add("Costs 1 diamond.");}});
spin.setItemMeta(spinMeta);
gui.setItem(16, spin);
//Create Slot machine
for (int i = 0; i < slotMachine.length; i++) {
for (int j = 0; j < 5; j++) {
slotMachine[i][j] = einarmigerBanditItems[j];
}
}
//Draw slot machine
drawSlotMachine(gui);
player.openInventory(gui);
}
public void spin(){
}
private void manipulateSlotMachine(Material material){
}
private void drawSlotMachine(Inventory gui){
for (int i = 0; i < slotMachine.length; i++){
for (int j = 0; j < 5; j++){
gui.setItem(9 * j +i, new ItemStack(slotMachine[i][j]));
}
}
}
private void spinSlotMachineOnce(int row){
if (row < 0 || row >4)
throw new IllegalArgumentException("Row must be between 0 and 4");
slotMachine[row][0] = slotMachine[row][1];
slotMachine[row][1] = slotMachine[row][2];
slotMachine[row][2] = slotMachine[row][3];
slotMachine[row][3] = slotMachine[row][4];
slotMachine[row][4] = slotMachine[row][0];
drawSlotMachine(gui);
}
}
Ich wünsche mir definitiv nicht eine komplette Lösung, nur einen kleinen Anstupser. Ich denke, dass ich es mit einem Bukkit Runnable machen muss, stehe bei denen aber komplett auf dem Schlauch. Solltet ihr noch etwas benötigen lasst es mich gerne wissen.
Viele Grüße
Nachtrag:
Es handelt sich hier um ein Minecraft Plugin (Spigot).
Zuletzt bearbeitet: