RPC (Remote Procedure Call)
//N - число аргументов (от 0 до 7)
class MBSL_RPCN<Class Arg1, ..., Class ArgN> : Managed
{
//Конструктор. Требует передать название модификации (пространство имён)
//А также название функции в этой модификации (пространстве имён).
void MBSL_RPCN(string modname, string functionname);
//Вызвать удалённую процедуру с указанными аргументами
void Invoke(Arg1 arg1, ..., ArgN argN, PlayerIdentity recipient = NULL);
}
//Вариант без аргументов
class MBSL_RPC0 : Managed
{
//Конструктор. Требует передать название модификации (пространство имён)
//А также название функции в этой модификации (пространстве имён).
void MBSL_RPC0(string modname, string functionname);
//Вызвать удалённую процедуру с указанными аргументами
void Invoke(PlayerIdentity recipient = NULL);
}
//Особый вариант. Позволяет передать любое число аргументов в виде массива
class MBSL_RPCRaw : Managed
{
//Конструктор. Требует передать название модификации (пространство имён)
//А также название функции в этой модификации (пространстве имён).
void MBSL_RPCRaw (string modname, string functionname);
//Вызвать удалённую процедуру с указанными аргументами
void Invoke(array<ref Param> params, PlayerIdentity recipient = null)
}Last updated