EffectLib
Zapewnia deweloperom dostęp do biblioteki różnych efektów.
- Dostępne pliki
- 35
- Obsługiwane wersje
- 13
- Najnowszy plik
- 30.03.2021
EffectLib
Wiki https://github.com/elBukkit/EffectLib/wiki
Wsparcie na Discord: https://discord.gg/fWJ3W3kMjG
Forum (Outdated): http://forums.bukkit.org/threads/effectlib-manage-your-effects-the-nice-way.259879/
Opis
TEN PLUGIN NIE MA ZASTOSOWANIA DLA WŁAŚCICIELI SERWERÓW
Ta biblioteka to możliwość dla deweloperów, aby outsourcować zarządzanie efektami. Ta biblioteka zawiera wygodny zestaw konfigurowalnych efektów, ale łatwo możesz dodać własne efekty i zarządzać nimi w bibliotece.
Użycie
- Zobacz dokumentację z instrukcjami opartymi na Mavenie.
- LUB dodaj plik EffectLib.jar do swojego projektu i do wtyczek na twoim serwerze.
- Utwórz nowy EffectManager, aby obsługiwać twoje efekty.
EffectManager em = new EffectManager(plugin);
- Utwórz nowy efekt i uruchom go.
Effect effect = new BleedEffect(em); effect.setEntity(target); effect.start();
- Usuń/zwolnij menedżera efektów po zakończeniu pracy.
em.dispose();
Demo
Ta demonstracja tworzy efekt krwawienia, gdy gracz dołącza. Po 15 sekundach efekt wygasa, wywoływany jest callback, który zabija gracza i wysyła mu wiadomość.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
package com.yourdomain.yourplugin; import org.bukkit.Bukkit; import org.bukkit.event.EventHandler; import org.bukkit.event.HandlerList; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.plugin.java.JavaPlugin; import de.slikey.effectlib.EffectManager; import de.slikey.effectlib.effect.BleedEffect; public class EffectLibTest extends JavaPlugin implements Listener { private EffectManager effectManager; @Override public void onEnable() { Bukkit.getPluginManager().registerEvents(this, this); // Initialize a new EffectManager effectManager = new EffectManager(this); } @Override public void onDisable() { // Dispose of the EffectManager effectManager.dispose(); HandlerList.unregisterAll((Listener) this); } @EventHandler public void onPlayerJoin(final PlayerJoinEvent event) { // Create the Effect and attach it to the Player BleedEffect bleedEffect = new BleedEffect(event); bleedEffect.setEntity(event.getPlayer()); // Add a callback to the effect bleedEffect.callback = new Runnable() { @Override public void run() { event.getPlayer().sendMessage("You bled out.."); event.getPlayer().setHealth(0d); } }; // Bleeding takes 15 seconds // period * iterations = time of effect bleedEffect.iterations = 15 * 20; bleedEffect.start(); } } |
Effects Control
Wszystkie efekty mogą być przypięte do Lokalizacji (setLocation) lub do Encji (setEntity). Niektóre Efekty (np. LineEffect) mogą działać z dwiema lokalizacjami - użyj setTargetEntity oraz setTarget aby kontrolować „drugi punkt”.
Możesz anulować wszystkie uruchomione efekty menedżera efektów przez cancel(boolean callback).
Efekty sterowane konfiguracją
Istnieje również interfejs sterowany konfiguracją, z którego możesz korzystać, EffectManager.start.
Możesz przekazać klasę Efektu jako String, a dodatkowe parametry jako ConfigurationSection. Może to być w pełni kwalifikowana ścieżka (dla niestandardowych efektów zdefiniowanych na zewnątrz) lub prosta nazwa klasy dla wbudowanych klas. Na przykład:
summon: class: VortexEffect iterations: 4 particle: smoke helixes: 16 circles: 7 grow: 0.1 radius: 1
A następnie, aby z tego korzystać, coś takiego:
ConfigurationSection effectConfig = getConfig().getConfigurationSection("summon"); String clasName = effectConfig.getString("class"); effectManager.start(className, effectConfig, player);
There are several different versions of the start() method as of 3.4, the longest one would look like this:
effectManager.start(className, effectConfig, player.getLocation(), player, null, null, null);
Ostatnie trzy parametry są opcjonalne, dwa parametry „target” używane tylko w niektórych FX. Ostatnia linia może być użyta dla TextEffect, aby mieć parametryzowalne wiadomości tekstowe – na przykład jeśli chcesz wstawić imię gracza w konfigurowalną wiadomość tekstową.
Aktualne efekty
- ArcEffect - Utwórz architektonicznie poprawny łuk cząstek
- AtomEffect - Utwórz orbitalny model atomu
- BigBangEffect - Utwórz dużą grupę fajerwerków
- BleedEffect - Pozwól trafionemu bytowi krwawić
- ConeEffect - Rzuć stożek we wszystkich możliwych kierunkach
- EarthEffect - Utwórz model Ziemi
- DnaEffect - Utwórz cząsteczkę DNA
- ExplodeEffect - Utwórz wybuch w lokalizacji
- FlameEffect - Pozwól, aby trafiony byt płonął
- FountainEffect - Utwórz fontannę dla Ciebie
- GridEffect - Konfigurowalna siatka dla Twojej ściany z podpisami
- HelixEffect - Utwórz konfigurowalną statyczną helisę
- JumpEffect - Zmusza encję do naturalnego skoku
- LineEffect - Rysuj linię od A do B
- LoveEffect - Celna encja jest zakochana
- MusicEffect - Koło nut pojawia się nad encją
- MusicEffect - Koło nut pojawia się w lokalizacji
- ShieldEffect - Sferyczna osłona wokół encji
- SkyRocketEffect - Zmusza encję do lotu w niebo
- SmokeEffect - Pozwól, aby celna encja wydalał dym
- StarEffect - Utwórz w pełni konfigurowalną gwiazdę 3D
- TextEffect - Utwórz tekst cząstkowy z niestandardową czcionką, rozmiarem i treścią
- TraceEffect - Utwórz ślad wzdłuż ścieżki encji
- TurnPlayerEffect - Zmusza gracza do obracania się w kółko
- VortexEffect - Utwórz wir cząstek w lokalizacji
- WarpEffect - Utwórz efekt warp wokół encji
- WaveEffect - Utwórz fale z falowaniem
- Feel free to send me your effects if you have coded up some custom ones of your own!
Wszystkie efekty mogą być zmieniane. Pozwól, aby efekt powtarzał się, wydłuż czas trwania lub zmień okres iteracji.
Wszystkie efekty będą działać po dołączeniu do stałej lokalizacji, lub do Encji. Jeśli podane są oba, zostanie on podłączony do docelowej lokalizacji, ale porusza się razem z encją (świetne do oznaczania miejsc trafień lub przypinania do głowy encji lub innej części ciała!).
Źródło
Pobierz źródło na GitHub!
Opis projektu pochodzi z CurseForge i został udostępniony po polsku. Szczegóły konfiguracji, zależności oraz aktualne komunikaty autora sprawdź na w źródłowym katalogu CurseForge.
EffectLib-3.8.jar 04.12.2015 130 KB
EffectLib-3.6.jar 19.10.2015 200 KB
EffectLib-3.5.jar 14.10.2015 128 KB
EffectLib-3.2.jar 22.04.2015 198 KB
EffectLib-1.5-SNAPSHOT.jar 01.07.2014 90 KB
EffectLib.jar 27.04.2014 126 KB
EffectLib.jar 26.04.2014 109 KB
EffectLib.jar 24.04.2014 45 KB
EffectLib.jar 23.04.2014 39 KB
EffectLib.jar 22.04.2014 32 KB
EffectLib.jar 22.04.2014 32 KB
EffectLib.jar 22.04.2014 27 KB
EffectLib.jar 21.04.2014 25 KB
EffectLib.jar 21.04.2014 15 KB
Jak bezpiecznie sprawdzić ten plugin
Wybierz zgodny plik
Oznaczenia wersji pochodzą z metadanych autora. Dobierz również właściwe oprogramowanie serwera i Javę.
Zachowaj kopię
Przed pierwszym startem skopiuj świat, konfigurację oraz dane pozostałych pluginów.
Przeczytaj log
Po uruchomieniu sprawdź brakujące zależności i pierwszy błąd związany z nazwą pluginu.