55 _(
"Requires counter %s to achieve at minimum %d value."),
57 preq->source.value.counter->checkpoint);
61 _(
"Requires counter %s to be less than %d value."),
63 preq->source.value.counter->checkpoint - 1);
78 switch (
preq->range) {
83 _(
"Requires knowledge of the technology %s."),
87 _(
"Prevented by knowledge of the technology %s."),
95 _(
"Requires that a player on your team knows the "
100 _(
"Prevented if any player on your team knows the "
109 _(
"Requires that a player allied to you knows the "
114 _(
"Prevented if any player allied to you knows the "
121 if (
preq->survives) {
124 _(
"Requires that someone has discovered the "
129 _(
"Requires that no-one has yet discovered the "
136 _(
"Requires that some player knows the "
141 _(
"Requires that no player knows the "
171 switch (
preq->range) {
177 _(
"Requires knowledge of a technology with the "
183 _(
"Prevented by knowledge of any technology with the "
193 _(
"Requires that a player on your team knows "
194 "a technology with the \"%s\" flag."),
199 _(
"Prevented if any player on your team knows "
200 "any technology with the \"%s\" flag."),
209 _(
"Requires that a player allied to you knows "
210 "a technology with the \"%s\" flag."),
215 _(
"Prevented if any player allied to you knows "
216 "any technology with the \"%s\" flag."),
225 _(
"Requires that some player knows a technology "
226 "with the \"%s\" flag."),
231 _(
"Requires that no player knows any technology with "
308 switch (
preq->range) {
324 "team-mates has achieved \"%s\"."),
328 "has achieved \"%s\"."),
336 "has achieved \"%s\"."),
348 "has achieved \"%s\"."),
381 switch (
preq->range) {
410 switch (
preq->range) {
416 preq->source.value.impr_genus));
420 preq->source.value.impr_genus));
440 switch (
preq->range) {
446 preq->source.value.impr_flag));
450 preq->source.value.impr_flag));
470 switch (
preq->range) {
476 preq->source.value.plr_flag));
480 preq->source.value.plr_flag));
500 switch (
preq->range) {
528 switch (
preq->range) {
532 if (
preq->survives) {
538 _(
"Requires that %s was built at some point, "
539 "and that it has not yet been rendered "
542 (
preq->source.value.building));
546 _(
"Requires that %s was built at some point."),
548 (
preq->source.value.building));
555 _(
"Prevented if %s has ever been built, "
556 "unless it would be obsolete."),
558 (
preq->source.value.building));
562 _(
"Prevented if %s has ever been built."),
564 (
preq->source.value.building));
574 _(
"Requires %s to be owned by any player "
575 "and not yet obsolete."),
577 (
preq->source.value.building));
581 _(
"Requires %s to be owned by any player."),
583 (
preq->source.value.building));
590 _(
"Prevented if %s is currently owned by "
591 "any player, unless it is obsolete."),
593 (
preq->source.value.building));
597 _(
"Prevented if %s is currently owned by "
600 (
preq->source.value.building));
611 if (
preq->survives) {
617 _(
"Requires someone who is currently allied to "
618 "you to have built %s at some point, and for "
619 "it not to have been rendered obsolete."),
621 (
preq->source.value.building));
625 _(
"Requires someone who is currently allied to "
626 "you to have built %s at some point."),
628 (
preq->source.value.building));
635 _(
"Prevented if someone currently allied to you "
636 "has ever built %s, unless it would be "
639 (
preq->source.value.building));
643 _(
"Prevented if someone currently allied to you "
644 "has ever built %s."),
646 (
preq->source.value.building));
656 _(
"Requires someone allied to you to own %s, "
657 "and for it not to have been rendered "
660 (
preq->source.value.building));
664 _(
"Requires someone allied to you to own %s."),
666 (
preq->source.value.building));
673 _(
"Prevented if someone allied to you owns %s, "
674 "unless it is obsolete."),
676 (
preq->source.value.building));
680 _(
"Prevented if someone allied to you owns %s."),
682 (
preq->source.value.building));
693 if (
preq->survives) {
699 _(
"Requires someone on your team to have "
700 "built %s at some point, and for it not "
701 "to have been rendered obsolete."),
703 (
preq->source.value.building));
707 _(
"Requires someone on your team to have "
708 "built %s at some point."),
710 (
preq->source.value.building));
717 _(
"Prevented if someone on your team has ever "
718 "built %s, unless it would be obsolete."),
720 (
preq->source.value.building));
724 _(
"Prevented if someone on your team has ever "
727 (
preq->source.value.building));
737 _(
"Requires someone on your team to own %s, "
738 "and for it not to have been rendered "
741 (
preq->source.value.building));
745 _(
"Requires someone on your team to own %s."),
747 (
preq->source.value.building));
754 _(
"Prevented if someone on your team owns %s, "
755 "unless it is obsolete."),
757 (
preq->source.value.building));
761 _(
"Prevented if someone on your team owns %s."),
763 (
preq->source.value.building));
774 if (
preq->survives) {
780 _(
"Requires you to have built %s at some point, "
781 "and for it not to have been rendered "
784 (
preq->source.value.building));
788 _(
"Requires you to have built %s at some point."),
790 (
preq->source.value.building));
797 _(
"Prevented if you have ever built %s, "
798 "unless it would be obsolete."),
800 (
preq->source.value.building));
804 _(
"Prevented if you have ever built %s."),
806 (
preq->source.value.building));
816 _(
"Requires you to own %s, which must not "
819 (
preq->source.value.building));
823 _(
"Requires you to own %s."),
825 (
preq->source.value.building));
832 _(
"Prevented if you own %s, unless it is "
835 (
preq->source.value.building));
839 _(
"Prevented if you own %s."),
841 (
preq->source.value.building));
857 _(
"Requires %s in one of your cities on the same "
858 "continent, and not yet obsolete."),
860 (
preq->source.value.building));
864 _(
"Requires %s in one of your cities on the same "
867 (
preq->source.value.building));
874 _(
"Prevented if %s is in one of your cities on the "
875 "same continent, unless it is obsolete."),
877 (
preq->source.value.building));
881 _(
"Prevented if %s is in one of your cities on the "
884 (
preq->source.value.building));
899 _(
"Requires %s in the city or a trade partner "
900 "(and not yet obsolete)."),
902 (
preq->source.value.building));
906 _(
"Requires %s in the city or a trade partner."),
908 (
preq->source.value.building));
916 _(
"Prevented by %s in the city or a trade partner "
917 "(unless it is obsolete)."),
919 (
preq->source.value.building));
923 _(
"Prevented by %s in the city or a trade partner."),
925 (
preq->source.value.building));
937 _(
"Requires %s in the city (and not yet obsolete)."),
939 (
preq->source.value.building));
943 _(
"Requires %s in the city."),
945 (
preq->source.value.building));
953 _(
"Prevented by %s in the city (unless it is "
956 (
preq->source.value.building));
960 _(
"Prevented by %s in the city."),
962 (
preq->source.value.building));
970 _(
"Only applies to \"%s\" buildings."),
972 (
preq->source.value.building));
975 _(
"Does not apply to \"%s\" buildings."),
977 (
preq->source.value.building));
984 _(
"Requires \"%s\" building in a city on the tile."),
986 (
preq->source.value.building));
989 _(
"Prevented by \"%s\" building in a city on the tile."),
991 (
preq->source.value.building));
1013 switch (
preq->range) {
1016 if (
preq->present) {
1018 _(
"Only applies to \"%s\" extras."),
1022 _(
"Does not apply to \"%s\" extras."),
1028 if (
preq->present) {
1030 Q_(
"?extra:Requires %s on the tile."),
1034 Q_(
"?extra:Prevented by %s on the tile."),
1040 if (
preq->present) {
1042 Q_(
"?extra:Requires %s on the tile or a cardinally "
1047 Q_(
"?extra:Prevented by %s on the tile or any cardinally "
1054 if (
preq->present) {
1056 Q_(
"?extra:Requires %s on the tile or an adjacent "
1061 Q_(
"?extra:Prevented by %s on the tile or any adjacent "
1068 if (
preq->present) {
1070 Q_(
"?extra:Requires %s on a tile within the city "
1075 Q_(
"?extra:Prevented by %s on any tile within the city "
1082 if (
preq->present) {
1084 Q_(
"?extra:Requires %s on a tile within the city "
1085 "radius, or the city radius of a trade partner."),
1089 Q_(
"?extra:Prevented by %s on any tile within the city "
1090 "radius or the city radius of a trade partner."),
1116 switch (
preq->range) {
1119 if (
preq->present) {
1154 switch (
preq->range) {
1157 if (
preq->present) {
1159 _(
"Only applies to \"%s\" tiledef."),
1163 _(
"Does not apply to \"%s\" tiledef."),
1169 if (
preq->present) {
1171 Q_(
"?tiledef:Requires %s on the tile."),
1175 Q_(
"?tiledef:Prevented by %s on the tile."),
1181 if (
preq->present) {
1183 Q_(
"?tiledef:Requires %s on the tile or a cardinally "
1188 Q_(
"?tiledef:Prevented by %s on the tile or any cardinally "
1195 if (
preq->present) {
1197 Q_(
"?tiledef:Requires %s on the tile or an adjacent "
1202 Q_(
"?tiledef:Prevented by %s on the tile or any adjacent "
1209 if (
preq->present) {
1211 Q_(
"?tiledef:Requires %s on a tile within the city "
1216 Q_(
"?tiledef:Prevented by %s on any tile within the city "
1223 if (
preq->present) {
1225 Q_(
"?tiledef:Requires %s on a tile within the city "
1226 "radius, or the city radius of a trade partner."),
1230 Q_(
"?tiledef:Prevented by %s on any tile within the city "
1231 "radius or the city radius of a trade partner."),
1260 if (
preq->present) {
1262 Q_(
"?tdconn:Requires access to tiledef %s."),
1266 Q_(
"?tdconn:Prevented by access to tiledef %s."),
1286 switch (
preq->range) {
1289 if (
preq->present) {
1299 if (
preq->present) {
1301 Q_(
"?terrain:Requires %s on the tile or a cardinally "
1306 Q_(
"?terrain:Prevented by %s on the tile or any "
1307 "cardinally adjacent tile."),
1313 if (
preq->present) {
1315 Q_(
"?terrain:Requires %s on the tile or an adjacent "
1320 Q_(
"?terrain:Prevented by %s on the tile or any "
1327 if (
preq->present) {
1329 Q_(
"?terrain:Requires %s on a tile within the city "
1334 Q_(
"?terrain:Prevented by %s on any tile within the city "
1341 if (
preq->present) {
1343 Q_(
"?terrain:Requires %s on a tile within the city "
1344 "radius, or the city radius of a trade partner."),
1348 Q_(
"?terrain:Prevented by %s on any tile within the city "
1349 "radius or the city radius of a trade partner."),
1376 switch (
preq->range) {
1379 if (
preq->present) {
1382 _(
"Requires that you are playing as the %s."),
1387 _(
"Requires that you are not playing as the %s."),
1393 if (
preq->present) {
1396 _(
"Requires that you are on the same team as "
1402 _(
"Requires that you are not on the same team as "
1409 if (
preq->present) {
1412 _(
"Requires that you are allied with the %s."),
1417 _(
"Requires that you are not allied with the %s."),
1423 if (
preq->survives) {
1424 if (
preq->present) {
1427 _(
"Requires the %s to have been in the game."),
1432 _(
"Requires the %s never to have been in the "
1437 if (
preq->present) {
1440 _(
"Requires the %s in the game."),
1445 _(
"Requires that the %s are not in the game."),
1474 switch (
preq->range) {
1477 if (
preq->present) {
1480 _(
"Requires that you are playing %s nation."),
1485 _(
"Prevented if you are playing %s nation."),
1491 if (
preq->present) {
1494 _(
"Requires %s nation on your team."),
1499 _(
"Prevented by %s nation on your team."),
1505 if (
preq->present) {
1508 _(
"Requires %s nation in alliance with you."),
1513 _(
"Prevented if %s nation is in alliance with you."),
1519 if (
preq->present) {
1522 _(
"Requires %s nation in the game."),
1527 _(
"Prevented by %s nation in the game."),
1559 if (
preq->present) {
1563 _(
"Requires that you are playing %s style nation."),
1569 _(
"Requires that you are not playing %s style nation."),
1585 switch (
preq->range) {
1588 if (
preq->present) {
1591 _(
"Requires at least one %s citizen in the city or a "
1597 _(
"Requires that there are no %s citizens in "
1598 "the city or any trade partners."),
1604 if (
preq->present) {
1607 _(
"Requires at least one %s citizen in the city."),
1612 _(
"Requires that there are no %s citizens in "
1643 switch (
preq->range) {
1646 if (
preq->present) {
1648 _(
"Requires city to be founded by %s."),
1652 _(
"Requires that city was not originally owned by %s."),
1683 switch (
preq->range) {
1686 if (
preq->present) {
1692 _(
"Requires that you have the relationship '%s' with at "
1693 "least one other living player."),
1697 _(
"Requires that you do not have the relationship '%s' "
1698 "with any living player."),
1704 if (
preq->present) {
1706 _(
"Requires that somebody on your team has the "
1707 "relationship '%s' with at least one other living "
1712 _(
"Requires that nobody on your team has the "
1713 "relationship '%s' with any living player."),
1719 if (
preq->present) {
1721 _(
"Requires that somebody in your alliance has the "
1722 "relationship '%s' with at least one other living "
1727 _(
"Requires that nobody in your alliance has the "
1728 "relationship '%s' with any living player."),
1734 if (
preq->present) {
1736 _(
"Requires the relationship '%s' between two living "
1741 _(
"Requires that no two living players have the "
1742 "relationship '%s'."),
1748 if (
preq->present) {
1750 _(
"Requires that you have the relationship '%s' with the "
1755 _(
"Requires that you do not have the relationship '%s' "
1756 "with the other player."),
1783 switch (
preq->range) {
1786 if (
preq->present) {
1792 _(
"Requires that the tile owner has the relationship"
1793 " '%s' with at least one other living player."),
1797 _(
"Requires that the tile owner does not have the"
1798 " relationship '%s' with any living player."),
1804 if (
preq->present) {
1806 _(
"Requires that somebody on the tile owner's team"
1807 " has the relationship '%s' with at least one other"
1812 _(
"Requires that nobody on the tile owner's team has"
1813 " the relationship '%s' with any living player."),
1819 if (
preq->present) {
1821 _(
"Requires that somebody in the tile owner's alliance"
1822 " has the relationship '%s' with at least one other "
1827 _(
"Requires that nobody in the tile owner's alliance "
1828 "has the relationship '%s' with any living player."),
1834 if (
preq->present) {
1836 _(
"Requires that you have the relationship '%s' with"
1837 " the tile owner."),
1841 _(
"Requires that you do not have the relationship '%s'"
1842 " with the tile owner."),
1870 switch (
preq->range) {
1873 if (
preq->present) {
1875 _(
"Requires that the tile owner has the relationship"
1876 " '%s' with the other player."),
1880 _(
"Requires that the tile owner does not have the"
1881 " relationship '%s' with the other player."),
1912 switch (
preq->range) {
1915 if (
preq->present) {
1921 _(
"Requires that the tile has at least one unit whose "
1922 "owner has the relationship "
1923 "'%s' with at least one other living player."),
1927 _(
"Requires that no unit at the tile is owned by a player "
1928 "who has the relationship '%s' with any living player."),
1934 if (
preq->present) {
1936 _(
"Requires that the tile has at least one unit whose "
1937 "owner is on a team where a member "
1938 "has the relationship '%s' with at least one other "
1943 _(
"Requires that no unit at the tile is owned by a player "
1944 "who is on a team where a member "
1945 "has the relationship '%s' with at least one other "
1952 if (
preq->present) {
1954 _(
"Requires that the tile has at least one unit whose "
1955 "owner is allied to someone that "
1956 "has the relationship '%s' with at least one other "
1961 _(
"Requires that no unit at the tile is owned by a player "
1962 "allied to someone that "
1963 "has the relationship '%s' with any living player."),
1969 if (
preq->present) {
1971 _(
"Requires that you have the relationship '%s' with "
1972 "the owner of at least one unit at the tile."),
1976 _(
"Requires that you do not have the relationship '%s' "
1977 "with the owner of any unit at the tile."),
2005 switch (
preq->range) {
2008 if (
preq->present) {
2010 _(
"Requires that the tile has at least one unit whose "
2011 "owner has the relationship '%s' with the other player."),
2015 _(
"Requires that no unit at the tile is owned by a player "
2016 "who has the relationship '%s' with the other player."),
2047 switch (
preq->range) {
2050 if (
preq->present) {
2087 switch (
preq->range) {
2097 if (
preq->present) {
2138 switch (
preq->range) {
2141 if (
preq->present) {
2190 switch (
preq->range) {
2193 if (
preq->present) {
2234 switch (
preq->range) {
2236 switch (
preq->source.value.unit_state) {
2239 if (
preq->present) {
2241 _(
"Requires that the unit is transported."));
2244 _(
"Requires that the unit isn't transported."));
2249 if (
preq->present) {
2251 _(
"Requires that the unit is on livable tile."));
2254 _(
"Requires that the unit isn't on livable tile."));
2259 if (
preq->present) {
2261 _(
"Requires that the unit does transport one or "
2262 "more cargo units."));
2265 _(
"Requires that the unit doesn't transport "
2266 "any cargo units."));
2271 if (
preq->present) {
2273 _(
"Requires that the unit has a home city."));
2276 _(
"Requires that the unit is homeless."));
2281 if (
preq->present) {
2283 _(
"Requires that the unit is on native tile."));
2286 _(
"Requires that the unit isn't on native tile."));
2291 if (
preq->present) {
2293 _(
"Requires that the unit is in a native extra."));
2296 _(
"Requires that the unit isn't in a native extra."));
2301 if (
preq->present) {
2303 _(
"Requires that the unit has moved this turn."));
2306 _(
"Requires that the unit hasn't moved this turn."));
2311 "Invalid unit state property.");
2341 switch (
preq->range) {
2344 if (
preq->present) {
2346 _(
"Requires that the unit is performing activity %s."),
2350 _(
"Requires that the unit is not performing activity %s."),
2381 switch (
preq->range) {
2384 if (
preq->present) {
2388 _(
"Requires that the unit has at least %s MP left."),
2394 _(
"Requires that the unit has less than %s MP left."),
2431 if (
preq->present) {
2433 PL_(
"Requires a unit with at least %d veteran level.",
2434 "Requires a unit with at least %d veteran levels.",
2435 preq->source.value.minveteran),
2436 preq->source.value.minveteran);
2439 PL_(
"Requires a unit with fewer than %d veteran level.",
2440 "Requires a unit with fewer than %d veteran levels.",
2441 preq->source.value.minveteran),
2442 preq->source.value.minveteran);
2462 if (
preq->present) {
2464 PL_(
"Requires a unit with at least %d hit point left.",
2465 "Requires a unit with at least %d hit points left.",
2466 preq->source.value.min_hit_points),
2467 preq->source.value.min_hit_points);
2470 PL_(
"Requires a unit with fewer than %d hit point "
2472 "Requires a unit with fewer than %d hit points "
2474 preq->source.value.min_hit_points),
2475 preq->source.value.min_hit_points);
2494 if (
preq->present) {
2520 if (
preq->present) {
2542 switch (
preq->range) {
2545 if (
preq->present) {
2547 PL_(
"Requires a minimum city size of %d for this "
2548 "city or a trade partner.",
2549 "Requires a minimum city size of %d for this "
2550 "city or a trade partner.",
2551 preq->source.value.minsize),
2552 preq->source.value.minsize);
2555 PL_(
"Requires the city size to be less than %d "
2556 "for this city and all trade partners.",
2557 "Requires the city size to be less than %d "
2558 "for this city and all trade partners.",
2559 preq->source.value.minsize),
2560 preq->source.value.minsize);
2565 if (
preq->present) {
2567 PL_(
"Requires a minimum city size of %d.",
2568 "Requires a minimum city size of %d.",
2569 preq->source.value.minsize),
2570 preq->source.value.minsize);
2573 PL_(
"Requires the city size to be less than %d.",
2574 "Requires the city size to be less than %d.",
2575 preq->source.value.minsize),
2576 preq->source.value.minsize);
2605 switch (
preq->range) {
2608 if (
preq->present) {
2610 PL_(
"Requires a minimum culture of %d in the city.",
2611 "Requires a minimum culture of %d in the city.",
2612 preq->source.value.minculture),
2613 preq->source.value.minculture);
2616 PL_(
"Requires the culture in the city to be less "
2618 "Requires the culture in the city to be less "
2620 preq->source.value.minculture),
2621 preq->source.value.minculture);
2626 if (
preq->present) {
2628 PL_(
"Requires a minimum culture of %d in this city or "
2630 "Requires a minimum culture of %d in this city or "
2632 preq->source.value.minculture),
2633 preq->source.value.minculture);
2636 PL_(
"Requires the culture in this city and all trade "
2637 "partners to be less than %d.",
2638 "Requires the culture in this city and all trade "
2639 "partners to be less than %d.",
2640 preq->source.value.minculture),
2641 preq->source.value.minculture);
2646 if (
preq->present) {
2648 PL_(
"Requires your nation to have culture "
2650 "Requires your nation to have culture "
2652 preq->source.value.minculture),
2653 preq->source.value.minculture);
2656 PL_(
"Prevented if your nation has culture of "
2658 "Prevented if your nation has culture of "
2660 preq->source.value.minculture),
2661 preq->source.value.minculture);
2666 if (
preq->present) {
2668 PL_(
"Requires someone on your team to have culture of "
2670 "Requires someone on your team to have culture of "
2672 preq->source.value.minculture),
2673 preq->source.value.minculture);
2676 PL_(
"Prevented if anyone on your team has culture of "
2678 "Prevented if anyone on your team has culture of "
2680 preq->source.value.minculture),
2681 preq->source.value.minculture);
2686 if (
preq->present) {
2688 PL_(
"Requires someone in your current alliance to "
2689 "have culture of at least %d.",
2690 "Requires someone in your current alliance to "
2691 "have culture of at least %d.",
2692 preq->source.value.minculture),
2693 preq->source.value.minculture);
2696 PL_(
"Prevented if anyone in your current alliance has "
2697 "culture of %d or more.",
2698 "Prevented if anyone in your current alliance has "
2699 "culture of %d or more.",
2700 preq->source.value.minculture),
2701 preq->source.value.minculture);
2706 if (
preq->present) {
2708 PL_(
"Requires that some player has culture of at "
2710 "Requires that some player has culture of at "
2712 preq->source.value.minculture),
2713 preq->source.value.minculture);
2716 PL_(
"Requires that no player has culture of %d "
2718 "Requires that no player has culture of %d "
2720 preq->source.value.minculture),
2721 preq->source.value.minculture);
2745 switch (
preq->range) {
2748 if (
preq->present) {
2750 _(
"At least %d%% of the citizens of the city "
2751 "must be foreign."),
2752 preq->source.value.minforeignpct);
2755 _(
"Less than %d%% of the citizens of the city "
2756 "must be foreign."),
2757 preq->source.value.minforeignpct);
2762 if (
preq->present) {
2764 _(
"At least %d%% of the citizens of the city "
2765 "or some trade partner must be foreign."),
2766 preq->source.value.minforeignpct);
2769 _(
"Less than %d%% of the citizens of the city "
2770 "and each trade partner must be foreign."),
2771 preq->source.value.minforeignpct);
2799 switch (
preq->range) {
2802 if (
preq->present) {
2804 PL_(
"At most %d total unit may be present on the tile.",
2805 "At most %d total units may be present on the tile.",
2806 preq->source.value.max_tile_total_units),
2807 preq->source.value.max_tile_total_units);
2810 PL_(
"There must be more than %d total unit present on "
2812 "There must be more than %d total units present on "
2814 preq->source.value.max_tile_total_units),
2815 preq->source.value.max_tile_total_units);
2820 if (
preq->present) {
2822 PL_(
"The tile or at least one cardinally adjacent tile "
2823 "must have %d total unit or fewer.",
2824 "The tile or at least one cardinally adjacent tile "
2825 "must have %d total units or fewer.",
2826 preq->source.value.max_tile_total_units),
2827 preq->source.value.max_tile_total_units);
2830 PL_(
"The tile and all cardinally adjacent tiles must "
2831 "have more than %d total unit each.",
2832 "The tile and all cardinally adjacent tiles must "
2833 "have more than %d total units each.",
2834 preq->source.value.max_tile_total_units),
2835 preq->source.value.max_tile_total_units);
2840 if (
preq->present) {
2842 PL_(
"The tile or at least one adjacent tile must have "
2843 "%d total unit or fewer.",
2844 "The tile or at least one adjacent tile must have "
2845 "%d total units or fewer.",
2846 preq->source.value.max_tile_total_units),
2847 preq->source.value.max_tile_total_units);
2850 PL_(
"The tile and all adjacent tiles must have more "
2851 "than %d total unit each.",
2852 "The tile and all adjacent tiles must have more "
2853 "than %d total units each.",
2854 preq->source.value.max_tile_total_units),
2855 preq->source.value.max_tile_total_units);
2883 switch (
preq->range) {
2886 if (
preq->present) {
2888 PL_(
"At most %d untransported unit may be present on the tile.",
2889 "At most %d untransported units may be present on the tile.",
2890 preq->source.value.max_tile_top_units),
2891 preq->source.value.max_tile_top_units);
2894 PL_(
"There must be more than %d untransported unit present on "
2896 "There must be more than %d untransported units present on "
2898 preq->source.value.max_tile_top_units),
2899 preq->source.value.max_tile_top_units);
2904 if (
preq->present) {
2906 PL_(
"The tile or at least one cardinally adjacent tile "
2907 "must have %d untransporte unit or fewer.",
2908 "The tile or at least one cardinally adjacent tile "
2909 "must have %d untransporte units or fewer.",
2910 preq->source.value.max_tile_top_units),
2911 preq->source.value.max_tile_top_units);
2914 PL_(
"The tile and all cardinally adjacent tiles must "
2915 "have more than %d untransported unit each.",
2916 "The tile and all cardinally adjacent tiles must "
2917 "have more than %d untransported units each.",
2918 preq->source.value.max_tile_top_units),
2919 preq->source.value.max_tile_top_units);
2924 if (
preq->present) {
2926 PL_(
"The tile or at least one adjacent tile must have "
2927 "%d untransported unit or fewer.",
2928 "The tile or at least one adjacent tile must have "
2929 "%d untransported units or fewer.",
2930 preq->source.value.max_tile_top_units),
2931 preq->source.value.max_tile_top_units);
2934 PL_(
"The tile and all adjacent tiles must have "
2935 "more than %d untransported unit each.",
2936 "The tile and all adjacent tiles must have "
2937 "more than %d untransported units each.",
2938 preq->source.value.max_tile_top_units),
2939 preq->source.value.max_tile_top_units);
2971 if (
preq->present) {
2974 _(
"Applies to %s AI players."),
2979 _(
"Does not apply to %s AI players."),
2995 switch (
preq->range) {
2998 if (
preq->present) {
3001 Q_(
"?terrainclass:Requires %s terrain on the tile."),
3003 (
preq->source.value.terrainclass));
3007 Q_(
"?terrainclass:Prevented by %s terrain on the tile."),
3009 (
preq->source.value.terrainclass));
3014 if (
preq->present) {
3017 Q_(
"?terrainclass:Requires %s terrain on the tile or a "
3018 "cardinally adjacent tile."),
3020 (
preq->source.value.terrainclass));
3024 Q_(
"?terrainclass:Prevented by %s terrain on the tile or "
3025 "any cardinally adjacent tile."),
3027 (
preq->source.value.terrainclass));
3032 if (
preq->present) {
3035 Q_(
"?terrainclass:Requires %s terrain on the tile or an "
3038 (
preq->source.value.terrainclass));
3042 Q_(
"?terrainclass:Prevented by %s terrain on the tile or "
3043 "any adjacent tile."),
3045 (
preq->source.value.terrainclass));
3050 if (
preq->present) {
3053 Q_(
"?terrainclass:Requires %s terrain on a tile within "
3054 "the city radius."),
3056 (
preq->source.value.terrainclass));
3060 Q_(
"?terrainclass:Prevented by %s terrain on any tile "
3061 "within the city radius."),
3063 (
preq->source.value.terrainclass));
3068 if (
preq->present) {
3071 Q_(
"?terrainclass:Requires %s terrain on a tile within "
3072 "the city radius or the city radius of a trade "
3075 (
preq->source.value.terrainclass));
3079 Q_(
"?terrainclass:Prevented by %s terrain on any tile "
3080 "within the city radius or the city radius of a trade "
3083 (
preq->source.value.terrainclass));
3109 switch (
preq->range) {
3112 if (
preq->present) {
3115 _(
"Requires terrain with the \"%s\" flag on the tile."),
3120 _(
"Prevented by terrain with the \"%s\" flag on the "
3127 if (
preq->present) {
3130 _(
"Requires terrain with the \"%s\" flag on the "
3131 "tile or a cardinally adjacent tile."),
3136 _(
"Prevented by terrain with the \"%s\" flag on "
3137 "the tile or any cardinally adjacent tile."),
3143 if (
preq->present) {
3146 _(
"Requires terrain with the \"%s\" flag on the "
3147 "tile or an adjacent tile."),
3152 _(
"Prevented by terrain with the \"%s\" flag on "
3153 "the tile or any adjacent tile."),
3159 if (
preq->present) {
3162 _(
"Requires terrain with the \"%s\" flag on a tile "
3163 "within the city radius."),
3168 _(
"Prevented by terrain with the \"%s\" flag on any tile "
3169 "within the city radius."),
3175 if (
preq->present) {
3178 _(
"Requires terrain with the \"%s\" flag on a tile "
3179 "within the city radius or the city radius of "
3180 "a trade partner."),
3185 _(
"Prevented by terrain with the \"%s\" flag on any tile "
3186 "within the city radius or the city radius of "
3187 "a trade partner."),
3214 switch (
preq->range) {
3217 if (
preq->present) {
3220 _(
"Only applies to roads with the \"%s\" flag."),
3222 (
preq->source.value.roadflag));
3226 _(
"Does not apply to roads with the \"%s\" flag."),
3228 (
preq->source.value.roadflag));
3233 if (
preq->present) {
3236 _(
"Requires a road with the \"%s\" flag on the tile."),
3241 _(
"Prevented by a road with the \"%s\" flag on the "
3248 if (
preq->present) {
3251 _(
"Requires a road with the \"%s\" flag on the "
3252 "tile or a cardinally adjacent tile."),
3257 _(
"Prevented by a road with the \"%s\" flag on "
3258 "the tile or any cardinally adjacent tile."),
3264 if (
preq->present) {
3267 _(
"Requires a road with the \"%s\" flag on the "
3268 "tile or an adjacent tile."),
3273 _(
"Prevented by a road with the \"%s\" flag on "
3274 "the tile or any adjacent tile."),
3280 if (
preq->present) {
3283 _(
"Requires a road with the \"%s\" flag on a tile "
3284 "within the city radius."),
3289 _(
"Prevented by a road with the \"%s\" flag on any tile "
3290 "within the city radius."),
3296 if (
preq->present) {
3299 _(
"Requires a road with the \"%s\" flag on a tile "
3300 "within the city radius or the city radius of a "
3306 _(
"Prevented by a road with the \"%s\" flag on any tile "
3307 "within the city radius or the city radius of a "
3334 switch (
preq->range) {
3337 if (
preq->present) {
3340 _(
"Only applies to extras with the \"%s\" flag."),
3342 (
preq->source.value.extraflag));
3346 _(
"Does not apply to extras with the \"%s\" flag."),
3348 (
preq->source.value.extraflag));
3353 if (
preq->present) {
3356 _(
"Requires an extra with the \"%s\" flag on the tile."),
3361 _(
"Prevented by an extra with the \"%s\" flag on the "
3368 if (
preq->present) {
3371 _(
"Requires an extra with the \"%s\" flag on the "
3372 "tile or a cardinally adjacent tile."),
3377 _(
"Prevented by an extra with the \"%s\" flag on "
3378 "the tile or any cardinally adjacent tile."),
3384 if (
preq->present) {
3387 _(
"Requires an extra with the \"%s\" flag on the "
3388 "tile or an adjacent tile."),
3393 _(
"Prevented by an extra with the \"%s\" flag on "
3394 "the tile or any adjacent tile."),
3400 if (
preq->present) {
3403 _(
"Requires an extra with the \"%s\" flag on a tile "
3404 "within the city radius."),
3409 _(
"Prevented by an extra with the \"%s\" flag on any tile "
3410 "within the city radius."),
3416 if (
preq->present) {
3419 _(
"Requires an extra with the \"%s\" flag on a tile "
3420 "within the city radius or the city radius of a "
3426 _(
"Prevented by an extra with the \"%s\" flag on any tile "
3427 "within the city radius or the city radius of a "
3458 if (
preq->present) {
3460 _(
"Requires the game to have reached the year %s."),
3464 _(
"Requires that the game has not yet reached the "
3485 if (
preq->present) {
3489 _(
"Requires the game to have reached %s."),
3495 _(
"Requires that the game has not yet reached %s."),
3515 if (
preq->present) {
3518 _(
"Requires %s map."),
3523 _(
"Prevented on %s map."),
3543 if (
preq->present) {
3546 _(
"Requires %s map."),
3551 _(
"Prevented on %s map."),
3576 _(
"Requires that the server setting %s."),
3593 if (
preq->present) {
3595 _(
"Requires age of %d turns."),
3596 preq->source.value.age);
3599 _(
"Prevented if age is over %d turns."),
3600 preq->source.value.age);
3616 if (
preq->present) {
3618 _(
"Requires form age of %d turns."),
3619 preq->source.value.form_age);
3622 _(
"Prevented if form age is over %d turns."),
3623 preq->source.value.form_age);
3638 switch (
preq->range) {
3641 if (
preq->present) {
3643 _(
"Requires %d techs to be known in the world."),
3644 preq->source.value.min_techs);
3647 _(
"Prevented when %d techs are known in the world."),
3648 preq->source.value.min_techs);
3653 if (
preq->present) {
3655 _(
"Requires player to know %d techs."),
3656 preq->source.value.min_techs);
3659 _(
"Prevented when player knows %d techs."),
3660 preq->source.value.min_techs);
3689 switch (
preq->range) {
3692 if (
preq->present) {
3694 _(
"Requires %d future techs to be known in the world."),
3695 preq->source.value.future_techs);
3698 _(
"Prevented when %d future techs are known in the world."),
3699 preq->source.value.future_techs);
3704 if (
preq->present) {
3706 _(
"Requires player to know %d future techs."),
3707 preq->source.value.future_techs);
3710 _(
"Prevented when player knows %d future techs."),
3711 preq->source.value.future_techs);
3740 switch (
preq->range) {
3743 if (
preq->present) {
3745 _(
"Requires player to have at least %d cities."),
3746 preq->source.value.min_cities);
3749 _(
"Prevented when player has at least %d cities."),
3750 preq->source.value.min_cities);
3780 switch (
preq->range) {
3783 if (
preq->present) {
3785 _(
"Requires terrain on which alteration %s is "
3790 _(
"Prevented by terrain on which alteration %s "
3827 switch (
preq->source.value.citytile) {
3854 "terrain class next to the city");
3870 switch (
preq->range) {
3873 if (
preq->present) {
3885 if (
preq->present) {
3888 "cardinally adjacent tiles."),
3893 "cardinally adjacent tiles."),
3899 if (
preq->present) {
3938 switch (
preq->source.value.citystatus) {
3962 switch (
preq->range) {
3965 if (
preq->present) {
3977 if (
preq->present) {
4014 switch (
preq->range) {
4017 if (
preq->present) {
4019 _(
"Some part of the world must be at latitude %d or "
4021 preq->source.value.latitude);
4024 _(
"The entire world must be at latitude %d or "
4026 preq->source.value.latitude - 1);
4031 if (
preq->present) {
4033 _(
"Tile must be at latitude %d or further north."),
4034 preq->source.value.latitude);
4037 _(
"Tile must be at latitude %d or further south."),
4038 preq->source.value.latitude - 1);
4043 if (
preq->present) {
4045 _(
"A cardinally adjacent tile must be at latitude "
4046 "%d or further north."),
4047 preq->source.value.latitude);
4050 _(
"All cardinally adjacent tiles must be at latitude "
4051 "%d or further south."),
4052 preq->source.value.latitude - 1);
4057 if (
preq->present) {
4059 _(
"An adjacent tile must be at latitude %d or "
4061 preq->source.value.latitude);
4064 _(
"All adjacent tiles must be at latitude %d or "
4066 preq->source.value.latitude - 1);
4093 switch (
preq->range) {
4096 if (
preq->present) {
4098 _(
"Some part of the world must be at latitude %d or "
4100 preq->source.value.latitude);
4103 _(
"The entire world must be at latitude %d or "
4105 preq->source.value.latitude + 1);
4110 if (
preq->present) {
4112 _(
"Tile must be at latitude %d or further south."),
4113 preq->source.value.latitude);
4116 _(
"Tile must be at latitude %d or further north."),
4117 preq->source.value.latitude + 1);
4122 if (
preq->present) {
4124 _(
"A cardinally adjacent tile must be at latitude "
4125 "%d or further south."),
4126 preq->source.value.latitude);
4129 _(
"All cardinally adjacent tiles must be at latitude "
4130 "%d or further north."),
4131 preq->source.value.latitude + 1);
4136 if (
preq->present) {
4138 _(
"An adjacent tile must be at latitude %d or "
4140 preq->source.value.latitude);
4143 _(
"All adjacent tiles must be at latitude %d or "
4145 preq->source.value.latitude + 1);
4172 switch (
preq->range) {
4176 switch (
preq->source.value.distance_sq)
4179 if (
preq->present) {
4186 if (
preq->present) {
4194 if (
preq->present) {
4202 if (
preq->present) {
4204 _(
"The squared distance between the tiles "
4205 "must be at most %d."),
4206 preq->source.value.distance_sq);
4209 _(
"The squared distance between the tiles "
4210 "must be at least %d."),
4211 preq->source.value.distance_sq + 1);
4243 switch (
preq->range) {
4248 if (
preq->present) {
4249 if (
preq->source.value.region_tiles == 1) {
4252 _(
"No other cardinally adjacent tile may be part of "
4253 "the same continent or ocean."),
4257 PL_(
"No more than %d other cardinally adjacent tile "
4258 "may be part of the same continent or ocean.",
4259 "No more than %d other cardinally adjacent tiles "
4260 "may be part of the same continent or ocean.",
4261 preq->source.value.region_tiles - 1),
4262 preq->source.value.region_tiles - 1);
4266 PL_(
"Requires at least %d other cardinally adjacent "
4267 "tile of the same continent or ocean.",
4268 "Requires at least %d other cardinally adjacent "
4269 "tiles of the same continent or ocean.",
4270 preq->source.value.region_tiles),
4271 preq->source.value.region_tiles);
4279 if (
preq->present) {
4280 if (
preq->source.value.region_tiles == 1) {
4283 _(
"No other adjacent tile may be part of the same "
4284 "continent or ocean."),
4288 PL_(
"No more than %d other adjacent tile may be "
4289 "part of the same continent or ocean.",
4290 "No more than %d other adjacent tiles may be "
4291 "part of the same continent or ocean.",
4292 preq->source.value.region_tiles - 1),
4293 preq->source.value.region_tiles - 1);
4297 PL_(
"Requires at least %d other adjacent tile of the "
4298 "same continent or ocean.",
4299 "Requires at least %d other adjacent tiles of the "
4300 "same continent or ocean.",
4301 preq->source.value.region_tiles),
4302 preq->source.value.region_tiles);
4308 if (
preq->present) {
4310 _(
"Requires a continent or ocean size of at most %d."),
4311 preq->source.value.region_tiles);
4314 _(
"Requires a continent or ocean size of at least %d."),
4315 preq->source.value.region_tiles + 1);
4344 switch (
preq->source.value.tilerel) {
4346 switch (
preq->range) {
4349 if (
preq->present) {
4359 if (
preq->present) {
4371 if (
preq->present) {
4372 fc_strlcat(
buf,
_(
"Must be adjacent to the same terrain class."),
4394 switch (
preq->range) {
4397 if (
preq->present) {
4407 if (
preq->present) {
4409 "continent or ocean."),
4413 "continent or ocean."),
4419 if (
preq->present) {
4443 switch (
preq->range) {
4446 if (
preq->present) {
4448 "other continent or ocean."),
4452 "just this other continent or ocean."),
4458 if (
preq->present) {
4459 fc_strlcat(
buf,
_(
"May only be adjacent to this other continent "
4464 "other continent or ocean."),
4483 switch (
preq->range) {
4486 if (
preq->present) {
4488 "this continent or ocean."),
4492 "by this continent or ocean."),
4498 if (
preq->present) {
4500 "or island surrounded by this continent or "
4505 "lake or island surrounded by this continent "
4512 if (
preq->present) {
4514 "surrounded by this continent or ocean."),
4518 "island surrounded by this continent or "
4563 switch (
preq->source.kind) {
4773 log_error(
"%s requirement %s in range %d is not supported in reqtext.c.",
4774 preq->present ?
"Present" :
"Absent",
const char * achievement_name_translation(struct achievement *pach)
const char * action_name_translation(const struct action *paction)
void astr_free(struct astring *astr)
const char * astr_build_or_list(struct astring *astr, const char *const *items, size_t number)
static const char * astr_str(const struct astring *astr) fc__attribute((nonnull(1)))
const char * textcalfrag(int frag)
const char * textyear(int year)
const char * get_output_name(Output_type_id output)
static struct fc_sockaddr_list * list
const char * counter_rule_name(struct counter *pcount)
#define PL_(String1, String2, n)
const char * government_name_translation(const struct government *pgovern)
bool can_improvement_go_obsolete(const struct impr_type *pimprove)
bool is_wonder(const struct impr_type *pimprove)
bool is_great_wonder(const struct impr_type *pimprove)
const char * improvement_name_translation(const struct impr_type *pimprove)
#define fc_assert_msg(condition, message,...)
#define fc_assert(condition)
#define log_error(message,...)
const char * move_points_text(int mp, bool reduce)
const char * nation_adjective_translation(const struct nation_type *pnation)
const char * nation_group_name_translation(const struct nation_group *pgroup)
const char * nation_plural_translation(const struct nation_type *pnation)
const char * diplrel_name_translation(int value)
static bool req_text_max_tile_top_units(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_diplrel_unit_any_o(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_nationality(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_diplrel_unit_any(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_improvement(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_extra_flag(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_extra(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_terrain(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_min_latitude(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_specialist(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_topo_property(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_government_flag(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_techflag(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_min_veteran(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_impr_genus(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_player_flag(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_min_foreign_pct(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_tiledef_conn(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_distance_sq(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_wrap_property(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_diplrel_tile(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_uclass(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_max_latitude(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_max_region_tiles(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_player_state(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_unit_state(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_nation_group(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_max_tile_total_units(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_original_owner(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_diplrel_tile_o(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_future_techs(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_min_cities(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_good(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_action(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_city_status(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_impr_flag(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_form_age(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_min_year(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_min_moves(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_style(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_city_tile(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_ai_level(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_tile_rel(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_diplrel(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_terrain_alter(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_government(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_advance(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_min_size(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_terrain_class(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_min_hp(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_min_techs(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_ucflag(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_counter(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
bool req_text_insert_nl(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, enum rt_verbosity verb, const char *prefix)
static bool req_text_road_flag(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_terrain_flag(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_unitflag(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_min_cal_frag(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_tiledef(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_activity(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_nation(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_otype(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
bool req_text_insert(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, enum rt_verbosity verb, const char *prefix)
static bool req_text_achievement(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_min_culture(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_utype(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_age(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
static bool req_text_server_setting(char *buf, size_t bufsz, struct player *pplayer, const struct requirement *preq, const char *prefix)
const char * universal_name_translation(const struct universal *psource, char *buf, size_t bufsz)
const char * ssetv_human_readable(ssetv val, bool present)
const char * specialist_plural_translation(const struct specialist *sp)
const char * style_name_translation(const struct nation_style *pstyle)
size_t fc_strlcat(char *dest, const char *src, size_t n)
int cat_snprintf(char *str, size_t n, const char *format,...)
const char * advance_name_translation(const struct advance *padvance)
const char * terrain_class_name_translation(enum terrain_class tclass)
const char * terrain_name_translation(const struct terrain *pterrain)
enum terrain_class terrain_type_terrain_class(const struct terrain *pterrain)
#define terrain_type_iterate(_p)
#define terrain_type_iterate_end
#define terrain_has_flag(terr, flag)
const char * tiledef_name_translation(const struct tiledef *td)
const char * goods_name_translation(struct goods_type *pgood)
const char * uclass_name_translation(const struct unit_class *pclass)
Unit_Class_id uclass_count(void)
const char * utype_name_translation(const struct unit_type *punittype)
bool role_units_translations(struct astring *astr, int flag, bool alts)
static bool uclass_has_flag(const struct unit_class *punitclass, enum unit_class_flag_id flag)
#define unit_class_iterate(_p)
#define unit_class_iterate_end