-
Ilość zawartości
11014 -
Rejestracja
-
Ostatnia wizyta
-
Wygrane w rankingu
231
Treść opublikowana przez Kormic
-
świat 1000 bledow w skripcie zwiazanych z teksturami mc
Kormic odpowiedział(a) na KrychaMC09 pytanie w Pytania i problemy
Czy usunąłeś stary folder Skript pamiętając przy tym o opcjonalnej kopii zapasowej skryptów i zmiennych? -
Dlatego nie działa, bo fork bensku działa od wersji 1.9. W zastępstwie możesz użyć forku Matocolotoe na wersję 1.8: https://github.com/Matocolotoe/Skript-1.8/releases
-
No tak... w wywoływaniu funkcji mod() zamień ukośnik na przecinek, tak, aby nie było spacji między nim, a zmienną {_int}.
-
Proszę. Na przyszłość poświęć przynajmniej chwilę czasu na szukanie takich skryptów, pełno ich w internecie. Permisję ustawiasz w linijce nr 2 dla komendy /repair oraz w linijce nr 11 dla komendy /repairall. command /repair: permission: permisja.repair permission message: &4Nie posiadasz dostepu do tej komendy. trigger: if player's tool is air: send "&cMusisz trzymać przedmiot w ręce!" to player stop repair player's tool send "&aNaprawiłeś przedmiot w twojej ręce!" to player command /repairall: permission: permisja.repair permission message: &4Nie posiadasz dostepu do tej komendy. trigger: repair all items in player's inventory send "&aNaprawiłeś wszystkie przedmioty w twoim ekwipunku!" to player
-
Chcesz pluć na innych? Droga wolna, ale wiedz, że ja tego nie cierpię i podejrzewam, że inni również. Powtarzam ludziom, aby przed użyciem danego wyrażenia, efektu, eventu itp. sprawdzali dokumentację... Posiadasz zbyt starą wersję, aby móc używać 'set slot' z natywnego Skripta.
-
Wytykaniem konkretnych osób do pomocy dyskwalifikujesz resztę, a to jest co najmniej chamskie. Czy to jest twój cały skrypt? Jeżeli tak to jaką posiadasz wersję Skripta? Jaki posiadasz silnik serwera (oraz wersję)? W mojej ocenie jedyne co może być potencjalnie przyczyną, to brak spacji między minusem a 1 w ostatniej linijce, ale mimo wszystko odpowiedz na pytania podane wyżej.
-
Jak sprawdzić czy gracza posiada tyle zmiennej?
Kormic odpowiedział(a) na Adaspo pytanie w Pytania i problemy
Powiedz mi, jak długo piszesz skrypty? Skript jest językiem, w którym każdy kod rozpoczynają komendy, eventy, interwały, funkcje oraz kilka dodatkowych rzeczy chociażby jak sekcja 'options'. Skąd Skript ma wiedzieć kiedy ma wykonać ten warunek? Musisz to albo dać w definicję komendy, albo do jakiegoś eventu. Nie wiem co chcesz właściwie zrobić z tym kodem, więc nie oczekuj, że będę ci w stanie w 100% pomóc. -
Chyba rozumiem o co biega, ale na co ci w takim razie ten bedrock? Złóż wszystko do kupy, żeby było zrozumiałe i czytelne. Druga sprawa, w jaki sposób jest zaznaczany w skrypcie teren gildii? Ewentualnie w jaki sposób jest oznaczane miejsce centralne gildiii (serce)? Mam na myśli, że muszę jakoś wiedzieć czy w danym miejscu jest gildia czy też nie, więc musi to być w jakiejś zmiennej.
-
Jak sprawdzić czy gracza posiada tyle zmiennej?
Kormic odpowiedział(a) na Adaspo pytanie w Pytania i problemy
1. Korzystaj z dokumentacji, a nie będziesz musiał zadawać tak prostych pytań. 2. Sprawdzasz to za pomocą banalnie prostej konstrukcji 'if': if {cos::%player%} is 3: send "wiadomosc" to all players set {cos::%player%} to 0 -
A wyjaśnisz mi o co chodzi w końcu z tą nazwą?
-
Tworzy się? Masz na myśli, że gracz go otrzymuje czy tworzy się w miejscu gracza taki blok? Jeżeli to drugie to muszę cię rozczarować, bloki nie mogą mieć nazw. Nie rozumiem co ma oznaczać "można stworzyć za 30 kratek".
-
Jeżeli w funkcjach będziesz miał błąd (wtedy zakładam, że masz Skripta poniżej 2.5) to należy utworzyć zmienną lokalną z wartością '{_int} / 10' i podać ją jako argument do funkcji. Ważna informacja: action bar jedynie odlicza do spadnięcia kolejnego meteorytu z tej pętli 10-minutowej. function meteoryt(): set {_x} to random integer between -50 and 50 set {_z} to random integer between -50 and 50 set {_loc} to location of highest block at location at (random integer between -500 and 500), 90, (random integer between -50 and 50) in world "world" set block at {_loc} to air remove 1 from y-loc of {_loc} set {meteoryt::%{_loc}%} to true set block at {_loc} to obsidian broadcast "&6Meteoryt spadł na koordynatach: &e%{_loc}%&6!" while {meteoryt::%{_loc}%} is set: loop all players in radius 6 around {_loc}: apply slowness to loop-player for 2 second apply poison to loop-player for 2 second wait 2 second on rightclick on obsidian: if {meteoryt::%location at event-block%} is set: clear {meteoryt::%location at event-block%} set event-block to air drop 5 prismarine shard of sharpness 5 named "&bMagiczny Odłamek" at event-block broadcast "&6Gracz &e%player% &6zdobył meteoryt!" every 10 minute: meteoryt() set {_int} to 600 loop (10 * 60) times: if loop-number is less than or equal to 540: send action bar "&6Meteoryt spadnie za &a%floor({_int} / 10)% minut i %mod({_int} / 10)% sekund&6!" to all players else: send action bar "&6Meteoryt spadnie za &a%mod({_int} / 10)% sekund&6!" to all players remove 1 from {_int} wait 1 second command /meteoryt [<text>]: permission: skript.command.meteoryt trigger: meteoryt() command /meteoryty: trigger: send "&bLokalizacje meteorytów:" to sender loop {meteoryt::*}: send "&7- &6%loop-index%" to sender
-
Aaa... teraz rozumiem. on chat: player has permission "sing.kolor" set message to coloured message
-
Proszę. on chat: player has permission "sing.kolor" set chat format to "[player]: &a[message]"
-
Każdemu? Mój błąd, wstaw tam loop-index zamiast loop-value w komendzie /meteoryty.
-
No widzisz, czyli nie czytasz ze zrozumieniem, ot co. Uprzedziłem, abyś zainteresował się wymaganiami.
-
A jaki posiadasz silnik serwera oraz wersję serwera?
-
Proszę. function meteoryt(): set {_x} to random integer between -500 and 500 set {_z} to random integer between -500 and 500 set {_loc} to location of highest block at location at (random integer between -500 and 500), 256, (random integer between -500 and 500) in world "world" set block at {_loc} to air remove 1 from y-loc of {_loc} set {meteoryt::%{_loc}%} to true set block at {_loc} to obsidian broadcast "&6Meteoryt spadł na koordynatach: &e%{_loc}%&6!" while {meteoryt::%{_loc}%} is set: loop all players in radius 6 around {_loc}: apply slowness to loop-player for 2 second apply poison to loop-player for 2 second wait 2 second on rightclick on obsidian: if {meteoryt::%location at event-block%} is set: clear {meteoryt::%location at event-block%} set event-block to air drop 5 diamonds at event-block every 10 minutes: meteoryt() command /meteoryt [<text>]: permission: skript.command.meteoryt trigger: meteoryt() command /meteoryty: trigger: send "&bLokalizacje meteorytów:" to sender loop {meteoryt::*}: send "&7- &6%loop-value%" to sender
-
Wpisz w wyszukiwarkę frazę "skquery" i wejdź w pierwszy link. Trochę samodzielności się przyda. Pamiętaj, że SkQuery ma swoje wymagania, zapoznaj się z nimi.
-
W takim wypadku posiadasz zbyt starą wersję. Przeczytaj moją odpowiedź wyżej.
-
Zrobiłeś literówkę. Zamiast "shape" powinno być "shaped". Należy pamiętać o tym, że rejestrowanie nowych receptur w ten sposób pochodzi z SkQuery i zostało wprowadzone w wersji 3.6.2-Lime.
-
1. Jeżeli chcesz sprawdzić czy obrażenia są śmiertelne, zamiast tego: if victim's health is 0: Powinno się użyć tego: if final damage >= victim's health: 2. Niepotrzebnie jest tam 'wait 1 tick'. 3. Jeżeli chcesz sprawić, aby gracz nie umarł, zamiast ustawiać jedynie jego życie na 10, należy zrobić tak: cancel event heal victim 4. Na końcu niepotrzebny 'stop'.
-
Przy okazji zauważyłem błąd w postaci użycia %player% w event'cie 'on damage'. Dodatkowo dodałem warunek sprawdzający czy atakujący jest graczem. on damage of player: if attacker is a player: set {walka::%attacker%} to 30 set {walka::%victim%} to 30 loop 30 times: send action bar "&6&lFoksi&2MC &8» &cJestes podczas walki! Pozostalo %{walka::%attacker%}% sekund antylogouta!" to attacker send action bar "&6&lFoksi&2MC &8» &cJestes podczas walki! Pozostalo %{walka::%victim%}% sekund antylogouta!" to victim remove 1 from {walka::%attacker%} and {walka::%victim%} wait 1 second clear {walka::%victim%} and {walka::%attacker%} EDIT: Zapomniałem o odejmowaniu zmiennych...
-
Nie, nie zadziała. Spójrz na linijkę nr 21 (4 od końca). Jak to ma niby zadziałać? Co do samego skryptu mam jeszcze dwie uwagi: 1. Uważam, że lepiej jest czyścić zmienną niż ją ustawiać na 0. 2. Zapętlanie co sekundę wszystkich graczy? Już sama pętla mi się nie podoba, co ma oznaczać "loop all-player's between all worlds"? Już lepiej byłoby to zrobić w tym event'cie 'on damage' i 30 razy odtworzyć pętlę, w której co sekundę odejmujesz po 1 od dwóch zmiennych.
-
Dlatego też należy pamiętać o czyszczeniu niepotrzebnych zmiennych. Oczywiście nie twierdzę, iż wszystkie zmienne u ciebie są zbędnę, ale na pewno stanowią jakąś część tego pliku (możliwe, że dużą). Mimo wszystko jest to dość dziwne, znam ludzi, u których plik variables.csv zajmuje ok. 3-4 GB i nie widzą różnicy w prędkości odczytu i zapisu zmiennych. Twój plik variables.csv zajmuje natomiast jedyne 26 MB, czyli w porównaniu do powyższych przykładów niezwykle mało. Z tego co mi wiadomo to z SQL'em w Skript'cie przez długi czas były problemy i skrypterzy skarżyli się na jego zawodność. Jak to wygląda obecnie? Nie wiem. Trzeba pamiętać o tym, że natywne zmienne są najbardziej dopieszczane przez deweloperów Skripta. Mimo wszystko warto przetestować. Problem z czego może wynikać? Z wielu rzeczy, podam jedynie 3 z wielu możliwych przyczyn: Błąd w twoim skrypcie. Dodatek powodujący problemy ze Skriptem i/lub zmiennymi. Inny plugin powodujący problemy.
