Advertisement
Guest User

Untitled

a guest
Jan 20th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.66 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width">
  6. <title>repl.it</title>
  7. <link href="index.css" rel="stylesheet" type="text/css" />
  8. <style>
  9.  
  10. </style>
  11. </head>
  12. <body>
  13. <canvas id="game" width="256" height="256" style="background: #333;"></canvas>
  14. <img style="display: none;" src="https://image.ibb.co/ndE8Ww/character.png">
  15. <img style="display: none;" src="https://image.ibb.co/m7sqdb/grass.png">
  16. <script>
  17. var sprites = {
  18. character1: {sprite_w: 16,sprite_h: 28,sprite_x: 0,sprite_y: 0, canvas_x: 100, canvas_y: 100},
  19. }
  20. // First lets make this a function, so we can call it everytime we need to load the graphics.
  21. function graphics(sprites)
  22. {
  23.  
  24. var resource = new Image();
  25. resource.src = "https://image.ibb.co/ndE8Ww/character.png";
  26.  
  27. var canvas = document.getElementById('game');
  28. var context = canvas.getContext("2d");
  29.  
  30. for(var key in sprites)
  31. {
  32. console.log(key);
  33. context.drawImage(resource, sprites[key]['sprite_x'], sprites[key]['sprite_y'], sprites[key]['sprite_w'], sprites[key]['sprite_h'], sprites[key]['canvas_x'], sprites[key]['canvas_y'], sprites[key]['sprite_w'],sprites[key]['sprite_h']);
  34. }
  35. }
  36.  
  37.  
  38. // Now we want to listen to see if there are any clicks.
  39. var element = document.getElementById('game'); // define element
  40. element.addEventListener('click', move, false);
  41. function move(e)
  42. {
  43. var clickX = e.pageX; // get x cord of click
  44. var clickY = e.pageY; // get y cord of click
  45. var canvas = document.getElementById('game'); // set element
  46. var canvasLocationX = clickX - canvas.offsetLeft; // gets the actually click location in the canvas
  47. var canvasLocationY = clickY - canvas.offsetTop; // gets the actually click location in the canvas
  48.  
  49. console.log('X:' + canvasLocationX + 'Y: ' + canvasLocationY);
  50.  
  51. sprites['character1']['canvas_x'] = canvasLocationX;
  52. sprites['character1']['canvas_y'] = canvasLocationY;
  53. graphics(sprites);
  54.  
  55. }
  56.  
  57. document.onkeydown = function(e) {
  58. var canvas = document.getElementById('game');
  59. var context = canvas.getContext("2d");
  60. context.clearRect(0, 0, canvas.width, canvas.height);
  61. if (e.key == "d") {
  62. sprites['character1']['canvas_x'] = sprites['character1']['canvas_x']+10;
  63.  
  64. }
  65. if (e.key == "s") {
  66. sprites['character1']['canvas_y'] = sprites['character1']['canvas_y']+10;
  67.  
  68.  
  69. }
  70.  
  71. if (e.key == "w") {
  72. sprites['character1']['canvas_y'] = sprites['character1']['canvas_y']-10;
  73.  
  74.  
  75. }
  76. if (e.key == "a") {
  77. sprites['character1']['canvas_x'] = sprites['character1']['canvas_x']-10;
  78.  
  79.  
  80. }
  81. drawMap(mappack);
  82. graphics(sprites);
  83.  
  84. }
  85. var mappack = {
  86. t0: {sprite_w: 32,sprite_h: 32,sprite_x: 0,sprite_y: 0, canvas_x: 0, canvas_y: 0},
  87. t1: {sprite_w: 32,sprite_h: 32,sprite_x: 0,sprite_y: 0, canvas_x: 0, canvas_y: 32},
  88. t2: {sprite_w: 32,sprite_h: 32,sprite_x: 0,sprite_y: 0, canvas_x: 0, canvas_y: 64},
  89. t3: {sprite_w: 32,sprite_h: 32,sprite_x: 0,sprite_y: 0, canvas_x: 0, canvas_y: 96},
  90. t4: {sprite_w: 32,sprite_h: 32,sprite_x: 0,sprite_y: 0, canvas_x: 0, canvas_y: 128},
  91. t5: {sprite_w: 32,sprite_h: 32,sprite_x: 0,sprite_y: 0, canvas_x: 0, canvas_y: 160},
  92. t6: {sprite_w: 32,sprite_h: 32,sprite_x: 0,sprite_y: 0, canvas_x: 0, canvas_y: 192},
  93. t7: {sprite_w: 32,sprite_h: 32,sprite_x: 0,sprite_y: 0, canvas_x: 0, canvas_y: 192+32},
  94. t8: {sprite_w: 32,sprite_h: 32,sprite_x: 0,sprite_y: 0, canvas_x: 0, canvas_y: 32*8},
  95. }
  96. function drawMap(mappack) {
  97. var map = new Image();
  98. map.src = "https://image.ibb.co/m7sqdb/grass.png";
  99.  
  100. var canvas = document.getElementById('game');
  101. var context = canvas.getContext("2d");
  102.  
  103. for(var key in mappack)
  104. {
  105. console.log(key);
  106. context.drawImage(map, mappack[key]['sprite_x'], mappack[key]['sprite_y'], mappack[key]['sprite_w'], mappack[key]['sprite_h'], mappack[key]['canvas_x'], mappack[key]['canvas_y'], mappack[key]['sprite_w'],mappack[key]['sprite_h']);
  107. }
  108. }
  109.  
  110. drawMap(mappack);
  111. graphics(sprites);
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119. </script>
  120. </body>
  121. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement