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
System.ComponentModel.INotifyPropertyChanged
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
ControllerID
Declaration
public ref int ControllerID { get; }
Property Value
Type |
Description |
System.Int32 |
|
Invited
Declaration
public ControllerHashSet<Settlement> Invited { get; set; }
Property Value
MemberCount
Declaration
public int MemberCount { get; }
Property Value
Type |
Description |
System.Int32 |
|
Members
Declaration
public ControllerHashSet<Settlement> Members { get; set; }
Property Value
Subscriptions
Declaration
public ref ThreadSafeSubscriptions Subscriptions { get; }
Property Value
Title
Declaration
public LocString Title { get; }
Property Value
Methods
Add(Settlement, Boolean)
Declaration
public Result Add(Settlement settlement, bool sendChangeEvent = true)
Parameters
Type |
Name |
Description |
Settlement |
settlement |
|
System.Boolean |
sendChangeEvent |
|
Returns
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
Returns
Clear()
Declaration
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
Returns
RejectApplication(User, Settlement)
Declaration
public bool RejectApplication(User userApproving, Settlement deniedSettlement)
Parameters
Returns
Type |
Description |
System.Boolean |
|
RescindInvite(Settlement)
Declaration
public bool RescindInvite(Settlement settlement)
Parameters
Returns
Type |
Description |
System.Boolean |
|
Status()
Declaration
public LocString Status()
Returns
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
Events
PropertyChanged
Declaration
public event PropertyChangedEventHandler PropertyChanged
Event Type
Type |
Description |
System.ComponentModel.PropertyChangedEventHandler |
|
Implements
System.ComponentModel.INotifyPropertyChanged
Extension Methods