Files
DoubleSnake/frontend/game/scripts/Game/Elements/TileLoader.js
2025-09-21 20:23:42 +02:00

37 lines
906 B
JavaScript

const SNAKE_COLOR_ASSET_MAP = {
blue: "Blue",
red: "Red",
};
class TileLoader{
constructor(){
const fruitSources = [
"Fruits/Apfel.png",
"Fruits/Blaubeere.png",
];
const snakeSegments = [
"End.png",
"Head.png",
"Straight.png",
"Turn.png",
];
const snakeSources = Object.keys(SNAKE_COLOR_ASSET_MAP).flatMap(color => {
const assetColor = SNAKE_COLOR_ASSET_MAP[color] ?? color;
return snakeSegments.map(segment => `Snakes/${assetColor}/${segment}`);
});
this.allSrc = [...fruitSources, ...snakeSources];
this.tileMap = new Map();
this.allSrc.forEach(src => {
const img = new Image();
img.src = `./assets/${src}`;
this.tileMap.set(src, img);
})
}
}
export default TileLoader;