Skocz do zawartości
  • 0

Liczenie czasu


maka12

Pytanie

Witam

Mam problem z tym skryptem:  

on walk on diamond_block:
	send "Koniec"
	set {start.%loop-player%} to false

on walk on gold_block:
	send "&4Rozpoczynanie liczenia.."
	set {start.%loop-player%} to true
	

on every 1 second:
	loop all players:
		{start.%loop-player%} = true:
			set {czas.%loop-player%} to {czas.%loop-player%} + 1

Chce zrobić by po wejściu na blok złota rozpoczęło się liczenie, a na bloku diamentu zakończyło. Jednak pojawia mi się błąd : "There's no loop that matches..." Chciałbym dodatkowo się jeszcze spytać jak zrobić by czas zapisywał się na pasku exp.

Odnośnik do komentarza
https://skript.pl/temat/34460-liczenie-czasu/
Udostępnij na innych stronach

16 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
on walk on gold_block:
	send "&4Rozpoczynanie liczenia.."
    Set player's level to 0
    While block under player is not diamond block:
        Set player's level to (player's level)+1
        Wait 1 second 
    Send "&7Zakonczono odliczanie! Wynik: &6%player's level%" 

 

Odnośnik do komentarza
https://skript.pl/temat/34460-liczenie-czasu/#findComment-221703
Udostępnij na innych stronach

  • 0
2 minuty temu, xAxee napisał:

on walk on gold_block:
	send "&4Rozpoczynanie liczenia.."
    Set player's level to 0
    While block under player is not diamond block:
        Set player's level to (player's level)+1
        Wait 1 second 
    Send "&7Zakonczono odliczanie! Wynik: &6%player's level%" 

 

Da się zrobić tak żeby to było bardziej dokładne niż 1 sekunda?

Odnośnik do komentarza
https://skript.pl/temat/34460-liczenie-czasu/#findComment-221705
Udostępnij na innych stronach

  • 0
on walk on gold block:
	send "&4Rozpoczynanie liczenia.."
	Set player's level to 0
	set player's level progress to 0
	While block under player is not diamond block:
		wait 1 tick
		add 0.05 to player's level progress
	set {_prog} to "%player's level progress%"
	replace "0." with "" in {_prog}
	Send "&7Zakonczono odliczanie! Wynik: &6%player's level%&6.%{_prog}% &6sekund" 
	set player's level to 0
	set player's level progress to 0

 

Edytowane przez Shooterowy
Odnośnik do komentarza
https://skript.pl/temat/34460-liczenie-czasu/#findComment-221715
Udostępnij na innych stronach

  • 0
2 minuty temu, Shooterowy napisał:

on walk on gold block:
	send "&4Rozpoczynanie liczenia.."
	Set player's level to 0
	set player's level progress to 0
	While block under player is not diamond block:
		wait 1 tick
		add 0.05 to player's level progress
	set {_prog} to "%player's level progress%"
	replace "0." with "" in {_prog}
	Send "&7Zakonczono odliczanie! Wynik: &6%player's level%.%{_prog}% sekund" 
	set player's level to 0
	set player's level progress to 0

 

Świetnie działa tylko problem jest taki że jak się drugi raz wejdzie na blok złota to liczy dużo szybciej. Wolałbym żeby resetowało pętle

Odnośnik do komentarza
https://skript.pl/temat/34460-liczenie-czasu/#findComment-221716
Udostępnij na innych stronach

  • 0
on walk on gold block:
	if {started::%player%} is not set:
		set {started::%player%} to now
		send "&4Rozpoczynanie liczenia.."
		Set player's level to 0
		set player's level progress to 0
		While {started::%player%} is set:
			wait 1 tick
			add 0.05 to player's level progress
on walk on diamond block:
	if {started::%player%} is set:
		Send "&7Zakonczono odliczanie! Wynik: &6%difference between {started::%player%} and now%&7."
		clear {started::%player%}
		set player's level to 0
		set player's level progress to 0 

 

Odnośnik do komentarza
https://skript.pl/temat/34460-liczenie-czasu/#findComment-221717
Udostępnij na innych stronach

  • 0
6 minut temu, Shooterowy napisał:

on walk on gold block:
	if {started::%player%} is not set:
		set {started::%player%} to now
		send "&4Rozpoczynanie liczenia.."
		Set player's level to 0
		set player's level progress to 0
		While {started::%player%} is set:
			wait 1 tick
			add 0.05 to player's level progress
on walk on diamond block:
	if {started::%player%} is set:
		Send "&7Zakonczono odliczanie! Wynik: &6%difference between {started::%player%} and now%&7."
		clear {started::%player%}
		set player's level to 0
		set player's level progress to 0 

 

Źle mnie zrozumiałeś chodziło mi o to żeby jak ponownie się wejdzie na gold block to żeby zaczęło liczyć od nowa. W poprzednim skrypcie był taki błąd że jak się ponownie wejdzie to liczy bardzo szybko.

Odnośnik do komentarza
https://skript.pl/temat/34460-liczenie-czasu/#findComment-221718
Udostępnij na innych stronach

  • 0
6 minut temu, maka12 napisał:

Źle mnie zrozumiałeś chodziło mi o to żeby jak ponownie się wejdzie na gold block to żeby zaczęło liczyć od nowa. W poprzednim skrypcie był taki błąd że jak się ponownie wejdzie to liczy bardzo szybko.

on walk on gold block:
	send "&4Rozpoczynanie liczenia.."
	Set player's level to 0
	set player's level progress to 0
	While block under player is not diamond block:
        If block under player is Gold block:
            Stop 
		wait 1 tick
		add 0.05 to player's level progress
	set {_prog} to "%player's level progress%"
	replace "0." with "" in {_prog}
	Send "&7Zakonczono odliczanie! Wynik: &6%player's level%&6.%{_prog}% &6sekund" 
	set player's level to 0
	set player's level progress to 0

 

Odnośnik do komentarza
https://skript.pl/temat/34460-liczenie-czasu/#findComment-221719
Udostępnij na innych stronach

  • 0
5 godzin temu, xAxee napisał:

on walk on gold block:
	send "&4Rozpoczynanie liczenia.."
	Set player's level to 0
	set player's level progress to 0
	While block under player is not diamond block:
        If block under player is Gold block:
            Stop 
		wait 1 tick
		add 0.05 to player's level progress
	set {_prog} to "%player's level progress%"
	replace "0." with "" in {_prog}
	Send "&7Zakonczono odliczanie! Wynik: &6%player's level%&6.%{_prog}% &6sekund" 
	set player's level to 0
	set player's level progress to 0

 

Źle wytabowane 

 

5 godzin temu, Shooterowy napisał:

on walk on gold block:
	if {started::%player%} is set:
		set {_reset} to true
	else:
		send "&4Rozpoczynanie liczenia.."
	set {started::%player%} to now
	Set player's level to 0
	set player's level progress to 0
	While {started::%player%} is set:
		if {_reset} is set:
			exit loop
		wait 1 tick
		add 0.05 to player's level progress
on walk on diamond block:
	if {started::%player%} is set:
		Send "&7Zakonczono odliczanie! Wynik: &6%difference between {started::%player%} and now%&7."
		clear {started::%player%}
		wait 1 tick
		set player's level to 0
		set player's level progress to 0

 

działa :)

 

Można zamykać :)

HeezQ

Łączę triple-post

Notatka dodana przez HeezQ

Odnośnik do komentarza
https://skript.pl/temat/34460-liczenie-czasu/#findComment-221725
Udostępnij na innych stronach

  • 0
on walk on gold block:
	if {started::%player%} is set:
		set {_reset} to true
	else:
		send "&4Rozpoczynanie liczenia.."
	set {started::%player%} to now
	Set player's level to 0
	set player's level progress to 0
	While {started::%player%} is set:
		if {_reset} is set:
			exit loop
		wait 1 tick
		add 0.05 to player's level progress
on walk on diamond block:
	if {started::%player%} is set:
		Send "&7Zakonczono odliczanie! Wynik: &6%difference between {started::%player%} and now%&7."
		clear {started::%player%}
		wait 1 tick
		set player's level to 0
		set player's level progress to 0

 

Edytowane przez Shooterowy
Odnośnik do komentarza
https://skript.pl/temat/34460-liczenie-czasu/#findComment-221728
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...