35 lines
1.1 KiB
C
35 lines
1.1 KiB
C
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include "logHelper.h"
|
|
#include <SDL2/SDL.h>
|
|
#include <SDL2/SDL_image.h>
|
|
#include <SDL2/SDL_ttf.h>
|
|
#include "arenaGUI.h"
|
|
|
|
void displayArena(ARENA_H_TILE* arena, SDL_Window* window, TILE *tiles, int size_h, int size_w, int tile_size) {
|
|
SDL_Rect tmp_tile_coord;
|
|
int i,j;
|
|
for (i=0; i<size_h; i++) {
|
|
for (j=0; j<size_w; j++) {
|
|
tmp_tile_coord.x = i * tile_size;
|
|
tmp_tile_coord.y = j * tile_size;
|
|
|
|
SDL_BlitSurface(getTileSurfaceFromID(tiles,getTileTypeID(arena,i,j)), NULL, SDL_GetWindowSurface(window), &tmp_tile_coord);
|
|
|
|
SDL_UpdateWindowSurface(window);
|
|
}
|
|
}
|
|
}
|
|
|
|
void updatePlayerPos(ARENA_H_TILE* arena, SDL_Window* window, PLAYER *player, TILE *tiles, SDL_Rect new_coord) {
|
|
SDL_Rect old_coord;
|
|
|
|
old_coord.x = player->PositionX;
|
|
old_coord.y = player->PositionY;
|
|
|
|
SDL_BlitSurface(getTileSurfaceFromID(tiles,getTileTypeID(arena,player->PositionX,player->PositionY)), NULL, SDL_GetWindowSurface(window), &old_coord);
|
|
SDL_BlitSurface(player->texture[getRelativeDirection(old_coord, new_coord)], NULL, SDL_GetWindowSurface(window), &new_coord);
|
|
|
|
SDL_UpdateWindowSurface(window);
|
|
}
|