static void recursive_update(object *item, archetype *updated)
archetype * findBySkillNameAndType(const char *skill, int type)
archetype * get(const std::string &name)
void clearReplaceListener()
archetype * findByTypeSubtype(int type, int subtype)
virtual void replace(archetype *existing, archetype *update) override
std::function< void(archetype *, archetype *)> updateListener
archetype * findByObjectName(const char *name)
archetype * empty_archetype
updateListener m_updateListener
archetype * findByObjectTypeName(int type, const char *name)
void setReplaceListener(updateListener fct)