Skip to content

EntityLimits

Examples

Example

<EntityLimits>
  <Limits>
    <Palace>
      1
    </Palace>
    <Fortress>
      10
    </Fortress>
    <Hero>
      1
    </Hero>
    <Monument>
      5
    </Monument>
    <Tower>
      25
    </Tower>
    <Wonder>
      1
    </Wonder>
  </Limits>
  <LimitChangers>
    <Monument>
      <CivilCentre>
        2
      </CivilCentre>
    </Monument>
  </LimitChangers>
  <LimitRemovers>
    <CivilCentre>
      <RequiredTechs datatype="tokens">
        town_phase
      </RequiredTechs>
    </CivilCentre>
  </LimitRemovers>
</EntityLimits>

XML Elements

The following elements can be used within this component:

EntityLimits

Limits

List of building/unit(s) requirements on which to apply a specific limit.

Path: EntityLimits/Limits

{LimitsType}

Specifies a category of building/unit on which to apply this limit. See BuildRestrictions/TrainingRestrictions for possible categories

Type: integer

Path: EntityLimits/Limits/{LimitsType}

LimitChangers

List of building/unit(s) requirements that can change a specific limit.

Path: EntityLimits/LimitChangers

{LimitChangersType}

Specifies a category of building/unit on which to apply this limit. See BuildRestrictions/TrainingRestrictions for possible categories

Path: EntityLimits/LimitChangers/{LimitChangersType}

{LimitChangersType}

Specifies the class that changes the entity limit

Type: integer

Path: EntityLimits/LimitChangers/{LimitChangersType}/{LimitChangersType}

LimitRemovers

List of building/unit(s) requirements to lift a specific limit.

Path: EntityLimits/LimitRemovers

{LimitRemoversType}

Specifies a category of building/unit on which to remove this limit. The limit will be removed if all the following requirements are satisfied

Path: EntityLimits/LimitRemovers/{LimitRemoversType}

{LimitRemoversType}

Possible requirements are: RequiredTechs and RequiredClasses

Type: text

Path: EntityLimits/LimitRemovers/{LimitRemoversType}/{LimitRemoversType}

RELAX NG Grammar

<define name="component.EntityLimits">
  <element name="EntityLimits">
    <interleave>
      <element name="Limits">
        <zeroOrMore>
          <element>
            <anyName/>
            <data type="integer"/>
          </element>
        </zeroOrMore>
      </element>
      <element name="LimitChangers">
        <zeroOrMore>
          <element>
            <anyName/>
            <zeroOrMore>
              <element>
                <anyName/>
                <data type="integer"/>
              </element>
            </zeroOrMore>
          </element>
        </zeroOrMore>
      </element>
      <element name="LimitRemovers">
        <zeroOrMore>
          <element>
            <anyName/>
            <oneOrMore>
              <element>
                <anyName/>
                <attribute name="datatype">
                  <value>
                  </value>
                </attribute>
                <text/>
              </element>
            </oneOrMore>
          </element>
        </zeroOrMore>
      </element>
    </interleave>
  </element>
</define>