• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Spigot Intemshop

EdiNear

Minecrafter
Registriert
11 November 2016
Beiträge
9
Diamanten
250
Minecraft
EdiNear
Hallo,
Ich bin heute auf ein Problem gestoßen und hoffe, dass ihr mir vielleicht weiterhelfen könnt. Meine Mission ist es ein Shop System zu entwickeln welche auf verschiedene Materialien und Mengen zugreift deswegen habe ich mir folgendes ausgedacht:

Java:
    @EventHandler
    public void OnBuy(InventoryClickEvent event) {
        Player p = (Player) event.getWhoClicked();
    if (event.getCurrentItem().getItemMeta().getDisplayName().equalsIgnoreCase("§§a§o10Euro")){
     if (CoinsMySQL.getCoins(p.getUniqueId().toString(), p.getName()) > 10) {
        CoinsMySQL.remove(p.getUniqueId().toString(), p.getName(), 10);
        MaterialData data = event.getCurrentItem().getData();
        Material material = event.getCurrentItem().getType();
        int amount = event.getCurrentItem().getAmount();
        short durability = event.getCurrentItem().getDurability();
        ItemStack is = new ItemStack(material, amount);
        is.setData(data);
        is.setDurability((short) + durability);
        p.getInventory().addItem(is);
        String names = event.getCurrentItem().getItemMeta().getDisplayName();
        p.sendMessage(""+ names);
            }else {
                p.sendMessage("§cDu hast nicht genug coins");
            }
        
        }
         
    }

Mein Problem ist jetzt das die Items im Shop verschieden Kosten, wie viel das Item kostet, sieht man im Namen wie kann ich jetzt die abfragen machen wenn die Preise von 0 bis 1000 Variieren?

Ich danke schonmal im Voraus für alle Antworten.

Mit Freundlichen Grüßen EdiNear.
 

BloodSKreaper

Vorarbeiter
Registriert
12 Oktober 2014
Beiträge
249
Diamanten
316
Minecraft
BloodSKreaper
Hallo,
Ich bin heute auf ein Problem gestoßen und hoffe, dass ihr mir vielleicht weiterhelfen könnt. Meine Mission ist es ein Shop System zu entwickeln welche auf verschiedene Materialien und Mengen zugreift deswegen habe ich mir folgendes ausgedacht:

Java:
    @EventHandler
    public void OnBuy(InventoryClickEvent event) {
        Player p = (Player) event.getWhoClicked();
    if (event.getCurrentItem().getItemMeta().getDisplayName().equalsIgnoreCase("§§a§o10Euro")){
     if (CoinsMySQL.getCoins(p.getUniqueId().toString(), p.getName()) > 10) {
        CoinsMySQL.remove(p.getUniqueId().toString(), p.getName(), 10);
        MaterialData data = event.getCurrentItem().getData();
        Material material = event.getCurrentItem().getType();
        int amount = event.getCurrentItem().getAmount();
        short durability = event.getCurrentItem().getDurability();
        ItemStack is = new ItemStack(material, amount);
        is.setData(data);
        is.setDurability((short) + durability);
        p.getInventory().addItem(is);
        String names = event.getCurrentItem().getItemMeta().getDisplayName();
        p.sendMessage(""+ names);
            }else {
                p.sendMessage("§cDu hast nicht genug coins");
            }
       
        }
        
    }

Mein Problem ist jetzt das die Items im Shop verschieden Kosten, wie viel das Item kostet, sieht man im Namen wie kann ich jetzt die abfragen machen wenn die Preise von 0 bis 1000 Variieren?

Ich danke schonmal im Voraus für alle Antworten.

Mit Freundlichen Grüßen EdiNear.
Die einfachste Lösung wäre einfach den Preis aus dem Namen auszulesen. Wenn du weißt was vor der Preisangabe und was danach kommt kannst du das einfach ausschneiden. Hier wäre das wohl "§a§0" und "Euro". Das dazwischen sollte dann also der Preis sein und du kannst diesen zu einer double oder int casten und damit rechnen.

Freundliche Grüße
BloodSKreaper
 
Oben