Advertisement
Guest User

Untitled

a guest
Feb 17th, 2020
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.05 KB | None | 0 0
  1. // Class Main :
  2.  
  3. package fr.adventsky.advancement;
  4. import org.bukkit.Bukkit;
  5. import org.bukkit.plugin.java.JavaPlugin;
  6.  
  7.  
  8. public class Main extends JavaPlugin {
  9.  
  10.     private static Main instance;
  11.  
  12.  
  13.  
  14.     @Override
  15.     public void onEnable() {
  16.         instance = this;
  17.         Bukkit.getPluginManager().registerEvents(new AdvancementListener(), this);
  18.     }
  19.  
  20.  
  21.     public static Main getInstance() {
  22.         return instance;
  23.     }
  24.  
  25. }
  26. // ---------------------------------------------
  27. // Class AdvancementListener :
  28.  
  29. package fr.adventsky.advancement;
  30.  
  31. import eu.endercentral.crazy_advancements.*;
  32. import eu.endercentral.crazy_advancements.manager.AdvancementManager;
  33. import org.bukkit.Material;
  34. import org.bukkit.entity.Player;
  35. import org.bukkit.event.EventHandler;
  36. import org.bukkit.event.Listener;
  37. import org.bukkit.event.inventory.CraftItemEvent;
  38. import org.bukkit.event.player.AsyncPlayerChatEvent;
  39. import org.bukkit.event.player.PlayerJoinEvent;
  40. import org.bukkit.scheduler.BukkitRunnable;
  41.  
  42. public class AdvancementListener implements Listener {
  43.  
  44.     private AdvancementManager manager;
  45.  
  46.     private Advancement root, chat, benchmarking;
  47.  
  48.  
  49.  
  50.     public AdvancementListener() {
  51.       manager = CrazyAdvancements.getNewAdvancementManager();
  52.  
  53.         AdvancementDisplay rootDisplay = new AdvancementDisplay(Material.BEETROOT_SOUP, "Root",
  54.                 "Des advancements test",
  55.                 AdvancementDisplay.AdvancementFrame.TASK, true, true,
  56.                 AdvancementVisibility.ALWAYS);
  57.  
  58.         rootDisplay.setBackgroundTexture("textures/blocks/concrete_yellow.png");
  59.         root = new Advancement(null, new NameKey("adventsky_tets", "default/root"), rootDisplay);
  60.  
  61.         AdvancementDisplay chatDisplay = new AdvancementDisplay(Material.BEACON, "Chat",
  62.                 "Ecrire dans le chat",
  63.                 AdvancementDisplay.AdvancementFrame.TASK, true, true,
  64.                 AdvancementVisibility.ALWAYS);
  65.  
  66.         chatDisplay.setCoordinates(1, 0);
  67.         chat = new Advancement(root, new NameKey("adventsky_tets", "default/chat"), chatDisplay);
  68.  
  69.  
  70.         AdvancementDisplay benchmarkingDisplay = new AdvancementDisplay(Material.CRAFTING_TABLE, "Benchmark",
  71.                 "Crafter une table de craft",
  72.                 AdvancementDisplay.AdvancementFrame.CHALLENGE, true, true,
  73.                 AdvancementVisibility.ALWAYS);
  74.  
  75.         benchmarkingDisplay.setCoordinates(2, 1);
  76.         benchmarking = new Advancement(chat, new NameKey("adventsky_tets", "default/benchmarking"), benchmarkingDisplay);
  77.         benchmarking.setCriteria(2);
  78.  
  79.  
  80.         manager.addAdvancement(root, chat, benchmarking);
  81.     }
  82.  
  83.     @EventHandler
  84.     public void onChat(AsyncPlayerChatEvent e) {
  85.         if(manager.getCriteriaProgress(e.getPlayer(), chat) < chat.getCriteria()) {
  86.             manager.grantAdvancement(e.getPlayer(), chat);
  87.             manager.saveProgress(e.getPlayer(), "adventsky_tets");
  88.  
  89.         }
  90.     }
  91.  
  92.     @EventHandler
  93.     public void onCraft(CraftItemEvent e) {
  94.         if(e.getCurrentItem().getType() == Material.CRAFTING_TABLE) {
  95.             int progress = manager.getCriteriaProgress((Player) e.getWhoClicked(), benchmarking);
  96.             if(progress < benchmarking.getCriteria()) {
  97.                 manager.setCriteriaProgress((Player) e.getWhoClicked(), benchmarking, progress+1);
  98.                 manager.saveProgress((Player) e.getWhoClicked(), "adventsky_tets");
  99.             }
  100.         }
  101.     }
  102.  
  103.     @EventHandler
  104.     public void onJoin(PlayerJoinEvent e) {
  105.         new BukkitRunnable() {
  106.  
  107.             @Override
  108.             public void run() {
  109.                 System.out.println("Test1");
  110.                 manager.loadProgress(e.getPlayer(), chat); // The problem is here...
  111.                 System.out.println("Test2");
  112.                 manager.loadProgress(e.getPlayer(), benchmarking);
  113.                 System.out.println("Test3");
  114.                 manager.grantAdvancement(e.getPlayer(), root);
  115.                 System.out.println("Test4");
  116.             }
  117.         }.runTaskLater(Main.getInstance(), 5);
  118.  
  119.  
  120.     }
  121.  
  122.  
  123. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement