Peridot 512 Opublikowano 30 sierpnia 2017 Udostępnij Opublikowano 30 sierpnia 2017 (edytowane) Witam Pisze sobie cora i nie mam pomysłu do czego wykorzystać actionbara Za każdą odpowiedź która mi się spodoba daje repa Edytowane 30 sierpnia 2017 przez McKoxu Odnośnik do komentarza https://skript.pl/temat/21220-u%C5%BCycie-actionbara/ Udostępnij na innych stronach Więcej opcji udostępniania...
Nieaktywny Opublikowano 30 sierpnia 2017 Udostępnij Opublikowano 30 sierpnia 2017 1. Ostrzeżenie (warny) 2. Wejście na dany teren np spawn 3. Antylogout 4. Odliczanie czasu teleportacji Odnośnik do komentarza https://skript.pl/temat/21220-u%C5%BCycie-actionbara/#findComment-144162 Udostępnij na innych stronach Więcej opcji udostępniania...
jaku49 691 Opublikowano 30 sierpnia 2017 Udostępnij Opublikowano 30 sierpnia 2017 1. Antylogout 2. Wejscie/wyjscie na teren kogos 3. Licznik czasu Peridot 1 Odnośnik do komentarza https://skript.pl/temat/21220-u%C5%BCycie-actionbara/#findComment-144164 Udostępnij na innych stronach Więcej opcji udostępniania...
Bielecki 279 Opublikowano 30 sierpnia 2017 Udostępnij Opublikowano 30 sierpnia 2017 ilość botów na serwerze procent ukończenia serwera zegar hp tpsy ping głód odliczanie czasu do następnego końca świata Peridot i jaku49 1 1 Odnośnik do komentarza https://skript.pl/temat/21220-u%C5%BCycie-actionbara/#findComment-144190 Udostępnij na innych stronach Więcej opcji udostępniania...
Peridot 512 Opublikowano 30 sierpnia 2017 Autor Udostępnij Opublikowano 30 sierpnia 2017 (edytowane) 5 minut temu, Bielecki napisał: ilość botów na serwerze procent ukończenia serwera zegar hp tpsy ping głód odliczanie czasu do następnego końca świata Zrobię tylko ostatni punkt Edytowane 30 sierpnia 2017 przez McKoxu Bielecki 1 Odnośnik do komentarza https://skript.pl/temat/21220-u%C5%BCycie-actionbara/#findComment-144191 Udostępnij na innych stronach Więcej opcji udostępniania...
Nieaktywny Opublikowano 30 sierpnia 2017 Udostępnij Opublikowano 30 sierpnia 2017 Bossbar public class Bossbar { private static HashMap<Player, EntityEnderDragon> HealthBars = new HashMap<Player, EntityEnderDragon>(); public static boolean hasBar(Player p) { if(HealthBars.containsKey(p)) return true; return false; } public static boolean displayBar(Player player, String text, int time){ if(hasBar(player)) return false; Location loc = player.getLocation(); WorldServer world = ((CraftWorld) player.getLocation().getWorld()).getHandle(); EntityEnderDragon dragon = new EntityEnderDragon(world); dragon.setLocation(loc.getX(), -200, loc.getZ(), 0, 0); dragon.setCustomName(text); dragon.setInvisible(true); HealthBars.put(player, dragon); Packet packet = new PacketPlayOutSpawnEntityLiving(dragon); ((CraftPlayer) player).getHandle().playerConnection.sendPacket(packet); update(player,time,200); return true; } public static boolean displayBar(Player player, String text, int time, int startHP){ if(hasBar(player)) return false; Location loc = player.getLocation(); WorldServer world = ((CraftWorld) player.getLocation().getWorld()).getHandle(); EntityEnderDragon dragon = new EntityEnderDragon(world); dragon.setLocation(loc.getX(), -200, loc.getZ(), 0, 0); dragon.setCustomName(text); dragon.setInvisible(true); HealthBars.put(player, dragon); Packet packet = new PacketPlayOutSpawnEntityLiving(dragon); ((CraftPlayer) player).getHandle().playerConnection.sendPacket(packet); update(player,time,startHP); return true; } private static void update(Player p, int time, int hp) { new BukkitRunnable(){ int health = hp; int remove = health/time; @Override public void run(){ if(!HealthBars.containsKey(p)) { this.cancel(); } Location loc = p.getLocation(); if(health > 0){ health = health-remove; EntityEnderDragon dragon = HealthBars.get(p); dragon.setLocation(loc.getX() - 30, -200, loc.getZ(), 0, 0); dragon.setHealth((float) health); Packet packet = new PacketPlayOutSpawnEntityLiving(dragon); ((CraftPlayer) p).getHandle().playerConnection.sendPacket(packet); } else { PacketPlayOutEntityDestroy packet = new PacketPlayOutEntityDestroy(HealthBars.get(p).getBukkitEntity().getEntityId()); ((CraftPlayer) p).getHandle().playerConnection.sendPacket(packet); HealthBars.remove(p); this.cancel(); } } }.runTaskTimer(rhDrop.getInst(), 20, 20); } } Odnośnik do komentarza https://skript.pl/temat/21220-u%C5%BCycie-actionbara/#findComment-144265 Udostępnij na innych stronach Więcej opcji udostępniania...
jaku49 691 Opublikowano 30 sierpnia 2017 Udostępnij Opublikowano 30 sierpnia 2017 26 minut temu, Inder00 napisał: Bossbar public class Bossbar { private static HashMap<Player, EntityEnderDragon> HealthBars = new HashMap<Player, EntityEnderDragon>(); public static boolean hasBar(Player p) { if(HealthBars.containsKey(p)) return true; return false; } public static boolean displayBar(Player player, String text, int time){ if(hasBar(player)) return false; Location loc = player.getLocation(); WorldServer world = ((CraftWorld) player.getLocation().getWorld()).getHandle(); EntityEnderDragon dragon = new EntityEnderDragon(world); dragon.setLocation(loc.getX(), -200, loc.getZ(), 0, 0); dragon.setCustomName(text); dragon.setInvisible(true); HealthBars.put(player, dragon); Packet packet = new PacketPlayOutSpawnEntityLiving(dragon); ((CraftPlayer) player).getHandle().playerConnection.sendPacket(packet); update(player,time,200); return true; } public static boolean displayBar(Player player, String text, int time, int startHP){ if(hasBar(player)) return false; Location loc = player.getLocation(); WorldServer world = ((CraftWorld) player.getLocation().getWorld()).getHandle(); EntityEnderDragon dragon = new EntityEnderDragon(world); dragon.setLocation(loc.getX(), -200, loc.getZ(), 0, 0); dragon.setCustomName(text); dragon.setInvisible(true); HealthBars.put(player, dragon); Packet packet = new PacketPlayOutSpawnEntityLiving(dragon); ((CraftPlayer) player).getHandle().playerConnection.sendPacket(packet); update(player,time,startHP); return true; } private static void update(Player p, int time, int hp) { new BukkitRunnable(){ int health = hp; int remove = health/time; @Override public void run(){ if(!HealthBars.containsKey(p)) { this.cancel(); } Location loc = p.getLocation(); if(health > 0){ health = health-remove; EntityEnderDragon dragon = HealthBars.get(p); dragon.setLocation(loc.getX() - 30, -200, loc.getZ(), 0, 0); dragon.setHealth((float) health); Packet packet = new PacketPlayOutSpawnEntityLiving(dragon); ((CraftPlayer) p).getHandle().playerConnection.sendPacket(packet); } else { PacketPlayOutEntityDestroy packet = new PacketPlayOutEntityDestroy(HealthBars.get(p).getBukkitEntity().getEntityId()); ((CraftPlayer) p).getHandle().playerConnection.sendPacket(packet); HealthBars.remove(p); this.cancel(); } } }.runTaskTimer(rhDrop.getInst(), 20, 20); } } To na 100% tutaj? Odnośnik do komentarza https://skript.pl/temat/21220-u%C5%BCycie-actionbara/#findComment-144267 Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi