Table of Contents

Class LineFormation

Namespace
TaleWorlds.MountAndBlade
Assembly
TaleWorlds.MountAndBlade.dll
public class LineFormation : IFormationArrangement
Inheritance
LineFormation
Implements
Derived
Inherited Members

Constructors

LineFormation(IFormation, bool)

public LineFormation(IFormation ownerFormation, bool isStaggered = true)

Parameters

ownerFormation IFormation
isStaggered bool

LineFormation(IFormation, bool, bool)

protected LineFormation(IFormation ownerFormation, bool isDeformingOnWidthChange, bool isStaggered = true)

Parameters

ownerFormation IFormation
isDeformingOnWidthChange bool
isStaggered bool

Fields

IsTransforming

protected bool IsTransforming

Field Value

bool

UnitPositionAvailabilities

protected MBList2D<int> UnitPositionAvailabilities

Field Value

MBList2D<int>

UnitPositionAvailabilityValueOfAvailable

protected const int UnitPositionAvailabilityValueOfAvailable = 2

Field Value

int

UnitPositionAvailabilityValueOfUnavailable

protected const int UnitPositionAvailabilityValueOfUnavailable = 1

Field Value

int

UnitPositionAvailabilityValueOfUnprocessed

protected const int UnitPositionAvailabilityValueOfUnprocessed = 0

Field Value

int

owner

protected readonly IFormation owner

Field Value

IFormation

Properties

AreLocalPositionsDirty

public bool AreLocalPositionsDirty { protected get; set; }

Property Value

bool

Depth

public virtual float Depth { get; }

Property Value

float

Distance

protected float Distance { get; }

Property Value

float

FileCount

protected int FileCount { get; }

Property Value

int

FlankWidth

public float FlankWidth { get; set; }

Property Value

float

Interval

protected float Interval { get; }

Property Value

float

IsLoose

public virtual bool? IsLoose { get; }

Property Value

bool?

IsStaggered

public bool IsStaggered { get; set; }

Property Value

bool

MaximumWidth

public virtual float MaximumWidth { get; }

Property Value

float

MinimumFlankWidth

public float MinimumFlankWidth { get; }

Property Value

float

MinimumWidth

public virtual float MinimumWidth { get; }

Property Value

float

PositionedUnitCount

public int PositionedUnitCount { get; }

Property Value

int

RankCount

public int RankCount { get; }

Property Value

int

RankDepth

public float RankDepth { get; }

Property Value

float

UnitCount

public int UnitCount { get; }

Property Value

int

UnitDiameter

protected float UnitDiameter { get; }

Property Value

float

Width

public virtual float Width { get; set; }

Property Value

float

Methods

AddUnit(IFormationUnit)

public bool AddUnit(IFormationUnit unit)

Parameters

unit IFormationUnit

Returns

bool

BatchUnitPositionAvailabilities(bool)

public void BatchUnitPositionAvailabilities(bool isUpdatingCachedOrderedLocalPositions = true)

Parameters

isUpdatingCachedOrderedLocalPositions bool

BeforeFormationFrameChange()

public void BeforeFormationFrameChange()

CalculateWidth(float, float, int)

public static float CalculateWidth(float interval, float unitDiameter, int unitCountOnLine)

Parameters

interval float
unitDiameter float
unitCountOnLine int

Returns

float

Clone(IFormation)

public virtual IFormationArrangement Clone(IFormation formation)

Parameters

formation IFormation

Returns

IFormationArrangement

CreateNewPosition(int)

public Vec2? CreateNewPosition(int unitIndex)

Parameters

unitIndex int

Returns

Vec2?

DeepCopyFrom(IFormationArrangement)

public virtual void DeepCopyFrom(IFormationArrangement arrangement)

Parameters

arrangement IFormationArrangement

FormFromFlankWidth(int, bool)

public void FormFromFlankWidth(int unitCountOnLine, bool skipSingleFileChangesForPerformance = false)

Parameters

unitCountOnLine int
skipSingleFileChangesForPerformance bool

GetAllUnits()

public MBReadOnlyList<IFormationUnit> GetAllUnits()

Returns

MBReadOnlyList<IFormationUnit>

GetCachedOrderedAndAvailableUnitPositionIndexAt(int)

public Vec2i GetCachedOrderedAndAvailableUnitPositionIndexAt(int i)

Parameters

i int

Returns

Vec2i

GetCachedOrderedAndAvailableUnitPositionIndicesCount()

public int GetCachedOrderedAndAvailableUnitPositionIndicesCount()

Returns

int

GetDirectionChangeTendencyOfUnit(IFormationUnit)

public virtual float GetDirectionChangeTendencyOfUnit(IFormationUnit unit)

Parameters

unit IFormationUnit

Returns

float

GetFileCountFromWidth(float)

public int GetFileCountFromWidth(float width)

Parameters

width float

Returns

int

GetFormationInfo(out int, out int)

public void GetFormationInfo(out int fileCount, out int rankCount)

Parameters

fileCount int
rankCount int

GetGlobalPositionAtIndex(int, int)

public WorldPosition GetGlobalPositionAtIndex(int indexX, int indexY)

Parameters

indexX int
indexY int

Returns

WorldPosition

GetLocalDirectionOfRelativeFormationLocation(IFormationUnit)

public Vec2? GetLocalDirectionOfRelativeFormationLocation(IFormationUnit unit)

Parameters

unit IFormationUnit

Returns

Vec2?

GetLocalDirectionOfUnit(int, int)

protected virtual Vec2 GetLocalDirectionOfUnit(int fileIndex, int rankIndex)

Parameters

fileIndex int
rankIndex int

Returns

Vec2

GetLocalDirectionOfUnitOrDefault(int)

public Vec2? GetLocalDirectionOfUnitOrDefault(int unitIndex)

Parameters

unitIndex int

Returns

Vec2?

GetLocalDirectionOfUnitOrDefault(IFormationUnit)

public virtual Vec2? GetLocalDirectionOfUnitOrDefault(IFormationUnit unit)

Parameters

unit IFormationUnit

Returns

Vec2?

GetLocalPositionOfReservedUnitPosition()

public Vec2 GetLocalPositionOfReservedUnitPosition()

Returns

Vec2

GetLocalPositionOfUnit(int, int)

protected virtual Vec2 GetLocalPositionOfUnit(int fileIndex, int rankIndex)

Parameters

fileIndex int
rankIndex int

Returns

Vec2

GetLocalPositionOfUnitOrDefault(int)

public Vec2? GetLocalPositionOfUnitOrDefault(int unitIndex)

Parameters

unitIndex int

Returns

Vec2?

GetLocalPositionOfUnitOrDefault(IFormationUnit)

public Vec2? GetLocalPositionOfUnitOrDefault(IFormationUnit unit)

Parameters

unit IFormationUnit

Returns

Vec2?

GetLocalPositionOfUnitOrDefaultWithAdjustment(IFormationUnit, float)

public Vec2? GetLocalPositionOfUnitOrDefaultWithAdjustment(IFormationUnit unit, float distanceBetweenAgentsAdjustment)

Parameters

unit IFormationUnit
distanceBetweenAgentsAdjustment float

Returns

Vec2?

GetLocalPositionOfUnitWithAdjustment(int, int, float)

protected virtual Vec2 GetLocalPositionOfUnitWithAdjustment(int fileIndex, int rankIndex, float distanceBetweenAgentsAdjustment)

Parameters

fileIndex int
rankIndex int
distanceBetweenAgentsAdjustment float

Returns

Vec2

GetLocalWallDirectionOfRelativeFormationLocation(IFormationUnit)

public Vec2? GetLocalWallDirectionOfRelativeFormationLocation(IFormationUnit unit)

Parameters

unit IFormationUnit

Returns

Vec2?

GetNeighborUnitOfLeftSide(IFormationUnit)

public IFormationUnit GetNeighborUnitOfLeftSide(IFormationUnit unit)

Parameters

unit IFormationUnit

Returns

IFormationUnit

GetNeighborUnitOfRightSide(IFormationUnit)

public IFormationUnit GetNeighborUnitOfRightSide(IFormationUnit unit)

Parameters

unit IFormationUnit

Returns

IFormationUnit

GetOccupationWidth(int)

public float GetOccupationWidth(int unitCount)

Parameters

unitCount int

Returns

float

GetPlayerUnit()

public IFormationUnit GetPlayerUnit()

Returns

IFormationUnit

GetUnavailableUnitPositions()

public IEnumerable<Vec2> GetUnavailableUnitPositions()

Returns

IEnumerable<Vec2>

GetUnit(int, int)

public IFormationUnit GetUnit(int fileIndex, int rankIndex)

Parameters

fileIndex int
rankIndex int

Returns

IFormationUnit

GetUnitAt(int, int)

protected IFormationUnit GetUnitAt(int fileIndex, int rankIndex)

Parameters

fileIndex int
rankIndex int

Returns

IFormationUnit

GetUnitCountWithOverride()

protected int GetUnitCountWithOverride()

Returns

int

GetUnitsDistanceToFrontLine(IFormationUnit)

public float GetUnitsDistanceToFrontLine(IFormationUnit unit)

Parameters

unit IFormationUnit

Returns

float

GetUnitsToPop(int)

public List<IFormationUnit> GetUnitsToPop(int count)

Parameters

count int

Returns

List<IFormationUnit>

GetUnitsToPop(int, Vec3)

public List<IFormationUnit> GetUnitsToPop(int count, Vec3 targetPosition)

Parameters

count int
targetPosition Vec3

Returns

List<IFormationUnit>

GetUnitsToPopWithCondition(int, Func<IFormationUnit, bool>)

public IEnumerable<IFormationUnit> GetUnitsToPopWithCondition(int count, Func<IFormationUnit, bool> currentCondition)

Parameters

count int
currentCondition Func<IFormationUnit, bool>

Returns

IEnumerable<IFormationUnit>

GetUnpositionedUnits()

public MBList<IFormationUnit> GetUnpositionedUnits()

Returns

MBList<IFormationUnit>

GetWorldPositionOfUnitOrDefault(int)

public WorldPosition? GetWorldPositionOfUnitOrDefault(int unitIndex)

Parameters

unitIndex int

Returns

WorldPosition?

GetWorldPositionOfUnitOrDefault(IFormationUnit)

public WorldPosition? GetWorldPositionOfUnitOrDefault(IFormationUnit unit)

Parameters

unit IFormationUnit

Returns

WorldPosition?

InvalidateCacheOfUnitAux(Vec2)

public void InvalidateCacheOfUnitAux(Vec2 roundedLocalPosition)

Parameters

roundedLocalPosition Vec2

IsDeepenApplicable()

protected virtual bool IsDeepenApplicable()

Returns

bool

IsNarrowApplicable(int)

protected virtual bool IsNarrowApplicable(int amount)

Parameters

amount int

Returns

bool

IsTurnBackwardsNecessary(Vec2, WorldPosition?, Vec2, bool, Vec2?)

public bool IsTurnBackwardsNecessary(Vec2 previousPosition, WorldPosition? newPosition, Vec2 previousDirection, bool hasNewDirection, Vec2? newDirection)

Parameters

previousPosition Vec2
newPosition WorldPosition?
previousDirection Vec2
hasNewDirection bool
newDirection Vec2?

Returns

bool

IsUnitPositionAvailable(int, int)

public bool IsUnitPositionAvailable(int fileIndex, int rankIndex)

Parameters

fileIndex int
rankIndex int

Returns

bool

IsUnitPositionRestrained(int, int)

protected virtual bool IsUnitPositionRestrained(int fileIndex, int rankIndex)

Parameters

fileIndex int
rankIndex int

Returns

bool

MakeRestrainedPositionsUnavailable()

protected virtual void MakeRestrainedPositionsUnavailable()

OnBatchRemoveEnd()

public void OnBatchRemoveEnd()

OnBatchRemoveStart()

public void OnBatchRemoveStart()

OnFormationDispersed()

public void OnFormationDispersed()

OnFormationFrameChanged()

public void OnFormationFrameChanged()

OnTickOccasionallyOfUnit(IFormationUnit, bool)

public virtual void OnTickOccasionallyOfUnit(IFormationUnit unit, bool arrangementChangeAllowed)

Parameters

unit IFormationUnit
arrangementChangeAllowed bool

OnUnitLostMount(IFormationUnit)

public void OnUnitLostMount(IFormationUnit unit)

Parameters

unit IFormationUnit

RearrangeFrom(IFormationArrangement)

public virtual void RearrangeFrom(IFormationArrangement arrangement)

Parameters

arrangement IFormationArrangement

RearrangeTo(IFormationArrangement)

public virtual void RearrangeTo(IFormationArrangement arrangement)

Parameters

arrangement IFormationArrangement

RearrangeTransferUnits(IFormationArrangement)

public virtual void RearrangeTransferUnits(IFormationArrangement arrangement)

Parameters

arrangement IFormationArrangement

ReleaseMiddleFrontUnitPosition()

public void ReleaseMiddleFrontUnitPosition()

RelocateUnit(IFormationUnit, int, int)

protected void RelocateUnit(IFormationUnit unit, int fileIndex, int rankIndex)

Parameters

unit IFormationUnit
fileIndex int
rankIndex int

RemoveUnit(IFormationUnit)

public void RemoveUnit(IFormationUnit unit)

Parameters

unit IFormationUnit

ReserveMiddleFrontUnitPosition(IFormationUnit)

public void ReserveMiddleFrontUnitPosition(IFormationUnit vanguard)

Parameters

vanguard IFormationUnit

Reset()

public void Reset()

SwitchUnitLocations(IFormationUnit, IFormationUnit)

public void SwitchUnitLocations(IFormationUnit firstUnit, IFormationUnit secondUnit)

Parameters

firstUnit IFormationUnit
secondUnit IFormationUnit

SwitchUnitLocationsWithBackMostUnit(IFormationUnit)

public void SwitchUnitLocationsWithBackMostUnit(IFormationUnit unit)

Parameters

unit IFormationUnit

SwitchUnitLocationsWithUnpositionedUnit(IFormationUnit, IFormationUnit)

public void SwitchUnitLocationsWithUnpositionedUnit(IFormationUnit firstUnit, IFormationUnit secondUnit)

Parameters

firstUnit IFormationUnit
secondUnit IFormationUnit

TryGetUnitPositionIndexFromLocalPosition(Vec2, out int, out int)

protected virtual bool TryGetUnitPositionIndexFromLocalPosition(Vec2 localPosition, out int fileIndex, out int rankIndex)

Parameters

localPosition Vec2
fileIndex int
rankIndex int

Returns

bool

TurnBackwards()

public virtual void TurnBackwards()

Events

OnShapeChanged

public event Action OnShapeChanged

Event Type

Action

OnWidthChanged

public event Action OnWidthChanged

Event Type

Action

This page was last modified at 09/01/2024 16:12:00 +00:00 (UTC).