BukkitRunnable stop alone

Discussion in 'Spigot Plugin Development' started by fer112233, May 28, 2016.

  1. Hi, when i start a bukkitrunnable, runtasktimer, after 10 minutes working aprox, it stops and i need to restart the server, no error on console, my FULL code:
    Code (Text):
        public void onEnable(){
            instance = this;
            File fileinventarios = new File(getDataFolder(), "inventarios.yml");
            if (!fileinventarios.exists()) {
            this.getServer().getPluginManager().registerEvents(new Eventos(instance), this);      
            this.getLogger().info("Plugin de huevos por fer112233");
            new BukkitRunnable(){

                public void run() {
                    String cuña = ChatColor.GRAY+""+ChatColor.ITALIC+"["+ChatColor.AQUA+""+ChatColor.ITALIC+"Tip"+ChatColor.GRAY+""+ChatColor.ITALIC+"]:";
                    Random r = new Random();
                    Integer i = r.nextInt(7);
                    if (i == 0){
                        Bukkit.broadcastMessage(cuña+ChatColor.GREEN+ChatColor.ITALIC+" Visita nuestra página web www.campecraft.net para estar informado de todas las noticias.");
                    else if (i == 1){
                        Bukkit.broadcastMessage(cuña+ChatColor.GREEN+ChatColor.ITALIC+" ¿Has visto ya los huevos de sangre? Tenemos un altar en el spawn!");
                    else if (i == 2){
                        Bukkit.broadcastMessage(cuña+ChatColor.GREEN+ChatColor.ITALIC+" ¿Has visto la nueva mesa arcana? En ella podras encantar tus items con encantamientos totalmente exclusivos de este servidor!");

                    else if (i == 3){
                        Bukkit.broadcastMessage(cuña+ChatColor.GREEN+ChatColor.ITALIC+" Recuerda que los mundos de recursos se reinician cada mes ¡El dia 1!");

                    else if (i == 4){
                        Bukkit.broadcastMessage(cuña+ChatColor.GREEN+ChatColor.ITALIC+" ¿Has visto los rangos donador en la web? ¡Conseguirás una mejor experiencia de juego con ellos!");

                    else if (i == 5){
                        Bukkit.broadcastMessage(cuña+ChatColor.GREEN+ChatColor.ITALIC+" ¿Sabias que disponemos de un servidor de ts3? A que estas esperando, la ip es ts.campecraft.net");

                    else if (i == 6){
                        Bukkit.broadcastMessage(cuña+ChatColor.GREEN+ChatColor.ITALIC+" El dia 1 habra una gran actualización del servidor ¡No te la pierdas!");

                    else if (i == 7){
                        Bukkit.broadcastMessage(cuña+ChatColor.GREEN+ChatColor.ITALIC+"El reinicio de mundos sera el dia 29 de mayo debido a un problema con el mapa, recoge tus cosas!!");

            }.runTaskTimerAsynchronously(this, 40, 20 * 200);
    #1 fer112233, May 28, 2016
    Last edited: May 28, 2016
  2. If you want us to be able to help you're going to have to share. Don't worry, I doubt we'll be willing to steal it.
    • Agree Agree x 1
  3. See know
  4. See know
  5. I don't see any issues with this besides that your random is never going to be 7
  6. Fail xD, But this is not my issue
  7. What about trying to run in your main thread?
    I mean, it won't do anything special.
    Also, ThreadLocalRandom or just make a seperate Random outside the task. One Random is all you need.