Ranking
Popularna zawartość
Treść z najwyższą reputacją w 08/01/24 uwzględniając wszystkie działy
-
placeholder
DariuszGki przyznał(a) reputację Kormic za pytanie
Ten kod jest niepoprawny, ponieważ każde przeładowanie skryptu będzie wiązało się z utworzeniem nowej pętli 'while', a taką pętlę można przerwać w Skript'cie tylko wewnątrz niej lub poprzez zrestartowanie serwera. W konsekwencji może powstać wiele pętli, które będą się na siebie nakładały swoim działaniem, co sprawi nieprzewidywalne ustawianie wartości zmiennej '{animation.welcome}'. Rozwiązanie powinno więc korzystać z okresowo wykonującego się fragmentu kodu (ang. 'periodical'), co zapobiegnie powstaniu równolegle działającym pętlom 'while'. every 10 ticks: set {_welcomeMessages::*} to "&aW&6ITAJ", "&6W&aI&6TAJ", "&6WI&aT&6AJ", "&6WIT&aA&6J" and "&6WITA&aJ" set {welcomeMessageIndex} to 1 if {welcomeMessageIndex} is not set set {animatedWelcomeMessage} to {_welcomeMessages::%{welcomeMessageIndex}%} if {welcomeMessageIndex} >= (size of {_welcomeMessages::*}): set {welcomeMessageIndex} to 1 else: add 1 to {welcomeMessageIndex} on placeholderapi placeholder request for prefix "sk": if identifier is "welcome": set result to {animatedWelcomeMessage} Pozdrawiam.1 punkt -
placeholder
DariuszGki przyznał(a) reputację Saanjuk za pytanie
on load: while 1 = 1: set {animation.welcome} to "&aW&6ITAJ" wait 10 tick set {animation.welcome} to "&6W&aI&6TAJ" wait 10 tick set {animation.welcome} to "&6WI&aT&6AJ" wait 10 tick set {animation.welcome} to "&6WIT&aA&6J" wait 10 tick set {animation.welcome} to "&6WITA&aJ" wait 10 tick on placeholderapi placeholder request for the prefix "sk": if the identifier is "welcome": set the result to {animation.welcome} wymagany skript-placeholders oczywiście1 punkt -
BILET DO METRA
dimsongopl przyznał(a) reputację Saanjuk za pytanie
wybacz.. tym razem kod jest przetestowany i sprawny w 100%: Options: bilet_item: paper jednorazowy_nazwa: "&2Bilet jednorazowy" 15_min_nazwa: "&aBilet 15 minutowy" 45_min_nazwa: "&dBilet 45 minutowy" jednorazowy_lore: "" and "&bBilet upoważnia do" and "&2jednorazowego" and "&bprzejazdu metrem!" 15_min_lore: "" and "&bBilet upoważnia do" and "&a15 minutowego" and "&bporuszania się metrem!" 45_min_lore: "" and "&bBilet upoważnia do" and "&d45 minutowego" and "&bporuszania się metrem!" nazwa_gui: "KASA METRA" function metro(p:player): set {_gui} to chest inventory with 1 row named {@nazwa_gui} set slot (integers between 0 and 8) of {_gui} to light gray stained glass pane named "&7" set slot 0 of {_gui} to sunflower named "&eStan konta:" with lore "" and "&b%{_p}'s balance%" set slot 2 of {_gui} to {@bilet_item} named {@jednorazowy_nazwa} with lore {@jednorazowy_lore} and "&fCena:&e 5$" and "&eKliknij, aby kupić!" set slot 4 of {_gui} to {@bilet_item} named {@15_min_nazwa} with lore {@15_min_lore} and "&fCena:&e 10$" and "&eKliknij, aby kupić!" set slot 6 of {_gui} to {@bilet_item} named {@45_min_nazwa} with lore {@45_min_lore} and "&fCena:&e 35$" and "&eKliknij, aby kupić!" set slot 8 of {_gui} to barrier named "&dWyjście" with lore "" and "&eKliknij, aby wyjść!" open {_gui} to {_p} function modular(x:number, y: number)::text: set {_mod} to mod({_x}, {_y}) if {_mod} is set: if {_mod} > 0: set {_minutes} to floor({_x} / {_y}) set {seconds} to {_mod} set {_time} to "%{_minutes}%m %{seconds}%s" return {_time} else: set {_minutes} to floor({_x} / {_y}) set {_time} to "%{_minutes}%m" return {_time} command /metro: trigger: metro(player) on vehicle enter: player's vehicle is a regular minecart if {bilet.%player's name%.czas} > 0: send "Użyłeś bilet'u! Czas pozostały na bilecie: %modular({bilet.%player's name%.czas}, 60)%.Miłaj podróży!" to player while player is riding minecart: wait 1 seconds remove 1 from {bilet.%player's name%.czas} if {bilet.%player's name%.czas} is 60: send "&cUWAGA! Czas pozostały na bilecie to mniej niż 60s" to player else if player has {@bilet_item} named {@jednorazowy_nazwa}: send "Zużyłes bilet jednorazowy! Miłaj podróży!" to player remove {@bilet_item} named {@jednorazowy_nazwa} from player else if {bilet.%player's name%.czas} is 0: if player has {@bilet_item} named {@15_min_nazwa}: remove {@bilet_item} named {@15_min_nazwa} from player set {bilet.%player's name%.czas} to 900 else if player has {@bilet_item} named {@45_min_nazwa}: remove {@bilet_item} named {@45_min_nazwa} from player set {bilet.%player's name%.czas} to 2700 else: cancel event send "&cNie posiadasz biletu! (&e/metro&c)" to player else: cancel event send "&cNie posiadasz biletu! (&e/metro&c)" to player on vehicle exit: if {bilet.%player's name%.czas} > 0 seconds: send "Czas pozostały na bilecie: %modular({bilet.%player's name%.czas}, 60)%s" to player on inventory click: if name of event-inventory is {@nazwa_gui}: cancel event if clicked slot is 2: remove 5 from the player's balance give {@bilet_item} named {@jednorazowy_nazwa} with lore {@jednorazowy_lore} to player if clicked slot is 4: remove 10 from the player's balance give {@bilet_item} named {@15_min_nazwa} with lore {@15_min_lore} to player if clicked slot is 6: remove 35 from the player's balance give {@bilet_item} named {@45_min_nazwa} with lore {@45_min_lore} to player if clicked slot is 8: close player's inventory on join: if {bilet.%player's name%.czas} is not set: set {bilet.%player's name%.czas} to 01 punkt -
Wie ktos jak zrobic skrypt na dawanie itemow
PolsatGraniePL przyznał(a) reputację Kormic za pytanie
Naukę warto rozpocząć od zajrzenia do działu "Skript > Skrypty > Nauka", w którym obecne są skrypty tworzone przez innych początkujących skrypterów. Przydałoby się również rzucić okiem na dział "Skript > Skrypty > Poradniki". Zalecam zapoznać się też z dokumentacją Skripta, którą cały czas wykorzystuje każdy skrypter. Jeżeli lektura powyższych źródeł nie wystarczy, służę pomocą. Bez znajomości Skripta nie ma sensu tłumaczyć struktury skryptu, bo to będzie rzucanie na głęboką wodę. Pozdrawiam.0 punktów
Ten Ranking jest ustawiony na Warszawa/GMT+02:00
