std::vector<EntityPlayer> WorldClient::getPlayerEntities()
{
std::vector<EntityPlayer> players;
if (!instance) return players;
jobject list = env->GetObjectField(instance, WorldClientClass.getFieldID("playerEntities"));
if (!list) return players;
jclass listClass = env->GetObjectClass(list);
jmethodID sizeMethod = env->GetMethodID(listClass, "size", "()I");
jmethodID getMethod = env->GetMethodID(listClass, "get", "(I)Ljava/lang/Object;");
jint size = env->CallIntMethod(list, sizeMethod);
for (jint i = 0; i < size; ++i)
{
jobject playerObj = env->CallObjectMethod(list, getMethod, i);
if (playerObj)
players.push_back(EntityPlayer(playerObj, env));
}
return players;
}