2016-04-29 5 views
0

So laichen nicht bekam ich diesen Code von jemandem und er sagte, dass es funktionieren wird ich dankbar war (ist immer noch), aber es scheint, dass der Code nicht funktioniert someway inBlitz Pfeil aber der Blitz in

Das ist meine Hauptdatei

package me.Pixel; 

import java.util.ArrayList; 
import java.util.List; 

import org.bukkit.entity.Arrow; 
import org.bukkit.event.EventHandler; 
import org.bukkit.event.Listener; 
import org.bukkit.event.entity.EntityShootBowEvent; 
import org.bukkit.plugin.java.JavaPlugin; 

public class Main extends JavaPlugin implements Listener { 

    public Main plugin; 
    public List<String> spells = new ArrayList<String>(); 
    public getTargets getTargets = new getTargets(); 

    @Override 
    public void onEnable() { 
     plugin = this; 
     getCommand("bow").setExecutor(new BowCommand()); 
    } 

    @EventHandler 
    public void onEntityShootBow(EntityShootBowEvent event) { 
     if(event.getProjectile() instanceof Arrow) { 
      Arrow arrow = (Arrow) event.getProjectile(); 
      new LightningShot(arrow).runTaskTimer(this, 0, 1); 
     } 
    } 
} 

Und das ist meine LightningShot Datei

package me.Pixel; 

import org.bukkit.entity.Arrow; 
import org.bukkit.scheduler.BukkitRunnable; 

public class LightningShot extends BukkitRunnable { 

    private Arrow arrow; 
    private int tick = 1; 

    public LightningShot(Arrow arrow) { 
     this.arrow = arrow; 
    } 

    @Override 
    public void run() { 
     if (arrow == null || arrow.isOnGround() || tick++ > 20 * 10) { 
      this.cancel(); 
     } else { 
      arrow.getWorld().strikeLightning(arrow.getLocation()); 
     } 
    } 
} 

Um This is what i want it to look like klar, aber dann statt eines Schneeball zu sein der Pfeil, der aus dem Bogen kommt. Ich hoffe ihr könnt mir helfen. Es wäre großartig.

Antwort

0

Es scheint, dass Sie Ihren Listener nicht registriert haben. Auch wenn der Hörer Ihre Hauptklasse ist, müssen Sie noch mit Ihrer onEnable Methode registrieren:

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

Dann wird der Code Blitz auf den Pfeil der Lage spawnen wie beabsichtigt (I den Code getestet).

+0

Ty ty, kann ich dich fragen, welche Anleitung oder andere Quelle genial ist, dieses Zeug von – Pixel

+0

zu lernen Wenn Sie google "Bukkit Listener", das oberste Ergebnis ist die [Event API Reference] (http: //wiki.bukkit. org/Event_API_Reference) (es ist immer gut, zuerst die API-Dokumentation zu konsultieren, wenn nach Lösungen gesucht wird). Sie können auch immer versuchen, das Problem zu googlen, manchmal finden Sie sogar hilfreiche Tutorials oder schauen Sie auf das [Bukkit Plugin Development Forum] (https://bukkit.org/forums/plugin-development.5/). –

+0

Ehrfürchtig, danke Typ – Pixel

Verwandte Themen