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
ownerFormationIFormationisStaggeredbool
LineFormation(IFormation, bool, bool)
protected LineFormation(IFormation ownerFormation, bool isDeformingOnWidthChange, bool isStaggered = true)
Parameters
ownerFormationIFormationisDeformingOnWidthChangeboolisStaggeredbool
Fields
IsTransforming
protected bool IsTransforming
Field Value
UnitPositionAvailabilities
protected MBList2D<int> UnitPositionAvailabilities
Field Value
UnitPositionAvailabilityValueOfAvailable
protected const int UnitPositionAvailabilityValueOfAvailable = 2
Field Value
UnitPositionAvailabilityValueOfUnavailable
protected const int UnitPositionAvailabilityValueOfUnavailable = 1
Field Value
UnitPositionAvailabilityValueOfUnprocessed
protected const int UnitPositionAvailabilityValueOfUnprocessed = 0
Field Value
owner
protected readonly IFormation owner
Field Value
Properties
AreLocalPositionsDirty
public bool AreLocalPositionsDirty { protected get; set; }
Property Value
Depth
public virtual float Depth { get; }
Property Value
Distance
protected float Distance { get; }
Property Value
FileCount
protected int FileCount { get; }
Property Value
FlankWidth
public float FlankWidth { get; set; }
Property Value
Interval
protected float Interval { get; }
Property Value
IsLoose
public virtual bool? IsLoose { get; }
Property Value
- bool?
IsStaggered
public bool IsStaggered { get; set; }
Property Value
MaximumWidth
public virtual float MaximumWidth { get; }
Property Value
MinimumFlankWidth
public float MinimumFlankWidth { get; }
Property Value
MinimumWidth
public virtual float MinimumWidth { get; }
Property Value
PositionedUnitCount
public int PositionedUnitCount { get; }
Property Value
RankCount
public int RankCount { get; }
Property Value
RankDepth
public float RankDepth { get; }
Property Value
UnitCount
public int UnitCount { get; }
Property Value
UnitDiameter
protected float UnitDiameter { get; }
Property Value
Width
public virtual float Width { get; set; }
Property Value
Methods
AddUnit(IFormationUnit)
public bool AddUnit(IFormationUnit unit)
Parameters
unitIFormationUnit
Returns
BatchUnitPositionAvailabilities(bool)
public void BatchUnitPositionAvailabilities(bool isUpdatingCachedOrderedLocalPositions = true)
Parameters
isUpdatingCachedOrderedLocalPositionsbool
BeforeFormationFrameChange()
public void BeforeFormationFrameChange()
CalculateWidth(float, float, int)
public static float CalculateWidth(float interval, float unitDiameter, int unitCountOnLine)
Parameters
Returns
Clone(IFormation)
public virtual IFormationArrangement Clone(IFormation formation)
Parameters
formationIFormation
Returns
CreateNewPosition(int)
public Vec2? CreateNewPosition(int unitIndex)
Parameters
unitIndexint
Returns
- Vec2?
DeepCopyFrom(IFormationArrangement)
public virtual void DeepCopyFrom(IFormationArrangement arrangement)
Parameters
arrangementIFormationArrangement
FormFromFlankWidth(int, bool)
public void FormFromFlankWidth(int unitCountOnLine, bool skipSingleFileChangesForPerformance = false)
Parameters
GetAllUnits()
public MBReadOnlyList<IFormationUnit> GetAllUnits()
Returns
GetCachedOrderedAndAvailableUnitPositionIndexAt(int)
public Vec2i GetCachedOrderedAndAvailableUnitPositionIndexAt(int i)
Parameters
iint
Returns
GetCachedOrderedAndAvailableUnitPositionIndicesCount()
public int GetCachedOrderedAndAvailableUnitPositionIndicesCount()
Returns
GetDirectionChangeTendencyOfUnit(IFormationUnit)
public virtual float GetDirectionChangeTendencyOfUnit(IFormationUnit unit)
Parameters
unitIFormationUnit
Returns
GetFileCountFromWidth(float)
public int GetFileCountFromWidth(float width)
Parameters
widthfloat
Returns
GetFormationInfo(out int, out int)
public void GetFormationInfo(out int fileCount, out int rankCount)
Parameters
GetGlobalPositionAtIndex(int, int)
public WorldPosition GetGlobalPositionAtIndex(int indexX, int indexY)
Parameters
Returns
GetLocalDirectionOfRelativeFormationLocation(IFormationUnit)
public Vec2? GetLocalDirectionOfRelativeFormationLocation(IFormationUnit unit)
Parameters
unitIFormationUnit
Returns
- Vec2?
GetLocalDirectionOfUnit(int, int)
protected virtual Vec2 GetLocalDirectionOfUnit(int fileIndex, int rankIndex)
Parameters
Returns
GetLocalDirectionOfUnitOrDefault(int)
public Vec2? GetLocalDirectionOfUnitOrDefault(int unitIndex)
Parameters
unitIndexint
Returns
- Vec2?
GetLocalDirectionOfUnitOrDefault(IFormationUnit)
public virtual Vec2? GetLocalDirectionOfUnitOrDefault(IFormationUnit unit)
Parameters
unitIFormationUnit
Returns
- Vec2?
GetLocalPositionOfReservedUnitPosition()
public Vec2 GetLocalPositionOfReservedUnitPosition()
Returns
GetLocalPositionOfUnit(int, int)
protected virtual Vec2 GetLocalPositionOfUnit(int fileIndex, int rankIndex)
Parameters
Returns
GetLocalPositionOfUnitOrDefault(int)
public Vec2? GetLocalPositionOfUnitOrDefault(int unitIndex)
Parameters
unitIndexint
Returns
- Vec2?
GetLocalPositionOfUnitOrDefault(IFormationUnit)
public Vec2? GetLocalPositionOfUnitOrDefault(IFormationUnit unit)
Parameters
unitIFormationUnit
Returns
- Vec2?
GetLocalPositionOfUnitOrDefaultWithAdjustment(IFormationUnit, float)
public Vec2? GetLocalPositionOfUnitOrDefaultWithAdjustment(IFormationUnit unit, float distanceBetweenAgentsAdjustment)
Parameters
unitIFormationUnitdistanceBetweenAgentsAdjustmentfloat
Returns
- Vec2?
GetLocalPositionOfUnitWithAdjustment(int, int, float)
protected virtual Vec2 GetLocalPositionOfUnitWithAdjustment(int fileIndex, int rankIndex, float distanceBetweenAgentsAdjustment)
Parameters
Returns
GetLocalWallDirectionOfRelativeFormationLocation(IFormationUnit)
public Vec2? GetLocalWallDirectionOfRelativeFormationLocation(IFormationUnit unit)
Parameters
unitIFormationUnit
Returns
- Vec2?
GetNeighborUnitOfLeftSide(IFormationUnit)
public IFormationUnit GetNeighborUnitOfLeftSide(IFormationUnit unit)
Parameters
unitIFormationUnit
Returns
GetNeighborUnitOfRightSide(IFormationUnit)
public IFormationUnit GetNeighborUnitOfRightSide(IFormationUnit unit)
Parameters
unitIFormationUnit
Returns
GetOccupationWidth(int)
public float GetOccupationWidth(int unitCount)
Parameters
unitCountint
Returns
GetPlayerUnit()
public IFormationUnit GetPlayerUnit()
Returns
GetUnavailableUnitPositions()
public IEnumerable<Vec2> GetUnavailableUnitPositions()
Returns
GetUnit(int, int)
public IFormationUnit GetUnit(int fileIndex, int rankIndex)
Parameters
Returns
GetUnitAt(int, int)
protected IFormationUnit GetUnitAt(int fileIndex, int rankIndex)
Parameters
Returns
GetUnitCountWithOverride()
protected int GetUnitCountWithOverride()
Returns
GetUnitsDistanceToFrontLine(IFormationUnit)
public float GetUnitsDistanceToFrontLine(IFormationUnit unit)
Parameters
unitIFormationUnit
Returns
GetUnitsToPop(int)
public List<IFormationUnit> GetUnitsToPop(int count)
Parameters
countint
Returns
GetUnitsToPop(int, Vec3)
public List<IFormationUnit> GetUnitsToPop(int count, Vec3 targetPosition)
Parameters
Returns
GetUnitsToPopWithCondition(int, Func<IFormationUnit, bool>)
public IEnumerable<IFormationUnit> GetUnitsToPopWithCondition(int count, Func<IFormationUnit, bool> currentCondition)
Parameters
countintcurrentConditionFunc<IFormationUnit, bool>
Returns
GetUnpositionedUnits()
public MBList<IFormationUnit> GetUnpositionedUnits()
Returns
GetWorldPositionOfUnitOrDefault(int)
public WorldPosition? GetWorldPositionOfUnitOrDefault(int unitIndex)
Parameters
unitIndexint
Returns
GetWorldPositionOfUnitOrDefault(IFormationUnit)
public WorldPosition? GetWorldPositionOfUnitOrDefault(IFormationUnit unit)
Parameters
unitIFormationUnit
Returns
InvalidateCacheOfUnitAux(Vec2)
public void InvalidateCacheOfUnitAux(Vec2 roundedLocalPosition)
Parameters
roundedLocalPositionVec2
IsDeepenApplicable()
protected virtual bool IsDeepenApplicable()
Returns
IsNarrowApplicable(int)
protected virtual bool IsNarrowApplicable(int amount)
Parameters
amountint
Returns
IsTurnBackwardsNecessary(Vec2, WorldPosition?, Vec2, bool, Vec2?)
public bool IsTurnBackwardsNecessary(Vec2 previousPosition, WorldPosition? newPosition, Vec2 previousDirection, bool hasNewDirection, Vec2? newDirection)
Parameters
previousPositionVec2newPositionWorldPosition?previousDirectionVec2hasNewDirectionboolnewDirectionVec2?
Returns
IsUnitPositionAvailable(int, int)
public bool IsUnitPositionAvailable(int fileIndex, int rankIndex)
Parameters
Returns
IsUnitPositionRestrained(int, int)
protected virtual bool IsUnitPositionRestrained(int fileIndex, int rankIndex)
Parameters
Returns
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
unitIFormationUnitarrangementChangeAllowedbool
OnUnitLostMount(IFormationUnit)
public void OnUnitLostMount(IFormationUnit unit)
Parameters
unitIFormationUnit
RearrangeFrom(IFormationArrangement)
public virtual void RearrangeFrom(IFormationArrangement arrangement)
Parameters
arrangementIFormationArrangement
RearrangeTo(IFormationArrangement)
public virtual void RearrangeTo(IFormationArrangement arrangement)
Parameters
arrangementIFormationArrangement
RearrangeTransferUnits(IFormationArrangement)
public virtual void RearrangeTransferUnits(IFormationArrangement arrangement)
Parameters
arrangementIFormationArrangement
ReleaseMiddleFrontUnitPosition()
public void ReleaseMiddleFrontUnitPosition()
RelocateUnit(IFormationUnit, int, int)
protected void RelocateUnit(IFormationUnit unit, int fileIndex, int rankIndex)
Parameters
unitIFormationUnitfileIndexintrankIndexint
RemoveUnit(IFormationUnit)
public void RemoveUnit(IFormationUnit unit)
Parameters
unitIFormationUnit
ReserveMiddleFrontUnitPosition(IFormationUnit)
public void ReserveMiddleFrontUnitPosition(IFormationUnit vanguard)
Parameters
vanguardIFormationUnit
Reset()
public void Reset()
SwitchUnitLocations(IFormationUnit, IFormationUnit)
public void SwitchUnitLocations(IFormationUnit firstUnit, IFormationUnit secondUnit)
Parameters
firstUnitIFormationUnitsecondUnitIFormationUnit
SwitchUnitLocationsWithBackMostUnit(IFormationUnit)
public void SwitchUnitLocationsWithBackMostUnit(IFormationUnit unit)
Parameters
unitIFormationUnit
SwitchUnitLocationsWithUnpositionedUnit(IFormationUnit, IFormationUnit)
public void SwitchUnitLocationsWithUnpositionedUnit(IFormationUnit firstUnit, IFormationUnit secondUnit)
Parameters
firstUnitIFormationUnitsecondUnitIFormationUnit
TryGetUnitPositionIndexFromLocalPosition(Vec2, out int, out int)
protected virtual bool TryGetUnitPositionIndexFromLocalPosition(Vec2 localPosition, out int fileIndex, out int rankIndex)
Parameters
Returns
TurnBackwards()
public virtual void TurnBackwards()
Events
OnShapeChanged
public event Action OnShapeChanged
Event Type
OnWidthChanged
public event Action OnWidthChanged
Event Type
This page was last modified at 09/01/2024 16:12:00 +00:00 (UTC).