Fix procession ordering issue in content_cao

This commit is contained in:
sfan5 2021-05-29 19:08:16 +02:00
parent 2c53f03c18
commit f30dcdb504

@ -346,18 +346,6 @@ void GenericCAO::initialize(const std::string &data)
infostream<<"GenericCAO: Got init data"<<std::endl; infostream<<"GenericCAO: Got init data"<<std::endl;
processInitData(data); processInitData(data);
if (m_is_player) {
// Check if it's the current player
LocalPlayer *player = m_env->getLocalPlayer();
if (player && strcmp(player->getName(), m_name.c_str()) == 0) {
m_is_local_player = true;
m_is_visible = false;
player->setCAO(this);
m_prop.show_on_minimap = false;
}
}
m_enable_shaders = g_settings->getBool("enable_shaders"); m_enable_shaders = g_settings->getBool("enable_shaders");
} }
@ -380,6 +368,16 @@ void GenericCAO::processInitData(const std::string &data)
m_rotation = readV3F32(is); m_rotation = readV3F32(is);
m_hp = readU16(is); m_hp = readU16(is);
if (m_is_player) {
// Check if it's the current player
LocalPlayer *player = m_env->getLocalPlayer();
if (player && strcmp(player->getName(), m_name.c_str()) == 0) {
m_is_local_player = true;
m_is_visible = false;
player->setCAO(this);
}
}
const u8 num_messages = readU8(is); const u8 num_messages = readU8(is);
for (int i = 0; i < num_messages; i++) { for (int i = 0; i < num_messages; i++) {