Minecraft Withdraw und Deposit

A

AkenoBot

Mitglied
Deposit-Command

Java:
package me.JWH.Notes;

import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;








public class DepositCommand
  implements CommandExecutor
{
  private BanknotePlugin plugin;
  
  public DepositCommand(BanknotePlugin plugin) { this.plugin = plugin; }


  
  public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
    if (!(sender instanceof Player)) {
      sender.sendMessage("Only players can deposit bank notes");
    } else if (!sender.hasPermission("banknotes.deposit")) {
      sender.sendMessage(this.plugin.colorMessage(this.plugin.getConfig().getString("m.insufficient-permissions")));
    } else {
      
      Player player = (Player)sender;
      ItemStack item = player.getItemInHand();
      
      if (item != null && this.plugin.isBanknote(item)) {
        double amount = this.plugin.getBanknoteAmount(item);
        
        if (amount > 0.0D) {
          this.plugin.getEconomy().depositPlayer(player, amount);
          player.sendMessage(this.plugin.colorMessage(this.plugin.getConfig().getString("m.note-redeemed").replace("[money]", this.plugin.formatDouble(amount))));
        } else {
          player.sendMessage(this.plugin.colorMessage(this.plugin.getConfig().getString("m.invalid-note")));
        } 

        
        if (item.getAmount() <= 1) {
          player.getInventory().removeItem(new ItemStack[] { item });
        } else {
          item.setAmount(item.getAmount() - 1);
        } 
      } else {
        player.sendMessage(this.plugin.colorMessage(this.plugin.getConfig().getString("m.nothing-in-hand")));
      } 
    } 
    return true;
  }
}



Withdraw-Command
Java:
package me.JWH.Notes;

import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;








public class WithdrawCommand
  implements CommandExecutor
{
  private BanknotePlugin plugin;
  
  public WithdrawCommand(BanknotePlugin plugin) { this.plugin = plugin; }


  
  public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
    if (!(sender instanceof Player))
    { sender.sendMessage("Only players can withdraw bank notes"); }
    else if (!sender.hasPermission("banknotes.withdraw"))
    { sender.sendMessage(this.plugin.colorMessage(this.plugin.getConfig().getString("m.insufficient-permissions"))); }
    else { if (args.length == 0) {
        return false;
      }
      Player player = (Player)sender;
      
      try {
        double amount = args[0].equalsIgnoreCase("all") ? 
          this.plugin.getEconomy().getBalance(player) : Double.parseDouble(args[0]);
        double min = this.plugin.getConfig().getDouble("s.minimum-withdraw-amount");
        double max = this.plugin.getConfig().getDouble("s.maximum-withdraw-amount");
        
        if (Double.isNaN(amount) || Double.isInfinite(amount) || amount <= 0.0D) {
          player.sendMessage(this.plugin.colorMessage(this.plugin.getConfig().getString("m.invalid-number")));
        } else if (amount < min) {
          player.sendMessage(this.plugin.colorMessage(this.plugin.getConfig().getString("m.less-than-minimum").replace("[money]", this.plugin.formatDouble(min))));
        } else if (amount > max) {
          player.sendMessage(this.plugin.colorMessage(this.plugin.getConfig().getString("m.more-than-maximum").replace("[money]", this.plugin.formatDouble(max))));
        } else if (this.plugin.getEconomy().getBalance(player) < amount) {
          player.sendMessage(this.plugin.colorMessage(this.plugin.getConfig().getString("m.insufficient-funds")));
        } else if (player.getInventory().firstEmpty() == -1) {
          player.sendMessage(this.plugin.colorMessage(this.plugin.getConfig().getString("m.inventory-full")));
        } else {
          ItemStack banknote = this.plugin.createBanknote(player, amount);
          this.plugin.getEconomy().withdrawPlayer(player, amount);
          
          player.getInventory().addItem(new ItemStack[] { banknote });
          player.sendMessage(this.plugin.colorMessage(this.plugin.getConfig().getString("m.note-created").replace("[money]", this.plugin.formatDouble(amount))));
        } 
      } catch (NumberFormatException invalidNumber) {
        player.sendMessage(this.plugin.colorMessage(this.plugin.getConfig().getString("m.invalid-number")));
      }  }
    
    return true;
  }
}
 
mrBrown

mrBrown

Super-Moderator
Mitarbeiter
Sollen wir nur den Code kritisieren oder hast du auch eine Frage? :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
K Minecraft "Griefergames" CobbleBot Spiele- und Multimedia-Programmierung 0
N Musikplayer in Minecraft Spiele- und Multimedia-Programmierung 0
G Minecraft PlayerBot (Listener Thread für jeden Spieler?) Spiele- und Multimedia-Programmierung 3
F Spigot 1.14 Minecraft Welt file löschen Spiele- und Multimedia-Programmierung 6
M Minecraft Spigot Plugin kompilieren Spiele- und Multimedia-Programmierung 4
N Minecraft Spigot-Plugin | Schusswaffe programmieren Spiele- und Multimedia-Programmierung 3
T Minecraft Event Plugin Spiele- und Multimedia-Programmierung 6
I Minecraft Support Bot Mod Spiele- und Multimedia-Programmierung 8
L wo sehe ich die Range und die Hitbox im Minecraft Sourcecode? Spiele- und Multimedia-Programmierung 2
M Minecraft Spieler move/run (bewegen) Spiele- und Multimedia-Programmierung 0
M Minecraft neue setDirection() (Blickrichtung) setzten Spiele- und Multimedia-Programmierung 5
Z Minecraft Multiplayer geht nicht Spiele- und Multimedia-Programmierung 2
A Minecraft Plugin, welches nur bestimmten Block zum bebauen festlegt Spiele- und Multimedia-Programmierung 26
L Minecraft 1.7.10 Server startet nicht Spiele- und Multimedia-Programmierung 1
B Minecraft Scoreboard Spiele- und Multimedia-Programmierung 3
B Programmieren wie der Befehl /ban in Minecraft geblockt wird aber nicht /ban mit einem Argument Spiele- und Multimedia-Programmierung 1
C [Minecraft] Launcher Spiele- und Multimedia-Programmierung 14
J Minecraft Coding BlockBreakEvent Spiele- und Multimedia-Programmierung 2
KeexZDeveoper Launcher (Minecraft) Spiele- und Multimedia-Programmierung 1
C Minecraft Coding Spiele- und Multimedia-Programmierung 8
C Minecraft Coding Spiele- und Multimedia-Programmierung 5
I Minecraft Plugin: Auf Spielerantwort warten Spiele- und Multimedia-Programmierung 1
I Minecraft: Craftingrecipe für Braustand ändern Spiele- und Multimedia-Programmierung 9
DanielsLPecke Minecraft Bukkit Scheduler. ALLGEMEIN. Spiele- und Multimedia-Programmierung 1
K Minecraft-Forge Mod Programmierung Spiele- und Multimedia-Programmierung 1
T Problem mit Eclipse (java)-(minecraft) Spiele- und Multimedia-Programmierung 3
C Minecraft Plugin 'Ancient Gates' Spiele- und Multimedia-Programmierung 0
C +++Minecraft Plug-In Programmierer gesucht+++ Spiele- und Multimedia-Programmierung 3
L Minecraft - BungeePerms Spiele- und Multimedia-Programmierung 1
F Minecraft Bot Mouse Inputs Spiele- und Multimedia-Programmierung 3
lord239123 Minecraft Nur sichtbare Objekte rendern Spiele- und Multimedia-Programmierung 5
T Minecraft Bukkit Plugin Text Datei auslesen Spiele- und Multimedia-Programmierung 1
A Minecraft Plugin Teleport Fehler Spiele- und Multimedia-Programmierung 1
B Minecraft mehr Ram zuweißen Problem Spiele- und Multimedia-Programmierung 0
H [Minecraft] Eclipse Spiele- und Multimedia-Programmierung 3
F Minecraft Bukkit Plugin - Inventory wiederherstellung? Spiele- und Multimedia-Programmierung 2
M Minecraft Bukkit Programmierung Spiele- und Multimedia-Programmierung 3
B Hilfe bei Minecraft Plugin Spiele- und Multimedia-Programmierung 3
M Minecraft Bukkit Server VM Kann nicht Vergrößert werden Spiele- und Multimedia-Programmierung 20
Doopy Minecraft Launcher modden Spiele- und Multimedia-Programmierung 15
K 3D Game wie Minecraft Spiele- und Multimedia-Programmierung 3

Ähnliche Java Themen

Anzeige


Oben