<?xml version="1.0" encoding="UTF-8"?>
<Scheme>
	<keyword-classes>
		<keyword-class name="avernum_keywords">
			short
			int
			string
			variables
			body
			if
			else
			while
			break
			import
			clear
		</keyword-class>
		<keyword-class name="avernum_constants">
			TRUE
			FALSE
			ME
			INIT_STATE
			START_STATE
			EXIT_STATE
			START_SCEN_STATE
			SEARCH_STATE
			TALKING_STATE
			UNLOCK_SPELL_STATE
			SANCTIFICATION_STATE
			LOAD_SCEN_STATE
			BLOCK_MOVE_STATE
			DISPEL_BARRIER_STATE
			STEP_INTO_SPOT_STATE
			DEP_ON_SDF
			SET_SDF
			SET_TO_1
			PAY
			END_TALK
			INTRO
			INN
			ID
		</keyword-class>
		<keyword-class name="avernum_state">
			beginscenarioscript
			begincreaturescript
			begintalkscript
			begintownscript
			beginoutdoorscript
			beginscendatascript
			begindefinefloor
			begindefineterrain
			begindefinecreature
			begindefineitem
			beginstate
			begintalknode
		</keyword-class>
		<keyword-class name="avernum_define_dialog">
			fl_name
			fl_which_sheet
			fl_which_icon
			fl_icon_adjust
			fl_ed_which_sheet
			fl_ed_which_icon
			fl_blocked
			fl_step_sound
			fl_light_radius
			fl_floor_height_pixels
			fl_special_property
			fl_special_strength
			fl_is_water
			fl_is_floor
			fl_is_ground
			fl_is_rough
			fl_fly_over
			fl_shortcut_key
			fl_anim_steps
			fl_shimmers
			fl_out_fight_town_used
			te_name
			te_default_script
			te_which_sheet
			te_which_icon
			te_icon_adjust
			te_ed_which_sheet
			te_ed_which_icon
			te_cutaway_icon_adjust
			te_icon_offset_x
			te_icon_offset_y
			te_second_icon
			te_second_icon_offset_x
			te_second_icon_offset_y
			te_cutaway_second_icon
			te_anim_steps
			te_move_block_n
			te_move_block_w
			te_move_block_s
			te_move_block_e
			te_look_block_n
			te_look_block_w
			te_look_block_s
			te_look_block_e
			te_blocks_view_n
			te_blocks_view_w
			te_blocks_view_s
			te_blocks_view_e
			te_height_adj_pixels
			te_suppress_floor
			te_light_radius
			te_step_sound
			te_shortcut_key
			te_crumble_type
			te_terrain_to_crumble_to
			te_beam_hit_type
			te_hidden_town_terrain
			te_swap_terrain
			te_is_bridge
			te_is_road
			te_can_look_at
			te_special_property
			te_special_strength
			te_draw_on_automap
			te_full_move_block
			te_full_look_block
			te_shimmers
			te_out_fight_town_used
			cr_name
			cr_default_script
			cr_level
			cr_hp_bonus
			cr_sp_bonus
			cr_special_abil
			cr_default_attitude
			cr_species
			cr_natural_armor
			cr_attack_1
			cr_attack_23
			cr_attack_1_type
			cr_attack_23_type
			cr_ap_bonus
			cr_default_strategy
			cr_default_aggression
			cr_default_courage
			cr_which_sheet
			cr_icon_adjust
			cr_small_or_large_template
			cr_which_sheet_upper
			cr_summon_class
			cr_what_stat_adjust
			cr_amount_stat_adjust
			cr_start_item
			cr_start_item_chance
			cr_immunities
			it_name
			it_full_name
			it_variety
			it_damage_per_level
			it_bonus
			it_weapon_skill_used
			it_protection
			it_charges
			it_encumbrance
			it_floor_which_sheet
			it_floor_which_icon
			it_icon_adjust
			it_inventory_icon
			it_ability_1
			it_ability_2
			it_ability_3
			it_ability_4
			it_ability_str_1
			it_ability_str_2
			it_ability_str_3
			it_ability_str_4
			it_special_class
			it_value
			it_weight
			it_identified
			it_magic
			it_cursed
			it_once_per_day
			it_junk_item
			it_missile_anim_type
			state
			nextstate
			personality
			condition
			question
			text1
			text2
			text3
			text4
			text5
			text6
			action
			code
		</keyword-class>
		<keyword-class name="avernum_functions">
			print_big_str
			print_big_str_num
			block_entry
			end
			get_ran
			get_selected_char
			is_combat
			is_outdoor
			is_town
			play_sound
			print_str
			print_str_color
			run_scenario_script
			run_town_script
			set_incidental_sound
			set_state
			set_state_continue
			clear_quest
			end_scenario
			get_flag
			get_sdf
			inc_flag
			set_flag
			toggle_quest
			alert_char
			award_char_xp
			award_party_xp
			can_see_char
			change_char_xp
			change_pc_skill_pts
			change_spell_level
			char_attitude_to_char
			char_has_trait
			char_ok
			char_on_spot
			char_status
			creature_type
			deduct_ap
			end_combat_turn
			enemies_nearby
			erase_char
			friends_nearby
			get_attitude
			get_char_skill_pts
			get_energy
			get_health
			get_level
			get_max_health
			get_species
			get_spell_level
			get_summon_level
			give_recipe
			has_recipe
			kill_char
			my_ap
			my_number
			party_can_see_loc
			party_has_trait
			party_size
			print_named_str
			random_party_member
			revive_party
			set_attitude
			set_char_alert
			set_char_script_mode
			set_char_trait
			set_creature_memory_cell
			set_level
			set_mobility
			set_name
			set_special_ability
			set_summon_level
			species_in_party
			change_coins
			change_spec_item
			char_give_item
			char_has_item
			char_has_item_of_class_equip
			char_take_item
			coins_amount
			has_item
			has_item_of_class
			has_num_of_item
			has_special_item
			item_of_class_on_spot
			move_item_on_spot
			pay_coins
			put_item_on_spot
			reward_give
			take_all_of_item
			take_all_of_item_class
			take_item
			take_item_of_class_on_spot
			take_num_of_item
			take_special_item
			char_loc_x
			char_loc_y
			char_dist_to_loc
			char_on_loc
			dist_to_waypoint
			group_dist_to_loc
			my_dist_from_start
			alter_stat
			change_char_energy
			change_char_health
			char_with_highest_skill
			damage_char
			damage_near_loc
			get_char_status
			get_highest_skill
			get_skill_total
			get_stat
			get_stat_levels_bought
			heal_char
			party_has_status
			party_member_has_skill
			restore_energy_char
			restore_pc
			set_char_status
			set_party_status
			status_near_loc
			waypoint_damage_party
			put_boom_on_char
			put_boom_on_space
			put_effect_on_char
			put_effect_on_space
			put_jagged_zap
			put_sparkles_on_char
			put_sparkles_on_space
			put_straight_zap
			run_animation
			run_animation_sound
			add_item_to_shop
			create_boat
			create_horse
			init_quest
			init_special_item
			set_creature_type_level
			in_boat
			in_horse
			set_boat_property
			set_boat_range_property
			set_horse_property
			set_horse_range_property
			day_event_happened
			set_event_happened
			activate_hidden_group
			change_crime_level
			change_outdoor_location
			clear_town
			current_town
			current_town_size
			enable_add_chars
			get_crime_level
			make_town_hostile
			move_to_new_town
			num_killed_in_town
			place_monster
			set_crime_tolerance
			set_items_not_property
			set_town_status
			set_town_visibility
			spawn_creature
			teleport_party
			town_status
			turn_off_training
			create_out_spec_enc
			current_out_section
			eliminate_outdoor_enc
			out_move_party
			outdoor_enc_exists
			outdoor_enc_result
			place_out_spec_enc
			set_out_fight_town_loaded
			force_start_day
			get_current_tick
			set_ticks_forward
			tick_difference
			what_day_of_scenario
			what_day_of_year
			create_text_bubble
			drop_item
			get_char_who_stepped_on
			make_wandering_monst
			put_object_on_waypoint
			run_bash_door
			run_pick_lock
			set_ter_script_mode
			set_terrain_memory_cell
			text_bubble_on_char
			change_blocked
			get_floor
			get_height
			get_terrain
			flip_terrain
			is_blocked
			is_field_on_space
			is_object_on_space
			is_stain_on_space
			put_field_on_space
			put_object_on_space
			put_stain_on_space
			set_floor
			set_height
			set_terrain
			swap_floor
			swap_terrain
			add_string
			begin_shop_mode
			begin_talk_mode
			character_talking_to
			clear_strings
			current_personality
			remove_string
			set_char_dialogue_pic
			reset_dialog
			add_dialog_choice
			reset_dialog_preset_options
			add_dialog_str
			message_dialog
			run_dialog
			check_text_response_match
			get_selected_pc
			get_text_response
			got_text_match
			large_draw_pic_dialog
			run_select_a_pc
			small_draw_pic_dialog
			can_see_loc
			damage_nearby
			dist_to_char
			dist_to_loc
			dist_to_party
			floor_in_this_spot
			force_status_nearby
			get_memory_cell
			get_nearest_char
			get_nearest_evil_char
			get_nearest_good_char
			heal_nearby
			my_loc_x
			my_loc_y
			restore_energy_nearby
			set_memory_cell
			set_script_mode
			status_nearby
			terrain_in_this_spot
			char_on_me
			char_who_activated_script
			get_mechanism_difficulty
			get_physical_strength
			set_mechanism_difficulty
			set_physical_strength
			am_i_doing_action
			approach_char
			approach_ter_script
			approach_waypoint
			fidget
			flee_char
			maintain_dist_to_char
			move_to_loc_x_y
			return_to_start
			stop_moving
			do_attack
			do_attack_tactic
			get_aggression
			get_courage
			get_strategy
			get_target
			select_target
			set_aggression
			set_courage
			set_strategy
			set_target
			target_ok
			who_hit_me
			add_char_to_group
			add_range_to_group
			char_in_group
			clear_all_groups
			first_group_member
			num_chars_in_group
			random_group_member
			remove_char_from_group
			what_group_in
			broadcast_char_message
			broadcast_message_from_x_y
			broadcast_terrain_message
			give_char_message
			give_ter_script_message
			my_current_message
			destroy_char_item
			get_item_variety
			item_type_in_slot
			take_item_char_item
			add_char_to_party
			character_in_party
			remove_char_from_party
			this_char_is_in_party
			reunite_party
			split_off_one_char
			try_to_split_party
			who_is_custom_item_target
			who_used_custom_item
			change_custom_abil_uses
			get_custom_abil_uses
			init_special_abil
			who_used_custom_abil
			erase_text_bubbles
			force_instant_terrain_redraw
			force_view_center
			march_party
			pause
			relocate_character
			set_character_facing
			set_character_pose
			set_total_visibility
			append_char_name
			append_number
			append_string
			clear_buffer
			get_buffer_text
			print_num
			print_nums
			turn_on_debug_mode
		</keyword-class>
	</keyword-classes>
	<schemedef
			name="avernum"
			title="AvernumScript"
			version="0.1"
			casesensitive="true"
			braces="{()}"
	>
		<lexer name="avernum" />
		<strings>
			<stringtype
					id="0"
					start="&quot;"
					end="&quot;"
					multiline="false"
			/>
		</strings>
		<comments>
				<line start="//" />
		</comments>
		<numbers
				start="[0-9]"
				content="[0-9]"
		/>
		<use-styles>
			<style name="Default" key="32" />
			<style name="Whitespace" key="0" />
			<style name="Line Comment" key="1" class="comment" />
			<style name="Number" key="4" class="number" />
			<style name="Keywords" key="5" class="keyword" />
			<style name="Constants" key="6" fore="00c060" italic="true" />
			<style name="State" key="7" fore="0060c0" bold="true" />
			<style name="Define / Dialog" key="8" fore="c00060" />
			<style name="Functions" key="9" fore="c06000" />
			<style name="String" key="10" class="string" />
		</use-styles>
		<use-keywords>
			<keyword
				key="0"
				name="Keywords"
				class="avernum_keywords"
			/>
			<keyword
				key="1"
				name="Constants"
				class="avernum_constants"
			/>
			<keyword
				key="2"
				name="State"
				class="avernum_state"
			/>
			<keyword
				key="3"
				name="Define / Dialog"
				class="avernum_define_dialog"
			/>
			<keyword
				key="4"
				name="Functions"
				class="avernum_functions"
			/>
		</use-keywords>
	</schemedef>
</Scheme>
