Advertisement
Guest User

Untitled

a guest
Oct 17th, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.71 KB | None | 0 0
  1.  
  2.  
  3.  
  4. //DEFINICJA KLASY _LUDZIK
  5.  
  6. function _Ludzik(_id) {
  7.  
  8. //Klasa ludzik
  9. //wlasnosci
  10. //pionek - odwolanie do elementu div reprezentujacego ludzika
  11. //krok odleglosc na jaka w jednym kroku przesuwa sie ludzik
  12. //klatka, wiersz - wlasnosci wykorzystywane do animacji
  13. //interwal - animacja ludzika
  14.  
  15. //metody
  16. //start() - ustawienie poczatkowe ludzika
  17. //animacja - aniamcja ludzika
  18. //przesun - poruszanie ludzika
  19.  
  20. //identyfikator gracza
  21.  
  22. this.id = _id;
  23.  
  24. //odwolanie do gracza
  25. this.pionek;
  26. //krok - odleglosc o jaka przesuwam pionek
  27. this.krok = 20;
  28.  
  29. //kierunek - okresla kierunek poruszania sie
  30. this.kierunek = 3;
  31.  
  32. //jedna klatka to 80px
  33. this.klatka = 0;
  34.  
  35. //jeden wiersz to 105px
  36. this.wiersz = 0;
  37.  
  38. //zmienna na pamietanie odwolania do interwalu
  39. this.interwal;
  40.  
  41.  
  42.  
  43. this.start = function() {
  44. var e = document.createElement('div');
  45. //przypisanie własności id do elementu
  46. e.id = this.id;
  47. //odwolanie sie do parametru className
  48. e.className = 'gracz';
  49. //dodanie elementu e jako dziecka elementu plansza
  50. document.getElementById('plansza').appendChild(e);
  51. //zlapanie odwolania do elementu html
  52. this.pionek = document.getElementById(this.id);
  53. //uruchomienie kodu powtarzanego co 200ms
  54. var gr = this;
  55. this.interwal = setInterval(function(){gr.przesun();},200);
  56. // interwal = setInterval(function(){animacja();},200);
  57. };
  58.  
  59. this.przesun = function() {
  60. // 1 - lewo, 2 - gora, 3 - prawo, 4 - dol
  61. // 37 - lewo, 38 - gora, 39 - prawo, 40 - dol
  62. //console.log(this.wiersz);
  63.  
  64. switch (this.kierunek) {
  65. case 1:
  66. if(this.pionek.offsetLeft > this.krok){
  67. this.wiersz = -105;
  68. this.pionek.style.left = (this.pionek.offsetLeft)-this.krok+'px';
  69.  
  70. }
  71.  
  72.  
  73. break;
  74. case 2:
  75. if(this.pionek.offsetTop > 48) {
  76. this.wiersz = -315;
  77. this.pionek.style.top = (this.pionek.offsetTop)-this.krok+'px';
  78.  
  79. }
  80.  
  81. break;
  82. case 3:
  83. if(this.pionek.offsetLeft < window.innerWidth - this.pionek.offsetWidth - this.krok) {
  84. this.wiersz = -210;
  85. this.pionek.style.left = (this.pionek.offsetLeft)+this.krok+'px';
  86.  
  87. }
  88.  
  89. break;
  90.  
  91. case 4:
  92. if(this.pionek.offsetTop < window.innerHeight - this.pionek.offsetHeight - this.krok){
  93. this.wiersz = 0;
  94. this.pionek.style.top = (this.pionek.offsetTop)+this.krok+'px';
  95.  
  96. }
  97. break;
  98.  
  99. }
  100.  
  101. console.log('left: '+this.pionek.offsetLeft+' top: '+this.pionek.offsetTop);
  102. };
  103.  
  104. //uruchomienie metody start
  105. this.start();
  106.  
  107. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement