Guest MisterPvP Postado Dezembro 4, 2015 Denunciar Compartilhar Postado Dezembro 4, 2015 Como eu faço para que o scheduleSyncDelayedTask fica mandando mensagens repetitivas tipo: [EVENTO] Vá ao /warp evento e aguarde. Ai quando o evento se realizar a mensagem parar. Link para o comentário Compartilhar em outros sites More sharing options...
Proyx Postado Dezembro 8, 2015 Denunciar Compartilhar Postado Dezembro 8, 2015 boolean Whiter_esta_vivo = true; int task_id; public void newTask() { task_id = Bukkit.getScheduler().scheduleSyncRepeatingTask(this, new Runnable() { public void run() { if (!(Whiter_esta_vivo)) { Bukkit.getScheduler().cancelTask(task_id); task_id = -1; return; } Bukkit.broadcastMessage("O wither está vivo"); } }, 1L, 20L); } Link para o comentário Compartilhar em outros sites More sharing options...
vitorrdgs Postado Dezembro 4, 2015 Denunciar Compartilhar Postado Dezembro 4, 2015 http://pastebin.com/2UPR1ndq Resolvido? Link para o comentário Compartilhar em outros sites More sharing options...
MrPowerGamerBR Postado Dezembro 4, 2015 Denunciar Compartilhar Postado Dezembro 4, 2015 Um aviso: Bukkit.getScheduler().scheduleSyncRepeatingTask não é recomendado e não deve ser utilizado, você deve iniciar uma nova instância do BukkitRunnable para criar eventos que se repetem/delay/etc. 1 Link para o comentário Compartilhar em outros sites More sharing options...
DarkSamuraiBR Postado Dezembro 4, 2015 Denunciar Compartilhar Postado Dezembro 4, 2015 (editado) Você pode usar a Bukkit Runnable: public static int i = 5; new BukkitRunnable() { public void run() { if(i >= 1) { i--; }else{ this.cancel(); } } }.runTaskTimer(this, 0, segundos * 20); Editado Dezembro 4, 2015 por DarkSamuraiBR 1 Link para o comentário Compartilhar em outros sites More sharing options...
Guest MisterPvP Postado Dezembro 7, 2015 Denunciar Compartilhar Postado Dezembro 7, 2015 Fiz um plugin de predador, só que tipo.. eu quero que anuncie que tem um wither vivo.. e quero que seja anunciado até o wither morrer, quando ele morrer as mensagens simplesmente pararem. Link para o comentário Compartilhar em outros sites More sharing options...
KickPost Postado Dezembro 7, 2015 Denunciar Compartilhar Postado Dezembro 7, 2015 Fiz um plugin de predador, só que tipo.. eu quero que anuncie que tem um wither vivo.. e quero que seja anunciado até o wither morrer, quando ele morrer as mensagens simplesmente pararem. Faz uma boolean para o Wither; Quando ele morrer coloca essa boolean true; Daí no Bukkit Runnable você faz um while com o wither se for false a boolean, você da continue; Caso for true você break ela Link para o comentário Compartilhar em outros sites More sharing options...
Guest MisterPvP Postado Dezembro 7, 2015 Denunciar Compartilhar Postado Dezembro 7, 2015 Faz uma boolean para o Wither; Quando ele morrer coloca essa boolean true; Daí no Bukkit Runnable você faz um while com o wither se for false a boolean, você da continue; Caso for true você break ela Poderia me mandar o código? Link para o comentário Compartilhar em outros sites More sharing options...
Guest MisterPvP Postado Dezembro 9, 2015 Denunciar Compartilhar Postado Dezembro 9, 2015 boolean Whiter_esta_vivo = true; int task_id; public void newTask() { task_id = Bukkit.getScheduler().scheduleSyncRepeatingTask(this, new Runnable() { public void run() { if (!(Whiter_esta_vivo)) { Bukkit.getScheduler().cancelTask(task_id); task_id = -1; return; } Bukkit.broadcastMessage("O wither está vivo"); } }, 1L, 20L); } Ficou anunciando que está vivo, porém quando eu matei o wither a mensagem continua anunciando. Link para o comentário Compartilhar em outros sites More sharing options...
Proyx Postado Dezembro 9, 2015 Denunciar Compartilhar Postado Dezembro 9, 2015 Ficou anunciando que está vivo, porém quando eu matei o wither a mensagem continua anunciando. Você setou false quando o wither morreu? Link para o comentário Compartilhar em outros sites More sharing options...
Guest MisterPvP Postado Dezembro 9, 2015 Denunciar Compartilhar Postado Dezembro 9, 2015 Você setou false quando o wither morreu? Como eu faço? Aqui quando eu uso para matar o wither: @EventHandler public void death(EntityDeathEvent e){ int quantidade = getConfig().getInt("Money"); String mensagem = getConfig().getString("Mensagem").replace("&", "§").replace("@quantidade", getConfig().getString("Money")); Player killer = e.getEntity().getKiller(); LivingEntity dead = e.getEntity(); if (((killer instanceof Player)) && ((dead instanceof Wither))) { this.predador = killer.getName(); econ.depositPlayer(killer.getName(), quantidade); killer.sendMessage(mensagem); } Link para o comentário Compartilhar em outros sites More sharing options...
Proyx Postado Dezembro 9, 2015 Denunciar Compartilhar Postado Dezembro 9, 2015 Você pode criar um set public void setVidaDoWhiter(boolean vida) { this.whiter_esta_vivo = vida } e usalo assim: setVidaDoWhiter(false); ou apenas fazer isso whiter_esta_vivo = false; ... Você parece que não sabe muito de java né? eu recomendo você estudar mais java antes de querer criar plugins grandes Link para o comentário Compartilhar em outros sites More sharing options...
Guest MisterPvP Postado Dezembro 9, 2015 Denunciar Compartilhar Postado Dezembro 9, 2015 Você pode criar um set public void setVidaDoWhiter(boolean vida) { this.whiter_esta_vivo = vida } e usalo assim: setVidaDoWhiter(false); ou apenas fazer isso whiter_esta_vivo = false; ... Você parece que não sabe muito de java né? eu recomendo você estudar mais java antes de querer criar plugins grandes Plugin de predador/mito/destemido/gladiador/minarecheada/minerar/resetworld/setminerar/tesouro não sou plugins grandes *NA MINHA OPINIÃO* ambus tem partes fáceis de fazer. O dificil pra mim e implementar coisas GRANDES. "Se o Bukkit.Org pegasse aqui eu estaria um mito em java, aprendi grandes coisas lá;" Link para o comentário Compartilhar em outros sites More sharing options...
vitorrdgs Postado Dezembro 9, 2015 Denunciar Compartilhar Postado Dezembro 9, 2015 Sua dúvida foi marcada como [Resolvido] e movido à área de dúvidas resolvidas. Atenciosamente, Gamer's Board Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest MisterPvP
Como eu faço para que o scheduleSyncDelayedTask fica mandando mensagens repetitivas tipo:
[EVENTO] Vá ao /warp evento e aguarde.
Ai quando o evento se realizar a mensagem parar.
Link para o comentário
Compartilhar em outros sites
13 respostass a esta questão
Posts Recomendados