# script_create_kingdom_party_if_below_limit
# Input: arg1 = faction_no, arg2 = party_type (variables beginning with spt_)
# Output: reg0 = party_no
("create_kingdom_party_if_below_limit",
[
(store_script_param_1, ":faction_no"),
(store_script_param_2, ":party_type"),
(call_script, "script_count_parties_of_faction_and_party_type", ":faction_no", ":party_type"),
(assign, ":party_count", reg0),
(assign, ":party_count_limit", 0),
(faction_get_slot, ":num_towns", ":faction_no", slot_faction_num_towns),
(try_begin),
## (eq, ":party_type", spt_forager),
## (assign, ":party_count_limit", 1),
## (else_try),
## (eq, ":party_type", spt_scout),
## (assign, ":party_count_limit", 1),
## (else_try),
## (eq, ":party_type", spt_patrol),
## (assign, ":party_count_limit", 1),
## (else_try),
## (eq, ":party_type", spt_messenger),
## (assign, ":party_count_limit", 1),
## (else_try),
(eq, ":party_type", spt_kingdom_caravan),
(try_begin),
(eq, ":num_towns", 0),
(assign, ":party_count_limit", 0), # ülkenin hiç şehri yoksa geçerli olan sayı sınırı
(else_try),
(eq, ":num_towns", 1),
(assign, ":party_count_limit", 1), # ülkenin 1 şehri varsa geçerli olan sayı sınırı
(else_try),
(eq, ":num_towns", 2),
(assign, ":party_count_limit", 3), # ülkenin 2 şehri varsa geçerli olan sayı sınırı
(else_try),
(assign, ":party_count_limit", 5), # ülkenin 2'den fazla şehri varsa geçerli olan sayı sınırı
(try_end),
## (else_try),
## (eq, ":party_type", spt_prisoner_train),
## (assign, ":party_count_limit", 1),
(try_end),
(assign, reg0, -1),
(try_begin),
(lt, ":party_count", ":party_count_limit"),
(call_script,"script_cf_create_kingdom_party", ":faction_no", ":party_type"),
(try_end),
]),