Fix snake asset case handling

This commit is contained in:
Jonas
2025-09-21 20:23:42 +02:00
parent 62875421b1
commit 02eb518083
3 changed files with 33 additions and 14 deletions

View File

@@ -1,18 +1,29 @@
const SNAKE_COLOR_ASSET_MAP = {
blue: "Blue",
red: "Red",
};
class TileLoader{
constructor(){
this.allSrc = [
const fruitSources = [
"Fruits/Apfel.png",
"Fruits/Blaubeere.png",
"Snakes/blue/End.png",
"Snakes/blue/Head.png",
"Snakes/blue/Straight.png",
"Snakes/blue/Turn.png",
"Snakes/red/End.png",
"Snakes/red/Head.png",
"Snakes/red/Straight.png",
"Snakes/red/Turn.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 => {

View File

@@ -1,3 +1,8 @@
const SNAKE_COLOR_ASSET_MAP = {
blue: "Blue",
red: "Red",
};
class UIManager{
constructor(){
this.mainDiv = document.getElementById("mainMenu");
@@ -50,20 +55,21 @@ class UIManager{
const snakeTable = document.createElement("table");
const lenght = 3;
const assetColor = SNAKE_COLOR_ASSET_MAP[color] ?? color;
for (let i = 0; i < lenght; i++) {
const tr = document.createElement("tr");
const td = document.createElement("td");
const img = document.createElement("img");
switch (i) {
case 0:
img.src = `./assets/Snakes/${color}/Head.png`;
img.src = `./assets/Snakes/${assetColor}/Head.png`;
break;
case lenght - 1:
img.src = `./assets/Snakes/${color}/End.png`;
img.src = `./assets/Snakes/${assetColor}/End.png`;
break;
default:
img.src = `./assets/Snakes/${color}/Straight.png`;
img.src = `./assets/Snakes/${assetColor}/Straight.png`;
break;
}
img.style.transform = "rotate(270deg)";