swiftlys2/docs/api/releases/features/ai/
API Reference › Menu.Components

PlayerSelectionComponent

Class
Namespace: SwiftlyS2.Shared.Menu.Components · Assembly: SwiftlyS2.CS2.dll
public sealed class PlayerSelectionComponent : SelectionComponentBase<IPlayer>, IMenuComponent, IMenuRowSource
Inherits object, MenuComponentBase, SelectionComponentBase<IPlayer>
View source

Constructors

PlayerSelectionComponent(string?)

Creates a selection list.

public PlayerSelectionComponent(string? id = null)
Parameters
  • idstring?optionalA stable id, or null to generate one.

Properties

List

The list underneath. Use it for the search, filter, sorter, limits and the empty text. Its RowRenderer , OnPlayerSelected and formatters are owned by this component.

public PlayerListComponent List { get; }
Property Value

Methods

FormatText(IPlayer, Func<string, string>)

The text of an item in the default row. Uses Formatter unless overridden.

protected override string FormatText(IPlayer item, Func<string, string> translate)
Parameters
Returns

GetInnerRows(IMenuSession, MenuRowContext)

The rows of the list underneath.

protected override IReadOnlyList<IMenuComponent> GetInnerRows(IMenuSession session, MenuRowContext context)
Parameters

IsAlive(IPlayer)

Whether an item still exists. Gone items are dropped from the selection.

protected override bool IsAlive(IPlayer item)
Parameters
Returns

TryGetCandidates(IMenuSession, MenuRowContext, out IEnumerable<IPlayer>)

Every item DefaultSelected should be asked about. Return false while they are not known yet.

protected override bool TryGetCandidates(IMenuSession session, MenuRowContext context, out IEnumerable<IPlayer> candidates)
Parameters
Returns