shared_ptr<LanguageCulture> LanguageCulture::addCulture(const String &id) { Cultures::const_iterator i = m_cultures.find(String(id).to_lower()); if(i != m_cultures.end()) return i->second; shared_ptr<LanguageCulture> culture(OS_NEW LanguageCulture(get_this_ptr())); m_cultures[String(id).to_lower()] = culture; return culture; }
void planet_description(struct mtwist_state *mt, char *buffer, int buflen, int line_len) { char do_avoid[100]; strcpy(do_avoid, avoid(mt)); do_avoid[0] = toupper(do_avoid[0]); snprintf(buffer, buflen, "This %s %s %s %s %s %s %s and %s %s %s %s. %s the %s %s. %s %s.\n", climate(mt), planet(mt), known_for(mt), producing(mt), exceptional(mt), qnationality(mt), product(mt), known_for(mt), exceptional(mt), qnationality(mt), culture(mt), do_avoid, terrible(mt), product(mt), bring_your(mt), traveling_accessory(mt)); break_lines(buffer, line_len); }
void Level::Impl::checkWinMission() { auto city = game->city(); auto& conditions = city->victoryConditions(); int culture = city->culture(); int prosperity = city->prosperity(); int favour = city->states().favor; int peace = city->peace(); int population = city->states().population; bool success = conditions.isSuccess(culture, prosperity, favour, peace, population); if (success) { events::dispatch<ScriptFunc>("OnMissionWin"); steamapi::missionWin(conditions.name()); } }