Итак, у меня есть набор плиток, полный маленьких плиток, таких как земля, вода, деревья и т. Д. У меня есть цикл for, который циклически повторяется, чтобы нарисовать плитку на холсте.Он рисует, но только один раз маленькую конкретную плитку, которая мне нужна, или рисует все изображение или маленькую конкретную плитку, но на весь экран.Но мне нужно, чтобы кусочки травы повторялись 25 раз на холсте, например, для создания карты.Код:
var canvas = document.getElementById("canvas");
var context = canvas.getContext("2d");
var StyleSheet = function(image, width, height) {
this.image = image;
this.width = width;
this.height = height;
this.draw = function(image, sx, sy, swidth, sheight, x, y, width, height) {
image.onload = function() {
context.drawImage(image, sx, sy, swidth, sheight,x, y, width, height);
}
}
}
var Loader = function(src) {
this.image = new Image();
this.image.src = src;
return this.image;
}
var background = new Loader("ground.png");
console.log(background);
var sprite = new StyleSheet(background, 16, 16);
for (i = 0; i < 25; i++) {
for (j = 0; j < 25; j++) {
sprite.draw(background, 30, 30, 36, 36, i * 0, j * 0, sprite.width, sprite.height);
}
}
Я пытаюсь * 0, j * 0
в цикле, но это не помогает
Теперь это так:
но мне нужно, чтобы это было так: