Biblioteca Firecast
A biblioteca firecast contém funções relacionadas às mesas, personagens, envio de mensagens, rolagem de dados, etc..
Todas as funções estão contidas na table/variável "Firecast" da unidade "firecast.lua".
Exemplo de uso:
-- Primeiro, é necessário usar a unidade "firecast.lua" require("firecast.lua");
-- Agora é possível acessar as funções da biblioteca Firecast.FUNCAO_DA_BIBLIOTECA(Parametro1, Parametro2, ...);
|
Funções da biblioteca Firecast
function Firecast.asyncOpenUserNDB(name[, options])
|
Asynchronously open a per-user NodeDatabase that is physically stored in the Firecast server.
Arguments:
- name - A string identifying which remote user NodeDatabase should be opened
- (OPTIONAL) options - A Lua table describing additional settings that may contain:
- create - a boolean. If true, the NodeDatabase can be created if it does not exist. Default: false
- skipLoad - a boolean. If true, the returned Promise will be resolved before the load process is finished. If true, you will receive a “Loading node” instead of a “Loaded node”. Default: false
Return:
- a Promise for a Node Object. As default behavior, the Promise will be resolved after all data is downloaded and available to be used.
Remarks:
- The content of NodeDatabases opened by this function is stored separately per-user. Each user will have their own copy of the NodeDatabase identified by the “name” argument
Example:
local promise = Firecast.asyncOpenUserNDB("exampleNodeDatabase", {create=true});
local node = await(promise);
-- variable node is ready to be used here
function Firecast.getRooms() function Firecast.getMesas()
|
Retorna a lista de objetos mesas representando as mesas em que o usuário está no momento.
Parâmetros:
Não há parâmetros
Retorno:
- Um arranjo de objeto mesa, isto é, uma tabela lua indexada de 1 a N.
Exemplo - Exibindo uma mensagem contendo o nome e o sistema de todas as mesas em que o usuário está:
local mesas = Firecast.getRooms(); local msg = "";
for i = 1, #mesas, 1 do local objMesa = mesas[i];
msg = msg .. objMesa.nome .. " (" .. objMesa.sistema .. ")\n"; end;
showMessage(msg);
|
function Firecast.findRoom(codigoInterno) function Firecast.findMesa(codigoInterno)
|
Dado o código interno de uma mesa, localiza o objeto mesa de código interno correspondente.
Parâmetros:
Não há parâmetros
Retorno:
function Firecast.parseRoll(stringDaRolagem) function Firecast.interpretarRolagem(stringDaRolagem)
|
Dado uma cadeia de caracteres representando uma rolagem de dados (Exemplos: "1d20 + 5", "1d20 + 1d10 - 5", etc..), retorna um objeto rolagem que contém as informações sobre a mesma.
Parâmetros:
- stringDaRolagem - cadeia de caracteres que deseja interpretar como um objeto rolagem.
Retorno:
Observação:
- Se stringDaRolagem não possuir uma cadeia de caracteres válida, o novo objeto rolagem ainda será retornado, porém vazio.
function Firecast.getRoomOf(object) function Firecast.getMesaDe(object)
|
Dado um objeto qualquer, a função tenta determinar à qual objeto mesa ele está ligado.
Parâmetros:
- object - O objeto que deseja tentar determinar à qual objeto mesa ele pertence ou está ligado.
Retorno:
- Um Objeto Mesa, caso a função consiga determinar
- nil, caso a função não consiga determinar
Observações:
- Os objetos que costumam ser passados como parâmetro à esta função, são:
- Também é possível passar um valor numérico para esta função. Se for passado um valor numérico, esta função se comporta como a função rrpg.findMesa.
function Firecast.getLibraryItemOf(objeto) function Firecast.getBibliotecaItemDe(objeto)
|
Dado um objeto qualquer, a função tenta determinar à qual objeto BibliotecaItem ele está ligado.
Parâmetros:
- objeto - O objeto que deseja tentar determinar à qual objeto BibliotecaItem ele pertence ou está ligado.
Retorno:
Observações:
- Os objetos que costumam ser passados como parâmetro à esta função, são:
- objeto Nodo. Se o NodeDatabase for de um item na biblioteca, a função retorna o objeto biblioteca item.
- Outros objetos que possam estar ligados à biblioteca da mesa.
function Firecast.getCharacterOf(object) function Firecast.getPersonagemDe(object)
|
Dado um objeto qualquer, a função tenta determinar à qual objeto Personagem ele está ligado.
Parâmetros:
- object - O objeto que deseja tentar determinar à qual objeto Personagem ele pertence ou está ligado.
Retorno:
- Um Objeto Personagem caso a função consiga determinar
- nil, caso a função não consiga determinar
Observações:
- Os objetos que costumam ser passados como parâmetro à esta função, são:
- objeto Nodo. Se o NodeDatabase for de um personagem, a função retorna o objeto personagem.
- Outros objetos que possam estar ligados aos personagens da mesa.
function Firecast.getCurrentUser()
|
Retorna uma tabela contendo informações do usuário logado atualmente no Firecast.
Retorno:
- Um tabela LUA contendo as seguintes propriedades/atributos:
- isLogged - Boleano (true ou false) indicando se possui um usuário logado no momento.
- id - Se o usuário estiver logado, contém o identificador interno do usuário.
- login - Se o usuário tiver logado, contém uma cadeia de caracteres contendo seu login/username.
- isGold - Booleano (true ou false) indicando se o usuário é assinante Firecast Gold
- isGoldPlus - Booleano (true ou false) indicando se o usuário é assinante Firecast Platinum / RRPG Gold Plus
- isRuby - Booleano (true ou false) indicando se o usuário é assinante Firecast Ruby
function Firecast.registerChatToolButton(params)
|
Registra um botão-ferramenta que será apresentado nos chats do Firecast.
Parâmetros:
- params - Uma tabela Lua contendo as seguintes propriedades do botão:
- "hint" - Um string que será apresentado ao usuário quando ele arrastar o mouse em cima do botão.
- "icon" - Um string contendo o endereço da imagem que será apresentada como ícone do botão.
- "callback" - Uma função que será chamada quando o usuário clicar no botão. Seu primeiro parâmetro recebe um objeto Chat representado em qual chat o usuário clicou no botão.
- (OPCIONAL) "priority" - Se quiser sugerir a ordem dos botões, informe um número em priority. Botões com prioridade maior aparecem antes dos com prioridade menor.
- (OPCIONAL) "group" - Um string. Se quiser vários botões ficarem juntos, você pode especificar o mesmo valor em group para eles.
- (OPCIONAL) "groupPriority" - Se quiser sugerir a ordem do grupo de botões, informe um número nesta propriedade. Grupos de botões com maior prioridade aparecem antes dos grupos com menor prioridade.
Retorno:
Observações:
- O ícone informado poderá sofrer tratamento visual para se encaixar no tema do Firecast. Use ícones com transparência e cuja "sombra" seja capaz de remeter seu significado.
- O botão só será apresentado se:
- O usuário for assinante Gold.
- Ou o usuário não for pagante e estiver em mesa cujo dono seja assinante Gold+/Platina.
Exemplo:
local params = {};
params.hint = "This button do @@localized.text.id";
params.icon = "/icons/myIcon.png";
params.priority = 10;
params.group = "myButtonGroup";
params.callback =
function(chat)
-- the param "chat" contains good information to handle =)
showMessage("User clicked the button");
end;
Firecast.registerChatToolButton(params);
|
function Firecast.parseTalemark(text[, talemarkOptions])
|
Parse and break down a talemark string, the markup language used by Firecast's chats.
Arguments:
- text - A string, the text to be parsed.
- (Optional) talemarkOptions - A TalemarkOptions table containing parameters of how Firecast should color, format, and parse the string
Retorno:
function Firecast.unregisterChatToolButton(toolButtonId)
|
Desregistra um botão-ferramenta de chat previamente instalado pela função Firecast.registerChatToolButton.
Parâmetros:
Created with the Personal Edition of HelpNDoc: Easily create EBooks