-
Ilość zawartości
417 -
Rejestracja
-
Ostatnia wizyta
-
Wygrane w rankingu
8
Treść opublikowana przez Queito
-
command /voucher <player>: command /voucher [<player>]: @edit on right click on peper: on rightclick on paper
-
give 1 paper named "&6&lVoucher na VIPA" to player-arg
-
usuń te "puste linijki" od lewej strony, i kliknij 4x spacje w tej linicje od lewej strony
-
expected 4 spaces, but found 1 tab wiesz co robić
-
po założeniu (dodatek to umożliwia) lub jak nie chcesz dodatku to every x seconds ustawiasz zmienna np {_lore1} i w niej set to uncolored lore line 1 (musisz znalezc) potem splitujesz ": ", jak pamietam to chyba set {_lore1::*} to {_lore1} to split at ": " Czyli będzie {_lore1::1} - Sila, {_lore1::2} - 5 (tylko nie wiem czy trzeba zloopowac zmienna ::* set {_lore1} to {_lore1::2} parsed as number (lub integer) no i ustawiasz np. set {%player%.sila} to {%player%.sila}+{_lore1} jak beda bledy to pisz
-
Moglibyście mi napisać przykładowego Maina & Listerna, jak ma to wyglądać przy sprawdzaniu np. poziomu z yml gracza? tak samo z zapisaniem z ustawien bo nie rozumiem tego, w sensie żeby było optymalnie @edit ogolnie ten blad z podwojnym wykonywaniem sie eventu, ogarnalem
-
public class Listeners implements Listener{ @EventHandler public void PlayerRightClick(PlayerInteractEntityEvent e){ if(!(e.getRightClicked() instanceof Villager)){ return; } else { if(e.getRightClicked().getCustomName().equalsIgnoreCase("Wojownik")){ clickedEntity(e.getPlayer(), "Wojownik", e.getRightClicked().getLocation()); e.setCancelled(true); } else if (e.getRightClicked().getCustomName().equalsIgnoreCase("Mag")){ clickedEntity(e.getPlayer(), "Mag", e.getRightClicked().getLocation()); e.setCancelled(true); } else if (e.getRightClicked().getCustomName().equalsIgnoreCase("Lowca")){ clickedEntity(e.getPlayer(), "Lowca", e.getRightClicked().getLocation()); e.setCancelled(true); } } return; } private void clickedEntity(Player player, String string, Location loc){ File f = new File("plugins/VarRPG/Players/" + player.getPlayer().getName() + ".yml"); YamlConfiguration yamlFile = YamlConfiguration.loadConfiguration(f); if(yamlFile.getInt("Postac.Poziom") >= 5){ if(yamlFile.getString("Postac.Klasa") == null|| yamlFile.getString("Postac.Klasa") == "Proces tworzenia"||yamlFile.getString("Postac.Klasa") == "Chuj"){ yamlFile.set("Postac.Klasa", "Proces tworzenia"); File q = new File("plugins/VarRPG/Dialogi.yml"); YamlConfiguration fFile = YamlConfiguration.loadConfiguration(q); for(String msg : fFile.getStringList("Rozmowa_" + string)) { if(player.getLocation().distance(loc) <= 5){ player.sendMessage(msg); } else { player.sendMessage("Musisz podejsc blizej!"); return; } } } } } } Robiąc plugin na klasy, mam problem. Próbując 2h szukać rozwiązania, nie udało się. Problem jest taki, że po kliknięciu na villagera, podwaja się wiadomość (msg). Tak po drodze, jakieś wskazówki na lepszy kod :P?
-
Myślę, że można zamknąć. Dziena @GotoFinal.
-
Cześć, od wczoraj zacząłem pisać pluginy, bo postanowiłem się rozstać od tego niedziałającego skriptu. Mam problem, otóż: public class Main extends JavaPlugin{ public static boolean status = false; public void onEnable(){ System.out.println("GoodChat zostal wlasnie uruchomiony..."); } public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args){; if(cmd.getName().equalsIgnoreCase("chat")){ if(args.length > 0){ if(args[0].equalsIgnoreCase("clear")){ for(Player player : Bukkit.getServer().getOnlinePlayers()){ if(player instanceof Player){ for(int x = 0; x<=100; x++){ player.sendMessage(""); } Bukkit.getServer().broadcastMessage("Chat zostal wyczyszczony!"); } } } else if(args[0].equalsIgnoreCase("off")){ if(status == false){ status = true; Bukkit.getServer().broadcastMessage("Chat zostal wylaczony!"); } else{ sender.sendMessage("Chat juz jest wylaczony!"); } } else if(args[0].equalsIgnoreCase("on")) if(status == true){ status = false; Bukkit.getServer().broadcastMessage("Chat zostal wlaczony!"); } else{ sender.sendMessage("Chat juz jest wlaczony!"); } } } return false; } @EventHandler(priority=EventPriority.HIGHEST) public void onChat(AsyncPlayerChatEvent e){ if(status == true){ e.setCancelled(true); e.getPlayer().sendMessage("Chat jest wylaczony!"); } } } I mam taki problem, że jeżeli chat jest wyłączony to nadal można pisać na nim, o co biega?
-
loop all items in the player's inventory: repair loop-item
-
Kupić serwer testowy
-
Tak naprawdę, w tym skrypcie nie ma oceniać bo jedynie co w tym jest, to GUI oraz komendy... Masz + za robotę. Według mnie mogłeś to zrobić pod komendą np. /kupno. I w tym kilka argumentów w typie text oraz int, czyli. command /kupno [<text>] [<integer>]. 1 Argument należy do podania rangi, np. Vip/Svip, a drugi argument do podania liczby dni. A argumenty można wykorzystać w send/broadcast/w innych przypadkach w %arg 1%/%arg 2%. Pozdrawiam
-
narzędzie tYAML- Dodatek Do Łatwiejszej Obsługi Plików YAML
Queito odpowiedział(a) na ToffikTV temat w Dodatki i narzędzia
Dobrze pisze, on zapisuje ciągle zmienne w typie string używając "xx", i osoba która będzie zapisywać zmienne przez ten Skrypt będzie musiał parsować na typ int. Oczywiście tylko wtedy kiedy będzie chciała wykonać operacje matematyczne . No chyba, że pomyśli i stworzy funkcje np. setValueInt która będzie przechowywać zmienne w typie int/float. Uczymy się na błędach niestety. -
options: gracze = 7 na options: gracze: 7
-
Masz najprostszy skrypt w zapisie CSV, on rightclick on nitwit: #Nitwity, nie otwieraja nam opcji handlu :D if name of nitwit is "Pan od zadan": if {misja1::%player%} is not set: set {misja1::%player%} to 0 if {misja1::%player%} is 20: send "Brawo! Wykonales swoja pierwsza misje!" to player on death of zombie: if attacker is a player: add 1 to {misja1::%attacker%} command /stworz: trigger: spawn Nitwit at location of player set name of last spawned Nitwit to "Pan od zadan" Oczywiście masz tutaj najprostszy skrypt na to. Sam możesz zrobić, że po kliknięciu na Nitwita, otwiera się GUI, a w niej lista zadań, albo na chacie, że po kliknięciu na chacie na daną wiadomość przyjmujemy ją. Pomysłów jest mnóstwo, powodzenia
-
Sprawdź, ale prawdopodobnie będzie trzeba mieć SkQuery ;p set {_text} to text from "https://api.mojang.com/users/profiles/minecraft/SzataNN" command /sprawdz [<text>]: trigger: if arg 1 is set: set {_text} to text from "https://api.mojang.com/users/profiles/minecraft/%arg 1%" send "&7Info: &6%{_text}%" to player else: send "Podaj nick gracza!" to player
-
on damage: if attacker is a player: if attacker's gamemode is survival: if name of attacker's tool is "Miecz boguf": if {lvl::%attacker%} <= 5: cancel event send "&7Masz za niski poziom, zeby uzyc tego przedmiotu!" to attacker Sprawdź ;p
-
Moim skromnym zdaniem, jeżeli jesteś początkującym skrypterem, powinieneś napisać skrypt który już pojawił się nie raz w internecie, po to żebyś podpatrzył sobie kod jeżeli czegoś byś nie znał, ponieważ skrypty których jeszcze nie ma w internecie, są bardzo ciężkie do napisania dla początkującego, bo same lajtowe skrypty już były napisane. Więc radzę Ci pokombinować i napisać pare skryptów Coś z dropem/Zabawa z zmiennymi/Zabawa z potworami/Zabawa z blokami itd., po tym możesz zacząć się uczyć wszystko razem, i sam pomysł wejdzie Ci do głowy ;).
-
Nie prościej i optymalniej zamiast: set {_group} to yaml value "Ranks.%player%.group" from file "plugins/jmsRanks/config.yml" if {_group} contains "Gracz": broadcast "&7%player% &8>> &7%message%" na: if yaml value "Ranks.%player%.group" from file "plugins/jmsRanks/config.yml" is "Gracz": broadcast "&7%player% &8>> &7%message%" itd?
-
https://code.skript.pl/D6Nk9EgQ
-
Wyjaśnij mi działanie skryptu dokładnie to go napiszę od zera, bo nie jestem wstanie ogarnąć co twój skrypt robi ;p
-
Na nazwany blok chyba się nie da, mogę to zrobić za pomocą loopowania bloków
