Interface IFellowshipAutomation
- Namespace
- AcDream.Plugin.Abstractions
- Assembly
- AcDream.Plugin.Abstractions.dll
Reads the player's fellowship and sends the fellowship commands the client's own social panel sends. Everything here reports the state the server last told the client; a command only asks, it does not decide.
public interface IFellowshipAutomation
Properties
IsInFellowship
True when the local player is currently in a fellowship.
bool IsInFellowship { get; }
Property Value
IsLocked
True when the fellowship's roster is locked against changes.
bool IsLocked { get; }
Property Value
IsOpen
True when players may join the fellowship without being recruited.
bool IsOpen { get; }
Property Value
LeaderObjectId
The leader's object id, or zero when there is no fellowship.
uint LeaderObjectId { get; }
Property Value
MemberCount
How many members the fellowship has; zero when there is none.
int MemberCount { get; }
Property Value
Name
The fellowship's name, or an empty string when there is none.
string Name { get; }
Property Value
SharesExperience
True when the fellowship shares the experience its members earn; false when each member keeps their own, and when there is no fellowship.
bool SharesExperience { get; }
Property Value
SplitsExperienceEvenly
True when shared experience is split evenly between the members, false when it is split in proportion to their levels, which happens when the members' levels are too far apart. Only meaningful while SharesExperience is true; false when there is no fellowship.
bool SplitsExperienceEvenly { get; }
Property Value
Methods
AssignLeader(uint)
Asks the server to hand leadership to another member. Rejected when the target id is zero.
PluginFellowshipCommandResult AssignLeader(uint targetObjectId)
Parameters
targetObjectIduint
Returns
CaptureMembers()
Lists the other members of the fellowship, leaving out the local player and anyone whose distance the client cannot work out right now. Returns an empty list when the player is not in a fellowship.
IReadOnlyList<PluginFellowMember> CaptureMembers()
Returns
CaptureRoster()
Like CaptureMembers(), but includes the local player's own entry, whose distance reads zero. Returns an empty list when the player is not in a fellowship.
IReadOnlyList<PluginFellowMember> CaptureRoster()
Returns
Create(string, bool)
Asks the server to start a new fellowship with this name, optionally sharing experience between members. Rejected when the name is blank.
PluginFellowshipCommandResult Create(string name, bool shareExperience)
Parameters
Returns
Dismiss(uint)
Asks the server to remove a member from the fellowship. Rejected when the target id is zero.
PluginFellowshipCommandResult Dismiss(uint targetObjectId)
Parameters
targetObjectIduint
Returns
Quit(bool)
Asks the server to leave the fellowship; pass true to disband it for everyone instead of just leaving.
PluginFellowshipCommandResult Quit(bool disband)
Parameters
disbandbool
Returns
Recruit(uint)
Asks the server to recruit another player into the fellowship. Rejected when the target id is zero.
PluginFellowshipCommandResult Recruit(uint targetObjectId)
Parameters
targetObjectIduint
Returns
RequestVitals(bool)
Ask the host to keep the server's fellow-vitals stream flowing (the server sends it only to a client that has declared its fellowship panel open). Idempotent; released automatically at session reset.
PluginFellowshipCommandResult RequestVitals(bool requested)
Parameters
requestedbool
Returns
SetOpen(bool)
Asks the server to open the fellowship to anyone who wants to join, or to close it again.
PluginFellowshipCommandResult SetOpen(bool isOpen)
Parameters
isOpenbool