Moin.
Habe mich ein wenig mit dem Erstellen von Plugins für Minecraft (genauer gesagt Bukkit) beschäftigt.
Nun habe ich eine Frage - wie kann ich es machen, dass die Aktion nur dann ausgeführt wird, wenn der User einen bestimmten Befehl eingibt?
Beispiel:
User gibt ein
Quote:
/lol
und dann erscheint im Chat "Lol wurde eingegeben"
Das mit dem Erscheinen ist kein Problem, aber wie (vor Allem) das / abfragen?
Und 2.: Das Plugin soll praktisch eine Variable nach dem "/lol" erstellen.
@Override
public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args)
{
if (!(sender instanceof Player))[COLOR="Yellow"]//überprüfen ob es ein player ist und kein anderes plugin[/COLOR]
{
return false;
}
Player p = (Player) sender;
if (cmd.getName().equalsIgnoreCase("lol"))[COLOR="Yellow"]//überprüfen ob /lol eingegeben wurde[/COLOR]
{
if (!(args.length == 0))
{
return false;
}
p.sendMessage("lol" ); [COLOR="Yellow"]//senden der nachricht[/COLOR]
return true;
}
}
package Praimlain.SlimeFun;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.event.Event.Priority;
import org.bukkit.event.Event;
import org.bukkit.plugin.PluginDescriptionFile;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.plugin.PluginManager;
/**
* Sample plugin for Bukkit
*
* @author Dinnerbone
*/
public class SlimeFun extends JavaPlugin
{
private final SlimeFunPlayerListener playerListener = new SlimeFunPlayerListener(this);
private final SlimeFunBlockListener blockListener = new SlimeFunBlockListener(this);
//private final HashMap<Player, Boolean> debugees = new HashMap<Player, Boolean>();
// NOTE: There should be no need to define a constructor any more for more info on moving from
// the old constructor see:
// http://forums.bukkit.org/threads/too-long-constructor.5032/
@Override
public void onDisable()
{
System.out.println("Goodbye world!");
}
@Override
public void onEnable()
{
PluginManager pm = getServer().getPluginManager();
pm.registerEvent(Event.Type.PLAYER_JOIN, playerListener, Priority.Normal, this);
pm.registerEvent(Event.Type.PLAYER_QUIT, playerListener, Priority.Normal, this);
pm.registerEvent(Event.Type.PLAYER_MOVE, playerListener, Priority.Normal, this);
pm.registerEvent(Event.Type.BLOCK_PHYSICS, blockListener, Priority.Normal, this);
pm.registerEvent(Event.Type.BLOCK_CANBUILD, blockListener, Priority.Normal, this);
pm.registerEvent(Event.Type.PLAYER_CHAT, playerListener, Priority.Normal, this);
pm.registerEvent(Event.Type.BLOCK_BREAK, blockListener, Priority.Normal, this);
PluginDescriptionFile pdfFile = this.getDescription();
System.out.println( pdfFile.getName() + " version " + pdfFile.getVersion() + " is enabled!" );
}
@Override
public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args)
{
if (!(sender instanceof Player))//überprüfen ob es ein player ist und kein anderes plugin
{
return false;
}
Player p = (Player) sender;
if (cmd.getName().equalsIgnoreCase("lol"))//überprüfen ob /lol eingegeben wurde
{
if (!(args.length == 0))
{
return false;
}
p.sendMessage("lol" ); //senden der nachricht
return true;
}
}
}
Minecraft Bukkit Plugin frage... 02/25/2011 - Minecraft - 2 Replies Hi,
Gibt es für bukkit ein Plug-In wo man einstellen kann z.b. wenn nacht ist das alle Spieler zu einem Bestimmten Punkt geportet werden?
Lg Algaten™
[Frage] Minecraft speed plugin ? 02/18/2011 - Minecraft - 7 Replies hayy
ich wollte mal fragen ob es ein plug für den hmod 134 gibt, der die laufgeschwindigkeit der admins erhöhen kann =))