-
Ilość zawartości
11012 -
Rejestracja
-
Ostatnia wizyta
-
Wygrane w rankingu
230
Treść opublikowana przez Kormic
-
on load: set {metin::getdamage::cooldown} to false every 10 minutes: if block at location at (12, 12, 12) in world "world" is not emerald block: set block at location at (12, 12, 12) in world "world" to emerald block set {metin::hp} to 50 set {metin::getdamage::cooldown} to false #składnia od pojawienia się hologramu on block damage: if location of event-block is not location at 12, 12, 12 in world "world": stop if {metin::getdamage::cooldown} is true: cancel event remove 1 from {metin::hp} if {metin::hp} is less than or equal to 0: set event-block to air #składnia od usuwania hologramu stop set {metin::getdamage::cooldown} to true wait 10 ticks set {metin::getdamage::cooldown} to false Nie mogłem wpaść na nic lepszego. Dodałem komentarze dotyczące hologramów, gdybyś chciał dodać. Od razu zaznaczam, że do tego jest potrzebny dodatek np. Skellett, SkRayFall itp.
-
on right click on ender chest: set {enderchest::otwieranie::%player%} to true on inventory click: if {enderchest::otwieranie::%player%} is not set: stop if slot clicked slot of player's current inventory is any shulker box: cancel event if slot clicked slot of player's inventory is any shulker box: cancel event on inventory close: if {enderchest::otwieranie::%player%} is not set: stop clear {enderchest::otwieranie::%player%} Sprawdź czy będzie odpowiednio działało.
-
Podejrzewam, że w Skript'cie ciężko będzie to zrobić, chyba był taki mod o nazwie LivingBlocks.
-
Jeśli chcesz bić blok, to musiałbyś zrobić entity, które miałoby nałożony na siebie wielki blok. Ewentualnie można wykorzystać event 'on block damage:', ale wtedy blok "umrze" w 2-3 sekundy
-
command /spawncustomob [<text>] [<text>] [<number>]: permission: op trigger: if arg 1 is "zombie": if arg 2 is not set: send "&eNie podałeś nazwy Moba!" to player stop if arg 3 is not set: send "&eNie podałeś ilości życia moba!" to player stop if arg 2 is set: spawn zombie at player set name of last spawned entity to arg 2 set max health of last spawned entity to arg 3 send "&eZrespawniono &b%arg 1% &ez nazwą &b%arg 2%" stop if arg 1 is "skeleton": if arg 2 is not set: send "&eNie podałeś nazwy Moba!" to player stop if arg 3 is not set: send "&eNie podałeś ilości życia moba!" to player stop if arg 2 is set: spawn skeleton at player set name of last spawned entity to arg 2 set max health of last spawned entity to arg 3 send "&eZrespawniono &b%arg 1% &ez nazwą &b%arg 2%" stop Już nie ma błędów, proszę. EDIT: Skoro sprawdzasz warunkiem argument nr 1, to po co próbujesz spawnować %arg 1%? Wystarczyło dać zombie lub skeleton
-
Blok? Wyjaśnij co masz na myśli.
-
command /metin: trigger: spawn a zombie at location of the player equip last spawned zombie with all diamond armor of protection 10 and unbreaking 10 set tool of last spawned zombie to diamond sword of sharpness 10 and unbreaking 10 set last spawned zombie's max health to 50 set name of last spawned zombie to "Wzmocnienie" on damage: if victim's name is not "Wzmocnienie": stop set {_loc} to location of the victim if distance between {_loc} and block at location at (12, 12, 12) in world "world" is less than 1: cancel event damage victim by 1 stop cancel event on death: if victim's name is not "Wzmocnienie": stop if attacker is not a player: stop teleport attacker to location at 12, 50, 25 in world "world" Powinno wszystko poprawnie działać. Proszę.
-
W takim wypadku to już jest w interesie osoby używającej skryptu, aby odpowiednio skonfigurowała pluginy chroniące przed wszelkiego rodzaju exploitami.
-
Dziękuję za komplement
-
O kurde, to już wyszedł Skript 3.5 A tak na poważnie, nie ma takiej wersji, chyba się pomyliłeś.
-
Daj mi chwilę, poprawię kod i zobaczysz jeszcze raz. EDIT: Poprawione. Spróbuj ponownie, zobaczymy czy dobrze będzie działało.
-
Repka to rzecz drugorzędna, najważniejsze jest aby działało. EDIT: W TuSKe poza GUI i tymi enchantami to szczerze niewiele rzeczy poprawnie działa. Chociaż co się dziwić, plugin został opuszczony, a ostatnia wersja to fork Tuke-Nuke'a na wersję 1.12.
-
Upewnij się, że spełniasz wszystkie warunki w skrypcie.
-
on death of ender dragon: set {respawn::czas::enderdragon} to now set {respawn::miejsce::enderdragon} to event-location wait 1 hour spawn a ender dragon at {respawn::miejsce::enderdragon} clear {respawn::miejsce::enderdragon} clear {respawn::enderdragon} on load: if difference between {respawn::czas::enderdragon} and now is greater than or equal to 1 hour: spawn a ender dragon at {respawn::miejsce::enderdragon} clear {respawn::miejsce::enderdragon} clear {respawn::czas::enderdragon} Uzupełnij sobie w event'cie 'on load' koordynaty oraz świat. EDIT: Wprowadziłem małą poprawkę. Już nie trzeba podawać koordynatów.
-
on right click: if target block is not coal block: stop if location of target block is not location at 12, 12, 12 in world "world": stop if player's held item is not diamond named "cos": stop if {misja4.patyki.%player%} is not 0: add 1 to {misja4.patyki.%player%} stop send "&b&lMetin2&3: &2Misja Ukonczona! &6&oCel: &8Idz do &cwojownika&6!" to player set {misja4.patyki.%player%} to true set {misja4.%player%} to true Powinno być okej.
-
Spróbuj tak: if clicked item is not lime wool named "&aKliknij": EDIT: Spróbuj w takim razie: if player's current inventory's slot clicked slot is not lime wool named "&aKliknij":
-
on right click: if target block is not enchanting table: stop set slot 1 of player's current inventory to 64 lapis lazuli on inventory click: if clicked inventory is player's inventory: stop if target block is not enchanting table: stop if clicked slot is 1: cancel event on enchant: set slot 1 of player's current inventory to 64 lapis lazuli Spróbuj w ten sposób. EDIT: Zawsze możesz też użyć TuSKe i jego formatowania GUI, które automatycznie blokuje wyjmowanie itemu: on right click on enchantment table: make a gui slot 1 of player with 64 lapis on enchant: make a gui slot 1 of player with 64 lapis
-
Wydaje mi się, że powinno wszystko działać, w razie czego daj znać.
-
Musisz też pamiętać, że jak ktoś kupi, to zapewne znajdą się osoby, które będą próbowały przekonać taką osobę, aby dała im ten skrypt. Również trzeba mieć z tyłu głowy, że jak ktoś kupi i ma znajomych, to pewnie rozda i już masz kilkanaście kopii. Skrypty zresztą nie mają aż takiej wartości jak pluginy. Mógłbyś zrobić tak: Dałbyś za darmo swoje skrypty i przy pobieraniu każdego w jakiś sposób zachęcasz osobę użytkująca do wsparcia cię małą darowizną. EDIT: Poza tym pamiętaj, że twoi klienci nie będą raczej doceniali, że robisz multum zabezpieczeń, a docenią to, że zrobiłeś tak zarąbisty skrypt/plugin, że aż ręce same się składają do bicia brawa. Więc skup się na tym, aby jakość twojego produktu była wysoka, a nie skupiaj się na zabezpieczeniach, bo i tak na pewno znajdzie się ktoś, kto je obejdzie. Zresztą warto pamiętać, że jeśli ktoś pobrał twój plugin "z wycieku", to pewnie nie miał w ogóle zamiaru płacić za twoją robotę, bo go najczęściej na to nie stać lub ledwo wiąże koniec z końcem, a jego serwer pewnie jest jakimś syfem, który i tak prędzej czy później upadnie. Natomiast plugin na pewno kupią właściciele/technicy przyzwoitych serwerów, którzy nie chcą sobie zrujnować reputacji pluginami z wycieków. Więc powtórzę to jeszcze raz, nie ma co się skupiać na zabezpieczeniach, bo i tak prędzej czy później zostaną złamane, a należy zajmować się regularnymi aktualizacjami skryptu/pluginu, aby ludziom nie opłacało się czekać na wycieki, które i tak w porównaniu do twojego oryginału będą bardzo w tyle. Wtedy zobaczą, że warto cię wesprzeć poprzez legalny zakup produktu. Pamiętaj też, że osoby odpowiadające za wycieki pluginów czasem też dodają coś "od siebie" Tym samym jest szansa, że osoby pobierające pluginy z wycieków kopią sobie/swoim serwerom grób.
-
Plugin jest o wiele łatwiej zabezpieczyć niż skrypt, gdyż w skrypcie niemalże wszystko widać na pierwszy rzut oka i albo osoba używająca skryptu musi być dosłownie ślepa, albo autor musi być cholernie sprytny i ukryje to w jakiś sposób. Chociaż w przypadku skryptów raczej jedynym "zabezpieczeniem" jest podpis, właściwym zabezpieczeniom prawie nikt nie poświęca uwagi, po prostu uważaj komu dajesz skrypt i gdzie go umieszczasz. EDIT: Jeszcze odpowiadając co do zabezpieczania pluginów, to niektórzy stosują kody w configach, czasem też zaciemniają plugin, aby nieco utrudnić robotę osobie z niecnymi planami. Podejrzewam jednak, że o wiele więcej będą miały w tym temacie do powiedzenia osoby zajmujące się pluginami na co dzień, a nie niedzielni użytkownicy jak np. ja
-
Upewnij się, że masz permisję.
-
command /odbierz [<text>]: trigger: if arg 1 is not set: send "&cPoprawne uzycie: &6/odbierz <nazwa rangi, np. vip>" to player stop if arg 1 is "vip": if player doesn't have permission "odbieranie.kit": stop if {cooldown::kit::vip::%player%} is not set: set {cooldown::kit::vip::%player%} to now send "&aUzyj ponownie komende." to player stop if difference between {cooldown::kit::vip::%player%} and now is greater than or equal to 1 hour: send "&8» &aOtrzymales zestaw startowy!" to player if player can hold 64 steak: give player 64 steak else: drop 64 steak at player if player can hold 1 diamond pickaxe: give player 1 diamond pickaxe of efficiency 5 and unbreaking 3 and fortune 3 else: drop 1 diamond pickaxe of efficiency 5 and unbreaking 3 and fortune 3 at player if player can hold 10 oak log: give player 10 oak log else: drop 10 oak log at player set {cooldown::kit::vip::%player%} to now else: set {_czas} to "%{cooldown::kit::vip::%player%}%" replace all "seconds" with "sekund" in {_czas} replace all "minutes" with "minut" in {_czas} replace all "hours" with "godzin" in {_czas} send "&8» &cOstatnio odebrales juz ten zestaw! Musisz odczekac &6(&e%{_czas}%&6)" to player if arg 1 is "svip": if player doesn't have permission "odbieranie.kit": stop if {cooldown::kit::svip::%player%} is not set: set {cooldown::kit::svip::%player%} to now send "&aUzyj ponownie komende." to player stop if difference between {cooldown::kit::svip::%player%} and now is greater than or equal to 1 hour: send "&8» &aOtrzymales zestaw startowy!" to player if player can hold 64 steak: give player 64 steak else: drop 64 steak at player if player can hold 1 diamond pickaxe: give player 1 diamond pickaxe of efficiency 5 and unbreaking 3 and fortune 3 else: drop 1 diamond pickaxe of efficiency 5 and unbreaking 3 and fortune 3 at player if player can hold 10 oak log: give player 10 oak log else: drop 10 oak log at player set {cooldown::kit::svip::%player%} to now else: set {_czas} to "%{cooldown::kit::svip::%player%}%" replace all "seconds" with "sekund" in {_czas} replace all "minutes" with "minut" in {_czas} replace all "hours" with "godzin" in {_czas} send "&8» &cOstatnio odebrales juz ten zestaw! Musisz odczekac &6(&e%{_czas}%&6)" to player if arg 1 is "uvip": if player doesn't have permission "odbieranie.kit": stop if {cooldown::kit::uvip::%player%} is not set: set {cooldown::kit::uvip::%player%} to now send "&aUzyj ponownie komende." to player stop if difference between {cooldown::kit::uvip::%player%} and now is greater than or equal to 1 hour: send "&8» &aOtrzymales zestaw startowy!" to player if player can hold 64 steak: give player 64 steak else: drop 64 steak at player if player can hold 1 diamond pickaxe: give player 1 diamond pickaxe of efficiency 5 and unbreaking 3 and fortune 3 else: drop 1 diamond pickaxe of efficiency 5 and unbreaking 3 and fortune 3 at player if player can hold 10 oak log: give player 10 oak log else: drop 10 oak log at player set {cooldown::kit::uvip::%player%} to now else: set {_czas} to "%{cooldown::kit::uvip::%player%}%" replace all "seconds" with "sekund" in {_czas} replace all "minutes" with "minut" in {_czas} replace all "hours" with "godzin" in {_czas} send "&8» &cOstatnio odebrales juz ten zestaw! Musisz odczekac &6(&e%{_czas}%&6)" to player Już powinno działać.
-
command /i [<item>] [<integer>]: trigger: if player doesn't have permission "giveitem.agesv": stop if arg 1 is not set: stop if arg 2 is not set: stop set {_item} to arg 1 set {_int} to arg 2 give {_int} of {_item} to player Może tak? Błędu już nie ma.
-
To dlatego ci funkcje nie działają. Poprawiłem skrypt wyżej, sprawdź jeszcze raz.
