Welcome to Bukkit France

Inscrivez-vous maintenant pour profiter d'un accès total à tout le contenu offert par la meilleur communauté Bukkit française ! Une fois inscrit et connecté, vous pourrez contribuez à la communauté en postant vos propres sujets et questions ou en répondant à ceux existants. Vous pourrez aussi customiser votre profil, recevoir des points de réputations, communiquer avec les autres membres via le chat, et plus encore! 

Frivec

Membres
  • Compteur de contenus

    11
  • Inscription

  • Dernière visite

Réputation sur la communauté

0 Neutre

À propos de Frivec

  • Rang
    Membre

Informations de profil

  • Bukkitorg www.bukkit.fr
  • Sexe Homme

Me contacter

  • Minecraft Frivec
  1. Bug de timer

    Oui c'est moi qui ai codé cela. Par ailleur, j'ai résolu mon problème. Vous pouvez lock si un modo passe par là.
  2. Bug de timer

    D'accord, je vais changer tout cela et je te dis si ça marche J'ai testé plusieurs méthode pour faire exécuter différemment le PreGamee.start(); mais rien ne marche :/   Aurais-tu une solution s'il te plait ?
  3. Bug de timer

    Ok, voici les deux classes alors:   Join: public static int task; public static int timer = 121; @EventHandler public void join(PlayerJoinEvent e){ ItemStack r = new ItemStack(Material.WRITTEN_BOOK); BookMeta rM = (BookMeta) r.getItemMeta(); rM.setTitle("§aRègles du jeu"); rM.setAuthor("§4Supra§aCube"); List<String> pages = new ArrayList<>(); pages.add("§9Bienvenue en UPT-TPU \n\n\n\n\n\n\n\n\n §2(Il paraît que même les admins ne savent pas ce que cela veut dire)"); pages.add("§6§lRègles >> \n\n§9- Vous et 15 autres joueurs avez été dispatchés dans 4 labyrinthes. \n\n§5Votre but: \n\nVous créer un stuff durant la phase de préparation puis tuer tous les joueurs."); pages.add("§5Vous disposez d'un casque de mineur, d'une pioche, d'une hâche ainsi que d'un coffre avec du matériaux et des vivres.\n\n§6§lFonctionnement >> \n\n§9Phases: \n§3Préparation \nCombat \nDeathMatch"); pages.add("§6§lInfos >> \n\n §9Les blocs d'§eor §9vous téléportent dans un autre labyrinthe.\n\nLes blocs de §7fer §9vous téléportent non loin du centre de votre labyrinthe.\n\nLes blocs de §8roches §9vous téléportent dans une zone secrète."); pages.add("\n\n\n§c§lLe jeu est en bêta. Des bugs peuvent apparaîtres. Merci de les signaler sur le forum ou directement à Frivec"); pages.add("\n\n\n §9§lBon jeux sur \n\n §4§lSupra§a§lCube"); rM.setPages(pages); r.setItemMeta(rM); ItemStack kit = new ItemStack(Material.NETHER_STAR); ItemMeta kitM = kit.getItemMeta(); kitM.setDisplayName("§9Kits §c(Prochainement)"); kit.setItemMeta(kitM); ItemStack bed = new ItemStack(Material.BED); ItemMeta bedM = bed.getItemMeta(); bedM.setDisplayName("§cRetour au lobby"); bed.setItemMeta(bedM); e.setJoinMessage(""); Player p = e.getPlayer(); Inventory inv = p.getInventory(); if(!States.isState(States.WAIT)){ p.teleport(new Location(Bukkit.getWorld("world"), 44, 54, 42)); p.setGameMode(GameMode.SPECTATOR); p.sendMessage("§6La partie a déjà commencée. Vous avez été passé en spectateur."); return; } if(States.isState(States.WAIT)){ if(!Main.getInstance().online.contains(p.getUniqueId())){ Main.getInstance().online.add(p); for(Player pl : Main.getInstance().online){ p.setLevel(0); Bukkit.dispatchCommand(Bukkit.getServer().getConsoleSender(), "minecraft:clear " + p.getName()); p.setGameMode(GameMode.SURVIVAL); p.teleport(new Location(Bukkit.getWorld("world"), 44, 54, 42)); Title.sendActionBar(pl, p.getDisplayName() + " §ba rejoint la partie. §7(§6" + Main.getInstance().online.size() + "§b/§620§7)"); new Sounds(pl).playSound(Sound.BLOCK_NOTE_PLING); inv.setItem(0, r); inv.setItem(4, kit); inv.setItem(8, bed); } if(Main.getInstance().online.size() == 8){ task = Bukkit.getScheduler().scheduleSyncRepeatingTask(Main.getInstance(), new Runnable(){ @Override public void run() { timer--; for(Player players : Bukkit.getOnlinePlayers()){ if(timer == 120 || timer == 60 || timer == 30 || timer == 15 || timer == 10){ Bukkit.broadcastMessage("§7[§6UPT TPU§7] §bDémarrage dans §6" + timer + " §bsecondes !"); } if(timer == 5){; Title.sendTitle(players, "§65 §bsecondes", "", 30); new Sounds(players).playSound(Sound.BLOCK_NOTE_PLING); } if(timer == 4){ Title.sendTitle(players, "§64 §bsecondes", "", 30); new Sounds(players).playSound(Sound.BLOCK_NOTE_PLING); } if(timer == 3){ Title.sendTitle(players, "§63 §bsecondes", "", 30); new Sounds(players).playSound(Sound.BLOCK_NOTE_PLING); } if(timer == 2){ Title.sendTitle(players, "§62 §bsecondes", "", 30); new Sounds(players).playSound(Sound.BLOCK_NOTE_PLING); } if(timer == 1){ Title.sendTitle(players, "§61 §bseconde", "", 30); new Sounds(players).playSound(Sound.BLOCK_NOTE_PLING); } if(timer == 0){ Locations.teleportplayers(); PreGame.start(); Bukkit.getScheduler().cancelTask(task); } } } }, 20l, 20l); } } } } @EventHandler public void quit(PlayerQuitEvent e){ Player p = e.getPlayer(); e.setQuitMessage(""); if(!Main.getInstance().online.contains(p)){ return; } if(Main.getInstance().online.contains(p)){ for(Player pl : Main.getInstance().online){ Main.getInstance().online.remove(p); Title.sendActionBar(pl, p.getDisplayName() + " §ba quitté la partie. §7(§6" + Main.getInstance().online.size() + "§b/§620§7)"); FinishEvent.checkWin(); } } } }   Et ForceStart, qui reprend le même code que Join mais sous forme de commande: public static int task; static int timer = 35; @Override public boolean onCommand(CommandSender sender, Command cmd, String msg, String[] args) { Player p = (Player)sender; if(sender instanceof Player){ if(args.length == 0){ if(!p.hasPermission("forcestart.use")){ p.sendMessage("§cVous ne pouvez pas éxécuter cette commande."); }else{ States.setState(States.WAIT); p.sendMessage("§9[§cMode admin§9] §6Vous avez passé le jeu en phase démarrage !"); for(Player pl : Main.getInstance().online){ pl.sendMessage("§cDémarrage du jeu forcé par: §6" + p.getName() + "§c !"); } task = Bukkit.getScheduler().scheduleSyncRepeatingTask(Main.getInstance(), new Runnable(){ @Override public void run() { timer--; for(Player players : Main.getInstance().online){ if(timer == 30){ players.sendMessage("§7[§6UPT TPU§7] §bDémarrage dans §630 §bsecondes !"); } if(timer == 10){ players.sendMessage("§7[§6UPT TPU§7] §bDémarrage dans §610 §bsecondes !"); } if(timer == 5){ players.sendMessage("§7[§6UPT TPU§7] §bDémarrage dans §65 §bsecondes !"); Title.sendTitle(players, "§65 §bsecondes", "", 30); new Sounds(players).playSound(Sound.BLOCK_NOTE_PLING); } if(timer == 4){ players.sendMessage("§7[§6UPT TPU§7] §bDémarrage dans §64 §bsecondes !"); Title.sendTitle(players, "§64 §bsecondes", "", 30); new Sounds(players).playSound(Sound.BLOCK_NOTE_PLING); } if(timer == 3){ players.sendMessage("§7[§6UPT TPU§7] §bDémarrage dans §63 §bsecondes !"); Title.sendTitle(players, "§63 §bsecondes", "", 30); new Sounds(players).playSound(Sound.BLOCK_NOTE_PLING); } if(timer == 2){ players.sendMessage("§7[§6UPT TPU§7] §bDémarrage dans §62 §bsecondes !"); Title.sendTitle(players, "§62 §bsecondes", "", 30); new Sounds(players).playSound(Sound.BLOCK_NOTE_PLING); } if(timer == 1){ players.sendMessage("§7[§6UPT TPU§7] §bDémarrage dans §61 §bsecondes !"); Title.sendTitle(players, "§61 §bseconde", "", 30); new Sounds(players).playSound(Sound.BLOCK_NOTE_PLING); } if(timer == 0){ PreGame.start(); Bukkit.getScheduler().cancelTask(task); } } } }, 20l, 20l); } } } return false; } }   Je tiens à préciser que le timer des classes Join et ForceStart fonctionnent parfaitement. Ce que je comprends pas c'est pourquoi celui de la classe PreGame ne fonctionne pas alors que c'est le même type de timer :/
  4. Bug de timer

    Désolé je n'y arrive pas vraiment :/ Tu m'as demandé de t'envoyer mon code, mais de quelle classe ? Ce lui où le timer ou une autre ?
  5. Bug de timer

    Ma méthode est appelée par le timer de base (quand il y a assez de joueurs) et quand un admin fait une commande pour forcer le démarrage. Je ne sais pas si c'est cela qui est en cause.   Pour le currentmillis, je vais essayer et je te dis ensuite
  6. Bug de timer

    Version (serveur) : 1.9.4 API utilisée : Spigot 1.9.4 Explications du problème rencontré: Le timer s'écoule plus vite que prébu en fonction du nombre de joueurs Recherches effectuées :Internet, Forum Bukkit(en/fr), Forum Spigot Code: package fr.Frivec.game; import org.bukkit.Bukkit; import org.bukkit.GameMode; import org.bukkit.Material; import org.bukkit.Sound; import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; import fr.Frivec.Main; import fr.Frivec.utils.Locations; import fr.Frivec.utils.Sounds; import fr.Frivec.utils.Title; public class PreGame { public static int task; public static int timer = 0; public static void start(){ States.setState(States.PREGAME); Locations.teleportplayers(); Bukkit.dispatchCommand(Bukkit.getServer().getConsoleSender(), "gamerule doDaylightCycle false"); Bukkit.dispatchCommand(Bukkit.getServer().getConsoleSender(), "gamerule doDaylightCy false"); Bukkit.dispatchCommand(Bukkit.getServer().getConsoleSender(), "gamerule sendCommandFeedback false"); Bukkit.dispatchCommand(Bukkit.getServer().getConsoleSender(), "gamerule commandBlockOutput false"); Bukkit.dispatchCommand(Bukkit.getServer().getConsoleSender(), "time set 6000"); for(Player pl : Main.getInstance().online){ pl.getInventory().clear(); pl.setGameMode(GameMode.SURVIVAL); new Sounds(pl).playSound(Sound.ENTITY_ENDERDRAGON_GROWL); Title.sendTitle(pl, "§6§lGo !", "§cPhase: §bPréparation", 25); pl.getInventory().setItem(0, new ItemStack(Material.IRON_PICKAXE, 1)); pl.getInventory().setItem(1, new ItemStack(Material.IRON_AXE, 1)); pl.getInventory().setHelmet(new ItemStack(Material.LEATHER_HELMET, 1)); pl.getInventory().setItem(8, new ItemStack(Material.BREAD, 32)); Title.sendActionBar(pl, "Vous avez 5 minutes pour vous préparer, miner et forger une équipe!"); } task = Bukkit.getScheduler().scheduleSyncRepeatingTask(Main.getInstance(), new Runnable(){ @Override public void run() { timer++; if(timer == 120 || timer == 60 || timer == 30 || timer == 15 || timer == 10 || timer == 5 || timer == 4 || timer == 3 || timer == 2 || timer == 1){ Bukkit.broadcastMessage("§9Fin de la préparation dans §6" + timer + " §9seconde(s)."); } if(timer == 0){ GamePvP.game(600); Bukkit.getScheduler().cancelTask(task); } } }, 20l, 20l); } }  
  7. Erreur dans le code de mon plugin

    Problème résolu. Merci.   Un modérateur peut fermer ce topic ?
  8. Erreur dans le code de mon plugin

    Je vois voir pour régler ça. Merci de ta réponse
  9. Erreur dans le code de mon plugin

    Plateforme: Spigot Version: 1.8.7   Plugin concerné: Le mien   Recherches éffectuées: Google, Bukkit France et Anglais   Problème:   Bonjour. J'apprends à développer des plugins en Java et j'ai créer du coup un petit plugin. Je l'ai testé sur mon serveur en local, et il fonctionne mais dès que je le passe sur mon serveur héberger, il ne fonctionne plus et affiche un message d'erreur. J'ai cherché sur le web mais je n'ai rien trouver qui puisse m'aider. Mon mis spigot 1.8.7 sur mon plugin en "build path" et sur mon serveur aussi et ce sont bien les deux même. Voilà mon problème et merci de votre aide si vous pouvez m'aider Un screen de la console est mis avec la conversation.   PS: Désolé si je me suis trompé de catégorie pour poster ce message, je n'utilise pas beaucoup le forum   Image: http://www.noelshack.com/2017-03-1484592465-2017-01-16.jpg  
  10. Plugin de broadcast personnalisé.

    Hélas, je ne suis qu'un apprenti codeur. Je ne connais pas grand chose aux codes java pour le moment mais j'apprends. Si possible, je voudrai un plugin plus ou moins déjà fait mais que je pourrai configurer moi même. Si vous en connaissez, merci d'avance.
  11. Bonjour, bonsoir.   Je recherche un plugin pour faire des broadcast personnalisés un peu dans le style du /mod d'Epicube. Je suis au courant que ce plugin est sûrement privé mais je cherche un plugin similaire. J'ai fait mes recherches de mon côté et je suis tombé sur simpleboradcast mais il ne me convient pas vraiment.   Pour ceux qui ne savennt pas ou plus, le /mod a une présentation comme ça: [MODERATION] pseudodumodo: message Si vous pouviez m'aider, ce serai gentil.   Cordialement. Frivec.