Int

Dieses Thema im Forum "Programmierung" wurde erstellt von kingingo, 7. September 2012.

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

    kingingo Gesperrt

    Registriert seit:
    1. September 2012
    Beiträge:
    63
    Hallo ich wollte fragen wie man das so machen kann das wenn man /slots anzahl eigibt das dan die slots geändert werden ich weis wie man die slots ändert
    e.setMaxPlayer
    aber nicht wie man die anzahl dan eingeben kann??
     
    #1
  2. Du meinst wie du einen String zu einem int machst?

    onCommand(....){
    /....
    if(args[0].equals("slots")
    int slots = Integer.valueOf(args[1]);
    }
     
    #2
  3. kingingo
    Offline

    kingingo Gesperrt

    Registriert seit:
    1. September 2012
    Beiträge:
    63
    if(args[0].equals("slots")){

    int slots = Integer.valueOf(args[1]);
    e.setMaxPlayers(args[1]);
    p.sendMessage(ChatColor.GOLD + "[MuxSystem]" + ChatColor.AQUA + " Der Server hat nun " + ChatColor.GREEN + args[1] + ChatColor.AQUA + " Slots.");
    return true;

    }
    kuck ma eben was falsch ist BITTE :?: :?: :?:
     
    #3
  4. Crafter213
    Offline

    Crafter213

    Registriert seit:
    9. August 2012
    Beiträge:
    353
    Was bring dir das:
    Code (Text):
    1. int slots = Integer.valueOf(args[1]);
    Vlt solltest dus auch verwenden,
    wenn du die Variable schon erstellst.

    Hoffe das hilft
     
    #4
  5. if(args[0].equals("slots")){

    int slots = Integer.valueOf(args[1]);
    e.setMaxPlayers(slots);
    p.sendMessage(ChatColor.GOLD + "[MuxSystem]" + ChatColor.AQUA + " Der Server hat nun " + ChatColor.GREEN + slots + ChatColor.AQUA + " Slots.");
    return true;

    }
     
    #5
  6. kingingo
    Offline

    kingingo Gesperrt

    Registriert seit:
    1. September 2012
    Beiträge:
    63
    irgendwie ändert er die slot anzahl net ??

    Code (Text):
    1. if(args[0].equals("slots")){
    2.                     if(args[0].equals("slots")){
    3.                 int slots = Integer.valueOf(args[0]);
    4.                 e.setMaxPlayers(slots);
    5.                 p.sendMessage("§6[MuxPlayer] §bDie Slots wurden auf " + slots +" erhöht!");
    6.            
    7.         }
    8.         }
     
    #6
  7. Was machst du überhaupt? was ist e?!
    Poste mal den ganzen Sourcecode!
     
    #7
  8. kingingo
    Offline

    kingingo Gesperrt

    Registriert seit:
    1. September 2012
    Beiträge:
    63
    So bitte

    Code (Text):
    1. package me.kingingo.muxplayer;
    2.  
    3. import org.bukkit.command.Command;
    4. import org.bukkit.command.CommandSender;
    5. import org.bukkit.entity.Player;
    6. import org.bukkit.event.server.ServerListPingEvent;
    7. import org.bukkit.plugin.PluginDescriptionFile;
    8. import org.bukkit.plugin.java.JavaPlugin;
    9.  
    10. public class MuxPlayer extends JavaPlugin{
    11.  
    12.  
    13. public void onEnable(){
    14.         PluginDescriptionFile descFile = this.getDescription();
    15.         System.out.println("[MuxPlayer] Aktiviert");
    16.         System.out.println("[MuxPlayer] coded by " + descFile.getAuthors());
    17.         System.out.println("[MuxPlayer] version " + descFile.getVersion());
    18.     }
    19.     public void onDisable(){
    20.         System.out.println("[MuxPlayer] Deaktiviert"); 
    21.     }
    22.    
    23.     public boolean onCommand(final CommandSender sender, Command cmd, String commandlabel,String[] args){
    24.         final Player p = (Player) sender;
    25.         if (!(sender instanceof Player)) {
    26.             sender.sendMessage("Das Command kann nur InGame benutzt werden.");
    27.         }
    28.        
    29.         if(args[0].equals("slots")){
    30.             if(args[0].equals("slots")){
    31.         int slots = Integer.valueOf(args[0]);
    32.         e.setMaxPlayers(slots);
    33.         p.sendMessage("§6[MuxPlayer] §bDie Slots wurden auf " + slots +" erhöht!");
    34.    
    35. }
    36. }
    37.        
    38.         return false;
    39.         }
    40.    
    41.     public static ServerListPingEvent e;
    42.     }
    43.  
     
    #8
  9. Benni1000
    Offline

    Benni1000 Ehem. Teammitglied

    Registriert seit:
    4. Mai 2012
    Beiträge:
    1.408
    Das kann nicht funktionieren.
    Überlege mal genau was ein Ping event ist.
     
    #9
  10. kingingo
    Offline

    kingingo Gesperrt

    Registriert seit:
    1. September 2012
    Beiträge:
    63
    ok danke wie denn dann ??
     
    #10
  11. public static ServerListPingEvent e;
    -> Events sind nur für Listener, die solltest du nur benutzen, wenn du eine Ahnung von dem Event hast.

    Du kannst übrigens die Slots nur verändern, wenn du das ServerListPingEvent richtig verwendest und das native SlotSystem überschreibst. Da ich ansonsten keine Methode kenne die die Slots verändern kann.
     
    #11
  12. Benni1000
    Offline

    Benni1000 Ehem. Teammitglied

    Registriert seit:
    4. Mai 2012
    Beiträge:
    1.408
    Du könntest die server.properties datei umändern, und den Server dann reloaden.
     
    #12
  13. ChristianG
    Online

    ChristianG

    Genau so hätte ich es auch gemacht!
    Ist am einfachsten...
    Ich glaube, man kann sogar nur die Bukkit Config reloaden, dass spart Perfomance...
     
    #13
Status des Themas:
Es sind keine weiteren Antworten möglich.