Sending a graph that is automatically formated.

Discussion in 'Plugin Development' started by OppositeGamer, Feb 18, 2013.

Thread Status:
Not open for further replies.
  1. Offline

    OppositeGamer

    Ok, so I have a graph that prints to the player. But its all over the place. I was wandering if anyone knew how to make it to where it like took the spaces into account or something with a substring. IDK I was really needing help on this though.

    [​IMG]

    I dont know if you can see how the 1's and the 0.0's are all scattered. I want them nice and straight. This is what Im trying to get too. Here's my current code for it.

    Code:
    package net.mcmmo.commands;
     
    import net.mcmmo.Main;
    import net.mcmmo.PlayerStats;
     
    import org.bukkit.command.CommandSender;
    import org.bukkit.entity.Player;
     
    public class CommandStats extends CommandBase {
     
        public CommandStats(CommandSender cmdSender, String[] args, Main plugin) {
            super(cmdSender, args, plugin);
        }
     
        @Override
        public void execute() {
            PlayerStats ps = new PlayerStats((Player) cmdSender, plugin);
           
            cmdSender.sendMessage("§cSKILL:                  EXP:                  LEVEL:");
            cmdSender.sendMessage("§6----------------------------------------");
            cmdSender.sendMessage("§cMining:                  " + ps.getMiningX() + "                      " + ps.getMiningL() + "  ");
            cmdSender.sendMessage("§cWoodcutting:            " + ps.getWoodcuttingX() + "                      " + ps.getWoodcuttingL() + "  ");
            cmdSender.sendMessage("§cHerbalism:              " + ps.getHerbalismX() + "                      " + ps.getHerbalismL() + "  ");
            cmdSender.sendMessage("§cExcavation:              " + ps.getExcavationX() + "                      " + ps.getExcavationL() + "  ");
            cmdSender.sendMessage("§cFishing:                " + ps.getFishingX() + "                      " + ps.getFishingL() + "  ");
            cmdSender.sendMessage("§cUnarmed:                " + ps.getUnarmedX() + "                      " + ps.getUnarmedL() + "  ");
            cmdSender.sendMessage("§cArchery:                " + ps.getArcheryX() + "                      " + ps.getArcheryL() + "  ");
            cmdSender.sendMessage("§cSwords:                  " + ps.getSwordsX() + "                      " + ps.getSwordsL() + "  ");
            cmdSender.sendMessage("§cAxes:                    " + ps.getAxesX() + "                      " + ps.getAxesL() + "  ");
            cmdSender.sendMessage("§cTaming:                  " + ps.getTamingX() + "                      " + ps.getTamingL() + "  ");
            cmdSender.sendMessage("§cRepair:                  " + ps.getRepairX() + "                      " + ps.getRepairL() + "  ");
            cmdSender.sendMessage("§cAcrobatics:              " + ps.getAcrobaticsX() + "                      " + ps.getAcrobaticsL() + "  ");
        }
     
    }
    
     
  2. Offline

    Tirelessly

    Use \t (its a tab). That automatically semi-formats it, I believe.
     
  3. Offline

    OppositeGamer

    ok man! Let me give it a go! Please stay active because this is pretty hard.
     
  4. Offline

    grid21

    I believe this could be the fix

    cmdSender.sendMessage("§cSKILL: EXP: LEVEL:");
    cmdSender.sendMessage("§6----------------------------------------");
    cmdSender.sendMessage("§cMining: " + ps.getMiningX() + " " + ps.getMiningL() + " ");
    cmdSender.sendMessage("§cWoodcutting: " + ps.getWoodcuttingX() + " " + ps.getWoodcuttingL() + " ");
    cmdSender.sendMessage("§cHerbalism: " + ps.getHerbalismX() + " " + ps.getHerbalismL() + " ");
    cmdSender.sendMessage("§cExcavation: " + ps.getExcavationX() + " " + ps.getExcavationL() + " ");
    cmdSender.sendMessage("§cFishing: " + ps.getFishingX() + " " + ps.getFishingL() + " ");
    cmdSender.sendMessage("§cUnarmed: " + ps.getUnarmedX() + " " + ps.getUnarmedL() + " ");
    cmdSender.sendMessage("§cArchery: " + ps.getArcheryX() + " " + ps.getArcheryL() + " ");
    cmdSender.sendMessage("§cSwords: " + ps.getSwordsX() + " " + ps.getSwordsL() + " ");
    cmdSender.sendMessage("§cAxes: " + ps.getAxesX() + " " + ps.getAxesL() + " ");
    cmdSender.sendMessage("§cTaming: " + ps.getTamingX() + " " + ps.getTamingL() + " ");
    cmdSender.sendMessage("§cRepair: " + ps.getRepairX() + " " + ps.getRepairL() + " ");

    cmdSender.sendMessage("§cAcrobatics: " + ps.getAcrobaticsX() + "

    Oh something like that. Let me know if it works!

    Ok so for some dumb reason Bukkit replies isn't posting this right.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 31, 2016
  5. Offline

    OppositeGamer

    Ok so this is what happend



    [​IMG]

    Code:

    Code:
    package net.mcmmo.commands;
     
    import net.mcmmo.Main;
    import net.mcmmo.PlayerStats;
     
    import org.bukkit.command.CommandSender;
    import org.bukkit.entity.Player;
     
    public class CommandStats extends CommandBase {
     
        public CommandStats(CommandSender cmdSender, String[] args, Main plugin) {
            super(cmdSender, args, plugin);
        }
     
        @Override
        public void execute() {
            PlayerStats ps = new PlayerStats((Player) cmdSender, plugin);
           
            cmdSender.sendMessage("§cSKILL:                  EXP:                  LEVEL:");
            cmdSender.sendMessage("§6----------------------------------------");
            cmdSender.sendMessage("§cMining:\t" + ps.getMiningX() + "\t" + ps.getMiningL());
            cmdSender.sendMessage("§cWoodcutting:\t" + ps.getWoodcuttingX() + "\t" + ps.getWoodcuttingL());
            cmdSender.sendMessage("§cHerbalism:\t" + ps.getHerbalismX() + "\t" + ps.getHerbalismL());
            cmdSender.sendMessage("§cExcavation:\t" + ps.getExcavationX() + "\t" + ps.getExcavationL());
            cmdSender.sendMessage("§cFishing:\t" + ps.getFishingX() + "\t" + ps.getFishingL());
            cmdSender.sendMessage("§cUnarmed:\t" + ps.getUnarmedX() + "\t" + ps.getUnarmedL());
            cmdSender.sendMessage("§cArchery:\t" + ps.getArcheryX() + "\t" + ps.getArcheryL());
            cmdSender.sendMessage("§cSwords:\t" + ps.getSwordsX() + "\t" + ps.getSwordsL());
            cmdSender.sendMessage("§cAxes:\t" + ps.getAxesX() + "\t" + ps.getAxesL());
            cmdSender.sendMessage("§cTaming:\t" + ps.getTamingX() + "\t" + ps.getTamingL());
            cmdSender.sendMessage("§cRepair:\t" + ps.getRepairX() + "\t" + ps.getRepairL());
            cmdSender.sendMessage("§cAcrobatics:\t" + ps.getAcrobaticsX() + "\t" + ps.getAcrobaticsL());
        }
     
    }
    
    Yours does what mine did in the beginning Grid. xD lol this is such a hard thing to resolve

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 31, 2016
  6. Offline

    grid21

    I'm sorry. I'm not really a Java programming yet.
     
Thread Status:
Not open for further replies.

Share This Page