Jump to content

[Java / Bukkit]: TNT platzieren verhindern


Recommended Posts

Hier ein kleiner simpler Code (Bukkit), der die Spieler die nicht

die Permission "notnt.bypass" haben kein TNT platzieren lässt.

Und ja: Dieser Thread ist mal wieder nur aus Langeweile entstanden :D^^


//Das ist die Hauptklasse!

package your.package.name


import org.bukkit.plugin.java.JavaPlugin;

import org.bukkit.event.Listener

import org.bukkit.event.block.BlockPlaceEvent;

import org.bukkit.Bukkit;

import org.bukkit.Material;

import org.bukkit.block.Block;

import org.bukkit.entity.Player;

import org.bukkit.event.EventHandler;

import org.bukkit.event.EventPriority;

import org.bukkit.event.block.BlockPlaceEvent;


public class Main extends JavaPlugin implements Listener{


public void onEnable(){

		Bukkit.getServer().getPluginManager().registerEvents(this, this); //Wichtig!!

		Server server = Bukkit.getServer();

		ConsoleCommandSender console = server.getConsoleSender();

		console.sendMessage("insert funny enable message here");

                }

public void onDisable(){

		Server server = Bukkit.getServer();

		ConsoleCommandSender console = server.getConsoleSender();

		console.sendMessage("insert funny disable message here");

		}


       @EventHandler(priority = EventPriority.HIGHEST) //Höchte Priorität!

	public void onTNTPlace(BlockPlaceEvent e){

		Player p = e.getPlayer();

		if(!p.hasPermission("notnt.bypass")) {

		Block block = e.getBlockPlaced();

		if(block.getType() == Material.TNT) { //Kann natürlich angepasst werden 

			e.setCancelled(true);

			p.sendMessage("?cDu darfst kein TNT auf dem Server setzen!");

		}

	}

}



}
Edited by _CrazyLuke_
Link to comment
Share on other sites


Server server = Bukkit.getServer();

ConsoleCommandSender console = server.getConsoleSender();

console.sendMessage("insert funny enable message here");

Die 3 Zeilen solltest du so zusammenfassen:


getServer().getLogger().info("insert funny enable message here");

Das geht dann analog auch in deiner onDisable()-Methode.

Ansonsten ist die Funktionalität ja bereits in Essentials enthalten, aber trotzdem eine gute, kleine Übung ;)

Gruß Arcalio

Link to comment
Share on other sites

  • 2 weeks later...

Server server = Bukkit.getServer();ConsoleCommandSender console = server.getConsoleSender();console.sendMessage("insert funny enable message here");
Die 3 Zeilen solltest du so zusammenfassen:

getServer().getLogger().info("insert funny enable message here");

Ich weiß ^^ Es ist aber so, dass man mit:

getServer().getLogger().info("insert funny enable message here");
keine Farbigen Enable / Disable-Nachrichten schreiben kann ^^

Deswegen mache ich es immer mit der anderen Methode, wo ich ColorCodes

verwenden kann z.B: ("?cRoter Enable-Text!"); :)

Ansonsten ist die Funktionalität ja bereits in Essentials enthalten,...

Ja, ich weiß ;) Aber naja jedem das seine ^^
Link to comment
Share on other sites

Das ist in diesem Beispiel nicht der Fall, aber wenn du mal mit Kommandos arbeitest, kannst du einfach sender.sendMessage(ChatColor.RED + "Text"); machen, dann hast du in der Konsole auch farbigen Text. Macht es viel einfacher als dein Konstrukt da oben. Wie gesagt, hier nicht der Fall, merk's dir bloß für die Zukunft ;)

Liebe Grüße,

Baustein

Link to comment
Share on other sites

Das ist in diesem Beispiel nicht der Fall, aber wenn du mal mit Kommandos arbeitest, kannst du einfach sender.sendMessage(ChatColor.RED + "Text"); machen, dann hast du in der Konsole auch farbigen Text. Macht es viel einfacher als dein Konstrukt da oben. Wie gesagt, hier nicht der Fall, merk's dir bloß für die Zukunft ;)

Liebe Grüße,

Baustein

Okay Okay :D:pardon:

Trotzdem.. Lasst mich doch! :P

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...
B
B