@compat 0.10.x removal: Drop old AIUnit tags.

This commit is contained in:
Mike Pope 2017-03-02 09:23:31 +10:30
parent c3bdf87089
commit e69317bc40
4 changed files with 179 additions and 170 deletions

View File

@ -24,6 +24,7 @@
<xs:include schemaLocation="../spec/spec-model.xsd"/>
<xs:include schemaLocation="data-goods.xsd"/>
<xs:include schemaLocation="data-aiUnit.xsd"/>
<xs:element name="aiMain">
<xs:annotation>
@ -104,159 +105,7 @@
</xs:complexType>
</xs:element>
<xs:element name="aiUnit">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:element name="buildColonyMission" >
<xs:complexType>
<xs:complexContent>
<xs:extension base="SimpleMissionType">
<!-- @compat 0.11.x -->
<xs:attribute name="doNotGiveUp" type="xs:boolean" use="optional" />
<xs:attribute name="colonyBuilt" type="xs:boolean" use="optional" />
<xs:attribute name="value" type="xs:int" use="optional" />
<!-- end @compat 0.11.x -->
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="cashInTreasureTrainMission"
type="SimpleMissionType" />
<xs:element name="defendSettlementMission">
<xs:complexType>
<xs:attribute name="settlement" type="SettlementId" use="required" />
</xs:complexType>
</xs:element>
<xs:element name="idleAtColonyMission" type="SimpleMissionType" />
<xs:element name="indianBringGiftMission">
<xs:complexType>
<xs:complexContent>
<xs:extension base="SimpleMissionType">
<xs:attribute name="collected" type="xs:boolean" use="optional" />
<xs:attribute name="colony" type="ColonyId" use="optional" />
<!-- @compat 0.11.x -->
<xs:attribute name="completed" type="xs:boolean" use="optional" />
<xs:attribute name="giftDelivered" type="xs:boolean" use="optional" />
<!-- end @compat 0.11.x -->
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="indianDemandMission">
<xs:complexType>
<xs:complexContent>
<xs:extension base="SimpleMissionType">
<xs:attribute name="colony" type="ColonyId" use="optional"/>
<xs:attribute name="demanded" type="xs:boolean" use="optional" />
<xs:attribute name="succeeded" type="xs:boolean" use="optional" />
<!-- @compat 0.11.x -->
<xs:attribute name="completed" type="xs:boolean" use="optional" />
<!-- end @compat 0.11.x -->
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="missionaryMission" type="SimpleMissionType"/>
<xs:element name="pioneeringMission">
<xs:complexType>
<xs:complexContent>
<xs:extension base="SimpleMissionType">
<xs:attribute name="tileImprovementPlan" type="TileImprovementPlanId" use="optional" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="privateerMission" type="SimpleMissionType"/>
<xs:element name="scoutingMission" type="SimpleMissionType"/>
<xs:element name="transportMission">
<xs:complexType>
<xs:complexContent>
<xs:extension base="SimpleMissionType">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="cargo">
<xs:complexType>
<xs:attribute name="id" type="TransportableId" use="required"/>
<xs:attribute name="mode" type="CargoMode" use="required"/>
<xs:attribute name="tries" type="xs:int" use="required"/>
<xs:attribute name="turns" type="xs:int" use="required"/>
<!-- @compat 0.11.x To Be Required -->
<xs:attribute name="carrier" type="UnitId" use="optional"/>
<xs:attribute name="cdst" type="LocationId" use="optional"/>
<xs:attribute name="cwait" type="LocationId" use="optional"/>
<xs:attribute name="fallback" type="xs:boolean" use="optional"/>
<xs:attribute name="space" type="xs:int" use="optional"/>
<xs:attribute name="tdst" type="LocationId" use="optional"/>
<xs:attribute name="twait" type="LocationId" use="optional"/>
<!-- end @compat 0.11.x -->
<!-- @compat 0.11.x: Obsolete -->
<xs:attribute name="target" type="LocationId" use="optional"/>
<!-- @compat 0.11.x -->
</xs:complexType>
</xs:element>
</xs:choice>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="unitSeekAndDestroyMission"
type="SimpleMissionType"/>
<xs:element name="unitWanderHostileMission"
type="SimpleMissionType" />
<xs:element name="unitWanderMission"
type="SimpleMissionType" />
<xs:element name="wishRealizationMission">
<xs:complexType>
<xs:complexContent>
<xs:extension base="SimpleMissionType">
<xs:attribute name="wish" type="WishId" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="workInsideColonyMission">
<xs:complexType>
<xs:complexContent>
<xs:extension base="SimpleMissionType">
<xs:attribute name="colony" type="ColonyId" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<!-- @compat 0.11.x -->
<xs:element name="tileImprovementPlanMission">
<xs:complexType>
<xs:attribute name="tileImprovementPlan" type="xs:string" use="required" />
<xs:attribute name="unit" type="UnitId" use="optional" />
</xs:complexType>
</xs:element>
<!-- end @compat 0.11.x -->
</xs:choice>
<xs:attribute name="id" type="UnitId" use="required"/>
<!-- @compat 0.11.x -->
<xs:attribute name="transport" type="UnitId" use="optional"/>
<xs:attribute name="value" type="xs:int" use="optional" />
<!-- end @compat 0.11.x -->
</xs:complexType>
</xs:element><!-- aiUnit -->
<xs:element ref="aiUnit"/>
<xs:element name="goodsWish">
<xs:complexType>

173
schema/data/data-aiUnit.xsd Normal file
View File

@ -0,0 +1,173 @@
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xs:annotation>
<xs:documentation>
Copyright (C) 2002-2017 The FreeCol Team
This file is part of FreeCol.
FreeCol is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
FreeCol is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with FreeCol. If not, see http://www.gnu.org/licenses
</xs:documentation>
</xs:annotation>
<xs:element name="aiUnit">
<xs:complexType>
<xs:choice minOccurs="0" maxOccurs="1">
<xs:element name="buildColonyMission" >
<xs:complexType>
<xs:complexContent>
<xs:extension base="SimpleMissionType">
<!-- @compat 0.11.x -->
<xs:attribute name="doNotGiveUp" type="xs:boolean" use="optional" />
<xs:attribute name="colonyBuilt" type="xs:boolean" use="optional" />
<xs:attribute name="value" type="xs:int" use="optional" />
<!-- end @compat 0.11.x -->
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="cashInTreasureTrainMission"
type="SimpleMissionType" />
<xs:element name="defendSettlementMission">
<xs:complexType>
<xs:attribute name="settlement" type="SettlementId" use="required" />
</xs:complexType>
</xs:element>
<xs:element name="idleAtSettlementMission"
type="SimpleMissionType" />
<xs:element name="indianBringGiftMission">
<xs:complexType>
<xs:complexContent>
<xs:extension base="SimpleMissionType">
<xs:attribute name="collected" type="xs:boolean" use="optional" />
<xs:attribute name="colony" type="ColonyId" use="optional" />
<!-- @compat 0.11.x -->
<xs:attribute name="completed" type="xs:boolean" use="optional" />
<xs:attribute name="giftDelivered" type="xs:boolean" use="optional" />
<!-- end @compat 0.11.x -->
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="indianDemandMission">
<xs:complexType>
<xs:complexContent>
<xs:extension base="SimpleMissionType">
<xs:attribute name="colony" type="ColonyId" use="optional"/>
<xs:attribute name="demanded" type="xs:boolean" use="optional" />
<xs:attribute name="succeeded" type="xs:boolean" use="optional" />
<!-- @compat 0.11.x -->
<xs:attribute name="completed" type="xs:boolean" use="optional" />
<!-- end @compat 0.11.x -->
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="missionaryMission"
type="SimpleMissionType"/>
<xs:element name="pioneeringMission">
<xs:complexType>
<xs:complexContent>
<xs:extension base="SimpleMissionType">
<xs:attribute name="tileImprovementPlan" type="TileImprovementPlanId" use="optional" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="privateerMission"
type="SimpleMissionType"/>
<xs:element name="scoutingMission"
type="SimpleMissionType"/>
<xs:element name="transportMission">
<xs:complexType>
<xs:complexContent>
<xs:extension base="SimpleMissionType">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="cargo">
<xs:complexType>
<xs:attribute name="id" type="TransportableId" use="required"/>
<xs:attribute name="mode" type="CargoMode" use="required"/>
<xs:attribute name="tries" type="xs:int" use="required"/>
<xs:attribute name="turns" type="xs:int" use="required"/>
<!-- @compat 0.11.x To Be Required -->
<xs:attribute name="carrier" type="UnitId" use="optional"/>
<xs:attribute name="cdst" type="LocationId" use="optional"/>
<xs:attribute name="cwait" type="LocationId" use="optional"/>
<xs:attribute name="fallback" type="xs:boolean" use="optional"/>
<xs:attribute name="space" type="xs:int" use="optional"/>
<xs:attribute name="tdst" type="LocationId" use="optional"/>
<xs:attribute name="twait" type="LocationId" use="optional"/>
<!-- end @compat 0.11.x -->
<!-- @compat 0.11.x: Obsolete -->
<xs:attribute name="target" type="LocationId" use="optional"/>
<!-- @compat 0.11.x -->
</xs:complexType>
</xs:element>
</xs:choice>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="unitSeekAndDestroyMission"
type="SimpleMissionType"/>
<xs:element name="unitWanderHostileMission"
type="SimpleMissionType" />
<xs:element name="unitWanderMission"
type="SimpleMissionType" />
<xs:element name="wishRealizationMission">
<xs:complexType>
<xs:complexContent>
<xs:extension base="SimpleMissionType">
<xs:attribute name="wish" type="WishId" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="workInsideColonyMission">
<xs:complexType>
<xs:complexContent>
<xs:extension base="SimpleMissionType">
<xs:attribute name="colony" type="ColonyId" use="required" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
</xs:choice>
<xs:attribute name="id" type="UnitId" use="required"/>
<!-- AIUnit is a TransportableAIObject -->
<xs:attribute name="transport" type="UnitId" use="optional"/>
<!-- AIUnit is a ValuedAIObject -->
<xs:attribute name="value" type="xs:int" use="optional" />
</xs:complexType>
</xs:element>
</xs:schema>

View File

@ -49,4 +49,6 @@
<xs:include schemaLocation="data-tradeRoute.xsd" />
<xs:include schemaLocation="data-unit.xsd" />
<xs:include schemaLocation="data-aiMain.xsd" />
<xs:include schemaLocation="data-aiUnit.xsd" />
</xs:schema>

View File

@ -779,13 +779,6 @@ if (direction == null && !result) net.sf.freecol.FreeCol.trace(logger, "LTFAIL")
// Serialization
// @compat 0.10.3
private static final String TILE_IMPROVEMENT_PLAN_MISSION_TAG = "tileImprovementPlanMission";
// end @compat
// @compat 0.10.5
private static final String IDLE_AT_COLONY_MISSION_TAG = "idleAtColonyMission";
// end @compat
/**
* {@inheritDoc}
@ -845,11 +838,7 @@ if (direction == null && !result) net.sf.freecol.FreeCol.trace(logger, "LTFAIL")
} else if (DefendSettlementMission.TAG.equals(tag)) {
mission = new DefendSettlementMission(aiMain, this, xr);
} else if (IdleAtSettlementMission.TAG.equals(tag)
// @compat 0.10.5
|| IDLE_AT_COLONY_MISSION_TAG.equals(tag)
// end @compat
) {
} else if (IdleAtSettlementMission.TAG.equals(tag)) {
mission = new IdleAtSettlementMission(aiMain, this, xr);
} else if (IndianBringGiftMission.TAG.equals(tag)) {
@ -861,11 +850,7 @@ if (direction == null && !result) net.sf.freecol.FreeCol.trace(logger, "LTFAIL")
} else if (MissionaryMission.TAG.equals(tag)) {
mission = new MissionaryMission(aiMain, this, xr);
} else if (PioneeringMission.TAG.equals(tag)
// @compat 0.10.3
|| TILE_IMPROVEMENT_PLAN_MISSION_TAG.equals(tag)
// end @compat
) {
} else if (PioneeringMission.TAG.equals(tag)) {
mission = new PioneeringMission(aiMain, this, xr);
} else if (PrivateerMission.TAG.equals(tag)) {