Files
Freagarach e7158ae6b1 Unify UnitAI and AnimalAI.
18b317bc19 (#563) introduced an ANIMAL-state from a separate
AnimalAI-component (introduced in e19146cf25).
This patch merges that separate state and brings the ROAMING and FEEDING
(renamed to LINGERING) under the INDIVIDUAL.IDLE-state.

This enables e.g. city-building mods to have human units that linger and
roam or animals that behave like humans.

The specific values for animals might need tweaking after this.

Differential revision: D2646
Fixes: #1832, #5593
Comments by: @Angen, @Langbart, @Nescio, @Stan, @wraitii
Refs.: #3919

This was SVN commit r24953.
2021-02-27 20:13:40 +00:00

65 lines
1.9 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- This entity file is meant to make birds move
on the map instead of just staying there,
but not affect the gameplay in any way.
They have a minimum number of components. -->
<Entity>
<Position>
<Altitude>0</Altitude>
<Anchor>upright</Anchor>
<Floating>false</Floating>
<FloatDepth>0</FloatDepth>
<TurnRate>1</TurnRate>
</Position>
<Selectable>
<EditorOnly/>
<Overlay>
<Texture>
<MainTexture>128x256/ellipse.png</MainTexture>
<MainTextureMask>128x256/ellipse_mask.png</MainTextureMask>
</Texture>
</Overlay>
</Selectable>
<UnitAI>
<DefaultStance>passive</DefaultStance>
<FormationController>false</FormationController>
<CanGuard>false</CanGuard>
<CanPatrol>false</CanPatrol>
<PatrolWaitTime>0</PatrolWaitTime>
<RoamDistance>1000.0</RoamDistance>
<FleeDistance>10.0</FleeDistance>
<RoamTimeMin>10000</RoamTimeMin>
<RoamTimeMax>100000</RoamTimeMax>
<FeedTimeMin>1</FeedTimeMin>
<FeedTimeMax>2</FeedTimeMax>
</UnitAI>
<UnitMotionFlying>
<MaxSpeed>15.0</MaxSpeed>
<TakeoffSpeed>1.0</TakeoffSpeed>
<LandingSpeed>5.0</LandingSpeed>
<AccelRate>5.0</AccelRate>
<SlowingRate>5.0</SlowingRate>
<BrakingRate>5.0</BrakingRate>
<TurnRate>0.5</TurnRate>
<OvershootTime>2.0</OvershootTime>
<FlyingHeight>40.0</FlyingHeight>
<ClimbRate>4.0</ClimbRate>
<DiesInWater>false</DiesInWater>
<PassabilityClass>unrestricted</PassabilityClass>
</UnitMotionFlying>
<Visibility>
<RetainInFog>true</RetainInFog>
<AlwaysVisible>false</AlwaysVisible>
<Corpse>false</Corpse>
<Preview>false</Preview>
</Visibility>
<Vision>
<Range>0</Range>
</Vision>
<VisualActor>
<SilhouetteDisplay>false</SilhouetteDisplay>
<SilhouetteOccluder>false</SilhouetteOccluder>
<VisibleInAtlasOnly>false</VisibleInAtlasOnly>
</VisualActor>
</Entity>