Feature #967 ยป 0038-Unhardcode-wld.map-from-can_city_build_direct.patch
client/citydlg_common.c | ||
---|---|---|
struct universal old = pcity->production;
|
||
/* Insert as current production. */
|
||
if (!can_city_build_direct(pcity, item)) {
|
||
if (!can_city_build_direct(&(wld.map), pcity, item)) {
|
||
return FALSE;
|
||
}
|
||
common/city.c | ||
---|---|---|
Returns whether city can immediately build given target,
|
||
unit or improvement. This considers obsolete targets still buildable.
|
||
**************************************************************************/
|
||
bool can_city_build_direct(const struct city *pcity,
|
||
bool can_city_build_direct(const struct civ_map *nmap,
|
||
const struct city *pcity,
|
||
const struct universal *target)
|
||
{
|
||
const struct civ_map *nmap = &(wld.map);
|
||
switch (target->kind) {
|
||
case VUT_UTYPE:
|
||
return can_city_build_unit_direct(nmap, pcity, target->value.utype);
|
common/city.h | ||
---|---|---|
const struct city *pcity,
|
||
const struct unit_type *punittype);
|
||
bool can_city_build_direct(const struct city *pcity,
|
||
bool can_city_build_direct(const struct civ_map *nmap,
|
||
const struct city *pcity,
|
||
const struct universal *target);
|
||
bool can_city_build_later(const struct city *pcity,
|
||
const struct universal *target);
|