Jump to content

Items die schießen?


 Share

Recommended Posts

Hallo, Ich bin gerade dabei ein GunGame-Plugin mit einigen Spezials zu schreiben. Nun möchte ich das aus einer Feldhacke pfeile spawnen und das mehrmals hintereinander. Mein Code:

public void ItemChange (PlayerInteractEvent event) {	Player p = event.getPlayer();	World w = p.getWorld();	if(event.getAction() == Action.RIGHT_CLICK_AIR || event.getAction() == Action.RIGHT_CLICK_BLOCK) {		if(p.getItemInHand().getType() == Material.IRON_HOE) {			w.spawnArrow(p.getLocation(),new Vector(0.0D,1.2D,0.0D),0.5F,0.5F);		}	}}

Und wenn ich mit der Hacke rechtsklicke passiert nichts. 0! !!! BITTE LASST OFF-TOPIC !!! MfG Kevin

Edited by Cruzer
Code eingerückt und markiert
Link to comment
Share on other sites

  • 8 months later...

Vielleicht hilft dir mein Code! Jedoch wird statt einem Arrow ein Feuerball erzeugt, trotzdem gleiches Prinzip!

@EventHandler    public void onPlayerInteract(PlayerInteractEvent e) {        if (!(e.getAction() == Action.RIGHT_CLICK_AIR)) return;               if (!(e.getItem().getType() == Material.IRON_SPADE)) return;               Fireball f = e.getPlayer().launchProjectile(Fireball.class);        f.setIsIncendiary(false);        f.setYield(0);    }       @EventHandler    public void onEntityDamage(EntityDamageByEntityEvent e) {        if (e.getDamager() instanceof Fireball) {            Fireball f = (Fireball) e.getDamager();            if (f.getShooter() instanceof Player) {                Player shooter = (Player) f.getShooter();                if (shooter.getItemInHand().getType() == Material.IRON_SPADE) {                    e.setDamage(4.0);
Edited by Cruzer
Code markiert
Link to comment
Share on other sites

  • 5 weeks later...

Hi,

ich habe mit deinem Code genau drei Probleme:

1. Er ist nicht anständig eingerückt

2. Er steht nicht in einem Code Tag

3. Es ist nicht der gesamte Code

Wie sollen wir dir helfen, wenn du uns nur einen so kleinen Codeauschnitt gibst? Der Fehler liegt nämlich anscheinend nicht in diesem Codeausschnitt. Was mir aber grade auffällt: Die Funktion getItemInHand() gibt null zurück, wenn der Spieler grade eine leeren Slot ausgewählt hat.

Toble_Miner

Link to comment
Share on other sites

  • 3 weeks later...

Um das Thema noch einmal aufzugreifen: Miner hat recht, getItemInHand() solltest du erst mit einem Null-Check umgehen.

Dann würde ich p.launchProjectile(Arrow.class) nutzen und keine komische spawnArrow()-Methode, die mir völlig fremd ist.

EDIT: Juni 2013? Liest der eh nicht mehr ^^ Naja, wenn noch wer das Problem hat :)

Liebe Grüße,

Baustein

Link to comment
Share on other sites

  • 3 months later...

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