Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Class Main :
- package fr.adventsky.advancement;
- import org.bukkit.Bukkit;
- import org.bukkit.plugin.java.JavaPlugin;
- public class Main extends JavaPlugin {
- private static Main instance;
- @Override
- public void onEnable() {
- instance = this;
- Bukkit.getPluginManager().registerEvents(new AdvancementListener(), this);
- }
- public static Main getInstance() {
- return instance;
- }
- }
- // ---------------------------------------------
- // Class AdvancementListener :
- package fr.adventsky.advancement;
- import eu.endercentral.crazy_advancements.*;
- import eu.endercentral.crazy_advancements.manager.AdvancementManager;
- import org.bukkit.Material;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.inventory.CraftItemEvent;
- import org.bukkit.event.player.AsyncPlayerChatEvent;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.scheduler.BukkitRunnable;
- public class AdvancementListener implements Listener {
- private AdvancementManager manager;
- private Advancement root, chat, benchmarking;
- public AdvancementListener() {
- manager = CrazyAdvancements.getNewAdvancementManager();
- AdvancementDisplay rootDisplay = new AdvancementDisplay(Material.BEETROOT_SOUP, "Root",
- "Des advancements test",
- AdvancementDisplay.AdvancementFrame.TASK, true, true,
- AdvancementVisibility.ALWAYS);
- rootDisplay.setBackgroundTexture("textures/blocks/concrete_yellow.png");
- root = new Advancement(null, new NameKey("adventsky_tets", "default/root"), rootDisplay);
- AdvancementDisplay chatDisplay = new AdvancementDisplay(Material.BEACON, "Chat",
- "Ecrire dans le chat",
- AdvancementDisplay.AdvancementFrame.TASK, true, true,
- AdvancementVisibility.ALWAYS);
- chatDisplay.setCoordinates(1, 0);
- chat = new Advancement(root, new NameKey("adventsky_tets", "default/chat"), chatDisplay);
- AdvancementDisplay benchmarkingDisplay = new AdvancementDisplay(Material.CRAFTING_TABLE, "Benchmark",
- "Crafter une table de craft",
- AdvancementDisplay.AdvancementFrame.CHALLENGE, true, true,
- AdvancementVisibility.ALWAYS);
- benchmarkingDisplay.setCoordinates(2, 1);
- benchmarking = new Advancement(chat, new NameKey("adventsky_tets", "default/benchmarking"), benchmarkingDisplay);
- benchmarking.setCriteria(2);
- manager.addAdvancement(root, chat, benchmarking);
- }
- @EventHandler
- public void onChat(AsyncPlayerChatEvent e) {
- if(manager.getCriteriaProgress(e.getPlayer(), chat) < chat.getCriteria()) {
- manager.grantAdvancement(e.getPlayer(), chat);
- manager.saveProgress(e.getPlayer(), "adventsky_tets");
- }
- }
- @EventHandler
- public void onCraft(CraftItemEvent e) {
- if(e.getCurrentItem().getType() == Material.CRAFTING_TABLE) {
- int progress = manager.getCriteriaProgress((Player) e.getWhoClicked(), benchmarking);
- if(progress < benchmarking.getCriteria()) {
- manager.setCriteriaProgress((Player) e.getWhoClicked(), benchmarking, progress+1);
- manager.saveProgress((Player) e.getWhoClicked(), "adventsky_tets");
- }
- }
- }
- @EventHandler
- public void onJoin(PlayerJoinEvent e) {
- new BukkitRunnable() {
- @Override
- public void run() {
- System.out.println("Test1");
- manager.loadProgress(e.getPlayer(), chat); // The problem is here...
- System.out.println("Test2");
- manager.loadProgress(e.getPlayer(), benchmarking);
- System.out.println("Test3");
- manager.grantAdvancement(e.getPlayer(), root);
- System.out.println("Test4");
- }
- }.runTaskLater(Main.getInstance(), 5);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement