wesnoth/data/schema/units/modifications.cfg
Celtic Minstrel fb30b594b6 Support [switch] and [if] in [tag]
Use this new feature to validate [effect] tags
2018-10-23 22:37:24 -04:00

253 lines
5.4 KiB
INI

[tag]
name="base"
{SIMPLE_KEY id string}
[tag]
name="effect"
max=infinite
{REQUIRED_KEY apply_to string}
{DEFAULT_KEY times effect_times 1}
{FILTER_TAG "filter" unit ()}
[switch]
key=apply_to
[case]
value=new_attack
super="units/unit_type/attack"
[/case]
{FILTER_TAG "case" weapon value=remove_attacks}
{FILTER_TAG "case" weapon (
value=attack
{SIMPLE_KEY set_name string}
{SIMPLE_KEY set_description t_string}
{SIMPLE_KEY set_type string}
{SIMPLE_KEY set_icon string}
{SIMPLE_KEY set_range string}
{SIMPLE_KEY set_damage int}
{SIMPLE_KEY set_attacks int}
{SIMPLE_KEY set_parry int}
{SIMPLE_KEY set_accuracy int}
{SIMPLE_KEY set_movement_used int}
{SIMPLE_KEY increase_damage int}
{SIMPLE_KEY increase_attacks int}
{SIMPLE_KEY increase_parry int}
{SIMPLE_KEY increase_accuracy int}
{SIMPLE_KEY increase_movement_used int}
{SIMPLE_KEY attack_weight int}
{SIMPLE_KEY defense_weight int}
{SIMPLE_KEY remove_specials string_list}
[tag]
name="set_specials"
super="units/unit_type/attack/specials"
{DEFAULT_KEY mode effect_set_special_mode replace}
[/tag]
)}
[case]
value=max_attacks,max_experience
{SIMPLE_KEY increase int_percent}
[/case]
[case]
value=movement,vision,jamming,experience,recall_cost
{SIMPLE_KEY increase int_percent}
{SIMPLE_KEY set int}
[/case]
[case]
value=hitpoints
{SIMPLE_KEY increase int_percent}
{DEFAULT_KEY heal_full bool yes}
{SIMPLE_KEY increase_total int_percent}
{DEFAULT_KEY violate_maximum bool no}
[/case]
[case]
value=loyal
# Nothing allowed here
[/case]
[case]
value=movement_costs
{SIMPLE_KEY replace bool}
[link]
name="units/movetype/movement_costs"
[/link]
[/case]
[case]
value=vision_costs
{SIMPLE_KEY replace bool}
[link]
name="units/movetype/vision_costs"
[/link]
[/case]
[case]
value=jamming_costs
{SIMPLE_KEY replace bool}
[link]
name="units/movetype/jamming_costs"
[/link]
[/case]
[case]
value=defense
{SIMPLE_KEY replace bool}
[link]
name="units/movetype/defense"
[/link]
[/case]
[case]
value=resistance
{SIMPLE_KEY replace bool}
[link]
name="units/movetype/resistance"
[/link]
[/case]
[case]
value=variation,type
{SIMPLE_KEY name string}
[/case]
[case]
value=status
{SIMPLE_KEY add string_list}
{SIMPLE_KEY remove string_list}
[/case]
[case]
value=zoc
{SIMPLE_KEY value bool}
[/case]
[case]
value=profile
{SIMPLE_KEY portrait string}
{SIMPLE_KEY small_portrait string}
{SIMPLE_KEY description t_string}
[/case]
[case]
value=new_ability,remove_ability
[link]
name="units/unit_type/abilities"
[/link]
[/case]
[case]
value=new_animation
[link]
name="units/unit_type/animation"
[/link]
[link]
name="units/unit_type/defend"
[/link]
[link]
name="units/unit_type/death"
[/link]
[link]
name="units/unit_type/standing_anim"
[/link]
[link]
name="units/unit_type/movement_anim"
[/link]
[link]
name="units/unit_type/idle_anim"
[/link]
[link]
name="units/unit_type/attack_anim"
[/link]
[link]
name="units/unit_type/victory_anim"
[/link]
[link]
name="units/unit_type/pre_movement_anim"
[/link]
[link]
name="units/unit_type/post_movement_anim"
[/link]
[link]
name="units/unit_type/draw_weapon_anim"
[/link]
[link]
name="units/unit_type/sheath_weapon_anim"
[/link]
[link]
name="units/unit_type/leading_anim"
[/link]
[link]
name="units/unit_type/recruit_anim"
[/link]
[link]
name="units/unit_type/recruiting_anim"
[/link]
[link]
name="units/unit_type/healing_anim"
[/link]
[link]
name="units/unit_type/extra_anim"
[/link]
[/case]
[case]
value=image_mod,overlay
{SIMPLE_KEY replace string}
{SIMPLE_KEY add string}
[/case]
[case]
value=ellipse
{SIMPLE_KEY ellipse string}
[/case]
[case]
value=halo
{SIMPLE_KEY halo string}
[/case]
[case]
value=alignment
{SIMPLE_KEY set alignment}
[/case]
[case]
value=new_advancement
{SIMPLE_KEY replace bool}
{SIMPLE_KEY types string_list}
[link]
name="units/$modifications/advancement"
[/link]
[/case]
[case]
value=remove_advancement
{SIMPLE_KEY types string_list}
{SIMPLE_KEY amlas string_list}
[/case]
[default]
any_tag=yes
{ANY_KEY string}
[/default]
[/switch]
{WML_MERGE_KEYS}
[/tag]
{WML_MERGE_KEYS}
[/tag]
[tag]
name="trait"
max=infinite
super="units/$modifications/base"
{SIMPLE_KEY availability string} # TODO: Make this an enum type
{SIMPLE_KEY name t_string}
{SIMPLE_KEY male_name t_string}
{SIMPLE_KEY female_name t_string}
{SIMPLE_KEY description t_string}
{SIMPLE_KEY help_text t_string}
[/tag]
[tag]
name="advancement"
max=infinite
super="units/$modifications/base"
{SIMPLE_KEY strict_amla bool}
{SIMPLE_KEY major_amla bool} # Not documented
{SIMPLE_KEY exclude_amla string_list}
{SIMPLE_KEY require_amla string_list}
{SIMPLE_KEY max_times int}
{SIMPLE_KEY description t_string}
{SIMPLE_KEY image string}
{SIMPLE_KEY always_display bool} # Not documented
[/tag]
[tag]
name="object"
max=infinite
super="units/$modifications/base"
[/tag]