MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    Envoyer un mp depuis un classe n'utilisant pas d'event

    Planifier Épinglé Verrouillé Déplacé Discussion générale
    3 Messages 3 Publieurs 230 Vues 3 Watching
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • B Hors-ligne
      booskap
      dernière édition par

      Bonsoir,
      (désolé je savais pas ou poster ça , je sais pas si c’est un forum approprié pour ça)

      Je m’initie actuellement au Java en m’amusant a créer des petits plugins, mais la je suis passé a un autre format.

      Je vous explique :

      Je cherche a envoyé un message privée a un joueurs depuis un classe qui n’utilise pas d’événement (j’en déduis que je peux pas récupérer le player à l’aide d’un event)

      Si j’essaye depuis une classe utilisant un event j’ai un nullPointerExceptions…

      Du coup voici ma question, comment envoyé un message privée a un joueurs sans passer par un evenement ?

      Et sans faire de nullPointerExceptions

      Je vous mets le code :

      public class TaskJoin extends BukkitRunnable {
      
      	private int timer = 5;
      	private Main main;
      	private OnJoinEvent onJoinEvent;
      	
      	public TaskJoin(Main main) {
      		this.main = main;
      	}
      
      	@Override
      	public void run() {
      		Bukkit.broadcastMessage("t:"+timer);
      		onJoinEvent.getPlayerj().sendMessage("Téléportation dans : "+timer+"s");
      		if(timer == 0) {
      			
      			cancel();
      		}
      		timer--;
      	}
      
      }
      

      Que j’utilise dans cette parti :

      case DIAMOND_SWORD:
      					p.getInventory().clear();
      					
      					if(p.getGameMode() == GameMode.SPECTATOR) {
      						TaskJoin timerj = new TaskJoin(main);
      						timerj.runTaskTimer(main, 0, 20);
      					}
      					p.setGameMode(GameMode.SURVIVAL);
      					Item helmet = new Item(Material.IRON_HELMET, 1, "§e§lCasque");
      					Item chestPlate = new Item(Material.IRON_CHESTPLATE, 1, "§e§lPlastron");
      					Item leggings = new Item(Material.IRON_LEGGINGS, 1, "§e§lLeggin");
      					Item boots = new Item(Material.IRON_BOOTS, 1, "§e§lBottes");
      					Item sword = new Item(Material.IRON_SWORD, 1, "§e§lEpee du guerrier");
      					Item gApple = new Item(Material.GOLDEN_APPLE, 6, "§e§lPomme d'or");
      					
      					p.getInventory().setHelmet(helmet.getItems());
      					p.getInventory().setChestplate(chestPlate.getItems());
      					p.getInventory().setLeggings(leggings.getItems());
      					p.getInventory().setBoots(boots.getItems());
      					p.getInventory().setItemInHand(sword.getItems());
      					p.getInventory().setItem(1, gApple.getItems());
      					
      					p.sendMessage("§7[§6Herozia§7]"+"§rSelection du kit §4§lGuerrier §ravec §a§osucces");
      

      Qui est un IventoryClickEvent, si vous avez une solution je vous en serai très reconnaissant !

      1 réponse Dernière réponse Répondre Citer 0
      • robin4002R Hors-ligne
        robin4002 Moddeurs confirmés Rédacteurs Administrateurs
        dernière édition par

        Bonsoir,

        Il y a probablement un moyen de récupérer une instance de joueur par le nom du joueur, cependant je ne connais pas l’api Bukkit donc je ne vais pas pouvoir t’aider plus.

        Note : ici c’est Minecraft Forge France, on fait du Forge, pas du Bukkit …

        1 réponse Dernière réponse Répondre Citer 0
        • Flow ArgF Hors-ligne
          Flow Arg Moddeurs confirmés
          dernière édition par

          Pour t’éclairer un petit peu dans ton soucis, j’ai l’impression que ton event OnJoinEvent est null car il n’est pas initialisé.

          Mon GitHub
          Mon repo Maven
          Mon Updater
          Je suis un membre apprécié et joueur, j'ai déjà obtenu 10 points de réputation.

          1 réponse Dernière réponse Répondre Citer 0
          • 1 / 1
          • Premier message
            Dernier message
          Design by Woryk
          ContactMentions Légales

          MINECRAFT FORGE FRANCE © 2024

          Powered by NodeBB