Skocz do zawartości
  • 0

czas - action bar


Legal
 Udostępnij

Pytanie

Witam, pytanko jak zrobić, aby czas w skrypcie był odliczany od godziny, a mianowicie coś takiego: (01:00:00) godziny, minuty, sekundy

 

Aktualny skrypt:

 

command /czasik:
	trigger:
		loop 80 times:
			send action bar "&6Czas &e%81 - loop-number% &6sekund!" to player

 

Odnośnik do komentarza
Udostępnij na innych stronach

2 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
3 minuty temu, Legal napisał:

Witam, pytanko jak zrobić, aby czas w skrypcie był odliczany od godziny, a mianowicie coś takiego: (01:00:00) godziny, minuty, sekundy

 

Aktualny skrypt:

 


command /czasik:
	trigger:
		loop 80 times:
			send action bar "&6Czas &e%81 - loop-number% &6sekund!" to player

 

Musisz poszukać jakiejś funkcji zamieniającej liczbę sekund na godziny:minuty:sekundy. Jest parę takich w internecie, wystarczy chwilę poszukać.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 1

czyli powiedzmy masz czas w sekundach, dajmy na to 15000 sekund

tworzysz sobie funkcję, która przyjmuje tą liczbę sekund i zwraca tekst

  • zaczynasz od największej wartości czasu którą chcesz uzyskać (miesiące, tygodnie, dni, godziny, minuty i tak dalej) - dla ciebie największe są godziny
  • musimy zatem sprawdzić ile godzin mieści się w naszych 15000 sekundach - przykładowo można zrobić to poprzez podzielenie 15000 sekund przez godzinę podaną w sekundach (czyli 3600 sekund) - dostaniemy liczbę 4 z jakimiś częściami setnymi - wiemy już że w pierwszej części chcemy wpisać 4 godziny (04:00:00) - te części setne to są nasze minuty i sekundy - musimy je jakoś zdobyć
  • w tym celu zaokrąglamy ten wynik z dzielenia w dół - chcemy otrzymać liczbę całkowitą godzin (4) - następnie mnożymy tą otrzymaną po zaokrągleniu liczbę przez ilość sekund w godzinie (3600) - czyli w skrócie sprawdzamy ile sekund jest w czterech godzinach
  • gdy już to obliczymy to od 15000 odejmujemy tą liczbę godzin w sekundach (czyli 4*3600) - zostanie nam liczba w sekundach zawierająca sekundy i minuty
  • powtarzamy dla niej cały powyższy proces zmieniając jedynie liczbę sekund w godzinie (3600) na liczbę sekund w minucie (60)
  • na koniec gdy odejmiemy całkowitą liczbę minut w sekundach od liczby sekund - liczba będzie zawierała już finalną liczbę sekund którą zapisujemy sobie do wartości zwrotnej funkcji
  • oczywiście przy zapisywaniu liczb do wartości zwrotnej warto je ładnie dopieścić:
    • tj. gdy liczba jest w przedziale 0-9 to dopisać przed nią 0 aby ładnie wyglądało
    • może się zdarzyć, że końcowa liczba sekund będzie liczbą z przecinkiem - wtedy warto ją zaokrąglić
       
  • jeżeli wszystko przebiegło poprawnie, to dla liczby 15000 sekund wartość zwrotna powinna wyglądać tak: 04:10:00

 

powodzenia

Odnośnik do komentarza
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

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