ServerPlugin Taser Plugin

Dieses Thema im Forum "Programmierung" wurde erstellt von FightingPlay, 2. Mai 2015.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. FightingPlay
    Offline

    FightingPlay

    Registriert seit:
    28. April 2014
    Beiträge:
    72
    Ort:
    C:/Users/FightingPlay/eclipse
    Minecraft:
    FightingPlay
    Guten Tag ich habe nun den Auftrag erhalten ein Taser Plugin zu programmieren.
    Spieler A schlägt Spieler B dieser kann sich nun für einen gewisse Zeit nicht mehr bewegen.
    Wie wäre sotwas umsetztbar?
     
    #1
  2. Angel
    Offline

    Angel Moderator Redakteur

    Registriert seit:
    2. März 2012
    Beiträge:
    1.442
    Ort:
    Niedersachsen
    Minecraft:
    BeatingAngel
    "Codetechnisch" oder rein logisch betrachtet?
     
    #2
  3. FightingPlay
    Offline

    FightingPlay

    Registriert seit:
    28. April 2014
    Beiträge:
    72
    Ort:
    C:/Users/FightingPlay/eclipse
    Minecraft:
    FightingPlay
    Codetechnisch
     
    #3
  4. combo
    Offline

    combo

    Registriert seit:
    16. Juli 2012
    Beiträge:
    160
    Minecraft:
    combo5
    Code technisch her ist das umsetz bar:
    - EntityDamageByEntityEvent
    - Player A und B casten
    - Player B für paar sekunden PlayerMoveEvent Canceln
     
    #4
  5. MrPyro13
    Offline

    MrPyro13

    Registriert seit:
    29. April 2013
    Beiträge:
    829
    Minecraft:
    MrPyro13
    Wobei ich den Spieler lieber bei dem MoveEvent an die eigene Location porten würde, da das Canceln bei mir meistens gebuggt hat...
     
    #5
  6. Heldin
    Offline

    Heldin

    Registriert seit:
    22. April 2015
    Beiträge:
    42
    #6
  7. FightingPlay
    Offline

    FightingPlay

    Registriert seit:
    28. April 2014
    Beiträge:
    72
    Ort:
    C:/Users/FightingPlay/eclipse
    Minecraft:
    FightingPlay
    Dies sähe jetzt so aus.
    package main;

    import org.bukkit.Bukkit;
    import org.bukkit.plugin.java.JavaPlugin;




    public class t extends JavaPlugin {

    @Override
    public void onEnable() {
    Bukkit.getPluginManager().registerEvents(new Event(), this);
    System.out.println("§3 Taser geladen");
    }

    @Override
    public void onDisable() {
    System.out.println("§c Taser gestoppt");

    }

    package main;

    import org.bukkit.entity.Player;
    import org.bukkit.event.Listener;
    import org.bukkit.event.entity.EntityDamageByEntityEvent;

    public class Event implements Listener {


    public EntityDamageByEntityEvent(Plugin plugin){
    this.plugin = plugin;
    }


    @Eventhandler
    public void onDamage(EntityDamageByEntityEvent event){
    Player player = (Player)event.getPlayer();
    }

    }
     
    #7
  8. Heldin
    Offline

    Heldin

    Registriert seit:
    22. April 2015
    Beiträge:
    42
    Der Konstruktor einer Klasse muss so heißen wie die Klasse, also "Event".
     
    #8
    MrGoms gefällt das.
  9. Nightishaman
    Offline

    Nightishaman

    Registriert seit:
    3. Januar 2015
    Beiträge:
    51
    Nope,
    @EventHandler
    public void onDamage(EntityDamageByEntityEvent e) {
    if(e.getDamager.getType == EntityType.PLAYER && e.getItem().getType() == Material.STICK) {
    ItemStack item = e.getItem();
    ItemMeta item_meta = item.getItemMeta();
    if(e.getItemMeta().getName().equals("§6Taser")) {

    final Player player = e.getPlayer();
    final float oldWalkSpeed = player.getWalkSpeed();
    player.setWalkSpeed(0F);
    Bukkit.getScheduler().runTaskLater(new Runnable {
    @Override
    public void run() {
    player.setWalkSpeed(oldWalkSpeed);
    }
    },5*20L);
    }
    }
    }
    Dann musst du nur noch dem Spieler per Command einen Stock mit dem Namen "§6Taser" geben
    §6 ist dabei der Farbcode
     
    #9
    FightingPlay gefällt das.
  10. FightingPlay
    Offline

    FightingPlay

    Registriert seit:
    28. April 2014
    Beiträge:
    72
    Ort:
    C:/Users/FightingPlay/eclipse
    Minecraft:
    FightingPlay
    Dies sähe dann so aus nur leider kriege ich fehler das es undifined oder nicht resolved werden kann
    Code (Javascript):
    1. package main;
    2.  
    3. import org.bukkit.Bukkit;
    4. import org.bukkit.Material;
    5. import org.bukkit.OfflinePlayer;
    6. import org.bukkit.entity.EntityType;
    7. import org.bukkit.entity.Player;
    8. import org.bukkit.event.EventHandler;
    9. import org.bukkit.event.Listener;
    10. import org.bukkit.event.entity.EntityDamageByEntityEvent;
    11. import org.bukkit.inventory.ItemStack;
    12. import org.bukkit.inventory.meta.ItemMeta;
    13. import org.bukkit.plugin.java.JavaPlugin;
    14.  
    15.  
    16.  
    17.  
    18. public class t extends JavaPlugin implements Listener{
    19.  
    20.     @EventHandler
    21.     public void onDamage(EntityDamageByEntityEvent event) {
    22.         if(event.getDamager.getType == EntityType.PLAYER && event.getItem().getType() == Material.LEASH) {
    23.         ItemStack item = e.getItem();
    24.         ItemMeta item_meta = item.getItemMeta();
    25.         if(event.getItemMeta().getName().equals("§6Taser")) {
    26.  
    27.         final Player player = event.getPlayer();
    28.         final float oldWalkSpeed = player.getWalkSpeed();
    29.         player.setWalkSpeed(0F);
    30.         Bukkit.getScheduler().runTaskLater(new Runnable {
    31.         @Override
    32.         public void run() {
    33.         player.setWalkSpeed(oldWalkSpeed);
    34.         }
    35.         },5*20L);
    36.         }
    37.         }
    38.         }
    39.    
    40.  
    41.    
    42.    
    43.    
    44.    
    45.     @Override
    46.     public void onEnable() {
    47.         Bukkit.getPluginManager().registerEvents(this, this);
    48.         System.out.println("§3 Taser geladen");
    49.     }
    50.  
    51.     @Override
    52.     public void onDisable() {
    53.         System.out.println("§c Taser gestoppt");
    54.        
    55.     }
    56.  
    57.    
    58.    
    59.    
    60.    
    61.    
    62.    
    63.    
    64.    
    65.    
    66.    
    67.    
    68.    
    69.    
    70.    
    71.    
    72.    
    73.    
    74.    
    75.    
    76.    
    77.    
     
    #10
  11. combo
    Offline

    combo

    Registriert seit:
    16. Juli 2012
    Beiträge:
    160
    Minecraft:
    combo5
    Was ist undefined? Eine genauere Fehlerbeschreibung wäre von Nöten.
     
    #11
  12. FightingPlay
    Offline

    FightingPlay

    Registriert seit:
    28. April 2014
    Beiträge:
    72
    Ort:
    C:/Users/FightingPlay/eclipse
    Minecraft:
    FightingPlay
    Description Resource Path Location TypegetDamager cannot be resolved or is not a field t.java /Taser/src/main line 64 Java ProblemoldWalkSpeed cannot be resolved to a variable t.java /Taser/src/main line 76 Java Problemplayer cannot be resolved t.java /Taser/src/main line 76 Java Problemplugin cannot be resolved or is not a field Event.java /Taser/src/main line 11 Java ProblemPlugin cannot be resolved to a type Event.java /Taser/src/main line 10 Java ProblemReturn type for the method is missing Event.java /Taser/src/main line 10 Java ProblemSyntax error on token ")", { expected t.java /Taser/src/main line 95 Java ProblemSyntax error on token "}", delete this token t.java /Taser/src/main line 80 Java ProblemSyntax error on token "new", delete this token t.java /Taser/src/main line 72 Java ProblemSyntax error on token "void", @ expected t.java /Taser/src/main line 89 Java ProblemSyntax error on token "void", @ expected t.java /Taser/src/main line 95 Java ProblemSyntax error, insert ";" to complete Statement t.java /Taser/src/main line 72 Java ProblemSyntax error, insert ")" to complete MethodInvocation t.java /Taser/src/main line 72 Java ProblemSyntax error, insert ")" to complete Modifier t.java /Taser/src/main line 129 Java ProblemSyntax error, insert "}" to complete Block t.java /Taser/src/main line 72 Java ProblemSyntax error, insert "}" to complete Block t.java /Taser/src/main line 72 Java ProblemSyntax error, insert "}" to complete ClassBody Event.java /Taser/src/main line 12 Java ProblemSyntax error, insert "}" to complete MethodBody t.java /Taser/src/main line 72 Java ProblemSyntax error, insert "else Statement" to complete IfStatement t.java /Taser/src/main line 72 Java ProblemSyntax error, insert "else Statement" to complete IfStatement t.java /Taser/src/main line 72 Java ProblemSyntax error, insert "enum Identifier" to complete EnumHeader t.java /Taser/src/main line 89 Java ProblemSyntax error, insert "enum Identifier" to complete EnumHeader t.java /Taser/src/main line 129 Java ProblemSyntax error, insert "EnumBody" to complete EnumDeclaration t.java /Taser/src/main line 129 Java ProblemThe method getItem() is undefined for the type EntityDamageByEntityEvent t.java /Taser/src/main line 64 Java ProblemThe method getItem() is undefined for the type EntityDamageByEntityEvent t.java /Taser/src/main line 65 Java ProblemThe method getItemMeta() is undefined for the type EntityDamageByEntityEvent t.java /Taser/src/main line 67 Java ProblemThe method getPlayer() is undefined for the type EntityDamageByEntityEvent t.java /Taser/src/main line 69 Java ProblemThe method run() of type t must override or implement a supertype method t.java /Taser/src/main line 75 Java ProblemThe method runTaskLater(Plugin, Runnable, long) in the type BukkitScheduler is not applicable for the arguments () t.java /Taser/src/main line 72 Java Problem
     
    #12
  13. combo
    Offline

    combo

    Registriert seit:
    16. Juli 2012
    Beiträge:
    160
    Minecraft:
    combo5
    Das sind fehler im Java Syntax du musst deine Klammer Setzung beachten. --> Klick zum Java lernen
    Wenn du mit Eclipse Programmierst solltest du Syntax Fehler Rot unterstrichen sehen diese müssen behoben werden.
     
    #13
  14. Heldin
    Offline

    Heldin

    Registriert seit:
    22. April 2015
    Beiträge:
    42
    Ich fände es sinnvoll, wenn du erstmal Java lernst, bevor du uns hier unnötig mit Zeit mit deiner Unwissenheit raubst. Um die Fehler, die du machst, zu vermeiden, brauchst du uns nicht.
     
    #14
  15. Angel
    Offline

    Angel Moderator Redakteur

    Registriert seit:
    2. März 2012
    Beiträge:
    1.442
    Ort:
    Niedersachsen
    Minecraft:
    BeatingAngel
    Ob man Java kann oder nicht ist ja seine Sache. Wo er sein Wissen her bezieht ist auch seine Sache. Da dies ein Minecraftforum ist (in diesem Falle "Programmierung"-Unterforum) ist es durchaus sinnvoll auch als Anfänger hier mal reinzuschnuppern, um Hinweise zu bekommen, welche Fehler man unterlassen sollte und worauf man achten sollte. Da ich was Java betrifft eher unerfahren bin, weiß ich nicht wie grob die Fehler sind, aber dennoch sollte man auf Hilfe hoffen können.

    Dementsprechend.
    Moderativer Hinweis
    Achtet bitte auf euren Umgangs"ton".
     
    #15
    FightingPlay und MrPyro13 gefällt das.
  16. Heldin
    Offline

    Heldin

    Registriert seit:
    22. April 2015
    Beiträge:
    42
    Die Fehler sind sehr gravierend.
     
    #16
    MrGoms gefällt das.
  17. FightingPlay
    Offline

    FightingPlay

    Registriert seit:
    28. April 2014
    Beiträge:
    72
    Ort:
    C:/Users/FightingPlay/eclipse
    Minecraft:
    FightingPlay
    Dies sehe jetzt so aus .habe jetzt 23/ 30 fehlern behoben.

    Code (Javascript):
    1. package main;
    2.  
    3. import java.util.ArrayList;
    4.  
    5. import org.bukkit.Bukkit;
    6. import org.bukkit.Material;
    7. import org.bukkit.scheduler.*;
    8. import org.bukkit.command.Command;
    9. import org.bukkit.command.CommandSender;
    10. import org.bukkit.enchantments.Enchantment;
    11. import org.bukkit.entity.EntityType;
    12. import org.bukkit.entity.Player;
    13. import org.bukkit.event.EventHandler;
    14. import org.bukkit.event.Listener;
    15. import org.bukkit.event.entity.EntityDamageByEntityEvent;
    16. import org.bukkit.inventory.ItemStack;
    17. import org.bukkit.inventory.meta.ItemMeta;
    18. import org.bukkit.plugin.java.JavaPlugin;
    19.  
    20.  
    21.  
    22.  
    23. public class t extends JavaPlugin implements Listener{
    24.  
    25.    
    26.    
    27.     @Override
    28.     public void onEnable() {
    29.         Bukkit.getPluginManager().registerEvents(this, this);
    30.         System.out.println("§3 Taser geladen");
    31.     }
    32.  
    33.     @Override
    34.     public void onDisable() {
    35.         System.out.println("§c Taser gestoppt");
    36.        
    37.     }
    38.  
    39.    
    40.    
    41.     public boolean onCommand(CommandSender sender, Command cmd, String cmdlabel, String[] args) {
    42.         Player p = (Player) sender;
    43.        
    44.         if(cmd.getName().equalsIgnoreCase("taser")){
    45.             if(p.hasPermission("taser.l")){
    46.            
    47.     ItemStack item = new ItemStack(Material.LEASH);  
    48.    
    49.     ItemMeta meta = item.getItemMeta();      
    50.    
    51.    
    52.     meta.setDisplayName("§6Taser");
    53.    
    54.     ArrayList<String> lore = new ArrayList<>();  
    55.     lore.add("§6 Taste It :) !");
    56.     meta.setLore(lore);
    57.     item.setItemMeta(meta);
    58.  
    59.             p.getInventory().setItem(5 , item);
    60.            
    61.  
    62.            
    63.             }
    64.         }
    65.             return true;
    66.         }
    67. }  
    68.        
    69.     @EventHandler
    70.     public void onDamage(EntityDamageByEntityEvent e) {
    71.         if(e.getDamager().getType() == EntityType.PLAYER && e.getItem().getType() == Material.LEASH) {
    72.         ItemStack item = e.getItem();
    73.         ItemMeta item_meta = item.getItemMeta();
    74.         if(e.getItemMeta().getName().equals("§6Taser")) {
    75.  
    76.         final Player player = e.getPlayer();
    77.         final float oldWalkSpeed = player.getWalkSpeed();
    78.         player.setWalkSpeed(0F);
    79.         Bukkit.getScheduler().runTaskLater(this,  new Runnable()  {
    80.            
    81.        
    82.             @Override
    83.         public void run() {
    84.         player.setWalkSpeed(oldWalkSpeed ,5*20L);  }
    85.        
    86.        
    87.         ]  
    88.         }    
    89.         }
    90.  
    91. }


    Description Resource Path Location Type
    Syntax error on token "}", delete this token t.java /Taser/src/main line 67 Java Problem
    Syntax error, insert ";" to complete Statement t.java /Taser/src/main line 84 Java Problem
    Syntax error, insert ")" to complete MethodInvocation t.java /Taser/src/main line 84 Java Problem
    Syntax error, insert "}" to complete ClassBody t.java /Taser/src/main line 66 Java Problem
    Syntax error, insert "}" to complete ClassBody t.java /Taser/src/main line 84 Java Problem
    The method getItem() is undefined for the type EntityDamageByEntityEvent t.java /Taser/src/main line 72 Java Problem
    The method getPlayer() is undefined for the type EntityDamageByEntityEvent t.java /Taser/src/main line 76 Java Problem
     
    #17
  18. Heldin
    Offline

    Heldin

    Registriert seit:
    22. April 2015
    Beiträge:
    42
    Welche Programmieroberfläche benutzt du? Bei Eclipse werden die Fehler unterstrichen. Formatiere am besten deinen Code. Zu jeder offenen { gibt es auch eine geschlossene }.
     
    #18
  19. [Dev] iTzSasukeHDxLP
    Offline

    [Dev] iTzSasukeHDxLP Ehem. Teammitglied

    Registriert seit:
    5. Januar 2014
    Beiträge:
    938

    Tut mir Leid, aber es ist wirklich unmöglich, dir zu helfen, wenn du nicht einmal die Grundlagen von Java kennst und nicht einmal die Fehler, die dir deine IDE sogar genau anzeigt beheben kannst. Wir sind gerne bereit, dir zu helfen wenn du ein konkretes Problem hast, etwas umzusetzen, weil du die Logik nicht verstehst oder ein anderer Fehler auftritt, aber es ist untragbar, wenn wir dir nebenbei noch die Javasyntax beibringen müssen.

    Ich empfehle das: http://openbook.rheinwerk-verlag.de/javainsel/


    Und @Angel ohne es zu beleidigend zu sagen, das hier ist kein Anfänger sondern ein blutigster Anfänger. Wir sind keine Lehrer und lehren nicht von Anfang an. Man kann um Rat fragen, aber ohne Eigenaufwand und Grundlagenkenntnis geht das so nicht weiter.
     
    #19
    Eisphoenix, pasce1998 und Heldin gefällt das.
  20. FightingPlay
    Offline

    FightingPlay

    Registriert seit:
    28. April 2014
    Beiträge:
    72
    Ort:
    C:/Users/FightingPlay/eclipse
    Minecraft:
    FightingPlay
    Das Problem ist @Shizune ist wenn ich die Klammern wieder richtig setzte erscheint oben oder unten wieder ein fehler.
    5 Fehler sind durch Zeichen
    2 Fehler sind undifnded nähmlich getItem() und getPlayer() .
    Zu den 2 Fehler habe ich im englischen und deutschen Raum keine Hilfe gefunden

    Und wie habe ich keinen Eigenaufwand betrieben, ich habe 23 Fehler ohne irgenwelche Hilfe beseitigt.

    Und nun siche ich für die sieben fehler hilfe weil ich für diese nichts gefunden habe.

    return true;}

    }


    @EventHandler
    public void onDamage(EntityDamageByEntityEvent e) {
    if(e.getDamager().getType() == EntityType.PLAYER && e.getItem().getType() == Material.LEASH) {
    ItemStack item = e.getItem();
    ItemMeta item_meta = item.getItemMeta();
    if(e.getItemMeta().getName().equals("§6Taser")) {

    final Player player = e.getPlayer();
    final float oldWalkSpeed = player.getWalkSpeed();
    player.setWalkSpeed(0F);
    Bukkit.getScheduler().runTaskLater(this, new Runnable() {


    @Override
    public void run() {
    player.setWalkSpeed(oldWalkSpeed ,5*20L); } ;


    ]
    }
    }

    }

    Description Resource Path Location Type
    Syntax error on token "}", delete this token t.java /Taser/src/main line 67 Java Problem
    Syntax error, insert ";" to complete Statement t.java /Taser/src/main line 85 Java Problem
    Syntax error, insert ")" to complete MethodInvocation t.java /Taser/src/main line 85 Java Problem
    Syntax error, insert "}" to complete ClassBody t.java /Taser/src/main line 65 Java Problem
    Syntax error, insert "}" to complete ClassBody t.java /Taser/src/main line 85 Java Problem
    The method getItem() is undefined for the type EntityDamageByEntityEvent t.java /Taser/src/main line 73 Java Problem
    The method getPlayer() is undefined for the type EntityDamageByEntityEvent t.java /Taser/src/main line 77 Java Problem

    Mfg DieRapschweine1
     
    #20
Status des Themas:
Es sind keine weiteren Antworten möglich.