Pular para o conteúdo principal

ItemsAdder

Blocos, móveis, plantações, HUDs e itens do ItemsAdder em eventos, objetivos e fatos do TypeWriter.

Pagasv1.7Integrações
RequerTypeWriter0.9ItemsAdderQuest (TypeWriter extension)Basic (TypeWriter extension)

Visão geral​

O ItemsAdder permite adicionar ao seu servidor blocos, móveis, itens, plantações, HUDs e entidades personalizados por meio de um resource pack. Esta extensão torna todos eles utilizáveis no TypeWriter. Uma quest pode pedir que os jogadores quebrem um minério personalizado ou coloquem uma lâmpada personalizada, um diálogo pode reagir a um jogador sentado em um móvel seu, e um criteria pode verificar se o jogador segura a sua espada personalizada.

Tudo usa o id com namespace do ItemsAdder (namespace:id, por exemplo my_pack:ruby_ore). Nada aqui cria conteúdo: você continua definindo blocos, móveis e itens no ItemsAdder e depois usa seus ids nas entries do TypeWriter.

Recursos​

  • Eventos de blocos e móveis — triggers quando um bloco ou móvel personalizado é quebrado, colocado ou interagido.
  • Evento de pré-colocação — um trigger disparado logo antes de um móvel ser invocado.
  • Morte de entidade personalizada — um trigger quando um jogador mata uma entidade personalizada do ItemsAdder.
  • Objectives de contagem — quebre ou coloque blocos e móveis personalizados como objective de quest.
  • Ferramentas de inventário de itens — dê ou remova itens do ItemsAdder e reaja a pegá-los, soltá-los ou consumi-los.
  • Facts de itens e do mundo — item na mão, quantidade de itens, usos e durabilidade restantes, bloco observado ou pisado, móvel observado.
  • Facts de plantações e HUDs — estágio de crescimento da plantação, se está madura e se um HUD nomeado está visível.
  • Variáveis — ids e propriedades de itens, blocos e móveis, glifos de imagens de fonte e listas de registro, prontos para qualquer texto.
  • Entry de som — use um id de som do ItemsAdder onde quer que o TypeWriter peça um som.

Instalação​

  1. Instale o ItemsAdder e deixe-o gerar seu resource pack. Esta extensão não carrega sem ele.
  2. Confirme que as extensões Quest e Basic do TypeWriter estão instaladas.
  3. Baixe a extensão nas lojas (veja os botões no painel acima) e coloque o JAR em plugins/Typewriter/extensions/.
  4. Reinicie o servidor.

Primeiros passos​

Este passo a passo cria uma quest que pede ao jogador que quebre três blocos de minério personalizado.

  1. No painel web, crie uma quest com a extensão Quest e um fact para armazenar o progresso (um fact permanente é uma boa escolha).
  2. Em uma página de manifest, adicione um objective Break Block.
  3. Defina quest com a sua quest e fact com o fact de progresso. Defina item com o id do bloco, por exemplo my_pack:ruby_ore, e amount como 3. Deixe item vazio para contar qualquer bloco personalizado.
  4. Defina display com a linha exibida no rastreador de quests, por exemplo Mine ruby ore. O progresso (1/3) é adicionado automaticamente.
  5. Opcionalmente, vincule onComplete a uma sequence que entrega uma recompensa, por exemplo com Give Item e itemId my_pack:ruby_pendant.
  6. Clique em Publish, inicie a quest e quebre o bloco.

Para reagir uma única vez em vez de contar, use um evento: adicione uma entry On Custom Block Break a uma página de sequence, preencha blockId e vincule seus triggers às entries a executar.

Ids de blocos

Liste o que o ItemsAdder carregou com a variável Registry IDs, ou no jogo com os comandos do ItemsAdder, e copie o id com namespace exato.

Como funciona​

Os eventos carregam dados sobre o que aconteceu. As entries disparadas podem ler o id do bloco ou móvel e sua posição, o clique usado (no caso de interação com bloco) e o item na mão.

Os objectives contam cada posição uma vez por jogador. Quebrar e colocar o mesmo bloco novamente no mesmo lugar não aumenta a contagem. Eles só contam enquanto o jogador tem a quest vinculada ativa. As ações canceladas (por exemplo, em uma região protegida) não contam e não disparam eventos.

Configuração​

As linhas de objective no rastreador de quests são construídas a partir de dois snippets do TypeWriter que você pode alterar no arquivo de snippets do TypeWriter:

SnippetPadrão
advancedQuest.display<display> <dark_gray>(<gray><current><dark_gray>/<gray><required><dark_gray>)
advancedQuest.completed<green>✔</green> <st><display></st> <dark_gray>(<gray><current><dark_gray>/<gray><required><dark_gray>)

Entries​

35 entradas, geradas a partir do código-fonte da extensão.

Ações2
Eventos11
Objetivos4
Fatos10
Variáveis7
Sons1

Solução de problemas​

A extensão não aparece no painel. O ItemsAdder não está instalado ou não foi ativado. Toda entry chama a API do ItemsAdder, então a extensão se recusa a carregar sem o plugin.

Um evento nunca dispara. Verifique o id: ele deve ser o namespace:id completo, não apenas o id. Um id vazio corresponde a qualquer coisa. Se você preencheu location, apenas essa posição exata de bloco corresponde. Os eventos cancelados por outro plugin (um plugin de proteção, por exemplo) são ignorados.

O objective não avança. O jogador deve ter a quest vinculada ativa, e um fact deve estar definido no objective. A mesma posição de bloco conta apenas uma vez por jogador.

Um fact sempre retorna 0. O item na mão ou o bloco não é do ItemsAdder. Os facts que observam blocos verificam apenas o primeiro bloco dentro de range blocos (5 por padrão). Os facts de usos e durabilidade retornam 0 quando o item não tem usos nem durabilidade personalizada.

A variável Registry IDs está vazia. O ItemsAdder carrega seu conteúdo em segundo plano. A variável não retorna nada até que o ItemsAdder informe que seus itens foram carregados, então não a leia durante a inicialização.

O Give Item não entrega nada. O itemId é desconhecido para o ItemsAdder, então nenhum item é construído e nada é entregue. A action informa 0 entregues. As sobras que não cabem são soltas aos pés do jogador, a menos que dropOverflow esteja desativado.

O fact de HUD é sempre 0. O id do HUD deve existir no ItemsAdder e o jogador deve possuí-lo. O ItemsAdder não consegue listar HUDs, então o fact verifica apenas o que você nomear.

Extensões relacionadas​

  • Nexo e Craft Engine — a mesma integração para os outros plugins de conteúdo personalizado.