M&B: Bannerlord 1.0.0
The horns sound, the ravens gather.
Loading...
Searching...
No Matches
TaleWorlds.MountAndBlade.IFormationArrangement Interface Reference

Inherited by TaleWorlds.MountAndBlade.ColumnFormation, and TaleWorlds.MountAndBlade.LineFormation.

Public Member Functions

List< IFormationUnitGetAllUnits ()
 
List< IFormationUnitGetUnpositionedUnits ()
 
bool AddUnit (IFormationUnit unit)
 Adding may fail if there is no vacant position and deepening the formation does not create any new vacant positions. More...
 
void RemoveUnit (IFormationUnit unit)
 
IFormationUnit GetUnit (int fileIndex, int rankIndex)
 Returns the unit at the specified file and rank index Returns null if the specified position is restrained, is not valid or if there is no agent assigned to this position More...
 
void OnBatchRemoveStart ()
 Notifies the arrangement that remove operations will be done in batch for performance. Child arrangements should provide their own implementation. More...
 
void OnBatchRemoveEnd ()
 
Vec2GetLocalPositionOfUnitOrDefault (int unitIndex)
 
Vec2GetLocalPositionOfUnitOrDefault (IFormationUnit unit)
 
Vec2GetLocalPositionOfUnitOrDefaultWithAdjustment (IFormationUnit unit, float distanceBetweenAgentsAdjustment)
 
Vec2GetLocalDirectionOfUnitOrDefault (int unitIndex)
 
Vec2GetLocalDirectionOfUnitOrDefault (IFormationUnit unit)
 
WorldPositionGetWorldPositionOfUnitOrDefault (int unitIndex)
 
WorldPositionGetWorldPositionOfUnitOrDefault (IFormationUnit unit)
 
List< IFormationUnitGetUnitsToPop (int count)
 
List< IFormationUnitGetUnitsToPop (int count, Vec3 targetPosition)
 
IEnumerable< IFormationUnitGetUnitsToPopWithCondition (int count, Func< IFormationUnit, bool > conditionFunction)
 
void SwitchUnitLocations (IFormationUnit firstUnit, IFormationUnit secondUnit)
 
void SwitchUnitLocationsWithUnpositionedUnit (IFormationUnit firstUnit, IFormationUnit secondUnit)
 
void SwitchUnitLocationsAfterUnitAddition (IFormationUnit addedUnit)
 
IFormationUnit GetNeighborUnitOfLeftSide (IFormationUnit unit)
 
IFormationUnit GetNeighborUnitOfRightSide (IFormationUnit unit)
 
Vec2GetLocalWallDirectionOfRelativeFormationLocation (IFormationUnit unit)
 
IEnumerable< Vec2GetUnavailableUnitPositions ()
 
float GetOccupationWidth (int unitCount)
 
Vec2CreateNewPosition (int unitIndex)
 
void BeforeFormationFrameChange ()
 
void OnFormationFrameChanged ()
 
bool IsTurnBackwardsNecessary (Vec2 previousPosition, WorldPosition? newPosition, Vec2 previousDirection, bool hasNewDirection, Vec2? newDirection)
 
void TurnBackwards ()
 
void OnFormationDispersed ()
 
void Reset ()
 
IFormationArrangement Clone (IFormation formation)
 
void DeepCopyFrom (IFormationArrangement arrangement)
 
void RearrangeTo (IFormationArrangement arrangement)
 
void RearrangeFrom (IFormationArrangement arrangement)
 
void RearrangeTransferUnits (IFormationArrangement arrangement)
 
void ReserveMiddleFrontUnitPosition (IFormationUnit vanguard)
 
void ReleaseMiddleFrontUnitPosition ()
 
Vec2 GetLocalPositionOfReservedUnitPosition ()
 
void OnTickOccasionallyOfUnit (IFormationUnit unit, bool arrangementChangeAllowed)
 
void OnUnitLostMount (IFormationUnit unit)
 
float GetDirectionChangeTendencyOfUnit (IFormationUnit unit)
 

Properties

float Width [get, set]
 The space occupied by the formation, measured from one flank to the other More...
 
float Depth [get]
 The space from front to rear of the formation More...
 
float MinimumWidth [get]
 
bool? IsLoose [get]
 
int UnitCount [get]
 
int RankCount [get]
 
int PositionedUnitCount [get]
 
bool AreLocalPositionsDirty [set]
 

Events

Action OnWidthChanged
 
Action OnShapeChanged
 

Member Function Documentation

◆ GetAllUnits()

List< IFormationUnit > TaleWorlds.MountAndBlade.IFormationArrangement.GetAllUnits ( )

◆ GetUnpositionedUnits()

List< IFormationUnit > TaleWorlds.MountAndBlade.IFormationArrangement.GetUnpositionedUnits ( )

◆ AddUnit()

bool TaleWorlds.MountAndBlade.IFormationArrangement.AddUnit ( IFormationUnit  unit)

◆ RemoveUnit()

void TaleWorlds.MountAndBlade.IFormationArrangement.RemoveUnit ( IFormationUnit  unit)

◆ GetUnit()

IFormationUnit TaleWorlds.MountAndBlade.IFormationArrangement.GetUnit ( int  fileIndex,
int  rankIndex 
)

◆ OnBatchRemoveStart()

void TaleWorlds.MountAndBlade.IFormationArrangement.OnBatchRemoveStart ( )

◆ OnBatchRemoveEnd()

void TaleWorlds.MountAndBlade.IFormationArrangement.OnBatchRemoveEnd ( )

◆ GetLocalPositionOfUnitOrDefault() [1/2]

Vec2? TaleWorlds.MountAndBlade.IFormationArrangement.GetLocalPositionOfUnitOrDefault ( int  unitIndex)

◆ GetLocalPositionOfUnitOrDefault() [2/2]

Vec2? TaleWorlds.MountAndBlade.IFormationArrangement.GetLocalPositionOfUnitOrDefault ( IFormationUnit  unit)

◆ GetLocalPositionOfUnitOrDefaultWithAdjustment()

Vec2? TaleWorlds.MountAndBlade.IFormationArrangement.GetLocalPositionOfUnitOrDefaultWithAdjustment ( IFormationUnit  unit,
float  distanceBetweenAgentsAdjustment 
)

◆ GetLocalDirectionOfUnitOrDefault() [1/2]

Vec2? TaleWorlds.MountAndBlade.IFormationArrangement.GetLocalDirectionOfUnitOrDefault ( int  unitIndex)

◆ GetLocalDirectionOfUnitOrDefault() [2/2]

Vec2? TaleWorlds.MountAndBlade.IFormationArrangement.GetLocalDirectionOfUnitOrDefault ( IFormationUnit  unit)

◆ GetWorldPositionOfUnitOrDefault() [1/2]

WorldPosition? TaleWorlds.MountAndBlade.IFormationArrangement.GetWorldPositionOfUnitOrDefault ( int  unitIndex)

◆ GetWorldPositionOfUnitOrDefault() [2/2]

WorldPosition? TaleWorlds.MountAndBlade.IFormationArrangement.GetWorldPositionOfUnitOrDefault ( IFormationUnit  unit)

◆ GetUnitsToPop() [1/2]

List< IFormationUnit > TaleWorlds.MountAndBlade.IFormationArrangement.GetUnitsToPop ( int  count)

◆ GetUnitsToPop() [2/2]

List< IFormationUnit > TaleWorlds.MountAndBlade.IFormationArrangement.GetUnitsToPop ( int  count,
Vec3  targetPosition 
)

◆ GetUnitsToPopWithCondition()

IEnumerable< IFormationUnit > TaleWorlds.MountAndBlade.IFormationArrangement.GetUnitsToPopWithCondition ( int  count,
Func< IFormationUnit, bool >  conditionFunction 
)

◆ SwitchUnitLocations()

void TaleWorlds.MountAndBlade.IFormationArrangement.SwitchUnitLocations ( IFormationUnit  firstUnit,
IFormationUnit  secondUnit 
)

◆ SwitchUnitLocationsWithUnpositionedUnit()

void TaleWorlds.MountAndBlade.IFormationArrangement.SwitchUnitLocationsWithUnpositionedUnit ( IFormationUnit  firstUnit,
IFormationUnit  secondUnit 
)

◆ SwitchUnitLocationsAfterUnitAddition()

void TaleWorlds.MountAndBlade.IFormationArrangement.SwitchUnitLocationsAfterUnitAddition ( IFormationUnit  addedUnit)

◆ GetNeighborUnitOfLeftSide()

IFormationUnit TaleWorlds.MountAndBlade.IFormationArrangement.GetNeighborUnitOfLeftSide ( IFormationUnit  unit)

◆ GetNeighborUnitOfRightSide()

IFormationUnit TaleWorlds.MountAndBlade.IFormationArrangement.GetNeighborUnitOfRightSide ( IFormationUnit  unit)

◆ GetLocalWallDirectionOfRelativeFormationLocation()

Vec2? TaleWorlds.MountAndBlade.IFormationArrangement.GetLocalWallDirectionOfRelativeFormationLocation ( IFormationUnit  unit)

◆ GetUnavailableUnitPositions()

IEnumerable< Vec2 > TaleWorlds.MountAndBlade.IFormationArrangement.GetUnavailableUnitPositions ( )

◆ GetOccupationWidth()

float TaleWorlds.MountAndBlade.IFormationArrangement.GetOccupationWidth ( int  unitCount)

◆ CreateNewPosition()

Vec2? TaleWorlds.MountAndBlade.IFormationArrangement.CreateNewPosition ( int  unitIndex)

◆ BeforeFormationFrameChange()

void TaleWorlds.MountAndBlade.IFormationArrangement.BeforeFormationFrameChange ( )

◆ OnFormationFrameChanged()

void TaleWorlds.MountAndBlade.IFormationArrangement.OnFormationFrameChanged ( )

◆ IsTurnBackwardsNecessary()

bool TaleWorlds.MountAndBlade.IFormationArrangement.IsTurnBackwardsNecessary ( Vec2  previousPosition,
WorldPosition newPosition,
Vec2  previousDirection,
bool  hasNewDirection,
Vec2 newDirection 
)

◆ TurnBackwards()

void TaleWorlds.MountAndBlade.IFormationArrangement.TurnBackwards ( )

◆ OnFormationDispersed()

void TaleWorlds.MountAndBlade.IFormationArrangement.OnFormationDispersed ( )

◆ Reset()

void TaleWorlds.MountAndBlade.IFormationArrangement.Reset ( )

◆ Clone()

◆ DeepCopyFrom()

void TaleWorlds.MountAndBlade.IFormationArrangement.DeepCopyFrom ( IFormationArrangement  arrangement)

◆ RearrangeTo()

void TaleWorlds.MountAndBlade.IFormationArrangement.RearrangeTo ( IFormationArrangement  arrangement)

◆ RearrangeFrom()

void TaleWorlds.MountAndBlade.IFormationArrangement.RearrangeFrom ( IFormationArrangement  arrangement)

◆ RearrangeTransferUnits()

void TaleWorlds.MountAndBlade.IFormationArrangement.RearrangeTransferUnits ( IFormationArrangement  arrangement)

◆ ReserveMiddleFrontUnitPosition()

void TaleWorlds.MountAndBlade.IFormationArrangement.ReserveMiddleFrontUnitPosition ( IFormationUnit  vanguard)

◆ ReleaseMiddleFrontUnitPosition()

void TaleWorlds.MountAndBlade.IFormationArrangement.ReleaseMiddleFrontUnitPosition ( )

◆ GetLocalPositionOfReservedUnitPosition()

Vec2 TaleWorlds.MountAndBlade.IFormationArrangement.GetLocalPositionOfReservedUnitPosition ( )

◆ OnTickOccasionallyOfUnit()

void TaleWorlds.MountAndBlade.IFormationArrangement.OnTickOccasionallyOfUnit ( IFormationUnit  unit,
bool  arrangementChangeAllowed 
)

◆ OnUnitLostMount()

void TaleWorlds.MountAndBlade.IFormationArrangement.OnUnitLostMount ( IFormationUnit  unit)

◆ GetDirectionChangeTendencyOfUnit()

float TaleWorlds.MountAndBlade.IFormationArrangement.GetDirectionChangeTendencyOfUnit ( IFormationUnit  unit)

Property Documentation

◆ Width

float TaleWorlds.MountAndBlade.IFormationArrangement.Width
getset

◆ Depth

float TaleWorlds.MountAndBlade.IFormationArrangement.Depth
get

◆ MinimumWidth

float TaleWorlds.MountAndBlade.IFormationArrangement.MinimumWidth
get

◆ IsLoose

bool? TaleWorlds.MountAndBlade.IFormationArrangement.IsLoose
get

◆ UnitCount

int TaleWorlds.MountAndBlade.IFormationArrangement.UnitCount
get

◆ RankCount

int TaleWorlds.MountAndBlade.IFormationArrangement.RankCount
get

◆ PositionedUnitCount

int TaleWorlds.MountAndBlade.IFormationArrangement.PositionedUnitCount
get

◆ AreLocalPositionsDirty

bool TaleWorlds.MountAndBlade.IFormationArrangement.AreLocalPositionsDirty
set

Event Documentation

◆ OnWidthChanged

Action TaleWorlds.MountAndBlade.IFormationArrangement.OnWidthChanged

◆ OnShapeChanged

Action TaleWorlds.MountAndBlade.IFormationArrangement.OnShapeChanged