Bukkit Plugin Hilfe! Wie gebe ich einem Spieler Items wenn er auf den Server Joint?

2 Antworten

Ja, es liegt an der Event Registrierung:
Du hast zwar den Code des Events, jedoch wir dem Server nie gesagt wo es liegt und das er es aufrufen soll

Hay Danke das du so schnell Antwortest (-:

Nun weiß ich jedoch nicht genau was du meinst. Meinst du die Imports das ich noch irgendwas Importieren muss?

0
@DimenectroDev

So ich habe es herausgefunden (-: vielen Dank DevForcer

Ich bin ein Dummkopf das hätte ich mir auch vorher Denken können.

@Override public void onEnable() {this.getServer().getPluginManager().registerEvents(this, this);System.out.println("[OITC] Gestartet");}
0

Den Listener auch registriert?

Klassennamen schreibt man groß.


Bukkit Plugin Programmieren Events?

Hey, ich will ein Lobby Plugin (Bukkit) programmieren brauche aber noch hilfe:

  • Wie testet man ob ein Spieler Feuer mit der Hand ausschlägt?
  • Wie testet man ob ein Spieler brennt?
  • Wie testet man ob ein Spieler ein Feuerzeug benutzt?
  • Wie testet man ob ein Spieler ein Eimer leert / füllt?

Ich möchte all diese Sachen e.setCancelled(true); machen!

Mein Code bis jz mit Block break + Block build (Listener):


package Listener;

import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.block.BlockBreakEvent; import org.bukkit.event.block.BlockPlaceEvent;

public class noBuild implements Listener {

@EventHandler
public void onBlockBreak(BlockBreakEvent e){
    e.setCancelled(true);
}


@EventHandler
public void onBlockPlace(BlockPlaceEvent e){
    e.setCancelled(true);
}

}


...zur Frage

Minecraft Spigot 1.8 plugin Bug (Selbst programmiert)!?

Hallo. ich ahbe eein plugin geschrieben (mit video hilfe) womit ich ein hideall item habe also wnen man mit nem item (im meinem fall Lohrenrute) rechtsklick macht, sollen alle unsichtbar werden, abber in aclipse meckert der an, das ".getServer()" nicht definiert wäre.

Heir mal der code:

package System;

import java.util.ArrayList;

import javax.sound.midi.MidiDevice.Info;

import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.block.Action; import org.bukkit.event.player.PlayerInteractEvent;

public class Items implements Listener {

private Info plugin;
ArrayList<String> hidden = new ArrayList<>();

public Items(Info info) {
    this.plugin = info;
    this.plugin.getServer().getPluginManager().registerEvents(this, plugin);
}

@EventHandler
public void onplayerItneract(PlayerInteractEvent e) {
    Player p = e.getPlayer();
    
    if(e.getAction() ==Action.RIGHT_CLICK_AIR | e.getAction() == Action.RIGHT_CLICK_BLOCK) {
        if(e.getMaterial().equals(Material.BLAZE_ROD)) {
            
            for(Player players : Bukkit.getOnlinePlayers()) {
                
                if(hidden.contains(p.getName())) {
                    hidden.remove(p.getName());
                    p.showPlayer(players);
                    p.sendMessage("§aAlle Spieler sind nun wieder sichtbar!");
                }else
                    if(!hidden.contains(p.getName())) {
                        hidden.add(p.getName());
                        p.hidePlayer(players);
                        p.sendMessage("§cAlle Spieler sind nun unsichtbar");
                        
                    }
            }
        }
    }
}

}

...zur Frage

Bukkit Plugin Minecraft KitPvP

Hallo,

Könnt ihr mir sagen wo der Fehler liegt?

import org.bukkit.Material; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import org.bukkit.inventory.Inventory; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; import org.bukkit.material.Command; import org.bukkit.plugin.java.JavaPlugin;

public class KitPvP extends JavaPlugin{

private Inventory inv=null;



public void onEnable(){

System.out.println("[KitPvP]Plugin gestartet!");

 }
public void onDisable(){

System.out.println("[KitPvP]Plugin gestoppt!");

}


public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
    Player p = (Player)sender;
    
    if(cmd.getName().equalsIgnoreCase("invkit"));
        if (p.hasPermission("kit.invkit"));
        
        inv = p.getPlayer().getServer().createInventory(null, 9, "Kits");
        
        ItemStack istack = new ItemStack(Material.BOW);
        ItemMeta istackMeta = istack.getItemMeta();
        istackMeta.setDisplayName("§a§lBogenschütze");
        
        
        ItemStack istack2 = new ItemStack(Material.STONE_SWORD);
        ItemMeta istackMeta2 = istack2.getItemMeta();
        istackMeta2.setDisplayName("§a§lKrieger");
        
        
        ItemStack istack3 = new ItemStack(Material.APPLE);
        ItemMeta istackMeta3 = istack3.getItemMeta();
        istackMeta3.setDisplayName("§a§lEssen");
        
        
        
        inv.setItem(1, istack);
        inv.setItem(4, istack2);
        inv.setItem(7, istack3);
        
        
        p.getPlayer().openInventory(inv);
        
   
    
    return false;
    
}




}

    if(cmd.getName().equalsIgnoreCase("invkit"));
        if (p.hasPermission("kit.invkit"));

dieser part unter dem ---------- wird mir .getName untermalt aber bekomme in der Console keine Fehler Meldungen trozdem Funktioniert es nicht

...zur Frage

Warum geht das Inventar nicht zu?! (Java)

Ich hab ein Problem, welches ist, dass wenn man die Enderchest aufmacht, es wieder geschlossen und ein virtuelles geöffnet werden soll. Allerdings schließt sich das Inventar nicht mit p.closeInventory(); was mache ich falsch? Ich bin ratlos.

ps: Bis zum Virtuellen Inventar bin ich noch nicht gekommen, da können also auch noch Fehler drin sein.

Hier ist der Code: package org.gloin01.test;

import java.util.HashMap; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.inventory.InventoryOpenEvent; import org.bukkit.inventory.Inventory; import org.bukkit.inventory.ItemStack;

public class EventListener implements Listener{

public Inventory inv = null;

HashMap<String, ItemStack[]> inventory = new HashMap<>();


public EventListener(TestPlugin plugin){

    plugin.getServer().getPluginManager().registerEvents(this, plugin);

}


@EventHandler
public void onPlayerTot(InventoryOpenEvent ev){

    String inve = ev.getInventory().getName();
    Player p = (Player) ev.getPlayer();
    if(inve == "container.enderchest"){

        p.closeInventory();
        inv = p.getServer().createInventory(null, 54, "§c" + p.getDisplayName() + "'s §2Enderchest");
        p.openInventory(inv);


        inventory.put(p.getName(),p.getInventory().getContents());

    }
}

}

...zur Frage

Spieler in IF abfragen?

Hallo ich möchte bei Minecraft Java plugin, dass wenn ein Spieler mit einem Bestimmten Namen joint einen Effekt abspielen doch bekomme ich das nicht hin hier mein jetziger Code

@EventHandler
public void onJoin(PlayerJoinEvent e){
    Player p = e.getPlayer();
    
    p.sendMessage("funkt");
    
    if(){
    }
    
}
...zur Frage

Minecrfat server Plugin.yml fehler?

hallo ich habe ein Plugin erstellt und war jetzt dabei die Plugin.yml du machen so weit so gut aber wenn ich den server starte kommt das [21:07:21 ERROR]: Could not load 'plugins\HyperCraftYT.jar' in folder 'plugins'

org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml

ich habe dann mal nachgeschaut was das problem sein könnte und habe festegstellt das eigendlich alles richtig ist hier meine classen

Plugin.yml

name: HyperCraft
version: 1.0
main: de.Youtube.com.Main
commands:
    Youtube:
------------------------------
Command class
------------------------------
package de.Youtube.com;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Command implements CommandExecutor {
   public boolean onCommand(CommandSender sender, org.bukkit.command.Command command, String label, String[] args) {
      Player p = (Player) sender;
      p.sendMessage("§cwww.Youtube.com/snap20lp");
      return false;
   }
}   
------------------------------------
Main class
-----------------------------------
package de.Youtube.com;
import org.bukkit.plugin.java.JavaPlugin;
public class Main extends JavaPlugin{
      public void onEnable(){
         System.out.println("§c Plugin Wurde erfolgreich geladen");
         getCommand("Youtube").setExecutor(new Command());
      }
}

Danke schon mal im vohraus

...zur Frage

Was möchtest Du wissen?