diff --git a/IsometricMap/isometricMap.c b/IsometricMap/isometricMap.c index 302c605..fe8307d 100644 --- a/IsometricMap/isometricMap.c +++ b/IsometricMap/isometricMap.c @@ -9,7 +9,11 @@ IsometricMap * IsometricMapInit(int layer){ IsometricMap* map = (IsometricMap *) malloc(sizeof(IsometricMap)); map->tileTextures[0] = LoadTexture("assets/grass.png"); - map->tileTextures[1] = LoadTexture("assets/tower.png"); + map->tileTextures[1] = LoadTexture("assets/grass_selected.png"); + map->tileTextures[2] = LoadTexture("assets/tower.png"); + + //map->tileTextures[0] = LoadTexture("assets/desert.png"); + //map->tileTextures[1] = LoadTexture("assets/bigtower.png"); map->originX = 0; map->originY = -layer * map->tileTextures[0].width / 4; diff --git a/IsometricMap/isometricRenderer.c b/IsometricMap/isometricRenderer.c index 82811f3..3e7f706 100644 --- a/IsometricMap/isometricRenderer.c +++ b/IsometricMap/isometricRenderer.c @@ -48,10 +48,11 @@ void IsometricRendererRenderIsometricMap(IsometricMap **map, InputHandler *input if(map[n]->tiles[i][j]->textureId != -1){ Vector2 *offset = IsometricMapCalcOffsetForTileAt(i,j, map[n]->textureWidth); + int textureId = map[n]->tiles[i][j]->textureId; + float x = map[n]->originX + offset->x; - float y = map[n]->originY + offset->y; + float y = map[n]->originY + offset->y + map[n]->textureHeight - map[n]->tileTextures[textureId].height; - int textureId = map[n]->tiles[i][j]->textureId; DrawTexture(map[n]->tileTextures[textureId], x, y, WHITE); free(offset); diff --git a/README.md b/README.md index a4ec636..59bce6d 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,9 @@ Fantasy Welt oder Realistisch? + Die Inputs sollten den Kamera Zoom beachten, aktuell geht noch alles kaputt wenn man den zoom umstellt + Funktion, um die ganzen Sprites nach ihrer y-Koordinaten sortiert zu drawen + Dokumentation anfangen ++ storing maps in files ++ MapEditor ++ Parser for Mapfiles ### WiP diff --git a/assets/bigtower.png b/assets/bigtower.png new file mode 100644 index 0000000..bd7a177 Binary files /dev/null and b/assets/bigtower.png differ diff --git a/assets/desert.png b/assets/desert.png new file mode 100644 index 0000000..c741d71 Binary files /dev/null and b/assets/desert.png differ diff --git a/assets/grass_selected.png b/assets/grass_selected.png new file mode 100644 index 0000000..7b918ad Binary files /dev/null and b/assets/grass_selected.png differ diff --git a/game.c b/game.c index 020804b..edf1d14 100644 --- a/game.c +++ b/game.c @@ -89,7 +89,7 @@ Game *GameInit() case 2: if (i > 40 && i < 44 && j > 50 && j < 54) { - IsometricMapAddTile(((game->layers))[n], i, j, 1); + IsometricMapAddTile(((game->layers))[n], i, j, 2); } break; } @@ -118,7 +118,7 @@ Game *GameInit() IsometricMapAddTile(((game->layers))[n], i, j, 0); if (n == 9) { - IsometricMapAddTile(((game->layers))[n], i, j, 1); + IsometricMapAddTile(((game->layers))[n], i, j, 2); } } } diff --git a/game.o b/game.o new file mode 100644 index 0000000..afc8e3b Binary files /dev/null and b/game.o differ diff --git a/inputHandler.o b/inputHandler.o new file mode 100644 index 0000000..74488be Binary files /dev/null and b/inputHandler.o differ diff --git a/isometricMap.o b/isometricMap.o new file mode 100644 index 0000000..b7767f0 Binary files /dev/null and b/isometricMap.o differ diff --git a/isometricRenderer.o b/isometricRenderer.o new file mode 100644 index 0000000..b97b89d Binary files /dev/null and b/isometricRenderer.o differ diff --git a/list.o b/list.o new file mode 100644 index 0000000..934eed6 Binary files /dev/null and b/list.o differ diff --git a/main.o b/main.o new file mode 100644 index 0000000..5568617 Binary files /dev/null and b/main.o differ diff --git a/spiel b/spiel new file mode 100755 index 0000000..395cc75 Binary files /dev/null and b/spiel differ diff --git a/sprite.o b/sprite.o new file mode 100644 index 0000000..64532a0 Binary files /dev/null and b/sprite.o differ diff --git a/tile.o b/tile.o new file mode 100644 index 0000000..ab55776 Binary files /dev/null and b/tile.o differ