Предыдущие версии
Название | Размер | Обновлено | Версия игры | Загрузок | |
ParticleProjectileApi 0.1.0 (MC 1.12.2) release | 11.12 KB | Jan 17, 2018 | 1.12 | 164 | ![]() |
ParticleProjectileApi 0.0.9 (MC 1.12.2) release | 11.08 KB | Dec 28, 2017 | 1.12 | 65 | ![]() |
ParticleProjectileApi 0.0.8 (Mc 1.12.2) release | 11.13 KB | Dec 28, 2017 | 1.12 | 30 | ![]() |
ParticleProjectileApi 0.0.7 (Mc 1.12.2) release | 11.01 KB | Dec 21, 2017 | 1.12 | 41 | ![]() |
ParticleProjectileApi 0.0.6 (MC 1.12.2) release | 11.01 KB | Nov 13, 2017 | 1.12 | 81 | ![]() |
ParticleProjectileApi 0.0.5 (MC 1.12.2) beta | 11.06 KB | Nov 8, 2017 | 1.12 | 45 | ![]() |
ParticleProjectileApi 0.0.4 (MC 1.12.2) beta | 10.67 KB | Nov 5, 2017 | 1.12 | 49 | ![]() |
ParticleProjectileApi 0.0.3 (MC 1.12.2) beta | 10.61 KB | Oct 30, 2017 | 1.12 | 50 | ![]() |
ParticleProjectileApi 0.0.2 (MC 1.12.2) beta | 8.38 KB | Oct 23, 2017 | 1.12 | 79 | ![]() |
ParticleProjectileApi 0.0.1 (MC 1.12.2) beta | 10.09 KB | Oct 23, 2017 | 1.12 | 61 | ![]() |
Скриншоты
Описание
Описание
Этот API предназначен для того, чтобы позволить разработчикам плагинов легко добавлять индивидуальные снаряды частиц, отсюда и название. ParticleProjectileApi поставляется со своими собственными классами событий, дающими разработчику возможность отменить эффект при попадании частицы, это очень полезно, скажем, в мини-играх, чтобы предотвратить дружественный огонь. Вполне возможно создать несколько классов снарядов, и это тоже поощряется. При расширении класса ParticleProjectile разработчик столкнется с пятью методами: OnHit, OnHitBlock, OnHitEntity, OnPenetrateBlock, OnPenetrateEntity и onMove. Эти методы позволяют добавлять код для запуска, когда снаряд попадает, проходит через что-то или движется.
Особенности
- способ запуска частиц (пакеты не используются)
- Пользовательские события, которые можно отменить
- Создайте несколько классов снарядов для различных эффектов
- Еще впереди!
Использование
MyProjectile.class
пакет com.цель.coltonjgriswold.снаряды; импорт org.bukkit.Местоположение; импорт org.bukkit.block.Блок; импорт org.bukkit.entity.Ранимыми; импорт org.bukkit.entity.Сущность; импорт org.bukkit.entity.Игрок; импортировать com.цель.coltonjgriswold.API-интерфейс.ParticleProjectile; публичный класс MyProjectile расширяет ParticleProjectile { public MyProjectile() { super(Particle.REDSTONE, 0.1, 7.5, 20.0, 128.0);<br /> ignoreMaterial(Материал.STATIONARY_WATER);<br /> setColor(ParticleColor.fromRGB(255, 0, 0); //Инициализируйте снаряд с красным цветом, хитбоксом 0,1 кубика, Массой 7,5 грамма, скоростью 20,0 метра в секунду, максимальным расстоянием 128 метров и игнорируйте STATIONARY_WATER. } @Переопределение общественного недействительными OnHit(LivingEntity кто начните местоположение, местоположение конец) { //Сделайте что-нибудь, когда достигнете максимального расстояния } @Переопределение общественного недействительными OnHitBlock(LivingEntity кто, запустить расположение, расположения, блока, что) { //Сделайте что-нибудь, когда попадете в блок } @Переопределение общественного недействительными OnHitEntity(LivingEntity кто, стартовая, расположение конце, лицо, что) { //Сделайте что-нибудь, когда попадете в сущность } @Переопределение общественного недействительными OnPenetrateBlock(LivingEntity кого, место, где, кто) { //Сделайте что-нибудь, проходя через блок } @Переопределение OnPenetrateEntity общественного недействительными(LivingEntity кто, место, объект, что) { //Сделайте что-нибудь при прохождении через сущность }
}
MyPlugin.class
пакет com.цель.coltonjgriswold; импорт org.bukkit.Материал; импорт org.bukkit.event.EventHandler; импорт org.bukkit.event.Слушатель; импорт org.bukkit.event.player.PlayerInteractEvent; импорт org.bukkit.plugin.java.JavaPlugin; импорт org.bukkit.util.Vector; импортировать com.цель.coltonjgriswold.API-интерфейс.коммунальные услуги.ParticleColor; импорт com.aim.coltonjgriswold.снаряды.MyProjectile; публичный класс MyPlugin расширяет JavaPlugin реализует Listener { MyProjectile снаряд; общественного недействительными onEnable() { getServer().getPluginManager().registerEvents(этот, эта); снаряд = новый мипроект(); } общественного недействительными onDisable() { } @EventHandler oninteract общественного недействительными(событие PlayerInteractEvent ) { Материал элемента = событие.getPlayer().getInventory().getItemInMainHand().метод gettype(); если (пункт == материал.ПРИДЕРЖИВАТЬСЯ) { //запуск мипроекта с включенной физикой снаряда.запуск(event.getPlayer(), true); } } }
Пример Плагина, использующего ParticleProjectileApi и Javadocs
Документация Java: ParticleProjectileApi
Пример плагина:
Добавить комментарий