Skocz do zawartości
  • 0

Null pointer exception w pluginie


pringles18
 Udostępnij

Pytanie

Siemka tworze mały plugin ale nawinął się błąd którego nie mogę naprawić

package pl.kangur88.dzikiepvp;

import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.scoreboard.DisplaySlot;
import org.bukkit.scoreboard.Objective;
import org.bukkit.scoreboard.Scoreboard;
import org.bukkit.scoreboard.ScoreboardManager;

public class Main extends JavaPlugin{

	ScoreboardManager manager = Bukkit.getScoreboardManager();
	Scoreboard board = manager.getNewScoreboard();
	
	@Override
	public void onEnable() {
		super.onEnable();
	}
	
	@Override
	public void onLoad() {
		super.onLoad();
		Objective objective = board.registerNewObjective("health", "health", "health");
		objective.setDisplaySlot(DisplaySlot.BELOW_NAME);
		objective.setDisplayName("/ 20");
	}
	
	@EventHandler
	public void damage(EntityDamageByEntityEvent e) {
		for(Player online : Bukkit.getOnlinePlayers()){
			  online.setScoreboard(board);
			  online.setHealth(online.getHealth()); //Update their health
		}
	}
}

p3p4uGg.png

chciałbym aby tworzył się scoreboard, ktory pozniej bede mogl wykorzystac w evencie on join

Odnośnik do komentarza
Udostępnij na innych stronach

6 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

Jest u samej góry nie ma numeracji ale jest to linia

ScoreboardManager manager = Bukkit.getScoreboardManager();
	Scoreboard board = manager.getNewScoreboard();

Zapomniałem dodać że jest to robione zgodnie z tym poradnikiem:

Spoiler

bSsbPKe.png

 

Edytowane przez xNightPower_
Nieaktywny

Umieszczam kod w code, naprawiam formatowanie na ciemnym stylu, umieszczam zdjęcie w spoilerze.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
package pl.kangur88.dzikiepvp;

import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.scoreboard.DisplaySlot;
import org.bukkit.scoreboard.Objective;
import org.bukkit.scoreboard.Scoreboard;
import org.bukkit.scoreboard.ScoreboardManager;

public class Main extends JavaPlugin{

	ScoreboardManager manager;
	Scoreboard board;
	
	@Override
	public void onEnable() {
		super.onEnable();
       manager = Bukkit.getScoreboardManager();
       board = manager.getNewScoreboard();
	}
	
	@Override
	public void onLoad() {
		super.onLoad();
		Objective objective = board.registerNewObjective("health", "health", "health");
		objective.setDisplaySlot(DisplaySlot.BELOW_NAME);
		objective.setDisplayName("/ 20");
	}
	
	@EventHandler
	public void damage(EntityDamageByEntityEvent e) {
		for(Player online : Bukkit.getOnlinePlayers()){
			  online.setScoreboard(board);
			  online.setHealth(online.getHealth()); //Update their health
		}
	}
}

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
40 minut temu, LeviBoyPL napisał:
package pl.kangur88.dzikiepvp;

import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.scoreboard.DisplaySlot;
import org.bukkit.scoreboard.Objective;
import org.bukkit.scoreboard.Scoreboard;
import org.bukkit.scoreboard.ScoreboardManager;

public class Main extends JavaPlugin{

	ScoreboardManager manager;
	Scoreboard board;
	
	@Override
	public void onEnable() {
		super.onEnable();
       manager = Bukkit.getScoreboardManager();
       board = manager.getNewScoreboard();
	}
	
	@Override
	public void onLoad() {
		super.onLoad();
		Objective objective = board.registerNewObjective("health", "health", "health");
		objective.setDisplaySlot(DisplaySlot.BELOW_NAME);
		objective.setDisplayName("/ 20");
	}
	
	@EventHandler
	public void damage(EntityDamageByEntityEvent e) {
		for(Player online : Bukkit.getOnlinePlayers()){
			  online.setScoreboard(board);
			  online.setHealth(online.getHealth()); //Update their health
		}
	}
}

 

nie działało do końca ale dzięki

Odnośnik do komentarza
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...