Interface IPartyController
Interface for controllers managing party membership, invites, and rank for a character.
public interface IPartyController : ICharacterBehaviour
- Inherited Members
Properties
ID
The unique ID of the party or party member.
long ID { get; set; }
Property Value
OnPartyJoinTriggers
Triggers invoked when the character joins or creates a party.
List<Trigger> OnPartyJoinTriggers { get; }
Property Value
OnPartyLeaveTriggers
Triggers invoked when the character leaves a party.
List<Trigger> OnPartyLeaveTriggers { get; }
Property Value
Rank
The rank of the character within the party (e.g., leader, member).
PartyRank Rank { get; set; }
Property Value
Events
OnAddPartyMember
Event triggered when a party member is added. Provides member ID, rank, and health percent.
event Action<long, PartyRank, float> OnAddPartyMember
Event Type
OnLeaveParty
Event triggered when the character leaves the party.
event Action OnLeaveParty
Event Type
OnPartyCreated
Event triggered when a party is created. Provides the party name.
event Action<string> OnPartyCreated
Event Type
OnReceivePartyInvite
Event triggered when a party invite is received. Provides the inviter's ID.
event Action<long> OnReceivePartyInvite
Event Type
OnRemovePartyMember
Event triggered when a party member is removed. Provides member ID.
event Action<long> OnRemovePartyMember
Event Type
OnUpdatePartyVitals
Event triggered when the scene server pushes live state for the party members sharing the local character's scene.
event Action<PartyMemberVitalsEntry[]> OnUpdatePartyVitals
Event Type
Remarks
Distinct from OnAddPartyMember, which also carries a health figure but gets it from the party database row — a row written only on connect and disconnect. This event is the live value, pushed by the scene server hosting the member.
Raised with the WHOLE payload rather than once per member, because the payload is complete for the recipient's scene and its completeness is the point: a roster member absent from it is a member who is somewhere else. Splitting it into per-member events would throw away exactly the fact a subscriber needs to grey that member's row out.
OnValidatePartyMembers
Event triggered to validate the current set of party members.
event Action<HashSet<long>> OnValidatePartyMembers