<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.0">
<xs:include schemaLocation="../zones/zones.xsd" />
<xs:include schemaLocation="../global_types.xsd" />
<xs:include schemaLocation="../world_maps.xsd" />
<xs:include schemaLocation="../import.xsd" />
<xs:element name="siege_locations">
<xs:complexType>
<xs:sequence>
<xs:element ref="import" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="siege_location" type="siegelocation" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="siegelocation">
<xs:sequence>
<xs:element name="artifact_activation" type="ArtifactActivation" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="door_repair_data" type="DoorRepairData" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="siege_reward" type="SiegeReward" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="legion_reward" type="SiegeLegionReward" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="merc_zone" type="SiegeMercenaryZone" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="assault_data" type="AssaultData" minOccurs="0" maxOccurs="1" />
<xs:element name="siege_related_bases" type="SiegeRelatedBases" minOccurs="0" />
</xs:sequence>
<xs:attribute name="id" type="xs:int" use="required" />
<xs:attribute name="type" type="SiegeType" use="required" />
<xs:attribute name="world" type="xs:int" use="required" />
<xs:attribute name="name_id" type="xs:int" />
<xs:attribute name="fortress_dependency" type="IntListType" />
<xs:attribute name="siege_duration" type="xs:int" />
<xs:attribute name="influence" type="xs:int" />
<xs:attribute name="legion_gp" type="xs:int" />
<xs:attribute name="occupy_count" type="xs:int" />
<xs:attribute name="kinah_rewards" type="IntListType" />
</xs:complexType>
<xs:simpleType name="SiegeType">
<xs:restriction base="xs:string">
<xs:enumeration value="FORTRESS" />
<xs:enumeration value="ARTIFACT" />
<xs:enumeration value="OUTPOST" />
<xs:enumeration value="AGENT_FIGHT" />
<xs:enumeration value="INDUN" />
<xs:enumeration value="UNDERPASS" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="AssaulterType">
<xs:restriction base="xs:string">
<xs:enumeration value="TELEPORT" />
<xs:enumeration value="COMMANDER" />
<xs:enumeration value="FIGHTER" />
<xs:enumeration value="RANGER" />
<xs:enumeration value="ASSASSIN" />
<xs:enumeration value="GUNNER" />
<xs:enumeration value="PRIEST" />
<xs:enumeration value="WITCH" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ArtifactActivation">
<xs:attribute name="item_id" type="xs:int" />
<xs:attribute name="count" type="xs:int" />
<xs:attribute name="skill" type="xs:int" />
<xs:attribute name="repeat_count" type="xs:int" />
<xs:attribute name="repeat_interval" type="xs:int" />
<xs:attribute name="cd" type="xs:int" />
</xs:complexType>
<xs:complexType name="DoorRepairData">
<xs:sequence>
<xs:element name="door_repair_stone" type="DoorRepairStone" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="item_id" type="xs:int" />
<xs:attribute name="count" type="xs:int" />
<xs:attribute name="cd" type="xs:int" />
</xs:complexType>
<xs:complexType name="DoorRepairStone">
<xs:attribute name="static_id" type="xs:int" use="required" />
<xs:attribute name="door_id" type="xs:int" use="required" />
</xs:complexType>
<xs:complexType name="SiegeReward">
<xs:attribute name="top" type="xs:int" use="required" />
<xs:attribute name="item_id" type="xs:int" />
<xs:attribute name="item_count" type="xs:int" />
<xs:attribute name="item_id_defeat" type="xs:int" />
<xs:attribute name="item_count_defeat" type="xs:int" />
<xs:attribute name="gp_win" type="xs:int" />
<xs:attribute name="gp_defeat" type="xs:int" />
</xs:complexType>
<xs:complexType name="SiegeLegionReward">
<xs:attribute name="item_id" type="xs:int" use="required" />
<xs:attribute name="item_count" type="xs:int" use="required" />
</xs:complexType>
<xs:complexType name="SiegeMercenaryZone">
<xs:attribute name="id" type="xs:int" use="required" />
<xs:attribute name="costs" type="xs:int" use="required" />
<xs:attribute name="cooldown" type="xs:int" use="required" />
<xs:attribute name="msg_id" type="xs:int" use="required" />
<xs:attribute name="announce_id" type="xs:int" use="required" />
</xs:complexType>
<xs:complexType name="AssaultData">
<xs:sequence>
<xs:element name="assaulter" type="AssaulterTemplate" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="dredgion_id" type="xs:int" />
<xs:attribute name="base_budget" type="xs:int" />
<xs:attribute name="base_delay" type="xs:int" />
</xs:complexType>
<xs:complexType name="AssaulterTemplate">
<xs:attribute name="type" type="AssaulterType" />
<xs:attribute name="npc_ids" type="IntListType" />
<xs:attribute name="heading_offset" type="xs:int" />
<xs:attribute name="distance_offset" type="xs:int" />
</xs:complexType>
<xs:complexType name="SiegeRelatedBases">
<xs:attribute name="ids" type="IntListType" />
</xs:complexType>
</xs:schema>