Salut!
j'ai une méthode pour tester si une entité n'a pas déjà été ajoutée dans une std::map.
Mais lorsque entity->getType() qui vaut "E_HERO" par exemple ça ne me trouve pas le type. pourtant lorsque je tape ça :
Code cpp : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 bool Map::containsVisibleEntity(Entity* entity) { VEntitiesByType it; it = vEntitiesByType.find(entity->getType()); if (it == vEntitiesByType.end()) return false; for (unsigned int i = 0; i < it->second.size(); i++) { if (it->second[i] == entity) { return true; } } return false; }
Là il me trouve le type et pourtant les deux strings sont les même.
Code cpp : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 it = vEntitiesByType.find(entity->getType("E_HERO));
Un autre problème aussi les adresses de it->second[i] et de entity sont différentes hors que c'est la même entité donc il ne la trouve pas.
Partager