ConquerMode.xsd 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="uri:ea.com:eala:asset" xmlns:at="uri:ea.com:eala:asset:type" xmlns:xas="uri:ea.com:eala:asset:schema" targetNamespace="uri:ea.com:eala:asset" elementFormDefault="qualified" xmlns:XmlEdit="http://tempuri.org/XmlEdit.xsd">
  3. <xs:complexType name="ConquerCardDefinitionBase" xas:typeGroup="Xml">
  4. <xs:complexContent>
  5. <xs:extension base="BaseAssetType">
  6. <!-- xs:attribute name="DisplayName" type="xs:string" use="required" / -->
  7. <!-- xs:attribute name="Description" type="xs:string" / -->
  8. <xs:attribute name="Cost" type="SageInt" use="required" />
  9. <xs:attribute name="Maximum" type="SageInt" default="0" />
  10. <!-- xs:attribute name="Side" type="AssetId" use="required" / -->
  11. </xs:extension>
  12. </xs:complexContent>
  13. </xs:complexType>
  14. <xs:complexType name="ConquerCardDefinitionUnit" xas:runtimeWrapper="Sage::Multiplayer::ConquerCardDefinitionUnit" xas:typeGroup="Xml">
  15. <xs:complexContent>
  16. <xs:extension base="ConquerCardDefinitionBase">
  17. <xs:sequence>
  18. <xs:element name="Upgrade" minOccurs="0" maxOccurs="unbounded">
  19. <xs:complexType>
  20. <!-- xs:attribute name="DisplayName" type="xs:string" use="required" / -->
  21. <!-- xs:attribute name="Description" type="xs:string" / -->
  22. <xs:attribute name="Upgrade" type="UpgradeTemplateRef" use="required" />
  23. <xs:attribute name="Cost" type="SageInt" use="required" />
  24. </xs:complexType>
  25. </xs:element>
  26. <xs:element name="Veterancy" minOccurs="0" maxOccurs="unbounded">
  27. <xs:complexType>
  28. <xs:attribute name="Veterancy" type="VeterancyLevel" use="required" />
  29. <xs:attribute name="Cost" type="SageInt" use="required" />
  30. </xs:complexType>
  31. </xs:element>
  32. </xs:sequence>
  33. <xs:attribute name="Unit" type="GameObjectRef" use="required"/>
  34. </xs:extension>
  35. </xs:complexContent>
  36. </xs:complexType>
  37. <xs:complexType name="ConquerCardDefinitionStructure" xas:runtimeWrapper="Sage::Multiplayer::ConquerCardDefinitionStructure" xas:typeGroup="Xml">
  38. <xs:complexContent>
  39. <xs:extension base="ConquerCardDefinitionBase">
  40. <xs:sequence />
  41. <xs:attribute name="Structure" type="GameObjectRef" use="required" />
  42. </xs:extension>
  43. </xs:complexContent>
  44. </xs:complexType>
  45. <xs:complexType name="ConquerCardDefinitionPower" xas:runtimeWrapper="Sage::Multiplayer::ConquerCardDefinitionPower" xas:typeGroup="Xml">
  46. <xs:complexContent>
  47. <xs:extension base="ConquerCardDefinitionBase">
  48. <xs:sequence />
  49. <xs:attribute name="Power" type="SpecialPowerTemplateRef" use="required" />
  50. <xs:attribute name="Side" type="AssetId" use="required" />
  51. </xs:extension>
  52. </xs:complexContent>
  53. </xs:complexType>
  54. <xs:simpleType name="ConquerCardDefinitionRef"
  55. xas:isRef="true"
  56. xas:refType="ConquerCardDefinitionBase">
  57. <xs:restriction base="AssetReference" />
  58. </xs:simpleType>
  59. <!-- xs:complexType name="ConquerCardDefinitions">
  60. <xs:complexContent>
  61. <xs:extension base="BaseAssetType">
  62. <xs:sequence>
  63. <xs:element name="Card" type="ConquerCardDefinitionRef" minOccurs="0" maxOccurs="unbounded" />
  64. </xs:sequence>
  65. </xs:extension>
  66. </xs:complexContent>
  67. </xs:complexType -->
  68. <!-- xs:complexType name="ConquerCardDefinitions">
  69. <xs:complexContent>
  70. <xs:extension base="BaseAssetType">
  71. <xs:choice minOccurs="1" maxOccurs="unbounded">
  72. <xs:element name="Unit" type="ConquerCardDefinitionUnit" />
  73. <xs:element name="Structure" type="ConquerCardDefinitionStructure" />
  74. <xs:element name="Power" type="ConquerCardDefinitionPower" />
  75. </xs:choice>
  76. </xs:extension>
  77. </xs:complexContent>
  78. </xs:complexType -->
  79. <xs:complexType name="ConquerCard" xas:isPolymorphic="true">
  80. <xs:sequence />
  81. <xs:attribute name="Card" type="ConquerCardDefinitionRef" use="required" />
  82. </xs:complexType>
  83. <xs:complexType name="ConquerCardUnit">
  84. <xs:complexContent>
  85. <xs:extension base="ConquerCard">
  86. <xs:sequence>
  87. <!-- Unit Attributes -->
  88. <xs:element name="Upgrade" minOccurs="0" maxOccurs="unbounded">
  89. <xs:complexType>
  90. <xs:attribute name="Upgrade" type="UpgradeTemplateRef" use="required" />
  91. </xs:complexType>
  92. </xs:element>
  93. </xs:sequence>
  94. <xs:attribute name="Count" type="SageInt" default="1" />
  95. <xs:attribute name="Veterancy" type="VeterancyLevel" default="REGULAR" />
  96. </xs:extension>
  97. </xs:complexContent>
  98. </xs:complexType>
  99. <xs:complexType name="ConquerCardList">
  100. <xs:choice minOccurs="1" maxOccurs="unbounded" >
  101. <xs:element name="Unit" type="ConquerCardUnit" />
  102. <xs:element name="Structure" type="ConquerCard" />
  103. <xs:element name="Power" type="ConquerCard" />
  104. </xs:choice>
  105. </xs:complexType>
  106. <xs:complexType name="ConquerCardPrebuiltDeck" xas:runtimeWrapper="Sage::Multiplayer::ConquerDeck" xas:typeGroup="Xml">
  107. <xs:complexContent>
  108. <xs:extension base="BaseAssetType">
  109. <xs:sequence>
  110. <xs:element name="Cards" type="ConquerCardList" />
  111. </xs:sequence>
  112. <xs:attribute name="DisplayName" type="xs:string" use="required" />
  113. <xs:attribute name="Description" type="xs:string" />
  114. <xs:attribute name="Side" type="AssetId" use="required" />
  115. </xs:extension>
  116. </xs:complexContent>
  117. </xs:complexType>
  118. </xs:schema>