Añadido el sonido de coger objetos

This commit is contained in:
2022-08-31 20:59:52 +02:00
parent c18a13ec83
commit 0087815ced
5 changed files with 23 additions and 4 deletions

View File

@@ -15,6 +15,7 @@ Room::Room(std::string file_path, SDL_Renderer *renderer, Asset *asset, ItemTrac
texture = new LTexture();
load(file_path);
loadTextureFromFile(texture, asset->get(tileset), renderer);
itemSound = JA_LoadSound(asset->get("item.wav").c_str());
// Crea la textura para el mapa de tiles de la habitación
mapTexture = SDL_CreateTexture(renderer, SDL_PIXELFORMAT_RGBA8888, SDL_TEXTUREACCESS_TARGET, GAMECANVAS_WIDTH, GAMECANVAS_HEIGHT);
@@ -33,6 +34,8 @@ Room::~Room()
delete texture;
texture = nullptr;
JA_DeleteSound(itemSound);
SDL_DestroyTexture(mapTexture);
mapTexture = nullptr;
@@ -540,15 +543,27 @@ bool Room::enemyCollision(SDL_Rect &rect)
bool Room::itemCollision(SDL_Rect &rect)
{
bool collision = false;
for (auto item : items)
for (int i =0;i<items.size();i++)
{
if (checkCollision(rect, item->getCollider()))
if (checkCollision(rect, items[i]->getCollider()))
{
item->pick();
itemTracker->addItem(name, item->getPos());
itemTracker->addItem(name, items[i]->getPos());
delete items[i];
items.erase(items.begin()+i);
JA_PlaySound(itemSound);
collision = true;
}
}
//for (auto item : items)
//{
// if (checkCollision(rect, item->getCollider()))
// {
// itemTracker->addItem(name, item->getPos());
// item->pick();
// JA_PlaySound(itemSound);
// collision = true;
// }
//}
return collision;
}