Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Javascript] Poruszanie się po CANVAS
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Dominator
Witam
Mam sobie canvas no i chcę się poruszyć na północny zachód.

Plansza:

^|||||||||
||||*||||
||||||||||

| - mapa
* - gracz
^ - miejsce, w które chcę się udać.

  1. if(e.keyCode == 38 && e.keyCode == 37) { //
  2. console.log("udajesz się na północny zachód");
  3. }


Lecz to nie działa, dlaczego?
Crozin
Jeżeli keyCode jest równe 38 ORAZ keyCode jest równe 37 - przecież ten warunek nigdy nie może być prawdziwy.
Dominator
To jak ja mam sprawdzić czy użytkownik wcisnął strzałkę w lewo oraz strzałkę do góry?
kamil4u
http://stackoverflow.com/questions/5203407...pressed-at-once
->
http://jsfiddle.net/vor0nwe/mkHsU/

I trochę przeróbki tego kodu i Ci się uda smile.gif
Dominator
Skorzystałem z pomocy pewnego skryptu.

  1. $(document).bind('keydown', jwerty.event('W', function()
  2. {
  3. y-=szybkosc;
  4. }));
  5. $(document).bind('keydown', jwerty.event('S', function()
  6. {
  7. y += szybkosc;
  8. }));
  9. $(document).bind('keydown', jwerty.event('A', function()
  10. {
  11. x -= szybkosc;
  12. }));
  13. $(document).bind('keydown', jwerty.event('D', function()
  14. {
  15. x += szybkosc;
  16. }));
  17. $(document).bind('keydown', jwerty.event('W+D', function()
  18. {
  19. y-=szybkosc;
  20. x += szybkosc;
  21. }));


Problem jest taki, że gdy naciskam W to postać nie porusza się do góry tylko na północny wschód...
Nie rozumiem co tutaj źle napisałem, przecież jest w skrypcie, że po naciśnięciu W wykona się y-=szybkosc;, a wykonuje się y-=szybkosc; x += szybkosc;

Edit: naprawiłem biggrin.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.