Show / Hide Table of Contents

Class SettlementRoster

A list of settlements that can only be changed with mutual civic actions. Used for deciding parentage of settlements.

Inheritance
System.Object
SettlementRoster
Implements
IController
IViewController
IHasUniversalID
IRoster
System.ComponentModel.INotifyPropertyChanged
IThreadSafeSubscriptions
ISubscriptions<ThreadSafeSubscriptions>
ISubscriptions
Namespace: Eco.Gameplay.Settlements.Internal
Assembly: Eco.Gameplay.dll
Syntax
public class SettlementRoster : Object, IController, IViewController, IHasUniversalID, IRoster, INotifyPropertyChanged, IThreadSafeSubscriptions, ISubscriptions<ThreadSafeSubscriptions>, ISubscriptions

Constructors

SettlementRoster()

Declaration
public SettlementRoster()

Properties

Applicants

Declaration
public ControllerHashSet<Settlement> Applicants { get; set; }
Property Value
Type Description
ControllerHashSet<Settlement>

ControllerID

Declaration
public ref int ControllerID { get; }
Property Value
Type Description
System.Int32

Invited

Declaration
public ControllerHashSet<Settlement> Invited { get; set; }
Property Value
Type Description
ControllerHashSet<Settlement>

MemberCount

Declaration
public int MemberCount { get; }
Property Value
Type Description
System.Int32

Members

Declaration
public ControllerHashSet<Settlement> Members { get; set; }
Property Value
Type Description
ControllerHashSet<Settlement>

Subscriptions

Declaration
public ref ThreadSafeSubscriptions Subscriptions { get; }
Property Value
Type Description
ThreadSafeSubscriptions

Title

Declaration
public LocString Title { get; }
Property Value
Type Description
LocString

Methods

Add(Settlement, Boolean)

Declaration
public Result Add(Settlement settlement, bool sendChangeEvent = true)
Parameters
Type Name Description
Settlement settlement
System.Boolean sendChangeEvent
Returns
Type Description
Result

AdminAssign(Player)

Declaration
public Task AdminAssign(Player player)
Parameters
Type Name Description
Player player
Returns
Type Description
System.Threading.Tasks.Task

Approve(User, Settlement)

Declaration
public void Approve(User userApproving, Settlement settlementApplicant)
Parameters
Type Name Description
User userApproving
Settlement settlementApplicant

CanAdminAssign(Player)

Declaration
public bool CanAdminAssign(Player player)
Parameters
Type Name Description
Player player
Returns
Type Description
System.Boolean

CanApprove(User)

Declaration
public bool CanApprove(User user)
Parameters
Type Name Description
User user
Returns
Type Description
System.Boolean

ChildSettlementAttemptApplyOrJoin(Settlement)

Declaration
public Result ChildSettlementAttemptApplyOrJoin(Settlement childSettlement)
Parameters
Type Name Description
Settlement childSettlement
Returns
Type Description
Result

Clear()

Declaration
public void Clear()

ClearInvites()

Declaration
public bool ClearInvites()
Returns
Type Description
System.Boolean

Initialize(Settlement, Action<IEnumerable<Settlement>, IEnumerable<Settlement>>)

Declaration
public void Initialize(Settlement settlement, Action<IEnumerable<Settlement>, IEnumerable<Settlement>> childrenChangedEvent)
Parameters
Type Name Description
Settlement settlement
System.Action<System.Collections.Generic.IEnumerable<Settlement>, System.Collections.Generic.IEnumerable<Settlement>> childrenChangedEvent

InviteOrAccept(Settlement)

Declaration
public Result InviteOrAccept(Settlement childSettlement)
Parameters
Type Name Description
Settlement childSettlement
Returns
Type Description
Result

RejectApplication(User, Settlement)

Declaration
public bool RejectApplication(User userApproving, Settlement deniedSettlement)
Parameters
Type Name Description
User userApproving
Settlement deniedSettlement
Returns
Type Description
System.Boolean

RescindInvite(Settlement)

Declaration
public bool RescindInvite(Settlement settlement)
Parameters
Type Name Description
Settlement settlement
Returns
Type Description
System.Boolean

Status()

Declaration
public LocString Status()
Returns
Type Description
LocString

SubscribeRosterChange(Action)

Declaration
public void SubscribeRosterChange(Action onChanged)
Parameters
Type Name Description
System.Action onChanged

TryRemove(Settlement, Boolean, Boolean)

Declaration
public Result TryRemove(Settlement settlement, bool ignoreParents = false, bool triggerChangeEvent = true)
Parameters
Type Name Description
Settlement settlement
System.Boolean ignoreParents

If this is set to false then we will check whether the parent settlements allow child settlements to secede and if not, the specified settlement will instead be joing one of the parents as a direct child when it leaves its current parent.

System.Boolean triggerChangeEvent
Returns
Type Description
Result

Events

PropertyChanged

Declaration
public event PropertyChangedEventHandler PropertyChanged
Event Type
Type Description
System.ComponentModel.PropertyChangedEventHandler

Implements

IController
IViewController
IHasUniversalID
IRoster
System.ComponentModel.INotifyPropertyChanged
IThreadSafeSubscriptions
ISubscriptions<TSubscriptionsList>
ISubscriptions

Extension Methods

TagUtils.TagNames(Object, Boolean)
TagUtils.TagDisplayNames(Object, Boolean)
ClientSetViewExtensions.SetClassOfProperty(Object, Player, String, String, Int32)
TypeTooltipExtensions.UILinkGeneric(Object)
☀
☾
In This Article
Back to top
Copyright (c) Strange Loop Games 2021
☀
☾