Biblioteca Firecast¶
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 of 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});
- promise:thenDo(
- function(node)
- *-- This function will be called when/if the *
- *-- load completes. The first argument, *
- -- "node", contains the root node of the opened nodedatabase
- end,
- function(errorMsg)
- *-- This function will be called when/if the *
- *-- load fails. The first argument, *
- -- "errorMsg", contains the message explaining why
- -- it was not possible to open the nodeDatabase
- end);
| 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.getMesas(); local msg = ""; for i = 1, #mesas, 1 do local objMesa = mesas[i]; msg = msg .. objMesa.nome .. " (" .. objMesa.sistema .. ")\n"; end; showMessage(msg); |
|---|
| 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:
- Um objeto mesa ou nil caso não encontre.
| 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:
- Um Objeto Rolagem contendo a interpretação.
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) |
|---|
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:
- objeto Nodo. Se o NodeDatabase for de um personagem ou estiver ligado à uma mesa, a função retorna o objeto mesa.
- objeto BibliotecaItem. A função retorna à qual mesa o item da biblioteca pertence.
- objeto Personagem.
- objeto Jogador.
- objeto Chat
- objeto form de formType Table's Dock
- objeto Scene
- Outros objetos que possam estar ligados à alguma mesa.
- 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.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:
- Um Objeto BibliotecaItem 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 item na biblioteca, a função retorna o objeto biblioteca item.
- Outros objetos que possam estar ligados à biblioteca da mesa.
| 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.
- 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:
- Um identificador do botão criado. Este valor pode ser usado na função Firecast.unregisterChatToolButton se quiser remover o botão.
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.unregisterChatToolButton(toolButtonId) |
|---|
Desregistra um botão-ferramenta de chat previamente instalado pela função Firecast.registerChatToolButton.
Parâmetros:
- toolButtonId - O identificador retornado pela função Firecast.registerChatToolButton.
Created with the Personal Edition of HelpNDoc: Easily create EBooks