-
Ilość zawartości
2190 -
Rejestracja
-
Ostatnia wizyta
-
Wygrane w rankingu
3
Treść opublikowana przez KrejzolekPRO
-
Zabezpiecz to jakoś, bo wyrzuci serwer w trakcie tych 1800 sekund i blok zostanie... options: tag: &7[&aAnti-Grif&7] >> on place of cobblestone: set {grifc::%event-block%} to location of event-block send "{@tag} &cTen Blok zniknie po 30min od postawienia!" wait 1800 seconds clear {grifc::%event-block%} set event-block to air on unload: loop {grifc::*}: set block at (loop-value parsed as location) to air clear {grifc::%loop-value%}
-
W sensie? set {_lista::*} to yaml value list "yaml.lista" from file "plugins/YamlFile" set {_x} to 0 loop {_lista::*}: set {wiadomosc::%{_x}%} to loop-value add 1 to {_x}
-
Dzięki bardzo, wszystko działa!
-
Chodzi ci o listę? set {_lista::*} to yaml value list "yaml.lista" from file "plugins/YamlFile" yaml: lista: - '1' - '2' - '3 itd.'
-
No taki ma zadania właśnie debug, chodzi ci o to? RawBlockUtil.blockList.remove(rawBlock); @LloydPL no tak, tylko że ja najpierw zapętlam go, a dopiero potem usuwam, więc nie operuje na znikomym obiekcie.
-
Mam sobie obiekt RawBlock: public class RawBlock { private Location location; private Material block; private Long time; public RawBlock(Location location, Material block, Long time){ this.location = location; this.block = block; this.time = time; RawBlockUtil.add(this); } public Location getLocation() { return location; } public Material getBlock() { return block; } public Long getTime() { return time; } } I mam do niego klase RawBlockUtil: public class RawBlockUtil { public static List<RawBlock> blockList = new ArrayList<>(); public static void add(RawBlock block){ for(RawBlock rawBlock : RawBlockUtil.blockList){ if(block.getLocation() == rawBlock.getLocation()){ return; } } RawBlockUtil.blockList.add(block); } public static void remove(RawBlock block){ if(RawBlockUtil.blockList.contains(block)){ RawBlockUtil.blockList.remove(block); } return; } public static Integer debug(){ Integer amount = 0; for(RawBlock rawBlock : RawBlockUtil.blockList){ rawBlock.getLocation().getBlock().setType(rawBlock.getBlock()); RawBlockUtil.blockList.remove(rawBlock); amount++; } return amount; } } Przykładowe tworzenie nowego obiektu: public void onBreak(BlockBreakEvent event) { if(event.getBlock().getType() == Material.IRON_ORE || event.getBlock().getType() == Material.GOLD_ORE || event.getBlock().getType() == Material.DIAMOND_ORE || event.getBlock().getType() == Material.EMERALD_ORE || event.getBlock().getType() == Material.LAPIS_ORE || event.getBlock().getType() == Material.REDSTONE_ORE || event.getBlock().getType() == Material.COAL_ORE){ Player player = event.getPlayer(); long time = player.hasPermission("rawcore.boosters.generator") ? 20*60*30L : 20*60*45L; new RawBlock(event.getBlock().getLocation(), event.getBlock().getType(), time); Kiedy chce wykonać metodę z tym obiektem (np. debug()) to wyrzuca błąd z tą linijką: for(RawBlock rawBlock : RawBlockUtil.blockList) A oto błąd: Unexpected exception while parsing console command "oregenerator zregeneruj" org.bukkit.command.CommandException: Unhandled exception executing command 'oregenerator' in plugin rawCore vv1.1 at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot-1.12.2.jar:git-Spigot-2086bb0-d0a3620] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[spigot-1.12.2.jar:git-Spigot-2086bb0-d0a3620] at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchCommand(CraftServer.java:648) ~[spigot-1.12.2.jar:git-Spigot-2086bb0-d0a3620] at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchServerCommand(CraftServer.java:634) [spigot-1.12.2.jar:git-Spigot-2086bb0-d0a3620] at net.minecraft.server.v1_12_R1.DedicatedServer.aP(DedicatedServer.java:444) [spigot-1.12.2.jar:git-Spigot-2086bb0-d0a3620] at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:407) [spigot-1.12.2.jar:git-Spigot-2086bb0-d0a3620] at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:679) [spigot-1.12.2.jar:git-Spigot-2086bb0-d0a3620] at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:577) [spigot-1.12.2.jar:git-Spigot-2086bb0-d0a3620] at java.lang.Thread.run(Unknown Source) [?:?] Caused by: java.util.ConcurrentModificationException at java.util.ArrayList$Itr.checkForComodification(Unknown Source) ~[?:?] at java.util.ArrayList$Itr.next(Unknown Source) ~[?:?] at pl.krejzolekpro.rawcore.obejcts.utils.RawBlockUtil.debug(RawBlockUtil.java:30) ~[?:?] at pl.krejzolekpro.rawcore.commands.GeneratorCommand.onCommand(GeneratorCommand.java:15) ~[?:?] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[spigot-1.12.2.jar:git-Spigot-2086bb0-d0a3620] ... 8 more Pierwszy raz spotkałem się z takim czymś i nie wiem jak sobie z tym poradzić. Sllnik: Spigot 1.12.2 Java 10.
-
Skoro autorski to dorób sobie do niego chat? Przecież pluginy nie są kompatybilne ze skryptami, jeśli plugin nie wspiera pluginu Skript...
-
świat xSPAWN - Innowacyjny skrypt na /spawn & /setspawn [$]
KrejzolekPRO odpowiedział(a) na VIPEQ temat w Skrypty
Ten kod chyba podchodzi pod niszczenie serwera on any move: loop all players: if {spawn.%loop-player%} is true: set {spawn.%loop-player%} to false Do tego jak już używasz taki kod to zrób go optymalniej (ale hm.. co to może oznaczać?) No więc tak, zamiast zapętlać wszystkich graczy, to zapętl tylko tych których potrzebujesz. Czyli trzeba przepisać zmienne do takiej postaci: {spawn::%player%} on any move: loop {spawn::*}: //reszta I dodatkowo, jeśli zmienna ma zostać ustawiona na false, to dlaczego jej w ogóle nie usuniesz, wtedy dodatkowo miejsce w szufladkach ram się zwolni! -
Musisz porównywać dwa czasy, tzn. Przy odebraniu kita zapisujesz czas jego odebrania do zmiennej np. set {kit::%player%} to now, a przy odbieraniu porównujesz go z aktualnym i albo przepuszczasz kod, albo go "niszczysz".
-
Podaj listę pluginów na obu serwerach.
-
Przecież skrypt knugiego jest bardzo dobry, co ci da napisanie swojego, skoro i tak napiszesz go źle, albo nie będzie posiadał tylu opcji co ma skrypt knugiego?
-
[PILNE!!!] Dlaczego nie dodaje exp?
KrejzolekPRO odpowiedział(a) na TakiJakTy pytanie w Pytania i problemy
Są tak zepsute, że trzeba je zabić. ALBO wykonałeś zabicie tego Zombie? -
[PILNE!!!] Dlaczego nie dodaje exp?
KrejzolekPRO odpowiedział(a) na TakiJakTy pytanie w Pytania i problemy
No to jest jeden wniosek. >Skrypty -
[PILNE!!!] Dlaczego nie dodaje exp?
KrejzolekPRO odpowiedział(a) na TakiJakTy pytanie w Pytania i problemy
A no tak xD on death: if attacker is a player: if victim is a zombie: add 30 to {expo.%attacker%} send "dodalem" to attacker else: send "Nie dziala 2" to attacker else: send "Nie dziala 1" to attacker on death: if victim is a zombie: display name of zombie is "&fZombie &6(Poziom 1)": if attacker is a player: add 10 to {expo.%attacker%} send ">>dziala" to attacker else: send ">>Nie dziala 3" to attacker else: send ">>Nie dziala 2" to attacker else: send ">>Nie dziala 1" to attacker -
[PILNE!!!] Dlaczego nie dodaje exp?
KrejzolekPRO odpowiedział(a) na TakiJakTy pytanie w Pytania i problemy
Zrób taki debuger i pokaż wynik: on death: if attacker is a player: if victim is a zombie: add 30 to {expo.%attacker%} send "dodalem" else: send "Nie dziala 2" else: send "Nie dziala 1" on death: if victim is a zombie: display name of zombie is "&fZombie &6(Poziom 1)": if attacker is a player: add 10 to {expo.%attacker%} else: send ">>Nie dziala 3" else: send ">>Nie dziala 2" else: send ">>Nie dziala 1" -
NameMC-API - Java wrapper dla popularnej Minecraftowej strony: https://namemc.com
KrejzolekPRO odpowiedział(a) na temat w Kosz
Fanie to wygląda, kod zresztą też dobry i czytelny. -
Jestem na 150% pewien, że masz ją wyłączoną w pliku konfiguracyjnym.
-
Taki zapis jak był przed edytowaniem wyrzuci błąd. To tak, jakby zapisać te bloki do Stringa (, np. tak: stone;stone;stone;stone[...] i splitem to odczytywać), co nie jest optymalne i lepiej od razu dodać to do Block Listy, bądź tablicy bloków
-
[zapowiedz] Elytra.pl 1.12.2 (supp 1.8+)
KrejzolekPRO odpowiedział(a) na Mine1998 temat w Archiwum serwerów
Serwer prezentuje się naprawdę dobrze pod względem prezentacji - jest estetyczna i rzeczowa. Nie byłem na serwerze, więc nie mogę wyrazić opinii o technicznym przygotowaniu serwera, więc na start pewnie wpadne -
Jestem ciekaw spadku stabilności przy takiej czynności... on place of crafting table: //lub zastap id loop all blocks in radius 50: add loop-block's to {boki::%player%::*} //nie uzywaj {boki.%player%} send "&7Dodalem: %size of {boki::%player%::*}% blokow, aktualne tps serwera: &5%tps% (wspolczuje)"
-
Mcprotocollib i "autorskie" proxy
KrejzolekPRO odpowiedział(a) na lenny_msi pytanie w Pytania i problemy
O tym nie wiedziałem, sprawdziłem i rzeczywiście nie ma kodu na githubie. -
Mcprotocollib i "autorskie" proxy
KrejzolekPRO odpowiedział(a) na lenny_msi pytanie w Pytania i problemy
Na prawdę? Ostatnio jeszcze korzystałem z mavena, pisząc pod wersje 1.8.8 -
Mcprotocollib i "autorskie" proxy
KrejzolekPRO odpowiedział(a) na lenny_msi pytanie w Pytania i problemy
Najprościej użyć Mavena -
No hej, nauczyciel w mojej szkole wymyślił sobie superowe skrypty MS-DOS Za cholerę nie mogę pojąć "składni" tego języka o ile tak go można nazwać. Treść polecenia: Napisz skrypt, który wykona kopiowanie pliku wskazanego przez użytkownika jako pierwszy argument do katalogu wskazanego przez użytkownika jako drugi argument pod warunkiem, że ten plik i/lub katalog istnieje. Jeśli nie istnieje należy go stworzyć. Mój marny skutek: @echo off IF EXIST %1, C:\programy\%2 COPY %1 C:\programy\%2 ELSE IF NOT EXIST %1 echo "Plik %1 nie zostal znaleziony. Stworzylem nowy." > %1.txt ELSE IF NOT EXIST %2 C:\programy\%2 > mkdir %2 Jeśli ktoś pomoże, to się na pewno odwdzięczę
