61 bool is_target =
va_arg(args,
int);
64 out->alternative[
i].is_target = is_target;
119 "Invalid action result %d",
res);
125 oreq.contras->users++;
184 "Invalid action result %d",
res);
195 oreq.contras->users += users;
261 N_(
"All action enablers for %s must require a "
287 N_(
"All action enablers for %s must require a "
288 "non domestic target."),
303 N_(
"All action enablers for %s must require a "
304 "non domestic target."),
317 N_(
"All action enablers for %s must require the"
318 " absence of a real embassy."),
328 N_(
"All action enablers for %s must require that"
329 " the actor unit isn't already fortified."),
338 N_(
"All action enablers for %s must require"
339 " a domestic target."),
347 N_(
"All action enablers for %s must require"
348 " a domestic or allied target."),
356 N_(
"All action enablers for %s must require"
357 " a domestic or allied target."),
365 N_(
"All action enablers for %s must require"
366 " a domestic or allied target."),
374 N_(
"All action enablers for %s must require"
375 " a domestic or allied target."),
383 N_(
"All action enablers for %s must require"
384 " a domestic or allied target."),
396 N_(
"All action enablers for %s must require"
397 " that the actor has"
398 " the Workers utype flag."),
414 N_(
"All action enablers for %s must require"
416 " tile's terrain's irrigation_time"
417 " is above 0. (See \"TerrainAlter\"'s"
418 " \"CanIrrigate\")"),
425 N_(
"All action enablers for %s must require"
427 " tile's terrain's mining_time"
428 " is above 0. (See \"TerrainAlter\"'s"
436 N_(
"All action enablers for %s must require"
438 " tile's terrain's road_time"
439 " is above 0. (See \"TerrainAlter\"'s"
447 N_(
"All action enablers for %s must require"
449 " tile's terrain's base_time"
450 " is above 0. (See \"TerrainAlter\"'s"
461 N_(
"All action enablers for %s must require that"
462 " the target doesn't have"
463 " the NoCities terrain flag."),
474 N_(
"All action enablers for %s must require"
475 " that the actor has a home city."),
496 N_(
"All action enablers for %s must require"
497 " that the actor has the NonMil utype flag"
498 " or that the target tile is unclaimed"
499 " or that the diplomatic relation to"
500 " the target tile owner isn't peace."),
511 N_(
"All action enablers for %s must require"
512 " that the actor doesn't have"
513 " the NonMil utype flag."),
528 N_(
"All action enablers for %s must require"
529 " no city at the target tile or"
530 " that the actor doesn't have"
531 " the NonMil utype flag."),
541 N_(
"All action enablers for %s must require"
542 " that the actor has"
543 " the CanOccupyCity uclass flag."),
557 N_(
"All action enablers for %s must require"
558 " no city at the target tile or"
559 " that the actor has"
560 " the CanOccupyCity uclass flag."),
570 N_(
"All action enablers for %s must require"
571 " that the actor is at war with the target."),
584 N_(
"All action enablers for %s must require"
585 " no city at the target tile or"
586 " that the actor is at war with the target."),
597 N_(
"All action enablers for %s must require"
598 " that the actor has a movement point left."),
627 N_(
"All action enablers for %s must require"
628 " that the target city is empty."),
640 N_(
"All action enablers for %s must require"
641 " that the actor isn't transporting"
653 N_(
"All action enablers for %s must require"
654 " that the actor has a home city."),
663 N_(
"All action enablers for %s must require"
664 " that the target isn't transporting another"
673 N_(
"All action enablers for %s must require"
674 " that the target is transporting a unit."),
680 N_(
"All action enablers for %s must require"
681 " that the actor is transported."),
689 N_(
"All action enablers for %s must require"
690 " that the actor is on a livable tile."),
698 N_(
"All action enablers for %s must require"
699 " that the actor is transporting a unit."),
705 N_(
"All action enablers for %s must require"
706 " that the target is transported."),
712 N_(
"All action enablers for %s must require"
713 " that the target is on a livable tile."),
722 N_(
"All action enablers for %s must require"
723 " that the actor isn't transported."),
733 N_(
"All action enablers for %s must require"
734 " that the actor unit is in a city."),
748 N_(
"All action enablers for %s must require"
749 " that the actor unit doesn't have the"
750 " HutFrighten unit class flag."),
759 N_(
"All action enablers for %s must require"
760 " that the actor unit has the HutFrighten"
761 " unit class flag."),
780 N_(
"All action enablers for %s must require"
781 " a non animal player actor."),
795 N_(
"All action enablers for %s must require"
796 " no city at the target tile or"
797 " a non animal player actor."),
#define fc_assert_ret(condition)
#define fc_assert(condition)
#define fc_assert_ret_msg(condition, message,...)
#define fc_assert_ret_val(condition, val)
Nation_type_id nation_number(const struct nation_type *pnation)
enum barbarian_type nation_barbarian_type(const struct nation_type *nation)
#define nations_iterate_end
#define nations_iterate(NAME_pnation)
static void oblig_hard_req_reg(struct ae_contra_or *contras, const char *error_message,...)
static void voblig_hard_req_reg(struct ae_contra_or *contras, const char *error_message, va_list args)
static struct obligatory_req_vector oblig_hard_reqs_r[ACTRES_NONE]
void oblig_hard_reqs_init(void)
static struct ae_contra_or * req_contradiction_or(int alternatives,...)
void oblig_hard_reqs_free(void)
static void ae_contra_close(struct ae_contra_or *contra)
static struct obligatory_req_vector oblig_hard_reqs_sr[ACT_SUB_RES_COUNT]
static void oblig_hard_req_reg_sub_res(struct ae_contra_or *contras, const char *error_message,...)
static void voblig_hard_req_reg_sub_res(struct ae_contra_or *contras, const char *error_message, va_list args)
void hard_code_oblig_hard_reqs_ruleset(void)
void hard_code_oblig_hard_reqs(void)
struct obligatory_req_vector * oblig_hard_reqs_get(enum action_result res)
struct obligatory_req_vector * oblig_hard_reqs_get_sub(enum action_sub_result res)
static void oblig_hard_req_register(struct requirement contradiction, bool is_target, const char *error_message,...)
#define obligatory_req_vector_iterate_end
#define obligatory_req_vector_iterate(obreq_vec, pobreq)
struct requirement req_from_values(int type, int range, bool survives, bool present, bool quiet, int value)
struct ae_contra_or * contras