bukkit
Podmioty
Szukaj…
Teleportacja bytu do innego bytu
Entity entity; //The entity you want to teleport
Entity teleportTo; //The entity where you want <entity> to be teleported to
boolean success = entity.teleport(teleportTo); //Attempting to teleport.
if(success) {
//Teleport was successful
}else {
//Teleport wasn't successful
}
Możesz także dodać przyczynę do swojego teleportu, aby dostosować sposób, w jaki Twoja przyczyna będzie traktowana przez wtyczkę lub inne osoby:
Entity entity; //The entity you want to teleport
Entity teleportTo; //The entity where you want <entity> to be teleported to
PlayerTeleportEvent.TeleportCause cause; //The cause you want the teleport to be of
boolean success = entity.teleport(teleportTo, cause); //Attempting to teleport.
if(success) {
//Teleport was successful
}else {
//Teleport wasn't successful
}
Teleportacja bytu do lokalizacji
Entity toBeTeleported; //The entity you want to teleport
Location teleportTo = new Location(world,x,y,z,yaw,pitch); //The location to teleport to
boolean success = toBeTeleported.teleport(teleportTo);
if(success) {
//Teleport was successful
}else {
//Teleport wasn't successful
}
Możesz także dodać przyczynę do swojego teleportu, aby dostosować sposób, w jaki Twoja przyczyna będzie traktowana przez wtyczkę lub inne osoby:
Entity toBeTeleported; //The entity you want to teleport
Location teleportTo = new Location(world,x,y,z,yaw,pitch); //The location to teleport to
PlayerTeleportEvent.TeleportCause cause; //The cause you want the teleport to be of
boolean success = toBeTeleported.teleport(teleportTo, cause);
if(success) {
//Teleport was successful
}else {
//Teleport wasn't successful
}
Typ encji
Wyliczenie EntityType reprezentuje wszystkie byty z Bukkit / Spigot.
Wszystkie jego wartości można znaleźć poniżej.
Wartość | Opis |
---|---|
AREA_EFFECT_CLOUD | Nie dotyczy |
ARMOR_STAND | Mechaniczny byt z ekwipunkiem do umieszczania broni / zbroi. |
STRZAŁKA | Pocisk strzały; może utknąć w ziemi. |
NIETOPERZ | Nie dotyczy |
PŁOMIEŃ | Nie dotyczy |
ŁÓDŹ | Miejsce łódź |
PAJĄK JASKINIOWY | Nie dotyczy |
KURCZAK | Nie dotyczy |
COMPLEX_PART | Nie dotyczy |
KROWA | Nie dotyczy |
PNĄCZE | Nie dotyczy |
DRAGON_FIREBALL | Jak FIREBALL, ale z dodatkowymi efektami |
DROPPED_ITEM | Przedmiot spoczywa na ziemi. |
JAJKO | Latające jajo kurze. |
ENDER_CRYSTAL | Nie dotyczy |
ENDER_DRAGON | Nie dotyczy |
PERŁA KRESU | Perła latającego endera. |
ENDER_SIGNAL | Sygnał końca oka. |
ENDERMAN | Nie dotyczy |
ENDERMITE | Nie dotyczy |
EXPERIENCE_ORB | Kula doświadczenia. |
FALLING_BLOCK | Blok, który idzie lub ma upaść. |
KULA OGNIA | Latająca duża kula ognia, na przykład rzucona przez Ghasta. |
SZTUCZNE OGNIE | Wewnętrzna reprezentacja fajerwerków po ich uruchomieniu. |
HACZYK NA RYBY | Żyłka i spławik. |
GHAST | Nie dotyczy |
OGROMNY | Nie dotyczy |
OPIEKUN | Nie dotyczy |
KOŃ | Nie dotyczy |
ŻELAZNY GOLEM | Nie dotyczy |
RAMKA_PLIKU | Rama przedmiotu na ścianie. |
LEASH_HITCH | Smycz przymocowana do słupka ogrodzeniowego. |
BŁYSKAWICA | Piorun. |
LINGERING_POTION | Latająca mikstura trwała |
KOSTKA MAGMY | Nie dotyczy |
MINECART | Nie dotyczy |
MINECART_CHEST | Nie dotyczy |
MINECART_COMMAND | Nie dotyczy |
MINECART_FURNACE | Nie dotyczy |
MINECART_HOPPER | Nie dotyczy |
MINECART_MOB_SPAWNER | Nie dotyczy |
MINECART_TNT | Nie dotyczy |
MUSHROOM_COW | Nie dotyczy |
OCELOT | Nie dotyczy |
OBRAZ | Obraz na ścianie. |
ŚWINIA | Nie dotyczy |
PIG_ZOMBIE | Nie dotyczy |
GRACZ | Nie dotyczy |
NIEDŹWIEDŹ POLARNY | Nie dotyczy |
PRIMED_TNT | Zagruntowany TNT, który zaraz wybuchnie. |
KRÓLIK | Nie dotyczy |
OWCA | Nie dotyczy |
SHULKER | Nie dotyczy |
SHULKER_BULLET | Kula wystrzelona przez SHULKERA. |
SREBRNE RYBY | Nie dotyczy |
SZKIELET | Nie dotyczy |
SZLAM | Nie dotyczy |
SMALL_FIREBALL | Latająca mała ognista kula, na przykład rzucona przez Blaze lub gracza. |
ŚNIEŻNA KULA | Latająca śnieżka. |
BAŁWAN | Nie dotyczy |
SPECTRAL_ARROW | Jak TIPPED_ARROW, ale powoduje efekt PotionEffectType.GLOWING na wszystkich członkach zespołu. |
PAJĄK | Nie dotyczy |
SPLASH_POTION | Latająca mikstura rozbryzgowa |
KAŁAMARNICA | Nie dotyczy |
THROWN_EXP_BOTTLE | Butelka do latania. |
TIPPED_ARROW | Jak STRZAŁKA, ale zakończona specjalną miksturą, którą nakłada się w kontakcie. |
NIEZNANY | Nieznany byt bez klasy encji |
WIEŚNIAK | Nie dotyczy |
POGODA | Nie dotyczy |
CZAROWNICA | Nie dotyczy |
USCHNĄĆ | Nie dotyczy |
WITHER_SKULL | Latający pocisk czaszki. |
WILK | Nie dotyczy |
ZAMBI | Nie dotyczy |
Pasażer
Podmioty mogą mieć pasażerów. Dobrym przykładem pasażera jest Gracz jeżdżący na osiodłanej świni lub zombie wewnątrz wózka.
Chociaż istnieją określone pojazdy, każda jednostka może być pojazdem dla dowolnej innej jednostki za pomocą metody SetPassenger.
Entity vehicle;
Entity passenger;
boolean result = vehicle.setPassenger(passenger); //False if couldn't be done for whatever reason
Pasażer powinien teraz być przymocowany do pojazdu
Możesz sprawdzić, czy jednostka korzysta z pasażera
boolean hasPassenger = entity.isEmpty()
Jeśli jednostka ma pasażera, możesz pobrać jednostkę pasażera za pomocą
Entity passenger = entity.getPassenger();
Zwróci głównego pasażera tylko wtedy, gdy pojazd może mieć wielokrotności.
Wreszcie możesz wysunąć pasażera bytu za pomocą
boolean b = entity.eject(); //Eject all passengers - returns true if there was a passenger to be ejected
Pobliskie jednostki
Aby pobrać listę pobliskich bytów jednostki, można użyć
List<Entity> nearby = entity.getNearbyEntities(double x, double y, double z);
Bukkit następnie obliczy obwiednię wyśrodkowaną wokół bytu, posiadając jako parametry:
- x: 1/2 rozmiaru pudełka wzdłuż osi x
- y: 1/2 rozmiaru pudełka wzdłuż osi y
- z: 1/2 rozmiaru pudełka wzdłuż osi z
Lista może być pusta, co oznacza, że nie ma pobliskich jednostek z parametrami.
Takie podejście można wykorzystać do wykrywania bytów w pobliżu niestandardowych pocisków, na przykład uruchamiania stosu przedmiotów i wykrywania, kiedy zderzy się z graczem