1. Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

ServerPlugin [Bukkit] Brauche Hilfe?! Plugin!

Dieses Thema im Forum "Programmierung" wurde erstellt von mReTurkey, 19. Februar 2014.

  1. mReTurkey
    Offline

    mReTurkey

    Registriert seit:
    19. Februar 2014
    Beiträge:
    7
    Sehr geehrte Community,

    vor kurzem hatte ich das Bedürfnis eine kleines Spielchen zu bauen wo man sich nicht bewegen kann.
    Ich habe natürlich vorher gegooglet jedoch ohne Erfolg.

    Meine Frage wie progammiere ich ein Plugin wo man sich nicht bewegen kann?


    Ich hoffe Ihr könnt mir helfen

    mReTurkey
     
    #1
  2. Werbung
    Online

    Werbung

  3. SasukeKawaii
    Offline

    SasukeKawaii Ehem. Teammitglied

    Registriert seit:
    5. Januar 2014
    Beiträge:
    974
    Du musst einfach alle PlayerMoveEvents abbrechen und verhindern.


    Schlag mich nicht wenn das falsch ist :D


    Code (Text):
    1.     public void OnPlayerMove(PlayerMoveEvent e){
    2.        
    3.         e.setCancelled(true);
    4.        
    5.        
    6.     }
    7.    
     
    #2
  4. MiCrJonas
    Offline

    MiCrJonas

    Registriert seit:
    29. Oktober 2012
    Beiträge:
    1.065
    Das PlayerMoveEvent sollte man nicht cancelln, da man dann nicht an die alte Position teleportiert wird und das ganze nicht richtig funktioniert. Besser ist:

    Code (Text):
    1. public void onPlayerMove(PlayerMoveEvent e){
    2.        
    3.     Player p = e.getPlayer();
    4.     p.teleport(e.getFrom());   
    5.        
    6. }
     
    #3
  5. SasukeKawaii
    Offline

    SasukeKawaii Ehem. Teammitglied

    Registriert seit:
    5. Januar 2014
    Beiträge:
    974
    danke, hab ich auch noch was gelernt :)
     
    #4
  6. mReTurkey
    Offline

    mReTurkey

    Registriert seit:
    19. Februar 2014
    Beiträge:
    7
    Wäre das also richtig?

    Code (Text):
    1. import org.bukkit.plugin.java.JavaPlugin;
    2. import org.bukkit.entity.Player;
    3. import org.bukkit.event.player.PlayerMoveEvent;
    4.  
    5. public class movestop extends JavaPlugin {
    6.  
    7.     public void onPlayerMove(PlayerMoveEvent e){
    8.        
    9.         Player p = e.getPlayer();
    10.         p.teleport(e.getFrom());   
    11.            
    12.     }
    13. }
     
    #5
  7. LucaDev
    Offline

    LucaDev

    Registriert seit:
    28. September 2012
    Beiträge:
    337
    Ort:
    Bielefeld, NRW
    Minecraft:
    l_uuca
    Nein, 1. da fehlt ein @EventHandler und 2. Wenn das eine eigene Klasse für den listener ist musst du statt extends javaplugin implements Listener schreiben und in der Main den listener registrieren, wenn der listener in der Main ist musst du den listener ebenfalls registrieren mit Bukkit.getPluginManager().registerEvents(new Klassenname(), this) sry wegen groß und Kleinschreibung bin am Handy :D
     
    #6
  8. mReTurkey
    Offline

    mReTurkey

    Registriert seit:
    19. Februar 2014
    Beiträge:
    7
    Also ich will das so dass wenn das Plugin an ist dirket keine Bewegung erlaubt ist.

    Code (Text):
    1. package mainturk;
    2.  
    3.  
    4.  
    5. import org.bukkit.plugin.java.JavaPlugin;
    6. import org.bukkit.entity.Player;
    7. import org.bukkit.event.Listener;
    8. import org.bukkit.event.player.PlayerMoveEvent;
    9.  
    10. @EventHandler
    11. public class movestop implements Listener{
    12.  
    13.     public void onPlayerMove(PlayerMoveEvent e){
    14.        
    15.         Player p = e.getPlayer();
    16.         p.teleport(e.getFrom());   
    17.            
    18.     }
    19. }
    20.  
    Habe Listener eingefügt muss es nur noch regestrieren.
    Sry habe mehr in Web Ahnung als in Java :D
     
    #7
  9. LucaDev
    Offline

    LucaDev

    Registriert seit:
    28. September 2012
    Beiträge:
    337
    Ort:
    Bielefeld, NRW
    Minecraft:
    l_uuca
    Erstmal muss as @EventHandler immer über das event
     
    #8
  10. mReTurkey
    Offline

    mReTurkey

    Registriert seit:
    19. Februar 2014
    Beiträge:
    7
    Also vor public void onPlayerMove?
     
    #9
  11. LucaDev
    Offline

    LucaDev

    Registriert seit:
    28. September 2012
    Beiträge:
    337
    Ort:
    Bielefeld, NRW
    Minecraft:
    l_uuca
    Ja vor jedes Event muss ein @EventHandler
     
    #10
  12. mReTurkey
    Offline

    mReTurkey

    Registriert seit:
    19. Februar 2014
    Beiträge:
    7
    Hab es jetzt so:

    Code (Text):
    1. import org.bukkit.plugin.java.JavaPlugin;
    2. import org.bukkit.entity.Player;
    3. import org.bukkit.event.EventHandler;
    4. import org.bukkit.event.Listener;
    5. import org.bukkit.event.player.PlayerMoveEvent;
    6.  
    7.  
    8. public class movestop implements Listener{
    9.  
    10.     @EventHandler
    11.     public void onPlayerMove(PlayerMoveEvent e){
    12.        
    13.         Player p = e.getPlayer();
    14.         p.teleport(e.getFrom());   
    15.            
    16.     }
    17. }
    Mit diesem Code hat man dirket keine Bewgungsfreiheit oder?
    Was ist eigentlicht mit springen? Auch verboten?
     
    #11
  13. LucaDev
    Offline

    LucaDev

    Registriert seit:
    28. September 2012
    Beiträge:
    337
    Ort:
    Bielefeld, NRW
    Minecraft:
    l_uuca
    Ja springen ist auch verboten. Hast du das event registriert?
     
    #12
  14. mReTurkey
    Offline

    mReTurkey

    Registriert seit:
    19. Februar 2014
    Beiträge:
    7
    Ja werde ich jetzt machen, alerdings war es meine Idee ein Kleinen Rennen durch ein DobbleJump (Es gibt ein Plugin habe ich schon) sich zu bewegen.
    Geht das so das man sich nicht bewegen aber durch ein Doppel Sprung Plugin zu springen?
     
    #13
  15. LucaDev
    Offline

    LucaDev

    Registriert seit:
    28. September 2012
    Beiträge:
    337
    Ort:
    Bielefeld, NRW
    Minecraft:
    l_uuca
    Das müsste ich jetzt ausprobieren sry habe gerade keine Idee wie
     
    #14
  16. mReTurkey
    Offline

    mReTurkey

    Registriert seit:
    19. Februar 2014
    Beiträge:
    7
    So wie regestiere ich den listener ? Nochmal?
     
    #15
  17. LucaDev
    Offline

    LucaDev

    Registriert seit:
    28. September 2012
    Beiträge:
    337
    Ort:
    Bielefeld, NRW
    Minecraft:
    l_uuca
    In der Main Bukkit.getPluginManager().registerEvents(New Klasse(), this)
     
    #16