Advertisement
Guest User

Untitled

a guest
Dec 5th, 2019
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.09 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7. <title>Document</title>
  8. <style>
  9. body {
  10. margin: 0;
  11. border: 0;
  12. padding: 0;
  13. background-color: black;
  14. }
  15. #plansza {
  16. width: 600px;
  17. height: 600px;
  18. border-right: 5px solid white;
  19. border-bottom: 5px solid white;
  20. background-color: black;
  21. }
  22. .bloczek {
  23. width: 48px;
  24. height: 20px;
  25. border: 1px solid black;
  26. float: left;
  27. background-color: green;
  28. }
  29. .suwaczek {
  30. width: 200px;
  31. height: 20px;
  32. background-color: #800000;
  33. border-radius: 20px;
  34. position: relative;
  35. top: 580px;
  36. }
  37. .kuleczka {
  38. width: 20px;
  39. height: 20px;
  40. background-color: magenta;
  41. border-radius: 20px;
  42. position: relative;
  43. }
  44. #zyciaH3 {
  45. color: white;
  46. margin-left: 20px;
  47. font-size: 40px;
  48. }
  49.  
  50. </style>
  51. </head>
  52. <body onkeydown="klik(event);">
  53. <div id="plansza" onmousemove="ruszajMycha(event);"></div>
  54. <h3 id="zyciaH3"></h3>
  55. </body>
  56. <script>
  57. //szerokosc bloczka = 50px
  58. //wysokosc bloczka = 20px
  59. //bloczkow na szerokosci: 12
  60. //bloczkow na wysokosci: 10
  61. //width: 48px height: 20px
  62. //border - 2 piksele
  63. let wysokosc = 10;
  64. let szerokosc = 12;
  65. let planszaDiv = document.getElementById("plansza");
  66. let h3 = document.getElementById("zyciaH3");
  67. let suwakDiv;
  68. let kuleczkaDiv;
  69. let zycia = 3;
  70. //Dostepne kierunki: LewoGora,PrawoGora,LewoDol,PrawoDol
  71. let kierunekKulki = "PrawoGora";
  72. let intervalRuchu;
  73.  
  74. //Tworzy podstawową część planszy
  75. stworzWszystko();
  76. ustawIntervaly();
  77. wyswietlZycia();
  78. function klik(event) {
  79. console.log(event.key)
  80. if(event.key == "ArrowLeft" || event.key == "a") {
  81. ruszSuwak("lewo");
  82. } else if(event.key == "ArrowRight" || event.key == "d") {
  83. ruszSuwak("prawo");
  84. }
  85. }
  86.  
  87. function ruszSuwak(kierunek) {
  88. let aktualnyLeftSuwaka = parseInt(suwakDiv.style.left);
  89. if(kierunek == "lewo" && aktualnyLeftSuwaka >= 15) {
  90. //obsługuje ruch w lewo
  91. aktualnyLeftSuwaka -= 15;
  92. } else if(kierunek == "prawo" && aktualnyLeftSuwaka <= 385) {
  93. //obsługuje ruch w prawo
  94. aktualnyLeftSuwaka += 15;
  95. }
  96. suwakDiv.style.left = (aktualnyLeftSuwaka) + "px";
  97. }
  98.  
  99. function ruszKulke() {
  100. let aktualnyLeftKulki = parseInt(kuleczkaDiv.style.left);
  101. let aktualnyTopKulki = parseInt(kuleczkaDiv.style.top);
  102. let aktualnyLeftSuwaka = parseInt(suwakDiv.style.left);
  103. if(kierunekKulki == "PrawoGora") {
  104. aktualnyLeftKulki++;
  105. aktualnyTopKulki--;
  106. } else if(kierunekKulki == "LewoGora") {
  107. aktualnyLeftKulki--;
  108. aktualnyTopKulki--;
  109. } else if(kierunekKulki == "PrawoDol") {
  110. aktualnyLeftKulki++;
  111. aktualnyTopKulki++;
  112. } else if(kierunekKulki == "LewoDol") {
  113. aktualnyLeftKulki--;
  114. aktualnyTopKulki++;
  115. }
  116. kuleczkaDiv.style.left = (aktualnyLeftKulki) + "px";
  117. kuleczkaDiv.style.top = (aktualnyTopKulki) + "px";
  118. if(aktualnyLeftKulki == 580 && kierunekKulki == "PrawoGora") {
  119. kierunekKulki = "LewoGora";
  120. }
  121. if(aktualnyLeftKulki == 580 && kierunekKulki == "PrawoDol") {
  122. kierunekKulki = "LewoDol";
  123. }
  124. if(aktualnyLeftKulki == 0 && kierunekKulki == "LewoGora") {
  125. kierunekKulki = "PrawoGora";
  126. }
  127. if(aktualnyLeftKulki == 0 && kierunekKulki == "LewoDol") {
  128. kierunekKulki = "PrawoDol";
  129. }
  130. if(aktualnyTopKulki == -20 && kierunekKulki == "LewoGora") {
  131. kierunekKulki = "LewoDol";
  132. }
  133. if(aktualnyTopKulki == -20 && kierunekKulki == "PrawoGora") {
  134. kierunekKulki = "PrawoDol";
  135. }
  136. if(aktualnyTopKulki == 560) {
  137. odejmijZycie();
  138. }
  139. if(aktualnyTopKulki == 540 && aktualnyLeftKulki >= aktualnyLeftSuwaka-10 && aktualnyLeftKulki <= aktualnyLeftSuwaka + 90) {
  140. kierunekKulki = "LewoGora";
  141. } else if(aktualnyTopKulki == 540 && aktualnyLeftKulki >= aktualnyLeftSuwaka-10 && aktualnyLeftKulki <= aktualnyLeftSuwaka + 190) {
  142. kierunekKulki = "PrawoGora";
  143. }
  144. }
  145.  
  146. function wyswietlZycia() {
  147. h3.innerHTML = "Pozostałych żyć: " + zycia;
  148. }
  149.  
  150. function odejmijZycie() {
  151. if(zycia == 0) {
  152. alert("Przegrałeś!");
  153. h3.innerHTML = "Przegrałeś, nie możesz kontynuować gry";
  154. planszaDiv.removeChild(kuleczkaDiv);
  155. planszaDiv.removeChild(suwakDiv);
  156. return;
  157. }
  158. zycia--;
  159. wyswietlZycia();
  160. //przywracamy do ustawień początkowych
  161. kierunekKulki = "PrawoGora";
  162. suwakDiv.style.left = "200px";
  163. kuleczkaDiv.style.left = "290px";
  164. kuleczkaDiv.style.top = "540px";
  165. alert("Tracisz zycie. Pozostalych zyc: " + zycia);
  166.  
  167. }
  168. function ruszajMycha(event) {
  169. if(event.screenX <= 500 && event.screenX >= 100) {
  170. suwakDiv.style.left = (event.screenX-100) + "px";
  171. }
  172. }
  173.  
  174. function ustawIntervaly() {
  175. intervalRuchu = setInterval(() => {
  176. ruszKulke();
  177. }, 1)
  178. }
  179.  
  180. //Stworzenie podstawowej części planszy
  181. function stworzWszystko() {
  182. for(let y = 0; y < wysokosc; y++) {
  183. for(let x = 0; x < szerokosc; x++) {
  184. let bloczekDiv = document.createElement("div");
  185. bloczekDiv.className = "bloczek";
  186. planszaDiv.appendChild(bloczekDiv);
  187. }
  188. }
  189. //Stworzenie suwaka
  190. suwakDiv = document.createElement("div");
  191. suwakDiv.className = "suwaczek";
  192. suwakDiv.style.left = "200px";
  193.  
  194. //Stworzenie kulki
  195. kuleczkaDiv = document.createElement("div");
  196. kuleczkaDiv.className = "kuleczka";
  197. kuleczkaDiv.style.left = "290px";
  198. kuleczkaDiv.style.top = "540px";
  199.  
  200. //W kulce ustawiamy top i left recznie, w suwaku ustawiamy tylko left recznie, bo top sie nie zmienia
  201. //reszte styli ustawiamy sobie u gory w styles
  202. planszaDiv.append(suwakDiv);
  203. planszaDiv.append(kuleczkaDiv);
  204. }
  205. </script>
  206. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement