Перейти к основному содержимому

Регистрация анимаций

Для создания класса анимации мы будем использовать Animation интерфейс

TestAnimation класс

Обратите внимание на методы: Case#animationPreEnd и Case#animationEnd
  • Case#animationPreEnd вызывается для предоставления группы, отправки сообщения и т.д.
  • Case#animationEnd вызывается для полного завершения анимации.
import com.jodexindustries.donatecase.api.Animation;
import com.jodexindustries.donatecase.api.Case;
import com.jodexindustries.donatecase.api.armorstand.ArmorStandCreator;
import com.jodexindustries.donatecase.api.data.CaseData;
import com.jodexindustries.donatecase.tools.Tools;
import com.jodexindustries.donatecase.tools.support.PAPISupport;
import org.bukkit.Location;
import org.bukkit.Particle;
import org.bukkit.Sound;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.scheduler.BukkitRunnable;

public class TestAnimation implements Animation {

@Override
public void start(Player player, Location location, UUID uuid, CaseData caseData, CaseData.Item item) {
Case.animationPreEnd(caseData, player, true, item);
Bukkit.getScheduler().runTaskLater(Case.getInstance(), () -> Case.animationEnd(caseData, player, uuid, item),20L);
}
}

Main class

    @Override
public void onEnable() {
// получение CaseManager
CaseManager api = new CaseManager(this);
// регистрация анимации
AnimationManager animationManager = api.getAnimationManager();
animationManager.registerAnimation("test", new TestAnimation());
}