• 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!

Distance von Spieler

Selfmade

Minecrafter
Registriert
3 Februar 2013
Beiträge
11
Diamanten
0
Ich habe ein kleines problem

Was ich machen möchte:
Wenn der Spieler den Command /heal eingibt dann sollen allen in den Radius von 100 Blöcken geheilt werden

Der Code:

Code:
if(command.getName().equalsIgnoreCase("heal")){
	if(args.length == 1){
		Player player = (Player)sender;
		for(Player p : Bukkit.getOnlinePlayers()){
			/*
			 * Wie finde ich die Distance heraus
			*/
                        p.setHealth(20);
		}
        }
}

Meine Problem:

Wie finde ich die Distance heraus
 

Calenria

Braumeister
Registriert
28 Juli 2012
Beiträge
386
Alter
42
Diamanten
150
Minecraft
Calenria
Code:
final Location loc = player.getLocation();

for (Player onlinePlayer : Bukkit.getOnlinePlayers()) {
    final Location playerLoc = onlinePlayer.getPlayer().getLocation();
    if (playerLoc.getWorld() != world) {
        continue;
    }
    final double delta = playerLoc.distance(loc);
    if (delta > 100) {
        continue;
    }
    onlinePlayer.setHealth(20);
}
 

squiby

Minecrafter
Registriert
23 November 2012
Beiträge
8
Diamanten
0
Einfachere Variante:
Code:
if(sender instanceof Player) {
	Player heiler = (Player) sender;
	Location mitte = heiler.getLocation();
	Player[] spieler = this.getServer().getOnlinePlayers();
		for (int i = 0; i < spieler.length; i++) {
			if((spieler[i].getLocation().distance(mitte) <= 100) && (spieler[i].getWorld().getName().equals(heiler.getWorld().getName()))) {
			    			spieler[i].setHealth(20);
			    		}
			      spieler[i].setHealth(20);
			}
                }
}
+ Weltenabgleich
 
Zuletzt bearbeitet:
Oben