ServerPlugin Java Plugin Block auf Block registrieren?!

Dieses Thema im Forum "Programmierung" wurde erstellt von nawiat, 3. Februar 2014.

  1. nawiat
    Offline

    nawiat

    Registriert seit:
    3. Februar 2014
    Beiträge:
    2
    Na Moin

    Ich verzweifle bald, finde nichts zu dem Thema :(

    habe diesen event code:
    Code (Text):
    1. package me.Nawiat100.main;
    2.  
    3. import org.bukkit.ChatColor;
    4. import org.bukkit.Material;
    5. import org.bukkit.event.EventHandler;
    6. import org.bukkit.event.Listener;
    7.  
    8.     public class Listen implements Listener
    9.     {
    10.         @EventHandler
    11.         public void onBlockPlace(org.bukkit.event.block.BlockPlaceEvent placeEv1)
    12.         {  
    13.             @SuppressWarnings("deprecation")
    14.             int ID = placeEv1.getBlock().getTypeId();
    15.            
    16.             int Wolle = 0;
    17.             int Wolle1 = placeEv1.getBlock().getY();
    18.            
    19.             if (ID == 35 & Wolle == 0)
    20.             {
    21.                 placeEv1.getPlayer().sendMessage(ChatColor.LIGHT_PURPLE + "[BlockPlacer]" + ChatColor.GREEN + "erster Wolleblock gesetzt!");
    22.                
    23.                 Wolle = 1;
    24.                
    25.                 placeEv1.getPlayer().sendMessage(ChatColor.LIGHT_PURPLE + "[BlockPlacer]" + ChatColor.GREEN + "Y: " + Wolle1);
    26.             }
    27.             else if (Wolle == 1 & Wolle1 == Wolle1+1  & ID == 35)
    28.             {
    29.                 placeEv1.getPlayer().sendMessage(ChatColor.LIGHT_PURPLE + "[BlockPlacer]" + ChatColor.GREEN + "zweiter Wolleblock gesetzt !");
    30.             }
    31.             else
    32.             {
    33.                 placeEv1.getPlayer().sendMessage(ChatColor.LIGHT_PURPLE + "[BlockPlacer]" + ChatColor.GREEN + "DUMM!");
    34.             }
    35.         }
    möchte das das Plugin erkennt wenn ein Wolleblock auf einen Wolleblock gesetzt wurde. Das Problem ist das er immer, egal was ich setze, sag das ich den ersten gesetzt hätte.

    ich denke mal das man die Location des gesetzten blocks iwi speichern müsste und diese dann abfragen und schauen ob der zweite block eins über dem anderen gesetzt wurde. Wie man das aber macht weiß ich als Noob nicht
    Bin also noch Anfänger und versuche mich noch, also nicht schlagen XD

    Danke
    MFG
    Nawiat
     
    #1
  2. MiCrJonas
    Offline

    MiCrJonas

    Registriert seit:
    29. Oktober 2012
    Beiträge:
    1.069
    Du musst einfach eine neue Location mit den Werten der anderen Location erstellen und dann den Y-Wert eins runter setzen und abfragen, ob es da einen Wollblock gibt. Ganz einfach.

    Und

    Code (Text):
    1. public void onBlockPlace(org.bukkit.event.block.BlockPlaceEvent placeEv1)
    kann auch einfach
    Code (Text):
    1. public void onBlockPlace(BlockPlaceEvent event)
    heißen. Ist denke ich etwas übersichtlicher. Da musst Du nur die Klasse BlockPlaceEvent importieren.
     
    #2
  3. nawiat
    Offline

    nawiat

    Registriert seit:
    3. Februar 2014
    Beiträge:
    2
    ich werde es mal versuchen danke ^^
     
    #3