Yeah, it's because I thought getting string as integer would give the same pointer:
Code:
new entitiesList[12];
new entitiesCount;
entitiesCount = find_sphere_class(0, "func_bomb_target", 4096.0, entitiesList, sizeof entitiesList);
entitiesCount += find_sphere_class(0, "info_bomb_target", 4096.0, entitiesList[entitiesCount], sizeof entitiesList - entitiesCount);
new Trie:targetsList = TrieCreate();
for (new i, entity, targetName[32], Float:origin[3]; i < entitiesCount; ++i)
{
entity = entitiesList[i];
pev(entity, pev_target, targetName, charsmax(targetName));
!TrieKeyExists(targetsList, targetName) && TrieSetCell(targetsList, targetName, true);
get_brush_entity_origin(entity, origin);
server_print("Found %s (%d) : %f %f %f", targetName, entity, origin[0], origin[1], origin[2]);
}
new bombSitesCount = TrieGetSize(targetsList);
TrieDestroy(targetsList);
log_amx("Bomb site count = %d", bombSitesCount);
Code:
Found squarebreak (29) : 660.000000 -308.000000 -228.000000
Found templebreak (31) : -2064.000000 -100.000000 -408.000000
Found squarebreak (280) : 988.000000 -444.000000 -228.000000
Found squarebreak (281) : 1088.000000 -308.000000 -228.000000
Bomb site count = 2
__________________