Table of Contents

Interface IGuildSystem<TConnection>

Namespace
FishMMO.Server.Core.World.SceneServer
Assembly
FishMMO.Server.dll

Engine-agnostic public API for guild management on a scene server. Exposes the small surface other systems use to track guild membership and react to guild lifecycle events without referencing engine-specific types.

public interface IGuildSystem<TConnection> : IServerBehaviour, IServerComponent

Type Parameters

TConnection

Properties

MaxGuildSize

Maximum members allowed in a guild on this server.

int MaxGuildSize { get; }

Property Value

int

UpdatePumpRate

Pump/update rate (in seconds) used by the guild system for polling/sync.

float UpdatePumpRate { get; }

Property Value

float

Methods

AddGuildCharacterTracker(long, long)

Adds a mapping for a guild to a character currently connected to this scene server.

void AddGuildCharacterTracker(long guildID, long characterID)

Parameters

guildID long

Guild identifier.

characterID long

Character identifier to add.

CharacterSystem_OnConnect(TConnection, IPlayerCharacter)

Called by the Character system when a character connects; used to update guild trackers and persist state.

void CharacterSystem_OnConnect(TConnection conn, IPlayerCharacter character)

Parameters

conn TConnection

Opaque connection object (engine-specific implementations should accept their connection type).

character IPlayerCharacter

The character that connected.

CharacterSystem_OnDisconnect(TConnection, IPlayerCharacter)

Called by the Character system when a character disconnects; used to update guild trackers and persist state.

void CharacterSystem_OnDisconnect(TConnection conn, IPlayerCharacter character)

Parameters

conn TConnection

Opaque connection object.

character IPlayerCharacter

The character that disconnected.

OnGuildInvite(IPlayerCharacter, ChatBroadcast)

Chat command handler used by the chat helper to issue guild invites. Returns true if the command was handled.

bool OnGuildInvite(IPlayerCharacter sender, ChatBroadcast msg)

Parameters

sender IPlayerCharacter
msg ChatBroadcast

Returns

bool

RemoveGuildCharacterTracker(long, long)

Removes a mapping for a guild to a character on this scene server.

void RemoveGuildCharacterTracker(long guildID, long characterID)

Parameters

guildID long

Guild identifier.

characterID long

Character identifier to remove.