Killerek01 10 Opublikowano 8 marca 2017 Udostępnij Opublikowano 8 marca 2017 Witam, jest początkowym pisarzem pluginów i mam problem. Oto kod Spoiler import org.bukkit.Material; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerItemConsumeEvent; import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffectType; public class OnEat implements Listener { public void onConsume(PlayerItemConsumeEvent e) { if (e.getItem().getType().equals(Material.GOLDEN_APPLE)); e.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 2000, 1)); e.getPlayer().sendMessage("Zjedzono coksa <3"); } } UWAGA! Zainportowałem itp Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 KrejzolekPRO 599 Opublikowano 8 marca 2017 Udostępnij Opublikowano 8 marca 2017 (edytowane) package me.krejzolekpro.antytnt; import org.bukkit.Material; import org.bukkit.event.player.PlayerItemConsumeEvent; import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffectType; public class Main extends JavaPlugin { public void onConsume(PlayerItemConsumeEvent e) { if (e.getItem().getType().equals(Material.GOLDEN_APPLE)); e.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 2000, 1)); e.getPlayer().sendMessage("Nie polizales!"); } } Proszę. Edytowane 8 marca 2017 przez KrejzolekPRO Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Libter 1602 Opublikowano 8 marca 2017 Udostępnij Opublikowano 8 marca 2017 @KrejzolekPRO kod gorszy od oryginału - błąd nadal istnieje, a dodatkowo Listener nie został zarejestrowany. Co do tematu - zamień: if (e.getItem().getType().equals(Material.GOLDEN_APPLE)); e.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 2000, 1)); e.getPlayer().sendMessage("Zjedzono coksa <3"); } na if (e.getItem().getType().equals(Material.GOLDEN_APPLE)) { e.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 2000, 1)); e.getPlayer().sendMessage("Zjedzono coksa <3"); } I następnym razem wypadałoby podać kod oraz opis błędu zamiast samego kodu. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 TheMolkaPL 344 Opublikowano 10 marca 2017 Udostępnij Opublikowano 10 marca 2017 Nie możesz zapomnieć o dodaniu adnotacji Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść! do metody naszego słuchacza (listenera). Dzięki temu Bukkit będzie wiedział, że przy poszukiwaniu słuchaczy w klasie weźmie pod uwagę właśnie tą metodę. Dodatkowo Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść! jest złotym jabłkiem regenerującym zdrowie. Złote jabłko blokujący zadawanie nam uderzeń (damage) ma sub-ID 1. To oznacza, że musisz dodatkowo się upewnić, że sprawdzany przedmiot w ifie ma sub-ID 1. Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść! Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Killerek01 10 Opublikowano 10 marca 2017 Autor Udostępnij Opublikowano 10 marca 2017 Dnia 8.03.2017 o 20:53, Libter napisał: @KrejzolekPRO kod gorszy od oryginału - błąd nadal istnieje, a dodatkowo Listener nie został zarejestrowany. Co do tematu - zamień: if (e.getItem().getType().equals(Material.GOLDEN_APPLE)); e.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 2000, 1)); e.getPlayer().sendMessage("Zjedzono coksa <3"); } na if (e.getItem().getType().equals(Material.GOLDEN_APPLE)) { e.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 2000, 1)); e.getPlayer().sendMessage("Zjedzono coksa <3"); } I następnym razem wypadałoby podać kod oraz opis błędu zamiast samego kodu. Błędu w consoli nie było ;-) A podałem jedną klase bo to jedna z mojego ala cora. Dnia 10.03.2017 o 01:30, TheMolkaPL napisał: Nie możesz zapomnieć o dodaniu adnotacji Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść! do metody naszego słuchacza (listenera). Dzięki temu Bukkit będzie wiedział, że przy poszukiwaniu słuchaczy w klasie weźmie pod uwagę właśnie tą metodę. Dodatkowo Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść! jest złotym jabłkiem regenerującym zdrowie. Złote jabłko blokujący zadawanie nam uderzeń (damage) ma sub-ID 1. To oznacza, że musisz dodatkowo się upewnić, że sprawdzany przedmiot w ifie ma sub-ID 1. Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść! Pomógłbyś mi? z tym sprawdzaniem? masz tu cała klase: Spoiler package pl.killerek.xfosahc.core.listeners; import org.bukkit.Material; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerItemConsumeEvent; import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffectType; public class OnEat implements Listener { @EventHandler public void onConsume(PlayerItemConsumeEvent e) { if (e.getItem().getType().equals(Material.GOLDEN_APPLE)) { e.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 2000, 1)); e.getPlayer().sendMessage("Zjedzono coksa <3"); } } } @Topic I po zjedzeniu nadal nie dodaje mi efektu. Łączę //xVendrome Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Usunięty#8909 0 Opublikowano 12 marca 2017 Udostępnij Opublikowano 12 marca 2017 A zarejestrowałeś tego swojego listenera? XD Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Killerek01 10 Opublikowano 13 marca 2017 Autor Udostępnij Opublikowano 13 marca 2017 21 godzin temu, CriSSuFM napisał: A zarejestrowałeś tego swojego listenera? XD Nie w ogóle xDDD Dnia 8.03.2017 o 20:53, Libter napisał: @KrejzolekPRO kod gorszy od oryginału - błąd nadal istnieje, a dodatkowo Listener nie został zarejestrowany. Co do tematu - zamień: if (e.getItem().getType().equals(Material.GOLDEN_APPLE)); e.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 2000, 1)); e.getPlayer().sendMessage("Zjedzono coksa <3"); } na if (e.getItem().getType().equals(Material.GOLDEN_APPLE)) { e.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 2000, 1)); e.getPlayer().sendMessage("Zjedzono coksa <3"); } I następnym razem wypadałoby podać kod oraz opis błędu zamiast samego kodu. A czy mógłbyś mi pomóc jak zrobić że jak zje koxa? Bo jak zje refila to też doda efekt speed. Proszę o odpowiedz. Łączę //xVendrome Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 TheMolkaPL 344 Opublikowano 13 marca 2017 Udostępnij Opublikowano 13 marca 2017 2 godziny temu, Killerek01 napisał: Nie w ogóle xDDD A czy mógłbyś mi pomóc jak zrobić że jak zje koxa? Bo jak zje refila to też doda efekt speed. Proszę o odpowiedz. Łączę //xVendrome Sub-ID przedmiotów zapisywane jest jako durability (zniszczenie) - głupota Notcha. Musisz pobrać durability sprawdzanego przedmiotu i upewnić się, że jest one równe 1. Mam nadzieję, że pomogłem Towarzyszu Killerek01 1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Killerek01 10 Opublikowano 14 marca 2017 Autor Udostępnij Opublikowano 14 marca 2017 13 godzin temu, TheMolkaPL napisał: Sub-ID przedmiotów zapisywane jest jako durability (zniszczenie) - głupota Notcha. Musisz pobrać durability sprawdzanego przedmiotu i upewnić się, że jest one równe 1. Mam nadzieję, że pomogłem Towarzyszu aa Dzięki Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Killerek01 10 Opublikowano 14 marca 2017 Autor Udostępnij Opublikowano 14 marca 2017 @TheMolkaPL import org.bukkit.Material; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerItemConsumeEvent; import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffectType; public class OnEatListener implements Listener { @EventHandler public void onConsume(PlayerItemConsumeEvent e) { if (e.getItem().getType().equals(Material.GOLDEN_APPLE)) if (e.getItem().getType() == Material.GOLDEN_APPLE && e.getItem().getDurability() == 0) { e.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 200, 1)); e.getPlayer().sendMessage("Zjedzono coksa <3"); } } } Coś takiego? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 TheMolkaPL 344 Opublikowano 14 marca 2017 Udostępnij Opublikowano 14 marca 2017 Proletariuszu, dlaczego sprawdzasz dwa razy getType()? Poza tym sprawdzasz czy jego sub-ID to 0, a więc jest zwykłym złotym jabłkiem, więc nie jest ulepszonym. Czerwone Pozdrowienia Towarzyszu Killerek01 1 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
0 Killerek01 10 Opublikowano 16 marca 2017 Autor Udostępnij Opublikowano 16 marca 2017 Dziękuje za pomoc. Do zamknięcia. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Pytanie
Killerek01 10
Witam, jest początkowym pisarzem pluginów i mam problem.
Oto kod
import org.bukkit.Material;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerItemConsumeEvent;
import org.bukkit.potion.PotionEffect;
import org.bukkit.potion.PotionEffectType;
public class OnEat
implements Listener {
public void onConsume(PlayerItemConsumeEvent e) {
if (e.getItem().getType().equals(Material.GOLDEN_APPLE));
e.getPlayer().addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 2000, 1));
e.getPlayer().sendMessage("Zjedzono coksa <3");
}
}
UWAGA! Zainportowałem itp
Odnośnik do komentarza
Udostępnij na innych stronach
11 odpowiedzi na to pytanie
Rekomendowane odpowiedzi