Ranking
Popularna zawartość
Treść z najwyższą reputacją w 10/29/20 w Odpowiedzi
-
PORADNIK W TRAKCIE EDYCJI Jak może część z was wie - od wersji 2.2 do Skripta trafiły funkcje (skracają kod, sprawiają że życie staje się piękniejsze i takie tam gadanie - gdyby ktoś potrzebował poradników to odsyłam tutaj - https://skript.pl/temat/8232-funkcje/). Jednakże poza tymi oczywistymi, które możemy tworzyć sami autor dodał od siebie również kilkanaście gotowych funkcji, a ja w tym "poradniku" postaram się je przedstawić i wytłumaczyć ich działanie. Dokładna lista znajduje się w oficjalnej dokumentacji: https://skriptlang.github.io/Skript/functions.html Zatem zaczynając - nasze funkcje możemy podzielić na dwie grupy: Funkcje wykonujące obliczenia matematyczne i zwracające wynik: abs(n: number) abs - absolute value - czyli wartość bezwzględna Funkcja przyjmuje dowolne liczby rzeczywiste, a następnie zmienia ich wartość na dodatnią (większą od zera), np. abs(2) zwróci liczbę 2 abs(-3) zwróci liczbę 3 abs(-28.199) zwróci liczbę 28.199 ceil(n: number) ceil - ceiling - zaokrąglenie w górę Jak sama nazwa wskazuje - funkcja zaokrągla podaną liczbę w górę do najbliższej liczby całkowitej, np. ceil(10) podana liczbą jest całkowita, więc funkcja zwróci ją z powrotem ceil(2.33) funkcja zwróci cyfrę 3 ceil(-2.33) funkcja zwróci liczbę -2, ponieważ -2 jest większa od -2.33 floor(n: number) floor - zaokrąglenie w dół Funkcja zaokrągli podaną liczbę w dół i zwróci najbliższą liczbę całkowitą, np. floor(2) liczba jest całkowita, więc otrzymamy 2 floor(4.1) funkcja zwróci liczbę 4 floor(-3.90) funkcja zwróci liczbę -4, ponieważ to najbliższa liczba całkowita mniejsza od -3.90 round(n: number) round - zaokrąglenie Funkcja zaokrągli podany argument do najbliższej liczby całkowitej, np. round(1.2) funkcja zwróci 1 round(-0.7) funkcja zwróci -1 round(10.5) funkcja zwróci 11, ponieważ liczba od połowy zaokrąglana jest w górę sqrt(n: number), gdzie n >= 0 sqrt - square root - pierwiastek kwadratowy Funkcja obliczy pierwiastek z podanej liczby, np. sqrt(4) funkcja zwróci 2 sqrt(10.2) funkcja zwróci ~3.19 sqrt(0) funkcja zwróci 0 sqrt(-4) funkcja zwróci błąd - NaN (not a number), ponieważ argument nie może byc ujemny mod(d: number, m: number), gdzie m ≠ 0 mod - modulo - reszta z dzielenia dwóch liczb Funkcja sprawdzi ile razy drugi argument w całości mieści się w pierwszym i następnie zwróci pozostałą różnicę, np. mod(7, 2) funkcja zwróci 1, ponieważ liczba 2 mieści się trzy razy w liczbie 7, zatem resztą jest 1 mod(10031, 100) funkcja zwróci 31 mod(-1, 10) funkcja zwróci 9 mod(1, 0) funkcja zwróci błąd (NaN), ponieważ dzielnik (drugi argument) jest zerem sum(n: numbers) sum - suma Funkcja doda do siebie wszystkie podane liczby i zwróci wynik, np. sum(1, 2, 3 and 4) funkcja zwróci 10, bo 1 + 2 + 3 + 4 = 10 sum(1, 2, -3 and -4) funkcja zwróci -4, bo 1 + 2 - 3 - 4 = -4 sum({_lista::*}) sum({_lista::*}, 10 and {_druga::lista::*}) product(n: numbers) product - mnożenie funkcja pomnoży wszystkie podane liczby i zwróci wynik, np. product(3, 4, 5) funkcja zwróci 60, bo 3 * 4 * 5 = 60 product({_lista::*}) product(integers from 1 to 6) funkcja zwróci 720, bo 1 * 2 * 3 * 4 * 5 * 6 = 6! = 720 min(n: numbers) min - minimum - najniższa wartość Funkcja wybierze najmniejszą liczbę, z podanej listy, np. min(1, 2, 3, 4) funkcja zwróci 1 min({_lista::*}) min(10, -1, 1000) funkcja zwróci -1 max(n: numbers) max - maximum - najwyższa wartość Funkcja wybierze największą liczbę z podanej listy, np. max(1, 2, 3, 4) funkcja zwróci 4 max(10, -1, 1000) funkcja zwróci 1000 max({_lista::*}) log(n: number, base: number), gdzie n i base >= 0 oraz n domyślnie = 10 log - logarithm - logarytm Funkcja zwróci logarytm z podanych wartości, tj. Do jakiej potęgi trzeba podnieść drugi argument, aby otrzymać pierwszy, np. log(100) funkcja zwróci 2, ponieważ 10 ^ 2 = 100 log(16, 2) funkcja zwróci 4, ponieważ 2 ^ 4 = 16 log(-16, -2) funkcja zwróci błąd (NaN), bo argumenty są ujemne Trygonometria: sin(n: number) sin - sinus Funkcja obliczy ile wynosi sinus podanego w argumencie kąta (w stopniach), zwraca wartości w przedziale od -1 do +1, np. sin(30) funkcja zwróci 0.5 sin(-2190) funkcja zwróci -0.5 sun(90) funkcja zwróci 1 cos(n: number) cos - cosinus Funkcja obliczy ile wynosi cosinus podanego w argumencie kąta (w stopniach), np. cos(0) = 1 cos(90) = 0 tan(n: number) tan - tg - tangens Funkcja obliczy ile wynosi tangens podanego w argumencie kąta (w stopniach), np. tan(0) = 0 tan(45) = 1 atan(n: number); acos(n: number); asin(n: number) arcus tangens / sinus / cosinus - odwrotność danej funkcji Gdy zwykła funkcja trygonometryczna zwraca liczbę z kąta (w stopniach), tak funkcja arcus, odwrotnie - z liczby obliczy kąt (w stopniach), np. cos(0) = 1 acos(1) = 0 sin(30) = 0.5 asin(0.5) = 30 atan2(x: number, y: number) arcus tangens - wersja druga Ta funkcja wymaga dwóch argumentów - współrzędnych - wyznaczy z nich kąt (w stopniach) na dwuwymiarowej płaszczyźnie liczony od pionowej osi y (do -180 stopni w lewo oraz do +180 stopni w prawo). W minecraft ten kąt opisany jest jako yaw i mierzony od osi z, np. atan2(0, 1) = 0 atan2(10, 0) = 90 atan2(-10, 5) = -63.4349 Funkcje zwracające określone obiekty z podanych argumentów: location(x: number, y: number, z: number, world: world, yaw: number, pitch: number), gdzie world to domyślnie świat pobrany z eventu oraz yaw i pitch domyślnie = 0 Funkcja tworzy obiekt przechowujący lokalizację danego punktu na mapie, zawiera: współrzędne x, y, z, świat oraz kąty yaw i pitch, przy czym dwa ostatnie argumenty nie są wymagane, przykład: location(1, 2, 3, world of player, -180, 8) location(0, 0, 0, ("spawn" parsed as world)) rgb(r: number, g: number, b: number) Funkcja stworzy kolor z podanych jej parametrów R, G oraz B, ( zawierają się w przedziale od 0 do 255), np. rgb(0, 0, 0) - kolor czarny rgb(255, 0, 0) - kolor czerwony rgb(255, 165, 0) - kolor pomarańczowy world(n: string) Funkcja zwróci obiekt świat z jego nazwy, np. world("world") world("nazwa_mojego_światu") vector(x: number, y: number, z: number) Funkcja zwróci wektor z podanych trzech współrzędnych (tutaj link do przyszłego poradnika o wektorach), np. vector(1, 2, 3) vector(0, 0, 0) vector(-1000, 91, -19) date(year: number, month: number, day: number, hour: number, minute: number, second: number, millisecond: number, zone_offset: number), gdzie hour, minute, second, millisecond oraz zone_offset domyślnie = 0 Funkcja zwróci datę z podanego roku, miesiąca oraz dnia, np. date(2014, 10, 1) 1 października 2014, godzina 00:00:00 date(1990, 3, 5, 14, 30) 5 maja 1990, godzina 14:30 calcExperience(n: number), gdzie n >= 0 Funkcja obliczy ilość punktów doświadczenia wymaganego do osiągnięcia podanego poziomu, np. calcExperience(1) zwróci liczbę 7 calcExperience(10) zwróci 160 calcExperience(578) zwróci 1411673 Przykładowe użycia wybranych funkcji w kodzie: #zróbmy mało optymalną disco zbroję, z wykorzystaniem funkcji rgb() on join: while player is online: set {_r} to random integer between 0 and 255 set {_g} to random integer between 0 and 255 set {_b} to random integer between 0 and 255 dye helmet slot of player rgb({_r}, {_g}, {_b}) dye chestplate slot of player rgb({_r}, {_g}, {_b}) dye legging slot of player rgb({_r}, {_g}, {_b}) dye boot slot of player rgb({_r}, {_g}, {_b}) wait 10 tick #obliczmy ilość pieniędzy wszystkich graczy z wykorzystaniem funkcji sum() command /kasa-serwera: trigger: set {_gracze::*} to all offline players loop {_gracze::*}: set {_kasa::%loop-value%} to balance of loop-value send "Gracze na serwerze mają łącznie %sum({_kasa::*})% pieniędzy." #policzmy przestrzenną odległość między graczem a blokiem na który się patrzy, z wykorzystaniem funkcji sqrt() oraz sum() #dla sprawdzenia można użyć wyrażenia 'distance between' on rightclick: if targeted block is set: set {_blok} to location of targeted block set {_x} to ((x-loc of {_blok}) - (x-loc of player)) ^ 2 set {_y} to ((y-loc of {_blok}) - (y-loc of player)) ^ 2 set {_z} to ((z-loc of {_blok}) - (z-loc of player)) ^ 2 set {_suma} to sum({_x}, {_y} and {_z}) set {_odleglosc} to sqrt({_suma}) set {_odlegloscSprawdzenie} to distance between player and {_blok} send "&6Wyliczona odległość do bloku to: &e%{_odleglosc}%" and "&8Sprawdzona odległość do bloku to:&7 %{_odlegloscSprawdzenie}%" #stwórzmy skrypt na losową teleportację z wykorzystaniem funkcji location() command /rtp: trigger: set {_x} to random integer between 0 and 1000 set {_z} to random integer between 0 and 1000 set {_loc} to location({_x}, 256, {_z})1 punkt
-
Wybór antycheata
MastersPRO przyznał(a) reputację dziwakkolega za pytanie
Ale ty człowieku wiesz jak sie Konfiguruje AntyCheaty robi sie to samemu pod swoje ustawienia a nie na config z internetu NoCheatPlus jest AntyCheatem który nie daje popalić ale z dobrą konfiguracją jest w stanie zrobić dużo1 punkt -
Wybór antycheata
MastersPRO przyznał(a) reputację Helios1993 za pytanie
Tego cerberusa dzisiaj testowałem, działały fly, killaura, speed(bunnyhop), jesus i wiele więcej. Nocheatplus jest jednym z gorszych antycheatów. Matrixa wystarczy dobrze skonfigurować żeby takich rzeczy nie blokował, polecam config od Encode42.1 punkt -
1 punkt
-
https://docs.skunity.com/syntax/search/addon:HolographicDisplaysAddon new holo[gra(m|phic display)] at [the] %location% (append|add) text [line] %string% to holo[gra(m|phic display)][s] %holograms% [(in|at) line %-number%] set text (for|in|of) holo[gra(m|phic display)][s] %holograms% to %string% (in|at) line %number% (1?show|2?hide) holo[gra(m|phic display)][s] %holograms% (to|from) %players% wszystko czego chcesz jest w dokumentacji1 punkt
-
Zostanie duchem po śmierci
Ktosanonimowy przyznał(a) reputację xAxee za pytanie
on death of player: set block at victim to chest add drops to (block at victim)'s inventory clear drops set victim's gamemode to spectator1 punkt -
Po krótkich beta-testach wśród ekipy mogę z przyjemnością ogłosić otwarcie nowego serwisu pod domeną skript.pl. https://code.skript.pl/ to prosty edytor i pastebin dla skryptów, wśród funkcjonalności znajduje się: podstawowe kolorowanie składni Skript i YAML, automatyczne zapisywanie tekstu co sekundę w pamięci przeglądarki, możliwość publikacji swojego skryptu pod krótkim linkiem, możliwość wyświetlenia opublikowanego skryptu jako zwykły tekst oraz pobrania go. Plany na przyszłość: styl dostosowany do urządzeń mobilnych, możliwość tworzenia skryptów przypisanych do konta użytkownika, także niewidocznych publicznie. Zachęcam do testów i korzystania z serwisu oraz zgłaszania wszelakich propozycji i błędów w tym temacie.1 punkt
Ten Ranking jest ustawiony na Warszawa/GMT+02:00
-
Najwięcej postów w tygodniu
-
Najwięcej tematów w tygodniu
-
Aktywni użytkownicy
-
1
-
2
-
