RSClient

Methods relating to targeting the RS client and detecting client states.

if SRL_DISABLE_REMOTEINPUT is defined. RemoteInput plugin will not be loaded. if SRL_USE_REMOTEINPUT is defined. RemoteInput will be automatically setup. if SRL_USE_REMOTEINPUT_DEBUG is defined. Debug() calls will drawn on the RS client.


ERSClientMode

ERSClientMode = (
    UNKNOWN,            // Unable to detect mode (likely not logged in yet)
    FIXED,              // Fixed mode
    RESIZABLE_CLASSIC,  // Resizable with "classic" gametabs or "fixed mode gametabs"
    RESIZABLE_MODERN    // Resizable with gametabs being grouped together at the bottom
  );

The modes of the client.


RSClient.DetectClientMode()

function TRSClient.DetectClientMode(Update: Boolean): ERSClientMode;

Detects the client mode. If Update is True ClientModeChanged will be called. Uses the music tab so will return RS_CLIENT_UNKNOWN when not logged in. Are there any other cases where music tab won’t be visible?


RSClient.ClientModeChanged()

procedure TRSClient.ClientModeChanged();

Anything that needs an alert when the client mode changes should override this.


RSClient.IsLoggedIn()

function TRSClient.IsLoggedIn(): Boolean;
function TRSClient.IsLoggedIn(waitTime: Int32; interval: Int32 = -1): Boolean; overload;

Returns true/false whether there’s a player logged in or not.

Example:

WriteLn RSClient.IsLoggedIn();

RSClient.LoseFocus()

procedure TRSClient.LoseFocus();
procedure TRSClient.LoseFocus(delay: Int32);

Loses focus if available. Maybe useful for antiban. You can optionally delay losing focus by passing in a delay.


RSClient.Setup()

procedure TRSClient.Setup();

RSClient setup method.

Note

This is automatically called on the RSClient variable.