void mps_recycle (int x, int y) { int i = 0; char * p; mps_store_title(i++,_("Recycling")); mps_store_title(i++,_("Center")); i++; mps_store_sfp(i++,_("Capacity"), MP_INFO(x,y).int_6); p = ((MP_INFO(x,y).flags & FLAG_POWERED) != 0) ? _("YES") : _("NO"); mps_store_ss(i++,_("Power"),p); mps_store_sfp(i++,_("Tech"), MP_INFO(x,y).int_4 * 100.0 / MAX_TECH_LEVEL); i++; mps_store_title(i++,_("Inventory")); mps_store_sfp(i++,_("Ore"), MP_INFO(x,y).int_1 * 100.0 / MAX_ORE_AT_RECYCLE); mps_store_sfp(i++,_("Waste"), MP_INFO(x,y).int_2 * 100.0 / MAX_WASTE_AT_RECYCLE); }
void Coal_power::report() { int i = 0; mps_store_sd(i++, constructionGroup->name, ID); mps_store_sfp(i++, N_("busy"), busy); mps_store_sfp(i++, N_("Tech"), (float)(tech * 100.0) / MAX_TECH_LEVEL); mps_store_sd(i++, N_("Output"), mwh_output); i++; list_commodities(&i); }
void University::report() { int i = 0; mps_store_sd(i++,constructionGroup->getName(), ID); i++; mps_store_sfp(i++, _("busy"), busy); mps_store_sfp(i++, _("Tech researched"), total_tech_made * 100.0 / MAX_TECH_LEVEL); i++; list_commodities(&i); }
void Port::report() { int i = 0; mps_store_sd(i++, constructionGroup->name, ID); mps_store_sfp(i++, N_("busy"), busy); mps_store_sd(i++, N_("Export"),lastm_et/100); mps_store_sd(i++, N_("Import"),lastm_ic/100); mps_store_sfp(i++, N_("Culture exchanged"), tech_made * 100.0 / MAX_TECH_LEVEL); i++; list_commodities(&i); }
void mps_health_centre(int x, int y) { int i = 0; mps_store_title(i++, _("Health Centre")); i++; mps_store_title(i++, _("Inventory")); mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_1 * 100.0 / MAX_JOBS_AT_HEALTH_CENTRE); mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_2 * 100.0 / MAX_GOODS_AT_HEALTH_CENTRE); }
void IndustryLight::report() { int i = 0; mps_store_sd(i++, constructionGroup->name, ID); i++; mps_store_sfp(i++, N_("busy"), (busy)); mps_store_sfp(i++, N_("Tech"), (tech * 100.0) / MAX_TECH_LEVEL); i++; list_commodities(&i); }
void Recycle::report() { int i = 0; mps_store_sd(i++, constructionGroup->name,ID); i++; mps_store_sfp(i++, _("Tech"), tech * 100.0f / MAX_TECH_LEVEL); mps_store_sfp(i++, _("Efficiency Ore"), (float) make_ore * 100 / WASTE_RECYCLED); mps_store_sfp(i++, _("Efficiency Steel"),(float) make_steel * 100 / WASTE_RECYCLED); mps_store_sfp(i++, _("busy"), busy); i++; list_commodities(&i); }
void Organic_farm::report() { int i = 0; mps_store_sd(i++, constructionGroup->name, ID); i++; mps_store_sddp(i++, N_("Fertility"), ugwCount, 16); mps_store_sfp(i++, N_("Tech"), tech * 100.0 / MAX_TECH_LEVEL); mps_store_sfp(i++, N_("busy"), (float)food_last_month / 100.0); mps_store_sd(i++, N_("Output"), max_foodprod); i++; list_commodities(&i); }
void mps_oremine (int x, int y) { int i = 0; mps_store_title(i++,_("Ore Mine")); i++; mps_store_sfp(i++,_("Stock"), MP_INFO(x,y).int_1 * 100.0 / DIG_MORE_ORE_TRIGGER); i++; mps_store_sfp(i++,_("Reserve"), MP_INFO(x,y).int_2 * 100.0 / (ORE_RESERVE * 16)); }
void mps_blacksmith (int x, int y) { int i = 0; mps_store_title(i++,_("Blacksmith")); i++; mps_store_sfp(i++,_("Capacity"), MP_INFO(x,y).int_6); i++; mps_store_title(i++,_("Inventory")); mps_store_sfp(i++,_("Goods"), MP_INFO(x,y).int_1 * 100.0 / MAX_GOODS_AT_BLACKSMITH); mps_store_sfp(i++,_("Coal"), MP_INFO(x,y).int_3 * 100.0 / MAX_COAL_AT_BLACKSMITH); }
void mps_rocket(int x, int y) { int i = 0; mps_store_title(i++, _("Rocket Pad")); i++; mps_store_title(i++, _("Completion")); mps_store_fp(i++, MP_INFO(x, y).int_4 * 100.0 / ROCKET_PAD_LAUNCH); i++; mps_store_title(i++, _("Inventory")); mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_1 * 100.0 / ROCKET_PAD_JOBS_STORE); mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_2 * 100.0 / ROCKET_PAD_GOODS_STORE); mps_store_sfp(i++, _("Steel"), MP_INFO(x, y).int_3 * 100.0 / ROCKET_PAD_STEEL_STORE); }
void Market::report() { int i = 0; mps_store_sd(i++, constructionGroup->name, ID); i++; mps_store_sfp(i++, N_("busy"), (float) busy); i++; //list_commodities(&i); std::map<Construction::Commodities, int>::iterator stuff_it; for(stuff_it = commodityCount.begin() ; stuff_it != commodityCount.end() ; stuff_it++) { char arrows[4]="---"; if (flags & FLAG_EVACUATE) { arrows[0] = '<'; arrows[1] = '<'; arrows[2] = ' '; } else { if (commodityRuleCount[stuff_it->first].take) { arrows[2] = '>';} if (commodityRuleCount[stuff_it->first].give) { arrows[0] = '<';} } if(i < 14) { mps_store_ssddp(i++, arrows, getStuffName(stuff_it->first), stuff_it->second, commodityRuleCount[stuff_it->first].maxload); }//endif } //endfor }
void mps_mill (int x, int y) { int i = 0; mps_store_title(i++,_("Textile Mill")); i++; mps_store_sfp(i++,_("Capacity"), MP_INFO(x,y).int_6); i++; mps_store_title(i++,_("Inventory")); mps_store_sfp(i++,_("Goods"), MP_INFO(x,y).int_1 * 100.0 / MAX_GOODS_AT_MILL); mps_store_sfp(i++,_("Food"), MP_INFO(x,y).int_2 * 100.0 / MAX_FOOD_AT_MILL); mps_store_sfp(i++,_("Coal"), MP_INFO(x,y).int_3 * 100.0 / MAX_COAL_AT_MILL); }
void mps_market (int x, int y) { int i = 0; mps_store_title(i++,_("Market")); i++; mps_store_sfp(i++,_("Food"), MP_INFO(x,y).int_1 * 100.0 / MAX_FOOD_IN_MARKET); mps_store_sfp(i++,_("Jobs"), MP_INFO(x,y).int_2 * 100.0 / MAX_JOBS_IN_MARKET); mps_store_sfp(i++,_("Coal"), MP_INFO(x,y).int_3 * 100.0 / MAX_COAL_IN_MARKET); mps_store_sfp(i++,_("Goods"), MP_INFO(x,y).int_4 * 100.0 / MAX_GOODS_IN_MARKET); mps_store_sfp(i++,_("Ore"), MP_INFO(x,y).int_5 * 100.0 / MAX_ORE_IN_MARKET); mps_store_sfp(i++,_("Steel"), MP_INFO(x,y).int_6 * 100.0 / MAX_STEEL_IN_MARKET); mps_store_sfp(i++,_("Waste"), MP_INFO(x,y).int_7 * 100.0 / MAX_WASTE_IN_MARKET); }
void mps_school (int x, int y) { int i = 0; mps_store_title(i++,_("School")); i++; mps_store_title(i++,_("Lessons Learned")); mps_store_f(i++,MP_INFO(x,y).int_3 * 100.0 / MAX_TECH_LEVEL); i++; mps_store_title(i++,_("Inventory")); mps_store_sfp(i++,_("Jobs"), MP_INFO(x,y).int_1 * 100.0 / MAX_JOBS_AT_SCHOOL); mps_store_sfp(i++,_("Goods"), MP_INFO(x,y).int_2 * 100.0 / MAX_GOODS_AT_SCHOOL); mps_store_sfp(i++,_("Capacity"), MP_INFO(x,y).int_5 * 4); }
void Oremine::report() { int i = 0; mps_store_sd(i++, constructionGroup->getName(), ID); mps_store_sfp(i++, _("busy"), busy); mps_store_sddp(i++, _("Deposits"), total_ore_reserve, (constructionGroup->size * constructionGroup->size * ORE_RESERVE)); i++; list_commodities(&i); }
void Blacksmith::report() { int i = 0; mps_store_sd(i++, constructionGroup->name,ID); i++; mps_store_sfp(i++, _("busy"), (float) busy); i++; list_commodities(&i); }
void Pottery::report() { int i = 0; mps_store_sd(i++, constructionGroup->getName(), ID); i++; mps_store_sfp(i++, _("busy"), (float) busy); i++; list_commodities(&i); }
void HealthCentre::report() { int i = 0; const char* p; mps_store_sd(i++, constructionGroup->name, ID); mps_store_sfp(i++, N_("busy"), (float) busy); i++; list_commodities(&i); p = active?_("Yes"):_("No"); mps_store_ss(i++, N_("Health Care"), p); }
void FireStation::report() { int i = 0; const char* p; mps_store_sd(i++,constructionGroup->getName(), ID); mps_store_sfp(i++, _("busy"), (float) busy); i++; list_commodities(&i); p = active?_("Yes"):_("No"); mps_store_ss(i++, _("Fire Protection"), p); }
void Cricket::report() { int i = 0; const char* p; mps_store_sd(i++,constructionGroup->name, ID); mps_store_sfp(i++, N_("busy"), busy); i++; list_commodities(&i); p = active?N_("Yes"):N_("No"); mps_store_ss(i++, N_("Public sports"), p); }
void mps_windmill (int x, int y) { int i = 0; char s[12]; mps_store_title(i++,_("Windmill")); i++; if (MP_INFO(x,y).int_2 < MODERN_WINDMILL_TECH) { mps_store_sfp(i++,_("Tech"), MP_INFO(x,y).int_2 * 100.0 / MAX_TECH_LEVEL); } else { mps_store_title(i++,_("Local Status")); format_power (s, sizeof(s), MP_INFO(x,y).int_1); mps_store_ss(i++,_("Prod."),s); format_power (s, sizeof(s), MP_INFO(x,y).int_5); mps_store_ss(i++,_("Demand"),s); mps_store_sfp(i++,_("Tech"), MP_INFO(x,y).int_2 * 100.0 / MAX_TECH_LEVEL); i++; mps_store_title(i++,_("Grid Status")); format_power (s, sizeof(s), grid[MP_INFO(x,y).int_6]->max_power); mps_store_ss(i++,_("T. Cap."), s); format_power (s, sizeof(s), grid[MP_INFO(x,y).int_6]->avail_power); mps_store_ss(i++,_("A. Cap."), s); format_power (s, sizeof(s), grid[MP_INFO(x,y).int_6]->demand); mps_store_ss(i++,_("Demand"), s); i++; mps_store_sd(i++,_("Grid ID"), MP_INFO(x,y).int_6); } }
void Residence::report() { int i = 0; mps_store_sd(i++, constructionGroup->name, ID); mps_store_sddp(i++, N_("Tenants"), local_population, max_population); mps_store_sd(i++, N_("Desireability"), desireability); mps_store_sf(i++, N_("Births p.a."), (float)1200/births); mps_store_sf(i++, N_("Death p.a."), (float)1200/deaths); mps_store_sfp(i++, N_("Unnat. mortality"), (float)pol_deaths); i++; list_commodities(&i); }
void mps_organic_farm(int x, int y) { int i = 0; mps_store_title(i++, _("Organic Farm")); i++; mps_store_ss(i++, _("Power"), (MP_INFO(x, y).flags & FLAG_POWERED) ? _("YES") : _("NO")); mps_store_sfp(i++, _("Tech"), MP_TECH(x, y) * 100.0 / MAX_TECH_LEVEL); mps_store_sfp(i++, _("Prod"), MP_INFO(x, y).int_4 * 100.0 / 1200.0); #ifdef DEBUG if (use_waterwell) { i++; mps_store_title(i++, _("Debug info")); mps_store_sd(i++, _("max with power&water"), MP_INFO(x + 1, y).int_3); mps_store_sd(i++, _("N tiles with water"), MP_INFO(x + 1, y).int_4); mps_store_sd(i++, _("Current production"), MP_INFO(x + 1, y).int_5); } #endif }
void mps_global_housing (void) { int i = 0; int tp = housed_population + people_pool; mps_store_title(i++,_("Population")); i++; mps_store_sd(i++,_("Total"),tp); mps_store_sd(i++,_("Housed"),housed_population); mps_store_sd(i++,_("Homeless"),people_pool); mps_store_sd(i++,_("Shanties"),numof_shanties); mps_store_sd(i++,_("Unn Dths"),unnat_deaths); mps_store_title(i++,_("Unemployment")); mps_store_sd(i++,_("Claims"),tunemployed_population); mps_store_sfp(i++,_("Rate"), ((tunemployed_population * 100.0) / tp)); mps_store_title(i++,_("Starvation")); mps_store_sd(i++,_("Cases"),tstarving_population); mps_store_sfp(i++,_("Rate"), ((tstarving_population * 100.0) / tp)); }
void Waterwell::report() { int i = 0; const char *p; mps_store_sd(i++, constructionGroup->name, ID); i++; mps_store_sddp(i++, N_("Fertility"), ugwCount, constructionGroup->size * constructionGroup->size); mps_store_sfp(i++, N_("busy"), busy); mps_store_sddp(i++, N_("Air Pollution"), world(x,y)->pollution, MAX_POLLUTION_AT_WATERWELL); p = world(x,y)->pollution>MAX_POLLUTION_AT_WATERWELL?N_("No"):N_("Yes"); mps_store_ss(i++, N_("Drinkable"), p); list_commodities(&i); }
void mps_tip (int x, int y) { int i = 0; mps_store_title(i++,_("Landfill")); i++; mps_store_title(i++,_("Last Month")); mps_store_sd(i++,_("Tons"), MP_INFO(x,y).int_3); mps_store_sfp(i++,_("Percent"), MP_INFO(x,y).int_3 * 100.0 / MAX_WASTE_AT_TIP); i++; mps_store_title(i++,_("% Filled")); mps_store_fp(i++, MP_INFO(x,y).int_1 * 100.0 / MAX_WASTE_AT_TIP); }
void mps_rail(int x, int y) { int i = 0; mps_store_title(i++, _(main_groups[MP_GROUP(x, y)].name)); i++; mps_store_sfp(i++, _("Food"), MP_INFO(x, y).int_1 * 100.0 / MAX_FOOD_ON_RAIL); mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_2 * 100.0 / MAX_JOBS_ON_RAIL); mps_store_sfp(i++, _("Coal"), MP_INFO(x, y).int_3 * 100.0 / MAX_COAL_ON_RAIL); mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_4 * 100.0 / MAX_GOODS_ON_RAIL); mps_store_sfp(i++, _("Ore"), MP_INFO(x, y).int_5 * 100.0 / MAX_ORE_ON_RAIL); mps_store_sfp(i++, _("Steel"), MP_INFO(x, y).int_6 * 100.0 / MAX_STEEL_ON_RAIL); mps_store_sfp(i++, _("Waste"), MP_INFO(x, y).int_7 * 100.0 / MAX_WASTE_ON_RAIL); }
void mps_road (int x, int y) { int i = 0; mps_store_title(i++,_("Road")); i++; mps_store_sfp(i++,_("Food"), MP_INFO(x,y).int_1 * 100.0 / MAX_FOOD_ON_ROAD); mps_store_sfp(i++,_("Jobs"), MP_INFO(x,y).int_2 * 100.0 / MAX_JOBS_ON_ROAD); mps_store_sfp(i++,_("Coal"), MP_INFO(x,y).int_3 * 100.0 / MAX_COAL_ON_ROAD); mps_store_sfp(i++,_("Goods"), MP_INFO(x,y).int_4 * 100.0 / MAX_GOODS_ON_ROAD); mps_store_sfp(i++,_("Ore"), MP_INFO(x,y).int_5 * 100.0 / MAX_ORE_ON_ROAD); mps_store_sfp(i++,_("Steel"), MP_INFO(x,y).int_6 * 100.0 / MAX_STEEL_ON_ROAD); mps_store_sfp(i++,_("Waste"), MP_INFO(x,y).int_7 * 100.0 / MAX_WASTE_ON_ROAD); }