Markuz Opublikowano 29 Stycznia 2010 Udostępnij Opublikowano 29 Stycznia 2010 Oto mój kod chodzenia: function OdswiezMape() { var req = mint.Request(); req.Send("map_includes/5x5game.php", "map"); var req = mint.Request(); req.Send("map_includes/gracze_obok.php", "gold"); } function go(where) { document.getElementById('hero').style.background= "url(img/hero_"+where+".png)"; var req = mint.Request(); req.Send("ruch.php?step_edit="+where, "response"); document.getElementById('map').style.margin.Left=50; OdswiezMape(); } function przechwyc(e) { var event = window.event || e; switch(event.keyCode){ case 83: go("down"); break; case 87: go("up"); break; case 68: go("right"); break; case 65: go("left"); break; } } document.onkeydown = przechwyc; Wszystko ok, ale gdy przytrzymamy klawisz nie jest fajnie :) Jak zrobić aby nasz gracz mógł wykonywać ruch co 0,5 s? Proszę o pomoc :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 29 Stycznia 2010 Administratorzy Udostępnij Opublikowano 29 Stycznia 2010 może tak jak alarmy w GM? coś na zasadzie : moge_sie_ruszac = false; czas = setTimeout("funkcja"); - chociaż w sumie za pomocą samej zmiennej czas można stwierdzić, czy ustawiono czas ( jest też clearTimeout ). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Markuz Opublikowano 29 Stycznia 2010 Autor Udostępnij Opublikowano 29 Stycznia 2010 Hehe też na to wpadłem i tak zrobiłem ale nie chodziło nic (pewnie jakiś błąd) i dlatego spytałem tutaj, dam może ten "drugi" kod: function OdswiezMape() { var req = mint.Request(); req.Send("map_includes/5x5game.php", "map"); var req = mint.Request(); req.Send("map_includes/gracze_obok.php", "gold"); } var gotowy=true; function start() { gotowy=true; timer=setTimeout("start()",500); } function stop() { clear(timer); } function go(where) { alert(gotowy); if(gotowy==true) { gotowy=false; document.getElementById('hero').style.background= "url(img/hero_"+where+".png)"; var req = mint.Request(); req.Send("ruch.php?step_edit="+where, "response"); document.getElementById('map').style.margin.Left=50; OdswiezMape(); } } function przechwyc(e) { var event = window.event || e; switch(event.keyCode){ case 83: go("down"); break; case 87: go("up"); break; case 68: go("right"); break; case 65: go("left"); break; } } document.onkeydown = przechwyc; Alert który jest w funkcji go za pierwszym razem pokazuje true ( czyli dobrze) a później już tylko fałsz heh Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
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ę