Bukkit Plugin 1 Herz schaden

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

du fügst einen neuen command hinzu, der die varrieable h, die du mit player.gethealth.name oder so ähnlich bekommst zuweist und diese dann bei ausführung subrtahierst und mit einem player set befehl auf den Spieler überträgst

Du machst dir einen Befehl (falls du nicht weißt wie das geht GOOGLE das mal) und benutzt dann diese Zeile um dem Spieler ein Herz abzuziehen:

player.setHealth(player.getHealth() - 2);

"player.setHealth" heißt "Spieler.setzeLebenanzahl" und in den Klammern steht "player.getHealth - 2" was soviel bedeuted wie "Spieler.holeLebenanzahl - 2".

Also setzt du das Leben gleich das Leben des Players minus zwei (zwei halbe Herzen = 1 ganzes Herz)

Hoffe ich konnte helfen :D

LG Aerger9 :)

Ich weiß, ist ein bisl spät, aber für alle anderen:

also:

Die Command-Klasse:

package eu.hilfe.commands;

import org.bukkit.Bukkit;

import org.bukkit.command.Command;

import org.bukkit.command.CommandExecutor;

import org.bukkit.command.CommandSender;

import org.bukkit.entity.Player;

public class DamageCmd implements CommandExecutor {

   @Override

   public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {

      if(sender instanceof Player) {

         Player p = (Player) sender;

         if(p.hasPermission("system.damage")) {

            if(args.length == 0) {

               p.sendMessage("§cBitte benutze /damage <Spieler>");

            } else {

               Player target = Bukkit.getPlayer(args[0]);

               target.setHealth(target.getHealth() -2);

            }

         }

      }

      return false;

   }

}

------

Die Main-Klasse:

package eu.hilfe.main;

import org.bukkit.plugin.java.JavaPlugin;

import eu.hilfe.commands.DamageCmd;

public class Main extends JavaPlugin {

   public void onEnable() {

      getCommand("damage").setExecutor(new DamageCmd());

   }

}

Und plugin.yml soltest du selbst wissen!

Was möchtest Du wissen?