Sistemas de itens e inventário são uma parte essencial de muitos tipos de jogos. Você pode personalizar o inventário dos players do Fortnite usando as entidades e os componentes do Gráfico de cena para criar itens únicos para sua ilha.
Itens são objetos que players e agents podem usar e possuir. Os inventários incluem o inventário existente do jogador do Fortnite, além de inventários personalizados que você criar com o inventory_component. Itens Personalizados e Inventários é um sistema para criar, controlar e armazenar itens. Este sistema é uma funcionalidade experimental que você deve habilitar em Configurações de Projeto e usar com o Gráfico de cena e o Verse no Unreal Editor para Fortnite (UEFN).
Noções básicas do Scene Graph
O Gráfico de cena é um sistema de Entidades e componentes construído com base em Verse. As entidades são contêineres para componentes, e os componentes dão funcionalidade a uma entidade. Você pode anexar entidades umas às outras em uma relação de pai/filho, o que cria hierarquias. Um arranjo reutilizável de entidades e componentes é chamado de pré-fabricado.
Consulte Como trabalhar com entidades e componentes para obter mais informações sobre entidades e componentes. Consulte Estruturas pré-fabricadas e instâncias de estruturas pré-fabricadas para obter mais informações sobre estruturas pré-fabricadas.
Itens
Os itens são criados no Gráfico de cena colocando um item_component em uma entidade. Inventários tratam o componente como um objeto. O item_component fornece funcionalidades, como:
Por si só, o item_component fornece opções limitadas para um item. Componentes adicionais criam algo mais interessante com funcionalidade aprimorada.
Para mais informações, consulte Componente de item.
Inventários
Inventários são contêineres para itens e exercem o Controle sobre o que acontece com esses itens. Um inventário é uma entidade que tem um inventory_component e funciona das seguintes maneiras:
Saber de todos os itens que existem dentro dele.
Controlar quais itens podem entrar ou sair do inventário.
Determina o que acontece quando um item recebido quer se fundir com um item já existente no inventário.
Como um item só pode existir dentro de um inventário por vez, os inventários também determinam a propriedade das entidades de item. Subentidades de um inventário são consideradas itens dentro do inventário apenas se também tiverem um item_component; caso contrário, são subentidades filhas.
Por padrão, os inventários podem conter uma quantidade infinita e variada de itens. Com o Verse, você pode criar restrições e regras que afetam a adição e a remoção de itens. Por exemplo:
Adicione itens a um inventário apenas se tiverem a categoria correta.
Limite o número de itens em um inventário.
Evite que o último item seja removido de um inventário.
Permita que itens de maior prioridade ejetem itens de menor prioridade quando o inventário estiver cheio.
Restrinja um inventário a um único item.
Árvores de inventário
Os inventários reconhecem quaisquer inventários que estejam abaixo deles na hierarquia do Gráfico de cena. Esses inventários-filho são conhecidos como subinventários. Você pode aproveitar a árvore de inventários de várias maneiras.
Por exemplo, você pode adicionar um item a um inventário pai, onde ele pode encontrar seu caminho para um inventário filho mais especializado. Você pode pensar nisso como dar uma moeda ao player e fazer com que ela viaje pelo sistema de inventário até uma carteira (Inventário do player > Inventário da mochila > Inventário do porta-moedas).
Para criar um comportamento de inventário mais avançado, é necessário programar em Verse.
Verse: Inventários
Existem duas maneiras de adicionar um item a um inventário.
Chamada
AddItem()para adicionar um item especificamente a um inventário.Chamando a função
addItemDistribute ()e usando a hierarquia de inventário para encontrar o inventário ou subinventário mais adequado.
Quando a função AddItemDistribute() é chamada, o inventário Alvo e todos os seus subinventários têm a oportunidade de avaliar e reivindicar o item. Depois que cada um for considerado, o inventário mais adequado tenta adicionar o item.
Raiz do inventário do player
Os players têm um inventário por padrão. Isso é conhecido como Raiz do inventário. Ao contrário de outros inventários, o inventário-raiz do player não pode aceitar itens. Em vez disso, ele atua como o pai para os subinventários abaixo dele. Isso permite direcionar o Alvo do Inventário com AddItemDistribute() e permite que um item encontre um inventário elegível, mesmo que o alvo inicial não possa recebê-lo.
Para que um player receba itens, ele precisa ter um ou mais subinventários abaixo da Raiz do inventário.
A explicação acima não afeta entidades que têm um inventory_component adicionado através do Verse ou via o Editor de Estruturas Pré-fabricadas.