AssetTypeAttributeModifier.xsd 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  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:simpleType name="AttributeModifierCategoryType">
  4. <xs:restriction base="xs:string">
  5. <xs:enumeration value="NONE" />
  6. <xs:enumeration value="LEADERSHIP" />
  7. <xs:enumeration value="FORMATION" />
  8. <xs:enumeration value="SPELL" />
  9. <xs:enumeration value="WEAPON" />
  10. <xs:enumeration value="STRUCTURE" />
  11. <xs:enumeration value="LEVEL" />
  12. <xs:enumeration value="BUFF" />
  13. <xs:enumeration value="DEBUFF" />
  14. <xs:enumeration value="STUN" />
  15. <xs:enumeration value="INNATE_ARMOR" />
  16. <xs:enumeration value="INNATE_DAMAGEMULT" />
  17. <xs:enumeration value="INNATE_VISION" />
  18. <xs:enumeration value="INNATE_AUTOHEAL" />
  19. <xs:enumeration value="INNATE_HEALTH" />
  20. </xs:restriction>
  21. </xs:simpleType>
  22. <xs:simpleType name="AttributeType">
  23. <xs:restriction base="xs:string">
  24. <xs:enumeration value="NONE" />
  25. <xs:enumeration value="ARMOR" />
  26. <xs:enumeration value="DAMAGE_ADD" />
  27. <xs:enumeration value="DAMAGE_MULT" />
  28. <xs:enumeration value="RESIST_FEAR" />
  29. <xs:enumeration value="RESIST_TERROR" />
  30. <xs:enumeration value="EXPERIENCE" />
  31. <xs:enumeration value="RANGE" />
  32. <xs:enumeration value="SPEED" />
  33. <xs:enumeration value="CRUSH_DECELERATE" />
  34. <xs:enumeration value="RESIST_KNOCKBACK" />
  35. <xs:enumeration value="SPELL_DAMAGE" />
  36. <xs:enumeration value="RECHARGE_TIME" />
  37. <xs:enumeration value="PRODUCTION" />
  38. <xs:enumeration value="PRODUCTION_COST" />
  39. <xs:enumeration value="HEALTH" />
  40. <xs:enumeration value="HEALTH_MULT" />
  41. <xs:enumeration value="VISION" />
  42. <xs:enumeration value="BOUNTY_PERCENTAGE" />
  43. <xs:enumeration value="MIN_CRUSH_VELOCITY_PERCENTAGE" />
  44. <xs:enumeration value="AUTO_HEAL" />
  45. <xs:enumeration value="SHROUD_CLEARING" />
  46. <xs:enumeration value="RATE_OF_FIRE" />
  47. <xs:enumeration value="DAMAGE_STRUCTURE_BOUNTY_ADD" />
  48. <xs:enumeration value="CRUSHER_LEVEL" />
  49. <xs:enumeration value="COMMAND_POINT_BONUS" />
  50. <xs:enumeration value="CRUSHABLE_LEVEL" />
  51. <xs:enumeration value="CRUSHED_DECELERATE" />
  52. <xs:enumeration value="INVULNERABLE" />
  53. <xs:enumeration value="SUPPRESSABILITY" />
  54. <!-- value doesn't matter here, but use 0% or 100% to make it obvious. -->
  55. <xs:enumeration value="RESIST_EMP" />
  56. <xs:enumeration value="POWER_BOOST" />
  57. <xs:enumeration value="AREA_OF_EFFECT" />
  58. <xs:enumeration value="COLLISION_GEOMETRY_SIZE_MULT" />
  59. <xs:enumeration value="BROADCAST_RANGE" />
  60. </xs:restriction>
  61. </xs:simpleType>
  62. <xs:simpleType name="AttributeModifierCategoryBitFlags">
  63. <xs:list itemType="AttributeModifierCategoryType"></xs:list>
  64. </xs:simpleType>
  65. <xs:complexType name="AttributeModifierListType">
  66. <xs:sequence></xs:sequence>
  67. <xs:attribute name="Type" type="AttributeType" />
  68. <xs:attribute name="Value" type="Percentage" default="0" />
  69. </xs:complexType>
  70. <xs:complexType name="AttributeModifier" xas:runtimeWrapper="::AttributeModifierContainer" xas:typeGroup="Xml">
  71. <xs:complexContent>
  72. <xs:extension base="BaseInheritableAsset">
  73. <xs:sequence>
  74. <xs:element name="Modifier" type="AttributeModifierListType" minOccurs="0" maxOccurs="unbounded" />
  75. </xs:sequence>
  76. <xs:attribute name="Category" type="AttributeModifierCategoryType" />
  77. <!-- Duration of zero is infinite -->
  78. <xs:attribute name="Duration" type="Time" default="0s" />
  79. <xs:attribute name="ReplaceInCategoryIfLongest" type="SageBool" default="false" />
  80. <xs:attribute name="IgnoreIfAnticategoryActive" type="SageBool" default="false" />
  81. <xs:attribute name="RemoveWhenDisabledByTypes" type="DisabledBitFlags" default="" />
  82. <xs:attribute name="StartFX" type="FXListRef" />
  83. <xs:attribute name="EndFX" type="FXListRef" />
  84. <xs:attribute name="ModelConditionsSet" type="ModelConditionBitFlags" use="optional" />
  85. <xs:attribute name="ModelConditionsClear" type="ModelConditionBitFlags" use="optional" />
  86. <xs:attribute name="ObjectStatusToSet" type="ObjectStatusBitFlags" use="optional" />
  87. <xs:attribute name="StackingLimit" type="SageUnsignedInt" default="1" />
  88. <xs:attribute name="ArmorSetType" type="ArmorSetType" />
  89. <xs:attribute name="Shader" type="ShaderOverrideRef" use="optional" />
  90. </xs:extension>
  91. </xs:complexContent>
  92. </xs:complexType>
  93. </xs:schema>