Cassiano_14 Postado Setembro 3, 2018 Denunciar Compartilhar Postado Setembro 3, 2018 Estou fazendo um plugin de loteria, e quando chega a 2 segundos na mensagem regressiva, não da o delay aqui como ta Da o delay tudo certinho mas quando chega no 2 não da o delay Link para o comentário Compartilhar em outros sites More sharing options...
0 Ducky Postado Setembro 3, 2018 Denunciar Compartilhar Postado Setembro 3, 2018 Como assim não dá o delay? Ele chega no 2 e já executa tudo o resto? Mande seu código. Link para o comentário Compartilhar em outros sites More sharing options...
0 Cassiano_14 Postado Setembro 3, 2018 Autor Denunciar Compartilhar Postado Setembro 3, 2018 1 minuto atrás, Burpo disse: Como assim não dá o delay? Ele chega no 2 e já executa tudo o resto? Mande seu código. Sim, Spoiler Random r = new Random(); int num = r.nextInt(this.max - this.min + 1) + this.min; if (p.hasPermission("cassianoloteria.usar")) { if (args.length >= 0) { Bukkit.broadcastMessage(""); Bukkit.broadcastMessage("§aO Sorteio de " + num + " coins"); Bukkit.broadcastMessage("§aIrá começar em 15 segundos"); Bukkit.broadcastMessage(""); for (Player onp:Bukkit.getOnlinePlayers()) { onp.playSound(onp.getLocation(), Sound.ORB_PICKUP, 10, 10); } new BukkitRunnable() { int inicia = 5; int chamadas = 10; @Override public void run() { if (inicia > 0) { inicia--; } if (inicia == 0) { if (chamadas > 1) { Bukkit.broadcastMessage("§aO Sorteio de Dinheiro irá começar em " + chamadas + " segundos."); for (Player onp:Bukkit.getOnlinePlayers()) { onp.playSound(onp.getLocation(), Sound.ORB_PICKUP, 10, 10); } chamadas--; } if (chamadas == 1) { Bukkit.broadcastMessage("§aO Sorteio de Dinheiro irá começar em " + chamadas + " segundo."); for (Player onp:Bukkit.getOnlinePlayers()) { onp.playSound(onp.getLocation(), Sound.ORB_PICKUP, 10, 10); } chamadas--; } } if (chamadas == 0) { this.cancel(); Bukkit.broadcastMessage( "§aO Jogador " + rp.getName() + " foi o escolhido para"); Bukkit.broadcastMessage("§ao sorteio de " + num + " §acoins"); } } }.runTaskTimer(Main.getPlugin(Main.class), 20, 20); } Link para o comentário Compartilhar em outros sites More sharing options...
0 Ducky Postado Setembro 3, 2018 Denunciar Compartilhar Postado Setembro 3, 2018 A melhor forma para você fazer o que deseja, é assim: public static void preparar(int avisos) { Main.ocorrendo = true; int tempoavisos = 1; if (avisos == 0) { //INICIAR O EVENTO return; } for (String x : Main.getInstance().getConfig().getStringList("Chamadas_Evento")) { Bukkit.broadcastMessage(x.replace("&", "§")); } new BukkitRunnable() { public void run() { Methodos.preparar(avisos - 1); } }.runTaskLater(Main.getInstance(), tempoavisos * 20); } Link para o comentário Compartilhar em outros sites More sharing options...
0 Cassiano_14 Postado Setembro 3, 2018 Autor Denunciar Compartilhar Postado Setembro 3, 2018 11 minutos atrás, Burpo disse: A melhor forma para você fazer o que deseja, é assim: public static void preparar(int avisos) { Main.ocorrendo = true; int tempoavisos = 1; if (avisos == 0) { //INICIAR O EVENTO return; } for (String x : Main.getInstance().getConfig().getStringList("Chamadas_Evento")) { Bukkit.broadcastMessage(x.replace("&", "§")); } new BukkitRunnable() { public void run() { Methodos.preparar(avisos - 1); } }.runTaskLater(Main.getInstance(), tempoavisos * 20); } Não entendi. Poderia converter o meu codigo para esse? Link para o comentário Compartilhar em outros sites More sharing options...
0 Ygor Postado Setembro 3, 2018 Denunciar Compartilhar Postado Setembro 3, 2018 Olá, Na parte do código que você verifica se resta apenas uma chamada você diminui mais 1, ou seja. Do 2 irá direto para 0. Para solucionar isso é muito simples, retire o chamadas--; da verificação supracitada. Abraços. Link para o comentário Compartilhar em outros sites More sharing options...
0 Cassiano_14 Postado Setembro 4, 2018 Autor Denunciar Compartilhar Postado Setembro 4, 2018 18 horas atrás, Ygor disse: Olá, Na parte do código que você verifica se resta apenas uma chamada você diminui mais 1, ou seja. Do 2 irá direto para 0. Para solucionar isso é muito simples, retire o chamadas--; da verificação supracitada. Abraços. Obrigado não foi bem isso que eu fiz mas deu certo. Link para o comentário Compartilhar em outros sites More sharing options...
0 Wolf_131 Postado Abril 8, 2019 Denunciar Compartilhar Postado Abril 8, 2019 Sua dúvida foi marcada como resolvida pela nossa equipe. Caso sua dúvida não tenha sido sanada, crie outro tópico. OBS: Essa mensagem é automática. Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Cassiano_14
Estou fazendo um plugin de loteria, e quando chega a 2 segundos na mensagem regressiva, não da o delay
aqui como ta
Da o delay tudo certinho mas quando chega no 2 não da o delay
Link para o comentário
Compartilhar em outros sites
7 respostass a esta questão
Posts Recomendados