64 bool is_target =
va_arg(args,
int);
67 out->alternative[
i].is_target = is_target;
122 "Invalid action result %d",
res);
128 oreq.contras->users++;
187 "Invalid action result %d",
res);
198 oreq.contras->users += users;
264 N_(
"All action enablers for %s must require a "
290 N_(
"All action enablers for %s must require a "
291 "non domestic target."),
306 N_(
"All action enablers for %s must require a "
307 "non domestic target."),
320 N_(
"All action enablers for %s must require the"
321 " absence of a real embassy."),
331 N_(
"All action enablers for %s must require that"
332 " the actor unit isn't already fortified."),
341 N_(
"All action enablers for %s must require"
342 " a domestic target."),
350 N_(
"All action enablers for %s must require"
351 " a domestic or allied target."),
359 N_(
"All action enablers for %s must require"
360 " a domestic or allied target."),
368 N_(
"All action enablers for %s must require"
369 " a domestic or allied target."),
377 N_(
"All action enablers for %s must require"
378 " a domestic or allied target."),
386 N_(
"All action enablers for %s must require"
387 " a domestic or allied target."),
399 N_(
"All action enablers for %s must require"
400 " that the actor has"
401 " the Workers utype flag."),
417 N_(
"All action enablers for %s must require"
419 " tile's terrain's irrigation_time"
420 " is above 0. (See \"TerrainAlter\"'s"
421 " \"CanIrrigate\")"),
428 N_(
"All action enablers for %s must require"
430 " tile's terrain's mining_time"
431 " is above 0. (See \"TerrainAlter\"'s"
439 N_(
"All action enablers for %s must require"
441 " tile's terrain's road_time"
442 " is above 0. (See \"TerrainAlter\"'s"
450 N_(
"All action enablers for %s must require"
452 " tile's terrain's base_time"
453 " is above 0. (See \"TerrainAlter\"'s"
464 N_(
"All action enablers for %s must require that"
465 " the target doesn't have"
466 " the NoCities terrain flag."),
477 N_(
"All action enablers for %s must require"
478 " that the actor has a home city."),
499 N_(
"All action enablers for %s must require"
500 " that the actor has the NonMil utype flag"
501 " or that the target tile is unclaimed"
502 " or that the diplomatic relation to"
503 " the target tile owner isn't peace."),
514 N_(
"All action enablers for %s must require"
515 " that the actor doesn't have"
516 " the NonMil utype flag."),
531 N_(
"All action enablers for %s must require"
532 " no city at the target tile or"
533 " that the actor doesn't have"
534 " the NonMil utype flag."),
544 N_(
"All action enablers for %s must require"
545 " that the actor has"
546 " the CanOccupyCity uclass flag."),
560 N_(
"All action enablers for %s must require"
561 " no city at the target tile or"
562 " that the actor has"
563 " the CanOccupyCity uclass flag."),
573 N_(
"All action enablers for %s must require"
574 " that the actor is at war with the target."),
587 N_(
"All action enablers for %s must require"
588 " no city at the target tile or"
589 " that the actor is at war with the target."),
600 N_(
"All action enablers for %s must require"
601 " that the actor has a movement point left."),
630 N_(
"All action enablers for %s must require"
631 " that the target city is empty."),
643 N_(
"All action enablers for %s must require"
644 " that the actor isn't transporting"
656 N_(
"All action enablers for %s must require"
657 " that the actor has a home city."),
666 N_(
"All action enablers for %s must require"
667 " that the target isn't transporting another"
676 N_(
"All action enablers for %s must require"
677 " that the target is transporting a unit."),
683 N_(
"All action enablers for %s must require"
684 " that the actor is transported."),
692 N_(
"All action enablers for %s must require"
693 " that the actor is on a livable tile."),
701 N_(
"All action enablers for %s must require"
702 " that the actor is transporting a unit."),
708 N_(
"All action enablers for %s must require"
709 " that the target is transported."),
715 N_(
"All action enablers for %s must require"
716 " that the target is on a livable tile."),
725 N_(
"All action enablers for %s must require"
726 " that the actor isn't transported."),
736 N_(
"All action enablers for %s must require"
737 " that the actor unit is in a city."),
751 N_(
"All action enablers for %s must require"
752 " that the actor unit doesn't have the"
753 " HutFrighten unit class flag."),
762 N_(
"All action enablers for %s must require"
763 " that the actor unit has the HutFrighten"
764 " unit class flag."),
783 N_(
"All action enablers for %s must require"
784 " a non animal player actor."),
798 N_(
"All action enablers for %s must require"
799 " no city at the target tile or"
800 " 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