Skocz do zawartości

Odliczanie


Wojo

Rekomendowane odpowiedzi

[create]

GML (create)
global.old_godzina=current_hour //ustawiamy poczatkowa godzine...

global.old_minuta=current_minute //...minute...

global.old_sekunda=current_second//...sekunde</span></span>

[step]

GML (step)
global.cur_godzina=current_hour//aktualizujemy obecna godzine...

global.cur_minuta=current_minute//...minute...

global.cur_sekunda=current_second//...sekunde.

global.godzina=global.cur_godzina-global.old_godzina//ustawiamy czas grania w godzinach...

global.minuta=global.cur_minuta-global.old_minuta//...minutach...

global.sekunda=global.cur_sekunda-global.old_sekunda//...sekundach</span>

[draw]

GML (draw)
draw_text(x,y,"Czas gry:"+string(global.godzina)+":"+string(global.minuta)+":"+string(global.sekunda))//wyswietlamy na ekranie czas</span></span>
Odnośnik do komentarza
Udostępnij na innych stronach

Nie zalecam powyższego ze względu na zawodne wykorzystanie room_speed. W powyższy sposób jeśli gra zacznie się ciąć i działać na 50% prędkości poprzez cięcie się to zakończy się to na tym że sekunda zajmie dwie sekundy.

Odnośnik do komentarza
Udostępnij na innych stronach

Przepraszam za mój kod, jest wadliwy. Po pierwsze jeśli rozpoczęło odliczać w 25 sekundzie minuty to gdy zostanie 25 sekund do konca minuty to bedzie pisalo -25, -24

Rowniez zauwazylem ze ywwalany jest blad. Oto poprawiona wersja:

 

Create:

GML (create)
global.old_godzina=current_hour //ustawiamy poczatkowa godzine...

global.old_minuta=current_minute //...minute...

global.old_sekunda=current_second//...sekunde

global.cur_godzina=current_hour//aktualizujemy obecna godzine...

global.cur_minuta=current_minute//...minute...

global.cur_sekunda=current_second//...sekunde.

global.godzina=0 //ustawiamy godzine by nie wywalilo bledu

global.minuta=0 //to samo

global.sekunda=0//itd</span>

Step:

GML (step)
global.cur_godzina=current_hour//aktualizujemy obecna godzine...

global.cur_minuta=current_minute//...minute...

global.cur_sekunda=current_second//...sekunde.

if global.cur_sekunda != global.old_sekunda //jesli zaktualizowana sekunda jest inna od poprzednio znanej...

{ //...to znaczy ze zmienil sie czas o sekunde

global.old_sekunda=global.cur_sekunda //wiec aktualizujemy poprzednia sekunde

global.sekunda+=1 //a w naszym liczniku ja dodajemy

}

if global.sekunda=60

{

global.sekunda=0 //jak juz zrobilo pelna minute to trzeba zaktualizowac

global.minuta+=1//i dodac minute;)

}

if global.minuta=60

{

global.minuta=0 //jak juz zrobilo pelna godzine to trzeba zaktualizowac

global.godzina+=1//i dodac godzine

}

Draw:

GML (draw)
draw_text(x,y,"Czas gry:"+string(global.godzina)+":"+string(global.minuta)+":"+string(global.sekunda))//wyswietlamy na ekranie czas</span>
Odnośnik do komentarza
Udostępnij na innych stronach

ehhh...nie lepiej na alarmach? ;D

GML
//create

godzina=0

minuta=0

sekunda=0

alarm[0]=10

 

//alarm[0]

sekunda+=1

alarm[0]=10

 

//step

if sekunda=61

{

sekunda=0

minuta+=1

}

if minuta=61

{

minuta=0

godzina+=1

}

I to chyba by było na tyle ;D

 

E: jednak alarm[0]=20 ;D Zależy od room speed ;p trzeba dopasować ;]

Odnośnik do komentarza
Udostępnij na innych stronach

GML
//create

godzina=0

minuta=0

sekunda=0

alarm[0]=1*room_speed

 

//alarm[0]

sekunda+=1

alarm[0]=1*room_speed

 

//step

if sekunda=61

{

sekunda=0

minuta+=1

}

if minuta=61

{

minuta=0

godzina+=1

}

 

//draw

draw_text(x,y,string(godzina)+":"+string(minuta)+":"+string(sekunda))

 

Lepiej? xD Sie przyczepił jeden no! xDD

Odnośnik do komentarza
Udostępnij na innych stronach

Ludzie, błagam, nie załamujcie mnie... :(

 

Podałem najkrótsze i najlepsze jednocześnie rozwiązanie, WilkAss wyskakuje ze zrobieniem tego samego na Alarmach ( =( ), trzy posty dyskusji o tym, że gdy room_speed będzie inny niż przewidziałeś nie będzie działało (w tym strasznie wartościowy merytorycznie post "heh trzeba dopasować xD"), następny syfiasty kod na alarmach, i jeszcze następne pięć wartościowych dla autora tematu postów.

 

Co, że dwa działające jak należy (jedno nie zalecane do użytku, ale jednak, działa przynajmniej) rozwiązania już padły, spamujmy dalej długimi niedziałającymi skryptami.

 

Pozwolę sobie jeszcze raz napisać to samo, bo chyba nie zauważyliście...

GML
//Create

tStart = current_time;

 

//Step

tSec = (current_time - tstart) div 1000;

tMin = (current_time - tstart) div 60000;

Odnośnik do komentarza
Udostępnij na innych stronach

Widać że masz ego i jesteś pałą. Mój kod działa więc nie mów że "nie zalecane do użytku, ale jednak, działa przynajmniej". Rozumiem, twoje krótsze, ale moje też poprawne. Jesteś pałą i tyle.

 

A ty za to jesteś ludzikiem z 8 warnami. Też ładnie :)

Platyna

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

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

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